1 : * PREPAENC PROCEDUR GOUNAND 12/12/20 21:15:21 7633 2 : 'DEBPROC' PREPAENC rxt*'TABLE ' TBT*'TABLE ' 3 : geo*'TABLE ' TIC*'TABLE ' ; 4 : *---------------------------------------------------------- 5 : *---- Suivi des modifications 6 : *--- 10/01/00 : Creation 7 : * 8 : *--- 14/03/05 option THERCO pour thermique implicite (Alex Bleyer et JPM) 9 : * 10 : * 1/changer discrH en discr 11 : * 12 : * 13 : * 14 : *---------------------------------------------------------- 15 : 16 : *---------------------------------------------------------- 17 : * Test des entrees et debut de preparation de l'algorithme 18 : *---------------------------------------------------------- 19 : 20 : 'MESS' '==> PREPARATION DES EQUATIONS A RESOUDRE' ; 21 : 22 : *-------------------------------------------------------- 23 : ********************* PREPARATION *********************** 24 : *-------------------------------------------------------- 25 : 26 : Si(NON (EXIST TBT 'VERSION')) ; 27 : TBT.'VERSION'=0 ; 28 : Finsi ; 29 : 30 : Si ('EXIST' TBT 'TTsortie') ; 31 : TTsortie=TBT.'TTsortie' ; 32 : Sinon ; 33 : TTsortie=FAUX ; 34 : Finsi ; 35 : 36 : Si ('EXIST' TBT 'TTbreche') ; 37 : TTbreche=TBT.'TTbreche' ; 38 : Sinon ; 39 : TTbreche=FAUX ; 40 : Finsi ; 41 : 42 : Si ('EXIST' TBT 'TFIMP') ; 43 : TFIMP=TBT.'TFIMP' ; 44 : Sinon ; 45 : TFIMP=FAUX ; 46 : Finsi ; 47 : 48 : Si ('EXIST' TBT 'TTIMP') ; 49 : TTIMP=TBT.'TTIMP' ; 50 : Sinon ; 51 : TTIMP=FAUX ; 52 : Finsi ; 53 : 54 : Si ('EXIST' TBT 'TPAROIS') ; 55 : TPAROIS=TBT.'TPAROIS' ; 56 : Sinon ; 57 : TPAROIS=FAUX ; 58 : Finsi ; 59 : 60 : idim = vale 'DIME'; 61 : DIM3D=FAUX ; 62 : Si(EGA idim 3); 63 : DIM3D=VRAI ; 64 : Finsi ; 65 : 66 : *----------------------------------------------------------- 67 : * Definition du modele FLUIDE : NAVIER_STOKES 68 : * appel a MODELE avec la discretisation choisie DISCR 69 : *----------------------------------------------------------- 70 : 71 : * On Crée la géométrie discrérisée pour le fluide 72 : vtf = rxt.'vtf' ; 73 : ltpvf= vtf ELEM 'TYPE' ; 74 : tyell2=mots 'TRI3' 'QUA4' ; 75 : tyell3=mots 'CUB8' 'PRI6' 'TET4' ; 76 : tyelq2=mots 'TRI6' 'QUA8' ; 77 : tyelq3=mots 'CU20' 'PR15' 'TE10' ; 78 : nbe=dime ltpvf ; 79 : tyelvf='XXXX' ; 80 : 81 : Si('EXIST' tyell2 ('EXTR' 1 ltpvf)) ; 82 : tyelvf='LI2D' ; 83 : Si (NON ('EGA' (VALE DIME) 2)) ; 84 : Mess '*********************************************************' ; 85 : Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ; 86 : Mess ' ' ; 87 : Mess 'Maillage Foireux ' ; 88 : Mess ' ' ; 89 : Mess '*********************************************************' ; 90 : ERREUR 21 ; 91 : Finsi ; 92 : Finsi ; 93 : 94 : Si('EXIST' tyell3 ('EXTR' 1 ltpvf)) ; 95 : tyelvf='LI3D' ; 96 : Si (NON ('EGA' (VALE DIME) 3)) ; 97 : Mess '*********************************************************' ; 98 : Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ; 99 : Mess ' ' ; 100 : Mess 'Maillage Foireux ' ; 101 : Mess ' ' ; 102 : Mess '*********************************************************' ; 103 : ERREUR 21 ; 104 : Finsi ; 105 : Finsi ; 106 : 107 : Si('EXIST' tyelq2 ('EXTR' 1 ltpvf)) ; 108 : tyelvf='QD2D' ; 109 : Si (NON ('EGA' (VALE DIME) 2)) ; 110 : Mess '*********************************************************' ; 111 : Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ; 112 : Mess ' ' ; 113 : Mess 'Maillage Foireux ' ; 114 : Mess ' ' ; 115 : Mess '*********************************************************' ; 116 : ERREUR 21 ; 117 : Finsi ; 118 : Finsi ; 119 : 120 : Si('EXIST' tyelq3 ('EXTR' 1 ltpvf)) ; 121 : tyelvf='QD3D' ; 122 : Si (NON ('EGA' (VALE DIME) 3)) ; 123 : Mess '*********************************************************' ; 124 : Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ; 125 : Mess ' ' ; 126 : Mess 'Maillage Foireux ' ; 127 : Mess ' ' ; 128 : Mess '*********************************************************' ; 129 : ERREUR 21 ; 130 : Finsi ; 131 : Finsi ; 132 : 133 : Si(EGA 'LI2D' tyelvf) ; 134 : repeter bcle nbe ; 135 : Si(NON('EXIST' tyell2 ('EXTR' &bcle ltpvf))) ; 136 : ERREUR 21 ; 137 : Finsi ; 138 : Fin bcle ; 139 : Finsi ; 140 : 141 : Si(EGA 'LI3D' tyelvf) ; 142 : repeter bcle nbe ; 143 : Si(NON('EXIST' tyell3 ('EXTR' &bcle ltpvf))) ; 144 : ERREUR 21 ; 145 : Finsi ; 146 : Fin bcle ; 147 : Finsi ; 148 : 149 : Si(EGA tyelvf 'QD2D') ; 150 : repeter bcle nbe ; 151 : Si(NON('EXIST' tyelq2 ('EXTR' &bcle ltpvf))) ; 152 : ERREUR 21 ; 153 : Finsi ; 154 : Fin bcle ; 155 : Finsi ; 156 : 157 : Si(EGA tyelvf 'QD3D') ; 158 : repeter bcle nbe ; 159 : Si(NON('EXIST' tyelq3 ('EXTR' &bcle ltpvf))) ; 160 : ERREUR 21 ; 161 : Finsi ; 162 : Fin bcle ; 163 : Finsi ; 164 : 165 : epsi = GEO.'epsi' ; 166 : mdns = 'NAVIER_STOKES' ; 167 : Mvtf = 'CHAN' vtf 'QUAF' ; 168 : elim Mvtf rxt.'epsi' ; 169 : $vtf = 'MODE' Mvtf mdns TBT.'discr' ; 170 : VTotal = 'SOMT' ('DOMA' $vtf 'VOLUME') ; 171 : GEO.'Mvtf' = Mvtf ; 172 : GEO.'$vtf' = $vtf ; 173 : GEO.'VTotal'= VTotal ; 174 : GEO.'vtf' =doma $vtf MAILLAGE ; 175 : GEO.'Diag' = doma $vtf 'XXDIAGSI' ; 176 : GEO.'cx' =coor 1 vtf ; 177 : GEO.'cy' =coor 2 vtf ; 178 : Si(Ega IDIM 3) ; 179 : GEO.'cz' =coor 3 vtf ; 180 : Finsi ; 181 : 182 : *----------------------------------------------------------- 183 : * sortie menvfU 184 : * ............__________________ 185 : * | | 186 : * . | 187 : * | | 188 : * . | 189 : * | | 190 : * . | 191 : * | menvfU | 192 : * . | 193 : * | | 194 : * . | 195 : * |axe | 196 : * . | 197 : * | | 198 : * . | 199 : * | |_ 200 : * . |/| 201 : * | |/| 202 : * . |/| 203 : * | |/| 204 : * . |/| 205 : * | menvfU |/| 206 : * . |/| 207 : * | |/| 208 : * . |/| 209 : * | |/| 210 : * . |/| 211 : * | menvfU |/| 212 : * ............__________________|/| 213 : * breche 214 : * 215 : * 216 : *----------------------------------------------------------- 217 : * Creation de l'enveloppe du maillage FLUIDE 218 : 219 : GEO.'Mmenvf' = 'DOMA' $vtf 'ENVELOPP' ; 220 : GEO.'$menvf' = 'MODE' GEO.'Mmenvf' 'NAVIER_STOKES' TBT.'discr' ; 221 : GEO.'menvf' = 'DOMA' GEO.'$menvf' maillage ; 222 : GEO.'MmenvfU' = GEO.'Mmenvf' ; 223 : GEO.'$menvfU' = 'MODE' GEO.'MmenvfU' 'NAVIER_STOKES' TBT.'discr'; 224 : GEO.'menvfU' = 'DOMA' GEO.'$menvfU' maillage ; 225 : *---------------------------------------------------------- 226 : * Traitement de l'axe en 2D et des plans de symétrie en 3D 227 : * 228 : 'SI' (TBT.'Taxe') ; 229 : axe = rxt.'axe' ; 230 : Maxe= 'CHAN' axe 'QUAF' ; 231 : elim Maxe rxt.'epsi' ; 232 : 'ELIM' (Maxe 'ET' Mvtf) epsi ; 233 : 234 : GEO.'MmenvfU' = 'DIFF' GEO.'MmenvfU' Maxe ; 235 : GEO.'$menvfU' = 'MODE' GEO.'MmenvfU' 'NAVIER_STOKES' TBT.'discr' ; 236 : GEO.'menvfU' = 'DOMA' GEO.'$menvfU' maillage ; 237 : 238 : $axe = 'MODE' Maxe mdns TBT.'discr' ; 239 : axe = 'DOMA' $axe 'MAILLAGE' ; 240 : GEO.'$axe'=$axe ; 241 : GEO.'axe'=axe ; 242 : 'FINSI' ; 243 : * 244 : * 245 : *----------------------------------------------------------- 246 : *----------------------------------------------------------- 247 : * Traitement d'un nombre de brčches et sorties quelconques 248 : * - vérification de son inclusion dans l'enveloppe 249 : * - définition de BRECHEI : maillage BRECHE interieur 250 : * - définition de BRECHEC : maillage du contour de la brčche 251 : 252 : Si TTsortie ; 253 : *µµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµ 254 : 255 : NBR=dime rxt.'Sorties' ; 256 : mess ' Il y a ' NBR ' Sorties)' ; 257 : 258 : ibr=index (rxt.'Sorties') ; 259 : 260 : Repeter BBRS NBR ; 261 : Sriches=rxt.'Sorties'.(ibr.&BBRS) ; 262 : 'MESS' ' ==> Verification inclusion Sortie/ENVELOPPE ' 263 : 'pour la sortie ' (ibr.&BBRS) ; 264 : 265 : sreche = Sriches.'Maillage' ; 266 : Si DIM3D ; 267 : * diru=(Sriches.'diru')/(norm Sriches.'diru') ; 268 : Byint = BARY (vtf elem 'APPUYE' 'LARGEMENT' sreche) ; 269 : Bybre = BARY sreche ; 270 : diru = Bybre moins Byint ; 271 : sreche = ORIE sreche 'DIRECTION' diru ; 272 : Finsi ; 273 : Msreche = 'CHAN' sreche 'QUAF' ; 274 : elim Msreche rxt.'epsi' ; 275 : $sreche = 'MODE' Msreche mdns TBT.'discr' ; 276 : sreche = 'DOMA' $sreche 'MAILLAGE' ; 277 : Ssreche = 'SOMT' ('DOMA' $sreche 'VOLUME') ; 278 : Dsreche = Ssreche**(1./(VALE DIME)) ; 279 : 280 : 'ELIM' epsi (Mvtf 'ET' Msreche ) ; 281 : 282 : Sriches.'Msreche' = Msreche ; 283 : Sriches.'$sreche' = $sreche ; 284 : Sriches.'sreche' = sreche ; 285 : Sriches.'Ssreche' = Ssreche ; 286 : Sriches.'Dsreche' = Dsreche ; 287 : 288 : 289 : ai= 'INTER' Msreche (GEO.'Mmenvf') ; 290 : nbai= nbel ai ; 291 : Si (ega nbai 0) ; 292 : Mess ' Sortie non incluse dans l enveloppe ' ; 293 : 'ERRE' 21 ; 294 : Finsi ; 295 : 296 : GEO.'MmenvfU' = 'DIFF' GEO.'MmenvfU' Msreche ; 297 : GEO.'$menvfU' = 'MODE' GEO.'MmenvfU' 'NAVIER_STOKES' TBT.'discr' ; 298 : GEO.'menvfU' = 'DOMA' GEO.'$menvfU' maillage ; 299 : 300 : 301 : * Travail en 2D avec présence possible de l'axe de symétrie 302 : 303 : 'SI' ('NON' DIM3D) ; 304 : sreche1 = 'CHAN' sreche 'POI1' ; 305 : nbbc='NBEL' sreche1 ; 306 : 307 : 'SI' (TBT.'Taxe') ; 308 : srechec = 'ELEM' sreche1 ('LECT' nbbc) ; 309 : srechei = 'ELEM' sreche1 ('LECT' 1 'PAS' 1 (nbbc - 1)) ; 310 : 'SINON' ; 311 : srechec = 'ELEM' sreche1 ('LECT' 1 nbbc) ; 312 : srechei = 'ELEM' sreche1 ('LECT' 2 'PAS' 1 (nbbc - 1)) ; 313 : 'FINSI' ; 314 : a = 'NBEL' brechei ; 315 : 'SI' ('EGA' a 0) ; 316 : 'MESS' '==> Le cas ne comporte pas de Sortie CORRECTE' ; 317 : 'ERRE' 21 ; 318 : 'FINSI' ; 319 : 'SINON' ; 320 : 321 : * Travail en 3D pour définir la brčche 322 : 323 : srechec = 'CONT' sreche ; 324 : sreche1 = 'CHAN' sreche 'POI1' ; 325 : srechei = 'DIFF' sreche1 ( 'CHAN' srechec 'POI1') ; 326 : a = 'NBEL' srechei ; 327 : 'SI' ('EGA' a 0) ; 328 : 'MESS' '==> Le cas ne comporte pas de Sortie CORRECTE' ; 329 : 'ERRE' 21 ; 330 : 'FINSI' ; 331 : 'FINSI' ; 332 : 333 : 334 : srechei= srechei 'COUL' 'ROUG' ; 335 : srechec= srechec 'COUL' 'VERT' ; 336 : Sriches.'srechec'=srechec ; 337 : Sriches.'srechei'=srechei ; 338 : 339 : FIN BBRS ; 340 : FINSI ; 341 : *µµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµ 342 : 343 : Si TTbreche ; 344 : *µµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµ 345 : 346 : NBR=dime rxt.'Breches' ; 347 : mess ' Il y a ' NBR ' Brčche(s)' ; 348 : 349 : ibr=index (rxt.'Breches') ; 350 : 351 : Repeter BBRS NBR ; 352 : Briches=rxt.'Breches'.(ibr.&BBRS) ; 353 : 'MESS' ' ==> Verification inclusion BRECHE/ENVELOPPE ' 354 : 'pour la brčche ' (ibr.&BBRS) ; 355 : 356 : creche = Briches.'Maillage' ; 357 : Si DIM3D ; 358 : * diru=(Briches.'diru')/(norm Briches.'diru') ; 359 : Byint = BARY (vtf elem 'APPUYE' 'LARGEMENT' creche) ; 360 : Bybre = BARY creche ; 361 : diru = Bybre moins Byint ; 362 : creche = ORIE creche 'DIRECTION' diru ; 363 : Finsi ; 364 : Mcreche = 'CHAN' creche 'QUAF' ; 365 : elim Mcreche rxt.'epsi' ; 366 : $creche = 'MODE' Mcreche mdns TBT.'discr' ; 367 : creche = 'DOMA' $creche 'MAILLAGE' ; 368 : Screche = 'SOMT' ('DOMA' $creche 'VOLUME') ; 369 : Dcreche = Screche**(1./(VALE DIME)) ; 370 : 371 : 'ELIM' epsi (Mvtf 'ET' Mcreche ) ; 372 : 373 : Briches.'Mbreche' = Mcreche ; 374 : Briches.'$breche' = $creche ; 375 : Briches.'breche' = creche ; 376 : Briches.'Sbreche' = Screche ; 377 : Briches.'Dbreche' = Dcreche ; 378 : 379 : 380 : ai= 'INTER' Mcreche (GEO.'Mmenvf') ; 381 : nbai= nbel ai ; 382 : Si (ega nbai 0) ; 383 : Mess ' Breche non incluse dans l enveloppe ' ; 384 : 'ERRE' 21 ; 385 : Finsi ; 386 : 387 : GEO.'MmenvfU' = 'DIFF' GEO.'MmenvfU' Mcreche ; 388 : GEO.'$menvfU' = 'MODE' GEO.'MmenvfU' 'NAVIER_STOKES' TBT.'discr' ; 389 : GEO.'menvfU' = 'DOMA' GEO.'$menvfU' maillage ; 390 : 391 : 392 : * Travail en 2D avec présence possible de l'axe de symétrie 393 : 394 : 'SI' ('NON' DIM3D) ; 395 : creche1 = 'CHAN' creche 'POI1' ; 396 : nbbc='NBEL' creche1 ; 397 : 398 : 'SI' (TBT.'Taxe') ; 399 : crechec = 'ELEM' creche1 ('LECT' nbbc) ; 400 : crechei = 'ELEM' creche1 ('LECT' 1 'PAS' 1 (nbbc - 1)) ; 401 : 'SINON' ; 402 : crechec = 'ELEM' creche1 ('LECT' 1 nbbc) ; 403 : crechei = 'ELEM' creche1 ('LECT' 2 'PAS' 1 (nbbc - 1)) ; 404 : 'FINSI' ; 405 : a = 'NBEL' crechei ; 406 : 'SI' ('EGA' a 0) ; 407 : 'MESS' '==> Le cas ne comporte pas de BRECHE CORRECTE'; 408 : 'ERRE' 21 ; 409 : 'FINSI' ; 410 : 'SINON' ; 411 : 412 : * Travail en 3D pour définir la brčche 413 : 414 : crechec = 'CONT' creche ; 415 : creche1 = 'CHAN' creche 'POI1' ; 416 : crechei = 'DIFF' creche1 ( 'CHAN' crechec 'POI1') ; 417 : a = 'NBEL' crechei ; 418 : 'SI' ('EGA' a 0) ; 419 : 'MESS' '==> Le cas ne comporte pas de BRECHE CORRECTE'; 420 : 'ERRE' 21 ; 421 : 'FINSI' ; 422 : 'FINSI' ; 423 : 424 : 425 : crechei= crechei 'COUL' 'ROUG' ; 426 : crechec= crechec 'COUL' 'VERT' ; 427 : Briches.'brechec'=crechec ; 428 : Briches.'brechei'=crechei ; 429 : 430 : 431 : FIN BBRS ; 432 : FINSI ; 433 : *µµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµµ 434 : 435 : *----------------------------------------------------------- 436 : *----------------------------------------------------------- 437 : *----------------------------------------------------------- 438 : * Traitement des BRECHES : 439 : * - vérification de son inclusion dans l'enveloppe 440 : * - définition de BRECHEI : maillage BRECHE interieur 441 : * - définition de BRECHEC : maillage du contour de la brčche 442 : 443 : Si (TBT.'Tbreche') ; 444 : breche = rxt.'breche' ; 445 : Si DIM3D ; 446 : diru1=(TBT.'diru1')/(norm TBT.'diru1') ; 447 : breche = ORIE breche 'DIRECTION' diru1 ; 448 : Finsi ; 449 : Mbreche = 'CHAN' breche 'QUAF' ; 450 : elim Mbreche rxt.'epsi' ; 451 : $breche = 'MODE' Mbreche mdns TBT.'discr' ; 452 : breche = 'DOMA' $breche 'MAILLAGE' ; 453 : Sbreche = 'SOMT' ('DOMA' $breche 'VOLUME') ; 454 : Dbreche = Sbreche**(1./(VALE DIME)) ; 455 : 456 : 'ELIM' epsi (Mvtf 'ET' Mbreche ) ; 457 : 458 : GEO.'Mbreche' = Mbreche ; 459 : GEO.'$breche' = $breche ; 460 : GEO.'breche' = breche ; 461 : GEO.'Sbreche' = Sbreche ; 462 : GEO.'Dbreche' = Dbreche ; 463 : 464 : 'MESS' ' ==> Verification inclusion BRECHE ENVELOPPE' ; 465 : 466 : ai= 'INTER' Mbreche (GEO.'Mmenvf') ; 467 : nbai= nbel ai ; 468 : Si (ega nbai 0) ; 469 : Mess ' Breche non incluse dans l enveloppe ' ; 470 : 'ERRE' 21 ; 471 : Finsi ; 472 : 473 : GEO.'MmenvfU' = 'DIFF' GEO.'MmenvfU' Mbreche ; 474 : GEO.'$menvfU' = 'MODE' GEO.'MmenvfU' 'NAVIER_STOKES' TBT.'discr' ; 475 : GEO.'menvfU' = 'DOMA' GEO.'$menvfU' maillage ; 476 : 477 : 478 : * Travail en 2D avec présence possible de l'axe de symétrie 479 : 480 : 'SI' ('NON' DIM3D) ; 481 : breche1 = 'CHAN' breche 'POI1' ; 482 : nbbc='NBEL' breche1 ; 483 : 484 : 'SI' (TBT.'Taxe') ; 485 : brechec = 'ELEM' breche1 ('LECT' nbbc) ; 486 : brechei = 'ELEM' breche1 ('LECT' 1 'PAS' 1 (nbbc - 1)) ; 487 : 'SINON' ; 488 : brechec = 'ELEM' breche1 ('LECT' 1 nbbc) ; 489 : brechei = 'ELEM' breche1 ('LECT' 2 'PAS' 1 (nbbc - 1)) ; 490 : 'FINSI' ; 491 : a = 'NBEL' brechei ; 492 : 'SI' ('EGA' a 0) ; 493 : 'MESS' '==> Le cas ne comporte pas de BRECHE CORRECTE' ; 494 : 'ERRE' 21 ; 495 : 'FINSI' ; 496 : 'SINON' ; 497 : 498 : * Travail en 3D pour définir la brčche 499 : 500 : brechec = 'CONT' breche ; 501 : breche1 = 'CHAN' breche 'POI1' ; 502 : brechei = 'DIFF' breche1 ( 'CHAN' brechec 'POI1') ; 503 : a = 'NBEL' brechei ; 504 : 'SI' ('EGA' a 0) ; 505 : 'MESS' '==> Le cas ne comporte pas de BRECHE CORRECTE' ; 506 : 'ERRE' 21 ; 507 : 'FINSI' ; 508 : 'FINSI' ; 509 : 510 : 511 : brechei= brechei 'COUL' 'ROUG' ; 512 : brechec= brechec 'COUL' 'VERT' ; 513 : GEO.'brechec'=brechec ; 514 : GEO.'brechei'=brechei ; 515 : 516 : Finsi ; 517 : 518 : * Traitement de la brčche 2 519 : 520 : Si (TBT.'Tbreche2') ; 521 : breche2 = rxt.'breche2' ; 522 : Si DIM3D ; 523 : diru2=(TBT.'diru2')/(norm TBT.'diru2') ; 524 : breche2 = ORIE breche2 'DIRECTION' diru2 ; 525 : Finsi ; 526 : Mbreche2 = 'CHAN' breche2 'QUAF' ; 527 : elim Mbreche2 rxt.'epsi' ; 528 : $breche2 = 'MODE' Mbreche2 mdns TBT.'discr' ; 529 : breche2 = 'DOMA' $breche2 'MAILLAGE' ; 530 : Sbreche2 = 'SOMT' ('DOMA' $breche2 'VOLUME') ; 531 : Dbreche2 = Sbreche2**(1./(VALE DIME)) ; 532 : 533 : 'ELIM' epsi (Mvtf 'ET' Mbreche2); 534 : 535 : GEO.'Mbreche2' = Mbreche2 ; 536 : GEO.'$breche2' = $breche2 ; 537 : GEO.'breche2' = breche2 ; 538 : GEO.'Sbreche2' = Sbreche2 ; 539 : GEO.'Dbreche2' = Dbreche2 ; 540 : 541 : 'MESS' ' ==> Verification inclusion BRECHE2 ENVELOPPE' ; 542 : 543 : ai= 'INTER' Mbreche2 (GEO.'Mmenvf') ; 544 : nbai= nbel ai ; 545 : Si (ega nbai 0) ; 546 : Mess ' Breche2 non incluse dans l enveloppe '; 547 : 'ERRE' 21 ; 548 : Finsi ; 549 : 550 : GEO.'MmenvfU' = 'DIFF' GEO.'MmenvfU' Mbreche2 ; 551 : GEO.'$menvfU' = 'MODE' GEO.'MmenvfU' 'NAVIER_STOKES' TBT.'discr' ; 552 : GEO.'menvfU' = 'DOMA' GEO.'$menvfU' maillage ; 553 : 554 : * Travail en 2D avec présence possible de l'axe de symétrie 555 : 556 : 'SI' ('NON' DIM3D) ; 557 : breche1 = 'CHAN' breche2 'POI1' ; 558 : nbbc='NBEL' breche1 ; 559 : 'SI' (TBT.'Taxe') ; 560 : brech2c = 'ELEM' breche1 ('LECT' nbbc) ; 561 : brech2i = 'ELEM' breche1 ('LECT' 1 'PAS' 1 (nbbc - 1)); 562 : 'SINON' ; 563 : brech2c = 'ELEM' breche1 ('LECT' 1 nbbc) ; 564 : brech2i = 'ELEM' breche1 ('LECT' 2 'PAS' 1 (nbbc - 1)); 565 : 'FINSI' ; 566 : a = 'NBEL' brech2i ; 567 : 'SI' ('EGA' a 0) ; 568 : 'MESS' '==> Le cas ne comporte pas de BRECHE' ; 569 : 'ERREUR' 5 ; 570 : 'FINSI' ; 571 : 'SINON' ; 572 : 573 : * Travail en 3D pour définir la brčche 574 : 575 : brech2c = 'CONT' breche2 ; 576 : breche1 = 'CHAN' breche2 'POI1' ; 577 : brech2i = 'DIFF' breche1 ( 'CHAN' brech2c 'POI1') ; 578 : a = 'NBEL' brech2i ; 579 : 'SI' ('EGA' a 0) ; 580 : 'MESS' '==> Le cas ne comporte pas de BRECHE' ; 581 : 'ERREUR' 5 ; 582 : 'FINSI' ; 583 : 'FINSI' ; 584 : brech2i= brech2i 'COUL' 'ROUG' ; 585 : brech2c= brech2c 'COUL' 'VERT' ; 586 : GEO.'brech2c'=brech2c ; 587 : GEO.'brech2i'=brech2i ; 588 : 589 : Finsi ; 590 : 591 : * Traitement de la brčche 3 592 : 593 : Si (TBT.'Tbreche3') ; 594 : breche3 = rxt.'breche3' ; 595 : Si DIM3D ; 596 : diru3=(TBT.'diru3')/(norm TBT.'diru3') ; 597 : breche3 = ORIE breche3 'DIRECTION' diru3 ; 598 : Finsi ; 599 : Mbreche3 = 'CHAN' breche3 'QUAF' ; 600 : elim Mbreche3 rxt.'epsi' ; 601 : $breche3 = 'MODE' Mbreche3 mdns TBT.'discr' ; 602 : breche3 = 'DOMA' $breche3 'MAILLAGE' ; 603 : Sbreche3 = 'SOMT' ('DOMA' $breche3 'VOLUME') ; 604 : Dbreche3 = Sbreche3**(1./(VALE DIME)) ; 605 : 606 : 'ELIM' epsi (Mvtf 'ET' Mbreche3); 607 : 608 : GEO.'Mbreche3' = Mbreche3 ; 609 : GEO.'$breche3' = $breche3 ; 610 : GEO.'breche3' = breche3 ; 611 : GEO.'Sbreche3' = Sbreche3 ; 612 : GEO.'Dbreche3' = Dbreche3 ; 613 : 614 : 'MESS' ' ==> Vérification inclusion BRECHE3 ENVELOPPE' ; 615 : 616 : ai= 'INTER' Mbreche3 (GEO.'Mmenvf') ; 617 : nbai= nbel ai ; 618 : Si (ega nbai 0) ; 619 : Mess ' Breche3 non incluse dans l enveloppe ' ; 620 : 'ERRE' 21 ; 621 : Finsi ; 622 : 623 : GEO.'MmenvfU' = 'DIFF' GEO.'MmenvfU' Mbreche3 ; 624 : GEO.'$menvfU' = 'MODE' GEO.'MmenvfU' 'NAVIER_STOKES' TBT.'discr' ; 625 : GEO.'menvfU' = 'DOMA' GEO.'$menvfU' maillage ; 626 : 627 : * Travail en 2D avec présence possible de l'axe de symétrie 628 : 629 : 'SI' ('NON' DIM3D) ; 630 : breche1 = 'CHAN' breche3 'POI1' ; 631 : nbbc='NBEL' breche1 ; 632 : 'SI' (TBT.'Taxe') ; 633 : brech3c = 'ELEM' breche1 ('LECT' nbbc) ; 634 : brech3i = 'ELEM' breche1 ('LECT' 1 'PAS' 1 (nbbc - 1)); 635 : 'SINON' ; 636 : brech3c = 'ELEM' breche1 ('LECT' 1 nbbc) ; 637 : brech3i = 'ELEM' breche1 ('LECT' 2 'PAS' 1 (nbbc - 1)); 638 : 'FINSI' ; 639 : a = 'NBEL' brech3i ; 640 : 'SI' ('EGA' a 0) ; 641 : 'MESS' '==> Le cas ne comporte pas de BRECHE 3' ; 642 : 'ERREUR' 5 ; 643 : 'FINSI' ; 644 : 'SINON' ; 645 : 646 : * Travail en 3D pour définir la brčche 647 : 648 : brech3c = 'CONT' breche3 ; 649 : breche1 = 'CHAN' breche3 'POI1' ; 650 : brech3i = 'DIFF' breche1 ( 'CHAN' brech3c 'POI1') ; 651 : a = 'NBEL' brech3i ; 652 : 'SI' ('EGA' a 0) ; 653 : 'MESS' '==> Le cas ne comporte pas de BRECHE 3' ; 654 : 'ERREUR' 5 ; 655 : 'FINSI' ; 656 : 'FINSI' ; 657 : brech3i= brech3i 'COUL' 'ROUG' ; 658 : brech3c= brech3c 'COUL' 'VERT' ; 659 : GEO.'brech3c'=brech3c ; 660 : GEO.'brech3i'=brech3i ; 661 : 662 : Finsi ; 663 : 664 : mess ' FIN VERIFICATION DES BRECHES' ; 665 : 666 : *----- TRAITEMENT DES RECOMBINEURS ------------------------- 667 : 'SI' (TBT.'TRECOMB') ; 668 : NBREC = 'DIME' rxt.'RECOMB' ; 669 : 'REPETER' BCLREC NBREC ; 670 : PAREXT = rxt.'RECOMB'. &BCLREC . 'PAREXT' ; 671 : ENTREE = rxt.'RECOMB'. &BCLREC . 'ENTREE' ; 672 : SORTIE = rxt.'RECOMB'. &BCLREC . 'SORTIE' ; 673 : direntr = rxt.'RECOMB'. &BCLREC . 'direntr' ; 674 : direntr = direntr / ('NORM' direntr) ; 675 : dirsort = rxt.'RECOMB'. &BCLREC . 'dirsort' ; 676 : dirsort = dirsort / ('NORM' dirsort) ; 677 : DIRNAME = 'CHAIN' 'DREC' 'ent' &BCLREC ; 678 : GEO. DIRNAME = direntr ; 679 : DIRNAME = 'CHAIN' 'DREC' 'sor' &BCLREC ; 680 : GEO. DIRNAME = dirsort ; 681 : M_PAREXT = 'CHAN' PAREXT 'QUAF' ; 682 : M_ENTREE = 'CHAN' ENTREE 'QUAF' ; 683 : M_SORTIE = 'CHAN' SORTIE 'QUAF' ; 684 : 'ELIM' (Mvtf 'ET' M_PAREXT 'ET' M_ENTREE 'ET' M_SORTIE) rxt.'epsi'; 685 : $PAREXT = 'MODE' M_PAREXT mdns TBT.'discr' ; 686 : $ENTREE = 'MODE' M_ENTREE mdns TBT.'discr' ; 687 : $SORTIE = 'MODE' M_SORTIE mdns TBT.'discr' ; 688 : QNAME = 'CHAIN' 'MREC' 'par' &BCLREC ; 689 : GEO. QNAME = M_PAREXT ; 690 : QNAME = 'CHAIN' 'MREC' 'ent' &BCLREC ; 691 : GEO. QNAME = M_ENTREE ; 692 : QNAME = 'CHAIN' 'MREC' 'sor' &BCLREC ; 693 : GEO. QNAME = M_SORTIE ; 694 : $NAME = 'CHAIN' '$REC' 'par' &BCLREC ; 695 : GEO. $NAME = $PAREXT ; 696 : $NAME = 'CHAIN' '$REC' 'ent' &BCLREC ; 697 : GEO. $NAME = $ENTREE ; 698 : $NAME = 'CHAIN' '$REC' 'sor' &BCLREC ; 699 : GEO. $NAME = $SORTIE ; 700 : NAME = 'CHAIN' 'REC' 'par' &BCLREC ; 701 : GEO. NAME = 'DOMA' $PAREXT 'MAILLAGE' ; 702 : ENTREE = 'DOMA' $ENTREE 'MAILLAGE' ; 703 : NAME = 'CHAIN' 'REC' 'ent' &BCLREC ; 704 : GEO. NAME = ENTREE ; 705 : SORTIE = 'DOMA' $SORTIE 'MAILLAGE' ; 706 : NAME = 'CHAIN' 'REC' 'sor' &BCLREC ; 707 : GEO. NAME = SORTIE ; 708 : NAME = 'CHAIN' 'SREC' 'ent' &BCLREC ; 709 : GEO. NAME = 'SOMT' ('DOMA' $ENTREE 'XXDIAGSI') ; 710 : NAME = 'CHAIN' 'SREC' 'sor' &BCLREC ; 711 : GEO. NAME = 'SOMT' ('DOMA' $SORTIE 'XXDIAGSI') ; 712 : 'MESS' ' ==> Vérification inclusion recomb' &BCLREC 'ENVELOPPE' ; 713 : 714 : ai = 'INTER' (M_PAREXT 'ET' M_ENTREE 'ET' M_SORTIE) 715 : (GEO.'Mmenvf') ; 716 : nbai = 'NBEL' ai ; 717 : 'SI' ('EGA' nbai 0) ; 718 : 'MESS' ' Recomb' &BCLREC ' non inclus dans l enveloppe ' ; 719 : 'ERRE' 21 ; 720 : 'FINSI' ; 721 : 722 : GEO.'MmenvfU' = 'DIFF' GEO.'MmenvfU' (M_ENTREE 'ET' M_SORTIE) ; 723 : GEO.'$menvfU' = 'MODE' GEO.'MmenvfU' 'NAVIER_STOKES' TBT.'discr' ; 724 : GEO.'menvfU' = 'DOMA' GEO.'$menvfU' 'MAILLAGE' ; 725 : 726 : * Travail en 2D pour définir l'entree et la sortie du recombineur 727 : 'SI' ('NON' DIM3D) ; 728 : ENTREE1 = 'CHAN' ENTREE 'POI1' ; 729 : nbbc ='NBEL' ENTREE1 ; 730 : ENTREEc = 'ELEM' ENTREE1 ('LECT' 1 nbbc) ; 731 : ENTREEi = 'ELEM' ENTREE1 ('LECT' 2 'PAS' 1 (nbbc - 1)) ; 732 : a = 'NBEL' ENTREEi ; 733 : 'SI' ('EGA' a 0) ; 734 : 'MESS' '==> Le cas ne comporte pas de recombineur' &BCLREC ; 735 : 'ERREUR' 5 ; 736 : 'FINSI' ; 737 : SORTIE1 = 'CHAN' SORTIE 'POI1' ; 738 : nbbc ='NBEL' SORTIE1 ; 739 : SORTIEc = 'ELEM' SORTIE1 ('LECT' 1 nbbc) ; 740 : SORTIEi = 'ELEM' SORTIE1 ('LECT' 2 'PAS' 1 (nbbc - 1)) ; 741 : a = 'NBEL' SORTIEi ; 742 : 'SI' ('EGA' a 0) ; 743 : 'MESS' '==> Le cas ne comporte pas de recombineur' &BCLREC ; 744 : 'ERREUR' 5 ; 745 : 'FINSI' ; 746 : 'SINON' ; 747 : * Travail en 3D pour définir l'entree et la sortie du recombineur 748 : ENTREEc = 'CONT' ENTREE ; 749 : ENTREE1 = 'CHAN' ENTREE 'POI1' ; 750 : ENTREEi = 'DIFF' ENTREE1 ( 'CHAN' ENTREEc 'POI1') ; 751 : a = 'NBEL' ENTREEi ; 752 : 'SI' ('EGA' a 0) ; 753 : 'MESS' '==> Le cas ne comporte pas de recombineur' &BCLREC ; 754 : 'ERREUR' 5 ; 755 : 'FINSI' ; 756 : SORTIEc = 'CONT' SORTIE ; 757 : SORTIE1 = 'CHAN' SORTIE 'POI1' ; 758 : SORTIEi = 'DIFF' SORTIE1 ( 'CHAN' SORTIEc 'POI1') ; 759 : a = 'NBEL' SORTIEi ; 760 : 'SI' ('EGA' a 0) ; 761 : 'MESS' '==> Le cas ne comporte pas de recombineur' &BCLREC ; 762 : 'ERREUR' 5 ; 763 : 'FINSI' ; 764 : 'FINSI' ; 765 : ENTREEi = ENTREEi 'COUL' 'ROUG' ; 766 : ENTREEc = ENTREEc 'COUL' 'VERT' ; 767 : NAME = 'CHAIN' 'REC' 'entI' &BCLREC ; 768 : GEO.NAME = ENTREEi ; 769 : NAME = 'CHAIN' 'REC' 'entC' &BCLREC ; 770 : GEO.NAME = ENTREEc ; 771 : SORTIEi = SORTIEi 'COUL' 'ROUG' ; 772 : SORTIEc = SORTIEc 'COUL' 'VERT' ; 773 : NAME = 'CHAIN' 'REC' 'sorI' &BCLREC ; 774 : GEO.NAME = SORTIEi ; 775 : NAME = 'CHAIN' 'REC' 'sorC' &BCLREC ; 776 : GEO.NAME = SORTIEc ; 777 : 'FIN' BCLREC ; 778 : 779 : 'FINSI' ; 780 : 781 : * ----------------------------------------------------------- 782 : * Traitement de la sortie 783 : 784 : Si (TBT.'Tsortie') ; 785 : sortie = rxt.'sortie' ; 786 : Msortie = 'CHAN' sortie 'QUAF' ; 787 : elim Msortie rxt.'epsi' ; 788 : $sortie = 'MODE' Msortie mdns TBT.'discr' ; 789 : sortie = 'DOMA' $sortie 'MAILLAGE' ; 790 : Ssortie = 'SOMT' ('DOMA' $sortie 'VOLUME') ; 791 : 792 : 'ELIM' epsi (Mvtf 'ET' Msortie ); 793 : 794 : GEO.'Msortie' = Msortie ; 795 : GEO.'$sortie' = $sortie ; 796 : GEO.'sortie' = sortie ; 797 : GEO.'Ssortie' = Ssortie ; 798 : 799 : 'MESS' ' ==> Vérification inclusion SORTIE ENVELOPPE' ; 800 : 801 : ai= 'INTER' Msortie GEO.'Mmenvf' ; 802 : nbai= nbel ai ; 803 : Si (ega nbai 0) ; 804 : Mess ' Sortie non incluse dans l enveloppe ' ; 805 : 'ERRE' 21 ; 806 : Finsi ; 807 : 808 : GEO.'MmenvfU' = 'DIFF' GEO.'MmenvfU' Msortie ; 809 : GEO.'$menvfU' = 'MODE' GEO.'MmenvfU' 'NAVIER_STOKES' TBT.'discr' ; 810 : GEO.'menvfU' = 'DOMA' GEO.'$menvfU' maillage ; 811 : 812 : Finsi ; 813 : 814 : 'SI' TBT.'GRAPH' ; 815 : 'SI' (TBT.'Taxe') ; 816 : axe=axe 'COUL' 'JAUN' ; 817 : tmenvf = axe 'ET' GEO.'menvfU' ; 818 : 'SINON' ; 819 : tmenvf = GEO.'menvfU' ; 820 : 'FINSI' ; 821 : 822 : Si TTsortie ; 823 : NBR=dime rxt.'Sorties' ; 824 : ibr=index (rxt.'Sorties') ; 825 : Repeter BBRS NBR ; 826 : Briches=rxt.'Sorties'.(ibr.&BBRS) ; 827 : srechei=Briches.'srechei' ; 828 : srechec=Briches.'srechec' ; 829 : tmenvf = tmenvf et srechei et srechec ; 830 : FIN BBRS ; 831 : FINSI ; 832 : 833 : Si TTbreche ; 834 : NBR=dime rxt.'Breches' ; 835 : ibr=index (rxt.'Breches') ; 836 : Repeter BBRS NBR ; 837 : Briches=rxt.'Breches'.(ibr.&BBRS) ; 838 : brechei=Briches.'brechei' ; 839 : brechec=Briches.'brechec' ; 840 : tmenvf = tmenvf et brechei et brechec ; 841 : FIN BBRS ; 842 : FINSI ; 843 : 844 : Si (TBT.'Tbreche') ; 845 : tmenvf = tmenvf et brechei et brechec ; 846 : Finsi ; 847 : Si (TBT.'Tbreche2') ; 848 : tmenvf = tmenvf et brech2i et brech2c ; 849 : Finsi ; 850 : Si (TBT.'Tbreche3') ; 851 : tmenvf = tmenvf et brech3i et brech3c ; 852 : Finsi ; 853 : 'SI' (TBT.'TRECOMB') ; 854 : NBREC = 'DIME' rxt.'RECOMB' ; 855 : 'REPETER' BCLREC NBREC ; 856 : NAME = 'CHAIN' 'REC' 'entI' &BCLREC ; 857 : ENTREEi = GEO.NAME ; 858 : NAME = 'CHAIN' 'REC' 'entC' &BCLREC ; 859 : ENTREEc = GEO.NAME ; 860 : NAME = 'CHAIN' 'REC' 'sorI' &BCLREC ; 861 : SORTIEi = GEO.NAME ; 862 : NAME = 'CHAIN' 'REC' 'sorC' &BCLREC ; 863 : SORTIEc = GEO.NAME ; 864 : 865 : tmenvf = tmenvf et ENTREEi et ENTREEc ; 866 : tmenvf = tmenvf et SORTIEi et SORTIEc ; 867 : 'FIN' BCLREC ; 868 : 'FINSI' ; 869 : 870 : Si (TBT.'Tsortie') ; 871 : sortie = sortie coul TURQ ; 872 : tmenvf = tmenvf et sortie ; 873 : Finsi ; 874 : 'TRAC' tmenvf 875 : 'TITR' 'Maillage - Axe, Fluide, Breches, Sortie'; 876 : 'FINSI' ; 877 : *----------------------------------------------------------- 878 : * Traitement de la thermique paroi 879 : * => Il doit y avoir deux types de paroi dans le modele 880 : * Type 1 = THERMP la paroi est couplee au fluide et on calcule 881 : * son evolution thermique en fonction du temps 882 : * Type 2 = TP_IMPOSEE : la paroi produit une condition 883 : * limite de type temperature imposee pour la resolution 884 : * de la temperature fluide en fonction du temps 885 : * Dans un meme cas test, l'utilisateur veut pouvoir coupler 886 : * les deux approches et pouvoir definir des conditions initiales 887 : * differentes et piloter la variation en fonction du temps 888 : * Les parois sont decrites dans la table RXT.'TABMUR' 889 : * Il faut regrouper les parois servant de CL en temperature et 890 : * par type (beton/acier...) les parois dont on veut traiter la 891 : * thermique 892 : * 893 : * On Crée la géométrie discrérisée pour la thermique paroi 894 : 895 : 896 : 897 : 'SI' TPAROIS ; 898 : mess ' THERMIQUE PAROIS MULTIPLES ' ; 899 : NPAR=dime rxt.'PAROIS' ; 900 : ipr=index (rxt.'PAROIS') ; 901 : mdns = 'NAVIER_STOKES' ; 902 : Repeter BPRS NPAR ; 903 : Parois=rxt.'PAROIS'.(ipr.&BPRS) ; 904 : GEO.(ipr.&BPRS)='TABLE' ; 905 : vtp=Parois.'vtp' ; 906 : Mvtp = 'CHAN' vtp 'QUAF' ; 907 : $vtpi = 'MODE' Mvtp mdns TBT.'discr' ; 908 : VTotalp = 'SOMT' ('DOMA' $vtpi 'VOLUME') ; 909 : Diagpi = doma $vtpi 'XXDIAGSI' ; 910 : GEO.(ipr.&BPRS).'vtp' = vtp ; 911 : GEO.(ipr.&BPRS).'Mvtp' = Mvtp ; 912 : GEO.(ipr.&BPRS).'$vtp' = $vtpi ; 913 : GEO.(ipr.&BPRS).'eMvtp' = doma $vtpi 'ENVELOPP' ; 914 : GEO.(ipr.&BPRS).'vtp' = doma $vtpi MAILLAGE ; 915 : GEO.(ipr.&BPRS).'VTotalp'= VTotalp ; 916 : GEO.(ipr.&BPRS).'Diagp' = Diagpi ; 917 : 'SI' TBT.'GRAPH' ; 918 : 'TRACE' GEO.(ipr.&BPRS).'vtp' CACHE 'TITR' 919 : (Chai 'Maillage pour la THERMIQUE : ' (ipr.&BPRS)) ; 920 : 'FINSI' ; 921 : 'SI'('EGA' &BPRS 1) ; 922 : ROCP = Parois.'ROCP'*Diagpi ; 923 : LAMB = Parois.'LAMBDA'*Diagpi ; 924 : TPPI = Parois.'Tp0'*Diagpi ; 925 : vtpt = vtp ; 926 : Mvtpt= Mvtp ; 927 : 'SINON' ; 928 : a=inter vtpt vtp 'NOVERIF' ; 929 : Si (NON ('EGA' (NBEL a) 0)) ; 930 : trace a CACHE TITR ' maillage intersection' ; 931 : Mess ; 932 : Mess '---------------- ERREUR Dans PAROIS ----------- ' ; 933 : Mess ' Les éléments de maillage composant la paroi se chevauchent'; 934 : Mess '---------------- ERREUR Dans PAROIS ----------- ' ; 935 : Mess ; 936 : ERREUR ' ' ; 937 : Quitter PREPAENC ; 938 : Finsi ; 939 : ROCP = ROCP + (Parois.'ROCP'*Diagpi) ; 940 : LAMB = LAMB + (Parois.'LAMBDA'*Diagpi) ; 941 : TPPI = TPPI + (Parois.'Tp0'*Diagpi) ; 942 : vtpt = vtpt et vtp ; 943 : Mvtpt = Mvtpt et Mvtp ; 944 : Elim Mvtpt GEO.'epsi' ; 945 : 'FINSI' ; 946 : FIN BPRS ; 947 : rxt.'vtp' = vtpt ; 948 : Mvtp = Mvtpt ; 949 : mdns = 'NAVIER_STOKES' ; 950 : $vtpp = 'MODE' Mvtp mdns TBT.'discr' ; 951 : VTotalp = 'SOMT' ('DOMA' $vtpp 'VOLUME') ; 952 : GEO.'Mvtp' = Mvtp ; 953 : GEO.'$vtp' = $vtpp ; 954 : GEO.'eMvtp' = doma $vtpp 'ENVELOPP' ; 955 : GEO.'vtp' = doma $vtpp MAILLAGE ; 956 : GEO.'VTotalp'= VTotalp ; 957 : GEO.'Diagp' = doma $vtpp 'XXDIAGSI' ; 958 : ROCP = ROCP * (inve GEO.'Diagp') ; 959 : LAMB = LAMB * (inve GEO.'Diagp') ; 960 : TPPI = TPPI * (inve GEO.'Diagp') ; 961 : tic.'ROCP' = KCHT GEO.'$vtp' SCAL SOMMET ROCP ; 962 : tic.'LAMBDA' = KCHT GEO.'$vtp' SCAL SOMMET LAMB ; 963 : Si(NON ( EXIST tic 'TPNM')) ; 964 : tic.'TPNM' = KCHT GEO.'$vtp' SCAL SOMMET TPPI ; 965 : Finsi ; 966 : 967 : 'SI' TBT.'GRAPH' ; 968 : Trace tic.'ROCP' (GEO.'vtp') TITR ' ROCP paroi' ; 969 : Trace tic.'LAMBDA' (GEO.'vtp') TITR ' LAMBDA paroi' ; 970 : Trace tic.'TPNM' (GEO.'vtp') 971 : TITR ' Température d initialisation de la paroi' ; 972 : 'FINSI' ; 973 : 974 : 'FINSI' ; 975 : 976 : TBT.'TPAROIF' = FAUX ; 977 : 978 : 'SI' (TBT.'THERMP' ou TPAROIS) ; 979 : mess ' THERMIQUE PAROIS ' ; 980 : 981 : 'SI' (NON TPAROIS) ; 982 : mdns = 'NAVIER_STOKES' ; 983 : Mvtp = 'CHAN' rxt.'vtp' 'QUAF' ; 984 : $vtpt = 'MODE' Mvtp mdns TBT.'discr' ; 985 : VTotalp = 'SOMT' ('DOMA' $vtpt 'VOLUME') ; 986 : GEO.'Mvtp' = Mvtp ; 987 : GEO.'$vtp' = $vtpt ; 988 : GEO.'eMvtp' = doma $vtpt 'ENVELOPP' ; 989 : GEO.'vtp' = doma $vtpt MAILLAGE ; 990 : GEO.'VTotalp'= VTotalp ; 991 : GEO.'Diagp' = doma $vtpt 'XXDIAGSI' ; 992 : 'FINSI' ; 993 : 994 : 'SI' TBT.'GRAPH' ; 995 : 'TRACE' GEO.'vtp' 'TITR' 'Maillage pour la THERMIQUE ' ; 996 : 'FINSI' ; 997 : 998 : * On recherche l'intersection entre vtf et vtp 999 : * => paroif 1000 : 1001 : Elim (GEO.'Mvtp' et GEO.'Mvtf') GEO.'epsi' ; 1002 : Mparoif = inte (GEO.'Mmenvf') (GEO.'eMvtp') ; 1003 : 'SI' (NON(EGA (nbel Mparoif) 0)) ; 1004 : TBT.'TPAROIF' = VRAI ; 1005 : $paroif = 'MODE' Mparoif mdns TBT.'discrH' ; 1006 : Sparoif = 'SOMT' ('DOMA' $paroif 'VOLUME') ; 1007 : GEO.'Mparoif' = Mparoif ; 1008 : GEO.'$paroif' = $paroif ; 1009 : GEO.'paroif' = doma $paroif MAILLAGE ; 1010 : GEO.'Sparoif' = Sparoif ; 1011 : GEO.'Diagpf' = 'DOMA' GEO.'$paroif' 'XXDIAGSI' ; 1012 : 'SI' TBT.'GRAPH' ; 1013 : 'TRACE' GEO.'paroif' 'TITR' 'Surface de contacte FLUIDE/THERM' ; 1014 : 'FINSI' ; 1015 : 'FINSI' ; 1016 : 1017 : 'SI' TBT.'ECHEXT' ; 1018 : Mparext=Chan rxt.'parext' QUAF ; 1019 : Elim (Mvtp et Mparext) rxt.'epsi' ; 1020 : $parext = 'MODE' Mparext mdns TBT.'discrH' ; 1021 : GEO.'Mparext' = Mparext ; 1022 : GEO.'$parext' = $parext ; 1023 : 'FINSI' ; 1024 : 1025 : 'FINSI' ; 1026 : 1027 : *----------------------------------------------------------- 1028 : * Traitement des Flux imposés 1029 : * XFIMP 3 : Flux de masse imposés 1030 : 1031 : 'SI' TFIMP ; 1032 : NBFIMP=dime (rxt.'XFIMP') ; 1033 : ifimp=INDEX (rxt.'XFIMP') ; 1034 : REPETER BBFIMP NBFIMP ; 1035 : Bfimp=rxt.'XFIMP'.(ifimp.&BBFIMP) ; 1036 : Mmfpi =(Bfimp.'MAILLAGE') CHAN 'QUAF' ; 1037 : Elim (GEO.'Mmenvf' et Mmfpi) rxt.'epsi' ; 1038 : $mfpi = 'MODE' Mmfpi mdns TBT.'discrH' ; 1039 : Bfimp.'Mmfpi' = Mmfpi ; 1040 : Bfimp.'$mfpi' = $mfpi ; 1041 : Bfimp.'mfpi' = doma $mfpi maillage ; 1042 : Bfimp.'Smfpi' = 'SOMT' ( 'DOMA' $mfpi 'VOLUME') ; 1043 : Bfimp.'Diagfi' = 'DOMA' Bfimp.'$mfpi' 'XXDIAGSI' ; 1044 : *-- Verification de l'inclusion de MFPI dans l'enveloppe 1045 : a = 'INTERSECTION' (Bfimp.'mfpi') (GEO.'menvf') ; 1046 : 'MESS' '==> On verifie que la surface 1 ' ; 1047 : 'MESS' '==> pour le flux imposé' ; 1048 : 'MESS' '==> est bien incluse dans l enveloppe ' ; 1049 : FIN BBFIMP ; 1050 : 'FINSI' ; 1051 : 1052 : * XFIMP 3 : Flux de masse imposés 1053 : mess 'FIN Flux imposés'; 1054 : *----------------------------------------------------------- 1055 : * Traitement des températures imposées (condenseurs) 1056 : 1057 : 'SI' TTIMP ; 1058 : NBTIMP=dime (rxt.'TIMP') ; 1059 : itimp=INDEX (rxt.'TIMP') ; 1060 : REPETER BBTIMP NBTIMP ; 1061 : Btimp=rxt.'TIMP'.(itimp.&BBTIMP) ; 1062 : Mmtpi =(Btimp.'MAILLAGE') CHAN 'QUAF' ; 1063 : Elim (GEO.'Mmenvf' et Mmtpi) rxt.'epsi' ; 1064 : $mtpi = 'MODE' Mmtpi mdns TBT.'discrH' ; 1065 : Btimp.'Mmtpi' = Mmtpi ; 1066 : Btimp.'$mtpi' = $mtpi ; 1067 : Btimp.'mtpi' = doma $mtpi maillage ; 1068 : Btimp.'Smtpi' = 'SOMT' ( 'DOMA' $mtpi 'VOLUME') ; 1069 : Btimp.'Diagif' = 'DOMA' Btimp.'$mtpi' 'XXDIAGSI' ; 1070 : *-- Verification de l'inclusion de MTPI dans l'enveloppe 1071 : a = 'INTERSECTION' (Btimp.'mtpi') (GEO.'menvf') ; 1072 : 'MESS' '==> On verifie que la surface 1 ' ; 1073 : 'MESS' '==> pour la temperature imposee' ; 1074 : 'MESS' '==> est bien incluse dans l enveloppe ' ; 1075 : FIN BBTIMP ; 1076 : 'FINSI' ; 1077 : 1078 : 'SI' TBT.'TTIMP1' ; 1079 : Mmtp1 =(rxt.'TIMP1'.'MAILLAGE') CHAN 'QUAF' ; 1080 : Elim (GEO.'Mmenvf' et Mmtp1) rxt.'epsi' ; 1081 : $mtp1 = 'MODE' Mmtp1 mdns TBT.'discrH' ; 1082 : GEO.'Mmtp1' = Mmtp1 ; 1083 : GEO.'$mtp1' = $mtp1 ; 1084 : GEO.'mtp1' = doma $mtp1 maillage ; 1085 : GEO.'Smtp1' = 'SOMT' ( 'DOMA' $mtp1 'VOLUME') ; 1086 : GEO.'Diag1f' = 'DOMA' GEO.'$mtp1' 'XXDIAGSI' ; 1087 : *-- Verification de l'inclusion de MTPI dans l'enveloppe 1088 : a = 'INTERSECTION' (GEO.'mtp1') (GEO.'menvf') ; 1089 : 'MESS' '==> On verifie que la surface 1 ' ; 1090 : 'MESS' '==> pour la temperature imposee' ; 1091 : 'MESS' '==> est bien incluse dans l enveloppe ' ; 1092 : 'FINSI' ; 1093 : 1094 : 'SI' TBT.'TTIMP2' ; 1095 : Mmtp2 =(rxt.'TIMP2'.'MAILLAGE') CHAN 'QUAF' ; 1096 : Elim (GEO.'Mmenvf' et Mmtp2) rxt.'epsi' ; 1097 : $mtp2 = 'MODE' Mmtp2 mdns TBT.'discrH' ; 1098 : GEO.'Mmtp2' = Mmtp2 ; 1099 : GEO.'$mtp2' = $mtp2 ; 1100 : GEO.'mtp2' = doma $mtp2 maillage ; 1101 : GEO.'Smtp2' = 'SOMT' ( 'DOMA' $mtp2 'VOLUME') ; 1102 : GEO.'Diag2f' = 'DOMA' GEO.'$mtp2' 'XXDIAGSI' ; 1103 : *-- Verification de l'inclusion de MTPI dans l'enveloppe 1104 : a = 'INTERSECTION' (GEO.'mtp2') (GEO.'menvf') ; 1105 : 'MESS' '==> On verifie que la surface 2' ; 1106 : 'MESS' '==> pour la temperature imposee' ; 1107 : 'MESS' '==> est bien incluse dans l enveloppe ' ; 1108 : 'FINSI' ; 1109 : 1110 : 'SI' TBT.'TTIMP3' ; 1111 : Mmtp3 =(rxt.'TIMP3'.'MAILLAGE') CHAN 'QUAF' ; 1112 : Elim (GEO.'Mmenvf' et Mmtp3) rxt.'epsi' ; 1113 : $mtp3 = 'MODE' Mmtp3 mdns TBT.'discrH' ; 1114 : GEO.'Mmtp3' = Mmtp3 ; 1115 : GEO.'$mtp3' = $mtp3 ; 1116 : GEO.'mtp3' = doma $mtp3 maillage ; 1117 : GEO.'Smtp3' = 'SOMT' ( 'DOMA' $mtp3 'VOLUME') ; 1118 : GEO.'Diag3f' = 'DOMA' GEO.'$mtp3' 'XXDIAGSI' ; 1119 : *-- Verification de l'inclusion de MTPI dans l'enveloppe 1120 : a = 'INTERSECTION' (GEO.'mtp3') (GEO.'menvf') ; 1121 : 'MESS' '==> On verifie que la surface 3' ; 1122 : 'MESS' '==> pour la temperature imposee' ; 1123 : 'MESS' '==> est bien incluse dans l enveloppe ' ; 1124 : 'FINSI' ; 1125 : 1126 : *** vérification de l'inclusion du maillage de la paroi du mur 1127 : *** et de l'enveloppe du maillage fluide 1128 : 'SI' TBT.'TECHANP' ; 1129 : Mmtp0 =(rxt.'ECHANP'.'MAILLAGE') CHAN 'QUAF' ; 1130 : Elim (GEO.'Mmenvf' et Mmtp0) rxt.'epsi' ; 1131 : $mtp0 = 'MODE' Mmtp0 mdns TBT.'discr' ; 1132 : GEO.'Mmtp0' = Mmtp0 ; 1133 : GEO.'$mtp0' = $mtp0 ; 1134 : GEO.'mtp0' = doma $mtp0 maillage ; 1135 : GEO.'Smtp0' = 'SOMT' ( 'DOMA' $mtp0 'VOLUME') ; 1136 : GEO.'Diag0f' = 'DOMA' GEO.'$mtp0' 'XXDIAGSI' ; 1137 : *-- Verification de l'inclusion de MTPI dans l'enveloppe 1138 : a = 'INTERSECTION' (GEO.'mtp0') (GEO.'menvf') ; 1139 : 'MESS' '==> On verifie que la surface de ECHANP' ; 1140 : 'MESS' '==> pour une temperature définie par l utilisateur'; 1141 : 'MESS' '==> est bien incluse dans l enveloppe ' ; 1142 : 'FINSI' ; 1143 : 1144 : mess 'FIN THERMIQUE PAROI'; 1145 : *----------------------------------------------------------- 1146 : 'SI' (TBT.'ASPER') ; 1147 : aspinj = rxt.'aspinj' ; 1148 : toitf = rxt.'toitf' ; 1149 : 'FINSI' ; 1150 : 1151 : * ----------------------------------------------------------- 1152 : 1153 : 'SI' TBT.'ASPER' ; 1154 : Maspinj = 'CHAN' aspinj 'QUAF' ; 1155 : elim Maspinj rxt.'epsi' ; 1156 : Mtoitf = 'CHAN' toitf 'QUAF' ; 1157 : elim Mtoitf rxt.'epsi' ; 1158 : $aspinj = 'MODE' Maspinj mdns TBT.'discr' ; 1159 : $toitf = 'MODE' Mtoitf mdns TBT.'discr' ; 1160 : aspinj = 'DOMA' $aspinj 'MAILLAGE' ; 1161 : toitf = 'DOMA' $toitf 'MAILLAGE' ; 1162 : 'ELIM' epsi (Mvtf 'ET' Maspinj 'ET' Mtoitf ) ; 1163 : 'FINSI' ; 1164 : 1165 : *---------------------------------------------------------- 1166 : * Definition d'un point interieur sur lequel on impose 1167 : * la pression 1168 : 1169 : Si(exist rxt 'pi'); 1170 : lvtf = 'CHAN' 'LINEAIRE' vtf ; 1171 : pi0 = lvtf 'POIN' 'PROC' (rxt.'pi') ; 1172 : Melti = Mvtf 'ELEM' 'CONTENANT' pi0 ; 1173 : $elti = 'MODE' Melti mdns TBT.'discr' ; 1174 : Pimp = 'DOMA' $elti TBT.'KPRE' ; 1175 : Pimp = Elem (lect 1) Pimp ; 1176 : 'ELIM' (Pimp 'ET' ('DOMA' $vtf TBT.'KPRE' )) epsi ; 1177 : Finsi ; 1178 : GEO.'Pimp' = Pimp ; 1179 : 1180 : *----------------------------------------------------------- 1181 : * Preparation des conditions initiales pour les differentes grandeurs 1182 : * 1183 : 1184 : 'SI' TBT.'ASPER' ; 1185 : t = rxt.'scenasp'.'t' ; 1186 : vzinj = 'IPOL' 0.0 t (rxt.'scenasp'.'vzinj') ; 1187 : xdinj = 'IPOL' 0.0 t (rxt.'scenasp'.'xdinj') ; 1188 : tdinj = 'IPOL' 0.0 t (rxt.'scenasp'.'tdinj') ; 1189 : ddinj = 'IPOL' 0.0 t (rxt.'scenasp'.'ddinj') ; 1190 : tic.'Tdma' = prog tdinj ; 1191 : tic.'Tdmi' = prog tdinj ; 1192 : 1193 : 'FINSI' ; 1194 : 1195 : tf0 = rxt.'TF0' ; 1196 : Pt0 = rxt.'PT0' ; 1197 : 1198 : 'SI'(TBT.'THERMP' et (NON TPAROIS)) ; 1199 : tp0 = rxt.'Tp0' ; 1200 : * Calcul d'une temperature moyenne de paroi Tpm0 1201 : Tpm0 = ('SOMT' ( GEO.'Diagp' '*' tp0 )) '/' ( 'SOMT' GEO.'Diagp' ) ; 1202 : 'SINON' ; 1203 : Tpm0 = 0. ; 1204 : 'FINSI' ; 1205 : 1206 : 'SI' TPAROIS ; 1207 : NPAR=dime rxt.'PAROIS' ; 1208 : ipr=index (rxt.'PAROIS') ; 1209 : Tpm0=0. ; 1210 : Rocpm0=0. ; 1211 : Repeter BPRS NPAR ; 1212 : *? Parois=rxt.'PAROIS'.(ipr.&BPRS) ; 1213 : Ctp0 = chai 'Tp0' &BPRS ; 1214 : tp0 = tic.CTp0 ; 1215 : Crocp = chai 'ROCP' &BPRS ; 1216 : rocp = tic.Crocp ; 1217 : * Calcul d'une temperature moyenne de paroi Tpm0 1218 : Tpm0=Tpm0 + ('SOMT' (GEO.(ipr.&BPRS).'Diagp' '*' tp0 )) ; 1219 : Rocpm0=Rocpm0 + 1220 : ('SOMT' (GEO.(ipr.&BPRS).'Diagp' '*' tp0 )) ; 1221 : FIN BPRS ; 1222 : Tpm0 = Tpm0 '/' ( 'SOMT' GEO.'Diagp' ) ; 1223 : Rocpm0 = Rocpm0 '/' ( 'SOMT' GEO.'Diagp' ) ; 1224 : rxt.'Tp0'=Tpm0 ; 1225 : rxt.'ROCP'=Rocpm0 ; 1226 : 'SINON' ; 1227 : Tpm0 = 0. ; 1228 : 'FINSI' ; 1229 : 1230 : 'SI' TBT.'VAPEUR' ; 1231 : Yvap0 = rxt.'Yvap0' ; 1232 : 'SI' (EXIST rxt 'Mliq0') ; 1233 : vertytab rxt 'Mliq0' 'FLOTTANT' ; 1234 : Mliq0 = rxt.'Mliq0' ; 1235 : 'SINON' ; 1236 : Mliq0 = 0. ; 1237 : 'FINSI' ; 1238 : 'SINON' ; 1239 : Yvap0 = 0. ; 1240 : 'FINSI' ; 1241 : 1242 : 'SI' TBT.'THE' ; 1243 : Yhe0 = rxt.'Yhe0' ; 1244 : 'SINON' ; 1245 : Yhe0 = 0. ; 1246 : 'FINSI' ; 1247 : 1248 : 'SI' TBT.'TH2' ; 1249 : Yh20 = rxt.'Yh20' ; 1250 : 'SINON' ; 1251 : Yh20 = 0. ; 1252 : 'FINSI' ; 1253 : 1254 : 'SI' TBT.'TO2' ; 1255 : Yo20 = rxt.'Yo20' ; 1256 : 'SINON' ; 1257 : Yo20 = 0. ; 1258 : 'FINSI' ; 1259 : 1260 : 'SI' TBT.'TN2' ; 1261 : Yn20 = rxt.'Yn20' ; 1262 : 'SINON' ; 1263 : Yn20 = 0. ; 1264 : 'FINSI' ; 1265 : 1266 : 'SI' TBT.'TCO2' ; 1267 : Yco20 = rxt.'Yco20' ; 1268 : 'SINON' ; 1269 : Yco20 = 0. ; 1270 : 'FINSI' ; 1271 : 1272 : 'SI' TBT.'TCO' ; 1273 : Yco0 = rxt.'Yco0' ; 1274 : 'SINON' ; 1275 : Yco0 = 0. ; 1276 : 'FINSI' ; 1277 : *--------------------------------------------------------------- 1278 : * AIR : on traite l'air comme un composant a part entiere 1279 : * il faudra se mefier de ce point lors des calculs de combustion 1280 : * 1281 : Yair0 = 1.0 - Yvap0 - Yhe0 - Yh20 - Yo20 - Yn20 - Yco20 - Yco0 ; 1282 : tic.'YAIR' = 'KCHT' $vtf 'SCAL' 'SOMMET' Yair0 ; 1283 : 1284 : *--------------------------------------------------------------- 1285 : * RGPM = constante des gaz parfaits pour le mélange 1286 : Rgh2 = TBT.'Rgh2' ; 1287 : Rghe = TBT.'Rghe' ; 1288 : Rgo2 = TBT.'Rgo2' ; 1289 : Rgn2 = TBT.'Rgn2' ; 1290 : Rgco2 = TBT.'Rgco2' ; 1291 : Rgco = TBT.'Rgco' ; 1292 : Rgvap = TBT.'Rgvap' ; 1293 : Rgair = TBT.'Rgair' ; 1294 : 1295 : Rgpm = (Rgvap '*' Yvap0) '+' (Rgair '*' Yair0) '+' 1296 : (Rghe '*' Yhe0) '+' (Rgh2 '*' Yh20) '+' 1297 : (Rgo2 '*' Yo20) '+' (Rgn2 '*' Yn20) '+' 1298 : (Rgco '*' Yco0) '+' (Rgco2 '*' Yco20) ; 1299 : Rgp = 'KCHT' $vtf 'SCAL' 'SOMMET' Rgpm ; 1300 : 1301 : *--------------------------------------------------------------- 1302 : * Calcul Cp (Tf0) et Cpm pour le mélange de gaz 1303 : * CALCP appelé ŕ l'initialisation 1304 : * 1305 : Tfm=Tf0 ; 1306 : Cph2 Cphe Cpo2 Cpn2 Cpco2 Cpco Cpair = CALCP Tfm ; 1307 : Cpvap = TBT.'Cpvap' ; 1308 : Cpm = (Cpvap '*' Yvap0) '+' (Cpair '*' Yair0) '+' (Cphe '*' Yhe0) '+' 1309 : (Cph2 '*' Yh20) '+' (Cpo2 '*' Yo20) '+' (Cpn2 '*' Yn20) '+' 1310 : (Cpco '*' Yco0) '+' (Cpco2 '*' Yco20) ; 1311 : 1312 : *--------------------------------------------------------------- 1313 : * Calcul Mu (Tkm) pour le mélange de gaz 1314 : * 1315 : Tkm=Tfm + 273.15 ; 1316 : Muh2 Muhe Muo2 Mun2 Muco2 Muco Muvap Muair = CALMU Tkm ; 1317 : Mu = (Muvap '*' Yvap0) '+' (Muair '*' Yair0) '+' (Muhe '*' Yhe0) '+' 1318 : (Muh2 '*' Yh20) '+' (Muo2 '*' Yo20) '+' (Mun2 '*' Yn20) '+' 1319 : (Muco '*' Yco0) '+' (Muco2 '*' Yco20) ; 1320 : Mu='KCHT' $vtf 'SCAL' 'SOMMET' Mu ; 1321 : *--------------------------------------------------------------- 1322 : * Calcul des autres grandeurs initiales 1323 : * Cvm = Capacite calorifique a volume constante (J/kg/K) 1324 : * Gamm = Gamma du mélange 1325 : * Rho0 = Densité initiale (kg/m3) 1326 : * Ri0 = Densité de chaque gaz (kg/m3) 1327 : * 1328 : Cvm = Cpm '-' Rgpm ; 1329 : * Gamm = Cpm '/' Cvm ; 1330 : Gamm = Cpm '*' (Cvm ** (-1.0)) ; 1331 : * Rho0 = pt0 '/' (Rgpm '*' (tf0 '+' 273.15)) ; 1332 : Rho0 = pt0 '*' ((Rgpm '*' (tf0 '+' 273.15))**(-1.0)); 1333 : Rvap0 = Rho0 '*' Yvap0 ; 1334 : Rhe0 = Rho0 '*' Yhe0 ; 1335 : Rh20 = Rho0 '*' Yh20 ; 1336 : Ro20 = Rho0 '*' Yo20 ; 1337 : Rn20 = Rho0 '*' Yn20 ; 1338 : Rco20 = Rho0 '*' Yco20 ; 1339 : Rco0 = Rho0 '*' Yco0 ; 1340 : Rair0 = Rho0 '*' Yair0 ; 1341 : 1342 : *----------------------------------------------------------- 1343 : * BRECHE : determination du facteur geometrique pour DEBIT 1344 : * en EF 1345 : * 1346 : 1347 : src=0. ; 1348 : src2=0. ; 1349 : 1350 : Si TTsortie ; 1351 : NBR=dime rxt.'Sorties' ; 1352 : ibr=index (rxt.'Sorties') ; 1353 : 1354 : Repeter BBRS NBR ; 1355 : Sriches=rxt.'Sorties'.(ibr.&BBRS) ; 1356 : mess ' Vérification Sortie guj ' (ibr.&BBRS) ; 1357 : diru=(Sriches.'diru')/(norm Sriches.'diru') ; 1358 : $sreche=Sriches.'$sreche' ; 1359 : srechec=Sriches.'srechec' ; 1360 : 'SI' DIM3D ; 1361 : Msrechec = 'CHAN' srechec 'QUAF' ; 1362 : elim Msrechec rxt.'epsi' ; 1363 : $srechec = 'MODE' Msrechec mdns TBT.'discr' ; 1364 : Sriches.'$srechec'=$srechec ; 1365 : gjc = 'KCHT' $srechec 'VECT' 'SOMMET' (0.0 0.0 0.0) ; 1366 : gjx = 'KCHT' $sreche 'VECT' 'SOMMET' diru gjc ; 1367 : 'SINON' ; 1368 : gjc = 'MANU' 'CHPO' srechec 2 'UX' 0.0 'UY' 0.0 1369 : 'NATURE' 'DISCRET' ; 1370 : gjx = 'KCHT' $sreche 'VECT' 'SOMMET' diru gjc ; 1371 : 'FINSI' ; 1372 : 1373 : unvf0 = 'KCHT' GEO.'$menvf' 'VECT' 'SOMMET' gjx ; 1374 : src = 'DBIT' unvf0 GEO.'$menvf' ; 1375 : fgeo = 'ABS' ((Sriches.'Ssreche') '*' (1./src)) ; 1376 : Sriches.'facgeo' = fgeo ; 1377 : FIN BBRS ; 1378 : FINSI ; 1379 : 1380 : Si TTbreche ; 1381 : NBR=dime rxt.'Breches' ; 1382 : ibr=index (rxt.'Breches') ; 1383 : 1384 : Repeter BBRS NBR ; 1385 : Briches=rxt.'Breches'.(ibr.&BBRS) ; 1386 : mess ' Vérification Breche guj ' (ibr.&BBRS) ; 1387 : diru=(Briches.'diru')/(norm Briches.'diru') ; 1388 : $breche=Briches.'$breche' ; 1389 : brechec=Briches.'brechec' ; 1390 : 'SI' DIM3D ; 1391 : Mbrechec = 'CHAN' brechec 'QUAF' ; 1392 : elim Mbrechec rxt.'epsi' ; 1393 : $brechec = 'MODE' Mbrechec mdns TBT.'discr' ; 1394 : Briches.'$brechec'=$brechec ; 1395 : gjc = 'KCHT' $brechec 'VECT' 'SOMMET' (0.0 0.0 0.0) ; 1396 : gjx = 'KCHT' $breche 'VECT' 'SOMMET' diru gjc ; 1397 : 'SINON' ; 1398 : gjc = 'MANU' 'CHPO' brechec 2 'UX' 0.0 'UY' 0.0 1399 : 'NATURE' 'DISCRET' ; 1400 : gjx = 'KCHT' $breche 'VECT' 'SOMMET' diru gjc ; 1401 : 'FINSI' ; 1402 : 1403 : unvf0 = 'KCHT' GEO.'$menvf' 'VECT' 'SOMMET' gjx ; 1404 : src = 'DBIT' unvf0 GEO.'$menvf' ; 1405 : fgeo = 'ABS' ((Briches.'Sbreche') '*' (1./src)) ; 1406 : Briches.'facgeo' = fgeo ; 1407 : FIN BBRS ; 1408 : FINSI ; 1409 : 1410 : Si(TBT.'Tbreche') ; 1411 : diru1=(TBT.'diru1')/(norm TBT.'diru1') ; 1412 : 'SI' DIM3D ; 1413 : Mbrechec = 'CHAN' brechec 'QUAF' ; 1414 : elim Mbrechec rxt.'epsi' ; 1415 : $brechec = 'MODE' Mbrechec mdns TBT.'discr' ; 1416 : GEO.'$brechec'=$brechec ; 1417 : gjc = 'KCHT' $brechec 'VECT' 'SOMMET' (0.0 0.0 0.0) ; 1418 : gjx = 'KCHT' $breche 'VECT' 'SOMMET' diru1 1419 : gjc ; 1420 : 'SINON' ; 1421 : gjc = 'MANU' 'CHPO' brechec 2 'UX' 0.0 'UY' 0.0 1422 : 'NATURE' 'DISCRET' ; 1423 : gjx = 'KCHT' $breche 'VECT' 'SOMMET' diru1 gjc ; 1424 : 'FINSI' ; 1425 : 1426 : unvf0 = 'KCHT' GEO.'$menvf' 'VECT' 'SOMMET' gjx ; 1427 : src = 'DBIT' unvf0 GEO.'$menvf' ; 1428 : fgeo = 'ABS' ((GEO.'Sbreche') '*' (1./src)) ; 1429 : GEO.'facgeo' = fgeo ; 1430 : Finsi ; 1431 : 1432 : Si (TBT.'Tbreche2'); 1433 : diru2=(TBT.'diru2')/(norm TBT.'diru2') ; 1434 : 'SI' DIM3D ; 1435 : Mbrechc2 = 'CHAN' brech2c 'QUAF' ; 1436 : elim Mbrechc2 rxt.'epsi' ; 1437 : $brech2c = 'MODE' Mbrechc2 mdns TBT.'discr' ; 1438 : GEO.'$brech2c'=$brech2c ; 1439 : gjc2 = 'KCHT' $brech2c 'VECT' 'SOMMET' (0.0 0.0 0.0) ; 1440 : gjx2 = 'KCHT' GEO.'$breche2' 'VECT' 'SOMMET' diru2 gjc2; 1441 : 'SINON' ; 1442 : gjc2 = 'MANU' 'CHPO' brech2c 2 'UX' 0.0 'UY' 0.0 1443 : 'NATURE' 'DISCRET' ; 1444 : gjx2 = 'KCHT' $breche2 'VECT' 'SOMMET' diru2 gjc2 ; 1445 : 'FINSI' ; 1446 : 1447 : unvf0 = 'KCHT' GEO.'$menvf' 'VECT' 'SOMMET' gjx2 ; 1448 : src2 = 'DBIT' unvf0 GEO.'$menvf' ; 1449 : fgeo2 = 'ABS' ((GEO.'Sbreche2') '*' (1./src2)) ; 1450 : GEO.'facgeo2' = fgeo2 ; 1451 : Finsi ; 1452 : 1453 : Si (TBT.'Tbreche3'); 1454 : diru3=(TBT.'diru3')/(norm TBT.'diru3') ; 1455 : 'SI' DIM3D ; 1456 : Mbrechc3 = 'CHAN' brech3c 'QUAF' ; 1457 : elim Mbrechc3 rxt.'epsi' ; 1458 : $brech3c = 'MODE' Mbrechc3 mdns TBT.'discr' ; 1459 : GEO.'$brech3c'=$brech3c ; 1460 : gjc3 = 'KCHT' $brech3c 'VECT' 'SOMMET' (0.0 0.0 0.0) ; 1461 : gjx3 = 'KCHT' GEO.'$breche3' 'VECT' 'SOMMET' diru3 gjc3; 1462 : 'SINON' ; 1463 : gjc3 = 'MANU' 'CHPO' brech3c 2 'UX' 0.0 'UY' 0.0 1464 : 'NATURE' 'DISCRET' ; 1465 : gjx3 = 'KCHT' $breche3 'VECT' 'SOMMET' diru3 gjc3 ; 1466 : 'FINSI' ; 1467 : 1468 : unvf0 = 'KCHT' GEO.'$menvf' 'VECT' 'SOMMET' gjx3 ; 1469 : src3 = 'DBIT' unvf0 GEO.'$menvf' ; 1470 : fgeo3 = 'ABS' ((GEO.'Sbreche3') '*' (1./src3)) ; 1471 : GEO.'facgeo3' = fgeo3 ; 1472 : Finsi ; 1473 : 1474 : *----------------------------------------------------------- 1475 : *----- FIN du TRAITEMENT DE LA BRECHE ---------------------- 1476 : *----------------------------------------------------------- 1477 : 1478 : *----- TRAITEMENT DES RECOMBINEURS 1479 : 'SI' (TBT.'TRECOMB') ; 1480 : NBREC = 'DIME' rxt.'RECOMB' ; 1481 : 'REPETER' BCLREC NBREC ; 1482 : $toto = 'CHAIN' '$REC' 'ent' &BCLREC ; 1483 : $tutu = 'CHAIN' '$REC' 'sor' &BCLREC ; 1484 : NAME = 'CHAIN' 'REC' 'entI' &BCLREC ; 1485 : ENTREEi = GEO.NAME ; 1486 : NAME = 'CHAIN' 'REC' 'entC' &BCLREC ; 1487 : ENTREEc = GEO.NAME ; 1488 : NAME = 'CHAIN' 'REC' 'sorI' &BCLREC ; 1489 : SORTIEi = GEO.NAME ; 1490 : NAME = 'CHAIN' 'REC' 'sorC' &BCLREC ; 1491 : SORTIEc = GEO.NAME ; 1492 : DIRENT = 'CHAIN' 'DREC' 'ent' &BCLREC ; 1493 : direntr = GEO. DIRENT ; 1494 : DIRSOR = 'CHAIN' 'DREC' 'sor' &BCLREC ; 1495 : dirsort = GEO. DIRSOR ; 1496 : 'SI' DIM3D ; 1497 : toto1 = 'MANU' 'CHPO' ('CHAN' ENTREEc 'POI1') 1498 : 3 'UX' 0.0 'UY' 0.0 'UZ' 0.0 'NATURE' 'DISCRET' ; 1499 : toto2 = 'KCHT' GEO.$toto 'VECT' 'SOMMET' direntr 1500 : toto1 ; 1501 : tutu1 = 'MANU' 'CHPO' ('CHAN' SORTIEc 'POI1') 1502 : 3 'UX' 0.0 'UY' 0.0 'UZ' 0.0 'NATURE' 'DISCRET' ; 1503 : tutu2 = 'KCHT' GEO.$tutu 'VECT' 'SOMMET' dirsort 1504 : tutu1 ; 1505 : 'SINON' ; 1506 : toto1 = 'MANU' 'CHPO' ENTREEc 1507 : 2 'UX' 0.0 'UY' 0.0 'NATURE' 'DISCRET' ; 1508 : toto2 = 'KCHT' GEO.$toto 'VECT' 'SOMMET' direntr 1509 : toto1 ; 1510 : tutu1 = 'MANU' 'CHPO' SORTIEc 1511 : 2 'UX' 0.0 'UY' 0.0 'NATURE' 'DISCRET' ; 1512 : tutu2 = 'KCHT' GEO.$tutu 'VECT' 'SOMMET' dirsort 1513 : tutu1 ; 1514 : 'FINSI' ; 1515 : toto3 = 'KCHT' GEO.'$menvf' 'VECT' 'SOMMET' toto2 ; 1516 : toto4 = 'DBIT' toto3 GEO.'$menvf' ; 1517 : tutu3 = 'KCHT' GEO.'$menvf' 'VECT' 'SOMMET' tutu2 ; 1518 : tutu4 = 'DBIT' tutu3 GEO.'$menvf' ; 1519 : S_ENT = 'CHAIN' 'SREC' 'ent' &BCLREC ; 1520 : S_SOR = 'CHAIN' 'SREC' 'sor' &BCLREC ; 1521 : toto5 = 'ABS' ((GEO.S_ENT) '*' (toto4**(-1.0))) ; 1522 : tutu5 = 'ABS' ((GEO.S_SOR) '*' (tutu4**(-1.0))) ; 1523 : FG_ENT = 'CHAIN' 'fgREC' 'ent' &BCLREC ; 1524 : GEO.FG_ENT = toto5 ; 1525 : FG_SOR = 'CHAIN' 'fgREC' 'sor' &BCLREC ; 1526 : GEO.FG_SOR = tutu5 ; 1527 : 'FIN' BCLREC ; 1528 : 'FINSI' ; 1529 : 1530 : *------------------------------------------------------------ 1531 : * TRAITEMENT DES EQUATIONS A RESOUDRE 1532 : *------------------------------------------------------------ 1533 : * 1534 : * - Definition de constantes intervenant dans les equations 1535 : * FCPRECI = Frequence de recalcul du préc. dans la methode iterative 1536 : * FCPRECT = Frequence de recalcul du préc. en fn du pas de temps 1537 : * calprec = logique pilotant le preconditionnement 1538 : 'SI' ('EXIS' RXT 'FRPREC') ; 1539 : calprec = VRAI ; 1540 : 'SI' ('EXIS' RXT 'FCPRECT') ; 1541 : FCPRECT = RXT.'FCPRECT' ; 1542 : 'SI' (FCPRECT 'EGA' 1) ; 1543 : 'MESS' 'ATTENTION! FCPRECT = 1!' ; 1544 : 'MESS' 'ON PRECONDITIONNE A CHAQUE ITERATION!' ; 1545 : 'FINSI' ; 1546 : 'SINON' ; 1547 : FCPRECT = 5 ; 1548 : 'FINSI' ; 1549 : 'SI' ('EXIS' RXT 'FCPRECI') ; 1550 : FCPRECI = RXT.'FCPRECI' ; 1551 : 'SI' (FCPRECI 'EGA' 1) ; 1552 : 'MESS' 'ATTENTION! FCPRECI = 1!' ; 1553 : 'MESS' 'ON PRECONDITIONNE A CHAQUE ITERATION!' ; 1554 : 'FINSI' ; 1555 : 'SINON' ; 1556 : FCPRECI = 5 ; 1557 : 'FINSI' ; 1558 : 'SINON' ; 1559 : RXT.'FRPREC' = 1 ; 1560 : calprec = FAUX ; 1561 : FCPRECI = 1 ; 1562 : FCPRECT = 1 ; 1563 : 'FINSI' ; 1564 : 1565 : * Donnees ŕ la brčche (vitesse et température 1566 : * pour les conditions aux limites 1567 : uj=0. ; 1568 : vj=-0. ; 1569 : wj=-1. ; 1570 : Tj = 0. ; 1571 : 1572 : *-- Suivant la formulation la ligne de commande change --------- 1573 : * LCTSCA ligne de commande de TSCA 1574 : LCTSCA='TEXT' 1. 'UN' 'NUEFF' 0. ; 1575 : Si (Ega TBT.'FEF' 'EFM1') ; 1576 : LCTSCA='TEXT' 'NUm' 'UN' 0. NUT 0.7 ; 1577 : Finsi ; 1578 : 1579 : DTX= 'DT' ; 1580 : *Si (EGA TBT.'FEF' 'EFM1') ; 1581 : *DTX= 'DELTAT' ; 1582 : *Finsi ; 1583 : 1584 : *--------------------------------------------------------------- 1585 : *- EQUATIONS DE LA QDM 1586 : * Formulation non conservative 1587 : * Decentrement SUPG 1588 : * 1589 : 'SI'((EGA TBT.'MODTURB' 'KEPSILON') et (EGA TBT.'FEF' 'EFM1')); 1590 : *---- Modčle K-Epsilon EFM1 -------------------------------- 1591 : rv= 'EQEX' 'NITER' 1 'OMEGA' 1.0 'ITMA' 0 1592 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' 1593 : 'ZONE' $vtf 'OPER' 'NSKE' 'NUm' 'NUT' 'ROG' 'INCO' 'UN' 'KN' 'EN' 1594 : 'OPTI' 'EFM1' 'CENTREE' 1595 : 'ZONE' $vtf 'OPER' 'DFDT' 1. 'UNM' DTX 'INCO' 'UN' 1596 : 'ZONE' $vtf 'OPER' 'DFDT' 1. 'KNM' DTX 'INCO' 'KN' 1597 : 'ZONE' $vtf 'OPER' 'DFDT' 1. 'ENM' DTX 'INCO' 'EN' 1598 : ; 1599 : *---- Modčle K-Epsilon EFM1 -- FIN ------------------------- 1600 : Sinon ; 1601 : rv= 'EQEX' 'NITER' 1 'OMEGA' 1.0 'ITMA' 0 1602 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' 1603 : * 'ZONE' $vtf 'OPER' 'SGE' 'UN' 'NU' 'INCO' 'UN' 1604 : 'ZONE' $vtf 'OPER' 'NS' 1. 'UN' 'NUEFF' 'ROG' 'INCO' 'UN' 1605 : 'OPTI' 'EFM1' 'CENTREE' 1606 : 'ZONE' $vtf 'OPER' 'DFDT' 1. 'UNM' DTX 'INCO' 'UN' 1607 : ; 1608 : Finsi ; 1609 : * 1610 : * - Conditions aux limites sur les parois (vitesse nulle) 1611 : * ou Fonctions de paroi 1612 : * 1613 : Si (TBT.'FPAROI') ; 1614 : rv= 'EQEX' rv 1615 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 1616 : 'ZONE' (GEO.'$menvfU') 'OPER' 'FPU' 'NUm' 'UET' (TBT.'YP') 1617 : 'INCO' 'UN' 'KN' 'EN' ; 1618 : *?pose un pb 'INCO' 'UN' ; 1619 : Sinon ; 1620 : rv= 'EQEX' rv 'CLIM' 1621 : 'UN' 'UIMP' GEO.'menvfU' 0. 1622 : 'UN' 'VIMP' GEO.'menvfU' 0. ; 1623 : 'SI' DIM3D ; 1624 : rv= 'EQEX' rv 'CLIM' 1625 : 'UN' 'WIMP' GEO.'menvfU' 0. ; 1626 : Finsi ; 1627 : Finsi ; 1628 : * 1629 : * - Conditions aux limites sur la brčche et les sorties 1630 : * 1631 : *!? 1632 : Si TTsortie ; 1633 : NBR=dime rxt.'Sorties' ; 1634 : ibr=index (rxt.'Sorties') ; 1635 : 1636 : Repeter BBRS NBR ; 1637 : Sriches=rxt.'Sorties'.(ibr.&BBRS) ; 1638 : mess ' Conditions limites sur la sortie ' (ibr.&BBRS) ; 1639 : srechei=Sriches.'srechei' ; 1640 : srechec=Sriches.'srechec' ; 1641 : rv= 'EQEX' rv 'CLIM' 1642 : 'UN' 'UIMP' srechei uj 1643 : 'UN' 'VIMP' srechei vj 1644 : 'UN' 'UIMP' srechec 0. 1645 : 'UN' 'VIMP' srechec 0. ; 1646 : FIN BBRS ; 1647 : FINSI ; 1648 : 1649 : Si TTbreche ; 1650 : NBR=dime rxt.'Breches' ; 1651 : ibr=index (rxt.'Breches') ; 1652 : 1653 : Repeter BBRS NBR ; 1654 : Briches=rxt.'Breches'.(ibr.&BBRS) ; 1655 : mess ' Conditions limites sur la brčche ' (ibr.&BBRS) ; 1656 : brechei=Briches.'brechei' ; 1657 : brechec=Briches.'brechec' ; 1658 : rv= 'EQEX' rv 'CLIM' 1659 : 'UN' 'UIMP' brechei uj 1660 : 'UN' 'VIMP' brechei vj 1661 : 'UN' 'UIMP' brechec 0. 1662 : 'UN' 'VIMP' brechec 0. ; 1663 : FIN BBRS ; 1664 : FINSI ; 1665 : 1666 : Si (TBT.'Tbreche') ; 1667 : rv= 'EQEX' rv 'CLIM' 1668 : 'UN' 'UIMP' brechei uj 1669 : 'UN' 'VIMP' brechei vj 1670 : 'UN' 'UIMP' brechec 0. 1671 : 'UN' 'VIMP' brechec 0. ; 1672 : Finsi ; 1673 : 1674 : Si (TBT.'Tbreche2') ; 1675 : rv= 'EQEX' rv 'CLIM' 1676 : 'UN' 'UIMP' brech2i uj 1677 : 'UN' 'VIMP' brech2i vj 1678 : 'UN' 'UIMP' brech2c 0. 1679 : 'UN' 'VIMP' brech2c 0. ; 1680 : Finsi ; 1681 : 1682 : Si (TBT.'Tbreche3') ; 1683 : rv= 'EQEX' rv 'CLIM' 1684 : 'UN' 'UIMP' brech3i uj 1685 : 'UN' 'VIMP' brech3i vj 1686 : 'UN' 'UIMP' brech3c 0. 1687 : 'UN' 'VIMP' brech3c 0. ; 1688 : Finsi ; 1689 : 1690 : 'SI' (TBT.'TRECOMB') ; 1691 : NBREC = 'DIME' rxt.'RECOMB' ; 1692 : 'REPETER' BCLREC NBREC ; 1693 : NAME = 'CHAIN' 'REC' 'entI' &BCLREC ; 1694 : ENTREEi = GEO.NAME ; 1695 : NAME = 'CHAIN' 'REC' 'entC' &BCLREC ; 1696 : ENTREEc = GEO.NAME ; 1697 : NAME = 'CHAIN' 'REC' 'sorI' &BCLREC ; 1698 : SORTIEi = GEO.NAME ; 1699 : NAME = 'CHAIN' 'REC' 'sorC' &BCLREC ; 1700 : SORTIEc = GEO.NAME ; 1701 : rv= 'EQEX' rv 'CLIM' 1702 : 'UN' 'UIMP' ENTREEi uj 1703 : 'UN' 'VIMP' ENTREEi vj 1704 : 'UN' 'UIMP' ENTREEc 0. 1705 : 'UN' 'VIMP' ENTREEc 0. ; 1706 : rv= 'EQEX' rv 'CLIM' 1707 : 'UN' 'UIMP' SORTIEi uj 1708 : 'UN' 'VIMP' SORTIEi vj 1709 : 'UN' 'UIMP' SORTIEc 0. 1710 : 'UN' 'VIMP' SORTIEc 0. ; 1711 : 'SI' DIM3D ; 1712 : rv= 'EQEX' rv 'CLIM' 1713 : 'UN' 'WIMP' ENTREEi Wj 1714 : 'UN' 'WIMP' ENTREEc 0. ; 1715 : rv= 'EQEX' rv 'CLIM' 1716 : 'UN' 'WIMP' SORTIEi Wj 1717 : 'UN' 'WIMP' SORTIEc 0. ; 1718 : 'FINSI' ; 1719 : 'FIN' BCLREC ; 1720 : 'FINSI' ; 1721 : 1722 : 'SI' DIM3D ; 1723 : Si TTsortie ; 1724 : NBR=dime rxt.'Sorties' ; 1725 : ibr=index (rxt.'Sorties') ; 1726 : Repeter BBRS NBR ; 1727 : Sriches=rxt.'Sorties'.(ibr.&BBRS) ; 1728 : mess ' Conditions limites sur la sortie ' (ibr.&BBRS) ; 1729 : srechei=Sriches.'srechei' ; 1730 : srechec=Sriches.'srechec' ; 1731 : rv= 'EQEX' rv 'CLIM' 1732 : 'UN' 'WIMP' srechei wj 1733 : 'UN' 'WIMP' srechec 0. ; 1734 : FIN BBRS ; 1735 : FINSI ; 1736 : 1737 : Si TTbreche ; 1738 : NBR=dime rxt.'Breches' ; 1739 : ibr=index (rxt.'Breches') ; 1740 : Repeter BBRS NBR ; 1741 : Briches=rxt.'Breches'.(ibr.&BBRS) ; 1742 : mess ' Conditions limites sur la brčche ' (ibr.&BBRS) ; 1743 : brechei=Briches.'brechei' ; 1744 : brechec=Briches.'brechec' ; 1745 : rv= 'EQEX' rv 'CLIM' 1746 : 'UN' 'WIMP' brechei wj 1747 : 'UN' 'WIMP' brechec 0. ; 1748 : FIN BBRS ; 1749 : FINSI ; 1750 : 1751 : Si (TBT.'Tbreche') ; 1752 : rv= 'EQEX' rv 'CLIM' 1753 : 'UN' 'WIMP' brechei wj 1754 : 'UN' 'WIMP' brechec 0. ; 1755 : Finsi ; 1756 : 1757 : Si (TBT.'Tbreche2') ; 1758 : rv= 'EQEX' rv 'CLIM' 1759 : 'UN' 'WIMP' brech2i wj 1760 : 'UN' 'WIMP' brech2c 0. ; 1761 : Finsi ; 1762 : 1763 : Si (TBT.'Tbreche3') ; 1764 : rv= 'EQEX' rv 'CLIM' 1765 : 'UN' 'WIMP' brech3i wj 1766 : 'UN' 'WIMP' brech3c 0. ; 1767 : Finsi ; 1768 : 1769 : 'FINSI' ; 1770 : 1771 : 'SI' (TBT.'Taxe' et (EGA (VALE MODE) 'AXIS')) ; 1772 : axe = GEO.'axe' ; 1773 : rv= 'EQEX' rv 'CLIM' 1774 : 'UN' 'UIMP' axe 0. ; 1775 : 'FINSI' ; 1776 : 1777 : *--------------------------------------------------------------- 1778 : * Definition des inconnues vitesse UN et terme source 1779 : * de flottabilite ROG 1780 : * 1781 : * - Definition de la table des inconnues 1782 : rv.inco= tic ; 1783 : 1784 : 'SI' DIM3D ; 1785 : uinj matvide= kops 'MATRIK' ; 1786 : Si TTsortie ; 1787 : NBR=dime rxt.'Sorties' ; 1788 : ibr=index (rxt.'Sorties') ; 1789 : Repeter BBRS NBR ; 1790 : Sriches=rxt.'Sorties'.(ibr.&BBRS) ; 1791 : * mess ' Conditions limites unj ??? ' (ibr.&BBRS) ; 1792 : srechei=Sriches.'srechei' ; 1793 : $sreche=Sriches.'$sreche' ; 1794 : uino = 'KCHT' $sreche 'VECT' 'SOMMET' (0. 0. 1.) ; 1795 : uino = 'REDU' srechei uino ; 1796 : uino = 'KCHT' $sreche 'VECT' 'SOMMET' uino ; 1797 : uinj = uinj + uino ; 1798 : FIN BBRS ; 1799 : FINSI ; 1800 : Si TTbreche ; 1801 : mess ' Tient on passe la '; 1802 : NBR=dime rxt.'Breches' ; 1803 : ibr=index (rxt.'Breches') ; 1804 : Repeter BBRS NBR ; 1805 : Briches=rxt.'Breches'.(ibr.&BBRS) ; 1806 : * mess ' Conditions limites unj ??? ' (ibr.&BBRS) ; 1807 : brechei=Briches.'brechei' ; 1808 : $breche=Briches.'$breche' ; 1809 : uino = 'KCHT' $breche 'VECT' 'SOMMET' (0. 0. 1.) ; 1810 : uino = 'REDU' brechei uino ; 1811 : uino = 'KCHT' $breche 'VECT' 'SOMMET' uino ; 1812 : uinj = uinj + uino ; 1813 : FIN BBRS ; 1814 : FINSI ; 1815 : 'SI' (TBT.'Tbreche'); 1816 : mess ' Il y a une breche '; 1817 : doma $breche impr; 1818 : uin1 = 'KCHT' $breche 'VECT' 'SOMMET' (0. 0. 1.); 1819 : uin1 = 'REDU' brechei uin1; 1820 : uin1 = 'KCHT' $breche 'VECT' 'SOMMET' uin1; 1821 : uinj = uinj + uin1; 1822 : 'FINSI'; 1823 : 'SI' (TBT.'Tbreche2'); 1824 : uin2 = 'KCHT' GEO.'$breche2' 'VECT' 'SOMMET' (0. 0. (-1.)); 1825 : uin2 = 'REDU' brech2i uin2; 1826 : uin2 = 'KCHT' GEO.'$breche2' 'VECT' 'SOMMET' uin2; 1827 : uinj = uinj + uin2; 1828 : 'FINSI'; 1829 : 'SI' (TBT.'Tbreche3'); 1830 : uin3 = 'KCHT' GEO.'$breche3' 'VECT' 'SOMMET' (0. 0. (-1.)); 1831 : uin3 = 'REDU' brech3i uin3; 1832 : uin3 = 'KCHT' GEO.'$breche3' 'VECT' 'SOMMET' uin3; 1833 : uinj = uinj + uin3; 1834 : 'FINSI'; 1835 : 1836 : Si (exist tic 'UN'); 1837 : ma=extr tic.'UN' MAILLAGE ; 1838 : ms=doma $vtf 'SOMMET' ; 1839 : ELIM (ma et ms) epsi ; 1840 : tic.'UN' = 'KCHT' $vtf 'VECT' 'SOMMET' (tic.'UN') ; 1841 : Sinon ; 1842 : 'SI' ((TBT.'Tbreche') ou (TBT.'Tbreche2') ou (TBT.'Tbreche3') 1843 : ou TTbreche ou TTsortie); 1844 : tic.'UN' = 'KCHT' $vtf 'VECT' 'SOMMET' (0. 0. 0.) uinj; 1845 : 'SINON'; 1846 : tic.'UN' = 'KCHT' $vtf 'VECT' 'SOMMET' (0. 0. 0.); 1847 : 'FINSI'; 1848 : Finsi ; 1849 : 1850 : Si (exist tic 'UNM'); 1851 : ma=extr tic.'UNM' MAILLAGE ; 1852 : ms=doma $vtf 'SOMMET' ; 1853 : ELIM (ma et ms) epsi ; 1854 : tic.'UNM' = 'KCHT' $vtf 'VECT' 'SOMMET' (tic.'UNM'); 1855 : Sinon ; 1856 : 'SI' ((TBT.'Tbreche') ou (TBT.'Tbreche2') ou (TBT.'Tbreche3') 1857 : ou TTbreche ou TTsortie); 1858 : tic.'UNM' = 'KCHT' $vtf 'VECT' 'SOMMET' (0. 0. 0.) uinj; 1859 : 'SINON'; 1860 : tic.'UNM' = 'KCHT' $vtf 'VECT' 'SOMMET' (0. 0. 0.); 1861 : 'FINSI'; 1862 : Finsi ; 1863 : 1864 : Si(exist tic 'ROG'); 1865 : ma=extr tic.'ROG' MAILLAGE ; 1866 : mc=doma $vtf 'CENTRE' ; 1867 : ELIM (ma et mc) epsi ; 1868 : tic.'ROG' = 'KCHT' $vtf 'VECT' 'CENTRE' (tic.'ROG') ; 1869 : Sinon ; 1870 : tic.'ROG' = 'KCHT' $vtf 'VECT' 'CENTRE' (0. 0. 0.) ; 1871 : Finsi ; 1872 : 1873 : 'SINON' ; 1874 : 1875 : uinj matvide= kops 'MATRIK' ; 1876 : Si TTsortie ; 1877 : NBR=dime rxt.'Sorties' ; 1878 : ibr=index (rxt.'Sorties') ; 1879 : Repeter BBRS NBR ; 1880 : Sriches=rxt.'Sorties'.(ibr.&BBRS) ; 1881 : srechei=Sriches.'srechei' ; 1882 : $sreche=Sriches.'$sreche' ; 1883 : uino = 'KCHT' $sreche 'VECT' 'SOMMET' (0. 1.) ; 1884 : uino = 'REDU' srechei uino ; 1885 : uino = 'KCHT' $sreche 'VECT' 'SOMMET' uino ; 1886 : uinj = uinj + uino ; 1887 : FIN BBRS ; 1888 : FINSI ; 1889 : Si TTbreche ; 1890 : NBR=dime rxt.'Breches' ; 1891 : ibr=index (rxt.'Breches') ; 1892 : Repeter BBRS NBR ; 1893 : Briches=rxt.'Breches'.(ibr.&BBRS) ; 1894 : brechei=Briches.'brechei' ; 1895 : $breche=Briches.'$breche' ; 1896 : uino = 'KCHT' $breche 'VECT' 'SOMMET' (0. 1.) ; 1897 : uino = 'REDU' brechei uino ; 1898 : uino = 'KCHT' $breche 'VECT' 'SOMMET' uino ; 1899 : uinj = uinj + uino ; 1900 : FIN BBRS ; 1901 : FINSI ; 1902 : 'SI' (TBT.'Tbreche'); 1903 : uin1 = 'KCHT' $breche 'VECT' 'SOMMET' (0. 1.); 1904 : uin1 = 'REDU' brechei uin1; 1905 : uin1 = 'KCHT' $breche 'VECT' 'SOMMET' uin1; 1906 : uinj = uinj + uin1 ; 1907 : 'FINSI'; 1908 : 'SI' (TBT.'Tbreche2'); 1909 : uin2 = 'KCHT' GEO.'$breche2' 'VECT' 'SOMMET' (0. (-1.)); 1910 : uin2 = 'REDU' brech2i uin2; 1911 : uin2 = 'KCHT' GEO.'$breche2' 'VECT' 'SOMMET' uin2; 1912 : uinj = uinj + uin2; 1913 : 'FINSI'; 1914 : 'SI' (TBT.'Tbreche3'); 1915 : uin3 = 'KCHT' GEO.'$breche3' 'VECT' 'SOMMET' (0. (-1.)); 1916 : uin3 = 'REDU' brech3i uin3; 1917 : uin3 = 'KCHT' GEO.'$breche3' 'VECT' 'SOMMET' uin3; 1918 : uinj = uinj + uin3; 1919 : 'FINSI'; 1920 : 1921 : 1922 : Si(exist tic 'UN'); 1923 : ma=extr tic.'UN' MAILLAGE ; 1924 : ms=doma $vtf 'SOMMET' ; 1925 : ELIM (ma et ms) epsi ; 1926 : tic.'UN' = 'KCHT' $vtf 'VECT' 'SOMMET' (tic.'UN') ; 1927 : Sinon ; 1928 : 'SI' ((TBT.'Tbreche') ou (TBT.'Tbreche2') ou (TBT.'Tbreche3') 1929 : ou TTbreche ou TTsortie); 1930 : tic.'UN' = 'KCHT' $vtf 'VECT' 'SOMMET' (0. 0.) uinj; 1931 : 'SINON'; 1932 : tic.'UN' = 'KCHT' $vtf 'VECT' 'SOMMET' (0. 0.); 1933 : 'FINSI'; 1934 : Finsi ; 1935 : 1936 : Si(exist tic 'UNM'); 1937 : ma=extr tic.'UNM' MAILLAGE ; 1938 : ms=doma $vtf 'SOMMET' ; 1939 : ELIM (ma et ms) epsi ; 1940 : tic.'UNM' = 'KCHT' $vtf 'VECT' 'SOMMET' (tic.'UNM') ; 1941 : Sinon ; 1942 : 'SI' ((TBT.'Tbreche') ou (TBT.'Tbreche2') ou (TBT.'Tbreche3') 1943 : ou TTbreche ou TTsortie); 1944 : tic.'UNM' = 'KCHT' $vtf 'VECT' 'SOMMET' (0. 0.) uinj; 1945 : 'SINON'; 1946 : tic.'UNM' = 'KCHT' $vtf 'VECT' 'SOMMET' (0. 0.); 1947 : 'FINSI'; 1948 : Finsi ; 1949 : 1950 : Si(exist tic 'ROG'); 1951 : ma=extr tic.'ROG' MAILLAGE ; 1952 : mc=doma $vtf 'CENTRE' ; 1953 : ELIM (ma et mc) epsi ; 1954 : tic.'ROG' = 'KCHT' $vtf 'VECT' 'CENTRE' (tic.'ROG') ; 1955 : Sinon ; 1956 : tic.'ROG' = 'KCHT' $vtf 'VECT' 'CENTRE' (0. 0.) ; 1957 : Finsi ; 1958 : 1959 : 'FINSI' ; 1960 : 1961 : 'SI'(EGA TBT.'MODTURB' 'KEPSILON') ; 1962 : Si(exist tic 'KN') ; 1963 : *ma=extr tic.'KN' MAILLAGE ; 1964 : *mc=doma $vtf 'SOMMET' ; 1965 : *ELIM (ma et mc) epsi ; 1966 : tic.'KN' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'KN') ; 1967 : Sinon ; 1968 : tic.'KN' = 'KCHT' $vtf 'SCAL' 'SOMMET' 1.e-5 ; 1969 : Finsi ; 1970 : Si(exist tic 'EN') ; 1971 : *ma=extr tic.'EN' MAILLAGE ; 1972 : *mc=doma $vtf 'SOMMET' ; 1973 : *ELIM (ma et mc) epsi ; 1974 : tic.'EN' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'EN') ; 1975 : Sinon ; 1976 : tic.'EN' = 'KCHT' $vtf 'SCAL' 'SOMMET' 1.e-5 ; 1977 : Finsi ; 1978 : Si(exist tic 'KNM') ; 1979 : *ma=extr tic.'KNM' MAILLAGE ; 1980 : *mc=doma $vtf 'SOMMET' ; 1981 : *ELIM (ma et mc) epsi ; 1982 : tic.'KNM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'KNM') ; 1983 : Sinon ; 1984 : tic.'KNM' = 'KCHT' $vtf 'SCAL' 'SOMMET' 1.e-5 ; 1985 : Finsi ; 1986 : Si(exist tic 'ENM') ; 1987 : *ma=extr tic.'ENM' MAILLAGE ; 1988 : *mc=doma $vtf 'SOMMET' ; 1989 : *ELIM (ma et mc) epsi ; 1990 : tic.'ENM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'ENM') ; 1991 : Sinon ; 1992 : tic.'ENM' = 'KCHT' $vtf 'SCAL' 'SOMMET' 1.e-5 ; 1993 : Finsi ; 1994 : Si(exist tic 'NUT') ; 1995 : *ma=extr tic.'NUT' MAILLAGE ; 1996 : *mc=doma $vtf 'CENTRE' ; 1997 : *ELIM (ma et mc) epsi ; 1998 : tic.'NUT' = 'KCHT' $vtf 'SCAL' 'CENTRE' (tic.'NUT') ; 1999 : Sinon ; 2000 : tic.'NUT' = 'KCHT' $vtf 'SCAL' 'CENTRE' 1.e-10 ; 2001 : Finsi ; 2002 : 'FINSI' ; 2003 : *----------------------------------------------------------------------- 2004 : * Specification pour la resolution du systeme 2005 : * TYPINV = 3 : Gradient Conjugue 2006 : * = 2 : BiCGStab 2007 : * = 1 : Methode Directe 2008 : * PRECOND = 3 Preconditionnement I-LU(0) 2009 : * NITMAX = nombre maximal d'iterations 2010 : * RESID = precision du Residu EPSS 2011 : * 2012 : *----------------------------------------------------------------------- 2013 : * Precision EPSS 2014 : * EPSS = 1.e-5 ; 2015 : EPSS = 1.e-10 ; 2016 : * Nombre total d iterations 2017 : NTIT = 600 ; 2018 : 2019 : rv.'METHINV'.TYPINV=TBT.'TYPINV' ; 2020 : rv.'METHINV'.TYPRENU=TBT.'RENU' ; 2021 : rv.'METHINV'.IMPINV=TBT.'nimpr' ; 2022 : rv.'METHINV'.NITMAX=NTIT ; 2023 : rv.'METHINV'.PRECOND=3 ; 2024 : rv.'METHINV'.'FCPRECI' = FCPRECI ; 2025 : rv.'METHINV'.'FCPRECT' = FCPRECT ; 2026 : rv.'METHINV'.'CALPREC' = calprec ; 2027 : rv.'METHINV'.RESID = EPSS ; 2028 : 2029 : *---------------------------------------------------------------------- 2030 : * Definition du minimum pour recalcul du preconditionnement 2031 : * 2032 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2033 : * 'SI' ( 'NON' tbt.'UTILPREC' ) ; 2034 : * rv.'MINPREC' = rv.'METHINV'.NITMAX ; 2035 : * 'FINSI' ; 2036 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2037 : *---------------------------------------------------------------------- 2038 : * Traitement de la PRESSION 2039 : * 2040 : 2041 : 'MESS' '==> Algorithme de Projection' ; 2042 : rvpr= 'EQEX' 2043 : 'OPTI' TBT.'FEF' TBT.'FIMPL' TBT.'KPRE' 'SUPG' 2044 : 'ZONE' $vtf 'OPER' 'KBBT' -1. (TBT.'STAB') 'INCO' 'UN' 'PRES' 2045 : ; 2046 : 2047 : Si (NON TBT.'Tsortie') ; 2048 : rvpr= 'EQEX' rvpr 2049 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'INCOD' TBT.'KPRE' 2050 : 'ZONE' $vtf 'OPER' 'FIMP' 'DSRC' 'INCO' 'PRES' ; 2051 : Finsi ; 2052 : 2053 : Si(exist rxt 'pi') ; 2054 : 2055 : Si(TBT.'Tsortie') ; 2056 : Si(EGA TBT.'KPRE' 'MSOMMET') ; 2057 : sortiep=doma GEO.'$sortie' MSOMMET ; 2058 : rvpr='EQEX' rvpr 2059 : 'CLIM' 'PRES' 'TIMP' sortiep 0. ; 2060 : Finsi ; 2061 : Sinon ; 2062 : rvpr='EQEX' rvpr 2063 : 'CLIM' 'PRES' 'TIMP' Pimp 0. ; 2064 : Finsi ; 2065 : 2066 : Finsi ; 2067 : 2068 : Si (TBT.'FPAROI') ; 2069 : rvpr= 'EQEX' rvpr 2070 : 'OPTI' TBT.'FEF' TBT.'FIMPL' TBT.'KPRE' 2071 : 'ZONE' (GEO.'$menvfU') 'OPER' 'VNIMP' $vtf 0. 'INCO' 'UN' 'PRES' ; 2072 : Finsi ; 2073 : 2074 : 'SI' (TBT.'Taxe') ; 2075 : rvpr= 'EQEX' rvpr 2076 : 'OPTI' TBT.'FEF' TBT.'FIMPL' TBT.'KPRE' 2077 : 'ZONE' (GEO.'$axe') 'OPER' 'VNIMP' $vtf 0. 'INCO' 'UN' 'PRES' ; 2078 : 'FINSI' ; 2079 : 2080 : 2081 : MAXEL=TBT.'MAXELPRE' ; 2082 : mess ' Maximum d éléments pour une résolution directe de la pression ' 2083 : MAXEL; 2084 : 'SI' ((NBEL vtf) '<EG' MAXEL) ; 2085 : rvpr.'METHINV'.TYPINV= 1 ; 2086 : rvpr.'METHINV'.TYPRENU=TBT.'RENU' ; 2087 : rvpr.'METHINV'.IMPINV=TBT.'nimpr' ; 2088 : mess ' Nombre d éléments: ' (NBEL VTF) ' => Méthode directe'; 2089 : 'SINON' ; 2090 : rvpr.'METHINV'.TYPINV=TBT.'TYPINV' ; 2091 : rvpr.'METHINV'.TYPRENU=TBT.'RENU' ; 2092 : rvpr.'METHINV'.IMPINV=TBT.'nimpr' ; 2093 : rvpr.'METHINV'.NITMAX= 400 ; 2094 : rvpr.'METHINV'.PRECOND=3 ; 2095 : rvpr.'METHINV'.'FCPRECI' = FCPRECI ; 2096 : rvpr.'METHINV'.'FCPRECT' = FCPRECT ; 2097 : rvpr.'METHINV'.'CALPREC' = calprec ; 2098 : rvpr.'METHINV'.RESID =1.e-12 ; 2099 : mess ' Nombre d éléments: ' (NBEL VTF) ' => Méthode itérative, TYPINV=' 2100 : TBT.'TYPINV'; 2101 : 'FINSI' ; 2102 : 2103 : rv.'PROJ' = rvpr ; 2104 : 2105 : *------------------------------------------------------------- 2106 : * Definition de l'inconnue de PRESSION 2107 : * 2108 : Si(exist tic 'PRES'); 2109 : ma=extr tic.'PRES' MAILLAGE ; 2110 : ms=doma $vtf TBT.'KPRE'; 2111 : ELIM (ma et ms) epsi ; 2112 : tic.'PRES' = 'KCHT' $vtf 'SCAL' TBT.'KPRE' (tic.'PRES') ; 2113 : Sinon ; 2114 : tic.'PRES' = 'KCHT' $vtf 'SCAL' TBT.'KPRE' 1.e-5 ; 2115 : Finsi ; 2116 : 2117 : *------------------------------------------------------------ 2118 : *-- EQUATIONS DU MODčLE K-EPSILON 2119 : Si ( Exist TBT 'MODTURB') ; 2120 : 2121 : Si ((Ega TBT.'MODTURB' 'KEPSILON') et (NON (Ega TBT.'FEF' 'EFM1'))) ; 2122 : 2123 : Rrk= 'EQEX' 'NITER' 1 'OMEGA' 1.0 'ITMA' 0 2124 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' 'NOCONS' 2125 : 'ZONE' $vtf 'OPER' 'TSCA' 1. 'UN' 'NUEFF' 'Sk' 'INCO' 'KN' 2126 : 'OPTI' 'EFM1' 'CENTREE' 2127 : 'ZONE' $vtf 'OPER' 'DFDT' 1. 'KNM' DTX 'INCO' 'KN' 2128 : ; 2129 : 2130 : Rre= 'EQEX' 'NITER' 1 'OMEGA' 1.0 'ITMA' 0 2131 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' 'NOCONS' 2132 : 'ZONE' $vtf 'OPER' 'TSCA' 1. 'UN' 'NUEFF' 'Se' 'INCO' 'EN' 2133 : 'OPTI' 'EFM1' 'CENTREE' 2134 : 'ZONE' $vtf 'OPER' 'DFDT' 1. 'ENM' DTX 'INCO' 'EN' 2135 : ; 2136 : * 2137 : * - Conditions aux limites sur la brčche 2138 : * 2139 : Rrk= 'EQEX' Rrk 'CLIM' 'KN' 'TIMP' GEO.'menvf' 0. ; 2140 : Rre= 'EQEX' Rre 'CLIM' 'EN' 'TIMP' GEO.'menvf' 1.e30 ; 2141 : kj=0. ; 2142 : ej=1.e30 ; 2143 : Si TTsortie ; 2144 : NBR=dime rxt.'Sorties' ; 2145 : ibr=index (rxt.'Sorties') ; 2146 : Repeter BBRS NBR ; 2147 : Briches=rxt.'Sorties'.(ibr.&BBRS) ; 2148 : mess ' Conditions limites sur K et Epsilon sortie ' 2149 : (ibr.&BBRS) ; 2150 : brechei=Briches.'brechei' ; 2151 : brechec=Briches.'brechec' ; 2152 : Rrk= 'EQEX' Rrk 'CLIM' 'KN' 'TIMP' brechei kj 2153 : 'KN' 'TIMP' brechec 0. ; 2154 : Rre= 'EQEX' Rre 'CLIM' 'EN' 'TIMP' brechei ej 2155 : 'EN' 'TIMP' brechec 1.e30 ; 2156 : FIN BBRS ; 2157 : FINSI ; 2158 : 2159 : Si TTbreche ; 2160 : NBR=dime rxt.'Breches' ; 2161 : ibr=index (rxt.'Breches') ; 2162 : Repeter BBRS NBR ; 2163 : Briches=rxt.'Breches'.(ibr.&BBRS) ; 2164 : mess ' Conditions limites sur K et Epsilon brčche ' 2165 : (ibr.&BBRS) ; 2166 : brechei=Briches.'brechei' ; 2167 : brechec=Briches.'brechec' ; 2168 : Rrk= 'EQEX' Rrk 'CLIM' 'KN' 'TIMP' brechei kj 2169 : 'KN' 'TIMP' brechec 0. ; 2170 : Rre= 'EQEX' Rre 'CLIM' 'EN' 'TIMP' brechei ej 2171 : 'EN' 'TIMP' brechec 1.e30 ; 2172 : FIN BBRS ; 2173 : FINSI ; 2174 : 2175 : Si (TBT.'Tbreche') ; 2176 : Rrk= 'EQEX' Rrk 'CLIM' 'KN' 'TIMP' brechei kj 2177 : 'KN' 'TIMP' brechec 0. ; 2178 : Rre= 'EQEX' Rre 'CLIM' 'EN' 'TIMP' brechei ej 2179 : 'EN' 'TIMP' brechec 1.e30 ; 2180 : Finsi ; 2181 : 2182 : Si (TBT.'Tbreche2') ; 2183 : Rrk= 'EQEX' Rrk 'CLIM' 'KN' 'TIMP' brech2i kj 2184 : 'KN' 'TIMP' brech2c 0. ; 2185 : Rre= 'EQEX' Rre 'CLIM' 'EN' 'TIMP' brech2i ej 2186 : 'EN' 'TIMP' brech2c 1.e30 ; 2187 : Finsi ; 2188 : 2189 : Si (TBT.'Tbreche3') ; 2190 : Rrk= 'EQEX' Rrk 'CLIM' 'KN' 'TIMP' brech3i kj 2191 : 'KN' 'TIMP' brech3c 0. ; 2192 : Rre= 'EQEX' Rre 'CLIM' 'EN' 'TIMP' brech3i ej 2193 : 'EN' 'TIMP' brech3c 1.e30 ; 2194 : Finsi ; 2195 : 2196 : Rrk .inco = tic ; 2197 : Rrk .'METHINV'.TYPINV=TBT.'TYPINV' ; 2198 : Rrk .'METHINV'.TYPRENU=TBT.'RENU' ; 2199 : Rrk .'METHINV'.IMPINV=TBT.'nimpr' ; 2200 : Rrk .'METHINV'.NITMAX=NTIT ; 2201 : Rrk .'METHINV'.PRECOND=3 ; 2202 : Rrk .'METHINV'.'FCPRECI' = FCPRECI ; 2203 : Rrk .'METHINV'.'FCPRECT' = FCPRECT ; 2204 : Rrk .'METHINV'.'CALPREC' = calprec ; 2205 : Rrk .'METHINV'.RESID = EPSS ; 2206 : 2207 : 2208 : Rre .inco = tic ; 2209 : Rre .'METHINV'.TYPINV=TBT.'TYPINV' ; 2210 : Rre .'METHINV'.TYPRENU=TBT.'RENU' ; 2211 : Rre .'METHINV'.IMPINV=TBT.'nimpr' ; 2212 : Rre .'METHINV'.NITMAX=NTIT ; 2213 : Rre .'METHINV'.PRECOND=3 ; 2214 : Rre .'METHINV'.'FCPRECI' = FCPRECI ; 2215 : Rre .'METHINV'.'FCPRECT' = FCPRECT ; 2216 : Rre .'METHINV'.'CALPREC' = calprec ; 2217 : Rre .'METHINV'.RESID = EPSS ; 2218 : 2219 : 2220 : *---------------------------------------------------------------------- 2221 : * Definition du minimum pour recalcul du preconditionnement 2222 : * 2223 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2224 : * 'SI' ( 'NON' tbt.'UTILPREC' ) ; 2225 : * Rrk .'MINPREC' = Rrk .'METHINV'.NITMAX ; 2226 : * Rre .'MINPREC' = Rre .'METHINV'.NITMAX ; 2227 : * 'FINSI' ; 2228 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2229 : 2230 : Si (exist tic 'KN') ; 2231 : ma=extr tic.'KN' MAILLAGE ; 2232 : ms=doma $vtf 'SOMMET' ; 2233 : ELIM (ma et ms) epsi ; 2234 : tic.'KN' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'KN') ; 2235 : Sinon ; 2236 : tic.'KN' = 'KCHT' $vtf 'SCAL' 'SOMMET' 0. ; 2237 : Finsi ; 2238 : 2239 : Si (exist tic 'KNM') ; 2240 : ma=extr tic.'KNM' MAILLAGE ; 2241 : ms=doma $vtf 'SOMMET' ; 2242 : ELIM (ma et ms) epsi ; 2243 : tic.'KNM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'KNM') ; 2244 : Sinon ; 2245 : tic.'KNM' = 'KCHT' $vtf 'SCAL' 'SOMMET' 0. ; 2246 : Finsi ; 2247 : 2248 : Si(exist tic 'Sk') ; 2249 : ma=extr tic.'Sk' MAILLAGE ; 2250 : mc=doma $vtf 'SOMMET' ; 2251 : ELIM (ma et mc) epsi ; 2252 : tic.'Sk' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'Sk') ; 2253 : Sinon ; 2254 : tic.'Sk' = 'KCHT' $vtf 'SCAL' 'SOMMET' 0. ; 2255 : Finsi ; 2256 : 2257 : Si (exist tic 'EN') ; 2258 : ma=extr tic.'EN' MAILLAGE ; 2259 : ms=doma $vtf 'SOMMET' ; 2260 : ELIM (ma et ms) epsi ; 2261 : tic.'EN' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'EN') ; 2262 : Sinon ; 2263 : tic.'EN' = 'KCHT' $vtf 'SCAL' 'SOMMET' 1.e-5 ; 2264 : Finsi ; 2265 : *mess ' EN OK ' ; 2266 : Si (exist tic 'ENM') ; 2267 : ma=extr tic.'ENM' MAILLAGE ; 2268 : ms=doma $vtf 'SOMMET' ; 2269 : ELIM (ma et ms) epsi ; 2270 : tic.'ENM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'ENM') ; 2271 : Sinon ; 2272 : tic.'ENM' = 'KCHT' $vtf 'SCAL' 'SOMMET' 1.e-5 ; 2273 : Finsi ; 2274 : 2275 : Si(exist tic 'Se') ; 2276 : ma=extr tic.'Se' MAILLAGE ; 2277 : mc=doma $vtf 'SOMMET' ; 2278 : ELIM (ma et mc) epsi ; 2279 : tic.'Se' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'Se') ; 2280 : Sinon ; 2281 : tic.'Se' = 'KCHT' $vtf 'SCAL' 'SOMMET' 0. ; 2282 : Finsi ; 2283 : 2284 : Si (exist tic 'NUEFF') ; 2285 : ma=extr tic.'NUEFF' MAILLAGE ; 2286 : ms=doma $vtf 'SOMMET' ; 2287 : ELIM (ma et ms) epsi ; 2288 : tic.'NUEFF'='KCHT' $vtf 'SCAL' ('CHAI' TBT.'SPGNU') (tic.'NUEFF'); 2289 : Sinon ; 2290 : tic.'NUEFF' = 'KCHT' $vtf 'SCAL' ('CHAI' TBT.'SPGNU') 0. ; 2291 : list tic.'NUEFF' ; 2292 : Finsi ; 2293 : * 2294 : *mess ' Fin preparation KEPSILON ' ; 2295 : * 2296 : 'FINSI' ; 2297 : 'FINSI' ; 2298 : 2299 : *------------------------------------------------------------ 2300 : *-- EQUATIONS SUR LA TEMPERATURE FLUIDE TF 2301 : * Formulation non conservative Decentrement SUPG 2302 : * Termes sources : STF correspond a dP/dt 2303 : * 'ECHI' partie convective de l'echange paroi 2304 : * Le modele concerne est PAROIC1 2305 : * ATTENTION : division par RHO.CP 2306 : * Les parois imposees sont aussi traitees par ECHI 2307 : ac='TEXT' 'NUEFF' 'UN' 0.; 2308 : 2309 : rtf = 'EQEX' 'NITER' 1 'OMEGA' 1. 'ITMA' 0 2310 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' 'NOCONS' 2311 : * 'ZONE' $vtf 'OPER' 'TSCA' 1. 'UN' 'NUEFF' 0. 'INCO' 'TF' 2312 : 'ZONE' $vtf 'OPER' 'TSCA' LCTSCA 'INCO' 'TF' 2313 : 'OPTI' 'EFM1' 'CENTREE' 2314 : 'ZONE' $vtf 'OPER' 'FIMP' 'STF' 'INCO' 'TF' 2315 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2316 : 'ZONE' $vtf 'OPER' 'DFDT' 1.0 'TFNM' DTX 'INCO' 'TF' 2317 : ; 2318 : rtf.'PASDETPS' = rv.'PASDETPS' ; 2319 : 2320 : 'SI' TBT.'TPAROIF' ; 2321 : 'SI' TBT.'THERCO' ; 2322 : rtf = 'EQEX' rtf 2323 : 'OPTI' 'EF' 'CENTREE' 'IMPL' 2324 : 'ZONE' (GEO.'$paroif') 'OPER' 'MDIA' 'KHEW' 'INCO' 'TF' ; 2325 : rtf = 'EQEX' rtf 2326 : 'OPTI' 'EF' 'CENTREE' 'IMPL' 2327 : 'ZONE' (GEO.'$paroif') 'OPER' 'MDIA' 'LHEW' 'INCO' 'TP' 'TF'; 2328 : 'SINON' ; 2329 : rtf = 'EQEX' rtf 2330 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2331 : 'ZONE'(GEO.'$paroif') 'OPER' 'ECHI' 'KHEW' 'TBPW' 'INCO' 'TF'; 2332 : 'FINSI' ; 2333 : 'FINSI' ; 2334 : 2335 : * XFIMP 4 Tf ; Flux de Chaleur imposés 2336 : 'SI' TFIMP ; 2337 : NBFIMP=dime (rxt.'XFIMP') ; 2338 : ifimp=INDEX (rxt.'XFIMP') ; 2339 : REPETER BBFIMP NBFIMP ; 2340 : Bfimp=rxt.'XFIMP'.(ifimp.&BBFIMP) ; 2341 : $mfpi=Bfimp.'$mfpi' ; 2342 : CKqt =(Bfimp.'Kqt') ; 2343 : rtf = 'EQEX' rtf 2344 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2345 : 'ZONE' $mfpi 'OPER' 'FIMP' CKqt 'INCO' 'TF' ; 2346 : FIN BBFIMP ; 2347 : 'FINSI' ; 2348 : * XFIMP 4 Tf ; Flux de Chaleur imposés 2349 : 2350 : 'SI' TTIMP ; 2351 : NBTIMP=dime (rxt.'TIMP') ; 2352 : itimp=INDEX (rxt.'TIMP') ; 2353 : REPETER BBTIMP NBTIMP ; 2354 : Btimp=rxt.'TIMP'.(itimp.&BBTIMP) ; 2355 : $mtpi=Btimp.'$mtpi' ; 2356 : CKHE1 =(Btimp.'KHE1') ; 2357 : CTBP1 =(Btimp.'TBP1') ; 2358 : rtf = 'EQEX' rtf 2359 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2360 : 'ZONE' $mtpi 'OPER' 'ECHI' CKHE1 CTBP1 'INCO' 'TF' ; 2361 : FIN BBTIMP ; 2362 : 'FINSI' ; 2363 : 2364 : 'SI' TBT.'TTIMP1' ; 2365 : rtf = 'EQEX' rtf 2366 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2367 : 'ZONE' $mtp1 'OPER' 'ECHI' 'KHE1' 'TBP1' 'INCO' 'TF' ; 2368 : 'FINSI' ; 2369 : 2370 : 'SI' TBT.'TTIMP2' ; 2371 : rtf = 'EQEX' rtf 2372 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2373 : 'ZONE' $mtp2 'OPER' 'ECHI' 'KHE2' 'TBP2' 'INCO' 'TF' ; 2374 : 'FINSI' ; 2375 : 2376 : 'SI' TBT.'TTIMP3' ; 2377 : rtf = 'EQEX' rtf 2378 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2379 : 'ZONE' $mtp3 'OPER' 'ECHI' 'KHE3' 'TBP3' 'INCO' 'TF' ; 2380 : 'FINSI' ; 2381 : 2382 : 'SI' TBT.'TECHANP' ; 2383 : rtf = 'EQEX' rtf 2384 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2385 : 'ZONE' $mtp0 'OPER' 'ECHI' 'KHE0' 'TBP0' 'INCO' 'TF' ; 2386 : 'FINSI' ; 2387 : 2388 : * - Initialisation du terme Source STF 2389 : Si (non(exist tic 'STF')); 2390 : tic.'STF' = 0.0 ; 2391 : Finsi ; 2392 : 2393 : rtf.inco = tic ; 2394 : rtf.'METHINV'.TYPINV=TBT.'TYPINV' ; 2395 : rtf.'METHINV'.TYPRENU=TBT.'RENU' ; 2396 : rtf.'METHINV'.IMPINV=TBT.'nimpr' ; 2397 : rtf.'METHINV'.NITMAX=NTIT ; 2398 : rtf.'METHINV'.PRECOND=3 ; 2399 : rtf.'METHINV'.'FCPRECI' = FCPRECI ; 2400 : rtf.'METHINV'.'FCPRECT' = FCPRECT ; 2401 : rtf.'METHINV'.'CALPREC' = calprec ; 2402 : rtf.'METHINV'.RESID = EPSS ; 2403 : 2404 : 2405 : *---------------------------------------------------------------------- 2406 : * Definition du minimum pour recalcul du preconditionnement 2407 : * 2408 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2409 : * 'SI' ( 'NON' tbt.'UTILPREC' ) ; 2410 : * rtf.'MINPREC' = rtf.'METHINV'.NITMAX ; 2411 : * 'FINSI' ; 2412 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2413 : 2414 : *---------------------------------------------------------- 2415 : * ---- EQUATION SUR LA DENSITE DE VAPEUR 2416 : * Formulation conservative - Decentrement SUPG 2417 : * BRECHE : traitee comme CLIM 2418 : * CONDENSATION : traitee par 'ECHI' sur modele PAROIC 2419 : 2420 : 2421 : 'SI' TBT.'VAPEUR' ; 2422 : 2423 : Rrvap = 'EQEX' 'NITER' 1 'OMEGA' 1. 'ITMA' 0 2424 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' TBT.'FCONS' 2425 : * 'ZONE' $vtf 'OPER' 'TSCA' 'NUEFF' 'UN' 0. 'INCO' 'RVP' 2426 : 'ZONE' $vtf 'OPER' 'TSCA' LCTSCA 'INCO' 'RVP' 2427 : 'OPTI' 'EFM1' 'CENTREE' 2428 : 'ZONE' $vtf 'OPER' 'DFDT' 1. 'RVPNM' DTX 'INCO' 'RVP' ; 2429 : 2430 : Rrvap.'PASDETPS' = rv.'PASDETPS' ; 2431 : 2432 : 'SI' TBT.'TPAROIF' ; 2433 : Rrvap = 'EQEX' Rrvap 2434 : 'OPTI' 'EFM1' 'CENTREE' 2435 : 'ZONE' (GEO.'$paroif') 'OPER' 'ECHI' 'KKCW' 'ROVIW' 'INCO' 'RVP'; 2436 : 'FINSI' ; 2437 : 2438 : 'SI' TTIMP ; 2439 : NBTIMP=dime (rxt.'TIMP') ; 2440 : itimp=INDEX (rxt.'TIMP') ; 2441 : REPETER BBTIMP NBTIMP ; 2442 : Btimp=rxt.'TIMP'.(itimp.&BBTIMP) ; 2443 : $mtpi=Btimp.'$mtpi' ; 2444 : CKKC1 =Btimp.'KKC1' ; 2445 : CROVI1=Btimp.'ROVI1' ; 2446 : Rrvap = 'EQEX' Rrvap 2447 : 'OPTI' 'EFM1' 'CENTREE' 2448 : 'ZONE' $mtpi 'OPER' 'ECHI' CKKC1 CROVI1 'INCO' 'RVP' ; 2449 : FIN BBTIMP ; 2450 : 'FINSI' ; 2451 : 2452 : 'SI' TBT.'TTIMP1' ; 2453 : CKKC1 ='KKC1' ; 2454 : CROVI1='ROVI1' ; 2455 : Rrvap = 'EQEX' Rrvap 2456 : 'OPTI' 'EFM1' 'CENTREE' 2457 : 'ZONE' (GEO.'$mtp1') 'OPER' 'ECHI' CKKC1 CROVI1 'INCO' 'RVP' ; 2458 : 'FINSI' ; 2459 : 2460 : 'SI' TBT.'TTIMP2' ; 2461 : Rrvap = 'EQEX' Rrvap 2462 : 'OPTI' 'EFM1' 'CENTREE' 2463 : 'ZONE' (GEO.'$mtp2') 'OPER' 'ECHI' 'KKC2' 'ROVI2' 'INCO' 'RVP'; 2464 : 'FINSI' ; 2465 : 2466 : 'SI' TBT.'TTIMP3' ; 2467 : Rrvap = 'EQEX' Rrvap 2468 : 'OPTI' 'EFM1' 'CENTREE' 2469 : 'ZONE' (GEO.'$mtp3') 'OPER' 'ECHI' 'KKC3' 'ROVI3' 'INCO' 'RVP'; 2470 : 'FINSI' ; 2471 : 2472 : 'SI' TBT.'TECHANP' ; 2473 : Rrvap = 'EQEX' Rrvap 2474 : 'OPTI' 'EFM1' 'CENTREE' 2475 : 'ZONE' (GEO.'$mtp0') 'OPER' 'ECHI' 'KKC0' 'ROVI0' 'INCO' 'RVP'; 2476 : 'FINSI' ; 2477 : 2478 : * XFIMP 4 RVP ; Flux de masse vapeur imposés 2479 : 'SI' TFIMP ; 2480 : NBFIMP=dime (rxt.'XFIMP') ; 2481 : ifimp=INDEX (rxt.'XFIMP') ; 2482 : REPETER BBFIMP NBFIMP ; 2483 : Bfimp=rxt.'XFIMP'.(ifimp.&BBFIMP) ; 2484 : $mfpi=Bfimp.'$mfpi' ; 2485 : CKqeau =(Bfimp.'Kqeau') ; 2486 : Rrvap = 'EQEX' Rrvap 2487 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2488 : 'ZONE' $mfpi 'OPER' 'FIMP' CKqeau 'INCO' 'RVP' ; 2489 : FIN BBFIMP ; 2490 : 'FINSI' ; 2491 : * XFIMP 4 RVP ; Flux de masse vapeur imposés 2492 : 2493 : Rrvap.inco = tic ; 2494 : Rrvap.'METHINV'.TYPINV=TBT.'TYPINV' ; 2495 : Rrvap.'METHINV'.TYPRENU=TBT.'RENU' ; 2496 : Rrvap.'METHINV'.IMPINV=TBT.'nimpr' ; 2497 : Rrvap.'METHINV'.NITMAX=NTIT ; 2498 : Rrvap.'METHINV'.PRECOND=3 ; 2499 : Rrvap.'METHINV'.'FCPRECI' = FCPRECI ; 2500 : Rrvap.'METHINV'.'FCPRECT' = FCPRECT ; 2501 : Rrvap.'METHINV'.'CALPREC' = calprec ; 2502 : Rrvap.'METHINV'.RESID = EPSS ; 2503 : 2504 : *---------------------------------------------------------------------- 2505 : * Definition du minimum pour recalcul du preconditionnement 2506 : * 2507 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2508 : * 'SI' ( 'NON' tbt.'UTILPREC' ) ; 2509 : * Rrvap.'MINPREC' = Rrvap.'METHINV'.NITMAX ; 2510 : * 'FINSI' ; 2511 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2512 : 'FINSI' ; 2513 : 2514 : *---------------------------------------------------------- 2515 : * EQUATIONS SUR LA DENSITE HELIUM 2516 : * Formulation conservative - Decentrement SUPG 2517 : * BRECHE : condition aux limites 2518 : 2519 : 'SI' TBT.'THE' ; 2520 : 2521 : Rrhe = 'EQEX' 'NITER' 1 'OMEGA' 1. 'ITMA' 0 2522 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' TBT.'FCONS' 2523 : * 'ZONE' $vtf 'OPER' 'TSCA' 'NUEFF' 'UN' 0.0 'INCO' 'RHE' 2524 : 'ZONE' $vtf 'OPER' 'TSCA' LCTSCA 'INCO' 'RHE' 2525 : 'OPTI' 'EFM1' 'CENTREE' 2526 : 'ZONE' $vtf 'OPER' 'DFDT' 1.0 'RHEM' DTX 'INCO' 'RHE' ; 2527 : 2528 : Rrhe.'PASDETPS' = rv.'PASDETPS' ; 2529 : 2530 : * XFIMP 4 RHE ; Flux de masse Hélium imposé 2531 : 'SI' TFIMP ; 2532 : NBFIMP=dime (rxt.'XFIMP') ; 2533 : ifimp=INDEX (rxt.'XFIMP') ; 2534 : REPETER BBFIMP NBFIMP ; 2535 : Bfimp=rxt.'XFIMP'.(ifimp.&BBFIMP) ; 2536 : $mfpi=Bfimp.'$mfpi' ; 2537 : CKqhe =(Bfimp.'Kqhe') ; 2538 : Rrhe = 'EQEX' Rrhe 2539 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2540 : 'ZONE' $mfpi 'OPER' 'FIMP' CKqhe 'INCO' 'RHE' ; 2541 : FIN BBFIMP ; 2542 : 'FINSI' ; 2543 : * XFIMP 4 RHE ; Flux de masse Hélium imposé 2544 : 2545 : Rrhe.inco = tic ; 2546 : Rrhe.'METHINV'.TYPINV=TBT.'TYPINV' ; 2547 : Rrhe.'METHINV'.TYPRENU=TBT.'RENU' ; 2548 : Rrhe.'METHINV'.IMPINV=TBT.'nimpr' ; 2549 : Rrhe.'METHINV'.NITMAX=NTIT ; 2550 : Rrhe.'METHINV'.PRECOND=3 ; 2551 : Rrhe.'METHINV'.'FCPRECI' = FCPRECI ; 2552 : Rrhe.'METHINV'.'FCPRECT' = FCPRECT ; 2553 : Rrhe.'METHINV'.'CALPREC' = calprec ; 2554 : Rrhe.'METHINV'.RESID = EPSS ; 2555 : 2556 : *---------------------------------------------------------------------- 2557 : * Definition du minimum pour recalcul du preconditionnement 2558 : * 2559 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2560 : * 'SI' ( 'NON' tbt.'UTILPREC' ) ; 2561 : * Rrhe.'MINPREC' = Rrhe.'METHINV'.NITMAX ; 2562 : * 'FINSI' ; 2563 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2564 : 'FINSI' ; 2565 : 2566 : *---------------------------------------------------------- 2567 : * EQUATIONS SUR LA DENSITE HYDROGENE 2568 : * Formulation conservative - Decentrement SUPG 2569 : * BRECHE : condition aux limites 2570 : 2571 : 'SI' TBT.'TH2' ; 2572 : 2573 : Rrh2 = 'EQEX' 'NITER' 1 'OMEGA' 1. 'ITMA' 0 2574 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' TBT.'FCONS' 2575 : * 'ZONE' $vtf 'OPER' 'TSCA' 'NUEFF' 'UN' 0.0 'INCO' 'RH2' 2576 : 'ZONE' $vtf 'OPER' 'TSCA' LCTSCA 'INCO' 'RH2' 2577 : 'OPTI' 'EFM1' 'CENTREE' 2578 : 'ZONE' $vtf 'OPER' 'DFDT' 1.0 'RH2M' DTX 'INCO' 'RH2' ; 2579 : 2580 : Rrh2.'PASDETPS' = rv.'PASDETPS' ; 2581 : 2582 : * XFIMP 4 RH2 ; Flux de masse H2 imposé 2583 : 'SI' TFIMP ; 2584 : NBFIMP=dime (rxt.'XFIMP') ; 2585 : ifimp=INDEX (rxt.'XFIMP') ; 2586 : REPETER BBFIMP NBFIMP ; 2587 : Bfimp=rxt.'XFIMP'.(ifimp.&BBFIMP) ; 2588 : $mfpi=Bfimp.'$mfpi' ; 2589 : CKqh2 =(Bfimp.'Kqh2') ; 2590 : Rrh2 = 'EQEX' Rrh2 2591 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2592 : 'ZONE' $mfpi 'OPER' 'FIMP' CKqh2 'INCO' 'RH2' ; 2593 : FIN BBFIMP ; 2594 : 'FINSI' ; 2595 : * XFIMP 4 RH2 ; Flux de masse H2 imposé 2596 : 2597 : Rrh2.inco = tic ; 2598 : Rrh2.'METHINV'.TYPINV=TBT.'TYPINV' ; 2599 : Rrh2.'METHINV'.TYPRENU=TBT.'RENU' ; 2600 : Rrh2.'METHINV'.IMPINV=TBT.'nimpr' ; 2601 : Rrh2.'METHINV'.NITMAX=NTIT ; 2602 : Rrh2.'METHINV'.PRECOND=3 ; 2603 : Rrh2.'METHINV'.'FCPRECI' = FCPRECI ; 2604 : Rrh2.'METHINV'.'FCPRECT' = FCPRECT ; 2605 : Rrh2.'METHINV'.'CALPREC' = calprec ; 2606 : Rrh2.'METHINV'.RESID = EPSS ; 2607 : 2608 : *---------------------------------------------------------------------- 2609 : * Definition du minimum pour recalcul du preconditionnement 2610 : * 2611 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2612 : * 'SI' ( 'NON' tbt.'UTILPREC' ) ; 2613 : * Rrh2.'MINPREC' = Rrh2.'METHINV'.NITMAX ; 2614 : * 'FINSI' ; 2615 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2616 : 'FINSI' ; 2617 : 2618 : *---------------------------------------------------------- 2619 : * EQUATIONS SUR LA DENSITE OXYGENE 2620 : * Formulation conservative - Decentrement SUPG 2621 : * BRECHE : condition aux limites 2622 : 2623 : 'SI' TBT.'TO2' ; 2624 : 2625 : Rro2 = 'EQEX' 'NITER' 1 'OMEGA' 1. 'ITMA' 0 2626 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' TBT.'FCONS' 2627 : * 'ZONE' $vtf 'OPER' 'TSCA' 'NUEFF' 'UN' 0.0 'INCO' 'RO2' 2628 : 'ZONE' $vtf 'OPER' 'TSCA' LCTSCA 'INCO' 'RO2' 2629 : 'OPTI' 'EFM1' 'CENTREE' 2630 : 'ZONE' $vtf 'OPER' 'DFDT' 1.0 'RO2M' DTX 'INCO' 'RO2' ; 2631 : 2632 : Rro2.'PASDETPS' = rv.'PASDETPS' ; 2633 : 2634 : * XFIMP 4 RO2 ; Flux de masse O2 imposé 2635 : 'SI' TFIMP ; 2636 : NBFIMP=dime (rxt.'XFIMP') ; 2637 : ifimp=INDEX (rxt.'XFIMP') ; 2638 : REPETER BBFIMP NBFIMP ; 2639 : Bfimp=rxt.'XFIMP'.(ifimp.&BBFIMP) ; 2640 : $mfpi=Bfimp.'$mfpi' ; 2641 : CKqo2 =(Bfimp.'Kqo2') ; 2642 : Rro2 = 'EQEX' Rro2 2643 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2644 : 'ZONE' $mfpi 'OPER' 'FIMP' CKqo2 'INCO' 'RO2' ; 2645 : FIN BBFIMP ; 2646 : 'FINSI' ; 2647 : * XFIMP 4 RO2 ; Flux de masse O2 imposé 2648 : 2649 : Rro2.inco = tic ; 2650 : Rro2.'METHINV'.TYPINV=TBT.'TYPINV' ; 2651 : Rro2.'METHINV'.TYPRENU=TBT.'RENU' ; 2652 : Rro2.'METHINV'.IMPINV=TBT.'nimpr' ; 2653 : Rro2.'METHINV'.NITMAX=NTIT ; 2654 : Rro2.'METHINV'.PRECOND=3 ; 2655 : Rro2.'METHINV'.'FCPRECI' = FCPRECI ; 2656 : Rro2.'METHINV'.'FCPRECT' = FCPRECT ; 2657 : Rro2.'METHINV'.'CALPREC' = calprec ; 2658 : Rro2.'METHINV'.RESID = EPSS ; 2659 : 2660 : *---------------------------------------------------------------------- 2661 : * Definition du minimum pour recalcul du preconditionnement 2662 : * 2663 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2664 : * 'SI' ( 'NON' tbt.'UTILPREC' ) ; 2665 : * Rro2.'MINPREC' = Rro2.'METHINV'.NITMAX ; 2666 : * 'FINSI' ; 2667 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2668 : 'FINSI' ; 2669 : 2670 : *---------------------------------------------------------- 2671 : * EQUATIONS SUR LA DENSITE AZOTE 2672 : * Formulation conservative - Decentrement SUPG 2673 : * BRECHE : condition aux limites 2674 : 2675 : 'SI' TBT.'TN2' ; 2676 : 2677 : Rrn2 = 'EQEX' 'NITER' 1 'OMEGA' 1. 'ITMA' 0 2678 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' TBT.'FCONS' 2679 : * 'ZONE' $vtf 'OPER' 'TSCA' 'NUEFF' 'UN' 0. 'INCO' 'RN2' 2680 : 'ZONE' $vtf 'OPER' 'TSCA' LCTSCA 'INCO' 'RN2' 2681 : 'OPTI' 'EFM1' 'CENTREE' 2682 : 'ZONE' $vtf 'OPER' 'DFDT' 1.0 'RN2M' DTX 'INCO' 'RN2' ; 2683 : 2684 : Rrn2.'PASDETPS' = rv.'PASDETPS' ; 2685 : 2686 : 2687 : * 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' 2688 : * 'ZONE' $vtf 'OPER' 'TSCA' 'NUT' 'UN' 0.0 'INCO' 'RN2' 2689 : *mess ' Option NOCONS RN2 pour test branchee AREVOIR ' ; 2690 : 2691 : * XFIMP 4 RN2 ; Flux de masse N2 imposé 2692 : 'SI' TFIMP ; 2693 : NBFIMP=dime (rxt.'XFIMP') ; 2694 : ifimp=INDEX (rxt.'XFIMP') ; 2695 : REPETER BBFIMP NBFIMP ; 2696 : Bfimp=rxt.'XFIMP'.(ifimp.&BBFIMP) ; 2697 : $mfpi=Bfimp.'$mfpi' ; 2698 : CKqn2 =(Bfimp.'Kqn2') ; 2699 : Rrn2 = 'EQEX' Rrn2 2700 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2701 : 'ZONE' $mfpi 'OPER' 'FIMP' CKqn2 'INCO' 'RN2' ; 2702 : FIN BBFIMP ; 2703 : 'FINSI' ; 2704 : * XFIMP 4 RN2 ; Flux de masse N2 imposé 2705 : 2706 : Rrn2.inco = tic ; 2707 : Rrn2.'METHINV'.TYPINV=TBT.'TYPINV' ; 2708 : Rrn2.'METHINV'.TYPRENU=TBT.'RENU' ; 2709 : Rrn2.'METHINV'.IMPINV=TBT.'nimpr' ; 2710 : Rrn2.'METHINV'.NITMAX=NTIT ; 2711 : Rrn2.'METHINV'.PRECOND=3 ; 2712 : Rrn2.'METHINV'.'FCPRECI' = FCPRECI ; 2713 : Rrn2.'METHINV'.'FCPRECT' = FCPRECT ; 2714 : Rrn2.'METHINV'.'CALPREC' = calprec ; 2715 : Rrn2.'METHINV'.RESID = EPSS ; 2716 : 2717 : 2718 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2719 : * 'SI' ( 'NON' tbt.'UTILPREC' ) ; 2720 : * Rrn2.'MINPREC' = Rrn2.'METHINV'.NITMAX ; 2721 : * 'FINSI' ; 2722 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2723 : 'FINSI' ; 2724 : 2725 : *---------------------------------------------------------- 2726 : * EQUATIONS SUR LA DENSITE DIOXYDE DE CARBONE 2727 : * Formulation conservative - Decentrement SUPG 2728 : * BRECHE : condition aux limites 2729 : 2730 : 'SI' TBT.'TCO2' ; 2731 : 2732 : Rrco2 = 'EQEX' 'NITER' 1 'OMEGA' 1. 'ITMA' 0 2733 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' TBT.'FCONS' 2734 : * 'ZONE' $vtf 'OPER' 'TSCA' 'NUEFF' 'UN' 0.0 'INCO' 'RCO2' 2735 : 'ZONE' $vtf 'OPER' 'TSCA' LCTSCA 'INCO' 'RCO2' 2736 : 'OPTI' 'EFM1' 'CENTREE' 2737 : 'ZONE' $vtf 'OPER' 'DFDT' 1.0 'RCO2M' DTX 'INCO' 'RCO2' ; 2738 : 2739 : Rrco2.'PASDETPS' = rv.'PASDETPS' ; 2740 : 2741 : * XFIMP 4 RCO2 ; Flux de masse CO2 imposé 2742 : 'SI' TFIMP ; 2743 : NBFIMP=dime (rxt.'XFIMP') ; 2744 : ifimp=INDEX (rxt.'XFIMP') ; 2745 : REPETER BBFIMP NBFIMP ; 2746 : Bfimp=rxt.'XFIMP'.(ifimp.&BBFIMP) ; 2747 : $mfpi=Bfimp.'$mfpi' ; 2748 : CKqco2 =(Bfimp.'Kqco2') ; 2749 : Rrco2 = 'EQEX' Rrco2 2750 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2751 : 'ZONE' $mfpi 'OPER' 'FIMP' CKqco2 'INCO' 'RCO2'; 2752 : FIN BBFIMP ; 2753 : 'FINSI' ; 2754 : * XFIMP 4 RCO2 ; Flux de masse CO2 imposé 2755 : 2756 : Rrco2.inco = tic ; 2757 : Rrco2.'METHINV'.TYPINV=TBT.'TYPINV' ; 2758 : Rrco2.'METHINV'.TYPRENU=TBT.'RENU' ; 2759 : Rrco2.'METHINV'.IMPINV=TBT.'nimpr' ; 2760 : Rrco2.'METHINV'.NITMAX=NTIT ; 2761 : Rrco2.'METHINV'.PRECOND=3 ; 2762 : Rrco2.'METHINV'.'FCPRECI' = FCPRECI ; 2763 : Rrco2.'METHINV'.'FCPRECT' = FCPRECT ; 2764 : Rrco2.'METHINV'.'CALPREC' = calprec ; 2765 : Rrco2.'METHINV'.RESID = EPSS ; 2766 : 2767 : 2768 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2769 : * 'SI' ( 'NON' tbt.'UTILPREC' ) ; 2770 : * Rrco2.'MINPREC' = Rrco2.'METHINV'.NITMAX ; 2771 : * 'FINSI' ; 2772 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2773 : 'FINSI' ; 2774 : 2775 : *---------------------------------------------------------- 2776 : * EQUATIONS SUR LA DENSITE DE l'AIR (Ničme équation) TCO2AIR 2777 : * Formulation conservative - Decentrement SUPG 2778 : * BRECHE : condition aux limites 2779 : 2780 : 'SI' TBT.'TAIR' ; 2781 : 2782 : Rrair = 'EQEX' 'NITER' 1 'OMEGA' 1. 'ITMA' 0 2783 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' TBT.'FCONS' 2784 : * 'ZONE' $vtf 'OPER' 'TSCA' 'NUEFF' 'UN' 0.0 'INCO' 'RAIR' 2785 : 'ZONE' $vtf 'OPER' 'TSCA' LCTSCA 'INCO' 'RAIR' 2786 : 'OPTI' 'EFM1' 'CENTREE' 2787 : 'ZONE' $vtf 'OPER' 'DFDT' 1.0 'RAIRM' DTX 'INCO' 'RAIR' ; 2788 : 2789 : Rrair.'PASDETPS' = rv.'PASDETPS' ; 2790 : 2791 : * XFIMP 4 RAIR ; Flux de masse Air imposé 2792 : 'SI' TFIMP ; 2793 : NBFIMP=dime (rxt.'XFIMP') ; 2794 : ifimp=INDEX (rxt.'XFIMP') ; 2795 : REPETER BBFIMP NBFIMP ; 2796 : Bfimp=rxt.'XFIMP'.(ifimp.&BBFIMP) ; 2797 : $mfpi=Bfimp.'$mfpi' ; 2798 : CKqair =(Bfimp.'Kqair') ; 2799 : Rrair = 'EQEX' Rrair 2800 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2801 : 'ZONE' $mfpi 'OPER' 'FIMP' CKqair 'INCO' 'RAIR'; 2802 : FIN BBFIMP ; 2803 : 'FINSI' ; 2804 : * XFIMP 4 RCO2 ; Flux de masse CO2 imposé 2805 : 2806 : Rrair.inco = tic ; 2807 : Rrair.'METHINV'.TYPINV=TBT.'TYPINV' ; 2808 : Rrair.'METHINV'.TYPRENU=TBT.'RENU' ; 2809 : Rrair.'METHINV'.IMPINV=TBT.'nimpr' ; 2810 : Rrair.'METHINV'.NITMAX=NTIT ; 2811 : Rrair.'METHINV'.PRECOND=3 ; 2812 : Rrair.'METHINV'.'FCPRECI' = FCPRECI ; 2813 : Rrair.'METHINV'.'FCPRECT' = FCPRECT ; 2814 : Rrair.'METHINV'.'CALPREC' = calprec ; 2815 : Rrair.'METHINV'.RESID = EPSS ; 2816 : 2817 : 2818 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2819 : * 'SI' ( 'NON' tbt.'UTILPREC' ) ; 2820 : * Rrair.'MINPREC' = Rrair.'METHINV'.NITMAX ; 2821 : * 'FINSI' ; 2822 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2823 : 'FINSI' ; 2824 : 2825 : *---------------------------------------------------------- 2826 : * EQUATIONS SUR LA DENSITE MONOXYDE DE CARBONE 2827 : * Formulation conservative - Decentrement SUPG 2828 : * BRECHE : condition aux limites 2829 : 2830 : 'SI' TBT.'TCO' ; 2831 : 2832 : Rrco = 'EQEX' 'NITER' 1 'OMEGA' 1. 'ITMA' 0 2833 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' TBT.'FCONS' 2834 : * 'ZONE' $vtf 'OPER' 'TSCA' 'NUEFF' 'UN' 0.0 'INCO' 'RCO' 2835 : 'ZONE' $vtf 'OPER' 'TSCA' LCTSCA 'INCO' 'RCO' 2836 : 'OPTI' 'EFM1' 'CENTREE' 2837 : 'ZONE' $vtf 'OPER' 'DFDT' 1.0 'RCOM' DTX 'INCO' 'RCO' ; 2838 : 2839 : Rrco.'PASDETPS' = rv.'PASDETPS' ; 2840 : 2841 : * XFIMP 4 RCO ; Flux de masse CO imposé 2842 : 'SI' TFIMP ; 2843 : NBFIMP=dime (rxt.'XFIMP') ; 2844 : ifimp=INDEX (rxt.'XFIMP') ; 2845 : REPETER BBFIMP NBFIMP ; 2846 : Bfimp=rxt.'XFIMP'.(ifimp.&BBFIMP) ; 2847 : $mfpi=Bfimp.'$mfpi' ; 2848 : CKqco =(Bfimp.'Kqco') ; 2849 : Rrco = 'EQEX' Rrco 2850 : 'OPTI' 'EFM1' 'CENTREE' 'IMPL' 2851 : 'ZONE' $mfpi 'OPER' 'FIMP' CKqco 'INCO' 'RCO' ; 2852 : FIN BBFIMP ; 2853 : 'FINSI' ; 2854 : * XFIMP 4 RCO ; Flux de masse CO imposé 2855 : 2856 : Rrco.inco = tic ; 2857 : Rrco.'METHINV'.TYPINV=TBT.'TYPINV' ; 2858 : Rrco.'METHINV'.TYPRENU=TBT.'RENU' ; 2859 : Rrco.'METHINV'.IMPINV=TBT.'nimpr' ; 2860 : Rrco.'METHINV'.NITMAX=NTIT ; 2861 : Rrco.'METHINV'.PRECOND=3 ; 2862 : Rrco.'METHINV'.'FCPRECI' = FCPRECI ; 2863 : Rrco.'METHINV'.'FCPRECT' = FCPRECT ; 2864 : Rrco.'METHINV'.'CALPREC' = calprec ; 2865 : Rrco.'METHINV'.RESID = EPSS ; 2866 : 2867 : 2868 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2869 : * 'SI' ( 'NON' tbt.'UTILPREC' ) ; 2870 : * Rrco.'MINPREC' = Rrco.'METHINV'.NITMAX ; 2871 : * 'FINSI' ; 2872 : *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2873 : 'FINSI' ; 2874 : 2875 : *---------------------------------------------------------- 2876 : * EQUATION DE LA CHALEUR POUR LA THERMIQUE PAROI TP 2877 : * CONDENSATION ET CONVECTION : densite de flux imposee FIMP 2878 : * sur modele PAROIC1 2879 : * 2880 : 'SI' TBT.'THERMP' ; 2881 : 2882 : 'SI' TBT.'THERCO' ; 2883 : rtp = rtf ; 2884 : 'SINON' ; 2885 : rtp= 'EQEX' 'NITER' 1 'OMEGA' 1. 'ITMA' 0 ; 2886 : rtp.'METHINV'.TYPINV=2 ; 2887 : rtp.'METHINV'.TYPRENU=TBT.'RENU' ; 2888 : rtp.'METHINV'.IMPINV=TBT.'nimpr' ; 2889 : rtp.'METHINV'.NITMAX=NTIT ; 2890 : rtp.'METHINV'.PRECOND=3 ; 2891 : rtp.'METHINV'.'FCPRECI' = FCPRECI ; 2892 : rtp.'METHINV'.'FCPRECT' = FCPRECT ; 2893 : rtp.'METHINV'.'CALPREC' = calprec ; 2894 : rtp.'METHINV'.RESID = EPSS ; 2895 : 'FINSI' ; 2896 : 2897 : 'SI' (NON TPAROIS) ; 2898 : $vtp=GEO.'$vtp' ; 2899 : rtp= 'EQEX' rtp 2900 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'CENTREE' 2901 : 'ZONE' $vtp 'OPER' 'LAPN' 'LAMBDA' 'INCO' 'TP' 2902 : 'OPTI' 'EFM1' 'CENTREE' 2903 : 'ZONE' $vtp 'OPER' 'DFDT' 'ROCP' 'TPNM' DTX 'INCO' 'TP'; 2904 : 'SINON' ; 2905 : NPAR=dime rxt.'PAROIS' ; 2906 : ipr=index (rxt.'PAROIS') ; 2907 : Repeter BPRS NPAR ; 2908 : Parois=rxt.'PAROIS'.(ipr.&BPRS) ; 2909 : $vtpi=GEO.(ipr.&BPRS).'$vtp' ; 2910 : CLAMBDA=chai 'LAMBDA' &BPRS ; 2911 : CROCP =chai 'ROCP' &BPRS ; 2912 : rtp= 'EQEX' rtp 2913 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'CENTREE' 2914 : 'ZONE' $vtpi 'OPER' 'LAPN' CLAMBDA 'INCO' 'TP' 2915 : 'OPTI' 'EFM1' 'CENTREE' 2916 : 'ZONE' $vtpi 'OPER' 'DFDT' CROCP 'TPNM' DTX 'INCO' 'TP'; 2917 : FIN BPRS ; 2918 : 'FINSI' ; 2919 : 2920 : 'SI' TBT.'ECHEXT' ; 2921 : 2922 : hxtc=tic.'HEXT' ; 2923 : txtc=tic.'TPEXT' ; 2924 : thx=type hxtc ; 2925 : ttx=type txtc; ; 2926 : 2927 : Si(EGA thx 'CHPOINT') ; 2928 : hxtc='NOEL' (GEO.'$parext') hxtc ; 2929 : Finsi ; 2930 : ; 2931 : Si(EGA ttx 'CHPOINT') ; 2932 : txtc='NOEL' (GEO.'$parext') txtc ; 2933 : Finsi ; 2934 : 2935 : tic.'HEXTc'=hxtc ; 2936 : tic.'TPEXTc'=txtc ; 2937 : 2938 : rtp= 'EQEX' rtp 2939 : 'OPTI' 'EFM1' 'CENTREE' 2940 : 'ZONE' (GEO.'$parext') 'OPER' 'ECHI' 'HEXTc' 'TPEXTc' 'INCO' 'TP' ; 2941 : 'FINSI' ; 2942 : 2943 : 'SI' (TBT.'TPAROIF' et (non TBT.'VAPEUR')) ; 2944 : rtp= 'EQEX' rtp 2945 : 'OPTI' 'EFM1' 'CENTREE' 2946 : 'ZONE' (GEO.'$paroif') 'OPER' 'ECHI' 'KHW' 'TBFW' 'INCO' 'TP' ; 2947 : 'FINSI' ; 2948 : 2949 : 'SI' (TBT.'TPAROIF' et TBT.'VAPEUR') ; 2950 : rtp= 'EQEX' rtp 2951 : 'OPTI' 'EFM1' 'CENTREE' 2952 : 'ZONE' (GEO.'$paroif') 'OPER' 'FIMP' 'FHPW' 'INCO' 'TP' ; 2953 : 'FINSI' ; 2954 : 2955 : rtp.'PASDETPS' = rv.'PASDETPS' ; 2956 : rtp.inco = tic ; 2957 : 2958 : 'SI' TBT.'THERCO'; rtf = rtp ; 'FINSI' ; 2959 : 2960 : 'FINSI' ; 2961 : 2962 : *----------------------------------------------------------------------- 2963 : * TRAITEMENT DE LA CONDENSATION EN MASSE 2964 : * Modif FP 18/05/00. 2965 : 2966 : 'SI' (TBT.'VERSION' '>EG' 1) ; 2967 : * Variables : 2968 : * ----------- 2969 : * rrliq : table de résolution. 2970 : * Les variables ci-dessous sont dans la bable des inconnues tic. 2971 : * RLIQ : masse volumique de liquide en suspension ŕ l'instant N. 2972 : * RLIQM : masse volumique de liquide drainé ŕ l'instant N - 1. 2973 : * RBRO : masse volumique de liquide en suspension ŕ l'instant N. 2974 : * SLIQ : terme source lié ŕ la formation de liquide en suspension. 2975 : * SRVL : terme source dans l'équation sur la masse volumique de 2976 : * vapeur (SRVL = -SLIQ). 2977 : * STL : terme source dans l'équation de la température 2978 : * (STL = Lv*SLIQ/Rho/Cp). 2979 : 2980 : 'SI' ('EXISTE' tic 'RLIQ'); 2981 : ma = 'EXTR' tic.'RLIQ' MAILLAGE ; 2982 : ms = 'DOMA' $vtf 'SOMMET' ; 2983 : 'ELIMINER' (ma et ms) epsi ; 2984 : tic.'RLIQ' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RLIQ'); 2985 : 'SINON'; 2986 : tic.'RLIQ' = 'KCHT' $vtf 'SCAL' 'SOMMET' 0.; 2987 : 'FINSI'; 2988 : 'SI' ('EXISTE' tic 'RBRO'); 2989 : ma = 'EXTR' tic.'RBRO' MAILLAGE ; 2990 : ms = 'DOMA' $vtf 'SOMMET' ; 2991 : 'ELIMINER' (ma et ms) epsi ; 2992 : tic.'RBRO' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RBRO'); 2993 : 'SINON'; 2994 : tic.'RBRO' = 'KCHT' $vtf 'SCAL' 'SOMMET' 0.; 2995 : 'FINSI'; 2996 : 'FINSI'; 2997 : 2998 : *----------------------------------------------------------------------- 2999 : * TRAITEMENT DE L'ASPERSION C. CAROLI 3000 : * 3001 : 'SI' TBT.'ASPER' ; 3002 : 3003 : ********************** EQEX VN + UN *********************** 3004 : * nup = 1.00e-20 ; 3005 : nup = 1.00e-10 ; 3006 : rod = rxt.'rod' ; 3007 : gdrz = (-9.81 '*' (rod-Rho0) '/' rod) ; 3008 : 3009 : rvn = 'EQEX' 'NITER' 1 'OMEGA' 1.0 'ITMA' 0 3010 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' 3011 : 'ZONE' $vtf 'OPER' 'NS' 1. 'VN' nup 'GDR' 'INCO' 'VN' 3012 : 'OPTI' 'EFM1' 'CENTREE' 3013 : * 'ZONE' $vtf 'OPER' 'DFDT' 'KDIS' 'UNM' 1.0 'INCO' 'VN' 3014 : * 'ZONE' $vtf 'OPER' 'PENCECHI' 'KDIS' 'UNM' 1.0 'INCO' 'VN' 3015 : 'ZONE' $vtf 'OPER' 'PENCECHI' 'KDIS' 'UN' 1.0 'INCO' 'VN' 3016 : 'OPTI' 'EFM1' 'CENTREE' 3017 : 'ZONE' $vtf 'OPER' 'DFDT' 1.0 'VNM' DTX 'INCO' 'VN'; 3018 : * Utilisé par PENCECHI 3019 : rvn . 'TBT' = tbt ; 3020 : 'SI' DIM3D ; 3021 : rvn = 'EQEX' rvn 'CLIM' 3022 : 'VN' 'UIMP' toitf 0.0 3023 : 'VN' 'VIMP' toitf 0.0 3024 : 'VN' 'WIMP' toitf 0.0 3025 : 'VN' 'UIMP' aspinj 0.0 3026 : 'VN' 'VIMP' aspinj 0.0 3027 : 'VN' 'WIMP' aspinj vzinj ; 3028 : 'SINON' ; 3029 : rvn = 'EQEX' rvn 'CLIM' 3030 : 'VN' 'UIMP' toitf 0.0 3031 : 'VN' 'VIMP' toitf 0.0 3032 : 'VN' 'UIMP' aspinj 0.0 3033 : 'VN' 'VIMP' aspinj vzinj ; 3034 : 'FINSI' ; 3035 : 3036 : rv = 'EQEX' rv 3037 : 'OPTI' 'EFM1' 'CENTREE' 3038 : 'ZONE' $vtf 'OPER' 'PENCECHI' 'KGAS' 'VN' 1.0 'INCO' 'UN' ; 3039 : * 'ZONE' $vtf 'OPER' 'PENCECHI' 'KGAS' 'VNM' 1.0 'INCO' 'UN' ; 3040 : * 'ZONE' $vtf 'OPER' 'DFDT' 'KGAS' 'VNM' 1.0 'INCO' 'UN' ; 3041 : * Utilisé par PENCECHI 3042 : rv . 'TBT' = tbt ; 3043 : 3044 : Si(exist tic 'VN'); 3045 : ma=extr tic.'VN' MAILLAGE ; 3046 : ms=doma $vtf 'SOMMET'; 3047 : ELIM (ma et ms) epsi ; 3048 : tic.'VN' = 'KCHT' $vtf 'VECT' 'SOMMET' (tic.'VN') ; 3049 : Sinon; 3050 : 'SI' DIM3D ; 3051 : tic.'VN' = 'KCHT' $vtf 'VECT' 'SOMMET' (0.0 0.0 0.0) ; 3052 : 'SINON' ; 3053 : tic.'VN' = 'KCHT' $vtf 'VECT' 'SOMMET' (0.0 0.0) ; 3054 : 'FINSI' ; 3055 : Finsi ; 3056 : 3057 : Si(exist tic 'VNM'); 3058 : tic.'VNM' = 'KCHT' $vtf 'VECT' 'SOMMET' (tic.'VNM') ; 3059 : Sinon; 3060 : 'SI' DIM3D ; 3061 : tic.'VNM' = 'KCHT' $vtf 'VECT' 'SOMMET' (0.0 0.0 0.0) ; 3062 : 'SINON' ; 3063 : tic.'VNM' = 'KCHT' $vtf 'VECT' 'SOMMET' (0.0 0.0) ; 3064 : 'FINSI' ; 3065 : Finsi; 3066 : 3067 : Si(exist tic 'GDR'); 3068 : tic.'GDR' = 'KCHT' $vtf 'VECT' 'CENTRE' (tic.'GDR') ; 3069 : Sinon; 3070 : 'SI' DIM3D ; 3071 : tic.'GDR' = 'KCHT' $vtf 'VECT' 'SOMMET' (0.0 0.0 gdrz) ; 3072 : 'SINON' ; 3073 : tic.'GDR' = 'KCHT' $vtf 'VECT' 'SOMMET' (0.0 gdrz) ; 3074 : 'FINSI' ; 3075 : Finsi; 3076 : 3077 : Si(exist tic 'KDIS'); 3078 : tic.'KDIS' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'KDIS') ; 3079 : Sinon; 3080 : tic.'KDIS' = 'KCHT' $vtf 'SCAL' 'SOMMET' (1.0) ; 3081 : Finsi; 3082 : 3083 : Si(exist tic 'KGAS'); 3084 : tic.'KGAS' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'KGAS') ; 3085 : Sinon; 3086 : tic.'KGAS' = 'KCHT' $vtf 'SCAL' 'SOMMET' (1.0) ; 3087 : Finsi; 3088 : 3089 : rvn.'PASDETPS' = rv.'PASDETPS' ; 3090 : rvn.inco = tic ; 3091 : rvn.'METHINV'.TYPINV = TBT.'TYPINV' ; 3092 : rvn.'METHINV'.TYPRENU=TBT.'RENU' ; 3093 : rvn.'METHINV'.IMPINV = TBT.'nimpr' ; 3094 : rvn.'METHINV'.NITMAX = 250 ; 3095 : rvn.'METHINV'.PRECOND = 3 ; 3096 : rvn.'METHINV'.'FCPRECI' = FCPRECI ; 3097 : rvn.'METHINV'.'FCPRECT' = FCPRECT ; 3098 : rvn.'METHINV'.'CALPREC' = calprec ; 3099 : rvn.'METHINV'.RESID = 1.0e-10 ; 3100 : 3101 : TBT.'RVN' = rvn ; 3102 : 3103 : 3104 : 3105 : 3106 : ********************** EQEX XD **************************** 3107 : 3108 : rxd = 'EQEX' 'NITER' 1 'OMEGA' 1.0 'ITMA' 0 3109 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' 'NOCONS' 3110 : 'ZONE' $vtf 'OPER' 'KONV' 1.0 'VN' 0.0 'INCO' 'XD' 3111 : 'OPTI' 'EFM1' 'CENTREE' 3112 : 'ZONE' $vtf 'OPER' 'FIMP' 'SXD' 'INCO' 'XD' 3113 : 'OPTI' 'EFM1' 'CENTREE' 3114 : 'ZONE' $vtf 'OPER' 'DFDT' 1.0 'XDM' DTX 'INCO' 'XD' 3115 : ; 3116 : rxd = 'EQEX' rxd 'CLIM' 3117 : 'XD' 'TIMP' toitf 0.0 3118 : 'XD' 'TIMP' aspinj xdinj ; 3119 : 3120 : Si(exist tic 'XD'); 3121 : tic.'XD' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'XD') ; 3122 : Sinon ; 3123 : tic.'XD' = 'KCHT' $vtf 'SCAL' 'SOMMET' (0.0) ; 3124 : Finsi ; 3125 : 3126 : Si(exist tic 'XDM'); 3127 : tic.'XDM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'XDM') ; 3128 : Sinon ; 3129 : tic.'XDM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (0.0) ; 3130 : Finsi ; 3131 : 3132 : Si(exist tic 'SXD'); 3133 : tic.'SXD' = 'KCHT' $vtf 'SCAL' 'CENTRE' (tic.'SXD') ; 3134 : Sinon ; 3135 : tic.'SXD' = 'KCHT' $vtf 'SCAL' 'CENTRE' (0.0) ; 3136 : Finsi ; 3137 : 3138 : rxd.'PASDETPS' = rv.'PASDETPS' ; 3139 : rxd.inco = tic ; 3140 : rxd.'METHINV'.TYPINV = TBT.'TYPINV' ; 3141 : rxd.'METHINV'.TYPRENU=TBT.'RENU' ; 3142 : rxd.'METHINV'.IMPINV = TBT.'nimpr' ; 3143 : rxd.'METHINV'.NITMAX = 250 ; 3144 : rxd.'METHINV'.PRECOND = 3 ; 3145 : rxd.'METHINV'.'FCPRECI' = FCPRECI ; 3146 : rxd.'METHINV'.'FCPRECT' = FCPRECT ; 3147 : rxd.'METHINV'.'CALPREC' = calprec ; 3148 : rxd.'METHINV'.RESID = 1.0e-10 ; 3149 : 3150 : TBT.'RXD' = rxd ; 3151 : 3152 : ********************** EQEX DD **************************** 3153 : 3154 : rdd = 'EQEX' 'NITER' 1 'OMEGA' 1.0 'ITMA' 0 3155 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' 3156 : 'ZONE' $vtf 'OPER' 'KONV' 1.0 'VN' 0.0 'INCO' 'DD' 3157 : 'OPTI' 'EFM1' 'CENTREE' 3158 : 'ZONE' $vtf 'OPER' 'FIMP' 'SDIA' 'INCO' 'DD' 3159 : 'OPTI' 'EFM1' 'CENTREE' 3160 : 'ZONE' $vtf 'OPER' 'DFDT' 1.0 'DDM' DTX 'INCO' 'DD' ; 3161 : ; 3162 : rdd = 'EQEX' rdd 'CLIM' 3163 : 'DD' 'TIMP' toitf ddinj ; 3164 : 3165 : Si(exist tic 'DD'); 3166 : tic.'DD' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'DD') ; 3167 : Sinon; 3168 : tic.'DD' = 'KCHT' $vtf 'SCAL' 'SOMMET' (ddinj) ; 3169 : Finsi; 3170 : 3171 : Si(exist tic 'DDM'); 3172 : tic.'DDM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'DDM') ; 3173 : Sinon; 3174 : tic.'DDM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (ddinj) ; 3175 : Finsi; 3176 : 3177 : Si(exist tic 'SDIA'); 3178 : ma=extr tic.'SDIA' MAILLAGE ; 3179 : ms=doma $vtf 'CENTRE'; 3180 : ELIM (ma et ms) epsi ; 3181 : tic.'SDIA' = 'KCHT' $vtf 'SCAL' 'CENTRE' (tic.'SDIA') ; 3182 : Sinon; 3183 : tic.'SDIA' = 'KCHT' $vtf 'SCAL' 'CENTRE' (0.0 ) ; 3184 : Finsi; 3185 : 3186 : rdd.'PASDETPS' = rv.'PASDETPS' ; 3187 : rdd.inco = tic ; 3188 : rdd.'METHINV'.TYPINV = TBT.'TYPINV' ; 3189 : rdd.'METHINV'.TYPRENU=TBT.'RENU' ; 3190 : rdd.'METHINV'.IMPINV = TBT.'nimpr' ; 3191 : rdd.'METHINV'.NITMAX = 250 ; 3192 : rdd.'METHINV'.PRECOND = 3 ; 3193 : rdd.'METHINV'.'FCPRECI' = FCPRECI ; 3194 : rdd.'METHINV'.'FCPRECT' = FCPRECT ; 3195 : rdd.'METHINV'.'CALPREC' = calprec ; 3196 : rdd.'METHINV'.RESID = 1.0e-10 ; 3197 : 3198 : TBT.'RDD' = rdd ; 3199 : 3200 : ********************** EQEX TD + TF *********************** 3201 : 3202 : rtd = 'EQEX' 'NITER' 1 'OMEGA' 1.0 'ITMA' 0 3203 : 'OPTI' TBT.'FEF' TBT.'FIMPL' 'SUPG' 3204 : 'ZONE' $vtf 'OPER' 'TSCA' 1. 'VN' nup 0.0 'INCO' 'TD' 3205 : 'OPTI' 'EFM1' 'CENTREE' 3206 : * 'ZONE' $vtf 'OPER' 'DFDT' 'HDIS' 'TFNM' 1.0 'INCO' 'TD' 3207 : * 'ZONE' $vtf 'OPER' 'PENCECHI' 'HDIS' 'TFNM' 1.0 'INCO' 'TD' 3208 : 'ZONE' $vtf 'OPER' 'PENCECHI' 'HDIS' 'TF' 1.0 'INCO' 'TD' 3209 : 'OPTI' 'EFM1' 'CENTREE' 3210 : 'ZONE' $vtf 'OPER' 'FIMP' 'STD' 'INCO' 'TD' 3211 : 'OPTI' 'EFM1' 'CENTREE' 3212 : 'ZONE' $vtf 'OPER' 'DFDT' 1.0 'TDM' DTX 'INCO' 'TD' ; 3213 : rtd = 'EQEX' rtd CLIM 3214 : TD TIMP aspinj tdinj ; 3215 : * Utilisation de tbt par PENCECHI 3216 : rtd . 'TBT' = tbt ; 3217 : 3218 : rtf = 'EQEX' rtf 3219 : 'OPTI' 'EFM1' 'CENTREE' 3220 : 'ZONE' $vtf 'OPER' 'PENCECHI' 'HGAS' 'TD' 1.0 'INCO' 'TF' ; 3221 : * 'ZONE' $vtf 'OPER' 'PENCECHI' 'HGAS' 'TDM' 1.0 'INCO' 'TF' ; 3222 : * 'ZONE' $vtf 'OPER' 'DFDT' 'HGAS' 'TDM' 1.0 'INCO' 'TF' ; 3223 : * Utilisé par PENCECHI 3224 : rtf . 'TBT' = tbt ; 3225 : 3226 : Si(exist tic 'TD'); 3227 : tic.'TD' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'TD') ; 3228 : Sinon; 3229 : tic.'TD' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tdinj) ; 3230 : Finsi; 3231 : 3232 : Si(exist tic 'TDM'); 3233 : tic.'TDM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'TDM') ; 3234 : Sinon; 3235 : tic.'TDM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tdinj) ; 3236 : Finsi; 3237 : 3238 : Si(exist tic 'HDIS'); 3239 : tic.'HDIS' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'HDIS') ; 3240 : Sinon; 3241 : tic.'HDIS' = 'KCHT' $vtf 'SCAL' 'SOMMET' (0.0) ; 3242 : Finsi; 3243 : 3244 : Si(exist tic 'HGAS'); 3245 : tic.'HGAS' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'HGAS') ; 3246 : Sinon; 3247 : tic.'HGAS' = 'KCHT' $vtf 'SCAL' 'SOMMET' (0.0) ; 3248 : Finsi; 3249 : 3250 : Si(exist tic 'STD'); 3251 : tic.'STD' = 'KCHT' $vtf 'SCAL' 'CENTRE' (tic.'STD') ; 3252 : Sinon; 3253 : tic.'STD' = 'KCHT' $vtf 'SCAL' 'CENTRE' (0.0) ; 3254 : Finsi; 3255 : 3256 : 3257 : rtd.'PASDETPS' = rv.'PASDETPS' ; 3258 : rtd.inco = tic ; 3259 : rtd.'METHINV'.TYPINV = TBT.'TYPINV' ; 3260 : rtd.'METHINV'.TYPRENU=TBT.'RENU' ; 3261 : rtd.'METHINV'.IMPINV = TBT.'nimpr' ; 3262 : rtd.'METHINV'.NITMAX = 250 ; 3263 : rtd.'METHINV'.PRECOND = 3 ; 3264 : rtd.'METHINV'.'FCPRECI' = FCPRECI ; 3265 : rtd.'METHINV'.'FCPRECT' = FCPRECT ; 3266 : rtd.'METHINV'.'CALPREC' = calprec ; 3267 : rtd.'METHINV'.RESID = 1.0e-10 ; 3268 : 3269 : TBT.'RTD' = rtd ; 3270 : 3271 : ********************** EQEX RVP + RHO ********************* 3272 : 3273 : Rrvap = 'EQEX' Rrvap 3274 : 'OPTI' 'EFM1' 'CENTREE' 3275 : 'ZONE' $vtf 'OPER' 'FIMP' 'SRVP' 'INCO' 'RVP' ; 3276 : 3277 : 3278 : Si(exist tic 'SRVP'); 3279 : tic.'SRVP' = 'KCHT' $vtf 'SCAL' 'CENTRE' (tic.'SRVP') ; 3280 : Sinon; 3281 : tic.'SRVP' = 'KCHT' $vtf 'SCAL' 'CENTRE' (0.0) ; 3282 : Finsi; 3283 : 3284 : 'FINSI' ; 3285 : 3286 : *------------------------------------------------------------- 3287 : * FIN DE LA DISCRETISATION DES EQUATIONS EQEX 3288 : *------------------------------------------------------------- 3289 : 3290 : mess ' ==> VERIFICATION COMPATIBILITE INITIALISATION <== ' ; 3291 : ************************************* 3292 : **** initialisations temporaires **** 3293 : ************************************* 3294 : 3295 : Si(non(exist tic 'NUPADT')); 3296 : tic.'NUPADT'=0 ; 3297 : Finsi; 3298 : 3299 : * A/ Suivi temporel 3300 : *------------------ 3301 : * LTPS : liste des temps calcules (s) 3302 : * LMAXU : module maximum de la vitesse (m/s) 3303 : * Rhom : densite du mélange (kg/m3) 3304 : * Rhomv : densite de vapeur dans le mélange (kg/m3) (Si VAPEUR VRAI) 3305 : * Rhomvg: densite de vapeur + brouillard dans le mélange (kg/m3) 3306 : * 3307 : * Rhomhe: densite de helium dans le mélange (kg/m3) (Si THE VRAI) 3308 : * Rhomh2: densite de h2 dans le mélange (kg/m3) (Si TH2 VRAI) 3309 : * Rhomo2: densite de o2 dans le mélange (kg/m3) (Si TO2 VRAI) 3310 : * Rhomn2: densite de n2 dans le mélange (kg/m3) (Si Tn2 VRAI) 3311 : * Rhomco: densite de CO dans le mélange (kg/m3) (Si Tco VRAI) 3312 : * Rhomco2 : densite de CO2 dans le mélange (kg/m3) (Si Tco2 VRAI) 3313 : * Rhomco2 : densite de l'air dans le mélange (kg/m3) 3314 : * Tfm : temperature moyenne du fluide (Celsius) 3315 : * Tpm : Température moyenne paroi (Celsius) (Si THERMP VRAI) 3316 : * Tpcm: Température ??? (Celsius) (Si TTIMP VRAI) 3317 : * Qc : debit de condensation total (kg/s) (masse et paroi) 3318 : * Econd : energie extraite par condensation (J/m3) 3319 : * Hcond : enthalpie extraite par condensation (J/m3) 3320 : * Econv : energie de convection (J/m3) 3321 : * Easpe : energie extraite par l'aspersion (J/m3) (Si ASPER VRAI) 3322 : * Haspe : enthalpie extraite par l'aspersion (J/m3) (Si ASPER VRAI) 3323 : * Qaspe : debit aspersion (kg/s) (Si ASPER VRAI) 3324 : * Remn : énergie interne spécifique du mélange (J/m3) 3325 : * Rgpm : constante de gaz parfaits du mélange (J/kg/K) 3326 : * Cvm Cpm Gamm : capacite calorifique du mélange (J/kg/K) et rapport 3327 : * Roj : densite a l'injection (kg/m3) 3328 : * Ltbpi : température imposée (TTIMP) stoké dans rxt.'TIMP'.'TIMPI' 3329 : * Ltbp1 : température imposée (TTIMP1) 3330 : * Ltbp2 : température imposée (TTIMP2) 3331 : * Ltbp3 : température imposée (TTIMP3) 3332 : * Ltbp0 : température moyenne définie par l'utilisateur (TECHANP) 3333 : 3334 : ndli=(dime tic.'LTPS') ; 3335 : 3336 : 3337 : * Calcul de la masse initiale 3338 : REm0 = Rho0 '*' Cvm '*' (Tf0 '+' 273.15) ; 3339 : Mrest = Rvap0 * Vtotal ; 3340 : 3341 : * Calcul de Econv initial 3342 : Econvw = 0.0 ; 3343 : Econv1 = 0.0 ; 3344 : Econv2 = 0.0 ; 3345 : Econv3 = 0.0 ; 3346 : Econv0 = 0.0 ; 3347 : 3348 : Ltbp1 = 0.0 ; Ltbp2 = 0.0 ; Ltbp3 = 0.0 ; Ltbp0 = 0.0 ; 3349 : 3350 : 'SI'((TBT.'THERMP') et (TBT.'TPAROIF')); 3351 : * Energie extraite du gaz par convection 3352 : Tfpw = rxt.'TF0' ; 3353 : Tbpw = rxt.'Tp0' ; 3354 : Hconvw = rxt.'ECHAN' ; 3355 : Surfw = GEO.'Sparoif' ; 3356 : Econvw = Hconvw '*' (Tfpw '-' Tbpw) '*' Surfw ; 3357 : *Mess '!!!!!!!!' ; 3358 : *Mess ' Bizarre Bizarre Econvw n est valable qu ŕ l initialisation'; 3359 : *Mess '!!!!!!!!' ; 3360 : 'FINSI' ; 3361 : 3362 : Econvi=0. ; 3363 : 'SI' TTIMP ; 3364 : NBTIMP=dime (rxt.'TIMP') ; 3365 : itimp=INDEX (rxt.'TIMP') ; 3366 : REPETER BBTIMP NBTIMP ; 3367 : Btimp=rxt.'TIMP'.(itimp.&BBTIMP) ; 3368 : * Energie extraite du gaz par convection 3369 : Tfpi = rxt.'TF0' ; 3370 : Ltbpi = EXTR Btimp.'TIMP' 1 ; 3371 : Btimp.'Ltbpi'=Btimp.'Ltbpi' et (Prog Ltbpi); 3372 : Hconvi = Btimp.'ECHAN' ; 3373 : Surfi = Btimp.'Smtpi' ; 3374 : Econvi = Econvi + 3375 : (Hconvi '*' (Tfpi '-' Ltbpi) '*' Surfi) ; 3376 : FIN BBTIMP ; 3377 : 'FINSI' ; 3378 : 3379 : 'SI' TBT.'TTIMP1' ; 3380 : * Energie extraite du gaz par convection 3381 : Tfp1 = rxt.'TF0' ; 3382 : Ltbp1 = EXTR rxt.'TIMP1'.'TIMP' 1 ; 3383 : Hconv1 = rxt.'TIMP1'.'ECHAN' ; 3384 : Surf1 = GEO.'Smtp1' ; 3385 : Econv1 = Hconv1 '*' (Tfp1 '-' Ltbp1) '*' Surf1 ; 3386 : 'FINSI' ; 3387 : 3388 : 'SI' TBT.'TTIMP2' ; 3389 : * Energie extraite du gaz par convection 3390 : Tfp2 = rxt.'TF0' ; 3391 : Ltbp2 = EXTR rxt.'TIMP2'.'TIMP' 1 ; 3392 : Hconv2 = rxt.'TIMP2'.'ECHAN' ; 3393 : Surf2 = GEO.'Smtp2' ; 3394 : Econv2 = Hconv2 '*' (Tfp2 '-' Ltbp2) '*' Surf2 ; 3395 : 'FINSI' ; 3396 : 3397 : 'SI' TBT.'TTIMP3' ; 3398 : * Energie extraite du gaz par convection 3399 : Tfp3 = rxt.'TF0' ; 3400 : Ltbp3 = EXTR rxt.'TIMP3'.'TIMP' 1 ; 3401 : Hconv3 = rxt.'TIMP3'.'ECHAN' ; 3402 : Surf3 = GEO.'Smtp3' ; 3403 : Econv3 = Hconv3 '*' (Tfp3 '-' Ltbp3) '*' Surf3 ; 3404 : 'FINSI' ; 3405 : 3406 : 'SI' TBT.'TECHANP' ; 3407 : * Energie extraite du gaz par convection 3408 : Tfp0 = rxt.'TF0' ; 3409 : Ltbp0 = rxt.'ECHANP'.'TMUR' ; 3410 : Hconv0 = rxt.'ECHANP'.'ECHAN' ; 3411 : Surf0 = GEO.'Smtp0' ; 3412 : Econv0 = Hconv0 '*' (Tfp0 '-' Ltbp0) '*' Surf0 ; 3413 : 'FINSI' ; 3414 : 3415 : Econv = Econvw '+' Econvi '+' 3416 : Econv1 '+' Econv2 '+' Econv3 '+' Econv0 ; 3417 : *MESS 'Econv = ' Econv ; 3418 : 3419 : * Identification des LISTREELs 3420 : tic.'Lg0D'= tic.'Lg0D' 3421 : et ('MOTS' 'LMAX' 'U ' 'Rhom' ' ' 'Rhom' 'v ' 'Rhom' 'he ' 3422 : 'Rhom' 'h2 ' 'Rhom' 'o2 ' 'Rhom' 'n2 ' 'Rhom' 'co ' 'Rhom' 'co2 ' 3423 : 'Rhom' 'air ' 'Rhom' 'vg ' 3424 : 'Tfm ' ' ' 'Tpm ' ' ' 'Qc ' ' ' 'Econ' 'd ' 'Hcon' 'd ' 3425 : 'Econ' 'v ' 'Easp' 'e ' 'Hasp' 'e ' 'Qasp' 'e ' 'Remn' ' ' 3426 : 'Rgpm' ' ' 'Cvm ' ' ' 'Gamm' ' ' 'Cpm ' ' ' 'PT ' ' ' 3427 : ); 3428 : tic.'Lg0D'=tic.'Lg0D' et ('MOTS' 3429 : 'dPdt' ' ' 'guj ' ' ' 'guj2' ' ' 'Qj ' ' ' 'Qj2 ' ' ' 3430 : 'Ksi ' ' ' 'Ksi2' ' ' 'Ksi3' ' ' 3431 : 'Minj' ' ' 'Mcon' 'd ' 'Mres' 't ' 'Hj ' ' ' 'Ej ' ' ' 3432 : 'Hj2 ' ' ' 'Ej2 ' ' ' 'guj3' ' ' 'Qj3 ' ' ' 'Hj3 ' ' ' 3433 : 'Ej3 ' ' ' 'Ltbp' '1 ' 'Ltbp' '2 ' 'Ltbp' '3 ' 'Rliq' 'm ' 3434 : 'Rbro' 'm ' 'Qlj ' ' ' 'Qlj2' ' ' 'Qlj3' ' ' 'Hlj ' ' ' 3435 : 'Hlj2' ' ' 'Hlj3' ' ' 'Mliq' 'puis' 'Hliq' 'puis' ' ' ' '); 3436 : tic.'Lg0D'=tic.'Lg0D' et ('MOTS' 3437 : 'Qlj ' ' ' 'Qlj2' ' ' 'Qlj3' ' ' 'Hlj ' ' ' 'Hlj2' ' ' 3438 : 'Hlj3' ' ' 'Tinj' ' ' 'Tinj' '2 ' 'Tinj' '3 ' ' ' ' ' 3439 : ); 3440 : 3441 : * Valeur d'initialisation par défaut 3442 : tic.'Li0D'= tic.'Li0D' 3443 : et ('PROG' 0. Rho0 Rvap0 Rhe0 3444 : Rh20 Ro20 Rn20 Rco0 Rco20 3445 : Rair0 Rvap0 3446 : Tf0 Tpm0 0. 0. 0. 3447 : Econv 0. 0. 0. REm0 3448 : Rgpm Cvm Gamm Cpm PT0 3449 : ); 3450 : tic.'Li0D'=tic.'Li0D' et ('PROG' 3451 : 0. 0. 0. 0. 0. 3452 : 1. 1. 1. 3453 : 0. 0. Mrest 0. 0. 3454 : 0. 0. 0. 0. 0. 3455 : 0. Ltbp1 Ltbp2 Ltbp3 0. 3456 : 0. 0. 0. 0. 0. 3457 : 0. 0. 0. 0. 0. ); 3458 : tic.'Li0D'=tic.'Li0D' et ('PROG' 3459 : 0. 0. 0. 0. 0. 3460 : 0. 0. 0. 0. 0. ); 3461 : 3462 : * L'ajustement se fait ŕ la fin du paragraphe B/ apres 3463 : * avoir complété le tableau Lg0D (voir Ajustement) 3464 : 3465 : * Modif. FP 19/05/00 3466 : 'SI' (TBT.'CONDMAS'); 3467 : * Rliqm : Densité moyenne (rapportée au volume) du liquide 3468 : 'SI' ('NON' ('EXISTE' tic 'Rliqm')); 3469 : tic.'Rliqm' = 'PROG' ndli * 0.; 3470 : 'FINSI'; 3471 : 'SI' ('NON' ('EXISTE' tic 'Rbrom')); 3472 : tic.'Rbrom' = 'PROG' ndli * 0.; 3473 : 'FINSI'; 3474 : 'FINSI'; 3475 : 3476 : Roj = Rho0 ; 3477 : 3478 : * PT : pression totale (Pa) 3479 : * dPdt : variation temporelle de la pression (J/m3/s) 3480 : * guj : vitesse injection (m/s) 1čre brčche 3481 : * guj2: vitesse injection (m/s) 2čme brčche 3482 : * Minj : masse totale injectee (kg) 3483 : * Mcond : masse totale condensee (kg) 3484 : * Mrest : masse de vapeur restante dans l'enceinte (kg) 3485 : * Hj : enthalpie injection (J/Kg) 3486 : * Ej : energie interne injection (J/Kg) 3487 : * Emur : energie stockee dans le mur (J/Kg) 3488 : 3489 : 3490 : 'SI' TBT.'THERMP' ; 3491 : Emur0 = rxt.'ROCP' * (rxt.'Tp0' + 273.15) ; 3492 : Si(non(exist tic 'Emur')); 3493 : tic.'Emur' = 'PROG' ndli * Emur0 ; 3494 : Finsi; 3495 : 'FINSI' ; 3496 : * 3497 : * 3498 : *------------------------------------------------------------ 3499 : * Sauvegarde des corrections pour bilan 0D : on garde la cor- 3500 : * rection si 0D ou le max et le min si multiD 3501 : * Sur les especes : c'est MultiD 3502 : * Sur Rho : c'est 0D 3503 : * Sur Tf : c'est MultiD 3504 : tic.'drho' = 'PROG' ndli * 0.0 ; 3505 : tic.'MdTf' = 'PROG' ndli * 0.0 ; 3506 : tic.'mdTf' = 'PROG' ndli * 0.0 ; 3507 : 'SI' TBT.'VAPEUR' ; 3508 : tic.'Mdrvap' = 'PROG' ndli * 0.0 ; 3509 : 'FINSI' ; 3510 : 'SI' TBT.'THE' ; 3511 : tic.'Mdrhe' = 'PROG' ndli * 0.0 ; 3512 : 'FINSI' ; 3513 : 'SI' TBT.'TH2' ; 3514 : tic.'Mdrh2' = 'PROG' ndli * 0.0 ; 3515 : 'FINSI' ; 3516 : 'SI' TBT.'TO2' ; 3517 : tic.'Mdro2' = 'PROG' ndli * 0.0 ; 3518 : 'FINSI' ; 3519 : 'SI' TBT.'TN2' ; 3520 : tic.'Mdrn2' = 'PROG' ndli * 0.0 ; 3521 : 'FINSI' ; 3522 : 'SI' TBT.'TCO' ; 3523 : tic.'Mdrco' = 'PROG' ndli * 0.0 ; 3524 : 'FINSI' ; 3525 : 'SI' TBT.'TCO2' ; 3526 : tic.'Mdrco2' = 'PROG' ndli * 0.0 ; 3527 : 'FINSI' ; 3528 : *Il y a toujours de l'air 3529 : tic.'Mdrair' = 'PROG' ndli * 0.0 ; 3530 : *------------------------------------------------------------ 3531 : * B/ CHPOINT 3532 : *----------- 3533 : 3534 : 'SI' TBT.'THERMP' ; 3535 : Si(exist tic 'TP') ; 3536 : ma=extr tic.'TP' MAILLAGE ; 3537 : ms=doma GEO.'$vtp' 'SOMMET' ; 3538 : ELIM (ma et ms) epsi ; 3539 : tic.'TP' = 'KCHT' GEO.'$vtp' 'SCAL' 'SOMMET' (tic.'TP'); 3540 : Sinon ; 3541 : tic.'TP' = 'KCHT' GEO.'$vtp' 'SCAL' 'SOMMET' tp0 ; 3542 : Finsi ; 3543 : 3544 : Si(exist tic 'TPNM'); 3545 : tic.'TPNM' = 'KCHT' GEO.'$vtp' 'SCAL' 'SOMMET' (tic.'TPNM'); 3546 : Sinon ; 3547 : tic.'TPNM' = 'KCHT' GEO.'$vtp' 'SCAL' 'SOMMET' tp0 ; 3548 : Finsi ; 3549 : 3550 : 'FINSI' ; 3551 : 3552 : Si(exist tic 'TF'); 3553 : tic.'TF' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'TF') ; 3554 : Sinon ; 3555 : tic.'TF' = 'KCHT' $vtf 'SCAL' 'SOMMET' tf0 ; 3556 : Finsi ; 3557 : 3558 : Si(exist tic 'TFNM'); 3559 : tic.'TFNM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'TFNM') ; 3560 : Sinon ; 3561 : tic.'TFNM' = 'KCHT' $vtf 'SCAL' 'SOMMET' tf0 ; 3562 : Finsi ; 3563 : 3564 : Si(exist tic 'RHO'); 3565 : tic.'RHO' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RHO') ; 3566 : Sinon ; 3567 : tic.'RHO' = 'KCHT' $vtf 'SCAL' 'SOMMET' rho0 ; 3568 : Finsi ; 3569 : 3570 : Si(exist tic 'RHONM'); 3571 : tic.'RHONM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RHONM') ; 3572 : Sinon ; 3573 : tic.'RHONM' = 'KCHT' $vtf 'SCAL' 'SOMMET' rho0 ; 3574 : Finsi ; 3575 : 3576 : * Cas avec Fonctions de PAROI 3577 : 'SI' TBT.'FPAROI' ; 3578 : Si(exist tic 'UET'); 3579 : tic.'UET' = 'KCHT' (GEO.'$menvfU') 'SCAL' 3580 : (TBT.'SPGNU') (tic.'UET'); 3581 : Sinon ; 3582 : tic.'UET' = 'KCHT' (GEO.'$menvfU') 'SCAL' (TBT.'SPGNU') 1.e-5; 3583 : Finsi ; 3584 : 'FINSI' ; 3585 : 3586 : * Cas avec Vapeur donc eventuellement condensation 3587 : 'SI' TBT.'VAPEUR' ; 3588 : Si(exist tic 'RVP') ; 3589 : tic.'RVP' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RVP') ; 3590 : Sinon ; 3591 : tic.'RVP' = 'KCHT' $vtf 'SCAL' 'SOMMET' Rvap0 ; 3592 : Finsi ; 3593 : 3594 : Si(exist tic 'ROVP') ; 3595 : tic.'ROVP' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'ROVP') ; 3596 : Sinon ; 3597 : tic.'ROVP' = tic.'RVP' ; 3598 : Finsi ; 3599 : 3600 : Si(exist tic 'RVPNM') ; 3601 : tic.'RVPNM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RVPNM') ; 3602 : Sinon ; 3603 : tic.'RVPNM' = 'KCHT' $vtf 'SCAL' 'SOMMET' Rvap0 ; 3604 : Finsi ; 3605 : 3606 : Si(exist tic 'YVAP') ; 3607 : tic.'YVAP' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'YVAP') ; 3608 : Sinon ; 3609 : tic.'YVAP' = 'KCHT' $vtf 'SCAL' 'SOMMET' Yvap0 ; 3610 : Finsi ; 3611 : 'FINSI' ; 3612 : 3613 : 'SI' TBT.'TPAROIF' ; 3614 : Si (exist tic 'KKCW') ; 3615 : ma=extr tic.'KKCW' MAILLAGE ; 3616 : ms=doma GEO.'$paroif' 'CENTRE' ; 3617 : ELIM (ma et ms) GEO.'epsi' ; 3618 : tic.'KKCW' = 'KCHT' GEO.'$paroif' 'SCAL' 'CENTRE' (tic.'KKCW') ; 3619 : Sinon ; 3620 : tic.'KKCW' = 'KCHT' GEO.'$paroif' 'SCAL' 'CENTRE' 0. ; 3621 : Finsi ; 3622 : 3623 : 'SI' TBT.'VAPEUR' ; 3624 : Si (exist tic 'ROVIW') ; 3625 : ma=extr tic.'ROVIW' MAILLAGE ; 3626 : ms=doma GEO.'$paroif' 'SOMMET' ; 3627 : ELIM (ma et ms) GEO.'epsi' ; 3628 : tic.'ROVIW' = 'KCHT' GEO.'$paroif' 'SCAL' 'SOMMET' (tic.'ROVIW') ; 3629 : Sinon ; 3630 : tic.'ROVIW' = 'KCHT' GEO.'$paroif' 'SCAL' 'SOMMET' 3631 : ('REDU' tic.'RVP' GEO.'paroif'); 3632 : Finsi ; 3633 : 'FINSI' ; 3634 : 3635 : Si (exist tic 'FHPW') ; 3636 : tic.'FHPW' = 'KCHT' GEO.'$paroif' 'SCAL' 'CENTRE' (tic.'FHPW') ; 3637 : Sinon ; 3638 : tic.'FHPW' = 'KCHT' GEO.'$paroif' 'SCAL' 'CENTRE' 0. ; 3639 : Finsi ; 3640 : 3641 : tic.'Lg0D'=tic.'Lg0D' et ('MOTS' 'Mcon' 'dw ' 'Qcw ' ' '); 3642 : tic.'Li0D'=tic.'Li0D' et ('PROG' 0. 0. ); 3643 : 3644 : 'FINSI' ; 3645 : 3646 : tic.'Lg0D'=tic.'Lg0D' et ('MOTS' 'Mcon' 'dm ' 'Qcm ' ' '); 3647 : tic.'Li0D'=tic.'Li0D' et ('PROG' 0. 0. ); 3648 : 3649 : 3650 : 'SI' TTIMP ; 3651 : NBTIMP=dime (rxt.'TIMP') ; 3652 : itimp=INDEX (rxt.'TIMP') ; 3653 : REPETER BBTIMP NBTIMP ; 3654 : Btimp=rxt.'TIMP'.(itimp.&BBTIMP) ; 3655 : 3656 : CKKC1=Btimp.'KKC1' ; 3657 : Si (exist tic CKKC1) ; 3658 : ma=extr (tic.CKKC1) MAILLAGE ; 3659 : ms=doma Btimp.'$mtpi' 'CENTRE' ; 3660 : ELIM (ma et ms) GEO.'epsi' ; 3661 : tic.CKKC1 = 'KCHT' Btimp.'$mtpi' 'SCAL' 'CENTRE' (tic.CKKC1); 3662 : Sinon ; 3663 : tic.CKKC1='KCHT' Btimp.'$mtpi' 'SCAL' 'CENTRE' 0. ; 3664 : Finsi ; 3665 : 3666 : CKH1=Btimp.'KH1' ; 3667 : Si (exist tic CKH1) ; 3668 : ma=extr (tic.CKH1) MAILLAGE ; 3669 : ms=doma Btimp.'$mtpi' 'CENTRE' ; 3670 : ELIM (ma et ms) GEO.'epsi' ; 3671 : tic.CKH1 = 'KCHT' Btimp.'$mtpi' 'SCAL' 'CENTRE' (tic.CKH1); 3672 : Sinon ; 3673 : tic.CKH1 = 'KCHT' Btimp.'$mtpi' 'SCAL' 'CENTRE' 0. ; 3674 : Finsi ; 3675 : 3676 : 'SI' TBT.'VAPEUR' ; 3677 : CROVI1=Btimp.'ROVI1' ; 3678 : Si (exist tic CROVI1) ; 3679 : ma=extr (tic.CROVI1) MAILLAGE ; 3680 : ms=doma Btimp.'$mtpi' 'SOMMET' ; 3681 : ELIM (ma et ms) GEO.'epsi' ; 3682 : tic.CROVI1='KCHT' Btimp.'$mtpi' 'SCAL' 'SOMMET' (tic.CROVI1); 3683 : Sinon ; 3684 : tic.CROVI1= 'KCHT' Btimp.'$mtpi' 'SCAL' 'SOMMET' 3685 : ('REDU' tic.'RVP' Btimp.'mtpi'); 3686 : Finsi ; 3687 : 'FINSI' ; 3688 : CQc1=chai 'Qc1' &BBTIMP ; 3689 : CMcond1=chai 'Mcond1' &BBTIMP ; 3690 : tic.CQc1=Prog 0. ; 3691 : tic.CMcond1=Prog 0. ; 3692 : 3693 : CFHP1=Btimp.'FHP1' ; 3694 : Si (exist tic CFHP1) ; 3695 : tic.CFHP1 = 'KCHT' Btimp.'$mtpi' 'SCAL' 'CENTRE' (tic.CFHP1); 3696 : Sinon ; 3697 : tic.CFHP1 = 'KCHT' Btimp.'$mtpi' 'SCAL' 'CENTRE' 0. ; 3698 : Finsi ; 3699 : 3700 : 3701 : *?tic.'Lg0D'=tic.'Lg0D' et ('MOTS' 'Mcon' 'd1 ' 'Qc1 ' ' '); 3702 : *?tic.'Li0D'=tic.'Li0D' et ('PROG' 0. 0. ); 3703 : 3704 : FIN BBTIMP ; 3705 : 'FINSI' ; 3706 : 3707 : 'SI' TBT.'TTIMP1' ; 3708 : CKKC1 ='KKC1' ; 3709 : Si (exist tic CKKC1) ; 3710 : ma=extr (tic.CKKC1) MAILLAGE ; 3711 : ms=doma GEO.'$mtp1' 'CENTRE' ; 3712 : ELIM (ma et ms) GEO.'epsi' ; 3713 : tic.CKKC1 = 'KCHT' GEO.'$mtp1' 'SCAL' 'CENTRE' (tic.CKKC1) ; 3714 : Sinon ; 3715 : tic.CKKC1 = 'KCHT' GEO.'$mtp1' 'SCAL' 'CENTRE' 0. ; 3716 : Finsi ; 3717 : 3718 : Si (exist tic 'KH1') ; 3719 : ma=extr tic.'KH1' MAILLAGE ; 3720 : ms=doma GEO.'$mtp1' 'CENTRE' ; 3721 : ELIM (ma et ms) GEO.'epsi' ; 3722 : tic.'KH1' = 'KCHT' GEO.'$mtp1' 'SCAL' 'CENTRE' (tic.'KH1'); 3723 : Sinon ; 3724 : tic.'KH1' = 'KCHT' GEO.'$mtp1' 'SCAL' 'CENTRE' 0. ; 3725 : Finsi ; 3726 : 3727 : 'SI' TBT.'VAPEUR' ; 3728 : CROVI1='ROVI1' ; 3729 : Si (exist tic CROVI1) ; 3730 : ma=extr tic.CROVI1 MAILLAGE ; 3731 : ms=doma GEO.'$mtp1' 'SOMMET' ; 3732 : ELIM (ma et ms) GEO.'epsi' ; 3733 : tic.CROVI1 = 'KCHT' GEO.'$mtp1' 'SCAL' 'SOMMET' (tic.CROVI1) ; 3734 : Sinon ; 3735 : tic.CROVI1 = 'KCHT' GEO.'$mtp1' 'SCAL' 'SOMMET' 3736 : ('REDU' tic.'RVP' GEO.'mtp1' ); 3737 : Finsi ; 3738 : 'FINSI' ; 3739 : 3740 : Si (exist tic 'FHP1') ; 3741 : tic.'FHP1' = 'KCHT' GEO.'$mtp1' 'SCAL' 'CENTRE' (tic.'FHP1') ; 3742 : Sinon ; 3743 : tic.'FHP1' = 'KCHT' GEO.'$mtp1' 'SCAL' 'CENTRE' 0. ; 3744 : Finsi ; 3745 : 3746 : tic.'Lg0D'=tic.'Lg0D' et ('MOTS' 'Mcon' 'd1 ' 'Qc1 ' ' '); 3747 : tic.'Li0D'=tic.'Li0D' et ('PROG' 0. 0. ); 3748 : 3749 : 'FINSI' ; 3750 : 3751 : 'SI' TBT.'TTIMP2' ; 3752 : Si (exist tic 'KKC2') ; 3753 : ma=extr tic.'KKC2' MAILLAGE ; 3754 : ms=doma GEO.'$mtp2' 'CENTRE' ; 3755 : ELIM (ma et ms) GEO.'epsi' ; 3756 : tic.'KKC2' = 'KCHT' GEO.'$mtp2' 'SCAL' 'CENTRE' (tic.'KKC2') ; 3757 : Sinon ; 3758 : tic.'KKC2' = 'KCHT' GEO.'$mtp2' 'SCAL' 'CENTRE' 0. ; 3759 : Finsi ; 3760 : 3761 : Si (exist tic 'KH2') ; 3762 : ma=extr tic.'KH2' MAILLAGE ; 3763 : ms=doma GEO.'$mtp2' 'CENTRE' ; 3764 : ELIM (ma et ms) GEO.'epsi' ; 3765 : tic.'KH2' = 'KCHT' GEO.'$mtp2' 'SCAL' 'CENTRE' (tic.'KH2'); 3766 : Sinon ; 3767 : tic.'KH2' = 'KCHT' GEO.'$mtp2' 'SCAL' 'CENTRE' 0. ; 3768 : Finsi ; 3769 : 3770 : 'SI' TBT.'VAPEUR' ; 3771 : Si (exist tic 'ROVI2') ; 3772 : ma=extr tic.'ROVI2' MAILLAGE ; 3773 : ms=doma GEO.'$mtp2' 'SOMMET' ; 3774 : ELIM (ma et ms) GEO.'epsi' ; 3775 : tic.'ROVI2' = 'KCHT' GEO.'$mtp2' 'SCAL' 'SOMMET' (tic.'ROVI2') ; 3776 : Sinon ; 3777 : tic.'ROVI2' = 'KCHT' GEO.'$mtp2' 'SCAL' 'SOMMET' 3778 : ('REDU' tic.'RVP' GEO.'mtp2' ); 3779 : Finsi ; 3780 : 'FINSI' ; 3781 : 3782 : Si (exist tic 'FHP2') ; 3783 : tic.'FHP2' = 'KCHT' GEO.'$mtp2' 'SCAL' 'CENTRE' (tic.'FHP2') ; 3784 : Sinon ; 3785 : tic.'FHP2' = 'KCHT' GEO.'$mtp2' 'SCAL' 'CENTRE' 0. ; 3786 : Finsi ; 3787 : 3788 : tic.'Lg0D'=tic.'Lg0D' et ('MOTS' 'Mcon' 'd2 ' 'Qc2 ' ' '); 3789 : tic.'Li0D'=tic.'Li0D' et ('PROG' 0. 0. ); 3790 : 3791 : 'FINSI' ; 3792 : 3793 : 'SI' TBT.'TTIMP3' ; 3794 : Si (exist tic 'KKC3') ; 3795 : ma=extr tic.'KKC3' MAILLAGE ; 3796 : ms=doma GEO.'$mtp3' 'CENTRE' ; 3797 : ELIM (ma et ms) GEO.'epsi' ; 3798 : tic.'KKC3' = 'KCHT' GEO.'$mtp3' 'SCAL' 'CENTRE' (tic.'KKC3'); 3799 : Sinon ; 3800 : tic.'KKC3' = 'KCHT' GEO.'$mtp3' 'SCAL' 'CENTRE' 0. ; 3801 : Finsi ; 3802 : 3803 : Si (exist tic 'KH3') ; 3804 : ma=extr tic.'KH3' MAILLAGE ; 3805 : ms=doma GEO.'$mtp3' 'CENTRE' ; 3806 : ELIM (ma et ms) GEO.'epsi' ; 3807 : tic.'KH3' = 'KCHT' GEO.'$mtp3' 'SCAL' 'CENTRE' (tic.'KH3'); 3808 : Sinon ; 3809 : tic.'KH3' = 'KCHT' GEO.'$mtp3' 'SCAL' 'CENTRE' 0. ; 3810 : Finsi ; 3811 : 3812 : 'SI' TBT.'VAPEUR' ; 3813 : Si (exist tic 'ROVI3') ; 3814 : ma=extr tic.'ROVI3' MAILLAGE ; 3815 : ms=doma GEO.'$mtp3' 'SOMMET' ; 3816 : ELIM (ma et ms) GEO.'epsi' ; 3817 : tic.'ROVI3' = 'KCHT' GEO.'$mtp3' 'SCAL' 'SOMMET' (tic.'ROVI3') ; 3818 : Sinon ; 3819 : tic.'ROVI3' = 'KCHT' GEO.'$mtp3' 'SCAL' 'SOMMET' 3820 : ('REDU' tic.'RVP' GEO.'mtp3' ); 3821 : Finsi ; 3822 : 'FINSI' ; 3823 : 3824 : Si (exist tic 'FHP3') ; 3825 : tic.'FHP3' = 'KCHT' GEO.'$mtp3' 'SCAL' 'CENTRE' (tic.'FHP3') ; 3826 : Sinon ; 3827 : tic.'FHP3' = 'KCHT' GEO.'$mtp3' 'SCAL' 'CENTRE' 0. ; 3828 : Finsi ; 3829 : 3830 : tic.'Lg0D'=tic.'Lg0D' et ('MOTS' 'Mcon' 'd3 ' 'Qc3 ' ' '); 3831 : tic.'Li0D'=tic.'Li0D' et ('PROG' 0. 0. ); 3832 : 3833 : 'FINSI' ; 3834 : * Fin Cas avec Vapeur donc eventuellement condensation 3835 : 3836 : 'SI' TBT.'TECHANP' ; 3837 : Si (exist tic 'KKC0') ; 3838 : ma=extr tic.'KKC0' MAILLAGE ; 3839 : ms=doma GEO.'$mtp0' 'CENTRE' ; 3840 : ELIM (ma et ms) GEO.'epsi' ; 3841 : tic.'KKC0' = 'KCHT' GEO.'$mtp0' 'SCAL' 'CENTRE' (tic.'KKC0'); 3842 : Sinon ; 3843 : tic.'KKC0' = 'KCHT' GEO.'$mtp0' 'SCAL' 'CENTRE' 0. ; 3844 : Finsi ; 3845 : 3846 : Si (exist tic 'KH0') ; 3847 : ma=extr tic.'KH0' MAILLAGE ; 3848 : ms=doma GEO.'$mtp0' 'CENTRE' ; 3849 : ELIM (ma et ms) GEO.'epsi' ; 3850 : tic.'KH0' = 'KCHT' GEO.'$mtp0' 'SCAL' 'CENTRE' (tic.'KH0'); 3851 : Sinon ; 3852 : tic.'KH0' = 'KCHT' GEO.'$mtp0' 'SCAL' 'CENTRE' 3853 : (rxt.'ECHANP'.'ECHAN') ; 3854 : Finsi ; 3855 : 3856 : 'SI' TBT.'VAPEUR' ; 3857 : Si (exist tic 'ROVI0') ; 3858 : ma=extr tic.'ROVI0' MAILLAGE ; 3859 : ms=doma GEO.'$mtp0' 'SOMMET' ; 3860 : ELIM (ma et ms) GEO.'epsi' ; 3861 : tic.'ROVI0' = 'KCHT' GEO.'$mtp0' 'SCAL' 'SOMMET' (tic.'ROVI0') ; 3862 : Sinon ; 3863 : tic.'ROVI0' = 'KCHT' GEO.'$mtp0' 'SCAL' 'SOMMET' 3864 : ('REDU' tic.'RVP' GEO.'mtp0' ); 3865 : Finsi ; 3866 : 'FINSI' ; 3867 : 3868 : Si (exist tic 'FHP0') ; 3869 : tic.'FHP0' = 'KCHT' GEO.'$mtp0' 'SCAL' 'CENTRE' (tic.'FHP0') ; 3870 : Sinon ; 3871 : tic.'FHP0' = 'KCHT' GEO.'$mtp0' 'SCAL' 'CENTRE' 0. ; 3872 : Finsi ; 3873 : 3874 : tic.'Lg0D'=tic.'Lg0D' et ('MOTS' 'Mcon' 'd0 ' 'Qc0 ' ' '); 3875 : tic.'Li0D'=tic.'Li0D' et ('PROG' 0. 0. ); 3876 : 3877 : 'FINSI' ; 3878 : * Fin Cas avec Vapeur donc eventuellement condensation 3879 : 3880 : 'SI' TBT.'THE' ; 3881 : Si(exist tic 'RHE'); 3882 : tic.'RHE' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RHE') ; 3883 : Sinon ; 3884 : tic.'RHE' = 'KCHT' $vtf 'SCAL' 'SOMMET' Rhe0 ; 3885 : Finsi ; 3886 : 3887 : Si(exist tic 'RHEM'); 3888 : tic.'RHEM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RHEM') ; 3889 : Sinon ; 3890 : tic.'RHEM' = 'KCHT' $vtf 'SCAL' 'SOMMET' Rhe0 ; 3891 : Finsi ; 3892 : 3893 : Si(exist tic 'YHE'); 3894 : tic.'YHE' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'YHE') ; 3895 : Sinon ; 3896 : tic.'YHE' = 'KCHT' $vtf 'SCAL' 'SOMMET' Yhe0 ; 3897 : Finsi ; 3898 : 3899 : 'SINON' ; 3900 : tic.'YHE' = 0. ; 3901 : 'FINSI' ; 3902 : 3903 : 'SI' TBT.'TH2' ; 3904 : Si(exist tic 'RH2'); 3905 : tic.'RH2' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RH2') ; 3906 : Sinon ; 3907 : tic.'RH2' = 'KCHT' $vtf 'SCAL' 'SOMMET' Rh20 ; 3908 : Finsi ; 3909 : 3910 : Si(exist tic 'RH2M'); 3911 : tic.'RH2M' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RH2M') ; 3912 : Sinon ; 3913 : tic.'RH2M' = 'KCHT' $vtf 'SCAL' 'SOMMET' Rh20 ; 3914 : Finsi ; 3915 : 3916 : Si(exist tic 'YH2'); 3917 : tic.'YH2' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'YH2') ; 3918 : Sinon ; 3919 : tic.'YH2' = 'KCHT' $vtf 'SCAL' 'SOMMET' Yh20 ; 3920 : Finsi ; 3921 : 3922 : 'SINON' ; 3923 : tic.'YH2' = 0. ; 3924 : 'FINSI' ; 3925 : 3926 : 'SI' TBT.'TO2' ; 3927 : Si(exist tic 'RO2'); 3928 : tic.'RO2' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RO2') ; 3929 : Sinon ; 3930 : tic.'RO2' = 'KCHT' $vtf 'SCAL' 'SOMMET' Ro20 ; 3931 : Finsi ; 3932 : 3933 : tic.'RO2M' = 'KCHT' $vtf 'SCAL' 'SOMMET' Ro20 ; 3934 : Si(exist tic 'YO2'); 3935 : tic.'YO2' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'YO2') ; 3936 : Sinon ; 3937 : tic.'YO2' = 'KCHT' $vtf 'SCAL' 'SOMMET' Yo20 ; 3938 : Finsi ; 3939 : 3940 : 'SINON' ; 3941 : tic.'YO2' = 0. ; 3942 : 'FINSI' ; 3943 : 3944 : 'SI' TBT.'TN2' ; 3945 : Si(exist tic 'RN2'); 3946 : tic.'RN2' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RN2') ; 3947 : Sinon ; 3948 : tic.'RN2' = 'KCHT' $vtf 'SCAL' 'SOMMET' Rn20 ; 3949 : Finsi ; 3950 : 3951 : Si(exist tic 'RN2M'); 3952 : tic.'RN2M' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RN2M') ; 3953 : Sinon ; 3954 : tic.'RN2M' = 'KCHT' $vtf 'SCAL' 'SOMMET' Rn20 ; 3955 : Finsi ; 3956 : 3957 : Si(exist tic 'YN2'); 3958 : tic.'YN2' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'YN2') ; 3959 : Sinon ; 3960 : tic.'YN2' = 'KCHT' $vtf 'SCAL' 'SOMMET' Yn20 ; 3961 : Finsi ; 3962 : 3963 : 'SINON' ; 3964 : tic.'YN2' = 0. ; 3965 : 'FINSI' ; 3966 : 3967 : 'SI' TBT.'TCO2' ; 3968 : 3969 : Si(exist tic 'RCO2'); 3970 : tic.'RCO2' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RCO2') ; 3971 : Sinon ; 3972 : tic.'RCO2' = 'KCHT' $vtf 'SCAL' 'SOMMET' Rco20 ; 3973 : Finsi ; 3974 : 3975 : Si(exist tic 'RCO2M'); 3976 : tic.'RCO2M' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RCO2M') ; 3977 : Sinon ; 3978 : tic.'RCO2M' = 'KCHT' $vtf 'SCAL' 'SOMMET' Rco20 ; 3979 : Finsi ; 3980 : 3981 : Si(exist tic 'YCO2'); 3982 : tic.'YCO2' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'YCO2') ; 3983 : Sinon ; 3984 : tic.'YCO2' = 'KCHT' $vtf 'SCAL' 'SOMMET' Yco20 ; 3985 : Finsi ; 3986 : 3987 : 'SINON' ; 3988 : tic.'YCO2' = 0. ; 3989 : 'FINSI' ; 3990 : 3991 : 'SI' TBT.'TAIR' ; 3992 : 3993 : Si(exist tic 'RAIR'); 3994 : tic.'RAIR' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RAIR') ; 3995 : Sinon ; 3996 : tic.'RAIR' = 'KCHT' $vtf 'SCAL' 'SOMMET' Rair0 ; 3997 : Finsi ; 3998 : 3999 : Si(exist tic 'RAIRM'); 4000 : tic.'RAIRM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RAIRM') ; 4001 : Sinon ; 4002 : tic.'RAIRM' = 'KCHT' $vtf 'SCAL' 'SOMMET' Rair0 ; 4003 : Finsi ; 4004 : 4005 : Si(exist tic 'YAIR'); 4006 : tic.'YAIR' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'YAIR') ; 4007 : Sinon ; 4008 : tic.'YAIR' = 'KCHT' $vtf 'SCAL' 'SOMMET' Yair0 ; 4009 : Finsi ; 4010 : 4011 : 'SINON' ; 4012 : tic.'YAIR' = 'KCHT' $vtf 'SCAL' 'SOMMET' Yair0 ; 4013 : 'FINSI' ; 4014 : 4015 : 'SI' TBT.'TCO' ; 4016 : 4017 : Si(exist tic 'RCO'); 4018 : tic.'RCO' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RCO') ; 4019 : Sinon ; 4020 : tic.'RCO' = 'KCHT' $vtf 'SCAL' 'SOMMET' Rco0 ; 4021 : Finsi ; 4022 : 4023 : Si(exist tic 'RCOM'); 4024 : tic.'RCOM' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'RCOM') ; 4025 : Sinon ; 4026 : tic.'RCOM' = 'KCHT' $vtf 'SCAL' 'SOMMET' Rco0 ; 4027 : Finsi ; 4028 : 4029 : Si(exist tic 'YCO'); 4030 : tic.'YCO' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'YCO') ; 4031 : Sinon ; 4032 : tic.'YCO' = 'KCHT' $vtf 'SCAL' 'SOMMET' Yco0 ; 4033 : Finsi ; 4034 : 4035 : 'SINON' ; 4036 : tic.'YCO' = 0. ; 4037 : 'FINSI' ; 4038 : 4039 : ***************************************************************** 4040 : * Ajustement des LISTREELs * 4041 : * On fait l'ajustement de listreel * 4042 : * aprčs avoir complété le tableau Lg0D * 4043 : Lg0D=tic.'Lg0D' ; 4044 : Li0D=tic.'Li0D' ; 4045 : nlg0D = (dime Lg0D) / 2 ; 4046 : Repeter Bcli nlg0D ; 4047 : nm=chai (extr Lg0D (2 * &bcli - 1)) (extr Lg0D (2 * &bcli)) ; 4048 : vm=extr Li0D &bcli ; 4049 : Si(non(exist tic nm)) ; 4050 : tic.nm = 'PROG' ndli * vm ; 4051 : Sinon ; 4052 : ndlj=dime tic.nm ; 4053 : Si(< ndlj ndli) ; 4054 : mess 'NDLI=' ndli 'NDLj=' ndlj ; 4055 : mess ' On ajuste tic.' nm ; 4056 : tic.nm=('PROG' (ndli - ndlj)*0. ) et tic.nm ; 4057 : Finsi ; 4058 : Si(> ndlj ndli) ; 4059 : mess ' dimension de tic.' nm ' trop grande ' ; 4060 : mess ndlj ' alors que ce devrait ętre ' ndli ; 4061 : mess ' On ne sait pas quoi faire ' ; 4062 : erreur 5 ; 4063 : Finsi ; 4064 : Finsi ; 4065 : Fin Bcli ; 4066 : 4067 : * Au tour des parois ŕ T imposées 4068 : 'SI' TTIMP ; 4069 : NBTIMP=dime (rxt.'TIMP') ; 4070 : itimp=INDEX (rxt.'TIMP') ; 4071 : REPETER BBTIMP NBTIMP ; 4072 : Btimp=rxt.'TIMP'.(itimp.&BBTIMP) ; 4073 : CMcond1=Btimp.'Mcond1' ; 4074 : 'SI' (EXIST tic.CMcond1) ; 4075 : ndlj=dime tic.CMcond1 ; 4076 : Si(< ndlj ndli) ; 4077 : mess ' On ajuste tic.' CMcond1 ; 4078 : tic.CMCOND1=('PROG' (ndli - ndlj)*0. ) et tic.CMCOND1 ; 4079 : Finsi ; 4080 : 4081 : Si(> ndlj ndli) ; 4082 : mess ' dimension de tic.' cmcond1 ' trop grande ' ; 4083 : mess ndlj ' alors que ce devrait ętre ' ndli ; 4084 : mess ' On ne sait pas quoi faire ' ; 4085 : erreur 5 ; 4086 : Finsi ; 4087 : 4088 : 'FINSI' ; 4089 : FIN BBTIMP ; 4090 : 'FINSI' ; 4091 : * Fin des parois ŕ T imposées 4092 : 4093 : ***************************************************************** 4094 : 4095 : 4096 : *------------------------------------------------------- 4097 : * C/ FLOTTANT ou LOGIQUE 4098 : 4099 : Si(non(exist tic 'Tps')); 4100 : tic.'Tps' = 0.0 ; 4101 : Finsi ; 4102 : 4103 : Si(exist tic 'Rgp') ; 4104 : ma=extr tic.'Rgp' MAILLAGE ; 4105 : ms=doma $vtf 'SOMMET'; 4106 : ELIM (ma et ms) epsi ; 4107 : tic.'Rgp' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'Rgp') ; 4108 : sinon ; 4109 : tic.'Rgp' = Rgp ; 4110 : finsi ; 4111 : 4112 : Si(exist tic 'Rgpi') ; 4113 : ma=extr tic.'Rgpi' MAILLAGE ; 4114 : ms=doma $vtf 'SOMMET'; 4115 : ELIM (ma et ms) epsi ; 4116 : tic.'Rgpi' = 'KCHT' $vtf 'SCAL' 'SOMMET' (tic.'Rgpi') ; 4117 : sinon ; 4118 : syi=tic.'YHE' + tic.'YH2' + tic.'YO2' + tic.'YN2' + tic.'YCO2' + 4119 : tic.'YCO' + tic.'YAIR' ; 4120 : Rit =inve syi ; 4121 : Yihe = tic.'YHE' * Rit ; Yih2 = tic.'YH2' * Rit ; 4122 : Yio2 = tic.'YO2' * Rit ; Yin2 = tic.'YN2' * Rit ; 4123 : Yico2= tic.'YCO2' * Rit ; Yico = tic.'YCO' * Rit ; 4124 : Yiair= tic.'YAIR' * Rit ; 4125 : Rgpi = (Rgair '*' Yiair) 4126 : '+' (Rghe '*' Yihe ) '+' (Rgh2 '*' Yih2 ) 4127 : '+' (Rgo2 '*' Yio2 ) '+' (Rgn2 '*' Yin2 ) 4128 : '+' (Rgco '*' Yico ) '+' (Rgco2 '*' Yico2 ) ; 4129 : tic.'Rgpi' = Rgpi ; 4130 : finsi ; 4131 : 4132 : Si(exist tic 'Mu'); 4133 : tic.'Mu'= kcht $vtf scal sommet (tic.'Mu') ; 4134 : sinon ; 4135 : tic.'Mu' = Mu ; 4136 : finsi ; 4137 : 4138 : TBT.'RV'=rv ; 4139 : TBT.'RRHO'=rrho ; 4140 : 4141 : 'SI' TBT.'VAPEUR' ; 4142 : TBT.'Rrvap'=Rrvap ; 4143 : 'FINSI' ; 4144 : 'SI' TBT.'THE' ; 4145 : TBT.'Rrhe'=Rrhe ; 4146 : 'FINSI' ; 4147 : 'SI' TBT.'TH2' ; 4148 : TBT.'Rrh2'=Rrh2 ; 4149 : 'FINSI' ; 4150 : 'SI' TBT.'TO2' ; 4151 : TBT.'Rro2'=Rro2 ; 4152 : 'FINSI' ; 4153 : 'SI' TBT.'TN2' ; 4154 : TBT.'Rrn2'=Rrn2 ; 4155 : 'FINSI' ; 4156 : 'SI' TBT.'TCO2' ; 4157 : TBT.'Rrco2'=Rrco2 ; 4158 : 'FINSI' ; 4159 : 'SI' TBT.'TAIR' ; 4160 : TBT.'Rrair'=Rrair ; 4161 : 'FINSI' ; 4162 : 'SI' TBT.'TCO' ; 4163 : TBT.'Rrco'=Rrco ; 4164 : 'FINSI' ; 4165 : 4166 : TBT.'RTF'=rtf ; 4167 : 'SI' TBT.'THERMP' ; 4168 : TBT.'RTP'=rtp ; 4169 : 'FINSI' ; 4170 : 4171 : Si (Exist TBT 'MODTURB') ; 4172 : Si ( Ega TBT.'MODTURB' 'KEPSILON') ; 4173 : TBT.'Rrk'= Rrk ; 4174 : TBT.'Rre'= Rre ; 4175 : Finsi ; 4176 : Finsi ; 4177 : *-------------------------------------------------------- 4178 : *-------------------------------------------------------- 4179 : * D/ APERSION 4180 : 'SI' TBT.'ASPER' ; 4181 : GEO.'$aspinj'= $aspinj ; 4182 : GEO.'$toitf' = $toitf ; 4183 : 'FINSI' ; 4184 : 4185 : * RECOMBINEUR 4186 : 'SI' TBT.'TRECOMB' ; 4187 : 'SI' ('NON' ('EXIS' TIC 'RECOMB')) ; 4188 : TIC . 'RECOMB' = 'TABLE' ; 4189 : NBREC = 'DIME' rxt . 'RECOMB' ; 4190 : 'REPETER' BCLREC NBREC ; 4191 : 4192 : TIC . 'RECOMB' . &BCLREC = 'TABLE' ; 4193 : 4194 : TIC . 'RECOMB' . &BCLREC . 'DEB' = 'PROG' 0.0 ; 4195 : TIC . 'RECOMB' . &BCLREC . 'Uin' = 'PROG' 0.0 ; 4196 : TIC . 'RECOMB' . &BCLREC . 'Uout' = 'PROG' 0.0 ; 4197 : TIC . 'RECOMB' . &BCLREC . 'Tin' = 'PROG' tf0 ; 4198 : TIC . 'RECOMB' . &BCLREC . 'Tout' = 'PROG' tf0 ; 4199 : TIC . 'RECOMB' . &BCLREC . 'Tpla' = 'PROG' (tf0 + 273.15) ; 4200 : TIC . 'RECOMB' . &BCLREC . 'EFF' = 'PROG' 0.0 ; 4201 : 4202 : TIC . 'RECOMB' . &BCLREC . 'YH2E' = 'PROG' 0.0 ; 4203 : TIC . 'RECOMB' . &BCLREC . 'YH2OE' = 'PROG' 0.0 ; 4204 : TIC . 'RECOMB' . &BCLREC . 'YO2E' = 'PROG' 0.0 ; 4205 : TIC . 'RECOMB' . &BCLREC . 'YN2E' = 'PROG' 0.0 ; 4206 : TIC . 'RECOMB' . &BCLREC . 'YHEE' = 'PROG' 0.0 ; 4207 : TIC . 'RECOMB' . &BCLREC . 'YCO2E' = 'PROG' 0.0 ; 4208 : TIC . 'RECOMB' . &BCLREC . 'YCOE' = 'PROG' 0.0 ; 4209 : 4210 : TIC . 'RECOMB' . &BCLREC . 'RH2E' = 'PROG' 0.0 ; 4211 : TIC . 'RECOMB' . &BCLREC . 'RH2OE' = 'PROG' 0.0 ; 4212 : TIC . 'RECOMB' . &BCLREC . 'RO2E' = 'PROG' 0.0 ; 4213 : TIC . 'RECOMB' . &BCLREC . 'RN2E' = 'PROG' 0.0 ; 4214 : TIC . 'RECOMB' . &BCLREC . 'RHEE' = 'PROG' 0.0 ; 4215 : TIC . 'RECOMB' . &BCLREC . 'RCO2E' = 'PROG' 0.0 ; 4216 : TIC . 'RECOMB' . &BCLREC . 'RCOE' = 'PROG' 0.0 ; 4217 : 4218 : TIC . 'RECOMB' . &BCLREC . 'YH2S' = 'PROG' 0.0 ; 4219 : TIC . 'RECOMB' . &BCLREC . 'YH2OS' = 'PROG' 0.0 ; 4220 : TIC . 'RECOMB' . &BCLREC . 'YO2S' = 'PROG' 0.0 ; 4221 : TIC . 'RECOMB' . &BCLREC . 'YN2S' = 'PROG' 0.0 ; 4222 : TIC . 'RECOMB' . &BCLREC . 'YHES' = 'PROG' 0.0 ; 4223 : TIC . 'RECOMB' . &BCLREC . 'YCO2S' = 'PROG' 0.0 ; 4224 : TIC . 'RECOMB' . &BCLREC . 'YCOS' = 'PROG' 0.0 ; 4225 : 4226 : TIC . 'RECOMB' . &BCLREC . 'RH2S' = 'PROG' 0.0 ; 4227 : TIC . 'RECOMB' . &BCLREC . 'RH2OS' = 'PROG' 0.0 ; 4228 : TIC . 'RECOMB' . &BCLREC . 'RO2S' = 'PROG' 0.0 ; 4229 : TIC . 'RECOMB' . &BCLREC . 'RN2S' = 'PROG' 0.0 ; 4230 : TIC . 'RECOMB' . &BCLREC . 'RHES' = 'PROG' 0.0 ; 4231 : TIC . 'RECOMB' . &BCLREC . 'RCO2S' = 'PROG' 0.0 ; 4232 : TIC . 'RECOMB' . &BCLREC . 'RCOS' = 'PROG' 0.0 ; 4233 : 4234 : TIC . 'RECOMB' . &BCLREC . 'Hin' = 'PROG' 0.0 ; 4235 : TIC . 'RECOMB' . &BCLREC . 'Hout'= 'PROG' 0.0 ; 4236 : 'FIN' BCLREC ; 4237 : 4238 : TIC . 'QIN_H2' = 'PROG' 0.0 ; 4239 : TIC . 'QIN_H2O' = 'PROG' 0.0 ; 4240 : TIC . 'QIN_O2' = 'PROG' 0.0 ; 4241 : TIC . 'QIN_N2' = 'PROG' 0.0 ; 4242 : TIC . 'QIN_HE' = 'PROG' 0.0 ; 4243 : TIC . 'QIN_CO2' = 'PROG' 0.0 ; 4244 : TIC . 'QIN_CO' = 'PROG' 0.0 ; 4245 : 4246 : TIC . 'QOUT_H2' = 'PROG' 0.0 ; 4247 : TIC . 'QOUT_H2O' = 'PROG' 0.0 ; 4248 : TIC . 'QOUT_O2' = 'PROG' 0.0 ; 4249 : TIC . 'QOUT_N2' = 'PROG' 0.0 ; 4250 : TIC . 'QOUT_HE' = 'PROG' 0.0 ; 4251 : TIC . 'QOUT_CO2' = 'PROG' 0.0 ; 4252 : TIC . 'QOUT_CO' = 'PROG' 0.0 ; 4253 : 4254 : 'FINSI' ; 4255 : 'FINSI' ; 4256 : 4257 : mess 'FIN PREPARATION - VERIFICATION - DEBUT ALGORITHME' ; 4258 : *** FIN PREPARATION - DEBUT ALGORITHME ****************** 4259 : FINPROC; 4260 : 4261 : 4262 : 4263 : 4264 : 4265 : 4266 : 4267 : 4268 : 4269 :
© Cast3M 2003 - All rights reserved.
Disclaimer