1 subroutine eslmh5 ( typenh, norenu, reento, reenac, adenhn,
2 > ulsort, langue, codret)
3 c ______________________________________________________________________
7 c Outil de Maillage Adaptatif par Raffinement et Deraffinement d'EDF R&D
9 c Version originale enregistree le 18 juin 1996 sous le numero 96036
10 c aupres des huissiers de justice Simart et Lavoir a Clamart
11 c Version 11.2 enregistree le 13 fevrier 2015 sous le numero 2015/014
12 c aupres des huissiers de justice
13 c Lavoir, Silinski & Cherqui-Abrahmi a Clamart
15 c HOMARD est une marque deposee d'Electricite de France
21 c ______________________________________________________________________
23 c Entree-Sortie : Lecture du Maillage Homard - phase 5
25 c ______________________________________________________________________
26 c . nom . e/s . taille . description .
27 c .____________________________________________________________________.
28 c . typenh . e . 1 . code des entites au sens homard .
29 c . . . . -1 : noeuds .
30 c . . . . 0 : mailles-points .
31 c . . . . 1 : segments .
32 c . . . . 2 : triangles .
33 c . . . . 3 : tetraedres .
34 c . . . . 4 : quadrangles .
35 c . . . . 5 : pyramides .
36 c . . . . 6 : hexaedres .
37 c . norenu . e . char8 . nom de la branche Renum du maillage HOMARD .
38 c . reento . e . 1 . nombre d'entites .
39 c . reenac . e . 1 . nbr d'elements utiles et contenant entites .
40 c . adenhn . e . 1 . adresse du numero d'entite dans HOMARD .
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 ______________________________________________________________________
49 c 0. declarations et dimensionnement
52 c 0.1. ==> generalites
58 parameter ( nompro = 'ESLMH5' )
73 integer reento, reenac, adenhn
77 integer ulsort, langue, codret
79 c 0.4. ==> variables locales
81 integer iaux, jaux, kaux
91 parameter ( nbmess = 10 )
92 character*80 texte(nblang,nbmess)
94 c 0.5. ==> initialisations
95 c ______________________________________________________________________
101 c 1.1. ==> les messages
105 #ifdef _DEBUG_HOMARD_
106 write (ulsort,texte(langue,1)) 'Entree', nompro
111 > '(''Mise a jour des renumerotations relatives aux '',a)'
112 texte(1,5) = '(a3,''Calcul impossible a allouer.'')'
114 > '(''Adresse de '',a3,''HOMARD impossible a trouver.'')'
116 texte(2,4) = '(''Updating of renumbering for '',a)'
117 texte(2,5) = '(a3,''Calcul cannot be allocated.'')'
119 > '(''Adress for '',a3,''HOMARD cannot be found.'')'
121 #ifdef _DEBUG_HOMARD_
122 write(ulsort,texte(langue,4)) mess14(langue,3,typenh)
123 saux06 = 're'//suffix(2,typenh)(1:2)//'to'
124 write (ulsort,*) '==> ', saux06, ' = ', reento
125 saux06 = 're'//suffix(2,typenh)(1:2)//'ac'
126 write (ulsort,*) '==> ', saux06, ' = ', reenac
129 c 1.2. ==> types d'entites
131 saux03 = '.'//suffix(3,typenh)(1:2)
132 cgn write(ulsort,*) saux03
136 if ( reenac.ne.0 .and. reento.ne.0 ) then
139 c 2. Numerotation dans le calcul
143 #ifdef _DEBUG_HOMARD_
144 write (ulsort,texte(langue,3)) 'UTRE01', nompro
146 call utre01 ( typenh, jaux,
147 > norenu, reenac, reento,
148 > adenhn, adencn, kaux,
149 > ulsort, langue, codret)
152 c 3. Numerotation dans HOMARD
155 if ( codret.eq.0 ) then
158 ifin = adencn + reento - 1
159 do 311 , iaux = ideb , ifin
163 do 312 , iaux = 1, reenac
164 jaux = imem(adenhn+iaux-1)
165 if ( jaux.ne.0 ) then
166 imem(adencn+jaux-1) = iaux
178 if ( codret.ne.0 ) then
182 write (ulsort,texte(langue,1)) 'Sortie', nompro
183 write (ulsort,texte(langue,2)) codret
184 write(ulsort,texte(langue,4)) mess14(langue,3,typenh)
185 write(ulsort,texte(langue,4+codret)) saux03
189 #ifdef _DEBUG_HOMARD_
190 write (ulsort,texte(langue,1)) 'Sortie', nompro