From 990cb3456bd05f5865ab2b31a3e3304f3bb2ed05 Mon Sep 17 00:00:00 2001 From: ilct <> Date: Tue, 22 Nov 2011 12:48:40 +0000 Subject: [PATCH] il :version initiale --- Carmel3D/Carmel3D_cata_etendu.py | 644 +++++++++++++++++++++++++++ Carmel3D/Carmel3D_cata_fact.py | 692 +++++++++++++++++++++++++++++ Carmel3D/__init__.py | 1 + Carmel3D/configuration_CARMEL3D.py | 59 +++ Carmel3D/editeur.ini | 12 + Carmel3D/prefs.py | 4 + Carmel3D/prefs_CARMEL3D.py | 105 +++++ Carmel3D/properties.py | 25 ++ Carmel3D/qtEficas_Carmel3D.py | 34 ++ Carmel3D/style.py | 66 +++ 10 files changed, 1642 insertions(+) create mode 100644 Carmel3D/Carmel3D_cata_etendu.py create mode 100644 Carmel3D/Carmel3D_cata_fact.py create mode 100644 Carmel3D/__init__.py create mode 100644 Carmel3D/configuration_CARMEL3D.py create mode 100644 Carmel3D/editeur.ini create mode 100644 Carmel3D/prefs.py create mode 100644 Carmel3D/prefs_CARMEL3D.py create mode 100644 Carmel3D/properties.py create mode 100755 Carmel3D/qtEficas_Carmel3D.py create mode 100644 Carmel3D/style.py diff --git a/Carmel3D/Carmel3D_cata_etendu.py b/Carmel3D/Carmel3D_cata_etendu.py new file mode 100644 index 00000000..717d86f7 --- /dev/null +++ b/Carmel3D/Carmel3D_cata_etendu.py @@ -0,0 +1,644 @@ +# -*- 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 + diff --git a/Carmel3D/Carmel3D_cata_fact.py b/Carmel3D/Carmel3D_cata_fact.py new file mode 100644 index 00000000..cdcb1dc4 --- /dev/null +++ b/Carmel3D/Carmel3D_cata_fact.py @@ -0,0 +1,692 @@ +# -*- 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 + diff --git a/Carmel3D/__init__.py b/Carmel3D/__init__.py new file mode 100644 index 00000000..40a96afc --- /dev/null +++ b/Carmel3D/__init__.py @@ -0,0 +1 @@ +# -*- coding: utf-8 -*- diff --git a/Carmel3D/configuration_CARMEL3D.py b/Carmel3D/configuration_CARMEL3D.py new file mode 100644 index 00000000..0b8498f5 --- /dev/null +++ b/Carmel3D/configuration_CARMEL3D.py @@ -0,0 +1,59 @@ +# -*- 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 +import configuration +import os + + +class CONFIG(configuration.CONFIG_BASE): + + #----------------------------------- + def __init__(self,appli,repIni): + #----------------------------------- + + configuration.CONFIG_BASE.__init__(self,appli,repIni,'.Eficas_Openturns') + self.INSTALLDIR =os.path.dirname(__file__) + self.REPINI =os.path.dirname(__file__) + + self.labels_user=['exec_acrobat', 'catalogues','savedir','path_doc','OpenTURNS_path'] + self.labels_eficas=["rep_user","INSTALLDIR","path_doc","exec_acrobat"] + self.labels_eficas=self.labels_eficas+["rep_cata","initialdir","savedir","catalogues"] + self.cataFile="editeur.ini" + self.setValeurs() + + #--------------------------------------- + def lecture_fichier_ini_standard(self): + #--------------------------------------- + configuration.CONFIG_BASE.lecture_fichier_ini_standard(self) + if hasattr(self,'OpenTURNS_path') : + self.oldOTPath=self.OpenTURNS_path + + #--------------------------------------- + def lecture_fichier_ini_utilisateur(self): + #--------------------------------------- + configuration.CONFIG_BASE.lecture_fichier_ini_utilisateur(self) + +def make_config(appli,rep): + return CONFIG(appli,rep) + diff --git a/Carmel3D/editeur.ini b/Carmel3D/editeur.ini new file mode 100644 index 00000000..b9fca086 --- /dev/null +++ b/Carmel3D/editeur.ini @@ -0,0 +1,12 @@ +# 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'), +) + diff --git a/Carmel3D/prefs.py b/Carmel3D/prefs.py new file mode 100644 index 00000000..e1d52ad7 --- /dev/null +++ b/Carmel3D/prefs.py @@ -0,0 +1,4 @@ +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 new file mode 100644 index 00000000..eca54ea0 --- /dev/null +++ b/Carmel3D/prefs_CARMEL3D.py @@ -0,0 +1,105 @@ +# -*- 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','','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/Carmel3D/properties.py b/Carmel3D/properties.py new file mode 100644 index 00000000..3db8254b --- /dev/null +++ b/Carmel3D/properties.py @@ -0,0 +1,25 @@ +#@ 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 diff --git a/Carmel3D/qtEficas_Carmel3D.py b/Carmel3D/qtEficas_Carmel3D.py new file mode 100755 index 00000000..299b7f64 --- /dev/null +++ b/Carmel3D/qtEficas_Carmel3D.py @@ -0,0 +1,34 @@ +#!/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) diff --git a/Carmel3D/style.py b/Carmel3D/style.py new file mode 100644 index 00000000..d4855725 --- /dev/null +++ b/Carmel3D/style.py @@ -0,0 +1,66 @@ +# -*- 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) -- 2.39.2