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