1 subroutine vcme29 ( nofaar, cofaar,
5 > ulsort, langue, codret )
6 c ______________________________________________________________________
10 c Outil de Maillage Adaptatif par Raffinement et Deraffinement d'EDF R&D
12 c Version originale enregistree le 18 juin 1996 sous le numero 96036
13 c aupres des huissiers de justice Simart et Lavoir a Clamart
14 c Version 11.2 enregistree le 13 fevrier 2015 sous le numero 2015/014
15 c aupres des huissiers de justice
16 c Lavoir, Silinski & Cherqui-Abrahmi a Clamart
18 c HOMARD est une marque deposee d'Electricite de France
24 c ______________________________________________________________________
26 c aVant adaptation - Conversion de Maillage Extrude - phase 29
28 c Determine les familles pour le lien face avant / face perpendiculaire
29 c au cours de l'extrusion des noeuds
30 c ______________________________________________________________________
32 c . nom . e/s . taille . description .
33 c .____________________________________________________________________.
34 c . nofaar . e . 1 . nombre d'origine de familles d'aretes .
35 c . cofaar . e . ncffar*. codes d'origine des familles d'aretes .
37 c . cfanoe . e . nctfno*. codes des familles des noeuds .
38 c . . . nbfnoe . 1 : famille MED .
39 c . . . . si extrusion : .
40 c . . . . 2 : famille du noeud extrude .
41 c . . . . 3 : famille de l'arete perpendiculaire .
42 c . . . . 4 : position du noeud .
43 c . . . . si equivalence : .
44 c . . . . + l : appartenance a l'equivalence l .
45 c . nharfa . e . char8 . objet decrivant les familles d'aretes .
46 c . pcfaar . s . 1 . codes des familles d'aretes .
47 c . ulsort . e . 1 . numero d'unite logique de la liste standard.
48 c . langue . e . 1 . langue des messages .
49 c . . . . 1 : francais, 2 : anglais .
50 c . codret . e . 1 . code de retour des modules .
51 c . . . . 0 : pas de probleme .
52 c . . . . 1 : probleme .
53 c ______________________________________________________________________
56 c 0. declarations et dimensionnement
59 c 0.1. ==> generalites
65 parameter ( nompro = 'VCME29' )
80 integer nofaar, cofaar(ncffar,nofaar)
81 integer cfanoe(nctfno,nbfnoe)
86 integer ulsort, langue, codret
88 c 0.4. ==> variables locales
95 parameter ( nbmess = 10 )
96 character*80 texte(nblang,nbmess)
98 c 0.5. ==> initialisations
99 c ______________________________________________________________________
107 #ifdef _DEBUG_HOMARD_
108 write (ulsort,texte(langue,1)) 'Entree', nompro
114 texte(1,4) = '(''Familles d''''extrusion des '',a)'
115 texte(1,5) = '(''Influence des '',a)'
117 texte(2,4) = '(''Description of families of extruded '',a)'
118 texte(2,5) = '(''Influence of the '',a)'
122 #ifdef _DEBUG_HOMARD_
123 write (ulsort,texte(langue,4)) mess14(langue,3,-1)
124 write (ulsort,texte(langue,5)) mess14(langue,3,1)
125 write (ulsort,90002) 'nctfno', nctfno
126 write (ulsort,90002) 'ncffar', ncffar
130 c. Parcours des familles initiales
132 #ifdef _DEBUG_HOMARD_
133 write (ulsort,90002) '3. parcours ; codret', codret
136 c 2.1. ==> Taille initiale du tableau
141 c 2.2. ==> Allongement de la taille du tableau des familles
145 if ( codret.eq.0 ) then
150 #ifdef _DEBUG_HOMARD_
151 write (ulsort,texte(langue,3)) 'UTFAM2', nompro
153 call utfam2 ( iaux, nharfa, nctfar, nbfar0,
155 > ulsort, langue, codret)
159 c 2.3. ==> Programme utilitaire
161 if ( codret.eq.0 ) then
163 #ifdef _DEBUG_HOMARD_
164 write (ulsort,texte(langue,3)) 'VCME30', nompro
166 call vcme30 ( numfam,
170 > nbfare, imem(pcfaar),
171 > ulsort, langue, codret )
175 c 2.4. ==> A rallonger ?
177 if ( codret.eq.0 ) then
179 if ( nbfare.lt.0 ) then
189 c 3. Redimensionnement final
191 #ifdef _DEBUG_HOMARD_
192 write (ulsort,90002) '3. Redimensionnement ; codret', codret
193 write (ulsort,90002) 'nbfare', nbfare
194 write (ulsort,90002) 'nbfar0', nbfar0
197 if ( nbfare.ne.nbfar0 ) then
199 if ( codret.eq.0 ) then
202 #ifdef _DEBUG_HOMARD_
203 write (ulsort,texte(langue,3)) 'UTFAM2', nompro
205 call utfam2 ( iaux, nharfa, nctfar, nbfare,
207 > ulsort, langue, codret)
213 #ifdef _DEBUG_HOMARD_
214 call gmprsx ( mess14(langue,3,1), nharfa//'.Codes')
221 if ( codret.ne.0 ) then
225 write (ulsort,texte(langue,1)) 'Sortie', nompro
226 write (ulsort,texte(langue,2)) codret
230 #ifdef _DEBUG_HOMARD_
231 write (ulsort,texte(langue,1)) 'Sortie', nompro