Salome HOME
Merge remote branch 'origin/nouvelEficas' into nouvelEficas
[tools/eficas.git] / CarmelCND / CarmelCND_Cata.py
1 from Accas import *
2
3 class source(ASSD):
4    pass
5
6 class conducteur(ASSD):
7    pass
8
9 class nocond(ASSD):
10    pass
11
12 class vcut(ASSD):
13    pass
14
15 class zs(ASSD):
16    pass
17
18
19 import types
20 class Tuple:
21   def __init__(self,ntuple):
22     self.ntuple=ntuple
23
24   def __convert__(self,valeur):
25     if type(valeur) == types.StringType:
26       return None
27     if len(valeur) != self.ntuple:
28       return None
29     return valeur
30
31   def info(self):
32     return "Tuple de %s elements" % self.ntuple
33
34   __repr__=info
35   __str__=info
36
37 JdC = JDC_CATA (code = 'monCode',
38                 execmodul = None,
39                )
40                 
41 # ======================================================================
42
43
44 SOURCE=OPER(nom='SOURCE',op=None,sd_prod=source,UIinfo = { "groupes" : ( "CACHE", ) },
45             EnveloppeConnexeInducteur=SIMP(statut='o',typ='TXM',defaut="default"),
46             VecteurDirecteur=SIMP(statut='i',typ=Tuple(3),defaut=(0,0,1),validators=VerifTypeTuple(('R','R','R'))),
47             Centre=SIMP(statut='o',typ=Tuple(3),validators=VerifTypeTuple(('R','R','R'))),
48             SectionBobine=SIMP(statut='o',typ='R',fr='en m2',ang='en m2'),
49             Amplitude=SIMP(statut='o',typ='R',fr='en A',ang='en A'),
50             NbdeTours=SIMP(statut='o',typ='I',val_min=1),
51 )
52
53 CONDUCTEUR=OPER(nom='CONDUCTEUR',op=None,sd_prod=conducteur,UIinfo = { "groupes" : ( "CACHE", ) },
54                 Conductivite=SIMP(statut='o',typ='R',fr='en S/m',ang='en S/m'),
55                 PermeabiliteRelative=SIMP(statut='o',typ='R',),
56 )
57 NOCOND=OPER(nom='NOCOND',op=None,sd_prod=nocond,UIinfo = { "groupes" : ( "CACHE", ) },
58             PermeabiliteRelative=SIMP(statut='o',typ='R',),
59 )
60 #
61 VCUT=OPER(nom='VCUT',op=None,sd_prod=vcut,UIinfo = { "groupes" : ( "CACHE", ) },
62             Orientation=SIMP(statut='o',typ='TXM',into=("Oppose","Meme sens"),defaut="Oppose"),
63 )
64 ZS=OPER(nom='ZS',op=None,sd_prod=zs,UIinfo = { "groupes" : ( "CACHE", ) },
65                 Conductivite=SIMP(statut='o',typ='R',),
66                 Permeabilite=SIMP(statut='o',typ='R',),
67 )
68 PARAMETRES=PROC(nom='PARAMETRES',op=None, UIinfo = { "groupes" : ( "CACHE", ) },
69              RepCarmel=SIMP(typ='Repertoire',fr= "Repertoire Carmel",ang= "Carmel Directory",statut= "o",defaut="/projets/projets.002/carmel3d.001/frequentiel/V_240/Compil"),
70              TypedeFormule=SIMP(statut='o',typ='TXM',into=("TOMEGA","APHI")),
71              Frequence=SIMP(statut='o',typ='I',fr="en Hz",ang="en Hz"),
72              Nb_Max_Iterations=SIMP(statut='o',typ='I',val_min=1,val_max=10000,defaut=10000),
73              Erreur_Max=SIMP(statut='o',typ='R',defaut=1E-9),
74 )