1 : C KONJP4 SOURCE MAGN 09/07/30 21:18:17 6458 2 : SUBROUTINE KONJP4(ILINC,ILINP,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 : KONJP4 10 : C 11 : C DESCRIPTION : Voir KON14 12 : C Calcul du jacobien du résidu pour la méthode 13 : C AUSM+ par rapport aux variables primitives 14 : C 14 : C Cas 3D, gaz "calorically perfect" 15 : C 16 : C LANGAGE : FORTRAN 77 + ESOPE 2000 (avec estensions CISI) 17 : C 18 : C AUTEUR : S. KUDRIAKOV, SFME/LTMF 19 : C 20 : C************************************************************************ 21 : C 22 : C ENTREES 23 : C 24 : C ILINC : liste des inconnues (pointeur d'un objet de type LISTMOTS) 25 : C 26 : C 1) Pointeurs des CHPOINT 27 : C 28 : C IRN : CHPOINT CENTRE contenant la masse volumique ; 29 : C 30 : C IUN : CHPOINT CENTRE contenant la vitesse ; 31 : C 32 : C IPN : CHPOINT CENTRE contenant la pression ; 33 : C 34 : C IGAMN : CHPOINT CENTRE contenant le gamma ; 35 : C 36 : C INORM : CHPOINT FACE contenant les normales aux faces ; 37 : C 38 : C ICHPOVO : CHPOINT VOLUME contenant le volume 39 : C 40 : C ICHPOSU : CHPOINT FACE contenant la surface des faces 41 : C 42 : C 43 : C 2) Pointeurs de MELEME de la table DOMAINE 44 : C 45 : C MELEMC : MELEME 'CENTRE' du SPG des CENTRES 46 : C 47 : C MELEFE : MELEME 'FACEL' du connectivité Faces -> Elts 48 : C 49 : C MELLIM : MELEME SPG des conditions aux bords 50 : C 51 : C SORTIES 52 : C 53 : C IMAT : pointeur de la MATRIK du jacobien du residu 54 : C 55 : C************************************************************************ 56 : C 57 : C HISTORIQUE (Anomalies et modifications éventuelles) 58 : C 59 : C HISTORIQUE : 60 : C 61 : C************************************************************************ 62 : C 63 : C 64 : C N.B.: On suppose qu'on a déjà controllé RO, P > 0 65 : C GAMMA \in (1,3) 66 : C Si non il faut le faire!!! 67 : C 68 : C************************************************************************ 69 : C 70 : C**** Variables de COOPTIO 71 : C 72 : C INTEGER IPLLB, IERPER, IERMAX, IERR, INTERR 73 : C & ,IOTER, IOLEC, IOIMP, IOCAR, IOACQ 74 : C & ,IOPER, IOSGB, IOGRA, IOSAU, IORES 75 : C & ,IECHO, IIMPI, IOSPI 76 : C & ,IDIM, IFICLE, IPREFI 77 : C & ,MCOORD 78 : C & ,IFOMOD, NIFOUR, IFOUR, NSDPGE, IONIVE 79 : C & ,NGMAXY, IZROSF, ISOTYP, IOSCR,LTEXLU 80 : C & ,NORINC,NORVAL,NORIND,NORVAD 81 : C & ,NUCROU, IPSAUV 82 : C 83 : IMPLICIT INTEGER(I-N) 84 : INTEGER ILINC, ILINP, IRN,IUN,IPN,IGAMN,INORM,ICHPVO,ICHPSU 85 : & , IMAT, IGEOMC, IGEOMF 86 : & , NFAC, NBSOUS, NBREF, NBELEM, NBNN, NRIGE, NMATRI, NKID 87 : & , NKMT, NBME, NBEL, MP, NP 88 : & , IFAC, NGCF, NLCF, NGCG, NGCD, NLCG, NLCD, NLFL 89 : REAL*8 ROG, PG, UXG, UYG, UZG, GAMG, VOLG 90 : & , ROD, PD, UXD, UYD, UZD, GAMD, VOLD 91 : & , SURF, FUNCEL 92 : REAL*8 WVEC_L(5), WVEC_R(5), NVECT(3), TVECT1(3),TVECT2(3) 93 : REAL*8 JTL(5,5), JTR(5,5) 94 : REAL*8 C11,C12,C13,C21,C22,C23,C31,C32,C33,DET 95 : REAL*8 ZC11,ZC12,ZC13,ZC21,ZC22,ZC23,ZC31,ZC32,ZC33 96 : CHARACTER*8 TYPE 97 : C 98 : C**** LES INCLUDES 99 : C 100 : -INC CCOPTIO 101 : -INC SMCHPOI 102 : -INC SMMATRIK 103 : -INC SMELEME 104 : -INC SMLMOTS 105 : -INC SMLENTI 106 : POINTEUR MPRN.MPOVAL, MPUN.MPOVAL, MPPN.MPOVAL, MPGAMN.MPOVAL, 107 : & MPNORM.MPOVAL, MPVOLU.MPOVAL, MPOVSU.MPOVAL 108 : POINTEUR MELEMC.MELEME, MELEMF.MELEME, MELEFE.MELEME, 109 : & MELEDU.MELEME, MELLIM.MELEME 110 : POINTEUR MLENTC.MLENTI, MLENTF.MLENTI, MLELIM.MLENTI 111 : POINTEUR RR.IZAFM, RUX.IZAFM, RUY.IZAFM, RUZ.IZAFM,RRET.IZAFM, 112 : & UXR.IZAFM, UXUX.IZAFM, UXUY.IZAFM, UXUZ.IZAFM, 113 : & UXRET.IZAFM, 114 : & UYR.IZAFM, UYUX.IZAFM, UYUY.IZAFM, UYUZ.IZAFM, 115 : & UYRET.IZAFM, 116 : & UZR.IZAFM, UZUX.IZAFM, UZUY.IZAFM, UZUZ.IZAFM, 117 : & UZRET.IZAFM, 118 : & RETR.IZAFM, RETUX.IZAFM, RETUY.IZAFM, RETUZ.IZAFM, 119 : & RETRET.IZAFM 120 : POINTEUR MLMINC.MLMOTS 121 : C 122 : C**** KRIPAD pour la correspondance global/local des conditions limits 123 : C 123 : CALL KRIPAD(MELLIM,MLELIM) 124 : c SEGACT MELLIM 125 : C 126 : C**** KRIPAD pour la correspondance global/local des centres 127 : C 127 : CALL KRIPAD(MELEMC,MLENTC) 128 : C 129 : C SEGACT MLENTC 130 : SEGACT MELEMC 131 : C 132 : SEGACT MELEFE 133 : C 133 : CALL LICHT(ICHPSU,MPOVSU,TYPE,IGEOMF) 133 : CALL LICHT(INORM,MPNORM,TYPE,IGEOMF) 133 : CALL LICHT(ICHPVO,MPVOLU,TYPE,IGEOMC) 134 : C 135 : C**** LICHT active les MPOVALs en *MOD 136 : C 137 : C i.e. 138 : C 139 : C SEGACT MPOVSU*MOD 140 : C SEGACT MPOVNO*MOD 141 : C SEGACT MPVOLU*MOD 142 : C 143 : MELEMF = IGEOMF 143 : CALL KRIPAD(MELEMF,MLENTF) 144 : C 145 : C SEGACT MLENTF 146 : SEGACT MELEMF 147 : C 147 : CALL LICHT(IRN,MPRN,TYPE,IGEOMC) 147 : CALL LICHT(IPN,MPPN,TYPE,IGEOMC) 147 : CALL LICHT(IUN,MPUN,TYPE,IGEOMC) 147 : CALL LICHT(IGAMN,MPGAMN,TYPE,IGEOMC) 148 : C 149 : C SEGACT MPRN*MOD 150 : C SEGACT MPPN*MOD 151 : C SEGACT MPUN*MOD 152 : C SEGACT MPGAMN*MOD 153 : C 154 : NFAC = MELEFE.NUM(/2) 155 : C 156 : C**** Maillage des inconnues primales 157 : C 158 : NBSOUS = 0 159 : NBREF = 0 160 : NBELEM = NFAC 161 : NBNN = 2 162 : C 163 : SEGINI MELEDU 164 : C MELEPR = MELEDU 165 : C 166 : C**** MELEDU = 'SEG2' 167 : C 168 : MELEDU.ITYPEL = 2 169 : C 170 : NRIGE = 7 171 : NMATRI = 1 172 : NKID = 9 173 : NKMT = 7 174 : C 175 : SEGINI MATRIK 176 : IMAT = MATRIK 177 : MATRIK.IRIGEL(1,1) = MELEDU 178 : MATRIK.IRIGEL(2,1) = MELEDU 179 : C 180 : C**** Matrice non symetrique 181 : C 182 : MATRIK.IRIGEL(7,1) = 2 183 : C 184 : NBME = 25 185 : NBSOUS = 1 186 : SEGINI IMATRI 187 : MATRIK.IRIGEL(4,1) = IMATRI 188 : C Primal variables 189 : MLMINC = ILINP 190 : SEGACT MLMINC 191 : C----------------------------------------------- 192 : IMATRI.LISPRI(1) = MLMINC.MOTS(1) 193 : IMATRI.LISPRI(2) = MLMINC.MOTS(2) 194 : IMATRI.LISPRI(3) = MLMINC.MOTS(3) 195 : IMATRI.LISPRI(4) = MLMINC.MOTS(4) 196 : IMATRI.LISPRI(5) = MLMINC.MOTS(5) 197 : C----------------------------------------------- 198 : IMATRI.LISPRI(6) = MLMINC.MOTS(1) 199 : IMATRI.LISPRI(7) = MLMINC.MOTS(2) 200 : IMATRI.LISPRI(8) = MLMINC.MOTS(3) 201 : IMATRI.LISPRI(9) = MLMINC.MOTS(4) 202 : IMATRI.LISPRI(10) = MLMINC.MOTS(5) 203 : C----------------------------------------------- 204 : IMATRI.LISPRI(11) = MLMINC.MOTS(1) 205 : IMATRI.LISPRI(12) = MLMINC.MOTS(2) 206 : IMATRI.LISPRI(13) = MLMINC.MOTS(3) 207 : IMATRI.LISPRI(14) = MLMINC.MOTS(4) 208 : IMATRI.LISPRI(15) = MLMINC.MOTS(5) 209 : C----------------------------------------------- 210 : IMATRI.LISPRI(16) = MLMINC.MOTS(1) 211 : IMATRI.LISPRI(17) = MLMINC.MOTS(2) 212 : IMATRI.LISPRI(18) = MLMINC.MOTS(3) 213 : IMATRI.LISPRI(19) = MLMINC.MOTS(4) 214 : IMATRI.LISPRI(20) = MLMINC.MOTS(5) 215 : C----------------------------------------------- 216 : IMATRI.LISPRI(21) = MLMINC.MOTS(1) 217 : IMATRI.LISPRI(22) = MLMINC.MOTS(2) 218 : IMATRI.LISPRI(23) = MLMINC.MOTS(3) 219 : IMATRI.LISPRI(24) = MLMINC.MOTS(4) 220 : IMATRI.LISPRI(25) = MLMINC.MOTS(5) 221 : C----------------------------------------------- 222 : SEGDES MLMINC 223 : C Dual variables 224 : MLMINC = ILINC 225 : SEGACT MLMINC 226 : C----------------------------------------------- 227 : IMATRI.LISDUA(1) = MLMINC.MOTS(1) 228 : IMATRI.LISDUA(2) = MLMINC.MOTS(1) 229 : IMATRI.LISDUA(3) = MLMINC.MOTS(1) 230 : IMATRI.LISDUA(4) = MLMINC.MOTS(1) 231 : IMATRI.LISDUA(5) = MLMINC.MOTS(1) 232 : C----------------------------------------------- 233 : IMATRI.LISDUA(6) = MLMINC.MOTS(2) 234 : IMATRI.LISDUA(7) = MLMINC.MOTS(2) 235 : IMATRI.LISDUA(8) = MLMINC.MOTS(2) 236 : IMATRI.LISDUA(9) = MLMINC.MOTS(2) 237 : IMATRI.LISDUA(10) = MLMINC.MOTS(2) 238 : C---------------------------------------------- 239 : IMATRI.LISDUA(11) = MLMINC.MOTS(3) 240 : IMATRI.LISDUA(12) = MLMINC.MOTS(3) 241 : IMATRI.LISDUA(13) = MLMINC.MOTS(3) 242 : IMATRI.LISDUA(14) = MLMINC.MOTS(3) 243 : IMATRI.LISDUA(15) = MLMINC.MOTS(3) 244 : C---------------------------------------------- 245 : IMATRI.LISDUA(16) = MLMINC.MOTS(4) 246 : IMATRI.LISDUA(17) = MLMINC.MOTS(4) 247 : IMATRI.LISDUA(18) = MLMINC.MOTS(4) 248 : IMATRI.LISDUA(19) = MLMINC.MOTS(4) 249 : IMATRI.LISDUA(20) = MLMINC.MOTS(4) 250 : C---------------------------------------------- 251 : IMATRI.LISDUA(21) = MLMINC.MOTS(5) 252 : IMATRI.LISDUA(22) = MLMINC.MOTS(5) 253 : IMATRI.LISDUA(23) = MLMINC.MOTS(5) 254 : IMATRI.LISDUA(24) = MLMINC.MOTS(5) 255 : IMATRI.LISDUA(25) = MLMINC.MOTS(5) 256 : C---------------------------------------------- 257 : C---------------------------------------------- 258 : SEGDES MLMINC 259 : NBEL = NBELEM 260 : NBSOUS = 1 261 : NP = 2 262 : MP = 2 263 : SEGINI RR , RUX , RUY , RUZ, RRET , 264 : & UXR , UXUX , UXUY , UXUZ, UXRET , 265 : & UYR , UYUX , UYUY , UYUZ, UYRET , 266 : & UZR , UZUX , UZUY , UZUZ, UZRET , 267 : & RETR , RETUX , RETUY , RETUZ, RETRET 268 : C----------------------------------------------- 269 : C**** Duale = IMATRI.LISDUA(1) = 'RN' 270 : C Primale = IMATRI.LISPRI(1) = 'RN' 271 : C -> IMATRI.LIZAFM(1,1) = RR 272 : C 273 : C Duale = IMATRI.LISDUA(2) = 'RN' 274 : C Primale = IMATRI.LISPRI(1) = 'RUXN' 275 : C -> IMATRI.LIZAFM(1,2) = RUX 276 : C ... 277 : C----------------------------------------------- 278 : IMATRI.LIZAFM(1,1) = RR 279 : IMATRI.LIZAFM(1,2) = RUX 280 : IMATRI.LIZAFM(1,3) = RUY 281 : IMATRI.LIZAFM(1,4) = RUZ 282 : IMATRI.LIZAFM(1,5) = RRET 283 : C----------------------------------------------- 284 : IMATRI.LIZAFM(1,6) = UXR 285 : IMATRI.LIZAFM(1,7) = UXUX 286 : IMATRI.LIZAFM(1,8) = UXUY 287 : IMATRI.LIZAFM(1,9) = UXUZ 288 : IMATRI.LIZAFM(1,10) = UXRET 289 : C----------------------------------------------- 290 : IMATRI.LIZAFM(1,11) = UYR 291 : IMATRI.LIZAFM(1,12) = UYUX 292 : IMATRI.LIZAFM(1,13) = UYUY 293 : IMATRI.LIZAFM(1,14) = UYUZ 294 : IMATRI.LIZAFM(1,15) = UYRET 295 : C------------------------------------------------ 296 : IMATRI.LIZAFM(1,16) = UZR 297 : IMATRI.LIZAFM(1,17) = UZUX 298 : IMATRI.LIZAFM(1,18) = UZUY 299 : IMATRI.LIZAFM(1,19) = UZUZ 300 : IMATRI.LIZAFM(1,20) = UZRET 301 : C----------------------------------------------- 302 : IMATRI.LIZAFM(1,21) = RETR 303 : IMATRI.LIZAFM(1,22) = RETUX 304 : IMATRI.LIZAFM(1,23) = RETUY 305 : IMATRI.LIZAFM(1,24) = RETUZ 306 : IMATRI.LIZAFM(1,25) = RETRET 307 : C----------------------------------------------- 308 : DO IFAC = 1, NFAC, 1 309 : NGCF = MELEFE.NUM(2,IFAC) 310 : NLCF = MLENTF.LECT(NGCF) 311 : IF(NLCF .NE. IFAC)THEN 312 : WRITE(IOIMP,*) 'Il ne faut pas jouer avec la table domaine' 312 : CALL ERREUR(5) 313 : GOTO 9999 314 : ENDIF 315 : NGCG = MELEFE.NUM(1,IFAC) 316 : NGCD = MELEFE.NUM(3,IFAC) 317 : NLFL = MLELIM.LECT(NGCF) 318 : IF(NLFL .NE. 0)THEN 319 : C 320 : C********** The point belongs on BC -> No contribution to jacobian! 321 : C 322 : MELEDU.NUM(1,IFAC) = NGCG 323 : MELEDU.NUM(2,IFAC) = NGCD 324 : ELSEIF(NGCG .NE. NGCD)THEN 325 : C------------------------------------------------- 326 : C********** Les MELEMEs 327 : C------------------------------------------------- 328 : MELEDU.NUM(1,IFAC) = NGCG 329 : MELEDU.NUM(2,IFAC) = NGCD 330 : C------------------------------------------------- 331 : C********** Les etats G et D 332 : C------------------------------------------------- 333 : NLCG = MLENTC.LECT(NGCG) 334 : NLCD = MLENTC.LECT(NGCD) 335 : C------------------------------------------------- 336 : ROG = MPRN.VPOCHA(NLCG,1) 337 : PG = MPPN.VPOCHA(NLCG,1) 338 : UXG = MPUN.VPOCHA(NLCG,1) 339 : UYG = MPUN.VPOCHA(NLCG,2) 340 : UZG = MPUN.VPOCHA(NLCG,3) 341 : GAMG = MPGAMN.VPOCHA(NLCG,1) 342 : VOLG = MPVOLU.VPOCHA(NLCG,1) 343 : C------------------------------------------------- 344 : WVEC_L(1)=ROG 345 : WVEC_L(2)=UXG 346 : WVEC_L(3)=UYG 347 : WVEC_L(4)=UZG 348 : WVEC_L(5)=PG 349 : C------------------------------------------------- 350 : ROD = MPRN.VPOCHA(NLCD,1) 351 : PD = MPPN.VPOCHA(NLCD,1) 352 : UXD = MPUN.VPOCHA(NLCD,1) 353 : UYD = MPUN.VPOCHA(NLCD,2) 354 : UZD = MPUN.VPOCHA(NLCD,3) 355 : GAMD = MPGAMN.VPOCHA(NLCD,1) 356 : VOLD = MPVOLU.VPOCHA(NLCD,1) 357 : C------------------------------------------------ 358 : WVEC_R(1)=ROD 359 : WVEC_R(2)=UXD 360 : WVEC_R(3)=UYD 361 : WVEC_R(4)=UZD 362 : WVEC_R(5)=PD 363 : C------------------------------------------------ 364 : C 365 : C********** La normale G->D 366 : C La tangente 367 : C----------------------------------------------- 368 : SURF = MPOVSU.VPOCHA(NLCF,1) 369 : NVECT(1) = MPNORM.VPOCHA(NLCF,7) 370 : NVECT(2) = MPNORM.VPOCHA(NLCF,8) 371 : NVECT(3) = MPNORM.VPOCHA(NLCF,9) 372 : c----------------------------------------------- 373 : TVECT1(1) = MPNORM.VPOCHA(NLCF,1) 374 : TVECT1(2) = MPNORM.VPOCHA(NLCF,2) 375 : TVECT1(3) = MPNORM.VPOCHA(NLCF,3) 376 : c---------------------------------------------- 377 : TVECT2(1) = MPNORM.VPOCHA(NLCF,4) 378 : TVECT2(2) = MPNORM.VPOCHA(NLCF,5) 379 : TVECT2(3) = MPNORM.VPOCHA(NLCF,6) 380 : C----------------------------------------------- 381 : C********** La contribution de Gauche 382 : C----------------------------------------------- 382 : CALL CONJP4(JTL,JTR,WVEC_L,WVEC_R, 383 : & NVECT,TVECT1,TVECT2,GAMG) 384 : C---------------------------------------------------------- 385 : C 386 : C********** AB.AM(IFAC,IPRIM,IDUAL) 387 : C A = nom de l'inconnu duale (Ro,rUX,rUY,RET) 388 : C B = nom de l'inconnu primale (Ro,rUX,rUY,RET) 389 : C IPRIM = 1, 2 -> G, D 390 : C IDUAL = 1, 2 -> G, D 391 : C i.e. 392 : C A_IDUAL = AB.AM(IFAC,IPRIM,IDUAL) * B_IPRIM + ... 393 : C 394 : C 395 : C********** Dual RN 396 : C---------------------------------------------------------- 397 : FUNCEL = SURF * JTL(1,1) 398 : RR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 399 : RR.AM(IFAC,1,2) = FUNCEL / VOLD 400 : C---------------------------------------------------- 401 : FUNCEL = SURF * JTL(1,2) 402 : RUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 403 : RUX.AM(IFAC,1,2) = FUNCEL / VOLD 404 : C---------------------------------------------------- 405 : FUNCEL = SURF * JTL(1,3) 406 : RUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 407 : RUY.AM(IFAC,1,2) = FUNCEL / VOLD 408 : C---------------------------------------------------- 409 : FUNCEL = SURF * JTL(1,4) 410 : RUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 411 : RUZ.AM(IFAC,1,2) = FUNCEL / VOLD 412 : C---------------------------------------------------- 413 : FUNCEL = SURF * JTL(1,5) 414 : RRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 415 : RRET.AM(IFAC,1,2) = FUNCEL / VOLD 416 : C------------------------------------------------------------ 417 : C********** Dual RUXN 418 : C------------------------------------------------------------ 419 : FUNCEL = SURF * JTL(2,1) 420 : UXR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 421 : UXR.AM(IFAC,1,2) = FUNCEL / VOLD 422 : C---------------------------------------------------- 423 : FUNCEL = SURF * JTL(2,2) 424 : UXUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 425 : UXUX.AM(IFAC,1,2) = FUNCEL / VOLD 426 : C---------------------------------------------------- 427 : FUNCEL = SURF * JTL(2,3) 428 : UXUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 429 : UXUY.AM(IFAC,1,2) = FUNCEL / VOLD 430 : C---------------------------------------------------- 431 : FUNCEL = SURF * JTL(2,4) 432 : UXUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 433 : UXUZ.AM(IFAC,1,2) = FUNCEL / VOLD 434 : C---------------------------------------------------- 435 : FUNCEL = SURF * JTL(2,5) 436 : UXRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 437 : UXRET.AM(IFAC,1,2) = FUNCEL / VOLD 438 : C------------------------------------------------------------- 439 : C********** Dual RUYN 440 : C------------------------------------------------------------- 441 : FUNCEL = SURF * JTL(3,1) 442 : UYR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 443 : UYR.AM(IFAC,1,2) = FUNCEL / VOLD 444 : C---------------------------------------------------- 445 : FUNCEL = SURF * JTL(3,2) 446 : UYUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 447 : UYUX.AM(IFAC,1,2) = FUNCEL / VOLD 448 : C---------------------------------------------------- 449 : FUNCEL = SURF * JTL(3,3) 450 : UYUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 451 : UYUY.AM(IFAC,1,2) = FUNCEL / VOLD 452 : C---------------------------------------------------- 453 : FUNCEL = SURF * JTL(3,4) 454 : UYUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 455 : UYUZ.AM(IFAC,1,2) = FUNCEL / VOLD 456 : C---------------------------------------------------- 457 : FUNCEL = SURF * JTL(3,5) 458 : UYRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 459 : UYRET.AM(IFAC,1,2) = FUNCEL / VOLD 460 : C------------------------------------------------------------- 461 : C********** Dual RUZN 462 : C------------------------------------------------------------- 463 : FUNCEL = SURF * JTL(4,1) 464 : UZR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 465 : UZR.AM(IFAC,1,2) = FUNCEL / VOLD 466 : C---------------------------------------------------- 467 : FUNCEL = SURF * JTL(4,2) 468 : UZUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 469 : UZUX.AM(IFAC,1,2) = FUNCEL / VOLD 470 : C---------------------------------------------------- 471 : FUNCEL = SURF * JTL(4,3) 472 : UZUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 473 : UZUY.AM(IFAC,1,2) = FUNCEL / VOLD 474 : C---------------------------------------------------- 475 : FUNCEL = SURF * JTL(4,4) 476 : UZUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 477 : UZUZ.AM(IFAC,1,2) = FUNCEL / VOLD 478 : C---------------------------------------------------- 479 : FUNCEL = SURF * JTL(4,5) 480 : UZRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 481 : UZRET.AM(IFAC,1,2) = FUNCEL / VOLD 482 : C------------------------------------------------------------- 483 : C********** Dual RETN 484 : C------------------------------------------------------------- 485 : FUNCEL = SURF * JTL(5,1) 486 : RETR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 487 : RETR.AM(IFAC,1,2) = FUNCEL / VOLD 488 : C----------------------------------------------------- 489 : FUNCEL = SURF * JTL(5,2) 490 : RETUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 491 : RETUX.AM(IFAC,1,2) = FUNCEL / VOLD 492 : C----------------------------------------------------- 493 : FUNCEL = SURF * JTL(5,3) 494 : RETUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 495 : RETUY.AM(IFAC,1,2) = FUNCEL / VOLD 496 : C----------------------------------------------------- 497 : FUNCEL = SURF * JTL(5,4) 498 : RETUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 499 : RETUZ.AM(IFAC,1,2) = FUNCEL / VOLD 500 : C----------------------------------------------------- 501 : FUNCEL = SURF * JTL(5,5) 502 : RETRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 503 : RETRET.AM(IFAC,1,2) = FUNCEL / VOLD 504 : C------------------------------------------------------------- 505 : C 506 : C********** La contribution de D 507 : C 508 : c NVECT(1) = -1.0D0 * NVECT(1) 509 : c NVECT(2) = -1.0D0 * NVECT(2) 510 : c TVECT(1) = -1.0D0 * TVECT(1) 511 : c TVECT(2) = -1.0D0 * TVECT(2) 512 : 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------------------------------------------- 704 : CALL CONJP5(JTL,JTR,WVEC_L,WVEC_R, 705 : & NVECT,TVECT1,TVECT2,GAMG) 706 : C-------------------------------------------------- 707 : C********** Dual RN 708 : C-------------------------------------------------- 709 : RR.AM(IFAC,1,1) = 0.0D0 710 : RR.AM(IFAC,1,2) = 0.0D0 711 : C----------------------------------- 712 : RUX.AM(IFAC,1,1) = 0.0D0 713 : RUX.AM(IFAC,1,2) = 0.0D0 714 : C----------------------------------- 715 : RUY.AM(IFAC,1,1) = 0.0D0 716 : RUY.AM(IFAC,1,2) = 0.0D0 717 : C----------------------------------- 718 : RUZ.AM(IFAC,1,1) = 0.0D0 719 : RUZ.AM(IFAC,1,2) = 0.0D0 720 : C----------------------------------- 721 : RRET.AM(IFAC,1,1) = 0.0D0 722 : RRET.AM(IFAC,1,2) = 0.0D0 723 : C--------------------------------------------------- 724 : C********** Dual RUXN 725 : C--------------------------------------------------- 726 : FUNCEL = SURF * JTL(2,1) 727 : UXR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 728 : UXR.AM(IFAC,1,2) = 0.0D0 729 : C---------------------------------------------------- 730 : FUNCEL = SURF * JTL(2,2) 731 : UXUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 732 : UXUX.AM(IFAC,1,2) = 0.0D0 733 : C---------------------------------------------------- 734 : FUNCEL = SURF * JTL(2,3) 735 : UXUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 736 : UXUY.AM(IFAC,1,2) = 0.0D0 737 : C---------------------------------------------------- 738 : FUNCEL = SURF * JTL(2,4) 739 : UXUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 740 : UXUZ.AM(IFAC,1,2) = 0.0D0 741 : C---------------------------------------------------- 742 : FUNCEL = SURF * JTL(2,5) 743 : UXRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 744 : UXRET.AM(IFAC,1,2) = 0.0D0 745 : C-------------------------------------------------------- 746 : C********** Dual RUYN 747 : C-------------------------------------------------------- 748 : FUNCEL = SURF * JTL(3,1) 749 : UYR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 750 : UYR.AM(IFAC,1,2) = 0.0D0 751 : C---------------------------------------------------- 752 : FUNCEL = SURF * JTL(3,2) 753 : UYUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 754 : UYUX.AM(IFAC,1,2) = 0.0D0 755 : C---------------------------------------------------- 756 : FUNCEL = SURF * JTL(3,3) 757 : UYUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 758 : UYUY.AM(IFAC,1,2) = 0.0D0 759 : C---------------------------------------------------- 760 : FUNCEL = SURF * JTL(3,4) 761 : UYUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 762 : UYUZ.AM(IFAC,1,2) = 0.0D0 763 : C---------------------------------------------------- 764 : FUNCEL = SURF * JTL(3,5) 765 : UYRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 766 : UYRET.AM(IFAC,1,2) = 0.0D0 767 : C-------------------------------------------------------- 768 : C********** Dual RUZN 769 : C-------------------------------------------------------- 770 : FUNCEL = SURF * JTL(4,1) 771 : UZR.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 772 : UZR.AM(IFAC,1,2) = 0.0D0 773 : C---------------------------------------------------- 774 : FUNCEL = SURF * JTL(4,2) 775 : UZUX.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 776 : UZUX.AM(IFAC,1,2) = 0.0D0 777 : C---------------------------------------------------- 778 : FUNCEL = SURF * JTL(4,3) 779 : UZUY.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 780 : UZUY.AM(IFAC,1,2) = 0.0D0 781 : C---------------------------------------------------- 782 : FUNCEL = SURF * JTL(4,4) 783 : UZUZ.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 784 : UZUZ.AM(IFAC,1,2) = 0.0D0 785 : C---------------------------------------------------- 786 : FUNCEL = SURF * JTL(4,5) 787 : UZRET.AM(IFAC,1,1) = -1.0D0 * FUNCEL / VOLG 788 : UZRET.AM(IFAC,1,2) = 0.0D0 789 : C--------------------------------------------------------- 790 : C********** Dual RETN 791 : C--------------------------------------------------------- 792 : RETR.AM(IFAC,1,1) = 0.0D0 793 : RETR.AM(IFAC,1,2) = 0.0D0 794 : C-------------------------------------- 795 : RETUX.AM(IFAC,1,1) = 0.0D0 796 : RETUX.AM(IFAC,1,2) = 0.0D0 797 : C-------------------------------------- 798 : RETUY.AM(IFAC,1,1) = 0.0D0 799 : RETUY.AM(IFAC,1,2) = 0.0D0 800 : C-------------------------------------- 801 : RETUZ.AM(IFAC,1,1) = 0.0D0 802 : RETUZ.AM(IFAC,1,2) = 0.0D0 803 : C-------------------------------------- 804 : RETRET.AM(IFAC,1,1) = 0.0D0 805 : RETRET.AM(IFAC,1,2) = 0.0D0 806 : C---------------------------------------------------------- 807 : C********** Dual RN 808 : C---------------------------------------------------------- 809 : RR.AM(IFAC,2,2) = 0.0D0 810 : RR.AM(IFAC,2,1) = 0.0D0 811 : C----------------------------------- 812 : RUX.AM(IFAC,2,2) = 0.0D0 813 : RUX.AM(IFAC,2,1) = 0.0D0 814 : C----------------------------------- 815 : RUY.AM(IFAC,2,2) = 0.0D0 816 : RUY.AM(IFAC,2,1) = 0.0D0 817 : C----------------------------------- 818 : RUZ.AM(IFAC,2,2) = 0.0D0 819 : RUZ.AM(IFAC,2,1) = 0.0D0 820 : C----------------------------------- 821 : RRET.AM(IFAC,2,2) = 0.0D0 822 : RRET.AM(IFAC,2,1) = 0.0D0 823 : C---------------------------------------------------------- 824 : C********** Dual RUXN 825 : C---------------------------------------------------------- 826 : UXR.AM(IFAC,2,2) = 0.0D0 827 : UXR.AM(IFAC,2,1) = 0.0D0 828 : C------------------------------------ 829 : UXUX.AM(IFAC,2,2) = 0.0D0 830 : UXUX.AM(IFAC,2,1) = 0.0D0 831 : C------------------------------------ 832 : UXUY.AM(IFAC,2,2) = 0.0D0 833 : UXUY.AM(IFAC,2,1) = 0.0D0 834 : C------------------------------------ 835 : UXUZ.AM(IFAC,2,2) = 0.0D0 836 : UXUZ.AM(IFAC,2,1) = 0.0D0 837 : C------------------------------------ 838 : UXRET.AM(IFAC,2,2) = 0.0D0 839 : UXRET.AM(IFAC,2,1) = 0.0D0 840 : C---------------------------------------------------------- 841 : C********** Dual RUYN 842 : C---------------------------------------------------------- 843 : UYR.AM(IFAC,2,2) = 0.0D0 844 : UYR.AM(IFAC,2,1) = 0.0D0 845 : C------------------------------------ 846 : UYUX.AM(IFAC,2,2) = 0.0D0 847 : UYUX.AM(IFAC,2,1) = 0.0D0 848 : C------------------------------------ 849 : UYUY.AM(IFAC,2,2) = 0.0D0 850 : UYUY.AM(IFAC,2,1) = 0.0D0 851 : C------------------------------------ 852 : UYUZ.AM(IFAC,2,2) = 0.0D0 853 : UYUZ.AM(IFAC,2,1) = 0.0D0 854 : C------------------------------------ 855 : UYRET.AM(IFAC,2,2) = 0.0D0 856 : UYRET.AM(IFAC,2,1) = 0.0D0 857 : C---------------------------------------------------------- 858 : C********** Dual RUZN 859 : C---------------------------------------------------------- 860 : UZR.AM(IFAC,2,2) = 0.0D0 861 : UZR.AM(IFAC,2,1) = 0.0D0 862 : C------------------------------------ 863 : UZUX.AM(IFAC,2,2) = 0.0D0 864 : UZUX.AM(IFAC,2,1) = 0.0D0 865 : C------------------------------------ 866 : UZUY.AM(IFAC,2,2) = 0.0D0 867 : UZUY.AM(IFAC,2,1) = 0.0D0 868 : C------------------------------------ 869 : UZUZ.AM(IFAC,2,2) = 0.0D0 870 : UZUZ.AM(IFAC,2,1) = 0.0D0 871 : C------------------------------------ 872 : UZRET.AM(IFAC,2,2) = 0.0D0 873 : UZRET.AM(IFAC,2,1) = 0.0D0 874 : C--------------------------------------------------------- 875 : C********** Dual RETN 876 : C--------------------------------------------------------- 877 : RETR.AM(IFAC,2,2) = 0.0D0 878 : RETR.AM(IFAC,2,1) = 0.0D0 879 : C------------------------------------- 880 : RETUX.AM(IFAC,2,2) = 0.0D0 881 : RETUX.AM(IFAC,2,1) = 0.0D0 882 : C------------------------------------- 883 : RETUY.AM(IFAC,2,2) = 0.0D0 884 : RETUY.AM(IFAC,2,1) = 0.0D0 885 : C------------------------------------- 886 : RETUZ.AM(IFAC,2,2) = 0.0D0 887 : RETUZ.AM(IFAC,2,1) = 0.0D0 888 : C------------------------------------- 889 : RETRET.AM(IFAC,2,2) = 0.0D0 890 : RETRET.AM(IFAC,2,1) = 0.0D0 891 : C-------------------------------------- 892 : ENDIF 893 : ENDDO 894 : C------------------ 895 : SEGDES MELEMC 896 : SEGDES MELEFE 897 : SEGDES MELEMF 898 : C------------------ 899 : SEGDES MPOVSU 900 : SEGDES MPVOLU 901 : SEGDES MPNORM 902 : C------------------ 903 : SEGDES MPRN 904 : SEGDES MPPN 905 : SEGDES MPUN 906 : SEGDES MPGAMN 907 : C------------------ 908 : SEGDES MELEDU 909 : SEGDES MATRIK 910 : SEGDES IMATRI 911 : C------------------ 912 : SEGDES RR , RUX , RUY , RUZ , RRET , 913 : & UXR , UXUX , UXUY , UXUZ , UXRET , 914 : & UYR , UYUX , UYUY , UYUZ , UYRET , 915 : & UZR , UZUX , UZUY , UZUZ , UZRET , 916 : & RETR , RETUX , RETUY , RETUZ , RETRET 917 : 918 : SEGSUP MLENTC 919 : SEGSUP MLENTF 920 : SEGSUP MLELIM 921 : C 922 : 9999 CONTINUE 923 : RETURN 924 : END 925 : 926 : 927 : 928 : 929 : 930 : 931 : 932 : 933 : 934 : 935 : 936 : 937 : 938 : 939 :
© Cast3M 2003 - All rights reserved.
Disclaimer