Salome HOME
Merge branch 'vsr/evol_01_fixes'
[modules/homard.git] / src / tool / Suivi_Frontiere / sfcon1.F
1       subroutine sfcon1 ( typcca, maextr,
2      >                    nohman, mafrmd, nocdfr, ncafdg,
3      >                    ulsort, langue, codret)
4 c ______________________________________________________________________
5 c
6 c                             H O M A R D
7 c
8 c Outil de Maillage Adaptatif par Raffinement et Deraffinement d'EDF R&D
9 c
10 c Version originale enregistree le 18 juin 1996 sous le numero 96036
11 c aupres des huissiers de justice Simart et Lavoir a Clamart
12 c Version 11.2 enregistree le 13 fevrier 2015 sous le numero 2015/014
13 c aupres des huissiers de justice
14 c Lavoir, Silinski & Cherqui-Abrahmi a Clamart
15 c
16 c    HOMARD est une marque deposee d'Electricite de France
17 c
18 c Copyright EDF 1996
19 c Copyright EDF 1998
20 c Copyright EDF 2002
21 c Copyright EDF 2020
22 c ______________________________________________________________________
23 c
24 c   Suivi de Frontiere - CONv de la geometrie frontiere - phase 1
25 c   -        -           ---                                    -
26 c ______________________________________________________________________
27 c .  nom   . e/s . taille .           description                      .
28 c .____________________________________________________________________.
29 c . typcca . e   .   1    . type du code de calcul                     .
30 c .        .     .        .    26 : SATURNE_2D (format MED)            .
31 c .        .     .        .    36 : SATURNE    (format MED)            .
32 c .        .     .        .    46 : NEPTUNE_2D (format MED)            .
33 c .        .     .        .    56 : NEPTUNE    (format MED)            .
34 c . maextr . e   .   1    . maillage extrude                           .
35 c .        .     .        . 0 : non (defaut)                           .
36 c .        .     .        . 1 : selon X                                .
37 c .        .     .        . 2 : selon Y                                .
38 c .        .     .        . 3 : selon Z (cas de Saturne ou Neptune)    .
39 c . nohman . e   . char*8 . nom de l'objet maillage homard iteration n .
40 c . mafrmd . e   . char*8 . maillage de la frontiere au format med     .
41 c . nocdfr .   s . char*8 . maillage de la frontiere a format C        .
42 c . ncafdg . e   . char*8 . nom de l'objet groupes/attributs frontiere .
43 c . ulsort . e   .   1    . numero d'unite logique de la liste standard.
44 c . langue . e   .    1   . langue des messages                        .
45 c .        .     .        . 1 : francais, 2 : anglais                  .
46 c . codret . es  .    1   . code de retour des modules                 .
47 c .        .     .        . 0 : pas de probleme                        .
48 c .        .     .        . 2 : probleme avec la memoire               .
49 c .        .     .        . 3 : probleme avec le fichier               .
50 c .        .     .        . 5 : contenu incorrect                      .
51 c ______________________________________________________________________
52 c
53 c====
54 c 0. declarations et dimensionnement
55 c====
56 c
57 c 0.1. ==> generalites
58 c
59       implicit none
60       save
61 c
62       character*6 nompro
63       parameter ( nompro = 'SFCON1' )
64 c
65 #include "nblang.h"
66 c
67 c 0.2. ==> communs
68 c
69 #include "envex1.h"
70 c
71 c 0.3. ==> arguments
72 c
73       integer typcca
74       integer maextr
75 c
76       character*8 nohman
77       character*8 mafrmd, nocdfr, ncafdg
78 c
79       integer ulsort, langue, codret
80 c
81 c 0.4. ==> variables locales
82 c
83       integer iaux
84 c
85       integer nbmess
86       parameter ( nbmess = 10 )
87       character*80 texte(nblang,nbmess)
88 c
89 c 0.5. ==> initialisations
90 c ______________________________________________________________________
91 c
92 c====
93 c 1. messages
94 c====
95 c
96 #include "impr01.h"
97 c
98 #ifdef _DEBUG_HOMARD_
99       write (ulsort,texte(langue,1)) 'Entree', nompro
100       call dmflsh (iaux)
101 #endif
102 c
103 c====
104 c 2. Prealable pour le cas extrude
105 c====
106 c
107       if ( codret.eq.0 ) then
108 c
109       if ( maextr.ne.0 ) then
110 c
111 cgn      call gmprsx (nompro,mafrmd)
112 cgn      call gmprsx (nompro,mafrmd//'.Noeud')
113 cgn      call gmprsx (nompro,mafrmd//'.ConnNoeu')
114 #ifdef _DEBUG_HOMARD_
115       write (ulsort,texte(langue,3)) 'VCMS20', nompro
116 #endif
117 c
118       call vcms20 ( mafrmd, maextr,
119      >              ulsort, langue, codret )
120 c
121       endif
122 cgn      call gmprsx (nompro,mafrmd)
123 cgn      call gmprsx (nompro,mafrmd//'.Noeud')
124 cgn      call gmprsx (nompro,mafrmd//'.ConnNoeu')
125 cgn      call dmflsh (iaux)
126 c
127       endif
128 c
129 c====
130 c 3. Conversion
131 c====
132 c
133       if ( codret.eq.0 ) then
134 c
135 #ifdef _DEBUG_HOMARD_
136       write (ulsort,texte(langue,3)) 'SFCVGF', nompro
137 #endif
138       call sfcvgf ( nohman, mafrmd, nocdfr, ncafdg,
139      >              ulsort, langue, codret )
140 c
141       endif
142 c
143 c====
144 c 4. la fin
145 c====
146 c
147       if ( codret.ne.0 ) then
148 c
149 #include "envex2.h"
150 c
151       write (ulsort,texte(langue,1)) 'Sortie', nompro
152       write (ulsort,texte(langue,2)) codret
153 c
154       endif
155 c
156 #ifdef _DEBUG_HOMARD_
157       write (ulsort,texte(langue,1)) 'Sortie', nompro
158       call dmflsh (iaux)
159 #endif
160 c
161       end