]> SALOME platform Git repositories - tools/eficas.git/blob - Aster/Cata/cataSTA9/SD/sd_resuelem.py
Salome HOME
Modif V6_4_°
[tools/eficas.git] / Aster / Cata / cataSTA9 / SD / sd_resuelem.py
1 #@ MODIF sd_resuelem SD  DATE 06/05/2008   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.
10 #
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.
15 #
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 # ======================================================================
20
21 from SD import *
22 from SD.sd_ligrel import sd_ligrel
23
24
25 class sd_resuelem(AsBase):
26     nomj = SDNom(fin=19)
27     NOLI = AsVK24(lonmax=4, )
28     DESC = AsVI(docu='RESL', )
29     RESL = AsColl(acces='NU', stockage='DISPERSE', modelong='VARIABLE', type=Parmi('C', 'R'))
30     RSVI = Facultatif(AsColl(acces='NU', stockage='CONTIG', modelong='VARIABLE', type='I'))
31
32     def exists(self):
33         # retourne "vrai" si la SD semble exister (et donc qu'elle peut etre vérifiée)
34         return self.NOLI.exists
35
36     def check_1(self, checker):
37         if not self.exists() : return
38         noli = self.NOLI.get_stripped()
39         sd2=sd_ligrel(noli[0]) ; sd2.check(checker)
40         assert noli[1] != '' , noli
41         assert noli[2] in ('MPI_COMPLET','MPI_INCOMPLET') , noli
42         assert noli[3] in ('','VOISIN_VF') , noli
43         if noli[3]=='VOISIN_VF' : assert self.RSVI.exists
44
45         desc = self.DESC.get()
46         assert desc[0] > 0 and desc[0] < 1000 , desc
47         nbgr=desc[1]
48         assert nbgr > 0  , desc
49         assert len(desc)==nbgr+2, desc
50         assert self.RESL.nmaxoc == nbgr, desc
51         for k in desc :
52             assert k >= 0, desc