1 : C DYNE77 SOURCE CHAT 11/03/16 21:19:46 6902 2 : SUBROUTINE DYNE77(ITSORT,ITCARA,ITABL,ITLIA,KTRAV,II,NLS,NVAR, 3 : &NPLB) 4 : IMPLICIT INTEGER(I-N) 5 : IMPLICIT REAL*8(A-H,O-Z) 6 : *--------------------------------------------------------------------* 7 : * * 8 : * Opérateur DYNE : algorithme de Fu - de Vogelaere * 9 : * ________________________________________________ * 10 : * * 11 : * Dimensionne les variables NLS et NVAR * 12 : * * 13 : * Paramètres: * 14 : * * 15 : * e ITABL Table définissant les liaisons en sortie. * 16 : * e ITLIA modèle définissant toutes les liaisons sur une base. * 17 : * e KTRAV Segment de travail * 18 : * es II Compteur * 19 : * s NLS Nombre de demandes de liaisons en sortie * 20 : * s NVAR Nombre maxi de variables internes de liaisons * 21 : * * 22 : * * 23 : * Auteur, date de création: * 24 : * d après * 25 : * Lionel VIVAN, le 2 octobre 1989. * 26 : * Ibrahim PINTO, 05/97 ,liaisons ligne_cercle * 27 : *--------------------------------------------------------------------* 28 : -INC CCOPTIO 29 : -INC SMMODEL 30 : -INC SMCHAML 31 : * 32 : SEGMENT,MTRAV 33 : INTEGER ICHRE2(NBLS),MPOLA(NBLS),MNULA(NBLS) 34 : INTEGER MPOLB(NBLS),MNULB(NBLS) 35 : INTEGER IVLIAA(NBLS,NTVAR),INLIAA(NBLS,NTVAR) 36 : INTEGER IVLIAB(NBLS,NTVAR),INLIAB(NBLS,NTVAR) 37 : ENDSEGMENT 38 : * 39 : LOGICAL L0,L1,LVAR,CHPO 40 : CHARACTER*8 MONMOT,TYPRET,MONSEUIL,CHARRE,CMATE 41 : CHARACTER*40 CMOT 42 : * 43 : MTRAV = KTRAV 44 : NLS = 0 45 : NVAR = 0 46 : mmodel = itlia 47 : segact mmodel 48 : 49 : * table indicée par des entiers 49 : CALL DIMEN7 (ITABL,IDIMEN) 50 : 51 : mmodel = itlia 52 : segact mmodel 53 : mchelm = itcara 54 : segact mchelm 55 : * 56 : * recherche des liaisons en sortie 57 : * 58 : INDICE = 0 59 : CHPO= .FALSE. 60 : 100 CONTINUE 61 : INDICE = INDICE + 1 62 : TYPRET = ' ' 62 : CALL ACCTAB(ITABL,'ENTIER',INDICE,X0,' ',L0,IP0, 63 : & TYPRET,I1,X1,CHARRE,L1,ITTL) 64 : * write(6,*) 'd77',typret,ittl 65 : IF (TYPRET.EQ.'MMODEL ' .AND. ITTL.NE.0) THEN 66 : TYPRET = ' ' 66 : CALL ACCTAB(ITSORT,'MMODEL ',I0,X0,' ',L0,ITTL, 67 : & TYPRET,I1,X1,CHARRE,LVAR,ITVAR) 68 : mmode1 = ittl 69 : segact mmode1 70 : * on attend une liaison elementaire 71 : imode1 = mmode1.kmodel(1) 72 : segact imode1 73 : do ik = 1,kmodel(/1) 74 : imodel = kmodel(ik) 75 : segact imodel 76 : * write(6,*) imodel,imode1,conmod,imode1.conmod,imamod,imode1.imamod 77 : if (imode1.conmod.eq.conmod.or.imode1.imamod.eq.imamod) goto 110 78 : segdes imodel 79 : enddo 80 : segdes imode1,mmode1 81 : goto 100 82 : 83 : 110 continue 84 : * 85 : * toutes les variables de la liaison sont en sortie 86 : * 87 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR) THEN 88 : NLS = NLS + 1 89 : MNULB(NLS) = INDICE 90 : MPOLB(NLS) = ITTL 91 : CMATE = CMATEE 92 : lcham = 0 93 : MONMOT = ' ' 94 : do im = 1,imache(/1) 95 : if(imache(im).eq.imamod.and.conche(im).eq.conmod) then 96 : mchaml = ichaml(im) 97 : lcham = mchaml 98 : segact mchaml 99 : do l=1,nomche(/2) 100 : if (nomche(l).eq.'AMOR') MONMOT='FLOTTANT' 101 : enddo 102 : segdes mchaml 103 : endif 104 : enddo 105 : * 106 : IF ( CMATE.EQ.'PO_PL_FR' .OR. 107 : & CMATE.EQ.'PO_CE_FR'.OR. 108 : & CMATE.EQ.'PO_CE_MO') THEN 109 : IF (MONMOT.EQ.'FLOTTANT') THEN 110 : IVAR = 5 + IDIM 111 : IVLIAB(NLS,3) = 1 112 : INLIAB(NLS,3) = 39 113 : ELSE 114 : IVAR = 4 + IDIM 115 : ENDIF 116 : NVAR = MAX(NVAR,IVAR) 117 : II = II + 1 118 : IDD2 = 3 + 2*IDIM 119 : ICHRE2(II) = IVAR 120 : IVLIAB(NLS,1) = 1 121 : INLIAB(NLS,1) = 36 122 : IVLIAB(NLS,IDD2+1) = 1 123 : INLIAB(NLS,IDD2+1) = 37 124 : IVLIAB(NLS,IDD2+2) = 1 125 : INLIAB(NLS,IDD2+2) = 81 126 : IVLIAB(NLS,IDD2+3) = 1 127 : INLIAB(NLS,IDD2+3) = 38 128 : IF (IFOUR.EQ.0 .OR. IFOUR.EQ.1) THEN 129 : IP = 18 130 : ELSE 131 : IP = 15 132 : ENDIF 133 : DO 210 ID = 1,IDIM 134 : ID2 = 3 + ID 135 : IVLIAB(NLS,ID2) = 1 136 : INLIAB(NLS,ID2) = IP + ID 137 : 210 CONTINUE 138 : * END DO 139 : * 140 : ELSE IF (CMATE.EQ.'LI_LI_FR') THEN 141 : ivar = 2 142 : NVAR = MAX(NVAR,IVAR) 143 : II = II + 1 144 : IDD2 = 3 + 2*IDIM 145 : ICHRE2(II) = IVAR 146 : IVLIAB(NLS,1) = 1 147 : INLIAB(NLS,1) = 36 148 : IVLIAB(NLS,10) = 1 149 : INLIAB(NLS,10) = 37 150 : 151 : ELSE IF (CMATE.EQ.'LI_CE_FR') THEN 152 : IF (MONMOT.EQ.'FLOTTANT') THEN 153 : IVAR = 5 + IDIM 154 : IVLIAB(NLS,3) = 1 155 : INLIAB(NLS,3) = 39 156 : ELSE 157 : IVAR = 4 + IDIM 158 : ENDIF 159 : NVAR = MAX(NVAR,IVAR) 160 : II = II + 1 161 : IDD2 = 3 + 2*IDIM 162 : ICHRE2(II) = IVAR 163 : IVLIAB(NLS,1) = 1 164 : INLIAB(NLS,1) = 36 165 : IVLIAB(NLS,IDD2+1) = 1 166 : INLIAB(NLS,IDD2+1) = 37 167 : IVLIAB(NLS,IDD2+2) = 1 168 : INLIAB(NLS,IDD2+2) = 81 169 : IVLIAB(NLS,IDD2+3) = 1 170 : INLIAB(NLS,IDD2+3) = 38 171 : IF (IFOUR.EQ.0 .OR. IFOUR.EQ.1) THEN 172 : IP = 106 173 : ELSE 174 : IP = 103 175 : ENDIF 176 : DO 213 ID = 1,IDIM 177 : ID2 = 3 + ID 178 : IVLIAB(NLS,ID2) = 1 179 : INLIAB(NLS,ID2) = IP + ID 180 : 213 CONTINUE 181 : 182 : 183 : ELSE IF (CMATE.EQ.'PO_PL_FL') THEN 184 : IVAR = 6 + IDIM 185 : NVAR = MAX(NVAR,IVAR) 186 : II = II + 1 187 : ICHRE2(II) = IVAR 188 : IF (IFOUR.EQ.0 .OR. IFOUR.EQ.1) THEN 189 : IP = 18 190 : ELSE 191 : IP = 15 192 : ENDIF 193 : DO 220 ID = 1,IDIM 194 : IVLIAB(NLS,ID) = 1 195 : INLIAB(NLS,ID) = IP + ID 196 : 220 CONTINUE 197 : * END DO 198 : ID1 = IDIM + 1 199 : IVLIAB(NLS,ID1) = 1 200 : INLIAB(NLS,ID1) = 39 201 : ID2 = ID1 + 1 202 : IVLIAB(NLS,ID2) = 1 203 : INLIAB(NLS,ID2) = 76 204 : ID3 = ID2 + 1 205 : IVLIAB(NLS,ID3) = 1 206 : INLIAB(NLS,ID3) = 75 207 : ID4 = ID3 + 1 208 : IVLIAB(NLS,ID4) = 1 209 : INLIAB(NLS,ID4) = 70 210 : ID5 = ID4 + 1 211 : IVLIAB(NLS,ID5) = 1 212 : INLIAB(NLS,ID5) = 71 213 : ID6 = ID5 + 1 214 : IVLIAB(NLS,ID6) = 1 215 : INLIAB(NLS,ID6) = 72 216 : 217 : 218 : 219 : * 220 : ELSE IF (CMATE.EQ.'CE_PL_FR' .OR. 221 : & CMATE.EQ.'CE_CE_FR') THEN 222 : IF (MONMOT.EQ.'FLOTTANT') THEN 223 : IVAR = 4 + 4*IDIM 224 : IVLIAB(NLS,3) = 1 225 : INLIAB(NLS,3) = 39 226 : ELSE 227 : IVAR = 3 + 4*IDIM 228 : ENDIF 229 : NVAR = MAX(NVAR,IVAR) 230 : II = II + 1 231 : IDD1 = 3 + IDIM 232 : IDD2 = 3 + 2*IDIM 233 : IDD3 = 6 + 2*IDIM 234 : IDD4 = 6 + 3*IDIM 235 : ICHRE2(II) = IVAR 236 : IVLIAB(NLS,1) = 1 237 : INLIAB(NLS,1) = 36 238 : IVLIAB(NLS,IDD2+1) = 1 239 : INLIAB(NLS,IDD2+1) = 37 240 : IVLIAB(NLS,IDD2+3) = 1 241 : INLIAB(NLS,IDD2+3) = 38 242 : IF (IFOUR.EQ.0 .OR. IFOUR.EQ.1) THEN 243 : IP2 = 53 244 : IP3 = 59 245 : IP4 = 47 246 : IP5 = 65 247 : ELSE 248 : IP2 = 50 249 : IP3 = 56 250 : IP4 = 44 251 : IP5 = 62 252 : ENDIF 253 : DO 310 ID = 1,IDIM 254 : ID2 = 3 + ID 255 : ID3 = IDD1 + ID 256 : ID4 = IDD3 + ID 257 : ID5 = IDD4 + ID 258 : IVLIAB(NLS,ID2) = 1 259 : INLIAB(NLS,ID2) = IP2 + ID 260 : IVLIAB(NLS,ID3) = 1 261 : INLIAB(NLS,ID3) = IP3 + ID 262 : IVLIAB(NLS,ID4) = 1 263 : INLIAB(NLS,ID4) = IP4 + ID 264 : IVLIAB(NLS,ID5) = 1 265 : INLIAB(NLS,ID5) = IP5 + ID 266 : 310 CONTINUE 267 : * END DO 268 : * 269 : ELSE IF (CMATE.EQ.'PO_PL'.OR. 270 : & CMATE.EQ.'PO_CE') THEN 271 : IF (MONMOT.EQ.'FLOTTANT') THEN 272 : IVAR = 2 + IDIM 273 : IVLIAB(NLS,3) = 1 274 : INLIAB(NLS,3) = 39 275 : ELSE 276 : IVAR = 1 + IDIM 277 : ENDIF 278 : ** ianis 279 : MONSEUIL = ' ' 280 : mchaml = lcham 281 : segact mchaml 282 : do l=1,nomche(/2) 283 : if (nomche(l).eq.'SPLA') MONSEUIL='FLOTTANT' 284 : enddo 285 : segdes mchaml 286 : IF (MONSEUIL.EQ.'FLOTTANT'.OR.MONSEUIL.EQ.'ENTIER ')THEN 287 : IVAR = IVAR + 1 288 : IVLIAB(NLS,13) = 1 289 : INLIAB(NLS,13) = 82 290 : ENDIF 291 : * 292 : NVAR = MAX(NVAR,IVAR) 293 : II = II + 1 294 : ICHRE2(II) = IVAR 295 : IVLIAB(NLS,1) = 1 296 : INLIAB(NLS,1) = 15 297 : IF (IFOUR.EQ.0 .OR. IFOUR.EQ.1) THEN 298 : IP = 18 299 : ELSE 300 : IP = 15 301 : ENDIF 302 : DO 102 ID = 1,IDIM 303 : ID2 = 3 + ID 304 : IVLIAB(NLS,ID2) = 1 305 : INLIAB(NLS,ID2) = IP + ID 306 : 102 CONTINUE 307 : * END DO 308 : * 309 : ELSE IF (CMATE.EQ.'PO_PO_FR') THEN 310 : IF (MONMOT.EQ.'FLOTTANT') THEN 311 : IVAR = 5 + 2 *IDIM 312 : IVLIAB(NLS,3) = 1 313 : INLIAB(NLS,3) = 39 314 : ELSE 315 : IVAR = 4 + 2 *IDIM 316 : ENDIF 317 : NVAR = MAX(NVAR,IVAR) 318 : II = II + 1 319 : ICHRE2(II) = IVAR 320 : IVLIAB(NLS,1) = 1 321 : IVLIAB(NLS,2) = 1 322 : INLIAB(NLS,1) = 22 323 : INLIAB(NLS,2) = 23 324 : IF (IFOUR.EQ.0 .OR. IFOUR.EQ.1) THEN 325 : IP1 = 26 326 : IP2 = 32 327 : ELSE 328 : IP1 = 23 329 : IP2 = 29 330 : ENDIF 331 : DO 103 ID = 1,IDIM 332 : ID2 = 3 + ID 333 : ID3 = ID2 + IDIM 334 : IVLIAB(NLS,ID2) = 1 335 : IVLIAB(NLS,ID3) = 1 336 : INLIAB(NLS,ID2) = IP1 + ID 337 : INLIAB(NLS,ID3) = IP2 + ID 338 : 103 CONTINUE 339 : IVLIAB(NLS,4 + 2 * idim) = 1 340 : InLIAB(NLS,4 + 2 * idim) = 37 341 : IVLIAB(NLS,6 + 2 * idim) = 1 342 : InLIAB(NLS,6 + 2 * idim) = 38 343 : * END DO 344 : * 345 : ELSE IF 346 : & (CMATE.EQ.'PO_PO_DP') THEN 347 : IF (MONMOT.EQ.'FLOTTANT') THEN 348 : IVAR = 5 + 2 *IDIM 349 : IVLIAB(NLS,3) = 1 350 : INLIAB(NLS,3) = 39 351 : ELSE 352 : IVAR = 4 + 2 *IDIM 353 : ENDIF 354 : IVAR = IVAR + 1 355 : IVLIAB(NLS,13) = 1 356 : INLIAB(NLS,13) = 82 357 : IVLIAB(NLS,14) = 1 358 : INLIAB(NLS,14) = 100 359 : IVLIAB(NLS,15) = 1 360 : INLIAB(NLS,15) = 111 361 : * 362 : NVAR = MAX(NVAR,IVAR) 363 : II = II + 1 364 : ICHRE2(II) = IVAR 365 : IVLIAB(NLS,1) = 1 366 : IVLIAB(NLS,2) = 1 367 : INLIAB(NLS,1) = 22 368 : INLIAB(NLS,2) = 23 369 : IF (IFOUR.EQ.0 .OR. IFOUR.EQ.1) THEN 370 : IP1 = 26 371 : IP2 = 32 372 : ELSE 373 : IP1 = 23 374 : IP2 = 29 375 : ENDIF 376 : DO 105 ID = 1,IDIM 377 : ID2 = 3 + ID 378 : ID3 = ID2 + IDIM 379 : IVLIAB(NLS,ID2) = 1 380 : IVLIAB(NLS,ID3) = 1 381 : INLIAB(NLS,ID2) = IP1 + ID 382 : INLIAB(NLS,ID3) = IP2 + ID 383 : 105 CONTINUE 384 : * 385 : * 386 : ELSE IF 387 : & (CMATE.EQ.'PO_PO_RP') THEN 388 : IF (MONMOT.EQ.'FLOTTANT') THEN 389 : IVAR = 5 + 2 *IDIM 390 : IVLIAB(NLS,3) = 1 391 : INLIAB(NLS,3) = 101 392 : ELSE 393 : IVAR = 4 + 2 *IDIM 394 : ENDIF 395 : IVAR = IVAR + 1 396 : IVLIAB(NLS,13) = 1 397 : INLIAB(NLS,13) = 102 398 : IVLIAB(NLS,14) = 1 399 : INLIAB(NLS,14) = 99 400 : IVLIAB(NLS,15) = 1 401 : INLIAB(NLS,15) = 112 402 : * 403 : NVAR = MAX(NVAR,IVAR) 404 : II = II + 1 405 : ICHRE2(II) = IVAR 406 : IVLIAB(NLS,1) = 1 407 : IVLIAB(NLS,2) = 1 408 : INLIAB(NLS,1) = 85 409 : INLIAB(NLS,2) = 86 410 : IF (IFOUR.EQ.0 .OR. IFOUR.EQ.1) THEN 411 : IP1 = 89 412 : IP2 = 95 413 : ELSE 414 : IP1 = 86 415 : IP2 = 92 416 : ENDIF 417 : DO 400 ID = 1,IDIM 418 : ID2 = 3 + ID 419 : ID3 = ID2 + IDIM 420 : IVLIAB(NLS,ID2) = 1 421 : IVLIAB(NLS,ID3) = 1 422 : INLIAB(NLS,ID2) = IP1 + ID 423 : INLIAB(NLS,ID3) = IP2 + ID 424 : 400 CONTINUE 425 : * 426 : * 427 : ELSE IF (CMATE.EQ.'PO_PO') THEN 428 : IF (MONMOT.EQ.'FLOTTANT') THEN 429 : IVAR = 3 + 2 *IDIM 430 : IVLIAB(NLS,3) = 1 431 : INLIAB(NLS,3) = 39 432 : ELSE 433 : IVAR = 2 + 2 *IDIM 434 : ENDIF 435 : NVAR = MAX(NVAR,IVAR) 436 : II = II + 1 437 : ICHRE2(II) = IVAR 438 : IVLIAB(NLS,1) = 1 439 : IVLIAB(NLS,2) = 1 440 : INLIAB(NLS,1) = 22 441 : INLIAB(NLS,2) = 23 442 : IF (IFOUR.EQ.0 .OR. IFOUR.EQ.1) THEN 443 : IP1 = 26 444 : IP2 = 32 445 : ELSE 446 : IP1 = 23 447 : IP2 = 29 448 : ENDIF 449 : DO 104 ID = 1,IDIM 450 : ID2 = 3 + ID 451 : ID3 = ID2 + IDIM 452 : IVLIAB(NLS,ID2) = 1 453 : IVLIAB(NLS,ID3) = 1 454 : INLIAB(NLS,ID2) = IP1 + ID 455 : INLIAB(NLS,ID3) = IP2 + ID 456 : 104 CONTINUE 457 : * END DO 458 : ELSE IF (CMATE.EQ.'PR_PR_IN' .OR. 459 : & CMATE.EQ.'PR_PR_EX') THEN 460 : IVAR = 1 + IDIM 461 : NVAR = MAX(NVAR,IVAR) 462 : II = II + 1 463 : ICHRE2(II) = IVAR 464 : IVLIAB(NLS,1) = 1 465 : INLIAB(NLS,1) = 15 466 : IF (IFOUR.EQ.0 .OR. IFOUR.EQ.1) THEN 467 : IP = 18 468 : ELSE 469 : IP = 15 470 : ENDIF 471 : DO 106 ID = 1,IDIM 472 : ID2 = 3 + ID 473 : IVLIAB(NLS,ID2) = 1 474 : INLIAB(NLS,ID2) = IP + ID 475 : 106 CONTINUE 476 : * END DO 477 : * 478 : * Ajout liaison PALIER_FLUIDE 479 : ELSE IF (CMATE.EQ.'PA_FL_RO') THEN 480 : IVAR = 7 481 : NVAR = MAX(NVAR,IVAR) 482 : II = II + 1 483 : ICHRE2(II) = IVAR 484 : IP = 112 485 : DO 410 ID = 1,7 486 : IVLIAB(NLS,ID) = 1 487 : INLIAB(NLS,ID) = IP + ID 488 : 410 CONTINUE 489 : C ELSE IF 490 : * Fin ajout liaison PALIER_FLUIDE 491 : ELSE 491 : CALL ERREUR(490) 492 : RETURN 493 : ENDIF 494 : * 495 : * choix sur certaines variables de la liaison en sortie 496 : * 497 : ELSE IF (TYPRET.EQ.'TABLE ' .AND. ITVAR.NE.0) THEN 498 : * kich : on met toutes les variables 499 : CMATE = CMATEE 500 : NLS = NLS + 1 501 : MNULB(NLS) = INDICE 502 : MPOLB(NLS) = ITTL 502 : * CALL ACCTAB(ITTL,'MOT',I0,X0,'TYPE_LIAISON',L0,IP0, 503 : * & 'MOT',I1,X1,CMOT,L1,IT1) 504 : IVAR = 0 505 : * 506 : IF (CMATE.EQ.'PO_PL_FR' .OR. 507 : & CMATE.EQ.'PO_CE_FR'.OR. 508 : & CMATE.EQ.'PO_CE_MO') THEN 509 : TYPRET = ' ' 509 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_NORMALE', 510 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 511 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 512 : IVAR = IVAR + 1 513 : IVLIAB(NLS,1) = 1 514 : INLIAB(NLS,1) = 36 515 : ENDIF 516 : TYPRET = ' ' 516 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_TANGENTIELLE', 517 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 518 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 519 : IVAR = IVAR + 1 520 : IVLIAB(NLS,10) = 1 521 : INLIAB(NLS,10) = 37 522 : ENDIF 523 : TYPRET = ' ' 523 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'PUISSANCE_USURE_INSTANTANEE', 524 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 525 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 526 : IVAR = IVAR + 1 527 : IVLIAB(NLS,12) = 1 528 : INLIAB(NLS,12) = 38 529 : ENDIF 530 : TYPRET = ' ' 530 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VITESSE_NORMALE', 531 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 532 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 533 : IVAR = IVAR + 1 534 : IVLIAB(NLS,3) = 1 535 : INLIAB(NLS,3) = 39 536 : ENDIF 537 : TYPRET = ' ' 537 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VITESSE_TANGENTIELLE', 538 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 539 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 540 : IVAR = IVAR + 1 541 : IVLIAB(NLS,11) = 1 542 : INLIAB(NLS,11) = 81 543 : ENDIF 544 : TYPRET = ' ' 544 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UX', 545 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 546 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 547 : IVAR = IVAR + 1 548 : IVLIAB(NLS,4) = 1 549 : INLIAB(NLS,4) = 16 550 : ENDIF 551 : TYPRET = ' ' 551 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UY', 552 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 553 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 554 : IVAR = IVAR + 1 555 : IVLIAB(NLS,5) = 1 556 : INLIAB(NLS,5) = 17 557 : ENDIF 558 : TYPRET = ' ' 558 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UZ', 559 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 560 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 561 : IVAR = IVAR + 1 562 : IVLIAB(NLS,6) = 1 563 : INLIAB(NLS,6) = 18 564 : ENDIF 565 : TYPRET = ' ' 565 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UR', 566 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 567 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 568 : IVAR = IVAR + 1 569 : IVLIAB(NLS,4) = 1 570 : INLIAB(NLS,4) = 19 571 : ENDIF 572 : TYPRET = ' ' 572 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UT', 573 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 574 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 575 : IVAR = IVAR + 1 576 : IVLIAB(NLS,5) = 1 577 : INLIAB(NLS,5) = 20 578 : ENDIF 579 : IF (IVAR.EQ.0) THEN 579 : CALL ERREUR(496) 580 : RETURN 581 : ENDIF 582 : * 583 : ELSE IF (CMATE.EQ.'LI_LI_FR') THEN 584 : TYPRET = ' ' 584 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_NORMALE', 585 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 586 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 587 : IVAR = IVAR + 1 588 : IVLIAB(NLS,1) = 1 589 : INLIAB(NLS,1) = 36 590 : ENDIF 591 : TYPRET = ' ' 591 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_TANGENTIELLE', 592 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 593 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 594 : IVAR = IVAR + 1 595 : IVLIAB(NLS,10) = 1 596 : INLIAB(NLS,10) = 37 597 : ENDIF 598 : TYPRET = ' ' 598 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'PUISSANCE_USURE_INSTANTANEE', 599 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 600 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 601 : IVAR = IVAR + 1 602 : IVLIAB(NLS,12) = 1 603 : INLIAB(NLS,12) = 38 604 : ENDIF 605 : TYPRET = ' ' 605 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VITESSE_NORMALE', 606 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 607 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 608 : IVAR = IVAR + 1 609 : IVLIAB(NLS,3) = 1 610 : INLIAB(NLS,3) = 39 611 : ENDIF 612 : TYPRET = ' ' 612 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VITESSE_TANGENTIELLE', 613 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 614 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 615 : IVAR = IVAR + 1 616 : IVLIAB(NLS,11) = 1 617 : INLIAB(NLS,11) = 81 618 : ENDIF 619 : TYPRET = ' ' 619 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UX_POINT_DE_CONTACT', 620 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 621 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 622 : IVAR = IVAR + 1 623 : IVLIAB(NLS,4) = 1 624 : INLIAB(NLS,4) = 104 625 : ENDIF 626 : TYPRET = ' ' 626 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UY_POINT_DE_CONTACT', 627 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 628 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 629 : IVAR = IVAR + 1 630 : IVLIAB(NLS,5) = 1 631 : INLIAB(NLS,5) = 105 632 : ENDIF 633 : TYPRET = ' ' 633 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UZ_POINT_DE_CONTACT', 634 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 635 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 636 : IVAR = IVAR + 1 637 : IVLIAB(NLS,6) = 1 638 : INLIAB(NLS,6) = 106 639 : ENDIF 640 : TYPRET = ' ' 640 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UR_POINT_DE_CONTACT', 641 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 642 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 643 : IVAR = IVAR + 1 644 : IVLIAB(NLS,4) = 1 645 : INLIAB(NLS,4) = 107 646 : ENDIF 647 : TYPRET = ' ' 647 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UT_POINT_DE_CONTACT', 648 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 649 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 650 : IVAR = IVAR + 1 651 : IVLIAB(NLS,5) = 1 652 : INLIAB(NLS,5) = 108 653 : ENDIF 654 : TYPRET = ' ' 654 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'CHPOINT_FORCE_DE_CHOC', 655 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 656 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 657 : IVLIAB(NLS,7) = 2 658 : INLIAB(NLS,7) = 110 659 : CHPO= .TRUE. 660 : II = II + 1 661 : ICHRE2(II) = IVAR +1 662 : IVAR = IVAR + NPLB*2 663 : ENDIF 664 : IF (IVAR.EQ.0) THEN 664 : CALL ERREUR(496) 665 : RETURN 666 : ENDIF 667 : * 668 : 669 : * liaisons ligne_cercle 670 : 671 : ELSE IF 672 : & (CMATE.EQ.'LI_CE_FR') THEN 673 : TYPRET = ' ' 673 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_NORMALE', 674 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 675 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 676 : IVAR = IVAR + 1 677 : IVLIAB(NLS,1) = 1 678 : INLIAB(NLS,1) = 36 679 : ENDIF 680 : TYPRET = ' ' 680 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_TANGENTIELLE', 681 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 682 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 683 : IVAR = IVAR + 1 684 : IVLIAB(NLS,10) = 1 685 : INLIAB(NLS,10) = 37 686 : ENDIF 687 : TYPRET = ' ' 687 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'PUISSANCE_USURE_INSTANTANEE', 688 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 689 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 690 : IVAR = IVAR + 1 691 : IVLIAB(NLS,12) = 1 692 : INLIAB(NLS,12) = 38 693 : ENDIF 694 : TYPRET = ' ' 694 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VITESSE_NORMALE', 695 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 696 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 697 : IVAR = IVAR + 1 698 : IVLIAB(NLS,3) = 1 699 : INLIAB(NLS,3) = 39 700 : ENDIF 701 : TYPRET = ' ' 701 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VITESSE_TANGENTIELLE', 702 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 703 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 704 : IVAR = IVAR + 1 705 : IVLIAB(NLS,11) = 1 706 : INLIAB(NLS,11) = 81 707 : ENDIF 708 : TYPRET = ' ' 708 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UX_POINT_DE_CONTACT', 709 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 710 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 711 : IVAR = IVAR + 1 712 : IVLIAB(NLS,4) = 1 713 : INLIAB(NLS,4) = 104 714 : ENDIF 715 : TYPRET = ' ' 715 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UY_POINT_DE_CONTACT', 716 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 717 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 718 : IVAR = IVAR + 1 719 : IVLIAB(NLS,5) = 1 720 : INLIAB(NLS,5) = 105 721 : ENDIF 722 : TYPRET = ' ' 722 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UZ_POINT_DE_CONTACT', 723 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 724 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 725 : IVAR = IVAR + 1 726 : IVLIAB(NLS,6) = 1 727 : INLIAB(NLS,6) = 106 728 : ENDIF 729 : TYPRET = ' ' 729 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UR_POINT_DE_CONTACT', 730 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 731 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 732 : IVAR = IVAR + 1 733 : IVLIAB(NLS,4) = 1 734 : INLIAB(NLS,4) = 107 735 : ENDIF 736 : TYPRET = ' ' 736 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UT_POINT_DE_CONTACT', 737 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 738 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 739 : IVAR = IVAR + 1 740 : IVLIAB(NLS,5) = 1 741 : INLIAB(NLS,5) = 108 742 : ENDIF 743 : TYPRET = ' ' 743 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'CHPOINT_FORCE_DE_CHOC', 744 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 745 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 746 : IVLIAB(NLS,7) = 2 747 : INLIAB(NLS,7) = 110 748 : CHPO= .TRUE. 749 : II = II + 1 750 : ICHRE2(II) = IVAR +1 751 : IVAR = IVAR + NPLB*2 752 : ENDIF 753 : IF (IVAR.EQ.0) THEN 753 : CALL ERREUR(496) 754 : RETURN 755 : ENDIF 756 : 757 : 758 : 759 : 760 : * fin liaisons segment_cercle 761 : 762 : 763 : ELSE IF (CMATE.EQ.'PO_PL_FL') THEN 764 : TYPRET = ' ' 764 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_INERTIE',L0,IP0, 765 : & TYPRET,I1,X1,CHARRE,LVAR,IP1) 766 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 767 : IVAR = IVAR + 1 768 : ID1 = IDIM + 3 769 : IVLIAB(NLS,ID1) = 1 770 : INLIAB(NLS,ID1) = 75 771 : ENDIF 772 : TYPRET = ' ' 772 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_CONVECTION',L0,IP0, 773 : & TYPRET,I1,X1,CHARRE,LVAR,IP1) 774 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 775 : IVAR = IVAR + 1 776 : ID1 = IDIM + 4 777 : IVLIAB(NLS,ID1) = 1 778 : INLIAB(NLS,ID1) = 70 779 : ENDIF 779 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_VISCOSITE',L0,IP0, 780 : & TYPRET,I1,X1,CHARRE,LVAR,IP1) 781 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 782 : IVAR = IVAR + 1 783 : ID1 = IDIM + 5 784 : IVLIAB(NLS,ID1) = 1 785 : INLIAB(NLS,ID1) = 71 786 : ENDIF 787 : TYPRET = ' ' 787 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_PERTE_DE_CHARGE', 788 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 789 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 790 : IVAR = IVAR + 1 791 : ID1 = IDIM + 6 792 : IVLIAB(NLS,ID1) = 1 793 : INLIAB(NLS,ID1) = 72 794 : ENDIF 795 : TYPRET = ' ' 795 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'ACCELERATION_NORMALE', 796 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 797 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 798 : IVAR = IVAR + 1 799 : ID1 = IDIM + 2 800 : IVLIAB(NLS,3) = 1 801 : INLIAB(NLS,3) = 76 802 : ENDIF 803 : TYPRET = ' ' 803 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VITESSE_NORMALE', 804 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 805 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 806 : IVAR = IVAR + 1 807 : ID1 = IDIM + 1 808 : IVLIAB(NLS,ID1) = 1 809 : INLIAB(NLS,ID1) = 39 810 : ENDIF 811 : TYPRET = ' ' 811 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UX', 812 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 813 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 814 : IVAR = IVAR + 1 815 : IVLIAB(NLS,1) = 1 816 : INLIAB(NLS,1) = 16 817 : ENDIF 818 : TYPRET = ' ' 818 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UY', 819 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 820 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 821 : IVAR = IVAR + 1 822 : IVLIAB(NLS,2) = 1 823 : INLIAB(NLS,2) = 17 824 : ENDIF 825 : TYPRET = ' ' 825 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UZ', 826 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 827 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 828 : IVAR = IVAR + 1 829 : IVLIAB(NLS,3) = 1 830 : INLIAB(NLS,3) = 18 831 : ENDIF 832 : TYPRET = ' ' 832 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UR', 833 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 834 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 835 : IVAR = IVAR + 1 836 : IVLIAB(NLS,1) = 1 837 : INLIAB(NLS,1) = 19 838 : ENDIF 839 : TYPRET = ' ' 839 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UT', 840 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 841 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 842 : IVAR = IVAR + 1 843 : IVLIAB(NLS,2) = 1 844 : INLIAB(NLS,2) = 20 845 : ENDIF 846 : IF (IVAR.EQ.0) THEN 846 : CALL ERREUR(496) 847 : RETURN 848 : ENDIF 849 : * 850 : ELSE IF (CMATE.EQ.'CE_PL_FR' .OR. 851 : & CMATE.EQ.'CE_CE_FR') THEN 852 : TYPRET = ' ' 852 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_NORMALE', 853 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 854 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 855 : IVAR = IVAR + 1 856 : IVLIAB(NLS,1) = 1 857 : INLIAB(NLS,1) = 36 858 : ENDIF 859 : TYPRET = ' ' 859 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_TANGENTIELLE', 860 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 861 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 862 : IVAR = IVAR + 1 863 : IVLIAB(NLS,10) = 1 864 : INLIAB(NLS,10) = 37 865 : ENDIF 866 : TYPRET = ' ' 866 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'PUISSANCE_USURE_INSTANTANEE', 867 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 868 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 869 : IVAR = IVAR + 1 870 : IVLIAB(NLS,12) = 1 871 : INLIAB(NLS,12) = 38 872 : ENDIF 873 : TYPRET = ' ' 873 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VITESSE_NORMALE', 874 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 875 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 876 : IVAR = IVAR + 1 877 : IVLIAB(NLS,3) = 1 878 : INLIAB(NLS,3) = 39 879 : ENDIF 880 : TYPRET = ' ' 880 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UX_POINT_FIBRE_NEUTRE', 881 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 882 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 883 : IVAR = IVAR + 1 884 : IVLIAB(NLS,4) = 1 885 : INLIAB(NLS,4) = 51 886 : ENDIF 887 : TYPRET = ' ' 887 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UY_POINT_FIBRE_NEUTRE', 888 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 889 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 890 : IVAR = IVAR + 1 891 : IVLIAB(NLS,5) = 1 892 : INLIAB(NLS,5) = 52 893 : ENDIF 894 : TYPRET = ' ' 894 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UZ_POINT_FIBRE_NEUTRE', 895 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 896 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 897 : IVAR = IVAR + 1 898 : IVLIAB(NLS,6) = 1 899 : INLIAB(NLS,6) = 53 900 : ENDIF 901 : TYPRET = ' ' 901 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UR_POINT_FIBRE_NEUTRE', 902 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 903 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 904 : IVAR = IVAR + 1 905 : IVLIAB(NLS,4) = 1 906 : INLIAB(NLS,4) = 54 907 : ENDIF 908 : TYPRET = ' ' 908 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UT_POINT_FIBRE_NEUTRE', 909 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 910 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 911 : IVAR = IVAR + 1 912 : IVLIAB(NLS,5) = 1 913 : INLIAB(NLS,5) = 55 914 : ENDIF 915 : TYPRET = ' ' 915 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VX_POINT_CONTACT', 916 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 917 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 918 : IVAR = IVAR + 1 919 : IVLIAB(NLS,7) = 1 920 : INLIAB(NLS,7) = 57 921 : ENDIF 922 : TYPRET = ' ' 922 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VY_POINT_CONTACT', 923 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 924 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 925 : IVAR = IVAR + 1 926 : IVLIAB(NLS,8) = 1 927 : INLIAB(NLS,8) = 58 928 : ENDIF 929 : TYPRET = ' ' 929 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VZ_POINT_CONTACT', 930 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 931 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 932 : IVAR = IVAR + 1 933 : IVLIAB(NLS,9) = 1 934 : INLIAB(NLS,9) = 59 935 : ENDIF 936 : TYPRET = ' ' 936 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VR_POINT_CONTACT', 937 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 938 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 939 : IVAR = IVAR + 1 940 : IVLIAB(NLS,7) = 1 941 : INLIAB(NLS,7) = 60 942 : ENDIF 943 : TYPRET = ' ' 943 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VT_POINT_CONTACT', 944 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 945 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 946 : IVAR = IVAR + 1 947 : IVLIAB(NLS,8) = 1 948 : INLIAB(NLS,8) = 61 949 : ENDIF 950 : TYPRET = ' ' 950 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'MX_POINT_FIBRE_NEUTRE', 951 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 952 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 953 : IVAR = IVAR + 1 954 : IVLIAB(NLS,13) = 1 955 : INLIAB(NLS,13) = 45 956 : ENDIF 957 : TYPRET = ' ' 957 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'MY_POINT_FIBRE_NEUTRE', 958 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 959 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 960 : IVAR = IVAR + 1 961 : IVLIAB(NLS,14) = 1 962 : INLIAB(NLS,14) = 46 963 : ENDIF 964 : TYPRET = ' ' 964 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'MZ_POINT_FIBRE_NEUTRE', 965 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 966 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 967 : IVAR = IVAR + 1 968 : IVLIAB(NLS,15) = 1 969 : INLIAB(NLS,15) = 47 970 : ENDIF 971 : TYPRET = ' ' 971 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'RX_POINT_FIBRE_NEUTRE', 972 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 973 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 974 : IVAR = IVAR + 1 975 : IVLIAB(NLS,16) = 1 976 : INLIAB(NLS,16) = 63 977 : ENDIF 978 : TYPRET = ' ' 978 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'RY_POINT_FIBRE_NEUTRE', 979 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 980 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 981 : IVAR = IVAR + 1 982 : IVLIAB(NLS,17) = 1 983 : INLIAB(NLS,17) = 64 984 : ENDIF 985 : TYPRET = ' ' 985 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'RZ_POINT_FIBRE_NEUTRE', 986 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 987 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 988 : IVAR = IVAR + 1 989 : IVLIAB(NLS,18) = 1 990 : INLIAB(NLS,18) = 65 991 : ENDIF 992 : TYPRET = ' ' 992 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'RR_POINT_FIBRE_NEUTRE', 993 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 994 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 995 : IVAR = IVAR + 1 996 : IVLIAB(NLS,16) = 1 997 : INLIAB(NLS,16) = 66 998 : ENDIF 999 : TYPRET = ' ' 999 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'RT_POINT_FIBRE_NEUTRE', 1000 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1001 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1002 : IVAR = IVAR + 1 1003 : IVLIAB(NLS,17) = 1 1004 : INLIAB(NLS,17) = 67 1005 : ENDIF 1006 : IF (IVAR.EQ.0) THEN 1006 : CALL ERREUR(496) 1007 : RETURN 1008 : ENDIF 1009 : * 1010 : ELSE IF (CMATE.EQ.'PO_PL' .OR. 1011 : & CMATE.EQ.'PO_CE') THEN 1012 : TYPRET = ' ' 1012 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC', 1013 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1014 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1015 : IVAR = IVAR + 1 1016 : IVLIAB(NLS,1) = 1 1017 : INLIAB(NLS,1) = 15 1018 : ENDIF 1019 : TYPRET = ' ' 1019 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VITESSE_NORMALE', 1020 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1021 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1022 : IVAR = IVAR + 1 1023 : IVLIAB(NLS,3) = 1 1024 : INLIAB(NLS,3) = 39 1025 : ENDIF 1026 : ** ianis 1027 : TYPRET = ' ' 1027 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'DEPLACEMENT_PLASTIQUE', 1028 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1029 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1030 : IVAR = IVAR + 1 1031 : IVLIAB(NLS,13) = 1 1032 : INLIAB(NLS,13) = 82 1033 : ENDIF 1034 : * 1035 : TYPRET = ' ' 1035 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UX', 1036 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1037 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1038 : IVAR = IVAR + 1 1039 : IVLIAB(NLS,4) = 1 1040 : INLIAB(NLS,4) = 16 1041 : ENDIF 1042 : TYPRET = ' ' 1042 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UY', 1043 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1044 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1045 : IVAR = IVAR + 1 1046 : IVLIAB(NLS,5) = 1 1047 : INLIAB(NLS,5) = 17 1048 : ENDIF 1049 : TYPRET = ' ' 1049 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UZ', 1050 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1051 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1052 : IVAR = IVAR + 1 1053 : IVLIAB(NLS,6) = 1 1054 : INLIAB(NLS,6) = 18 1055 : ENDIF 1056 : TYPRET = ' ' 1056 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UR', 1057 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1058 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1059 : IVAR = IVAR + 1 1060 : IVLIAB(NLS,4) = 1 1061 : INLIAB(NLS,4) = 19 1062 : ENDIF 1063 : TYPRET = ' ' 1063 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UT', 1064 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1065 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1066 : IVAR = IVAR + 1 1067 : IVLIAB(NLS,5) = 1 1068 : INLIAB(NLS,5) = 20 1069 : ENDIF 1070 : IF (IVAR.EQ.0) THEN 1070 : CALL ERREUR(496) 1071 : RETURN 1072 : ENDIF 1073 : ELSE IF (CMATE.EQ.'PO_PO_FR') THEN 1074 : TYPRET = ' ' 1074 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_POINT_A', 1075 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1076 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1077 : IVAR = IVAR + 1 1078 : IVLIAB(NLS,1) = 1 1079 : INLIAB(NLS,1) = 22 1080 : ENDIF 1081 : TYPRET = ' ' 1081 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_POINT_B', 1082 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1083 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1084 : IVAR = IVAR + 1 1085 : IVLIAB(NLS,2) = 1 1086 : INLIAB(NLS,2) = 23 1087 : ENDIF 1088 : TYPRET = ' ' 1088 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VITESSE_NORMALE', 1089 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1090 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1091 : IVAR = IVAR + 1 1092 : IVLIAB(NLS,3) = 1 1093 : INLIAB(NLS,3) = 39 1094 : ENDIF 1095 : TYPRET = ' ' 1095 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UX_POINT_A', 1096 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1097 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1098 : IVAR = IVAR + 1 1099 : IVLIAB(NLS,4) = 1 1100 : INLIAB(NLS,4) = 24 1101 : ENDIF 1102 : TYPRET = ' ' 1102 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UY_POINT_A', 1103 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1104 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1105 : IVAR = IVAR + 1 1106 : IVLIAB(NLS,5) = 1 1107 : INLIAB(NLS,5) = 25 1108 : ENDIF 1109 : TYPRET = ' ' 1109 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UZ_POINT_A', 1110 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1111 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1112 : IVAR = IVAR + 1 1113 : IVLIAB(NLS,6) = 1 1114 : INLIAB(NLS,6) = 26 1115 : ENDIF 1116 : TYPRET = ' ' 1116 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UR_POINT_A', 1117 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1118 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1119 : IVAR = IVAR + 1 1120 : IVLIAB(NLS,4) = 1 1121 : INLIAB(NLS,4) = 27 1122 : ENDIF 1123 : TYPRET = ' ' 1123 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UT_POINT_A', 1124 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1125 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1126 : IVAR = IVAR + 1 1127 : IVLIAB(NLS,5) = 1 1128 : INLIAB(NLS,5) = 28 1129 : ENDIF 1130 : TYPRET = ' ' 1130 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UX_POINT_B', 1131 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1132 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1133 : IVAR = IVAR + 1 1134 : IDI = 3 + IDIM + 1 1135 : IVLIAB(NLS,IDI) = 1 1136 : INLIAB(NLS,IDI) = 30 1137 : ENDIF 1138 : TYPRET = ' ' 1138 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UY_POINT_B', 1139 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1140 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1141 : IVAR = IVAR + 1 1142 : IDI = 3 + IDIM + 2 1143 : IVLIAB(NLS,IDI) = 1 1144 : INLIAB(NLS,IDI) = 31 1145 : ENDIF 1146 : TYPRET = ' ' 1146 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UZ_POINT_B', 1147 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1148 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1149 : IVAR = IVAR + 1 1150 : IDI = 3 + IDIM + 3 1151 : IVLIAB(NLS,IDI) = 1 1152 : INLIAB(NLS,IDI) = 32 1153 : ENDIF 1154 : TYPRET = ' ' 1154 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UR_POINT_B', 1155 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1156 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1157 : IVAR = IVAR + 1 1158 : IDI = 3 + IDIM + 1 1159 : IVLIAB(NLS,IDI) = 1 1160 : INLIAB(NLS,IDI) = 33 1161 : ENDIF 1162 : TYPRET = ' ' 1162 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UT_POINT_B', 1163 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1164 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1165 : IVAR = IVAR + 1 1166 : IDI = 3 + IDIM + 2 1167 : IVLIAB(NLS,IDI) = 1 1168 : INLIAB(NLS,IDI) = 34 1169 : ENDIF 1169 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_TANGENTIELLE', 1170 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1171 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1172 : IVAR = IVAR + 1 1173 : IVLIAB(NLS,10) = 1 1174 : INLIAB(NLS,10) = 37 1175 : ENDIF 1175 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'PUISSANCE_USURE_INSTANTANEE', 1176 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1177 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1178 : IVAR = IVAR + 1 1179 : IVLIAB(NLS,12 ) = 1 1180 : INLIAB(NLS,12 ) = 38 1181 : ENDIF 1182 : IF (IVAR.EQ.0) THEN 1182 : CALL ERREUR(496) 1183 : RETURN 1184 : ENDIF 1185 : * 1186 : ELSE IF 1187 : & (CMATE.EQ.'PO_PO_DP') THEN 1188 : TYPRET = ' ' 1188 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_POINT_A', 1189 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1190 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1191 : IVAR = IVAR + 1 1192 : IVLIAB(NLS,1) = 1 1193 : INLIAB(NLS,1) = 22 1194 : ENDIF 1195 : TYPRET = ' ' 1195 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_POINT_B', 1196 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1197 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1198 : IVAR = IVAR + 1 1199 : IVLIAB(NLS,2) = 1 1200 : INLIAB(NLS,2) = 23 1201 : ENDIF 1202 : TYPRET = ' ' 1202 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VITESSE_NORMALE', 1203 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1204 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1205 : IVAR = IVAR + 1 1206 : IVLIAB(NLS,3) = 1 1207 : INLIAB(NLS,3) = 39 1208 : ENDIF 1209 : TYPRET = ' ' 1209 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'DEPLACEMENT_PLASTIQUE', 1210 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1211 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1212 : IVAR = IVAR + 1 1213 : IVLIAB(NLS,13) = 1 1214 : INLIAB(NLS,13) = 82 1215 : ENDIF 1216 : TYPRET = ' ' 1216 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UX_POINT_A', 1217 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1218 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1219 : IVAR = IVAR + 1 1220 : IVLIAB(NLS,4) = 1 1221 : INLIAB(NLS,4) = 24 1222 : ENDIF 1223 : TYPRET = ' ' 1223 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UY_POINT_A', 1224 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1225 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1226 : IVAR = IVAR + 1 1227 : IVLIAB(NLS,5) = 1 1228 : INLIAB(NLS,5) = 25 1229 : ENDIF 1230 : TYPRET = ' ' 1230 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UZ_POINT_A', 1231 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1232 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1233 : IVAR = IVAR + 1 1234 : IVLIAB(NLS,6) = 1 1235 : INLIAB(NLS,6) = 26 1236 : ENDIF 1237 : TYPRET = ' ' 1237 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UR_POINT_A', 1238 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1239 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1240 : IVAR = IVAR + 1 1241 : IVLIAB(NLS,4) = 1 1242 : INLIAB(NLS,4) = 27 1243 : ENDIF 1244 : TYPRET = ' ' 1244 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UT_POINT_A', 1245 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1246 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1247 : IVAR = IVAR + 1 1248 : IVLIAB(NLS,5) = 1 1249 : INLIAB(NLS,5) = 28 1250 : ENDIF 1251 : TYPRET = ' ' 1251 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UX_POINT_B', 1252 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1253 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1254 : IVAR = IVAR + 1 1255 : IDI = 3 + IDIM + 1 1256 : IVLIAB(NLS,IDI) = 1 1257 : INLIAB(NLS,IDI) = 30 1258 : ENDIF 1259 : TYPRET = ' ' 1259 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UY_POINT_B', 1260 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1261 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1262 : IVAR = IVAR + 1 1263 : IDI = 3 + IDIM + 2 1264 : IVLIAB(NLS,IDI) = 1 1265 : INLIAB(NLS,IDI) = 31 1266 : ENDIF 1267 : TYPRET = ' ' 1267 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UZ_POINT_B', 1268 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1269 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1270 : IVAR = IVAR + 1 1271 : IDI = 3 + IDIM + 3 1272 : IVLIAB(NLS,IDI) = 1 1273 : INLIAB(NLS,IDI) = 32 1274 : ENDIF 1275 : TYPRET = ' ' 1275 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UR_POINT_B', 1276 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1277 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1278 : IVAR = IVAR + 1 1279 : IDI = 3 + IDIM + 1 1280 : IVLIAB(NLS,IDI) = 1 1281 : INLIAB(NLS,IDI) = 33 1282 : ENDIF 1283 : TYPRET = ' ' 1283 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UT_POINT_B', 1284 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1285 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1286 : IVAR = IVAR + 1 1287 : IDI = 3 + IDIM + 2 1288 : IVLIAB(NLS,IDI) = 1 1289 : INLIAB(NLS,IDI) = 34 1290 : ENDIF 1291 : IF (IVAR.EQ.0) THEN 1291 : CALL ERREUR(496) 1292 : RETURN 1293 : ENDIF 1294 : * 1295 : ELSE IF (CMATE.EQ.'PO_PO') THEN 1296 : TYPRET = ' ' 1296 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_POINT_A', 1297 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1298 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1299 : IVAR = IVAR + 1 1300 : IVLIAB(NLS,1) = 1 1301 : INLIAB(NLS,1) = 22 1302 : ENDIF 1303 : TYPRET = ' ' 1303 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC_POINT_B', 1304 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1305 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1306 : IVAR = IVAR + 1 1307 : IVLIAB(NLS,2) = 1 1308 : INLIAB(NLS,2) = 23 1309 : ENDIF 1310 : TYPRET = ' ' 1310 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'VITESSE_NORMALE', 1311 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1312 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1313 : IVAR = IVAR + 1 1314 : IVLIAB(NLS,3) = 1 1315 : INLIAB(NLS,3) = 39 1316 : ENDIF 1317 : TYPRET = ' ' 1317 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UX_POINT_A', 1318 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1319 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1320 : IVAR = IVAR + 1 1321 : IVLIAB(NLS,4) = 1 1322 : INLIAB(NLS,4) = 24 1323 : ENDIF 1324 : TYPRET = ' ' 1324 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UY_POINT_A', 1325 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1326 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1327 : IVAR = IVAR + 1 1328 : IVLIAB(NLS,5) = 1 1329 : INLIAB(NLS,5) = 25 1330 : ENDIF 1331 : TYPRET = ' ' 1331 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UZ_POINT_A', 1332 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1333 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1334 : IVAR = IVAR + 1 1335 : IVLIAB(NLS,6) = 1 1336 : INLIAB(NLS,6) = 26 1337 : ENDIF 1338 : TYPRET = ' ' 1338 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UR_POINT_A', 1339 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1340 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1341 : IVAR = IVAR + 1 1342 : IVLIAB(NLS,4) = 1 1343 : INLIAB(NLS,4) = 27 1344 : ENDIF 1345 : TYPRET = ' ' 1345 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UT_POINT_A', 1346 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1347 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1348 : IVAR = IVAR + 1 1349 : IVLIAB(NLS,5) = 1 1350 : INLIAB(NLS,5) = 28 1351 : ENDIF 1352 : TYPRET = ' ' 1352 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UX_POINT_B', 1353 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1354 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1355 : IVAR = IVAR + 1 1356 : IDI = 3 + IDIM + 1 1357 : IVLIAB(NLS,IDI) = 1 1358 : INLIAB(NLS,IDI) = 30 1359 : ENDIF 1360 : TYPRET = ' ' 1360 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UY_POINT_B', 1361 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1362 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1363 : IVAR = IVAR + 1 1364 : IDI = 3 + IDIM + 2 1365 : IVLIAB(NLS,IDI) = 1 1366 : INLIAB(NLS,IDI) = 31 1367 : ENDIF 1368 : TYPRET = ' ' 1368 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UZ_POINT_B', 1369 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1370 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1371 : IVAR = IVAR + 1 1372 : IDI = 3 + IDIM + 3 1373 : IVLIAB(NLS,IDI) = 1 1374 : INLIAB(NLS,IDI) = 32 1375 : ENDIF 1376 : TYPRET = ' ' 1376 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UR_POINT_B', 1377 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1378 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1379 : IVAR = IVAR + 1 1380 : IDI = 3 + IDIM + 1 1381 : IVLIAB(NLS,IDI) = 1 1382 : INLIAB(NLS,IDI) = 33 1383 : ENDIF 1384 : TYPRET = ' ' 1384 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UT_POINT_B', 1385 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1386 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1387 : IVAR = IVAR + 1 1388 : IDI = 3 + IDIM + 2 1389 : IVLIAB(NLS,IDI) = 1 1390 : INLIAB(NLS,IDI) = 34 1391 : ENDIF 1392 : IF (IVAR.EQ.0) THEN 1392 : CALL ERREUR(496) 1393 : RETURN 1394 : ENDIF 1395 : ELSE IF (CMATE.EQ.'PR_PR_IN' .OR. 1396 : & CMATE.EQ.'PR_PR_EX') THEN 1397 : TYPRET = ' ' 1397 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'FORCE_DE_CHOC', 1398 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1399 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1400 : IVAR = IVAR + 1 1401 : IVLIAB(NLS,1) = 1 1402 : INLIAB(NLS,1) = 15 1403 : ENDIF 1404 : TYPRET = ' ' 1404 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UX', 1405 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1406 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1407 : IVAR = IVAR + 1 1408 : IVLIAB(NLS,4) = 1 1409 : INLIAB(NLS,4) = 16 1410 : ENDIF 1411 : TYPRET = ' ' 1411 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UY', 1412 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1413 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1414 : IVAR = IVAR + 1 1415 : IVLIAB(NLS,5) = 1 1416 : INLIAB(NLS,5) = 17 1417 : ENDIF 1418 : TYPRET = ' ' 1418 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UZ', 1419 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1420 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1421 : IVAR = IVAR + 1 1422 : IVLIAB(NLS,6) = 1 1423 : INLIAB(NLS,6) = 18 1424 : ENDIF 1425 : TYPRET = ' ' 1425 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UR', 1426 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1427 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1428 : IVAR = IVAR + 1 1429 : IVLIAB(NLS,4) = 1 1430 : INLIAB(NLS,4) = 19 1431 : ENDIF 1432 : TYPRET = ' ' 1432 : CALL ACCTAB(ITVAR,'MOT',I0,X0,'UT', 1433 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1434 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1435 : IVAR = IVAR + 1 1436 : IVLIAB(NLS,5) = 1 1437 : INLIAB(NLS,5) = 20 1438 : ENDIF 1439 : IF (IVAR.EQ.0) THEN 1439 : CALL ERREUR(496) 1440 : RETURN 1441 : ENDIF 1442 : 1443 : * Ajout liaison PALIER_FLUIDE 1444 : ELSE IF (CMATE.EQ.'PA_FL_RO') THEN 1444 : CALL ACCTAB(ITTL,'MOT',I0,X0,'MODELE_PALIER',L0,IP0, 1445 : & 'MOT',I1,X0,MONMOT,L1,IP1) 1446 : IF (IERR.NE.0) RETURN 1447 : IF (MONMOT(1:6).EQ.'RODELI') THEN 1448 : IP = 112 1449 : DO 420 ID = 1,7 1450 : IF (ID.LT.3) THEN 1451 : ILONG=9 1452 : ELSE 1453 : ILONG=8 1454 : ENDIF 1455 : IF (ID.EQ.7) ILONG=14 1456 : GOTO (421,422,423,424,425,426,427) ID 1457 : 421 CMOT = 'FY_PALIER' 1458 : GOTO 428 1459 : 422 CMOT = 'FZ_PALIER' 1460 : GOTO 428 1461 : 423 CMOT = 'UY_ARBRE' 1462 : GOTO 428 1463 : 424 CMOT = 'UZ_ARBRE' 1464 : GOTO 428 1465 : 425 CMOT = 'VY_ARBRE' 1466 : GOTO 428 1467 : 426 CMOT = 'VZ_ARBRE' 1468 : GOTO 428 1469 : 427 CMOT = 'TRAVAIL_FLUIDE' 1470 : 428 CONTINUE 1471 : TYPRET = ' ' 1471 : CALL ACCTAB(ITVAR,'MOT',I0,X0, CMOT(1:ILONG), 1472 : & L0,IP0,TYPRET,I1,X1,CHARRE,LVAR,IP1) 1473 : IF (TYPRET.EQ.'LOGIQUE ' .AND. LVAR ) THEN 1474 : IVAR = IVAR + 1 1475 : IVLIAB(NLS,ID) = 1 1476 : INLIAB(NLS,ID) = IP + ID 1477 : ENDIF 1478 : 420 CONTINUE 1479 : IF (IVAR.EQ.0) THEN 1479 : CALL ERREUR(496) 1480 : RETURN 1481 : ENDIF 1482 : ENDIF 1483 : * fin ajout liaison PALIER_FLUIDE 1484 : 1485 : ENDIF 1486 : 1487 : NVAR = MAX(NVAR,IVAR) 1488 : IF (.NOT.CHPO) THEN 1489 : II = II + 1 1490 : ICHRE2(II) = IVAR 1491 : ENDIF 1492 : * kich annulation du choix 1493 : 1494 : ENDIF 1495 : GOTO 100 1496 : ELSE 1497 : if (indice.le.idimen) goto 100 1498 : ENDIF 1499 : 1500 : * 1501 : END 1502 : 1503 : 1504 : 1505 : 1506 : 1507 : 1508 : 1509 : 1510 : 1511 : 1512 : 1513 : 1514 : 1515 : 1516 : 1517 :
© Cast3M 2003 - All rights reserved.
Disclaimer