1 subroutine sfgrf0 ( nocmaf,
4 > adnufa, adgrpo, adgrtb,
6 > ulsort, langue, codret)
7 c ______________________________________________________________________
11 c Outil de Maillage Adaptatif par Raffinement et Deraffinement d'EDF R&D
13 c Version originale enregistree le 18 juin 1996 sous le numero 96036
14 c aupres des huissiers de justice Simart et Lavoir a Clamart
15 c Version 11.2 enregistree le 13 fevrier 2015 sous le numero 2015/014
16 c aupres des huissiers de justice
17 c Lavoir, Silinski & Cherqui-Abrahmi a Clamart
19 c HOMARD est une marque deposee d'Electricite de France
25 c ______________________________________________________________________
27 c Suivi de Frontiere - GRoupes de la Frontiere - phase 0
29 c ______________________________________________________________________
30 c . nom . e/s . taille . description .
31 c .____________________________________________________________________.
32 c . nocmaf . e . char*8 . nom de l'objet maillage de la frontiere .
33 c . nbmail . s . 1 . nombre de mailles .
34 c . adtyel . s . 1 . type des elements .
35 c . adfael . s . 1 . famille MED des elements .
36 c . adnufa . s . 1 . numero des familles .
37 c . adgrpo . s . 1 . pointeurs des groupes .
38 c . adgrtb . s . 1 . table des groupes .
39 c . nbfmed . s . 1 . nombre de familles de mailles de frontiere .
40 c . lifami . s . * . liste des familles a explorer .
41 c . ulsort . e . 1 . numero d'unite logique de la liste standard.
42 c . langue . e . 1 . langue des messages .
43 c . . . . 1 : francais, 2 : anglais .
44 c . codret . es . 1 . code de retour des modules .
45 c . . . . 0 : pas de probleme .
46 c . . . . 2 : probleme avec la memoire .
47 c . . . . 3 : probleme avec le fichier .
48 c . . . . 5 : contenu incorrect .
49 c ______________________________________________________________________
52 c 0. declarations et dimensionnement
55 c 0.1. ==> generalites
61 parameter ( nompro = 'SFGRF0' )
74 integer nbfmed, nbmail
75 integer adtyel, adfael
76 integer adnufa, adgrpo, adgrtb
81 integer ulsort, langue, codret
83 c 0.4. ==> variables locales
88 character*8 ncinfo, ncnoeu, nccono, nccode
89 character*8 nccoex, ncfami
90 character*8 ncequi, ncfron, ncnomb
93 parameter ( nbmess = 10 )
94 character*80 texte(nblang,nbmess)
96 c 0.5. ==> initialisations
97 c ______________________________________________________________________
105 #ifdef _DEBUG_HOMARD_
106 write (ulsort,texte(langue,1)) 'Entree', nompro
113 c 2. recuperation des adresses
115 c 2.1. ==> les informations generales
117 if ( codret.eq.0 ) then
119 #ifdef _DEBUG_HOMARD_
120 call gmprsx (nompro,nocmaf )
123 #ifdef _DEBUG_HOMARD_
124 write (ulsort,texte(langue,3)) 'UTNOMC', nompro
126 call utnomc ( nocmaf,
128 > degre, mailet, maconf, homolo, hierar,
130 > ncinfo, ncnoeu, nccono, nccode,
132 > ncequi, ncfron, ncnomb,
133 > ulsort, langue, codret)
135 #ifdef _DEBUG_HOMARD_
136 call gmprsx (nompro, ncnoeu )
137 call gmprsx (nompro, nccono )
138 call gmprsx (nompro, ncfami )
143 c 2.2. ==> caracteristiques des mailles frontiere
145 if ( codret.eq.0 ) then
147 #ifdef _DEBUG_HOMARD_
148 write (ulsort,texte(langue,3)) 'UTAD11', nompro
151 call utad11 ( iaux, ncnoeu, nccono,
152 > jaux, jaux, jaux, jaux,
153 > adtyel, adfael, jaux, jaux,
154 > ulsort, langue, codret )
158 if ( codret.eq.0 ) then
160 call gmliat ( nccono, 1, nbmail, codret )
164 c 2.3. ==> adresses des tableaux des groupes dans les familles
166 if ( codret.eq.0 ) then
168 #ifdef _DEBUG_HOMARD_
169 write (ulsort,texte(langue,3)) 'UTAD13', nompro
172 call utad13 ( iaux, ncfami,
174 > adgrpo, jaux, adgrtb,
175 > ulsort, langue, codret )
180 c 3. reperage des numeros des familles de segments
182 #ifdef _DEBUG_HOMARD_
183 write (ulsort,*) '3. reperage ; codret = ', codret
186 if ( codret.eq.0 ) then
188 #ifdef _DEBUG_HOMARD_
189 write (ulsort,texte(langue,3)) 'SFGRF1', nompro
191 call sfgrf1 ( nbfmed, lifami,
192 > nbmail, imem(adtyel), imem(adfael),
193 > ulsort, langue, codret )
201 if ( codret.ne.0 ) then
205 write (ulsort,texte(langue,1)) 'Sortie', nompro
206 write (ulsort,texte(langue,2)) codret
210 #ifdef _DEBUG_HOMARD_
211 write (ulsort,texte(langue,1)) 'Sortie', nompro