1 subroutine esemm1 ( idfmed, nomamd, lnomam,
3 > coonca, fameno, noeele, famele, typele,
9 > eqaret, eqtria, eqquad,
12 > ulsort, langue, codret )
13 c ______________________________________________________________________
17 c Outil de Maillage Adaptatif par Raffinement et Deraffinement d'EDF R&D
19 c Version originale enregistree le 18 juin 1996 sous le numero 96036
20 c aupres des huissiers de justice Simart et Lavoir a Clamart
21 c Version 11.2 enregistree le 13 fevrier 2015 sous le numero 2015/014
22 c aupres des huissiers de justice
23 c Lavoir, Silinski & Cherqui-Abrahmi a Clamart
25 c HOMARD est une marque deposee d'Electricite de France
31 c ______________________________________________________________________
33 c Entree-Sortie - Ecriture d'un Maillage au format MED - phase 1
35 c ______________________________________________________________________
37 c . nom . e/s . taille . description .
38 c .____________________________________________________________________.
39 c . idfmed . e . 1 . identificateur du fichier de .
40 c . . . . maillage de sortie .
41 c . nomamd . e . char64 . nom du maillage MED .
42 c . lnomam . e . 1 . longueur du nom du maillage voulu .
43 c . fameno . e . nbnoto . famille med des noeuds .
44 c . famele . e . nbelem . famille med des elements .
45 c . noeele . e . nbelem . noeuds des elements .
47 c . typele . e . nbelem . type des elements .
48 c . coonca . s . nbnoto . coordonnees des noeuds dans le calcul .
50 c . numfam . e . nbfmed . numero des familles .
51 c . nomfam . e .10nbfmed. nom des familles .
52 c . grfmpo . e .0:nbfmed. pointeur des groupes des familles .
53 c . grfmtb . e .10ngrouc. table des groupes des familles .
54 c . inftbl . e .nbpqt*10. tables en caracteres des infos generales .
55 c . . . . regroupees par paquets de 80 caracteres .
56 c . . . . pour gerer la conversion en pseudo-groupe .
57 c . . . . paquet 1 : 1 : 'NomCo' .
58 c . . . . 2/3, 4/5, 6/7 : nom coordonnees .
59 c . . . . 8 : nom du repere utilise .
60 c . . . . paquet 2 : 1 : 'UniteCo' .
61 c . . . . 2/3, 4/5, 6/7 : unite coord. .
62 c . . . . paquet 3 : titre (limite a 80 caracteres) .
63 c . . . . paquet 4 : 1 : 'NOMAMD' .
64 c . . . . 2-7 : nom du maillage .
65 c . tabaux . . nbelem . tableau tampon .
67 c . listma . . nbelem . tableau auxiliaire .
68 c . eqpntr . e .5*nbequi. 5i-4 : nombre de paires de noeuds pour .
69 c . . . . l'equivalence i .
70 c . . . . 5i-3 : idem pour les mailles-points .
71 c . . . . 5i-2 : idem pour les aretes .
72 c . . . . 5i-1 : idem pour les triangles .
73 c . . . . 5i : idem pour les quadrangles .
74 c . eqinfo . e .33nbequi. nom et description de chaque equivalence .
75 c . eqnoeu . e .2*nbeqno. liste des paires de noeuds equivalents avec.
76 c . . . . la convention : eqnoeu(i)<-->eqnoeu(i+1) .
77 c . eqmapo . e .2*nbeqmp. idem pour les mailles-points .
78 c . eqaret . e .2*nbeqar. idem pour les aretes .
79 c . eqtria . e .2*nbeqtr. idem pour les triangles .
80 c . eqquad . e .2*nbeqqu. idem pour les quadrangles .
81 c . eqtetr . e .2*nbeqte. idem pour les tetraedres .
82 c . eqhexa . e .2*nbeqhe. idem pour les hexaedres .
83 c . ulsort . e . 1 . numero d'unite logique de la liste standard.
84 c . langue . e . 1 . langue des messages .
85 c . . . . 1 : francais, 2 : anglais .
86 c . codret . es . 1 . code de retour des modules .
87 c . . . . 0 : pas de probleme .
88 c . . . . 1 : probleme .
89 c ______________________________________________________________________
92 c 0. declarations et dimensionnement
95 c 0.1. ==> generalites
101 parameter ( nompro = 'ESEMM1' )
119 integer ulsort, langue, codret
122 integer fameno(nbnoto)
123 integer noeele(nbelem,nbmane), famele(nbelem), typele(nbelem)
124 integer grfmpo(0:nbfmed)
125 integer numfam(nbfmed)
126 integer eqpntr(5*nbequi)
127 integer eqnoeu(2*nbeqno)
128 integer eqaret(2*nbeqar)
129 integer eqtria(2*nbeqtr), eqquad(2*nbeqqu)
130 integer eqtetr(2*nbeqte), eqhexa(2*nbeqhe)
131 integer tabaux(nbelem*nbmane), listma(nbelem)
134 character*8 grfmtb(10*ngrouc)
135 character*8 inftbl(10*nbpqt)
136 character*8 nomfam(10,nbfmed)
137 character*8 eqinfo(33*nbequi)
141 double precision coonca(nbnoto,sdimca)
143 c 0.4. ==> variables locales
147 integer typnoe, typpoi, typseg, typtri, typtet, typenc
148 integer typqua, typhex, typpyr, typpen
149 integer ibtetr, ibtria, ibsegm, ibmapo, ialist, lamail
150 integer ibquad, ibhexa, ibpyra, ibpent
151 integer iaux, jaux, kaux
152 #ifdef _DEBUG_HOMARD_
156 integer adeqin, adeqno, adeqmp, adeqar, adeqtr, adeqqu
157 integer adeqte, adeqhe
166 double precision instan
169 parameter ( nbmess = 150 )
170 character*80 texte(nblang,nbmess)
171 c ______________________________________________________________________
179 #ifdef _DEBUG_HOMARD_
180 write (ulsort,texte(langue,1)) 'Entree', nompro
184 texte(1,4) = '(''Maille numero '',i10,'', de type'',i10)'
186 > '(''==> Ce type de maille est inconnu pour MED.'')'
188 texte(2,4) = '(''Mesh #'',i10,'', with type'',i10)'
189 texte(2,5) = '(''==> This type is unknown for MED.'')'
196 #ifdef _DEBUG_HOMARD_
197 write(ulsort,*) 'nomamd = ', nomamd
203 c 2.1. ==> grandeurs de base
207 if ( degre.eq.1 ) then
217 if ( mod(mailet,2).eq.0 ) then
223 if ( mod(mailet,3).eq.0 ) then
229 if ( mod(mailet,5).eq.0 ) then
237 c 2.2. ==> rangements des mailles selon le type
241 ibsegm = nbtetr + nbtria
242 ibmapo = nbtetr + nbtria + nbsegm
243 ibquad = nbtetr + nbtria + nbsegm + nbmapo
244 ibhexa = nbtetr + nbtria + nbsegm + nbmapo + nbquad
245 ibpyra = nbtetr + nbtria + nbsegm + nbmapo + nbquad + nbhexa
246 ibpent = nbtetr + nbtria + nbsegm + nbmapo + nbquad + nbhexa
249 cgn write (ulsort,90002) 'nbtetr', nbtetr
250 cgn write (ulsort,90002) 'nbtria', nbtria
251 cgn write (ulsort,90002) 'nbsegm', nbsegm
252 cgn write (ulsort,90002) 'nbquad', nbquad
253 cgn write (ulsort,90002) 'nbhexa', nbhexa
254 cgn write (ulsort,90002) 'nbpyra', nbpyra
255 cgn write (ulsort,90002) 'typtet,typtri,typseg,typpoi',
256 cgn > typtet,typtri,typseg,typpoi
257 cgn write (ulsort,90002) 'typqua,typhex,typpyr,typpen',
258 cgn > typqua,typhex,typpyr,typpen
259 do 22 , lamail = 1, nbelem
260 typenc = typele(lamail)
261 cgn write (ulsort,90002) 'lamail, typenc', lamail, typenc
262 if ( typenc.eq.typtet ) then
265 elseif ( typenc.eq.typtri ) then
268 elseif ( typenc.eq.typseg ) then
271 elseif ( typenc.eq.typpoi ) then
274 elseif ( typenc.eq.typqua ) then
277 elseif ( typenc.eq.typhex ) then
280 elseif ( typenc.eq.typpyr ) then
283 elseif ( typenc.eq.typpen ) then
287 write(ulsort,texte(langue,4)) lamail, typenc
288 write(ulsort,texte(langue,5))
291 listma(ialist) = lamail
296 ibsegm = nbtetr + nbtria + 1
297 ibmapo = nbtetr + nbtria + nbsegm + 1
298 ibquad = nbtetr + nbtria + nbsegm + nbmapo + 1
299 ibhexa = nbtetr + nbtria + nbsegm + nbmapo + nbquad + 1
300 ibpyra = nbtetr + nbtria + nbsegm + nbmapo + nbquad + nbhexa + 1
301 ibpent = nbtetr + nbtria + nbsegm + nbmapo + nbquad + nbhexa
303 cgn write (ulsort,90002) 'ibtetr, ibtria, ibsegm, ibmapo',
304 cgn > ibtetr, ibtria, ibsegm, ibmapo
305 cgn write (ulsort,90002) 'ibquad, ibhexa, ibpyra, ibpent',
306 cgn > ibquad, ibhexa, ibpyra, ibpent
308 c 2.3. ==> Instants d'enregistrement du maillage
310 if ( codret.eq.0 ) then
316 #ifdef _DEBUG_HOMARD_
317 write(ulsort,90002) 'numdt', numdt
318 write(ulsort,90002) 'numit', numit
319 write(ulsort,90004) 'dt ', instan
324 c 2.4. ==> description du fichier
326 if ( codret.eq.0 ) then
329 #ifdef _DEBUG_HOMARD_
330 write (ulsort,texte(langue,3)) 'ESDESC', nompro
332 call esdesc ( idfmed, saux80, sau200,
333 > ulsort, langue, codret )
338 c 3. creation du maillage
339 c remarque : on met la meme description que pour le fichier complet
340 c attention a ne pas changer les rubriques de cette description car
341 c cela sert de reperage pour les codes en couplage avec HOMARD
342 c pour definir le numero d'iteration
344 #ifdef _DEBUG_HOMARD_
345 write (ulsort,90002) '3. creation du maillage ; codret', codret
348 if ( codret.eq.0 ) then
350 #ifdef _DEBUG_HOMARD_
351 write(ulsort,*) 'nomamd = ', nomamd
352 write(ulsort,90002) 'sdimca', sdimca
353 write(ulsort,90002) 'mdimca', mdimca
356 #ifdef _DEBUG_HOMARD_
357 write (ulsort,texte(langue,3)) 'ESEMM0', nompro
359 call esemm0 ( idfmed, nomamd,
360 > sdimca, mdimca, sau200,
362 > ulsort, langue, codret)
364 if ( codret.ne.0 ) then
365 write(ulsort,texte(langue,78)) 'esemm0', codret
373 #ifdef _DEBUG_HOMARD_
374 write (ulsort,90002) '4. les noeuds ; codret', codret
377 if ( codret.eq.0 ) then
379 #ifdef _DEBUG_HOMARD_
380 write (ulsort,texte(langue,3)) 'ESEMNO', nompro
382 call esemno ( idfmed, nomamd,
383 > nbnoto, sdimca, coonca, fameno,
384 > numdt, numit, instan,
385 > ulsort, langue, codret )
392 c . les numeros des familles
393 c On transferera les informations de connectivite depuis le
394 c tableau de stockage, noeele, vers le tableau de lecture, itrav1.
395 c Pour cela, on explorera les mailles les unes apres les autres.
396 c On a donc interet a batir le tableau itrav1 maille par maille.
397 c C'est ce que MED appelle le mode entrelace.
398 c Remarque : on met une valeur bidon au tableau tbiaux pour ne
399 c pas avoir de message avec ftnchek
401 #ifdef _DEBUG_HOMARD_
402 write (ulsort,90002) '5. les mailles ; codret', codret
408 c 5.1. ==> les tetraedres
410 if ( codret.eq.0 ) then
412 if ( nbtetr.gt.0 ) then
415 if ( degre.eq.1 ) then
420 #ifdef _DEBUG_HOMARD_
421 write (ulsort,texte(langue,3)) 'ESEMMB_te', nompro
423 call esemmb ( idfmed, nomamd,
424 > iaux, edmail, typtet,
425 > nbtetr, jaux, nbelem, kaux,
427 > noeele, tbiaux, famele, listma(ibtetr),
428 > numdt, numit, instan,
430 > ulsort, langue, codret )
436 c 5.2. ==> les triangles
438 if ( codret.eq.0 ) then
440 if ( nbtria.gt.0 ) then
443 if ( degre.eq.1 ) then
445 elseif ( mod(mailet,2).eq.0 ) then
450 #ifdef _DEBUG_HOMARD_
451 write (ulsort,texte(langue,3)) 'ESEMMB_tr', nompro
453 call esemmb ( idfmed, nomamd,
454 > iaux, edmail, typtri,
455 > nbtria, jaux, nbelem, kaux,
457 > noeele, tbiaux, famele, listma(ibtria),
458 > numdt, numit, instan,
460 > ulsort, langue, codret )
466 c 5.3. ==> les segments
468 if ( codret.eq.0 ) then
470 if ( nbsegm.gt.0 ) then
473 if ( degre.eq.1 ) then
478 #ifdef _DEBUG_HOMARD_
479 write (ulsort,texte(langue,3)) 'ESEMMB_se', nompro
481 call esemmb ( idfmed, nomamd,
482 > iaux, edmail, typseg,
483 > nbsegm, jaux, nbelem, kaux,
485 > noeele, tbiaux, famele, listma(ibsegm),
486 > numdt, numit, instan,
488 > ulsort, langue, codret )
494 c 5.4. ==> les mailles-points
496 if ( codret.eq.0 ) then
498 if ( nbmapo.gt.0 ) then
502 #ifdef _DEBUG_HOMARD_
503 write (ulsort,texte(langue,3)) 'ESEMMB_mp', nompro
505 call esemmb ( idfmed, nomamd,
506 > iaux, edmail, typpoi,
507 > nbmapo, jaux, nbelem, kaux,
509 > noeele, tbiaux, famele, listma(ibmapo),
510 > numdt, numit, instan,
512 > ulsort, langue, codret )
518 c 5.5. ==> les quadrangles
520 if ( codret.eq.0 ) then
522 if ( nbquad.gt.0 ) then
525 if ( degre.eq.1 ) then
527 elseif ( mod(mailet,3).eq.0 ) then
532 #ifdef _DEBUG_HOMARD_
533 write (ulsort,texte(langue,3)) 'ESEMMB_qu', nompro
535 call esemmb ( idfmed, nomamd,
536 > iaux, edmail, typqua,
537 > nbquad, jaux, nbelem, kaux,
539 > noeele, tbiaux, famele, listma(ibquad),
540 > numdt, numit, instan,
542 > ulsort, langue, codret )
548 c 5.6. ==> les pyramides
550 if ( codret.eq.0 ) then
552 if ( nbpyra.gt.0 ) then
555 if ( degre.eq.1 ) then
560 #ifdef _DEBUG_HOMARD_
561 write (ulsort,texte(langue,3)) 'ESEMMB_py', nompro
563 call esemmb ( idfmed, nomamd,
564 > iaux, edmail, typpyr,
565 > nbpyra, jaux, nbelem, kaux,
567 > noeele, tbiaux, famele, listma(ibpyra),
568 > numdt, numit, instan,
570 > ulsort, langue, codret )
576 c 5.7. ==> les hexaedres
578 if ( codret.eq.0 ) then
580 if ( nbhexa.gt.0 ) then
583 if ( degre.eq.1 ) then
585 elseif ( mod(mailet,5).eq.0 ) then
590 #ifdef _DEBUG_HOMARD_
591 write (ulsort,texte(langue,3)) 'ESEMMB_he', nompro
593 call esemmb ( idfmed, nomamd,
594 > iaux, edmail, typhex,
595 > nbhexa, jaux, nbelem, kaux,
597 > noeele, tbiaux, famele, listma(ibhexa),
598 > numdt, numit, instan,
600 > ulsort, langue, codret )
606 c 5.8. ==> les pentaedres
608 if ( codret.eq.0 ) then
610 if ( nbpent.gt.0 ) then
613 if ( degre.eq.1 ) then
618 #ifdef _DEBUG_HOMARD_
619 write (ulsort,texte(langue,3)) 'ESEMMB_pe', nompro
621 call esemmb ( idfmed, nomamd,
622 > iaux, edmail, typpen,
623 > nbpent, jaux, nbelem, kaux,
625 > noeele, tbiaux, famele, listma(ibpent),
626 > numdt, numit, instan,
628 > ulsort, langue, codret )
637 #ifdef _DEBUG_HOMARD_
638 write (ulsort,90002) '6. les familles ; codret', codret
641 if ( codret .eq. 0) then
643 if ( nbfmed.ne.0 ) then
645 #ifdef _DEBUG_HOMARD_
646 write (ulsort,90002) 'Nombre de familles MED', nbfmed
649 do 61 , iaux = 1 , nbfmed
651 if ( codret.eq.0 ) then
653 numero = numfam(iaux)
655 if ( ngrouc.eq.0 ) then
658 ngro = ( grfmpo(iaux) - grfmpo(iaux-1) ) / 10
661 saux64( 1: 8) = nomfam(1,iaux)
662 saux64( 9:16) = nomfam(2,iaux)
663 saux64(17:24) = nomfam(3,iaux)
664 saux64(25:32) = nomfam(4,iaux)
665 saux64(33:40) = nomfam(5,iaux)
666 saux64(41:48) = nomfam(6,iaux)
667 saux64(49:56) = nomfam(7,iaux)
668 saux64(57:64) = nomfam(8,iaux)
672 #ifdef _DEBUG_HOMARD_
674 if ( codret.eq.0 ) then
675 c write (ulsort,90002) 'Familles MED numero ', iaux
678 do 621 , jaux = 1 , nbnoto
679 cgn print *,'. fameno(jaux) = ',fameno(jaux)
680 if ( fameno(jaux).eq.numero ) then
686 do 622 , jaux = 1 , nbelem
687 cgn print *,'. famele(jaux)) = ',famele(jaux)
688 if ( famele(jaux).eq.numero ) then
693 call utinfm ( numero, saux64,
694 > ngro, grfmtb(grfmpo(iaux-1)+1),
696 > ulsort, langue, codret )
701 if ( codret.eq.0 ) then
703 #ifdef _DEBUG_HOMARD_
704 write (ulsort,texte(langue,3)) 'MFACRE', nompro
706 call mfacre ( idfmed, nomamd, saux64, numero,
707 > ngro, grfmtb(grfmpo(iaux-1)+1), codret )
709 if ( codret.ne.0 ) then
710 write(ulsort,texte(langue,78)) 'mfacre', codret
723 c la convention de stockage MED des listes d'equivalences est que
724 c l'entite Liste(j) est associee a Liste(j+1)
726 #ifdef _DEBUG_HOMARD_
727 write (ulsort,90002) '7. equivalences ; codret', codret
730 if ( codret.eq.0 ) then
741 do 71 , iaux = 1, nbequi
743 c 7.1. ==> nom et description de l'equivalence
745 if ( codret.eq.0 ) then
747 call uts8ch ( eqinfo(adeqin), 64, saux64,
748 > ulsort, langue, codret )
753 if ( codret.eq.0 ) then
755 call uts8ch ( eqinfo(adeqin), 200, sau200,
756 > ulsort, langue, codret )
761 c 7.2. ==> creation de l'equivalence dans le fichier
763 if ( codret.eq.0 ) then
765 #ifdef _DEBUG_HOMARD_
766 write (ulsort,texte(langue,3)) 'MEQCRE', nompro
768 call meqcre ( idfmed, nomamd, saux64, sau200, codret )
769 if ( codret.ne.0 ) then
770 write(ulsort,texte(langue,78)) 'meqcre', codret
775 c 7.3. ==> equivalence de noeuds
777 if ( codret.eq.0 ) then
779 jaux = eqpntr(5*iaux-4)
780 if ( jaux.gt.0 ) then
782 #ifdef _DEBUG_HOMARD_
783 write (ulsort,texte(langue,3)) 'ESEMMQ_no', nompro
785 call esemmq ( idfmed, nomamd, saux64,
788 > jaux, eqnoeu(adeqno),
789 > ulsort, langue, codret )
790 if ( codret.ne.0 ) then
791 write(ulsort,texte(langue,78)) 'ESEMMQ_no', codret
793 adeqno = adeqno + 2*jaux
799 c 7.4. ==> equivalence de mailles-points
801 if ( codret.eq.0 ) then
803 jaux = eqpntr(5*iaux-3)
804 if ( jaux.gt.0 ) then
812 c 7.5. ==> equivalence de segments
814 if ( codret.eq.0 ) then
816 jaux = eqpntr(5*iaux-2)
817 if ( jaux.gt.0 ) then
819 #ifdef _DEBUG_HOMARD_
820 write (ulsort,texte(langue,3)) 'ESEMMQ_ar', nompro
822 call esemmq ( idfmed, nomamd, saux64,
825 > jaux, eqaret(adeqar),
826 > ulsort, langue, codret )
827 if ( codret.ne.0 ) then
828 write(ulsort,texte(langue,78)) 'ESEMMQ_ar', codret
830 adeqar = adeqar + 2*jaux
836 c 7.6. ==> equivalence de triangles
838 if ( codret.eq.0 ) then
840 jaux = eqpntr(5*iaux-1)
841 if ( jaux.gt.0 ) then
843 #ifdef _DEBUG_HOMARD_
844 write (ulsort,texte(langue,3)) 'ESEMMQ_tr', nompro
846 call esemmq ( idfmed, nomamd, saux64,
849 > jaux, eqtria(adeqtr),
850 > ulsort, langue, codret )
851 if ( codret.ne.0 ) then
852 write(ulsort,texte(langue,78)) 'ESEMMQ_tr', codret
854 adeqtr = adeqtr + 2*jaux
860 c 7.7. ==> equivalence de quadrangles
862 if ( codret.eq.0 ) then
864 jaux = eqpntr(5*iaux)
865 if ( jaux.gt.0 ) then
867 #ifdef _DEBUG_HOMARD_
868 write (ulsort,texte(langue,3)) 'ESEMMQ_qu', nompro
870 call esemmq ( idfmed, nomamd, saux64,
873 > jaux, eqquad(adeqqu),
874 > ulsort, langue, codret )
875 if ( codret.ne.0 ) then
876 write(ulsort,texte(langue,78)) 'ESEMMQ_qu', codret
878 adeqqu = adeqqu + 2*jaux
884 c 7.9. ==> equivalence d'hexaedres
886 if ( codret.eq.0 ) then
888 if ( nbeqhe.gt.0 ) then
890 cgn#ifdef _DEBUG_HOMARD_
891 cgn write (ulsort,texte(langue,3)) 'ESEMMQ_he', nompro
893 cgn call esemmq ( idfmed, nomamd, saux64,
895 cgn > edmail, typhex,
896 cgn > nbeqhe, eqhexa(adeqhe),
897 cgn > ulsort, langue, codret )
898 cgn if ( codret.ne.0 ) then
899 cgn write(ulsort,texte(langue,78)) 'ESEMMQ_he', codret
901 cgn adeqhe = adeqhe + 2*nbeqhe
914 #ifdef _DEBUG_HOMARD_
915 write (ulsort,90002) '8. informations ; codret', codret
918 if ( codret.eq.0 ) then
920 write(ulsort,texte(langue,22)) nomamd(1:lnomam)
931 if ( degre.eq.1 ) then
937 tbiaux(2,iaux) = tbiaux(2,iaux-1) + 3
942 if ( langue.eq.1 ) then
943 c 12345678901234567890123456789012
944 saux32 = 'dans le fichier '
946 saux32 = 'in the file '
948 #ifdef _DEBUG_HOMARD_
949 write (ulsort,texte(langue,3)) 'UTINMA', nompro
951 call utinma ( iaux, saux32,
952 > sdimca, mdimca, degre,
953 > nbnoto, jaux, jaux, jaux,
956 > nbmapo, tbiaux(1,2), tbiaux(1,3), tbiaux(1,4),
957 > tbiaux(1,5), tbiaux(1,6), tbiaux(1,8), tbiaux(1,7),
959 > nbmane, nbmaae, nbmafe,
960 > ulsort, langue, codret)
962 write(ulsort,texte(langue,29)) nbfmed
963 write(ulsort,texte(langue,31)) ngrouc
965 if ( nbequi.ne.0 ) then
966 write(ulsort,texte(langue,41)) nbequi
967 write(ulsort,texte(langue,42)) mess14(langue,3,-1), nbeqno
976 do 821 , iaux = 1 , 4
977 if ( tbiaux(1,iaux).gt.0 ) then
978 write(ulsort,texte(langue,42))
979 > mess14(langue,3,tbiaux(2,iaux)), tbiaux(3,iaux)
986 cgn do 822 , iaux = 5, 6
987 cgn if ( ( tbiaux(1,iaux).gt.0 ) .and.
988 cgn > ( tbiaux(3,iaux).gt.0 ) ) then
989 cgn write(ulsort,texte(langue,42))
990 cgn > mess14(langue,3,tbiaux(2,iaux)), tbiaux(3,iaux)
1001 if ( codret.ne.0 ) then
1005 write (ulsort,texte(langue,1)) 'Sortie', nompro
1006 write (ulsort,texte(langue,2)) codret
1010 #ifdef _DEBUG_HOMARD_
1011 write (ulsort,texte(langue,1)) 'Sortie', nompro