--- /dev/null
+# -*- coding: utf-8 -*-
+
+# --------------------------------------------------
+# debut entete
+# --------------------------------------------------
+
+import os
+import sys
+from Accas import *
+
+# --------------------------------------------------
+# definition d une classe pour les materiaux
+# definition d une classe pour les groupes de mailles
+# definition d une classe pour les lois non lineaires
+# --------------------------------------------------
+class materiau ( ASSD ) : pass
+class grmaille ( ASSD ) : pass
+class loiNL ( 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 ('MATERIALS'),
+ AU_MOINS_UN ('SOURCES'),
+# A_CLASSER ('VERSION','SOURCES'),
+# A_CLASSER ('MATERIALS','SOURCES'),
+ ),
+ ) # Fin JDC_CATA
+
+# --------------------------------------------------
+# --------------------------------------------------
+# definition de groupe de mailles
+# et association du nom du materiau au groupe de mailles
+#---------------------------------------------------
+
+MESH_GR = OPER (nom = "MESH_GR",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Definition",)},
+ fr= "definition du groupe de mailles",
+ ang = " mesh group definition",
+ sd_prod= grmaille,
+
+ Material = SIMP (statut="o",
+ typ=(materiau,),
+ ang="name of the linked material",
+ fr ="nom du materiau associe",
+ ),
+ )
+
+#
+# --------------------------------------------------
+# 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 3 types de matériaux isotropiques et homogenes
+#-----------------------------------------
+# sous bloc niveau 1 : materiau CONDUCTOR
+#-----------------------------------------
+#
+CONDUCTOR = OPER (nom = "CONDUCTOR",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Isotropic Homogeneous Materials",)},
+ ang= "CONDUCTOR block definition",
+ fr= "definition du bloc CONDUCTOR",
+ sd_prod= materiau,
+
+#------------------------------------------------
+# sous bloc niveau 2 : CONDUCTIVITY
+#------------------------------------------------
+ CONDUCTIVITY = FACT ( statut="o",
+ ang ="Conductivity properties",
+ fr ="proprietes du bloc CONDUCTIVITY",
+ regles = ( UN_PARMI ('VALUE_REAL','VALUE_COMPLEX'),
+ ),
+
+ LAW = SIMP (statut="o",
+ typ="TXM",
+ defaut="LINEAR",
+ into = ("LINEAR","NONLINEAR"),
+ ang = "type of law",
+ fr = "type de loi",
+ ),
+ HOMOGENEOUS = SIMP (statut="f",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is homogeneous",
+ fr = "le materiau est homogene",
+ ),
+ ISOTROPIC = SIMP (statut="f",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is isotropic",
+ fr = "le materiau est isotrope",
+ ),
+ VALUE_REAL = SIMP (statut="f",
+ typ="R",
+ ang = "enter a real value",
+ fr = "entrer un reel",
+ ),
+ VALUE_COMPLEX = SIMP (statut="f",
+ typ="C",
+ ang = "enter a complex value",
+ fr = "entrer un complexe",
+ ),
+
+ ), # fin FACT CONDUCTIVITY
+
+#------------------------------------------------
+# sous bloc niveau 2 : PERMEABILITY
+#------------------------------------------------
+ PERMEABILITY = FACT ( statut="o",
+ ang ="Permeability properties",
+ fr ="proprietes du bloc PERMEABILITY",
+
+ LAW = SIMP (statut="o",
+ typ="TXM",
+ defaut="LINEAR",
+ into = ("LINEAR","NONLINEAR"),
+ ang = "type of law",
+ ),
+ HOMOGENEOUS = SIMP (statut="o",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is homogeneous",
+ ),
+ ISOTROPIC = SIMP (statut="o",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is isotropic",
+ ),
+ VALUE_COMPLEX = SIMP (statut="o",
+ typ="C",
+ defaut=1,
+ ang = "enter a complex value",
+ ),
+
+ ), # fin FACT PERMEABILITY
+
+
+ ) # fin OPER conductor
+
+#------------------------------------------
+# sous bloc niveau 1 : materiau DIELECTRIC
+#------------------------------------------
+DIELECTRIC = OPER (nom = "DIELECTRIC",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Isotropic Homogeneous Materials",)},
+ ang= "DIELECTRIC block definition",
+ fr= "definition du bloc DIELECTRIC",
+ sd_prod= materiau,
+
+
+ NAME = SIMP (statut="o",
+ typ="TXM",
+ ang = "name of the linked mesh group",
+ fr = "nom du groupe de mailles associe",
+ ),
+#------------------------------------------------
+# sous bloc niveau 2 : PERMITTTIVITY
+#------------------------------------------------
+ PERMITTIVITY = FACT ( statut="o",
+ ang ="Permittivity properties",
+ fr ="proprietes du bloc PERMITTIVITY",
+
+ LAW = SIMP (statut="o",
+ typ="TXM",
+ defaut="LINEAR",
+ into = ("LINEAR","NONLINEAR"),
+ ang = "type of law",
+ ),
+ HOMOGENEOUS = SIMP (statut="o",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is homogeneous",
+ ),
+ ISOTROPIC = SIMP (statut="o",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is isotropic",
+ ),
+ VALUE_COMPLEX = SIMP (statut="o",
+ typ="C",
+ defaut=1,
+ ang = "enter a complex value",
+ ),
+
+ ), # fin FACT PERMITTIVITY
+
+#------------------------------------------------
+# sous bloc niveau 2 : PERMEABILITY
+#------------------------------------------------
+ PERMEABILITY = FACT ( statut="o",
+ ang ="Permeability properties",
+ fr ="proprietes du bloc PERMEABILITY",
+
+ LAW = SIMP (statut="o",
+ typ="TXM",
+ defaut="LINEAR",
+ into = ("LINEAR","NONLINEAR"),
+ ang = "type of law",
+ ),
+ HOMOGENEOUS = SIMP (statut="o",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is homogeneous",
+ ),
+ ISOTROPIC = SIMP (statut="o",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is isotropic",
+ ),
+ VALUE_COMPLEX = SIMP (statut="o",
+ typ="C",
+ defaut=1,
+ ang = "enter a complex value",
+ ),
+
+#------------------------------------------------
+# sous bloc niveau 3 : NONLINEAR
+#------------------------------------------------
+ NonLinearLaw = BLOC (condition="LAW=='NONLINEAR'",
+
+ NATURE = SIMP (statut="o",
+ typ="TXM",
+ defaut="SPLINE",
+ into=("SPLINE","MARROCCO","MARROCCO+SATURATION"),
+ ang="nature of the law",
+ fr ="nature de la loi",
+ ),
+
+ SplineParam = BLOC (condition="NATURE=='SPLINE'",
+
+ FILENAME = SIMP (statut="o",
+ typ=("Fichier",'All Files (*)',),
+ ang="data file name",
+ fr ="nom du fichier",
+ ),
+ APPLIEDTO = SIMP (statut="o",
+ typ="TXM",
+ into=("B(H)&H(B)","B(H)","H(B)"),
+ defaut="B(H)&H(B)",
+ ang="spline applied to",
+ fr ="spline appliquee a ",
+ ),
+ ), # fin BLOC SplineParam
+
+ MarroccoParam= BLOC (condition="NATURE=='MARROCCO'",
+
+ ALPHA = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="alpha parameter",
+ fr ="parametre alpha" ,
+ ),
+ TAU = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="tau parameter",
+ fr ="parametre tau" ,
+ ),
+ C = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="c parameter",
+ fr ="parametre c" ,
+ ),
+ EPSILON = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="epsilon parameter",
+ fr ="parametre epsilon" ,
+ ),
+ ), # fin BLOC MarroccoParam
+
+ MarroSatuParam= BLOC (condition="NATURE=='MARROCCO+SATURATION'",
+
+ ALPHA = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="alpha parameter",
+ fr ="parametre alpha" ,
+ ),
+ TAU = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="tau parameter",
+ fr ="parametre tau" ,
+ ),
+ C = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="c parameter",
+ fr ="parametre c" ,
+ ),
+ EPSILON = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="epsilon parameter",
+ fr ="parametre epsilon" ,
+ ),
+ BMAX = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="intersection B",
+ fr ="intersection B" ,
+ ),
+ HSAT = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="H value",
+ fr ="valeur H" ,
+ ),
+ BSAT = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="B value",
+ fr ="valeur B" ,
+ ),
+ JOIN = SIMP (statut="o",
+ typ="TXM",
+ defaut="SPLINE",
+ into= ("SPLINE","PARABOLIC","LINEAR"),
+ ang="type of join between laws",
+ fr ="type de jointure entre les 2 lois" ,
+ ),
+ 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 ="jointure appliquee a ",
+ ),
+ ), # fin BLOC MarroSatuParam
+
+ ), # fin BLOC NonLinearLaw
+ ), # fin FACT PERMEABILITY
+
+ ) # fin OPER DIELECTRIC
+
+#------------------------------------
+# sous bloc niveau 1 : ZSURFACIC
+#------------------------------------
+ZSURFACIC = OPER (nom = "ZSURFACIC",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Isotropic Homogeneous Materials",)},
+ ang= "ZSURFACIC block definition",
+ fr= "definition du bloc ZSURFACIC",
+ sd_prod= materiau,
+
+ NAME = SIMP (statut="o",
+ typ="TXM",
+ ang = "name of the linked mesh group",
+ fr = "nom du groupe de mailles associe",
+ ),
+#------------------------------------------------
+# sous bloc niveau 2 : CONDUCTIVITY
+#------------------------------------------------
+ CONDUCTIVITY = FACT ( statut="o",
+ ang ="Conductivity properties",
+ fr ="proprietes du bloc CONDUCTIVITY",
+
+ LAW = SIMP (statut="o",
+ typ="TXM",
+ defaut="LINEAR",
+ into = ("LINEAR","NONLINEAR"),
+ ang = "type of law",
+ fr = "type de loi",
+ ),
+ HOMOGENEOUS = SIMP (statut="o",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is homogeneous",
+ fr = "le materiau est homogene",
+ ),
+ ISOTROPIC = SIMP (statut="o",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is isotropic",
+ fr = "le materiau est isotrope",
+ ),
+ VALUE_COMPLEX = SIMP (statut="o",
+ typ="C",
+ defaut=1,
+ ang = "enter a complex value",
+ fr = "entrer un complexe",
+ ),
+
+
+ ), # fin FACT CONDUCTIVITY
+
+#------------------------------------------------
+# sous bloc niveau 2 : PERMEABILITY
+#------------------------------------------------
+ PERMEABILITY = FACT ( statut="o",
+ ang ="Permeability properties",
+ fr ="proprietes du bloc PERMEABILITY",
+
+ LAW = SIMP (statut="o",
+ typ="TXM",
+ defaut="LINEAR",
+ into = ("LINEAR","NONLINEAR"),
+ ang = "type of law",
+ ),
+ HOMOGENEOUS = SIMP (statut="o",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is homogeneous",
+ ),
+ ISOTROPIC = SIMP (statut="o",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is isotropic",
+ ),
+ VALUE_COMPLEX = SIMP (statut="o",
+ typ="C",
+ defaut=1,
+ ang = "enter a complex value",
+ ),
+
+ ), # fin FACT PERMEABILITY
+
+ ) # fin OPER ZSURFACIC
+
+
+#===================================
+# 1 type de matériau fictif
+#---------------------------------------
+# sous bloc niveau 1 : materiau NILMAT
+#---------------------------------------
+NILMAT = OPER (nom = "NILMAT",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Fictitious Materials",)},
+ ang= "NILMAT block definition",
+ fr= "definition du bloc NILMAT",
+ sd_prod= materiau,
+
+ NAME = SIMP (statut="o",
+ typ="TXM",
+ ang = "name of the linked mesh group",
+ fr = "nom du groupe de mailles associe",
+ ),
+ ) # fin OPER NILMAT
+
+
+#============================================
+# 1 type de matériau isotropique non homogene
+#----------------------------------------
+# sous bloc niveau 1 : EM_ISOTROPIC_FILES
+#----------------------------------------
+EM_ISOTROPIC = PROC (nom = "EM_ISOTROPIC",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Isotropic Inhomogeneous Materials",)},
+ ang= "EM_ISOTROPIC block definition",
+ fr= "definition du bloc EM_ISOTROPIC",
+
+ CONDUCTIVITY_File = SIMP (statut="o",
+ typ=("Fichier",'MED Files (*.med)',),
+ ang="CONDUCTIVITY MED data file name",
+ fr ="nom du fichier MED CONDUCTIVITY",
+ ),
+ PERMEABILITY_File = SIMP (statut="o",
+ typ=("Fichier",'MED Files (*.med)',),
+ ang="PERMEABILITY MED data file name",
+ fr ="nom du fichier MED PERMEABILITY",
+ ),
+ ) # fin PROC EM_ISOTROPIC
+
+#============================================
+# 1 type de matériau non isotropique
+#----------------------------------------
+# sous bloc niveau 1 : EM_ANISOTROPIC_FILES
+#----------------------------------------
+EM_ANISOTROPIC = PROC (nom = "EM_ANISOTROPIC",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Anisotropic Materials",)},
+ ang= "EM_ANISOTROPIC block definition",
+ fr= "definition du bloc EM_ANISOTROPIC",
+
+ CONDUCTIVITY_File = SIMP (statut="o",
+ typ=("Fichier",'.mater Files (*.mater)',),
+ ang="CONDUCTIVITY .mater data file name",
+ fr ="nom du fichier .mater CONDUCTIVITY",
+ ),
+ PERMEABILITY_File = SIMP (statut="o",
+ typ=("Fichier",'.mater Files (*.mater)',),
+ ang="PERMEABILITY .mater data file name",
+ fr ="nom du fichier .mater PERMEABILITY",
+ ),
+ ) # fin PROC EM_ANISOTROPIC
+
+#================================
+# 3eme bloc : bloc SOURCES
+#================================
+
+SOURCES = PROC ( nom = "SOURCES",
+ op = None,
+ repetable = 'n',
+ ang = "sources block definition",
+
+ STRANDED_INDUCTOR = FACT (statut="f",
+ fr="stranded inductor source",
+
+ NAME = SIMP (statut="o",
+ typ="TXM",
+ fr="name of the source",
+ ),
+ NTURNS = SIMP (statut="o",
+ typ="I",
+ defaut=1,
+ fr="number of tuns in the inductor",
+ ),
+ CURJ = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ fr="intensity",
+ ),
+ POLAR = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ fr="polarization",
+ ),
+
+ ), # fin FACT
+
+ EPORT = FACT (statut="f",
+ fr="eport source",
+
+ NAME = SIMP (statut="o",
+ typ="TXM",
+ fr="name of the source",
+ ),
+ TYPE = SIMP (statut="o",
+ typ="TXM",
+ into=("VOLTAGE","CURRENT"),
+ fr="type of eport source",
+ ),
+ AMP = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ fr="amplitude",
+ ),
+ POLAR = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ fr="polarization",
+ ),
+
+ ), # fin FACT eport
+
+ HPORT = FACT (statut="f",
+ fr="hport source",
+
+ NAME = SIMP (statut="o",
+ typ="TXM",
+ fr="name of the source",
+ ),
+ TYPE = SIMP (statut="o",
+ typ="TXM",
+ into=("VOLTAGE","CURRENT"),
+ fr="type of hport source",
+ ),
+ AMP = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ fr="amplitude",
+ ),
+ POLAR = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ fr="polarization",
+ ),
+
+ ), # fin FACT hport
+
+
+) # Fin PROC sources
+
--- /dev/null
+# -*- coding: utf-8 -*-
+
+# --------------------------------------------------
+# --------------------------------------------------
+
+import os
+import sys
+from Accas import *
+import types
+
+# --------------------------------------------------
+# definition d une classe pour les materiaux
+# definition d une classe pour les groupes de mailles
+# definition d une classe pour les lois non lineaires
+# --------------------------------------------------
+class materiau ( ASSD ) : pass
+class grmaille ( ASSD ) : pass
+class loiNL ( ASSD ) : pass
+
+#CONTEXT.debug = 1
+# --------------------------------------------------
+# déclaration du jeu de commandes : 1ere instruction du catalogue obligatoire
+#---------------------------------------------------
+
+JdC = JDC_CATA ( code = 'CARMEL3D',
+# execmodul = None,
+ regles =(
+# regles = ( AU_MOINS_UN ('VERSION'),
+# AU_MOINS_UN ('MATERIALS'),
+ AU_MOINS_UN ('SOURCES'),
+# A_CLASSER ('MATERIALS','SOURCES'),
+ ),
+ ) # Fin JDC_CATA
+
+# --------------------------------------------------
+# definition de groupe de mailles
+# et association du nom du materiau au groupe de mailles
+#---------------------------------------------------
+
+MESH_GR = OPER (nom = "MESH_GR",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Definition",)},
+ fr= "definition du groupe de mailles",
+ ang = " mesh group definition",
+ sd_prod= grmaille,
+
+ Material = SIMP (statut="o",
+ typ=(materiau,),
+ ang="name of the linked material",
+ fr ="nom du materiau associe",
+ ),
+ )
+
+
+#=========================================================
+# 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 3 types de matériaux isotropiques et homogenes
+#------------------------------------
+# sous bloc niveau 1 : CONDUCTOR
+#------------------------------------
+#
+CONDUCTOR = OPER (nom = "CONDUCTOR",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Isotropic Homogeneous Materials",)},
+ ang= "CONDUCTOR block definition",
+ fr= "definition du bloc CONDUCTOR",
+ sd_prod= materiau,
+
+#------------------------------------------------
+# sous bloc niveau 2 : CONDUCTIVITY
+#------------------------------------------------
+ CONDUCTIVITY = FACT ( statut="o",
+ ang ="Conductivity properties",
+ fr ="proprietes du bloc CONDUCTIVITY",
+ regles = ( UN_PARMI ('VALUE_REAL','VALUE_COMPLEX'),
+ ),
+
+ LAW = SIMP (statut="o",
+ typ="TXM",
+ defaut="LINEAR",
+ into = ("LINEAR","NONLINEAR"),
+ ang = "type of law",
+ fr = "type de loi",
+ ),
+
+ HOMOGENEOUS = SIMP (statut="f",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is homogeneous",
+ fr = "le materiau est homogene",
+ ),
+ ISOTROPIC = SIMP (statut="f",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is isotropic",
+ fr = "le materiau est isotrope",
+ ),
+
+ VALUE_REAL = SIMP (statut="f",
+ typ="R",
+ ang = "enter a real value",
+ fr = "entrer un reel",
+ ),
+ VALUE_COMPLEX = SIMP (statut="f",
+ typ="C",
+ ang = "enter a complex value",
+ fr = "entrer un complexe",
+ ),
+
+ ), # fin FACT CONDUCTIVITY
+
+#------------------------------------------------
+# sous bloc niveau 2 : PERMEABILITY
+#------------------------------------------------
+ PERMEABILITY = FACT ( statut="o",
+ ang ="Permeability properties",
+ fr ="proprietes du bloc PERMEABILITY",
+ regles = ( UN_PARMI ('VALUE_REAL','VALUE_COMPLEX'),
+ ),
+
+ LAW = SIMP (statut="o",
+ typ="TXM",
+ defaut="LINEAR",
+ into = ("LINEAR","NONLINEAR"),
+ ang = "type of law",
+ ),
+ HOMOGENEOUS = SIMP (statut="f",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is homogeneous",
+ fr = "le materiau est homogene",
+ ),
+ ISOTROPIC = SIMP (statut="f",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is isotropic",
+ fr = "le materiau est isotrope",
+ ),
+ VALUE_REAL = SIMP (statut="f",
+ typ="R",
+ ang = "enter a real value",
+ fr = "entrer un reel",
+ ),
+ VALUE_COMPLEX = SIMP (statut="o",
+ typ="C",
+ ang = "enter a complex value",
+ fr = "entrer un complexe",
+ ),
+
+ ), # fin FACT PERMEABILITY
+
+
+ ) # fin OPER conductor
+
+#------------------------------------
+# sous bloc niveau 1 : DIELECTRIC
+#------------------------------------
+DIELECTRIC = OPER (nom = "DIELECTRIC",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Isotropic Homogeneous Materials",)},
+ ang= "DIELECTRIC block definition",
+ fr= "definition du bloc DIELECTRIC",
+ sd_prod= materiau,
+
+
+#------------------------------------------------
+# sous bloc niveau 2 : PERMITTTIVITY
+#------------------------------------------------
+ PERMITTIVITY = FACT ( statut="o",
+ ang ="Permittivity properties",
+ fr ="proprietes du bloc PERMITTIVITY",
+ regles = ( UN_PARMI ('VALUE_REAL','VALUE_COMPLEX'),
+ ),
+
+ LAW = SIMP (statut="o",
+ typ="TXM",
+ defaut="LINEAR",
+ into = ("LINEAR","NONLINEAR"),
+ ang = "type of law",
+ ),
+ HOMOGENEOUS = SIMP (statut="f",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is homogeneous",
+ fr = "le materiau est homogene",
+ ),
+ ISOTROPIC = SIMP (statut="f",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is isotropic",
+ fr = "le materiau est isotrope",
+ ),
+ VALUE_REAL = SIMP (statut="f",
+ typ="R",
+ ang = "enter a real value",
+ fr = "entrer un reel",
+ ),
+ VALUE_COMPLEX = SIMP (statut="o",
+ typ="C",
+ ang = "enter a complex value",
+ fr = "entrer un complexe",
+ ),
+
+ ), # fin FACT PERMITTIVITY
+
+#------------------------------------------------
+# sous bloc niveau 2 : PERMEABILITY
+#------------------------------------------------
+ PERMEABILITY = FACT ( statut="o",
+ ang ="Permeability properties",
+ fr ="proprietes du bloc PERMEABILITY",
+ regles = ( UN_PARMI ('VALUE_REAL','VALUE_COMPLEX'),
+ ),
+
+ LAW = SIMP (statut="o",
+ typ="TXM",
+ defaut="LINEAR",
+ into = ("LINEAR","NONLINEAR"),
+ ang = "type of law",
+ ),
+ HOMOGENEOUS = SIMP (statut="f",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is homogeneous",
+ fr = "le materiau est homogene",
+ ),
+ ISOTROPIC = SIMP (statut="f",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is isotropic",
+ fr = "le materiau est isotrope",
+ ),
+ VALUE_REAL = SIMP (statut="f",
+ typ="R",
+ ang = "enter a real value",
+ fr = "entrer un reel",
+ ),
+ VALUE_COMPLEX = SIMP (statut="o",
+ typ="C",
+ ang = "enter a complex value",
+ fr = "entrer un complexe",
+ ),
+
+ NonLinearCond = BLOC (condition="LAW=='NONLINEAR'",
+ NONLINEAR = SIMP (statut="o",
+ typ= (loiNL,),
+ ang = "enter a complex value",
+ fr = "parametres de la loi non lineaire",
+ ),
+ ),
+
+ ), # fin FACT PERMEABILITY
+
+
+ ) # fin OPER DIELECTRIC
+
+
+#------------------------------------
+# sous bloc niveau 1 : ZSURFACIC
+#------------------------------------
+ZSURFACIC = OPER (nom = "ZSURFACIC",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Isotropic Homogeneous Materials",)},
+ ang= "ZSURFACIC block definition",
+ fr= "definition du bloc ZSURFACIC",
+ sd_prod= materiau,
+
+#------------------------------------------------
+# sous bloc niveau 2 : CONDUCTIVITY
+#------------------------------------------------
+ CONDUCTIVITY = FACT ( statut="o",
+ ang ="Conductivity properties",
+ fr ="proprietes du bloc CONDUCTIVITY",
+ regles = ( UN_PARMI ('VALUE_REAL','VALUE_COMPLEX'),
+ ),
+
+ LAW = SIMP (statut="o",
+ typ="TXM",
+ defaut="LINEAR",
+ into = ("LINEAR","NONLINEAR"),
+ ang = "type of law",
+ fr = "type de loi",
+ ),
+ HOMOGENEOUS = SIMP (statut="f",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is homogeneous",
+ fr = "le materiau est homogene",
+ ),
+ ISOTROPIC = SIMP (statut="f",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is isotropic",
+ fr = "le materiau est isotrope",
+ ),
+ VALUE_REAL = SIMP (statut="f",
+ typ="R",
+ ang = "enter a real value",
+ fr = "entrer un reel",
+ ),
+ VALUE_COMPLEX = SIMP (statut="o",
+ typ="C",
+ ang = "enter a complex value",
+ fr = "entrer un complexe",
+ ),
+
+
+ ), # fin FACT CONDUCTIVITY
+
+#------------------------------------------------
+# sous bloc niveau 2 : PERMEABILITY
+#------------------------------------------------
+ PERMEABILITY = FACT ( statut="o",
+ ang ="Permeability properties",
+ fr ="proprietes du bloc PERMEABILITY",
+ regles = ( UN_PARMI ('VALUE_REAL','VALUE_COMPLEX'),
+ ),
+
+ LAW = SIMP (statut="o",
+ typ="TXM",
+ defaut="LINEAR",
+ into = ("LINEAR","NONLINEAR"),
+ ang = "type of law",
+ fr = "type de loi",
+ ),
+ HOMOGENEOUS = SIMP (statut="f",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is homogeneous",
+ fr = "le materiau est homogene",
+ ),
+ ISOTROPIC = SIMP (statut="f",
+ typ="TXM",
+ defaut="TRUE",
+ into = ("TRUE","FALSE"),
+ ang = "the material is isotropic",
+ fr = "le materiau est isotrope",
+ ),
+ VALUE_REAL = SIMP (statut="f",
+ typ="R",
+ ang = "enter a real value",
+ fr = "entrer un reel",
+ ),
+ VALUE_COMPLEX = SIMP (statut="o",
+ typ="C",
+ ang = "enter a complex value",
+ fr = "entrer un complexe",
+ ),
+
+ ), # fin FACT PERMEABILITY
+
+ ) # fin OPER ZSURFACIC
+
+
+#===================================
+# definition d un type de matériau fictif
+#------------------------------------
+# sous bloc niveau 1 : NILMAT
+#------------------------------------
+NILMAT = OPER (nom = "NILMAT",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Fictitious Materials",)},
+ ang= "NILMAT block definition",
+ fr= "definition du bloc NILMAT",
+ sd_prod= materiau,
+
+ ) # fin OPER NILMAT
+
+
+#============================================
+# 1 type de matériau isotropique non homogene
+#----------------------------------------
+# sous bloc niveau 1 : EM_ISOTROPIC_FILES
+#----------------------------------------
+EM_ISOTROPIC = PROC (nom = "EM_ISOTROPIC",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Isotropic Inhomogeneous Materials",)},
+ ang= "EM_ISOTROPIC block definition",
+ fr= "definition du bloc EM_ISOTROPIC",
+
+ CONDUCTIVITY_File = SIMP (statut="o",
+ typ=("Fichier",'MED Files (*.med)',),
+ ang="CONDUCTIVITY MED data file name",
+ fr ="nom du fichier MED CONDUCTIVITY",
+ ),
+ PERMEABILITY_File = SIMP (statut="o",
+ typ=("Fichier",'MED Files (*.med)',),
+ ang="PERMEABILITY MED data file name",
+ fr ="nom du fichier MED PERMEABILITY",
+ ),
+
+ ) # fin PROC EM_ISOTROPIC
+
+#============================================
+# 1 type de matériau non isotropique
+#----------------------------------------
+# sous bloc niveau 1 : EM_ANISOTROPIC_FILES
+#----------------------------------------
+EM_ANISOTROPIC = PROC (nom = "EM_ANISOTROPIC",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Anisotropic Materials",)},
+ ang= "EM_ANISOTROPIC block definition",
+ fr= "definition du bloc EM_ANISOTROPIC",
+
+ CONDUCTIVITY_File = SIMP (statut="o",
+ typ=("Fichier",'.mater Files (*.mater)',),
+ ang="CONDUCTIVITY .mater data file name",
+ fr ="nom du fichier .mater CONDUCTIVITY",
+ ),
+ PERMEABILITY_File = SIMP (statut="o",
+ typ=("Fichier",'.mater Files (*.mater)',),
+ ang="PERMEABILITY .mater data file name",
+ fr ="nom du fichier .mater PERMEABILITY",
+ ),
+ ) # fin PROC EM_ANISOTROPIC
+
+#=========================================================
+# definition des parametres d une loi
+#
+# Constitution de sous bloc NONLINEAR
+# produit un objet "bloc NONLINEAR" de type (classe) loiNL
+#------------------------------------------------
+DEF_NONLINEAR_BL = OPER (nom = "DEF_NONLINEAR_BL",
+ op = None,
+ repetable = 'n',
+ UIinfo= {"groupes":("Definition",)},
+ ang= "NONLINEAR block definition",
+ fr= "definition de bloc NONLINEAR",
+ sd_prod= loiNL,
+
+ NATURE = SIMP (statut="o",
+ typ="TXM",
+ defaut="SPLINE",
+ into=("SPLINE","MARROCCO","MARROCCO+SATURATION"),
+ ang="nature of the law",
+ fr ="nature de la loi",
+ ),
+
+ SplineParam = BLOC (condition="NATURE=='SPLINE'",
+
+ FILENAME = SIMP (statut="o",
+ typ=("Fichier",'All Files (*)',),
+ ang="data file name",
+ fr ="nom du fichier",
+ ),
+ APPLIEDTO = SIMP (statut="o",
+ typ="TXM",
+ into=("B(H)&H(B)","B(H)","H(B)"),
+ defaut="B(H)&H(B)",
+ ang="spline applied to",
+ fr ="spline appliquee a ",
+ ),
+ ), # fin BLOC SplineParam
+
+ MarroccoParam= BLOC (condition="NATURE=='MARROCCO'",
+
+ ALPHA = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="alpha parameter",
+ fr ="parametre alpha" ,
+ ),
+ TAU = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="tau parameter",
+ fr ="parametre tau" ,
+ ),
+ C = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="c parameter",
+ fr ="parametre c" ,
+ ),
+ EPSILON = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="epsilon parameter",
+ fr ="parametre epsilon" ,
+ ),
+ ), # fin BLOC MarroccoParam
+
+ MarroSatuParam= BLOC (condition="NATURE=='MARROCCO+SATURATION'",
+
+ ALPHA = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="alpha parameter",
+ fr ="parametre alpha" ,
+ ),
+ TAU = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="tau parameter",
+ fr ="parametre tau" ,
+ ),
+ C = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="c parameter",
+ fr ="parametre c" ,
+ ),
+ EPSILON = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="epsilon parameter",
+ fr ="parametre epsilon" ,
+ ),
+ BMAX = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="intersection B",
+ fr ="intersection B" ,
+ ),
+ HSAT = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="H value",
+ fr ="valeur H" ,
+ ),
+ BSAT = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ val_min=0,
+ ang="B value",
+ fr ="valeur B" ,
+ ),
+ JOIN = SIMP (statut="o",
+ typ="TXM",
+ defaut="SPLINE",
+ into= ("SPLINE","PARABOLIC","LINEAR"),
+ ang="type of join between laws",
+ fr ="type de jointure entre les 2 lois" ,
+ ),
+ 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 ="jointure appliquee a ",
+ ),
+ ), # fin BLOC MarroSatuParam
+ ) # fin OPER
+#================================
+# 3eme bloc : bloc SOURCES
+#================================
+
+SOURCES = PROC ( nom = "SOURCES",
+ op = None,
+ repetable = 'n',
+ ang = "sources block definition",
+
+ STRANDED_INDUCTOR = FACT (statut="f",
+ fr="stranded inductor source",
+
+ NAME = SIMP (statut="o",
+ typ="TXM",
+ fr="name of the source",
+ ),
+ NTURNS = SIMP (statut="o",
+ typ="I",
+ defaut=1,
+ fr="number of tuns in the inductor",
+ ),
+ CURJ = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ fr="intensity",
+ ),
+ POLAR = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ fr="polarization",
+ ),
+
+ ), # fin FACT
+
+ EPORT = FACT (statut="f",
+ fr="eport source",
+
+ NAME = SIMP (statut="o",
+ typ="TXM",
+ fr="name of the source",
+ ),
+ TYPE = SIMP (statut="o",
+ typ="TXM",
+ into=("VOLTAGE","CURRENT"),
+ fr="type of eport source",
+ ),
+ AMP = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ fr="amplitude",
+ ),
+ POLAR = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ fr="polarization",
+ ),
+
+ ), # fin FACT eport
+
+ HPORT = FACT (statut="f",
+ fr="hport source",
+
+ NAME = SIMP (statut="o",
+ typ="TXM",
+ fr="name of the source",
+ ),
+ TYPE = SIMP (statut="o",
+ typ="TXM",
+ into=("VOLTAGE","CURRENT"),
+ fr="type of hport source",
+ ),
+ AMP = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ fr="amplitude",
+ ),
+ POLAR = SIMP (statut="o",
+ typ="R",
+ defaut=0,
+ fr="polarization",
+ ),
+
+ ), # fin FACT hport
+
+
+) # Fin PROC sources
+
--- /dev/null
+# -*- coding: utf-8 -*-
--- /dev/null
+# -*- coding: utf-8 -*-\r
+# CONFIGURATION MANAGEMENT OF EDF VERSION\r
+# ======================================================================\r
+# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG\r
+# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY\r
+# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY\r
+# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR\r
+# (AT YOUR OPTION) ANY LATER VERSION.\r
+#\r
+# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT\r
+# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF\r
+# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU\r
+# GENERAL PUBLIC LICENSE FOR MORE DETAILS.\r
+#\r
+# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE\r
+# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,\r
+# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.\r
+#\r
+#\r
+# ======================================================================\r
+"""\r
+ Ce module sert pour charger les paramètres de configuration d'EFICAS\r
+"""\r
+# Modules Python\r
+import configuration\r
+import os\r
+\r
+\r
+class CONFIG(configuration.CONFIG_BASE):\r
+\r
+ #-----------------------------------\r
+ def __init__(self,appli,repIni):\r
+ #-----------------------------------\r
+\r
+ configuration.CONFIG_BASE.__init__(self,appli,repIni,'.Eficas_Openturns')\r
+ self.INSTALLDIR =os.path.dirname(__file__)\r
+ self.REPINI =os.path.dirname(__file__)\r
+\r
+ self.labels_user=['exec_acrobat', 'catalogues','savedir','path_doc','OpenTURNS_path']\r
+ self.labels_eficas=["rep_user","INSTALLDIR","path_doc","exec_acrobat"]\r
+ self.labels_eficas=self.labels_eficas+["rep_cata","initialdir","savedir","catalogues"]\r
+ self.cataFile="editeur.ini"\r
+ self.setValeurs()\r
+\r
+ #---------------------------------------\r
+ def lecture_fichier_ini_standard(self):\r
+ #---------------------------------------\r
+ configuration.CONFIG_BASE.lecture_fichier_ini_standard(self)\r
+ if hasattr(self,'OpenTURNS_path') :\r
+ self.oldOTPath=self.OpenTURNS_path\r
+\r
+ #---------------------------------------\r
+ def lecture_fichier_ini_utilisateur(self):\r
+ #---------------------------------------\r
+ configuration.CONFIG_BASE.lecture_fichier_ini_utilisateur(self)\r
+\r
+def make_config(appli,rep):\r
+ return CONFIG(appli,rep)\r
+\r
--- /dev/null
+# Choix des catalogues
+import os
+rep_cata=os.getcwd()
+
+catalogues = (
+# (code,version,catalogue,formatIn,formatOut)
+# catalogue entier et etendu : tout est decrit avec les repetitions qui en decoulent
+ ('CARMEL3D','ETENDU',os.path.join(rep_cata,'Carmel3D_cata_etendu.py'),'python','python'),
+# catalogue avec essai de mise en commun de certains blocs (loi)
+ ('CARMEL3D','FACTORISATION LOIS',os.path.join(rep_cata,'Carmel3D_cata_fact.py'),'python','python'),
+)
+
--- /dev/null
+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__)))
--- /dev/null
+# -*- 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
+
+# repIni sert à localiser le fichier editeur.ini
+# Obligatoire
+repIni=os.path.dirname(os.path.abspath(__file__))
+REPINI=os.path.dirname(os.path.abspath(__file__))
+INSTALLDIR=os.path.abspath(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
+
+
+# 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'
+
+
+# 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','<Control-n>','Ctrl+N'),
+ ('Nouvel INCLUDE','newJDC_include'),
+ ('Ouvrir','openJDC','<Control-o>','Ctrl+O'),
+ ('Enregistrer','saveJDC','<Control-s>','Ctrl+S'),
+ ('Enregistrer sous','saveasJDC','<Control-e>','Ctrl+E'),
+ None,
+ ('Fermer','closeJDC','<Control-w>','Ctrl+W'),
+ ('Quitter','exitEFICAS','<Control-q>','Ctrl+Q'),
+ ]
+ ),
+ ('Edition',[
+ ('Copier','copy','<Control-c>','Ctrl+C'),
+ ('Couper','cut','<Control-x>','Ctrl+X'),
+ ('Coller','paste','<Control-v>','Ctrl+V'),
+ ]
+ ),
+ ('Jeu de commandes',[
+ ('Rapport de validation','visuCRJDC','<Control-r>','Ctrl+R'),
+ ('Fichier source','visu_txt_brut_JDC','<Control-b>','Ctrl+B'),
+ #('Paramètres Eficas','affichage_fichier_ini'),
+ ]
+ ),
+ ('Traduction',[
+ ('Traduction v7 en v8','TraduitFichier7'),
+ ('Traduction v8 en v9','TraduitFichier8','<Control-t>','Ctrl+T'),
+ ]
+ ),
+ ('Aide',[
+ ('Aide EFICAS','aideEFICAS','<Control-a>','Ctrl+A'),
+ ]
+ ),
+ ]
+ }
--- /dev/null
+#@ MODIF properties Accas DATE 02/06/2010 AUTEUR aster M.ADMINISTRATEUR
+# CONFIGURATION 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
--- /dev/null
+#!/usr/bin/env python
+# -*- 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 à lancer EFICAS configuré 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.lance_eficas(code=prefs.code)
--- /dev/null
+# -*- 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)