Salome HOME
Homard executable
[modules/homard.git] / src / tool / Creation_Maillage / cmcpyr.F
1       subroutine cmcpyr ( facpyr, cofapy, fampyr,
2      >                    hetpyr, filpyr, perpyr,
3      >                    nface1, codef1,
4      >                    nface2, codef2,
5      >                    nface3, codef3,
6      >                    nface4, codef4,
7      >                    nface5, codef5,
8      >                    nupere, famill, nupyra )
9 c ______________________________________________________________________
10 c
11 c                             H O M A R D
12 c
13 c Outil de Maillage Adaptatif par Raffinement et Deraffinement d'EDF R&D
14 c
15 c Version originale enregistree le 18 juin 1996 sous le numero 96036
16 c aupres des huissiers de justice Simart et Lavoir a Clamart
17 c Version 11.2 enregistree le 13 fevrier 2015 sous le numero 2015/014
18 c aupres des huissiers de justice
19 c Lavoir, Silinski & Cherqui-Abrahmi a Clamart
20 c
21 c    HOMARD est une marque deposee d'Electricite de France
22 c
23 c Copyright EDF 1996
24 c Copyright EDF 1998
25 c Copyright EDF 2002
26 c Copyright EDF 2020
27 c ______________________________________________________________________
28 c
29 c    Creation du Maillage - Creation d'une PYRamide
30 c    -           -          -              ---
31 c ______________________________________________________________________
32 c
33 c but : creation effective d'une pyramide etant donne :
34 c       - le numero de la pyramide
35 c       - les numero globaux des faces locales 1,2,3 et 4
36 c       - les codes des faces
37 c       - le numero du pere
38 c       - la famille a attribuer
39 c ______________________________________________________________________
40 c .        .     .        .                                            .
41 c .  nom   . e/s . taille .           description                      .
42 c .____________________________________________________________________.
43 c . facpyr . es  .nouvyf*5. numeros des 5 faces des pyramides          .
44 c . cofapy . es  .nouvyf*5. codes des faces des pyramides              .
45 c . fampyr . es  . nouvpy . famille des pyramides                      .
46 c . hetpyr . es  . nouvpy . historique de l'etat des pyramides         .
47 c . filpyr . es  . nouvpy . premier fils des pyramides                 .
48 c . perpyr . es  . nouvpy . pere des pyramides                         .
49 c .        .     .        . si perpyr(i) > 0 : numero de la pyramide   .
50 c .        .     .        . si perpyr(i) < 0 : -numero dans pphepe     .
51 c . nface1 . e   . 1      . face de numero local 1 dans la pyramide    .
52 c . nface2 . e   . 1      . face de numero local 2 dans la pyramide    .
53 c . nface3 . e   . 1      . face de numero local 3 dans la pyramide    .
54 c . nface4 . e   . 1      . face de numero local 4 dans la pyramide    .
55 c . nface5 . e   . 1      . face de numero local 5 dans la pyramide    .
56 c . codef1 . e   . 1      . code de la face 1                          .
57 c . codef2 . e   . 1      . code de la face 2                          .
58 c . codef3 . e   . 1      . code de la face 3                          .
59 c . codef4 . e   . 1      . code de la face 4                          .
60 c . codef5 . e   . 1      . code de la face 5                          .
61 c . nupere . e   . 1      . numero du pere de la pyramide              .
62 c . famill . e   . 1      . famille a attribuer a la pyramide          .
63 c . nupyra . e   . 1      . numero de la pyramide a creer              .
64 c ______________________________________________________________________
65 c
66 c====
67 c 0. declarations et dimensionnement
68 c====
69 c
70 c 0.1. ==> generalites
71 c
72       implicit none
73       save
74 c
75 c 0.2. ==> communs
76 c
77 #include "nouvnb.h"
78 c
79 c 0.3. ==> arguments
80 c
81       integer facpyr(nouvyf,5), cofapy(nouvyf,5), fampyr(nouvpy)
82       integer hetpyr(nouvpy), filpyr(nouvpy), perpyr(nouvpy)
83       integer nface1, nface2, nface3, nface4, nface5
84       integer codef1, codef2, codef3, codef4, codef5
85       integer nupere, famill, nupyra
86 c
87 c 0.4. ==> variables locales
88 c ______________________________________________________________________
89 c
90 c====
91 c 1. creation effective d'une pyramide
92 c====
93 #ifdef _DEBUG_HOMARD_
94 #include "impr03.h"
95       write (1,90015) 'Pyramide', nupyra,
96      >                ', faces', nface1, nface2, nface3, nface4, nface5
97       write (1,90015) 'Pyramide', nupyra,
98      >                ', codes', codef1, codef2, codef3, codef4, codef5
99 #endif
100 c
101       facpyr(nupyra,1) = nface1
102       facpyr(nupyra,2) = nface2
103       facpyr(nupyra,3) = nface3
104       facpyr(nupyra,4) = nface4
105       facpyr(nupyra,5) = nface5
106 c
107       cofapy(nupyra,1) = codef1
108       cofapy(nupyra,2) = codef2
109       cofapy(nupyra,3) = codef3
110       cofapy(nupyra,4) = codef4
111       cofapy(nupyra,5) = codef5
112 c
113       fampyr(nupyra) = famill
114 c
115       hetpyr(nupyra) = 5500
116       filpyr(nupyra) = 0
117       perpyr(nupyra) = nupere
118 c
119       end