Salome HOME
Homard executable
[modules/homard.git] / src / tool / Gestion_MTU / gtinit.F
1       subroutine gtinit ( ulsort, lgmess, imprgt )
2 c ______________________________________________________________________
3 c
4 c                             H O M A R D
5 c
6 c Outil de Maillage Adaptatif par Raffinement et Deraffinement d'EDF R&D
7 c
8 c Version originale enregistree le 18 juin 1996 sous le numero 96036
9 c aupres des huissiers de justice Simart et Lavoir a Clamart
10 c Version 11.2 enregistree le 13 fevrier 2015 sous le numero 2015/014
11 c aupres des huissiers de justice
12 c Lavoir, Silinski & Cherqui-Abrahmi a Clamart
13 c
14 c    HOMARD est une marque deposee d'Electricite de France
15 c
16 c Copyright EDF 1996
17 c Copyright EDF 1998
18 c Copyright EDF 2002
19 c Copyright EDF 2020
20 c ______________________________________________________________________
21 c                                       premiere creation le 30.12.88 gn
22 c ______________________________________________________________________
23 c
24 c    'Gestion du Temps : INITialisation'
25 c     -          -       ----
26 c
27 c ______________________________________________________________________
28 c
29 c but : initialiser la gestion des mesures de temps
30 c       - on archive ce point de depart
31 c ______________________________________________________________________
32 c .        .     .        .                                            .
33 c .  nom   . e/s . taille .           description                      .
34 c .____________________________________________________________________.
35 c . ulsort . e   .    1   . numero de l'unite logique ou imprimer      .
36 c .        .     .        . les messages du gestionnaire de temps      .
37 c . lgmess . e   .    1   . langue des message de gt                   .
38 c . imprgt . e   .    1   . pilotage des impressions                   .
39 c .        .     .        . 1 : le standard                            .
40 c .        .     .        . 2 : le detail des sections                 .
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 = 'GTINIT' )
54 c
55 #include "genbla.h"
56 #include "gelggt.h"
57 c
58 #include "gtnbse.h"
59 c
60 c 0.2. ==> communs
61 c
62 c 0.3. ==> arguments
63 c
64       integer ulsort, lgmess, imprgt
65 c
66 c 0.4. ==> variables locales
67 c
68 #include "gedita.h"
69 #include "gtdita.h"
70 c
71       integer iaux, jaux, code
72       integer langue
73 c
74       integer numann, datheu
75 c
76       double precision tuser, tsyst
77 c
78       character*24 blanc
79       parameter ( blanc = '                        ' )
80 c
81       integer nbmess
82       parameter ( nbmess = 10 )
83       character*80 texte(nblang,nbmess)
84 c
85 c 0.5. ==> initialisations
86 c ______________________________________________________________________
87 c
88 c====
89 c 1. messages
90 c====
91 c
92       if ( lgmess.ge.1 .and. lgmess.le.nblang ) then
93         langue = lgmess
94       else
95         langue = 1
96       endif
97 c
98 #include "impr01.h"
99 c
100 #ifdef _DEBUG_HOMARD_
101       write (ulsort,texte(langue,1)) 'Entree', nompro
102       call dmflsh (iaux)
103 #endif
104 c
105       texte(1,10) = 'Ensemble du programme   '
106 c
107       texte(2,10) = 'Total program           '
108 c
109 c====
110 c 2. verification que l'initialisation n'est pas deja faite
111 c====
112 c
113       code = 1
114       call ugtabl ( code, tabges, ulsort)
115 c
116       if ( tabges(2).ne.0 ) then
117         write (ulsort,texte(langue,1)) 'Sortie', nompro
118         write (ulsort,20000)
119         iaux = 1
120         call gtstop ( nompro , ulsort , iaux )
121       endif
122 c
123 20000 format(
124      >'L''initialisation du gestionnaire a deja ete faite.',/,
125      >'Il ne faut faire appel qu''une seule fois a GTINIT.',//)
126 c
127 c====
128 c  3. initialisation de dmtemp
129 c====
130 c
131       call dmtemp ( tuser, tsyst )
132 c
133 c====
134 c  4. acquisition de la date et de l'heure actuelle
135 c====
136 c
137       call ugdhco ( numann, datheu )
138 c
139 c====
140 c  5. initialisation des differents tableaux
141 c====
142 c
143       nbrapp (-4) = imprgt
144       nbrapp (-3) = lgmess
145       nbrapp (-2) = numann
146       nbrapp (-1) = datheu
147       nbrapp ( 0) = ulsort
148 c
149       tpscpu (0) = 0.d0
150 c
151       do 51 , iaux = 1 , nbsect
152 c
153         nbrapp (iaux) = 0
154         ouvert (iaux) = .false.
155         tpscpu (iaux) = 0.d0
156 c
157    51 continue
158 c
159       nbrapp (nbsep1) = 1
160       ouvert (nbsep1) = .true.
161       tpscpu (nbsep1) = 0.d0
162 c
163       do 52 , jaux = 1 , nblang
164         do 521 , iaux = 1 , nbsect
165           titsec (jaux,iaux) = blanc
166   521   continue
167         titsec (jaux,nbsep1) = texte(lgmess,10)(1:24)
168    52 continue
169 c
170 c====
171 c 6. on archive l'information
172 c====
173 c
174 c 6.1. ==> pour le gestionnaire des mesures de temps de calcul
175 c
176       code = 0
177       iaux = nbsep1
178       call gttabl ( code, iaux, nbrapp, ouvert, titsec, tpscpu )
179 c
180 c 6.2. ==>  attention, l'initialisation de ulsort doit se faire par
181 c           le programme gtmess, pour controler la validite du numero
182 c
183       call gtmess ( ulsort )
184 c
185 c 6.3. ==> archivage pour le gestionnaire global
186 c
187       tabges(2) = 1
188 c
189       code = 0
190       call ugtabl ( code, tabges, ulsort)
191 c
192 #ifdef _DEBUG_HOMARD_
193       write (ulsort,texte(langue,1)) 'Sortie', nompro
194       call dmflsh (iaux)
195 #endif
196 c
197       end