1 #@ MODIF sd_char_cine SD DATE 04/05/2009 AUTEUR PELLET J.PELLET
2 # -*- coding: iso-8859-1 -*-
3 # CONFIGURATION MANAGEMENT OF EDF VERSION
4 # ======================================================================
5 # COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG
6 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
7 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
8 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
9 # (AT YOUR OPTION) ANY LATER VERSION.
11 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
12 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
13 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
14 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
16 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
17 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
18 # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
19 # ======================================================================
22 from SD.sd_modele import sd_modele
23 from SD.sd_fonction import sd_fonction
26 class sd_char_cine(AsBase):
27 #===========================
30 AFCK = AsVK8(lonmax=3)
32 AFCV = Facultatif(OJBVect(type=Parmi('C','R','K')))
37 # retourne "vrai" si la SD semble exister (et donc qu'elle peut etre vérifiée)
38 return self.AFCK.exists
41 def u_veri1(self): # retourne (CIME/CITH/CIAC, RE/CX/FT)
42 #---------------------------------------------------------------
43 if not self.exists() : return
45 l1=afck[0].strip().split('_') ; assert len(l1)==2 , afck
46 phen, tsca= l1[0], l1[1]
47 assert phen in ('CIME', 'CITH', 'CIAC'), afck
48 assert tsca in ('RE', 'CX', 'FT'), tsca
52 def check_AFCK(self,checker):
53 #---------------------------------------------
54 if not self.exists() : return
55 phen, tsca = self.u_veri1()
58 sd2=sd_modele(nomo); sd2.check(checker)
59 if afck[2].strip() != '' : assert (phen=='CIME' or phen=='CITH') and tsca=='FT', afck
62 def check_AFCI(self,checker):
63 #---------------------------------------------
64 if not self.exists() : return
65 phen, tsca = self.u_veri1()
68 assert len(afci)>=3*nbloc+1 , afci
69 for k in range(nbloc) :
72 assert afci[3*k +3] == 0 , (k,afci)
73 assert nuno > 0 , (k,afci)
74 assert nucmp> 0 , (k,afci)
77 def check_AFCV(self,checker):
78 #-------------------------------------------------
79 if not self.exists() : return
80 phen, tsca = self.u_veri1()
83 if not self.AFCV.exists :
84 assert tsca=='FT',tsca
86 assert afck[2].strip() != '' , afck
88 tsca2 = self.AFCV.type.strip()
89 assert self.AFCV.lonmax >= nbloc , (nbloc,self.AFCV.lonmax)
92 assert tsca2=='R', tsca2 # champ de réels
94 assert tsca2=='K', tsca2 # champ de fonctions
96 assert tsca2=='C', tsca2 # champ de complexes
98 # vérification des fonctions :
100 afcv = self.AFCV.get()
101 for fonc in afcv[:nbloc] :
102 sd2=sd_fonction(fonc); sd2.check(checker)