1 : C IDCONT SOURCE AM 12/02/06 21:15:37 7281 2 : 3 : C======================================================================= 4 : C= RECHERCHE DES NOMS DE COMPOSANTES DE CONTRAINTES = 5 : C= ------------------------------------------------ = 6 : C= = 7 : C= Entrees : = 8 : C= IPMODL pointeur ACTIF sur objet IMODEL = 9 : C= IFOU valeur de IFOUR de CCOPTIO = 10 : C= = 11 : C= Sorties : = 12 : C= IPNOMC pointeur de type NOMID sur les listes de noms de = 13 : C= composantes OBLigatoires et FACultatives = 14 : C= NBROBL nombre de composantes OBLigatoires = 15 : C= NBRFAC nombre de composantes FACultatives = 16 : C======================================================================= 17 : 18 : SUBROUTINE IDCONT (IPMODL,IFOU,IPNOMC,NBROBL,NBRFAC) 19 : 20 : IMPLICIT INTEGER(I-N) 21 : -INC CCOPTIO 22 : -INC SMMODEL 23 : logical dcmate 24 : 25 : 26 : NBROBL=0 27 : NBRFAC=0 28 : NOMID=0 29 : dcmate = .false. 30 : 31 : IMODEL=IPMODL 32 : MELE=NEFMOD 33 : MFR=NUMMFR(MELE) 34 : IF (FORMOD(1).eq.'MECANIQUE') THEN 35 : DO imat = 1 , matmod(/2) 36 : if (matmod(imat).eq.'IMPEDANCE') then 37 : MFR2 = infele(13) 38 : if (mfr2.eq.26.or.mfr2.eq.28) mfr = mfr2 38 : call iddepl(MFR,IFOU,IPNOMC,NBROBL,NBRFAC) 39 : dcmate = .true. 40 : nomid = ipnomc 41 : segact nomid*mod 42 : do io = 1,nbrobl 43 : lesobl(io)(2:4)=lesobl(io)(1:3) 44 : lesobl(io)(1:1)='S' 45 : enddo 46 : do io = 1,nbrfac 47 : lesfac(io)(2:4)=lesfac(io)(1:3) 48 : lesfac(io)(1:1)='S' 49 : enddo 50 : segdes nomid 51 : return 52 : endif 53 : ENDDO 54 : ENDIF 55 : IF (FORMOD(1).EQ.'ELECTROSTATIQUE') MFR = 71 56 : IF (FORMOD(1).EQ.'DIFFUSION') MFR = 73 57 : 58 : mfr2=0 58 : CALL PLACE(FORMOD,FORMOD(/2),ITHEHY,'THERMOHYDRIQUE') 58 : CALL PLACE(FORMOD,FORMOD(/2),ITTHE,'CONVECTION') 58 : CALL PLACE(FORMOD,FORMOD(/2),ITHER,'THERMIQUE') 59 : ITHER=ITHER+ITTHE 59 : CALL PLACE(FORMOD,FORMOD(/2),IMAGN,'MAGNETODYNAMIQUE') 60 : if(ithehy.eq.1) mfr2=65 61 : if(ITHER.eq.1 ) mfr2=29 62 : if(IMAGN.eq.1 ) mfr2=69 63 : IF(mfr2.ne.0) go to 100 64 : C Coque integree ou pas ? 65 : NPINT=0 66 : IF (INFMOD(/1).NE.0) NPINT=INFMOD(1) 67 : * 68 : * -1/ MACRO ELEMENT 69 : * 70 : IF (MFR.EQ.61)THEN 71 : C 72 : IF (IFOU.EQ.-1.OR.IFOU.EQ.-2) THEN 73 : * 74 : * 0-A/ CONTRAINTES PLANES - DEFORMATIONS PLANES 75 : * 76 : NBROBL=5 77 : SEGINI NOMID 78 : LESOBL(1)='SMN1' 79 : LESOBL(2)='MOM1' 80 : LESOBL(3)='SMSN' 81 : LESOBL(4)='SMN2' 82 : LESOBL(5)='MOM2' 83 : ENDIF 84 : 85 : C 1 - Element JOINT 86 : C =================== 87 : ELSE IF (MFR.EQ.35) THEN 88 : C ===== 89 : C 1.1 - Tridimensionnel 90 : C ===== 91 : IF (IFOU.EQ.2) THEN 92 : NBROBL=3 93 : SEGINI,NOMID 94 : LESOBL(1)='SMS1' 95 : LESOBL(2)='SMS2' 96 : LESOBL(3)='SMN ' 97 : C ===== 98 : C 1.2 - Bidimensionnel PLAN (CP/DP/DPGE) et Axisymetrie 99 : C ===== 100 : ELSE IF ((IFOU.EQ.-3).OR.(IFOU.EQ.-2).OR.(IFOU.EQ.-1).OR. 101 : . (IFOU.EQ.0)) THEN 102 : NBROBL=2 103 : SEGINI,NOMID 104 : LESOBL(1)='SMSN' 105 : LESOBL(2)='SMN ' 106 : ENDIF 107 : 108 : C 2 - Element JOINT CISAILLEMENT (2D) 109 : C Bidimensionnel PLAN (CP/DP/DPGE) 110 : C ====================================== 111 : ELSE IF (MFR.EQ.53) THEN 112 : IF ((IFOU.EQ.-3).OR.(IFOU.EQ.-2).OR.(IFOU.EQ.-1)) THEN 113 : NBROBL=2 114 : SEGINI,NOMID 115 : LESOBL(1)='SMS1' 116 : LESOBL(2)='SMS2' 117 : ENDIF 118 : 119 : C 3 - Element JOINT GENERALISE 120 : C ============================== 121 : ELSE IF (MFR.EQ.55) THEN 122 : C ===== 123 : C 3.1 - Bidimensionnel PLAN (CP/DP/DPGE) 124 : C ===== 125 : IF ((IFOU.EQ.-3).OR.(IFOU.EQ.-2).OR.(IFOU.EQ.-1)) THEN 126 : NBROBL=4 127 : SEGINI,NOMID 128 : LESOBL(1)='SMSN' 129 : LESOBL(2)='SMN ' 130 : LESOBL(3)='SETT' 131 : LESOBL(4)='SEZZ' 132 : C ===== 133 : C 3.2 - Tridimensionnel 134 : C ===== 135 : ELSE IF (IFOU.EQ.2) THEN 136 : NBROBL=6 137 : SEGINI,NOMID 138 : LESOBL(1)='SMS1' 139 : LESOBL(2)='SMS2' 140 : LESOBL(3)='SMN ' 141 : LESOBL(4)='SETT' 142 : LESOBL(5)='SEUU' 143 : LESOBL(6)='SETU' 144 : ENDIF 145 : 146 : C 4 - Elements MASSIFS et xfem 147 : C ====================== 148 : ELSE IF (MFR.EQ.1.OR.MFR.EQ.31.or.MFR.eq.63) THEN 149 : C ===== 150 : C 4.1 - Bidimensionnel PLAN (CP/DP/DPGE) 151 : C ===== 152 : IF (IFOU.EQ.-3.OR.IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN 153 : NBROBL=4 154 : SEGINI,NOMID 155 : LESOBL(1)='SMXX' 156 : LESOBL(2)='SMYY' 157 : LESOBL(3)='SMZZ' 158 : LESOBL(4)='SMXY' 159 : C ===== 160 : C 4.2 - Axisymetrie 161 : C ===== 162 : ELSE IF (IFOU.EQ.0) THEN 163 : NBROBL=4 164 : SEGINI,NOMID 165 : LESOBL(1)='SMRR' 166 : LESOBL(2)='SMZZ' 167 : LESOBL(3)='SMTT' 168 : LESOBL(4)='SMRZ' 169 : C ===== 170 : C 4.3 - Fourier 171 : C ===== 172 : ELSE IF (IFOU.EQ.1) THEN 173 : NBROBL=6 174 : SEGINI,NOMID 175 : LESOBL(1)='SMRR' 176 : LESOBL(2)='SMZZ' 177 : LESOBL(3)='SMTT' 178 : LESOBL(4)='SMRZ' 179 : LESOBL(5)='SMRT' 180 : LESOBL(6)='SMZT' 181 : C ===== 182 : C 4.4 - Tridimensionnel 183 : C ===== 184 : ELSE IF (IFOU.EQ.2) THEN 185 : NBROBL=6 186 : SEGINI,NOMID 187 : LESOBL(1)='SMXX' 188 : LESOBL(2)='SMYY' 189 : LESOBL(3)='SMZZ' 190 : LESOBL(4)='SMXY' 191 : LESOBL(5)='SMXZ' 192 : LESOBL(6)='SMYZ' 193 : C ===== 194 : C 4.5 - Unidimensionnel (1D) 195 : C ===== 196 : ELSE IF (IFOU.GE.3.AND.IFOU.LE.15.AND.MFR.EQ.1) THEN 197 : NBROBL=3 198 : SEGINI,NOMID 199 : IF (IFOU.LE.11) THEN 200 : LESOBL(1)='SMXX' 201 : LESOBL(2)='SMYY' 202 : LESOBL(3)='SMZZ' 203 : ELSE IF (IFOU.GE.12.AND.IFOU.LE.14) THEN 204 : LESOBL(1)='SMRR' 205 : LESOBL(2)='SMZZ' 206 : LESOBL(3)='SMTT' 207 : ELSE IF (IFOU.EQ.15) THEN 208 : LESOBL(1)='SMRR' 209 : C Voir TC pour LESOBL(2)='SMFF' ou 'SMPP' 210 : LESOBL(2)='SMZZ' 211 : LESOBL(3)='SMTT' 212 : ENDIF 213 : ENDIF 214 : 215 : C 5 - Elements COQUES 216 : C ===================== 217 : ELSE IF (MFR.EQ.3.OR.MFR.EQ.39) THEN 218 : IF (NPINT.EQ.0)THEN 219 : C ===== 220 : C 5.1 - Tridimensionnel et Fourier 221 : C ===== 222 : IF (IFOU.EQ.2.OR.IFOU.EQ.1) THEN 223 : NBROBL=6 224 : SEGINI,NOMID 225 : LESOBL(1)='N11 ' 226 : LESOBL(2)='N22 ' 227 : LESOBL(3)='N12 ' 228 : LESOBL(4)='M11 ' 229 : LESOBL(5)='M22 ' 230 : LESOBL(6)='M12 ' 231 : C ===== 232 : C 5.2 - Axisymetrie 233 : C ===== 234 : ELSE IF (IFOU.EQ.0) THEN 235 : NBROBL=4 236 : SEGINI,NOMID 237 : LESOBL(1)='N11 ' 238 : LESOBL(2)='N22 ' 239 : LESOBL(3)='M11 ' 240 : LESOBL(4)='M22 ' 241 : C ===== 242 : C 5.3 - Bidimensionnel PLAN (CP/DP/DPGE) 243 : C ===== 244 : ELSE IF (IFOU.EQ.-1.OR.IFOU.EQ.-2.OR.IFOU.EQ.-3) THEN 245 : NBROBL=4 246 : SEGINI,NOMID 247 : LESOBL(1)='N11 ' 248 : LESOBL(2)='NZZ ' 249 : LESOBL(3)='M11 ' 250 : LESOBL(4)='MZZ ' 251 : ENDIF 252 : ELSE 253 : C ===== 254 : C 5.4 - Tridimensionnel - Cas particulier 255 : C ===== 256 : IF (MFR.EQ.3.AND.IFOU.EQ.2) THEN 257 : NBROBL=4 258 : SEGINI,NOMID 259 : LESOBL(1)='SMSS' 260 : LESOBL(2)='SMTT' 261 : LESOBL(3)='SMNN' 262 : LESOBL(4)='SMST' 263 : ENDIF 264 : ENDIF 265 : 266 : C 6 - Elements de COQUE EPAISSE 267 : C Tridimensionnel, axisymetrie et Fourier 268 : C ============================================= 269 : ELSE IF (MFR.EQ.5) THEN 270 : NBROBL=5 271 : SEGINI,NOMID 272 : LESOBL(1)='SMSS' 273 : LESOBL(2)='SMTT' 274 : LESOBL(3)='SMST' 275 : LESOBL(4)='SMSN' 276 : LESOBL(5)='SMTN' 277 : 278 : C 7 - LIA2 et JOI1: Element 3D de liaison a 2 noeuds 279 : C ============================================= 280 : ELSE IF (MFR.EQ.51.OR.MFR.EQ.75) THEN 281 : IF (IFOU.EQ.2) THEN 282 : NBROBL=6 283 : SEGINI,NOMID 284 : LESOBL(1)='EFFX' 285 : LESOBL(2)='EFFY' 286 : LESOBL(3)='EFFZ' 287 : LESOBL(4)='MOMX' 288 : LESOBL(5)='MOMY' 289 : LESOBL(6)='MOMZ' 290 : ELSE IF (IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN 291 : NBROBL=3 292 : SEGINI,NOMID 293 : LESOBL(1)='EFFX' 294 : LESOBL(2)='EFFY' 295 : LESOBL(3)='MOMZ' 296 : ENDIF 297 : 298 : C 8 - BAEX : BARRE EXCENTREE 299 : C ============================ 300 : ELSE IF (MFR.EQ.49) THEN 301 : NBROBL=1 302 : SEGINI,NOMID 303 : LESOBL(1)='EFFX' 304 : 305 : C 9 - Elements POUTRE et TUYAU 306 : C ============================== 307 : ELSE IF (MFR.EQ.7.OR.MFR.EQ.13) THEN 308 : C ===== 309 : C 9.1 - Tridimensionnel 310 : C ===== 311 : IF (IFOU.EQ.2) THEN 312 : NBROBL=6 313 : SEGINI,NOMID 314 : LESOBL(1)='EFFX' 315 : LESOBL(2)='EFFY' 316 : LESOBL(3)='EFFZ' 317 : LESOBL(4)='MOMX' 318 : LESOBL(5)='MOMY' 319 : LESOBL(6)='MOMZ' 320 : C ===== 321 : C 9.2 - Bidimensionnel PLAN (CP/DP/DPGE) 322 : C ===== 323 : ELSE IF (IFOU.EQ.-3.OR.IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN 324 : NBROBL=3 325 : SEGINI,NOMID 326 : LESOBL(1)='EFFX' 327 : LESOBL(2)='EFFY' 328 : LESOBL(3)='MOMZ' 329 : ENDIF 330 : 331 : C 10 - Element de COQUE en CISAILLEMENT TRANSVERSE 332 : C ================================================== 333 : ELSE IF (MFR.EQ.9) THEN 334 : IF (NPINT.EQ.0) THEN 335 : C ====== 336 : C 10.1 - Tridimensionnel 337 : C ====== 338 : IF (IFOU.EQ.2) THEN 339 : NBROBL=8 340 : SEGINI,NOMID 341 : LESOBL(1)='N11 ' 342 : LESOBL(2)='N22 ' 343 : LESOBL(3)='N12 ' 344 : LESOBL(4)='M11 ' 345 : LESOBL(5)='M22 ' 346 : LESOBL(6)='M12 ' 347 : LESOBL(7)='V1 ' 348 : LESOBL(8)='V2 ' 349 : ENDIF 350 : ENDIF 351 : 352 : C 11 - Elements LINESPRING (tridimensionnel) 353 : C ============================================ 354 : ELSE IF (MFR.EQ.15) THEN 355 : IF (IFOU.EQ.2) THEN 356 : NBROBL=6 357 : SEGINI,NOMID 358 : LESOBL(1)='NZZ ' 359 : LESOBL(2)='NXZ ' 360 : LESOBL(3)='NYZ ' 361 : LESOBL(4)='MXX ' 362 : LESOBL(5)='MZZ ' 363 : LESOBL(6)='KI ' 364 : ENDIF 365 : 366 : C 12 - Elements de MEMBRANE 367 : C =========================== 368 : ELSE IF (MFR.EQ.25) THEN 369 : NBROBL=3 370 : SEGINI,NOMID 371 : LESOBL(1)='SMSS' 372 : LESOBL(2)='SMTT' 373 : LESOBL(3)='SMST' 374 : 375 : C 13 - Formulation UNIAXIALE 376 : C ============================= 377 : ELSE IF (MFR.EQ.27) THEN 378 : NBROBL=1 379 : MFR2 = infele(13) 380 : if (mfr2.eq.26) then 381 : NBRFAC = 1 382 : else if (mfr2.eq.28) then 383 : NBROBL=2 384 : endif 385 : SEGINI,NOMID 386 : LESOBL(1)='EFFX' 387 : if (mfr2.eq.26) then 388 : LESFAC(1) = 'FMOD' 389 : else if (mfr2.eq.28) then 390 : LESOBL(2) = 'FMOD' 391 : endif 392 : 393 : C 14 - Formulation THERMIQUE 394 : C ============================ 395 : ELSE IF (MFR.EQ.29) THEN 396 : C ====== 397 : C 14.1 - Tridimensionnel 398 : C ====== 399 : IF (IFOU.EQ.2) THEN 400 : NBROBL=3 401 : SEGINI,NOMID 402 : LESOBL(1)='FLUX' 403 : LESOBL(2)='FLUY' 404 : LESOBL(3)='FLUZ' 405 : C ====== 406 : C 14.2 - Bidimensionnel PLAN (CP/DP/DPGE) 407 : C ====== 408 : ELSE IF (IFOU.EQ.-1.OR.IFOU.EQ.-2.OR.IFOU.EQ.-3) THEN 409 : NBROBL=2 410 : SEGINI,NOMID 411 : LESOBL(1)='FLUX' 412 : LESOBL(2)='FLUY' 413 : C ====== 414 : C 14.3 - Axisymetrie et Fourier 415 : C ====== 416 : ELSE IF (IFOU.EQ.1.OR.IFOU.EQ.0) THEN 417 : NBROBL=2 418 : SEGINI,NOMID 419 : LESOBL(1)='FLUX' 420 : LESOBL(2)='FLUY' 421 : C ====== 422 : C 14.4 - Unidimensionnel (1D) 423 : C ====== 424 : ELSE IF (IFOU.GE.3.AND.IFOU.LE.15) THEN 425 : NBROBL=1 426 : SEGINI,NOMID 427 : C*OF IF (IFOU.LE.11) THEN 428 : LESOBL(1)='FLUX' 429 : C*OF ELSE 430 : C*OF LESOBL(1)='FLUR' 431 : C*OF ENDIF 432 : ENDIF 433 : 434 : C 15 - Formulation POREUX 435 : C ========================= 436 : ELSE IF (MFR.EQ.33) THEN 437 : C ===== 438 : C 15.A - Elements POREUX 439 : C ====== 440 : IF (MELE.GE.79.AND.MELE.LE.83) THEN 441 : C ======== 442 : C 15.A.1 - Bidimensionnel PLAN (CP/DP) 443 : C ======== 444 : IF (IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN 445 : NBROBL=5 446 : SEGINI,NOMID 447 : LESOBL(1)='SMXX' 448 : LESOBL(2)='SMYY' 449 : LESOBL(3)='SMZZ' 450 : LESOBL(4)='SMXY' 451 : LESOBL(5)='MSR0' 452 : C ======== 453 : C 15.A.2 - Axisymetrie 454 : C ======== 455 : ELSE IF (IFOU.EQ.0) THEN 456 : NBROBL=5 457 : SEGINI,NOMID 458 : LESOBL(1)='SMRR' 459 : LESOBL(2)='SMZZ' 460 : LESOBL(3)='SMTT' 461 : LESOBL(4)='SMRZ' 462 : LESOBL(5)='MSR0' 463 : C ======== 464 : C 15.A.3 - Fourier 465 : C ======== 466 : ELSE IF (IFOU.EQ.1) THEN 467 : NBROBL=7 468 : SEGINI,NOMID 469 : LESOBL(1)='SMRR' 470 : LESOBL(2)='SMZZ' 471 : LESOBL(3)='SMTT' 472 : LESOBL(4)='SMRZ' 473 : LESOBL(5)='SMRT' 474 : LESOBL(6)='SMZT' 475 : LESOBL(7)='MSR0' 476 : C ======== 477 : C 15.A.4 - Tridimensionnel et bidimensionnel DEFO PLAN GENE 478 : C ======== 479 : ELSE IF (IFOU.EQ.2.OR.IFOU.EQ.-3) THEN 480 : NBROBL=7 481 : SEGINI,NOMID 482 : LESOBL(1)='SMXX' 483 : LESOBL(2)='SMYY' 484 : LESOBL(3)='SMZZ' 485 : LESOBL(4)='SMXY' 486 : LESOBL(5)='SMXZ' 487 : LESOBL(6)='SMYZ' 488 : LESOBL(7)='MSR0' 489 : ENDIF 490 : C ====== 491 : C 15.B - Elements JOINT POREUX 492 : C ====== 493 : ELSE IF (MELE.GE.108.AND.MELE.LE.110) THEN 494 : C ======== 495 : C 15.B.1 - Tridimensionnel 496 : C ======== 497 : IF (IFOU.EQ.2) THEN 498 : NBROBL=4 499 : SEGINI,NOMID 500 : LESOBL(1)='SMS1' 501 : LESOBL(2)='SMS2' 502 : LESOBL(3)='SMN ' 503 : LESOBL(4)='MSR0' 504 : C ======== 505 : C 15.B.2 - Bidimensionnel PLAN (CP/DP) et Axisymetrie 506 : C ======== 507 : ELSE IF (IFOU.EQ.-2.OR.IFOU.EQ.-1.OR.IFOU.EQ.0) THEN 508 : NBROBL=3 509 : SEGINI,NOMID 510 : LESOBL(1)='SMSN' 511 : LESOBL(2)='SMN ' 512 : LESOBL(3)='MSR0' 513 : ENDIF 514 : ENDIF 515 : 516 : C 16 - Formulation POREUX type Q 517 : C ================================ 518 : ELSE IF (MFR.EQ.57) THEN 519 : C ===== 520 : C 16.A - Elements POREUX Q 521 : C ====== 522 : IF (MELE.GE.173.AND.MELE.LE.177) THEN 523 : C ======== 524 : C 16.A.1 - Bidimensionnel PLAN (CP/DP) 525 : C ======== 526 : IF (IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN 527 : NBROBL=6 528 : SEGINI,NOMID 529 : LESOBL(1)='SMXX' 530 : LESOBL(2)='SMYY' 531 : LESOBL(3)='SMZZ' 532 : LESOBL(4)='SMXY' 533 : LESOBL(5)='MSR0' 534 : LESOBL(6)='MSRQ' 535 : C ======== 536 : C 16.A.2 - Axisymetrie 537 : C ======== 538 : ELSE IF (IFOU.EQ.0) THEN 539 : NBROBL=6 540 : SEGINI,NOMID 541 : LESOBL(1)='SMRR' 542 : LESOBL(2)='SMZZ' 543 : LESOBL(3)='SMTT' 544 : LESOBL(4)='SMRZ' 545 : LESOBL(5)='MSR0' 546 : LESOBL(6)='MSRQ' 547 : C ======== 548 : C 16.A.3 - Fourier 549 : C ======== 550 : ELSE IF (IFOU.EQ.1) THEN 551 : NBROBL=8 552 : SEGINI,NOMID 553 : LESOBL(1)='SMRR' 554 : LESOBL(2)='SMZZ' 555 : LESOBL(3)='SMTT' 556 : LESOBL(4)='SMRZ' 557 : LESOBL(5)='SMRT' 558 : LESOBL(6)='SMZT' 559 : LESOBL(7)='MSR0' 560 : LESOBL(8)='MSRQ' 561 : C ======== 562 : C 16.A.4 - Tridimensionnel et bidimensionnel DEFO PLAN GENE 563 : C ======== 564 : ELSE IF (IFOU.EQ.2.OR.IFOU.EQ.-3) THEN 565 : NBROBL=8 566 : SEGINI,NOMID 567 : LESOBL(1)='SMXX' 568 : LESOBL(2)='SMYY' 569 : LESOBL(3)='SMZZ' 570 : LESOBL(4)='SMXY' 571 : LESOBL(5)='SMXZ' 572 : LESOBL(6)='SMYZ' 573 : LESOBL(7)='MSR0' 574 : LESOBL(8)='MSRQ' 575 : ENDIF 576 : C ====== 577 : C 16.B - Elements JOINT POREUX Q 578 : C ====== 579 : ELSE IF (MELE.GE.185.AND.MELE.LE.187) THEN 580 : C ======== 581 : C 16.B.1 - Tridimensionnel 582 : C ======== 583 : IF (IFOU.EQ.2) THEN 584 : NBROBL=5 585 : SEGINI,NOMID 586 : LESOBL(1)='SMS1' 587 : LESOBL(2)='SMS2' 588 : LESOBL(3)='SMN ' 589 : LESOBL(4)='MSR0' 590 : LESOBL(5)='MSRQ' 591 : C ======== 592 : C 16.B.2 - Bidimensionnel PLAN (CP/DP) et Axisymetrie 593 : C ======== 594 : ELSE IF (IFOU.EQ.-2.OR.IFOU.EQ.-1.OR.IFOU.EQ.0) THEN 595 : NBROBL=4 596 : SEGINI,NOMID 597 : LESOBL(1)='SMSN' 598 : LESOBL(2)='SMN ' 599 : LESOBL(3)='MSR0' 600 : LESOBL(4)='MSRQ' 601 : ENDIF 602 : ENDIF 603 : 604 : C 17 - Formulation POREUX type R 605 : C ================================ 606 : ELSE IF (MFR.EQ.59) THEN 607 : C ===== 608 : C 17.A - Elements POREUX R 609 : C ====== 610 : IF (MELE.GE.178.AND.MELE.LE.182) THEN 611 : C ======== 612 : C 17.A.1 - Bidimensionnel PLAN (CP/DP) 613 : C ======== 614 : IF (IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN 615 : NBROBL=7 616 : SEGINI,NOMID 617 : LESOBL(1)='SMXX' 618 : LESOBL(2)='SMYY' 619 : LESOBL(3)='SMZZ' 620 : LESOBL(4)='SMXY' 621 : LESOBL(5)='MSR0' 622 : LESOBL(6)='MSRQ' 623 : LESOBL(7)='TREN' 624 : ELSE IF (IFOU.EQ.0) THEN 625 : C ======== 626 : C 17.A.2 - Axisymetrie 627 : C ======== 628 : NBROBL=7 629 : SEGINI,NOMID 630 : LESOBL(1)='SMRR' 631 : LESOBL(2)='SMZZ' 632 : LESOBL(3)='SMTT' 633 : LESOBL(4)='SMRZ' 634 : LESOBL(5)='MSR0' 635 : LESOBL(6)='MSRQ' 636 : LESOBL(7)='TREN' 637 : C ======== 638 : C 17.A.3 - Fourier 639 : C ======== 640 : ELSE IF (IFOU.EQ.1) THEN 641 : NBROBL=9 642 : SEGINI,NOMID 643 : LESOBL(1)='SMRR' 644 : LESOBL(2)='SMZZ' 645 : LESOBL(3)='SMTT' 646 : LESOBL(4)='SMRZ' 647 : LESOBL(5)='SMRT' 648 : LESOBL(6)='SMZT' 649 : LESOBL(7)='MSR0' 650 : LESOBL(8)='MSRQ' 651 : LESOBL(9)='TREN' 652 : C ======== 653 : C 17.A.4 - Tridimensionnel et bidimensionnel DEFO PLAN GENE 654 : C ======== 655 : ELSE IF (IFOU.EQ.2.OR.IFOU.EQ.-3) THEN 656 : NBROBL=9 657 : SEGINI,NOMID 658 : LESOBL(1)='SMXX' 659 : LESOBL(2)='SMYY' 660 : LESOBL(3)='SMZZ' 661 : LESOBL(4)='SMXY' 662 : LESOBL(5)='SMXZ' 663 : LESOBL(6)='SMYZ' 664 : LESOBL(7)='MSR0' 665 : LESOBL(8)='MSRQ' 666 : LESOBL(9)='TREN' 667 : ENDIF 668 : C ====== 669 : C 17.B - Elements JOINT POREUX R 670 : C ====== 671 : ELSE IF (MELE.GE.188.AND.MELE.LE.190) THEN 672 : C ======== 673 : C 17.B.1 - Tridimensionnel 674 : C ======== 675 : IF (IFOU.EQ.2) THEN 676 : NBROBL=61 677 : SEGINI,NOMID 678 : LESOBL(1)='SMS1' 679 : LESOBL(2)='SMS2' 680 : LESOBL(3)='SMN ' 681 : LESOBL(4)='MSR0' 682 : LESOBL(5)='MSRQ' 683 : LESOBL(6)='TREN' 684 : C ======== 685 : C 17.B.2 - Bidimensionnel PLAN (CP/DP) et Axisymetrie 686 : C ======== 687 : ELSE IF (IFOU.EQ.-2.OR.IFOU.EQ.-1.OR.IFOU.EQ.0) THEN 688 : NBROBL=5 689 : SEGINI,NOMID 690 : LESOBL(1)='SMSN' 691 : LESOBL(2)='SMN ' 692 : LESOBL(3)='MSR0' 693 : LESOBL(4)='MSRQ' 694 : LESOBL(5)='TREN' 695 : ENDIF 696 : ENDIF 697 : 698 : C 18 - Elements TUYAU FISSURE (tridimensionnel) 699 : C =============================================== 700 : ELSE IF (MFR.EQ.17) THEN 701 : IF (IFOU.EQ.2) THEN 702 : NBROBL=8 703 : SEGINI,NOMID 704 : LESOBL(1)='EFFX' 705 : LESOBL(2)='EFFY' 706 : LESOBL(3)='EFFZ' 707 : LESOBL(4)='MOMX' 708 : LESOBL(5)='MOMY' 709 : LESOBL(6)='MOMZ' 710 : LESOBL(7)='KI ' 711 : LESOBL(8)='AIRE' 712 : ENDIF 713 : 714 : C 19 - Elements de SECTION/FIBRE 715 : C ================================ 716 : ELSE IF (MFR.EQ.47) THEN 717 : C ====== 718 : C 19.1 - Bidimensionnel PLAN (CP/DP/DPGE) 719 : C ====== 720 : IF (IFOU.EQ.-1.OR.IFOU.EQ.-2.OR.IFOU.EQ.-3) THEN 721 : NBROBL=2 722 : SEGINI,NOMID 723 : LESOBL(1)='SMXX' 724 : LESOBL(2)='SMXY' 725 : C ====== 726 : C 19.2 - Tridimensionnel 727 : C ====== 728 : ELSE IF (IFOU.EQ.2) THEN 729 : NBROBL=3 730 : SEGINI,NOMID 731 : LESOBL(1)='SMXX' 732 : LESOBL(2)='SMXY' 733 : LESOBL(3)='SMXZ' 734 : ENDIF 735 : 736 : C 737 : C 20 - Elements de zones cohesives 738 : C ================================== 739 : ELSE IF (MFR.EQ.77) THEN 740 : C ===== 741 : C 20.1 - Tridimensionnel 742 : C ===== 743 : IF (IFOU.EQ.2) THEN 744 : NBROBL=3 745 : SEGINI,NOMID 746 : LESOBL(1)='SMS1' 747 : LESOBL(2)='SMS2' 748 : LESOBL(3)='SMN ' 749 : C ===== 750 : C 20.2 - Bidimensionnel PLAN (CP/DP/DPGE) et Axisymetrie 751 : C ===== 752 : ELSE IF ((IFOU.EQ.-3).OR.(IFOU.EQ.-2).OR.(IFOU.EQ.-1).OR. 753 : . (IFOU.EQ.0)) THEN 754 : NBROBL=2 755 : SEGINI,NOMID 756 : LESOBL(1)='SMSN' 757 : LESOBL(2)='SMN ' 758 : ENDIF 759 : 760 : 761 : C 21 - Formulation ELECTROSTATIQUE (base MASSIF) 762 : C ================================== 763 : ELSE IF (MFR.EQ.71) THEN 764 : C ====== 765 : C 21.1 - Tridimensionnel 766 : C ====== 767 : IF (IFOU.EQ.2) THEN 768 : NBROBL=3 769 : SEGINI,NOMID 770 : LESOBL(1)='DELX ' 771 : LESOBL(2)='DELY ' 772 : LESOBL(3)='DELZ ' 773 : C ====== 774 : C 21.2 - Bidimensionnel PLAN (CP/DP/DPGE) 775 : C ====== 776 : ELSE IF (IFOU.EQ.-1.OR.IFOU.EQ.-2.OR.IFOU.EQ.-3) THEN 777 : NBROBL=2 778 : SEGINI,NOMID 779 : LESOBL(1)='DELX ' 780 : LESOBL(2)='DELY ' 781 : C ====== 782 : C 21.3 - Axisymetrie et Fourier 783 : C ====== 784 : ELSE IF (IFOU.EQ.1.OR.IFOU.EQ.0) THEN 785 : NBROBL=2 786 : SEGINI,NOMID 787 : LESOBL(1)='DELR ' 788 : LESOBL(2)='DELZ ' 789 : C ====== 790 : C 21.4 - Unidimensionnel (1D) 791 : C ====== 792 : ELSE IF (IFOU.GE.3.AND.IFOU.LE.15) THEN 793 : NBROBL=1 794 : SEGINI,NOMID 795 : IF (IFOU.LE.11) THEN 796 : LESOBL(1)='DELX ' 797 : ELSE 798 : LESOBL(1)='DELR ' 799 : ENDIF 800 : ENDIF 801 : 802 : C 22 - Formulation DIFFUSION (base MASSIF) 803 : C ============================ 804 : ELSE IF (MFR.EQ.73) THEN 805 : C ====== 806 : C 22.1 - Tridimensionnel 807 : C ====== 808 : IF (IFOU.EQ.2) THEN 809 : NBROBL=3 810 : SEGINI,NOMID 811 : LESOBL(1)='FX ' 812 : LESOBL(2)='FY ' 813 : LESOBL(3)='FZ ' 814 : C ====== 815 : C 22.2 - Bidimensionnel PLAN (CP/DP/DPGE) 816 : C ====== 817 : ELSE IF (IFOU.EQ.-1.OR.IFOU.EQ.-2.OR.IFOU.EQ.-3) THEN 818 : NBROBL=2 819 : SEGINI,NOMID 820 : LESOBL(1)='FX ' 821 : LESOBL(2)='FY ' 822 : C ====== 823 : C 22.3 - Axisymetrie et Fourier 824 : C ====== 825 : ELSE IF (IFOU.EQ.1.OR.IFOU.EQ.0) THEN 826 : NBROBL=2 827 : SEGINI,NOMID 828 : LESOBL(1)='FR ' 829 : LESOBL(2)='FZ ' 830 : C ====== 831 : C 22.4 - Unidimensionnel (1D) 832 : C ====== 833 : ELSE IF (IFOU.GE.3.AND.IFOU.LE.15) THEN 834 : NBROBL=1 835 : SEGINI,NOMID 836 : IF (IFOU.LE.11) THEN 837 : LESOBL(1)='FX ' 838 : ELSE 839 : LESOBL(1)='FR ' 840 : ENDIF 841 : ENDIF 842 : 843 : C* Ajout du nom de l'INCOnnue (DDL) contenu dans TYMODE(1) 844 : DO i=1,NBROBL 845 : C*8 LESOBL(i)(3:8)=TYMODE(1)(1:6) 846 : LESOBL(i)(3:4)=TYMODE(1)(1:2) 847 : ENDDO 848 : 849 : ENDIF 850 : 851 : C Par DEFAUT : segment VIDE 852 : C =========================== 853 : 100 CONTINUE 854 : IF (NOMID.EQ.0) THEN 855 : SEGINI,NOMID 856 : ELSE 857 : if (ifomod.eq.6.and.(.not.dcmate)) then 858 : nbrfa0 = nbrfac 859 : NBRFAC = NBROBL + nbrfa0 860 : if (mfr2.eq.28.or.mfr2.eq.26) NBRFAC = nbrfa0 + 1 861 : segadj nomid 862 : if (mfr2.eq.28.or.mfr2.eq.26) then 863 : lesfac(nbrfa0 +1) = 'IFFX' 864 : else 865 : do imo = 1,nbrobl 866 : lesfac(nbrfa0 + imo)(2:4) = lesobl(imo)(2:4) 867 : lesfac(nbrfa0 + imo)(1:1) = 'I' 868 : enddo 869 : endif 870 : endif 871 : ENDIF 872 : 873 : SEGDES,NOMID 874 : IPNOMC=NOMID 875 : 876 : RETURN 877 : END 878 : 879 : 880 : 881 : 882 : 883 : 884 :
© Cast3M 2003 - All rights reserved.
Disclaimer