1 subroutine cminma ( indnoe, indare, indtri, indqua,
2 > indtet, indhex, indpyr, indpen,
4 > ulsort, langue, codret )
5 c ______________________________________________________________________
9 c Outil de Maillage Adaptatif par Raffinement et Deraffinement d'EDF R&D
11 c Version originale enregistree le 18 juin 1996 sous le numero 96036
12 c aupres des huissiers de justice Simart et Lavoir a Clamart
13 c Version 11.2 enregistree le 13 fevrier 2015 sous le numero 2015/014
14 c aupres des huissiers de justice
15 c Lavoir, Silinski & Cherqui-Abrahmi a Clamart
17 c HOMARD est une marque deposee d'Electricite de France
23 c ______________________________________________________________________
25 c Creation du Maillage - INitialisation du MAillage
27 c ______________________________________________________________________
29 c . nom . e/s . taille . description .
30 c .____________________________________________________________________.
31 c . indnoe . s . 1 . indice du dernier noeud cree .
32 c . indare . s . 1 . indice de la derniere arete creee .
33 c . indtri . s . 1 . indice du dernier triangle cree .
34 c . indqua . s . 1 . indice du dernier quadrangle cree .
35 c . indtet . s . 1 . indice du dernier tetraedre cree .
36 c . indhex . s . 1 . indice du dernier hexaedre cree .
37 c . indpyr . s . 1 . indice de la derniere pyramide creee .
38 c . indpen . s . 1 . indice du dernier pentaedre cree .
39 c . lgopti . e . 1 . longueur du tableau des options entieres .
40 c . taopti . e . lgopti . tableau des options .
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 = 'CMINMA' )
79 integer indnoe, indare, indtri, indqua
80 integer indtet, indhex, indpyr, indpen
83 integer taopti(lgopti)
85 integer ulsort, langue, codret
87 c 0.4. ==> variables locales
92 parameter ( nbmess = 10 )
93 character*80 texte(nblang,nbmess)
95 c 0.5. ==> initialisations
96 c ______________________________________________________________________
104 #ifdef _DEBUG_HOMARD_
105 write (ulsort,texte(langue,1)) 'Entree', nompro
112 c 2. initialisation des pointeurs
113 c Quand le maillage ne change pas, il faut initialiser les pointeurs.
114 c Cela arrive dans deux cas :
115 c A l'iteration 0 : si pas de raffinement, quel que soit le type de
116 c deraffinement car il sera ete inhibe
117 c Aux iterations suivantes : si ni raffinement, ni deraffinement
120 #ifdef _DEBUG_HOMARD_
121 write (ulsort,90002) '2. initial. pointeurs ; codret', codret
124 #ifdef _DEBUG_HOMARD_
125 write (ulsort,90002) 'nbiter', nbiter
126 write (ulsort,90002) 'taopti(31)', taopti(31)
127 write (ulsort,90002) 'taopti(32)', taopti(32)
130 if ( codret.eq.0 ) then
132 if ( ( nbiter.eq.0 .and. taopti(31).eq.0 ) .or.
133 > ( nbiter.gt.0 .and.
134 > taopti(31).eq.0 .and. taopti(32).eq.0 ) ) then
175 #ifdef _DEBUG_HOMARD_
177 >'permar, permtr, permno, permp2, permim, permqu',
178 > permar, permtr, permno, permp2, permim, permqu
180 >'nouvar, nouvtr, nouvno, nouvp2, nouvim, nouvqu',
181 > nouvar, nouvtr, nouvno, nouvp2, nouvim, nouvqu
183 >'provar, provtr, provp1, provp2, provim, provqu',
184 > provar, provtr, provp1, provp2, provim, provqu
186 >'permte, permhe, permpy, permpe',
187 > permte, permhe, permpy, permpe
189 >'nouvte, nouvhe, nouvpy, nouvpe',
190 > nouvte, nouvhe, nouvpy, nouvpe
192 >'provta, provha, provya, provpa',
193 > provta, provha, provya, provpa
195 >'provtf, provhf, provyf, provpf',
196 > provtf, provhf, provyf, provpf
207 if ( codret.ne.0 ) then
211 write (ulsort,texte(langue,1)) 'Sortie', nompro
212 write (ulsort,texte(langue,2)) codret
216 #ifdef _DEBUG_HOMARD_
217 write (ulsort,texte(langue,1)) 'Sortie', nompro