1 subroutine utpmte ( letetr, prmixt,
2 > coonoe, somare, aretri,
3 > tritet, cotrte, aretet )
4 c ______________________________________________________________________
8 c Outil de Maillage Adaptatif par Raffinement et Deraffinement d'EDF R&D
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
16 c HOMARD est une marque deposee d'Electricite de France
22 c ______________________________________________________________________
24 c UTilitaire : Produit Mixte d'un TEtraedre selon (12, 13, 14)
26 c ______________________________________________________________________
28 c . nom . e/s . taille . description .
29 c .____________________________________________________________________.
30 c . letetr . e . 1 . numero du tetraedre a examiner .
31 c . prmixt . s . 1 . produit mixte (12, 13, 14) .
32 c . coonoe . e . nbnoto . coordonnees des noeuds .
34 c . somare . e .2*nbarto. numeros des extremites d'arete .
35 c . aretri . e .nbtrto*3. numeros des 3 aretes des triangles .
36 c . tritet . e .nbtecf*4. numeros des 4 triangles des tetraedres .
37 c . cotrte . e .nbtecf*4. code des 4 triangles des tetraedres .
38 c . aretet . e .nbteca*6. numeros des 6 aretes des tetraedres .
39 c .____________________________________________________________________.
42 c 0. declarations et dimensionnement
45 c 0.1. ==> generalites
59 double precision prmixt, coonoe(nbnoto,3)
62 integer somare(2,nbarto)
63 integer aretri(nbtrto,3)
64 integer tritet(nbtecf,4), cotrte(nbtecf,4), aretet(nbteca,6)
66 c 0.4. ==> variables locales
72 double precision v12(3), v13(3), v14(3)
74 c 0.5. ==> initialisations
75 c ______________________________________________________________________
81 c 1.1. ==> les aretes et sommets de ce tetraedre
84 > nbtrto, nbtecf, nbteca,
86 > tritet, cotrte, aretet,
89 c 1.2. ==> memorisation des vecteurs lies aux aretes 12, 13, 14
91 v12(1) = coonoe(listso(2),1) - coonoe(listso(1),1)
92 v12(2) = coonoe(listso(2),2) - coonoe(listso(1),2)
93 v12(3) = coonoe(listso(2),3) - coonoe(listso(1),3)
95 v13(1) = coonoe(listso(3),1) - coonoe(listso(1),1)
96 v13(2) = coonoe(listso(3),2) - coonoe(listso(1),2)
97 v13(3) = coonoe(listso(3),3) - coonoe(listso(1),3)
99 v14(1) = coonoe(listso(4),1) - coonoe(listso(1),1)
100 v14(2) = coonoe(listso(4),2) - coonoe(listso(1),2)
101 v14(3) = coonoe(listso(4),3) - coonoe(listso(1),3)
103 c 1.3. ==> calcul du produit mixte (v12,v13,v14)
105 prmixt = ( v12(2)*v13(3) - v12(3)*v13(2) ) * v14(1)
106 > + ( v12(3)*v13(1) - v12(1)*v13(3) ) * v14(2)
107 > + ( v12(1)*v13(2) - v12(2)*v13(1) ) * v14(3)