Télécharger konja4.eso

Retour à la liste

Numérotation des lignes :

konja4
  1. C KONJA4 SOURCE OF166741 24/12/13 21:16:31 12097
  2. SUBROUTINE KONJA4(ILINC,IRN,IUN,IPN,IGAMN,INORM,ICHPVO
  3. $ ,ICHPSU,MELEMC,MELEFE,MELLIM,IMAT)
  4. C
  5. C************************************************************************
  6. C
  7. C PROJET : CASTEM 2000
  8. C
  9. C NOM : KONJA4
  10. C
  11. C DESCRIPTION : Voir KONV11
  12. C Calcul du jacobien du résidu pour la méthode
  13. C AUSM+
  14. C
  15. C Cas 3D, gaz "calorically perfect"
  16. C
  17. C LANGAGE : FORTRAN 77 + ESOPE 2000 (avec estensions CISI)
  18. C
  19. C AUTEUR : S. KUDRIAKOV, SFME/LTMF
  20. C
  21. C************************************************************************
  22. C
  23. C APPELES (Calcul) : CONJ3D, CONJ3W
  24. C
  25. C************************************************************************
  26. C
  27. C ENTREES
  28. C
  29. C ILINC : liste des inconnues (pointeur d'un objet de type LISTMOTS)
  30. C
  31. C 1) Pointeurs des CHPOINT
  32. C
  33. C IRN : CHPOINT CENTRE contenant la masse volumique ;
  34. C
  35. C IUN : CHPOINT CENTRE contenant la vitesse ;
  36. C
  37. C IPN : CHPOINT CENTRE contenant la pression ;
  38. C
  39. C IGAMN : CHPOINT CENTRE contenant le gamma ;
  40. C
  41. C INORM : CHPOINT FACE contenant les normales aux faces ;
  42. C
  43. C ICHPOVO : CHPOINT VOLUME contenant le volume
  44. C
  45. C ICHPOSU : CHPOINT FACE contenant la surface des faces
  46. C
  47. C
  48. C 2) Pointeurs de MELEME de la table DOMAINE
  49. C
  50. C MELEMC : MELEME 'CENTRE' du SPG des CENTRES
  51. C
  52. C MELEFE : MELEME 'FACEL' du connectivité Faces -> Elts
  53. C
  54. C MELLIM : MELEME SPG des conditions aux bords
  55. C
  56. C SORTIES
  57. C
  58. C IMAT : pointeur de la MATRIK du jacobien du residu
  59. C
  60. C************************************************************************
  61. C
  62. C HISTORIQUE (Anomalies et modifications éventuelles)
  63. C
  64. C HISTORIQUE :
  65. C
  66. C************************************************************************
  67. C
  68. C
  69. C N.B.: On suppose qu'on a déjà controllé RO, P > 0
  70. C GAMMA \in (1,3)
  71. C Si non il faut le faire!!!
  72. C
  73. C************************************************************************
  74. C
  75. IMPLICIT INTEGER(I-N)
  76. INTEGER ILINC, IRN,IUN,IPN,IGAMN,INORM,ICHPVO,ICHPSU
  77. & , IMAT, IGEOMC, IGEOMF
  78. & , NFAC, NBSOUS, NBREF, NBELEM, NBNN, NRIGE, NMATRI, NKID
  79. & , NKMT, NBME, NBEL, MP, NP
  80. & , IFAC, NGCF, NLCF, NGCG, NGCD, NLCG, NLCD, NLFL
  81. REAL*8 ROG, PG, UXG, UYG, UZG, GAMG, VOLG
  82. & , ROD, PD, UXD, UYD, UZD, GAMD, VOLD
  83. & , SURF, FUNCEL
  84. REAL*8 WVEC_L(5), WVEC_R(5), NVECT(3), TVECT1(3),TVECT2(3)
  85. REAL*8 JTL(5,5), JTR(5,5)
  86. REAL*8 C11,C12,C13,C21,C22,C23,C31,C32,C33,DET
  87. REAL*8 ZC11,ZC12,ZC13,ZC21,ZC22,ZC23,ZC31,ZC32,ZC33
  88. CHARACTER*8 TYPE
  89. C
  90. C**** LES INCLUDES
  91. C
  92.  
  93. -INC PPARAM
  94. -INC CCOPTIO
  95. -INC SMCHPOI
  96. -INC SMELEME
  97. -INC SMLMOTS
  98. -INC SMLENTI
  99. POINTEUR MPRN.MPOVAL, MPUN.MPOVAL, MPPN.MPOVAL, MPGAMN.MPOVAL,
  100. & MPNORM.MPOVAL, MPVOLU.MPOVAL, MPOVSU.MPOVAL
  101. POINTEUR MELEMC.MELEME, MELEMF.MELEME, MELEFE.MELEME,
  102. & MELEDU.MELEME, MELLIM.MELEME
  103. POINTEUR MLENTC.MLENTI, MLENTF.MLENTI, MLELIM.MLENTI
  104. POINTEUR RR.IZAFM, RUX.IZAFM, RUY.IZAFM, RUZ.IZAFM,RRET.IZAFM,
  105. & UXR.IZAFM, UXUX.IZAFM, UXUY.IZAFM, UXUZ.IZAFM,
  106. & UXRET.IZAFM,
  107. & UYR.IZAFM, UYUX.IZAFM, UYUY.IZAFM, UYUZ.IZAFM,
  108. & UYRET.IZAFM,
  109. & UZR.IZAFM, UZUX.IZAFM, UZUY.IZAFM, UZUZ.IZAFM,
  110. & UZRET.IZAFM,
  111. & RETR.IZAFM, RETUX.IZAFM, RETUY.IZAFM, RETUZ.IZAFM,
  112. & RETRET.IZAFM
  113. POINTEUR MLMINC.MLMOTS
  114. C
  115. C**** KRIPAD pour la correspondance global/local des conditions limits
  116. C
  117. CALL KRIPAD(MELLIM,MLELIM)
  118. c SEGACT MELLIM
  119. C
  120. C**** KRIPAD pour la correspondance global/local des centres
  121. C
  122. CALL KRIPAD(MELEMC,MLENTC)
  123. C
  124. C SEGACT MLENTC
  125. SEGACT MELEMC
  126. C
  127. SEGACT MELEFE
  128. C
  129. CALL LICHT(ICHPSU,MPOVSU,TYPE,IGEOMF)
  130. CALL LICHT(INORM,MPNORM,TYPE,IGEOMF)
  131. CALL LICHT(ICHPVO,MPVOLU,TYPE,IGEOMC)
  132. C
  133. C**** LICHT active les MPOVALs en *MOD
  134. C
  135. C i.e.
  136. C
  137. C SEGACT MPOVSU*MOD
  138. C SEGACT MPOVNO*MOD
  139. C SEGACT MPVOLU*MOD
  140. C
  141. MELEMF = IGEOMF
  142. CALL KRIPAD(MELEMF,MLENTF)
  143. C
  144. C SEGACT MLENTF
  145. SEGACT MELEMF
  146. C
  147. CALL LICHT(IRN,MPRN,TYPE,IGEOMC)
  148. CALL LICHT(IPN,MPPN,TYPE,IGEOMC)
  149. CALL LICHT(IUN,MPUN,TYPE,IGEOMC)
  150. CALL LICHT(IGAMN,MPGAMN,TYPE,IGEOMC)
  151. C
  152. C SEGACT MPRN*MOD
  153. C SEGACT MPPN*MOD
  154. C SEGACT MPUN*MOD
  155. C SEGACT MPGAMN*MOD
  156. C
  157. NFAC = MELEFE.NUM(/2)
  158. C
  159. C**** Maillage des inconnues primales
  160. C
  161. NBSOUS = 0
  162. NBREF = 0
  163. NBELEM = NFAC
  164. NBNN = 2
  165. C
  166. SEGINI MELEDU
  167. C MELEPR = MELEDU
  168. C
  169. C**** MELEDU = 'SEG2'
  170. C
  171. MELEDU.ITYPEL = 2
  172. C
  173. NRIGE = 7
  174. NMATRI = 1
  175. NKID = 9
  176. NKMT = 7
  177. C
  178. SEGINI MATRIK
  179. IMAT = MATRIK
  180. MATRIK.IRIGEL(1,1) = MELEDU
  181. MATRIK.IRIGEL(2,1) = MELEDU
  182. C
  183. C**** Matrice non symetrique
  184. C
  185. MATRIK.IRIGEL(7,1) = 2
  186. C
  187. NBME = 25
  188. NBSOUS = 1
  189. SEGINI IMATRI
  190. MLMINC = ILINC
  191. SEGACT MLMINC
  192. MATRIK.IRIGEL(4,1) = IMATRI
  193. C-----------------------------------------------
  194. IMATRI.LISPRI(1) = MLMINC.MOTS(1)
  195. IMATRI.LISPRI(2) = MLMINC.MOTS(2)
  196. IMATRI.LISPRI(3) = MLMINC.MOTS(3)
  197. IMATRI.LISPRI(4) = MLMINC.MOTS(4)
  198. IMATRI.LISPRI(5) = MLMINC.MOTS(5)
  199. C-----------------------------------------------
  200. IMATRI.LISPRI(6) = MLMINC.MOTS(1)
  201. IMATRI.LISPRI(7) = MLMINC.MOTS(2)
  202. IMATRI.LISPRI(8) = MLMINC.MOTS(3)
  203. IMATRI.LISPRI(9) = MLMINC.MOTS(4)
  204. IMATRI.LISPRI(10) = MLMINC.MOTS(5)
  205. C-----------------------------------------------
  206. IMATRI.LISPRI(11) = MLMINC.MOTS(1)
  207. IMATRI.LISPRI(12) = MLMINC.MOTS(2)
  208. IMATRI.LISPRI(13) = MLMINC.MOTS(3)
  209. IMATRI.LISPRI(14) = MLMINC.MOTS(4)
  210. IMATRI.LISPRI(15) = MLMINC.MOTS(5)
  211. C-----------------------------------------------
  212. IMATRI.LISPRI(16) = MLMINC.MOTS(1)
  213. IMATRI.LISPRI(17) = MLMINC.MOTS(2)
  214. IMATRI.LISPRI(18) = MLMINC.MOTS(3)
  215. IMATRI.LISPRI(19) = MLMINC.MOTS(4)
  216. IMATRI.LISPRI(20) = MLMINC.MOTS(5)
  217. C-----------------------------------------------
  218. IMATRI.LISPRI(21) = MLMINC.MOTS(1)
  219. IMATRI.LISPRI(22) = MLMINC.MOTS(2)
  220. IMATRI.LISPRI(23) = MLMINC.MOTS(3)
  221. IMATRI.LISPRI(24) = MLMINC.MOTS(4)
  222. IMATRI.LISPRI(25) = MLMINC.MOTS(5)
  223. C-----------------------------------------------
  224. C-----------------------------------------------
  225. IMATRI.LISDUA(1) = MLMINC.MOTS(1)
  226. IMATRI.LISDUA(2) = MLMINC.MOTS(1)
  227. IMATRI.LISDUA(3) = MLMINC.MOTS(1)
  228. IMATRI.LISDUA(4) = MLMINC.MOTS(1)
  229. IMATRI.LISDUA(5) = MLMINC.MOTS(1)
  230. C-----------------------------------------------
  231. IMATRI.LISDUA(6) = MLMINC.MOTS(2)
  232. IMATRI.LISDUA(7) = MLMINC.MOTS(2)
  233. IMATRI.LISDUA(8) = MLMINC.MOTS(2)
  234. IMATRI.LISDUA(9) = MLMINC.MOTS(2)
  235. IMATRI.LISDUA(10) = MLMINC.MOTS(2)
  236. C----------------------------------------------
  237. IMATRI.LISDUA(11) = MLMINC.MOTS(3)
  238. IMATRI.LISDUA(12) = MLMINC.MOTS(3)
  239. IMATRI.LISDUA(13) = MLMINC.MOTS(3)
  240. IMATRI.LISDUA(14) = MLMINC.MOTS(3)
  241. IMATRI.LISDUA(15) = MLMINC.MOTS(3)
  242. C----------------------------------------------
  243. IMATRI.LISDUA(16) = MLMINC.MOTS(4)
  244. IMATRI.LISDUA(17) = MLMINC.MOTS(4)
  245. IMATRI.LISDUA(18) = MLMINC.MOTS(4)
  246. IMATRI.LISDUA(19) = MLMINC.MOTS(4)
  247. IMATRI.LISDUA(20) = MLMINC.MOTS(4)
  248. C----------------------------------------------
  249. IMATRI.LISDUA(21) = MLMINC.MOTS(5)
  250. IMATRI.LISDUA(22) = MLMINC.MOTS(5)
  251. IMATRI.LISDUA(23) = MLMINC.MOTS(5)
  252. IMATRI.LISDUA(24) = MLMINC.MOTS(5)
  253. IMATRI.LISDUA(25) = MLMINC.MOTS(5)
  254. C----------------------------------------------
  255. C----------------------------------------------
  256. NBEL = NBELEM
  257. NBSOUS = 1
  258. NP = 2
  259. MP = 2
  260. SEGINI RR , RUX , RUY , RUZ, RRET ,
  261. & UXR , UXUX , UXUY , UXUZ, UXRET ,
  262. & UYR , UYUX , UYUY , UYUZ, UYRET ,
  263. & UZR , UZUX , UZUY , UZUZ, UZRET ,
  264. & RETR , RETUX , RETUY , RETUZ, RETRET
  265. C-----------------------------------------------
  266. C**** Duale = IMATRI.LISDUA(1) = 'RN'
  267. C Primale = IMATRI.LISPRI(1) = 'RN'
  268. C -> IMATRI.LIZAFM(1,1) = RR
  269. C
  270. C Duale = IMATRI.LISDUA(2) = 'RN'
  271. C Primale = IMATRI.LISPRI(1) = 'RUXN'
  272. C -> IMATRI.LIZAFM(1,2) = RUX
  273. C ...
  274. C-----------------------------------------------
  275. IMATRI.LIZAFM(1,1) = RR
  276. IMATRI.LIZAFM(1,2) = RUX
  277. IMATRI.LIZAFM(1,3) = RUY
  278. IMATRI.LIZAFM(1,4) = RUZ
  279. IMATRI.LIZAFM(1,5) = RRET
  280. C-----------------------------------------------
  281. IMATRI.LIZAFM(1,6) = UXR
  282. IMATRI.LIZAFM(1,7) = UXUX
  283. IMATRI.LIZAFM(1,8) = UXUY
  284. IMATRI.LIZAFM(1,9) = UXUZ
  285. IMATRI.LIZAFM(1,10) = UXRET
  286. C-----------------------------------------------
  287. IMATRI.LIZAFM(1,11) = UYR
  288. IMATRI.LIZAFM(1,12) = UYUX
  289. IMATRI.LIZAFM(1,13) = UYUY
  290. IMATRI.LIZAFM(1,14) = UYUZ
  291. IMATRI.LIZAFM(1,15) = UYRET
  292. C------------------------------------------------
  293. IMATRI.LIZAFM(1,16) = UZR
  294. IMATRI.LIZAFM(1,17) = UZUX
  295. IMATRI.LIZAFM(1,18) = UZUY
  296. IMATRI.LIZAFM(1,19) = UZUZ
  297. IMATRI.LIZAFM(1,20) = UZRET
  298. C-----------------------------------------------
  299. IMATRI.LIZAFM(1,21) = RETR
  300. IMATRI.LIZAFM(1,22) = RETUX
  301. IMATRI.LIZAFM(1,23) = RETUY
  302. IMATRI.LIZAFM(1,24) = RETUZ
  303. IMATRI.LIZAFM(1,25) = RETRET
  304. C-----------------------------------------------
  305. DO IFAC = 1, NFAC, 1
  306. NGCF = MELEFE.NUM(2,IFAC)
  307. NLCF = MLENTF.LECT(NGCF)
  308. IF(NLCF .NE. IFAC)THEN
  309. WRITE(IOIMP,*) 'Il ne faut pas jouer avec la table domaine'
  310. CALL ERREUR(5)
  311. GOTO 9999
  312. ENDIF
  313. NGCG = MELEFE.NUM(1,IFAC)
  314. NGCD = MELEFE.NUM(3,IFAC)
  315. NLFL = MLELIM.LECT(NGCF)
  316. IF(NLFL .NE. 0)THEN
  317. C
  318. C********** The point belongs on BC -> No contribution to jacobian!
  319. C
  320. MELEDU.NUM(1,IFAC) = NGCG
  321. MELEDU.NUM(2,IFAC) = NGCD
  322. ELSEIF(NGCG .NE. NGCD)THEN
  323. C-------------------------------------------------
  324. C********** Les MELEMEs
  325. C-------------------------------------------------
  326. MELEDU.NUM(1,IFAC) = NGCG
  327. MELEDU.NUM(2,IFAC) = NGCD
  328. C-------------------------------------------------
  329. C********** Les etats G et D
  330. C-------------------------------------------------
  331. NLCG = MLENTC.LECT(NGCG)
  332. NLCD = MLENTC.LECT(NGCD)
  333. C-------------------------------------------------
  334. ROG = MPRN.VPOCHA(NLCG,1)
  335. PG = MPPN.VPOCHA(NLCG,1)
  336. UXG = MPUN.VPOCHA(NLCG,1)
  337. UYG = MPUN.VPOCHA(NLCG,2)
  338. UZG = MPUN.VPOCHA(NLCG,3)
  339. GAMG = MPGAMN.VPOCHA(NLCG,1)
  340. VOLG = MPVOLU.VPOCHA(NLCG,1)
  341. C-------------------------------------------------
  342. WVEC_L(1)=ROG
  343. WVEC_L(2)=UXG
  344. WVEC_L(3)=UYG
  345. WVEC_L(4)=UZG
  346. WVEC_L(5)=PG
  347. C-------------------------------------------------
  348. ROD = MPRN.VPOCHA(NLCD,1)
  349. PD = MPPN.VPOCHA(NLCD,1)
  350. UXD = MPUN.VPOCHA(NLCD,1)
  351. UYD = MPUN.VPOCHA(NLCD,2)
  352. UZD = MPUN.VPOCHA(NLCD,3)
  353. GAMD = MPGAMN.VPOCHA(NLCD,1)
  354. VOLD = MPVOLU.VPOCHA(NLCD,1)
  355. C------------------------------------------------
  356. WVEC_R(1)=ROD
  357. WVEC_R(2)=UXD
  358. WVEC_R(3)=UYD
  359. WVEC_R(4)=UZD
  360. WVEC_R(5)=PD
  361. C------------------------------------------------
  362. C
  363. C********** La normale G->D
  364. C La tangente
  365. C-----------------------------------------------
  366. SURF = MPOVSU.VPOCHA(NLCF,1)
  367. NVECT(1) = MPNORM.VPOCHA(NLCF,7)
  368. NVECT(2) = MPNORM.VPOCHA(NLCF,8)
  369. NVECT(3) = MPNORM.VPOCHA(NLCF,9)
  370. c-----------------------------------------------
  371. TVECT1(1) = MPNORM.VPOCHA(NLCF,1)
  372. TVECT1(2) = MPNORM.VPOCHA(NLCF,2)
  373. TVECT1(3) = MPNORM.VPOCHA(NLCF,3)
  374. c----------------------------------------------
  375. TVECT2(1) = MPNORM.VPOCHA(NLCF,4)
  376. TVECT2(2) = MPNORM.VPOCHA(NLCF,5)
  377. TVECT2(3) = MPNORM.VPOCHA(NLCF,6)
  378. C-----------------------------------------------
  379. C********** La contribution de Gauche
  380. C-----------------------------------------------
  381. CALL CONJ3D(JTL,JTR,WVEC_L,WVEC_R,
  382. & NVECT,TVECT1,TVECT2,GAMG)
  383. C----------------------------------------------------------
  384. C
  385. C********** AB.AM(IFAC,IPRIM,IDUAL)
  386. C A = nom de l'inconnu duale (Ro,rUX,rUY,RET)
  387. C B = nom de l'inconnu primale (Ro,rUX,rUY,RET)
  388. C IPRIM = 1, 2 -> G, D
  389. C IDUAL = 1, 2 -> G, D
  390. C i.e.
  391. C A_IDUAL = AB.AM(IFAC,IPRIM,IDUAL) * B_IPRIM + ...
  392. C
  393. C
  394. C********** Dual RN
  395. C----------------------------------------------------------
  396. FUNCEL = SURF * JTL(1,1)
  397. RR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  398. RR.AM(IFAC,1,2) = FUNCEL / VOLD
  399. C----------------------------------------------------
  400. FUNCEL = SURF * JTL(1,2)
  401. RUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  402. RUX.AM(IFAC,1,2) = FUNCEL / VOLD
  403. C----------------------------------------------------
  404. FUNCEL = SURF * JTL(1,3)
  405. RUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  406. RUY.AM(IFAC,1,2) = FUNCEL / VOLD
  407. C----------------------------------------------------
  408. FUNCEL = SURF * JTL(1,4)
  409. RUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  410. RUZ.AM(IFAC,1,2) = FUNCEL / VOLD
  411. C----------------------------------------------------
  412. FUNCEL = SURF * JTL(1,5)
  413. RRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  414. RRET.AM(IFAC,1,2) = FUNCEL / VOLD
  415. C------------------------------------------------------------
  416. C********** Dual RUXN
  417. C------------------------------------------------------------
  418. FUNCEL = SURF * JTL(2,1)
  419. UXR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  420. UXR.AM(IFAC,1,2) = FUNCEL / VOLD
  421. C----------------------------------------------------
  422. FUNCEL = SURF * JTL(2,2)
  423. UXUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  424. UXUX.AM(IFAC,1,2) = FUNCEL / VOLD
  425. C----------------------------------------------------
  426. FUNCEL = SURF * JTL(2,3)
  427. UXUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  428. UXUY.AM(IFAC,1,2) = FUNCEL / VOLD
  429. C----------------------------------------------------
  430. FUNCEL = SURF * JTL(2,4)
  431. UXUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  432. UXUZ.AM(IFAC,1,2) = FUNCEL / VOLD
  433. C----------------------------------------------------
  434. FUNCEL = SURF * JTL(2,5)
  435. UXRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  436. UXRET.AM(IFAC,1,2) = FUNCEL / VOLD
  437. C-------------------------------------------------------------
  438. C********** Dual RUYN
  439. C-------------------------------------------------------------
  440. FUNCEL = SURF * JTL(3,1)
  441. UYR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  442. UYR.AM(IFAC,1,2) = FUNCEL / VOLD
  443. C----------------------------------------------------
  444. FUNCEL = SURF * JTL(3,2)
  445. UYUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  446. UYUX.AM(IFAC,1,2) = FUNCEL / VOLD
  447. C----------------------------------------------------
  448. FUNCEL = SURF * JTL(3,3)
  449. UYUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  450. UYUY.AM(IFAC,1,2) = FUNCEL / VOLD
  451. C----------------------------------------------------
  452. FUNCEL = SURF * JTL(3,4)
  453. UYUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  454. UYUZ.AM(IFAC,1,2) = FUNCEL / VOLD
  455. C----------------------------------------------------
  456. FUNCEL = SURF * JTL(3,5)
  457. UYRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  458. UYRET.AM(IFAC,1,2) = FUNCEL / VOLD
  459. C-------------------------------------------------------------
  460. C********** Dual RUZN
  461. C-------------------------------------------------------------
  462. FUNCEL = SURF * JTL(4,1)
  463. UZR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  464. UZR.AM(IFAC,1,2) = FUNCEL / VOLD
  465. C----------------------------------------------------
  466. FUNCEL = SURF * JTL(4,2)
  467. UZUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  468. UZUX.AM(IFAC,1,2) = FUNCEL / VOLD
  469. C----------------------------------------------------
  470. FUNCEL = SURF * JTL(4,3)
  471. UZUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  472. UZUY.AM(IFAC,1,2) = FUNCEL / VOLD
  473. C----------------------------------------------------
  474. FUNCEL = SURF * JTL(4,4)
  475. UZUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  476. UZUZ.AM(IFAC,1,2) = FUNCEL / VOLD
  477. C----------------------------------------------------
  478. FUNCEL = SURF * JTL(4,5)
  479. UZRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  480. UZRET.AM(IFAC,1,2) = FUNCEL / VOLD
  481. C-------------------------------------------------------------
  482. C********** Dual RETN
  483. C-------------------------------------------------------------
  484. FUNCEL = SURF * JTL(5,1)
  485. RETR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  486. RETR.AM(IFAC,1,2) = FUNCEL / VOLD
  487. C-----------------------------------------------------
  488. FUNCEL = SURF * JTL(5,2)
  489. RETUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  490. RETUX.AM(IFAC,1,2) = FUNCEL / VOLD
  491. C-----------------------------------------------------
  492. FUNCEL = SURF * JTL(5,3)
  493. RETUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  494. RETUY.AM(IFAC,1,2) = FUNCEL / VOLD
  495. C-----------------------------------------------------
  496. FUNCEL = SURF * JTL(5,4)
  497. RETUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  498. RETUZ.AM(IFAC,1,2) = FUNCEL / VOLD
  499. C-----------------------------------------------------
  500. FUNCEL = SURF * JTL(5,5)
  501. RETRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  502. RETRET.AM(IFAC,1,2) = FUNCEL / VOLD
  503. C-------------------------------------------------------------
  504. C
  505. C********** La contribution de D
  506. C
  507. c NVECT(1) = -1.0D0 * NVECT(1)
  508. c NVECT(2) = -1.0D0 * NVECT(2)
  509. c TVECT(1) = -1.0D0 * TVECT(1)
  510. c TVECT(2) = -1.0D0 * TVECT(2)
  511. c
  512. c CALL CONJAK(JTL,JTR,WVEC_L,WVEC_R,
  513. c & NVECT,TVECT,GAMD)
  514. C
  515. C
  516. C********** Dual RN
  517. C------------------------------------------------------------
  518. FUNCEL = SURF * JTR(1,1)
  519. RR.AM(IFAC,2,2) = FUNCEL / VOLD
  520. RR.AM(IFAC,2,1) = -FUNCEL / VOLG
  521. C--------------------------------------------
  522. FUNCEL = SURF * JTR(1,2)
  523. RUX.AM(IFAC,2,2) = FUNCEL / VOLD
  524. RUX.AM(IFAC,2,1) = -FUNCEL / VOLG
  525. C--------------------------------------------
  526. FUNCEL = SURF * JTR(1,3)
  527. RUY.AM(IFAC,2,2) = FUNCEL / VOLD
  528. RUY.AM(IFAC,2,1) = -FUNCEL / VOLG
  529. C--------------------------------------------
  530. FUNCEL = SURF * JTR(1,4)
  531. RUZ.AM(IFAC,2,2) = FUNCEL / VOLD
  532. RUZ.AM(IFAC,2,1) = -FUNCEL / VOLG
  533. C--------------------------------------------
  534. FUNCEL = SURF * JTR(1,5)
  535. RRET.AM(IFAC,2,2) = FUNCEL / VOLD
  536. RRET.AM(IFAC,2,1) = -FUNCEL / VOLG
  537. C-------------------------------------------------------------
  538. C********** Dual RUXN
  539. C-------------------------------------------------------------
  540. FUNCEL = SURF * JTR(2,1)
  541. UXR.AM(IFAC,2,2) = FUNCEL / VOLD
  542. UXR.AM(IFAC,2,1) = -FUNCEL / VOLG
  543. C--------------------------------------------
  544. FUNCEL = SURF * JTR(2,2)
  545. UXUX.AM(IFAC,2,2) = FUNCEL / VOLD
  546. UXUX.AM(IFAC,2,1) = -FUNCEL / VOLG
  547. C--------------------------------------------
  548. FUNCEL = SURF * JTR(2,3)
  549. UXUY.AM(IFAC,2,2) = FUNCEL / VOLD
  550. UXUY.AM(IFAC,2,1) = -FUNCEL / VOLG
  551. C--------------------------------------------
  552. FUNCEL = SURF * JTR(2,4)
  553. UXUZ.AM(IFAC,2,2) = FUNCEL / VOLD
  554. UXUZ.AM(IFAC,2,1) = -FUNCEL / VOLG
  555. C--------------------------------------------
  556. FUNCEL = SURF * JTR(2,5)
  557. UXRET.AM(IFAC,2,2) = FUNCEL / VOLD
  558. UXRET.AM(IFAC,2,1) = -FUNCEL / VOLG
  559. C-------------------------------------------------------------
  560. C********** Dual RUYN
  561. C-------------------------------------------------------------
  562. FUNCEL = SURF * JTR(3,1)
  563. UYR.AM(IFAC,2,2) = FUNCEL / VOLD
  564. UYR.AM(IFAC,2,1) = -FUNCEL / VOLG
  565. C--------------------------------------------
  566. FUNCEL = SURF * JTR(3,2)
  567. UYUX.AM(IFAC,2,2) = FUNCEL / VOLD
  568. UYUX.AM(IFAC,2,1) = -FUNCEL / VOLG
  569. C--------------------------------------------
  570. FUNCEL = SURF * JTR(3,3)
  571. UYUY.AM(IFAC,2,2) = FUNCEL / VOLD
  572. UYUY.AM(IFAC,2,1) = -FUNCEL / VOLG
  573. C--------------------------------------------
  574. FUNCEL = SURF * JTR(3,4)
  575. UYUZ.AM(IFAC,2,2) = FUNCEL / VOLD
  576. UYUZ.AM(IFAC,2,1) = -FUNCEL / VOLG
  577. C--------------------------------------------
  578. FUNCEL = SURF * JTR(3,5)
  579. UYRET.AM(IFAC,2,2) = FUNCEL / VOLD
  580. UYRET.AM(IFAC,2,1) = -FUNCEL / VOLG
  581. C-------------------------------------------------------------
  582. C********** Dual RUZN
  583. C-------------------------------------------------------------
  584. FUNCEL = SURF * JTR(4,1)
  585. UZR.AM(IFAC,2,2) = FUNCEL / VOLD
  586. UZR.AM(IFAC,2,1) = -FUNCEL / VOLG
  587. C--------------------------------------------
  588. FUNCEL = SURF * JTR(4,2)
  589. UZUX.AM(IFAC,2,2) = FUNCEL / VOLD
  590. UZUX.AM(IFAC,2,1) = -FUNCEL / VOLG
  591. C--------------------------------------------
  592. FUNCEL = SURF * JTR(4,3)
  593. UZUY.AM(IFAC,2,2) = FUNCEL / VOLD
  594. UZUY.AM(IFAC,2,1) = -FUNCEL / VOLG
  595. C--------------------------------------------
  596. FUNCEL = SURF * JTR(4,4)
  597. UZUZ.AM(IFAC,2,2) = FUNCEL / VOLD
  598. UZUZ.AM(IFAC,2,1) = -FUNCEL / VOLG
  599. C--------------------------------------------
  600. FUNCEL = SURF * JTR(4,5)
  601. UZRET.AM(IFAC,2,2) = FUNCEL / VOLD
  602. UZRET.AM(IFAC,2,1) = -FUNCEL / VOLG
  603. C------------------------------------------------------------
  604. C********** Dual RETN
  605. C------------------------------------------------------------
  606. FUNCEL = SURF * JTR(5,1)
  607. RETR.AM(IFAC,2,2) = FUNCEL / VOLD
  608. RETR.AM(IFAC,2,1) = -FUNCEL / VOLG
  609. C---------------------------------------------
  610. FUNCEL = SURF * JTR(5,2)
  611. RETUX.AM(IFAC,2,2) = FUNCEL / VOLD
  612. RETUX.AM(IFAC,2,1) = -FUNCEL / VOLG
  613. C---------------------------------------------
  614. FUNCEL = SURF * JTR(5,3)
  615. RETUY.AM(IFAC,2,2) = FUNCEL / VOLD
  616. RETUY.AM(IFAC,2,1) = -FUNCEL / VOLG
  617. C---------------------------------------------
  618. FUNCEL = SURF * JTR(5,4)
  619. RETUZ.AM(IFAC,2,2) = FUNCEL / VOLD
  620. RETUZ.AM(IFAC,2,1) = -FUNCEL / VOLG
  621. C---------------------------------------------
  622. FUNCEL = SURF * JTR(5,5)
  623. RETRET.AM(IFAC,2,2) = FUNCEL / VOLD
  624. RETRET.AM(IFAC,2,1) = -FUNCEL / VOLG
  625. C---------------------------------------------
  626. ELSE
  627. C------------------------------------------------------------
  628. C********** Murs (NGCG = NGCD)
  629. C
  630. C
  631. C********** Les MELEMEs
  632. C-----------------------------------------------------------
  633. MELEDU.NUM(1,IFAC) = NGCG
  634. MELEDU.NUM(2,IFAC) = NGCD
  635. NLCG = MLENTC.LECT(NGCG)
  636. C-------------------------------------
  637. ROG = MPRN.VPOCHA(NLCG,1)
  638. PG = MPPN.VPOCHA(NLCG,1)
  639. UXG = MPUN.VPOCHA(NLCG,1)
  640. UYG = MPUN.VPOCHA(NLCG,2)
  641. UZG = MPUN.VPOCHA(NLCG,3)
  642. GAMG = MPGAMN.VPOCHA(NLCG,1)
  643. VOLG = MPVOLU.VPOCHA(NLCG,1)
  644. C-------------------------------------------
  645. WVEC_L(1)=ROG
  646. WVEC_L(2)=UXG
  647. WVEC_L(3)=UYG
  648. WVEC_L(4)=UZG
  649. WVEC_L(5)=PG
  650. C-------------------------------------------------
  651. SURF = MPOVSU.VPOCHA(NLCF,1)
  652. NVECT(1) = MPNORM.VPOCHA(NLCF,7)
  653. NVECT(2) = MPNORM.VPOCHA(NLCF,8)
  654. NVECT(3) = MPNORM.VPOCHA(NLCF,9)
  655. c--------------------------------------------
  656. TVECT1(1) = MPNORM.VPOCHA(NLCF,1)
  657. TVECT1(2) = MPNORM.VPOCHA(NLCF,2)
  658. TVECT1(3) = MPNORM.VPOCHA(NLCF,3)
  659. c----------------------------------------------
  660. TVECT2(1) = MPNORM.VPOCHA(NLCF,4)
  661. TVECT2(2) = MPNORM.VPOCHA(NLCF,5)
  662. TVECT2(3) = MPNORM.VPOCHA(NLCF,6)
  663. C------- COEFFICIENTS ----------------------------
  664. C11=TVECT1(2)*TVECT2(3)-TVECT1(3)*TVECT2(2)
  665. C12=NVECT(2)*TVECT2(3)-TVECT2(2)*NVECT(3)
  666. C13=NVECT(2)*TVECT1(3)-TVECT1(2)*NVECT(3)
  667. C---------------------------------
  668. C21=TVECT1(1)*TVECT2(3)-TVECT1(3)*TVECT2(1)
  669. C22=NVECT(1)*TVECT2(3)-TVECT2(1)*NVECT(3)
  670. C23=NVECT(1)*TVECT1(3)-TVECT1(1)*NVECT(3)
  671. C---------------------------------
  672. C31=TVECT1(1)*TVECT2(2)-TVECT1(2)*TVECT2(1)
  673. C32=NVECT(1)*TVECT2(2)-TVECT2(1)*NVECT(2)
  674. C33=NVECT(1)*TVECT1(2)-TVECT1(1)*NVECT(2)
  675. DET=NVECT(1)*C11-NVECT(2)*C21+NVECT(3)*C31
  676. C---------------------------------
  677. ZC11=-NVECT(1)*C11-TVECT1(1)*C12+TVECT2(1)*C13
  678. ZC12=-NVECT(2)*C11-TVECT1(2)*C12+TVECT2(2)*C13
  679. ZC13=-NVECT(3)*C11-TVECT1(3)*C12+TVECT2(3)*C13
  680. C---------------------------------
  681. ZC21=NVECT(1)*C21+TVECT1(1)*C22-TVECT2(1)*C23
  682. ZC22=NVECT(2)*C21+TVECT1(2)*C22-TVECT2(2)*C23
  683. ZC23=NVECT(3)*C21+TVECT1(3)*C22-TVECT2(3)*C23
  684. C---------------------------------
  685. ZC31=-NVECT(1)*C31-TVECT1(1)*C32+TVECT2(1)*C33
  686. ZC32=-NVECT(2)*C31-TVECT1(2)*C32+TVECT2(2)*C33
  687. ZC33=-NVECT(3)*C31-TVECT1(3)*C32+TVECT2(3)*C33
  688. C-------------------------------------------------
  689. ROD = ROG
  690. PD = PG
  691. UXD = (ZC11*UXG+ZC12*UYG+ZC13*UZG)/DET
  692. UYD = (ZC21*UXG+ZC22*UYG+ZC23*UZG)/DET
  693. UZD = (ZC31*UXG+ZC32*UYG+ZC33*UZG)/DET
  694. GAMD = GAMG
  695. VOLD = VOLG
  696. C------------------------------------------------
  697. WVEC_R(1)=ROD
  698. WVEC_R(2)=UXD
  699. WVEC_R(3)=UYD
  700. WVEC_R(4)=UZD
  701. WVEC_R(5)=PD
  702. C-------------------------------------------
  703. C********** La normale sortante
  704. C-------------------------------------------
  705. CALL CONJ3W(JTL,JTR,WVEC_L,WVEC_R,
  706. & NVECT,TVECT1,TVECT2,GAMG)
  707. C--------------------------------------------------
  708. C********** Dual RN
  709. C--------------------------------------------------
  710. RR.AM(IFAC,1,1) = 0.0D0
  711. RR.AM(IFAC,1,2) = 0.0D0
  712. C-----------------------------------
  713. RUX.AM(IFAC,1,1) = 0.0D0
  714. RUX.AM(IFAC,1,2) = 0.0D0
  715. C-----------------------------------
  716. RUY.AM(IFAC,1,1) = 0.0D0
  717. RUY.AM(IFAC,1,2) = 0.0D0
  718. C-----------------------------------
  719. RUZ.AM(IFAC,1,1) = 0.0D0
  720. RUZ.AM(IFAC,1,2) = 0.0D0
  721. C-----------------------------------
  722. RRET.AM(IFAC,1,1) = 0.0D0
  723. RRET.AM(IFAC,1,2) = 0.0D0
  724. C---------------------------------------------------
  725. C********** Dual RUXN
  726. C---------------------------------------------------
  727. FUNCEL = SURF * JTL(2,1)
  728. UXR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  729. UXR.AM(IFAC,1,2) = 0.0D0
  730. C----------------------------------------------------
  731. FUNCEL = SURF * JTL(2,2)
  732. UXUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  733. UXUX.AM(IFAC,1,2) = 0.0D0
  734. C----------------------------------------------------
  735. FUNCEL = SURF * JTL(2,3)
  736. UXUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  737. UXUY.AM(IFAC,1,2) = 0.0D0
  738. C----------------------------------------------------
  739. FUNCEL = SURF * JTL(2,4)
  740. UXUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  741. UXUZ.AM(IFAC,1,2) = 0.0D0
  742. C----------------------------------------------------
  743. FUNCEL = SURF * JTL(2,5)
  744. UXRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  745. UXRET.AM(IFAC,1,2) = 0.0D0
  746. C--------------------------------------------------------
  747. C********** Dual RUYN
  748. C--------------------------------------------------------
  749. FUNCEL = SURF * JTL(3,1)
  750. UYR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  751. UYR.AM(IFAC,1,2) = 0.0D0
  752. C----------------------------------------------------
  753. FUNCEL = SURF * JTL(3,2)
  754. UYUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  755. UYUX.AM(IFAC,1,2) = 0.0D0
  756. C----------------------------------------------------
  757. FUNCEL = SURF * JTL(3,3)
  758. UYUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  759. UYUY.AM(IFAC,1,2) = 0.0D0
  760. C----------------------------------------------------
  761. FUNCEL = SURF * JTL(3,4)
  762. UYUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  763. UYUZ.AM(IFAC,1,2) = 0.0D0
  764. C----------------------------------------------------
  765. FUNCEL = SURF * JTL(3,5)
  766. UYRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  767. UYRET.AM(IFAC,1,2) = 0.0D0
  768. C--------------------------------------------------------
  769. C********** Dual RUZN
  770. C--------------------------------------------------------
  771. FUNCEL = SURF * JTL(4,1)
  772. UZR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  773. UZR.AM(IFAC,1,2) = 0.0D0
  774. C----------------------------------------------------
  775. FUNCEL = SURF * JTL(4,2)
  776. UZUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  777. UZUX.AM(IFAC,1,2) = 0.0D0
  778. C----------------------------------------------------
  779. FUNCEL = SURF * JTL(4,3)
  780. UZUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  781. UZUY.AM(IFAC,1,2) = 0.0D0
  782. C----------------------------------------------------
  783. FUNCEL = SURF * JTL(4,4)
  784. UZUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  785. UZUZ.AM(IFAC,1,2) = 0.0D0
  786. C----------------------------------------------------
  787. FUNCEL = SURF * JTL(4,5)
  788. UZRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG
  789. UZRET.AM(IFAC,1,2) = 0.0D0
  790. C---------------------------------------------------------
  791. C********** Dual RETN
  792. C---------------------------------------------------------
  793. RETR.AM(IFAC,1,1) = 0.0D0
  794. RETR.AM(IFAC,1,2) = 0.0D0
  795. C--------------------------------------
  796. RETUX.AM(IFAC,1,1) = 0.0D0
  797. RETUX.AM(IFAC,1,2) = 0.0D0
  798. C--------------------------------------
  799. RETUY.AM(IFAC,1,1) = 0.0D0
  800. RETUY.AM(IFAC,1,2) = 0.0D0
  801. C--------------------------------------
  802. RETUZ.AM(IFAC,1,1) = 0.0D0
  803. RETUZ.AM(IFAC,1,2) = 0.0D0
  804. C--------------------------------------
  805. RETRET.AM(IFAC,1,1) = 0.0D0
  806. RETRET.AM(IFAC,1,2) = 0.0D0
  807. C----------------------------------------------------------
  808. C********** Dual RN
  809. C----------------------------------------------------------
  810. RR.AM(IFAC,2,2) = 0.0D0
  811. RR.AM(IFAC,2,1) = 0.0D0
  812. C-----------------------------------
  813. RUX.AM(IFAC,2,2) = 0.0D0
  814. RUX.AM(IFAC,2,1) = 0.0D0
  815. C-----------------------------------
  816. RUY.AM(IFAC,2,2) = 0.0D0
  817. RUY.AM(IFAC,2,1) = 0.0D0
  818. C-----------------------------------
  819. RUZ.AM(IFAC,2,2) = 0.0D0
  820. RUZ.AM(IFAC,2,1) = 0.0D0
  821. C-----------------------------------
  822. RRET.AM(IFAC,2,2) = 0.0D0
  823. RRET.AM(IFAC,2,1) = 0.0D0
  824. C----------------------------------------------------------
  825. C********** Dual RUXN
  826. C----------------------------------------------------------
  827. UXR.AM(IFAC,2,2) = 0.0D0
  828. UXR.AM(IFAC,2,1) = 0.0D0
  829. C------------------------------------
  830. UXUX.AM(IFAC,2,2) = 0.0D0
  831. UXUX.AM(IFAC,2,1) = 0.0D0
  832. C------------------------------------
  833. UXUY.AM(IFAC,2,2) = 0.0D0
  834. UXUY.AM(IFAC,2,1) = 0.0D0
  835. C------------------------------------
  836. UXUZ.AM(IFAC,2,2) = 0.0D0
  837. UXUZ.AM(IFAC,2,1) = 0.0D0
  838. C------------------------------------
  839. UXRET.AM(IFAC,2,2) = 0.0D0
  840. UXRET.AM(IFAC,2,1) = 0.0D0
  841. C----------------------------------------------------------
  842. C********** Dual RUYN
  843. C----------------------------------------------------------
  844. UYR.AM(IFAC,2,2) = 0.0D0
  845. UYR.AM(IFAC,2,1) = 0.0D0
  846. C------------------------------------
  847. UYUX.AM(IFAC,2,2) = 0.0D0
  848. UYUX.AM(IFAC,2,1) = 0.0D0
  849. C------------------------------------
  850. UYUY.AM(IFAC,2,2) = 0.0D0
  851. UYUY.AM(IFAC,2,1) = 0.0D0
  852. C------------------------------------
  853. UYUZ.AM(IFAC,2,2) = 0.0D0
  854. UYUZ.AM(IFAC,2,1) = 0.0D0
  855. C------------------------------------
  856. UYRET.AM(IFAC,2,2) = 0.0D0
  857. UYRET.AM(IFAC,2,1) = 0.0D0
  858. C----------------------------------------------------------
  859. C********** Dual RUZN
  860. C----------------------------------------------------------
  861. UZR.AM(IFAC,2,2) = 0.0D0
  862. UZR.AM(IFAC,2,1) = 0.0D0
  863. C------------------------------------
  864. UZUX.AM(IFAC,2,2) = 0.0D0
  865. UZUX.AM(IFAC,2,1) = 0.0D0
  866. C------------------------------------
  867. UZUY.AM(IFAC,2,2) = 0.0D0
  868. UZUY.AM(IFAC,2,1) = 0.0D0
  869. C------------------------------------
  870. UZUZ.AM(IFAC,2,2) = 0.0D0
  871. UZUZ.AM(IFAC,2,1) = 0.0D0
  872. C------------------------------------
  873. UZRET.AM(IFAC,2,2) = 0.0D0
  874. UZRET.AM(IFAC,2,1) = 0.0D0
  875. C---------------------------------------------------------
  876. C********** Dual RETN
  877. C---------------------------------------------------------
  878. RETR.AM(IFAC,2,2) = 0.0D0
  879. RETR.AM(IFAC,2,1) = 0.0D0
  880. C-------------------------------------
  881. RETUX.AM(IFAC,2,2) = 0.0D0
  882. RETUX.AM(IFAC,2,1) = 0.0D0
  883. C-------------------------------------
  884. RETUY.AM(IFAC,2,2) = 0.0D0
  885. RETUY.AM(IFAC,2,1) = 0.0D0
  886. C-------------------------------------
  887. RETUZ.AM(IFAC,2,2) = 0.0D0
  888. RETUZ.AM(IFAC,2,1) = 0.0D0
  889. C-------------------------------------
  890. RETRET.AM(IFAC,2,2) = 0.0D0
  891. RETRET.AM(IFAC,2,1) = 0.0D0
  892. C--------------------------------------
  893. ENDIF
  894. ENDDO
  895. C------------------
  896. SEGDES MELEMC
  897. SEGDES MELEFE
  898. SEGDES MELEMF
  899. C------------------
  900. SEGDES MPOVSU
  901. SEGDES MPVOLU
  902. SEGDES MPNORM
  903. C------------------
  904. SEGDES MPRN
  905. SEGDES MPPN
  906. SEGDES MPUN
  907. SEGDES MPGAMN
  908. C------------------
  909. SEGDES MELEDU
  910. SEGDES MATRIK
  911. SEGDES IMATRI
  912. C------------------
  913. SEGDES RR , RUX , RUY , RUZ , RRET ,
  914. & UXR , UXUX , UXUY , UXUZ , UXRET ,
  915. & UYR , UYUX , UYUY , UYUZ , UYRET ,
  916. & UZR , UZUX , UZUY , UZUZ , UZRET ,
  917. & RETR , RETUX , RETUY , RETUZ , RETRET
  918.  
  919. SEGSUP MLENTC
  920. SEGSUP MLENTF
  921. SEGDES MLMINC
  922. SEGSUP MLELIM
  923. C
  924. 9999 CONTINUE
  925. RETURN
  926. END
  927.  
  928.  
  929.  
  930.  
  931.  
  932.  
  933.  
  934.  
  935.  
  936.  
  937.  
  938.  
  939.  
  940.  
  941.  
  942.  
  943.  
  944.  
  945.  
  946.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales