Salome HOME
Homard executable
[modules/homard.git] / src / tool / Utilitaire / utb07b.F
1       subroutine utb07b ( tabaui, ulbila,
2      >                    ulsort, langue, codret )
3 c ______________________________________________________________________
4 c
5 c                             H O M A R D
6 c
7 c Outil de Maillage Adaptatif par Raffinement et Deraffinement d'EDF R&D
8 c
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
14 c
15 c    HOMARD est une marque deposee d'Electricite de France
16 c
17 c Copyright EDF 1996
18 c Copyright EDF 1998
19 c Copyright EDF 2002
20 c Copyright EDF 2020
21 c ______________________________________________________________________
22 c
23 c    UTilitaire - Bilan sur le maillage - option 07 - impressions
24 c    --           -                              --
25 c ______________________________________________________________________
26 c
27 c    Imprime les statistiques sur les niveaux des mailles
28 c ______________________________________________________________________
29 c .        .     .        .                                            .
30 c .  nom   . e/s . taille .           description                      .
31 c .____________________________________________________________________.
32 c . tabaui .  a  .-nivsup . tableau de travail                         .
33 c .        .     . :nivsup.                                            .
34 c . ulbila . e   .   1    . unite logique d'ecriture du bilan          .
35 c . ulsort . e   .   1    . unite logique de la sortie generale        .
36 c . langue . e   .    1   . langue des messages                        .
37 c .        .     .        . 1 : francais, 2 : anglais                  .
38 c . codret .  s  .    1   . code de retour des modules                 .
39 c .        .     .        . 0 : pas de probleme                        .
40 c .        .     .        . 1 : probleme                               .
41 c .____________________________________________________________________.
42 c
43 c====
44 c 0. declarations et dimensionnement
45 c====
46 c
47 c 0.1. ==> generalites
48 c
49       implicit none
50       save
51 c
52       character*6 nompro
53       parameter ( nompro = 'UTB07B' )
54 c
55 #include "nblang.h"
56 c
57 c 0.2. ==> communs
58 c
59 #include "envex1.h"
60 c
61 #include "envada.h"
62 #include "envca1.h"
63 c
64 c 0.3. ==> arguments
65 c
66       integer tabaui(-nivsup-1:nivsup+1)
67 c
68       integer ulbila
69       integer ulsort, langue, codret
70 c
71 c 0.4. ==> variables locales
72 c
73       integer iaux, jaux
74 c
75       integer nbmess
76       parameter (nbmess = 10 )
77       character*80 texte(nblang,nbmess)
78 c
79 c 0.5. ==> initialisations
80 c ______________________________________________________________________
81 c
82 c====
83 c 1. messages
84 c====
85 c
86 #include "impr01.h"
87 c
88 #ifdef _DEBUG_HOMARD_
89       write (ulsort,texte(langue,1)) 'Entree', nompro
90       call dmflsh (iaux)
91 #endif
92 c
93       texte(1,4) =
94      >'(5x,''* . du niveau '',i3,28x,'' * '',i10,'' *'')'
95       texte(1,5) =
96      >'(5x,''* . du niveau '',i3,''.5'',26x,'' * '',i10,'' *'')'
97 c
98       texte(2,4) =
99      >'(5x,''* . from level '',i3,27x,'' * '',i10,'' *'')'
100       texte(2,5) =
101      >'(5x,''* . from level '',i3,''.5'',25x,'' * '',i10,'' *'')'
102 cgn      ulbila = ulsort
103 c
104 10200 format(  5x,60('*'))
105 c
106 #include "impr03.h"
107 c
108       codret = 0
109 c
110 #ifdef _DEBUG_HOMARD_
111       write (ulsort,90002) 'maconf', maconf
112       write (ulsort,90002) 'lg de tabaui = nivsup+1', nivsup+1
113       write (ulsort,90002) 'tabaui',
114      >                     (tabaui(iaux),iaux=-nivsup-1,nivsup+1)
115 #endif
116 c
117 c====
118 c 2. Recherche du niveau maximal atteint pour la categorie
119 c    en cours d'impression
120 c====
121 c
122       jaux = -1
123 c
124       do 21 , iaux = nivsup+1, 0, -1
125 c
126         if ( iaux.le.nivsup .and.
127      >      ( ( maconf.eq.-1 ) .or. ( maconf.eq.0 ) ) .and.
128      >       tabaui(-iaux-1).ne.0 ) then
129           jaux = iaux + 1
130           goto 211
131         endif
132 c
133         if ( tabaui(iaux).ne.0 ) then
134           jaux = iaux
135           goto 211
136         endif
137 c
138    21 continue
139 c
140   211 continue
141 c
142 #ifdef _DEBUG_HOMARD_
143       write (ulsort,90002) '==> jaux', jaux
144 #endif
145 c
146 c====
147 c 3. Impressions
148 c====
149 c
150       if ( jaux.ge.0 ) then
151 c
152         write (ulbila,10200)
153 c
154         do 31 , iaux = 0 , jaux
155 c
156           if ( iaux.lt.jaux .or. tabaui(iaux).ne.0 ) then
157             write (ulbila,texte(langue,4)) iaux, tabaui(iaux)
158           endif
159 c
160           if ( iaux.lt.jaux .and.
161      >         ( ( maconf.eq.-1 ) .or. ( maconf.eq.0 ) ) ) then
162             write (ulbila,texte(langue,5)) iaux, tabaui(-iaux-1)
163           endif
164 c
165    31   continue
166 c
167       endif
168 c
169 c====
170 c 4. la fin
171 c====
172 c
173       if ( codret.ne.0 ) then
174 c
175 #include "envex2.h"
176 c
177       write (ulsort,texte(langue,1)) 'Sortie', nompro
178       write (ulsort,texte(langue,2)) codret
179 c
180       endif
181 c
182 #ifdef _DEBUG_HOMARD_
183       write (ulsort,texte(langue,1)) 'Sortie', nompro
184       call dmflsh (iaux)
185 #endif
186 c
187       end