1 : C ELFRES SOURCE AM 08/02/14 21:21:26 6050 2 : SUBROUTINE ELFRES(KANBN,KDNCN,KNREFE,KOMALI,KACHAR,DELTAT,M,NPAS, 3 : *NFOIS,KSOLUT) 4 : IMPLICIT INTEGER(I-N) 5 : IMPLICIT REAL*8(A-H,O-Z) 6 : C 7 : C ==================================================================== 8 : C SOUS-PROGRAMME EFFECTUANT LA RESOLUTION TEMPORELLE 9 : C SOUS-PROGRAMME APPELE PAR ELFE 10 : C N'APPELLE QUE DES SOUS-PROGRAMMES FORTRAN 11 : C CREATION : 3/11/86 MODIFICATION LE 22/01/88 12 : C PROGRAMMEUR : GUILBAUD PAR LIONEL VIVAN 13 : C ==================================================================== 14 : C 15 : -INC CCOPTIO 16 : -INC CCHAMP 17 : -INC SMELEME 18 : -INC SMCHPOI 19 : -INC SMSOLUT 20 : -INC SMLREEL 21 : C 22 : SEGMENT MANBN 23 : POINTEUR KAB(NSGA).ANBN 24 : ENDSEGMENT 25 : C 26 : C NSGA : NOMBRE DE BLOCS ANBN 27 : C 28 : SEGMENT ANBN 29 : REAL*8 AB(NTANBN,LANBN) 30 : ENDSEGMENT 31 : C 32 : C AB(I,K) : TERME I DE LA MATRICE A OU B D'UN ELEMENT AU TEMPS K 33 : C NTANBN : NOMBRE DE TERMES DES MATRICES A ET B DE TOUS LES ELEMENTS 34 : C LANBN : NOMBRE DE PAS DE TEMPS STOCKES DANS UN BLOC ANBN 35 : C 36 : SEGMENT MDNCN 37 : POINTEUR KDC(NSGD).DNCN 38 : ENDSEGMENT 39 : C 40 : C NSGD : NOMBRE DE BLOCS DNCN 41 : C 42 : SEGMENT DNCN 43 : REAL*8 DC(NIDNCN,LDNCN) 44 : ENDSEGMENT 45 : C 46 : C DC(I,K) : DDL I AU TEMPS K 47 : C NIDNCN : NOMBRE TOTAL D'INCONNUES 48 : C LDNCN : NOMBRE DE PAS DE TEMPS STOCKES DANS UN BLOC DNCN 49 : C 50 : SEGMENT MNREFE 51 : INTEGER NREFE(8,NSTR) 52 : INTEGER NTANBN 53 : INTEGER NIDNCN 54 : INTEGER NTVN 55 : POINTEUR NREPA.MPASS 56 : POINTEUR NRECA.MCARA 57 : POINTEUR NRENO.MNORM 58 : POINTEUR NRECPR.ICPR 59 : POINTEUR NREMEL.MELEME 60 : POINTEUR NREDEN.MDEN 61 : ENDSEGMENT 62 : C 63 : C NSTR : NOMBRE D'ELEMENTS 64 : C NREFE(1,I) : MELEME 65 : C NREFE(2,I) : MSOSTU 66 : C NREFE(3,I) : TYPE DE L'ELEMENT 67 : C NREFE(4,I) : NOMBRE DE POINTS DU MELEME 68 : C NREFE(5,I) : NOMBRE DE DDL PAR POINT 69 : C NREFE(6,I)=IVN :LE 1ER DDL DE L'ELEMENT EST LE IVN+1 IEME DE VN 70 : C NREFE(7,I)=IAN :LE 1ER TERME DE LA MATRICE A EST LE IAN IEME DE ANBN 71 : C NREFE(8,I)= 1 :LE IEME ELEMENT EST RIGIDE (OU PARTIELLEMENT) SINON 0 72 : C NTANBN : NOMBRE DE TERMES DES MATRICES A ET B POUR TOUS LES ELEMENTS 73 : C NIDNCN : NOMBRE TOTAL D'INCONNUES DE DNCN 74 : C NTVN : LONGUEUR DU TABLEAU VN 75 : C 76 : SEGMENT MPASS 77 : REAL*8 PASS(9*NSTR) 78 : ENDSEGMENT 79 : C 80 : C PASS(9) : MATRICE DE CHANGEMENT DE REPERE POUR L'ELEMENT I 81 : C 82 : SEGMENT VN(NTVN) 83 : C 84 : SEGMENT MACHAR 85 : INTEGER LACHAL(NCHAR) 86 : POINTEUR LACHAT(NCHAR).ICHATE 87 : POINTEUR LACHAF(NCHAR).ICHAFO 88 : REAL*8 BCHAR1(NV1) 89 : REAL*8 BCHAR2(NV1) 90 : ENDSEGMENT 91 : C 92 : C LACHAL(I) : NOMBRE DE TERMES RELATIFS AU CHARGEMENT I DANS BCHAR1 93 : C LACHAT(I) : POINTEUR SUR LA LISTE DES TEMPS DU CHARGEMENT I 94 : C LACHAF(I) : POINTEUR SUR LA LISTE DES F(T) DU CHARGEMENT I 95 : C BCHAR1 : VECTEUR FORME PAR L'EMPILEMENT DE LA PARTIE CHARGEMENT 96 : C DES SECOND-MEMBRES BLIAI, POUR TOUTES LES LIAISONS CONCERNEES 97 : C PAR UN SOUS-CHARGEMENT ET POUR TOUS LES SOUS-CHARGEMENTS 98 : C BCHAR2 : IDEM MODULE PAR LES FONCTIONS TEMPORELLES 99 : C 100 : SEGMENT MOMALI 101 : POINTEUR NOMALI(NBLIPE).MALIAI 102 : POINTEUR KCPR2.ICPR2 103 : ENDSEGMENT 104 : C 105 : SEGMENT MALIAI 106 : REAL*8 ALIA1(NALI) 107 : REAL*8 ALIA2(NBLI) 108 : REAL*8 ALIA3(NL/2,NL/2) 109 : REAL*8 ALIA4(NL/2,NL/2) 110 : REAL*8 BLIAI(NL) 111 : REAL*8 XLIAI(NL) 112 : INTEGER NLBLI(2,NBSTLI) 113 : INTEGER NDCLIA(NL) 114 : INTEGER NVNLIA(NL/2) 115 : INTEGER IBCHA(NCHAL) 116 : POINTEUR KWLIAI.MWLIAI 117 : POINTEUR KLIMAS.MLIMAS 118 : ENDSEGMENT 119 : C 120 : C MATRICE DE LIAISON PUIS SON INVERSE EN 4 BLOCS: 121 : C ALIA1 : MATRICE BANDE I-A0 122 : C -1 123 : C ALIA2 : MATRICE BANDE -B0 124 : C ALIA3 : MATRICE DE LIAISON TERMES EN DEPLACEMENT 125 : C ALIA4 : MATRICE DE LIAISON TERMES EN CONTRAINTE 126 : C NLBLI : TABLEAU DE CORRESPONDANCE ENTRE LES BLOCS 127 : C BLIAI : VECTEUR SECOND MEMBRE -> VN ET CHARGEMENT EVENTUEL 128 : C XLIAI : VECTEUR PREMIER MEMBRE -> DNCN 129 : C NDCLIA(NJC)=IKID : LA NJC-IEME INCONNUE DE XLIAI EST LE IKID-IEME 130 : C DDL DE DNCN 131 : C DNCN(IKID) <- XLIAI(NJC) 132 : C NVNLIA(NJL)=IKIV : LA NJL-IEME INCONNUE DE BLIAI EST LE IKIV-IEME 133 : C DDL DE VN 134 : C BLIAI(NJL) <- VN(IKIV) 135 : C NCHAL : NOMBRE DE SOUS-CHARGEMENTS AGISSANT SUR LA LIAISON 136 : C IBCHA(I)=K : LA PARTIE CHARGEMENT DE BLIAI POUR LE I-IEME SOUS- 137 : C CHARGEMENT SE TROUVE A PARTIR DE LA K+1-IEME PLACE DANS BCHAR2 138 : C BLIAI(NL/2+NJL) <- BCHAR2(K+NJL) 139 : C 140 : SEGMENT MLIMAS 141 : REAL*8 BLIMAS(2,NJON) 142 : REAL*8 ALIMAS(LIM,NJON) 143 : INTEGER NLIMAS(LIM) 144 : ENDSEGMENT 145 : C 146 : C SEGMENT POUR LE CALCUL DE L'ACCELERATION DU CENTRE DE GRAVITE DE 147 : C L'ELEMENT RIGIDE DE LIAISON 148 : C BLIMAS(1,I) <--- DC(NDCLIA(I),N-1) 149 : C BLIMAS(2,I) <--- DC(NDCLIA(I),N-2) 150 : C NLIMAS(J)=K : BLIAI(NL+K)=-2*C(I,K)*BLIMAS(1,I)+C(I,K)*BLIMAS(2,I 151 : C 152 : SEGMENT MNORM 153 : REAL*8 DNORM(LNORM) 154 : ENDSEGMENT 155 : C 156 : C DNORM : VECTEUR DE NORMALISATION 157 : C 158 : C 159 : SEGMENT MCARA 160 : REAL*8 CARA(LCAR*NSTR) 161 : ENDSEGMENT 162 : C 163 : C LCAR : NOMBRE DE CARACTERISTIQUES DE L'ELEMENT 164 : C 165 : SEGMENT ICPR(XCOOR(/1)/(IDIM+1)) 166 : C 167 : C IKID=ICPR(NUM(I,J))+K 168 : C LA COMPOSANTE NOMD(K) DU POINT NUM EST LE IKID-IEME DDL DE DNCN( , ,1 169 : C 170 : SEGMENT ICPR2(NIDNCN) 171 : C 172 : C NJ=ICPR2(IKID) : LE IKID-IEME DDL DE DNCN EST LE NJ-IEME DANS 173 : C L'ENSEMBLE DES XLIAI MIS BOUT-A-BOUT 174 : C 175 : WRITE(IOIMP,*) ' DEBUT DE ELFRES ' 176 : MNREFE=KNREFE 177 : MNORM=NRENO 178 : MPASS=NREPA 179 : C 180 : C 0 - CREATION DE L'OBJET SOLUTION DYNAMIQUE 181 : C 182 : N=NPAS+1 183 : NIPO=10 184 : SEGINI MSOLUT 185 : ITYSOL='DYNAMIQU' 186 : SEGINI MSOLRE,MSOLEN 187 : MSOLIS(1)=MSOLRE 188 : MSOLIT(1)=0 189 : MSOLIS(5)=MSOLEN 190 : MSOLIT(5)=2 191 : SEGDES MSOLUT 192 : C 193 : C 194 : C - CREATION DU CHAMPOINT SOLUTION INITIALE 195 : C 196 : NSOUPO=1 197 : NAT=1 198 : SEGINI MCHPOI 199 : IFOPOI=IFOMOD 200 : C Dans les solutions il n'y que des chpo diffus 201 : JATTRI(1) = 1 202 : NDDL=NREFE(5,1) 203 : NC=2*NDDL 204 : SEGINI MSOUPO 205 : IPCHP(1)=MSOUPO 206 : IGEOC=NREMEL 207 : DO 5 I=1,NDDL 208 : NOCOMP(I)= NOMDD(I) 209 : NOCOMP(I+NDDL) = NOMDU(I) 210 : 5 CONTINUE 211 : MELEME=NREMEL 212 : N=NUM(/2) 213 : SEGDES MELEME 214 : SEGINI MPOVAL 214 : CALL ZERO(VPOCHA,N,NC) 215 : IPOVAL=MPOVAL 216 : SEGDES MPOVAL,MSOUPO,MCHPOI 217 : ISOLEN(1)=MCHPOI 217 : C CALL ECCHPO(MCHPOI) 218 : SOLRE(1)=0.D0 219 : C 220 : SEGINI VN 221 : NSTR=NREFE(/2) 222 : LREF=NREFE(/1) 223 : MANBN=KANBN 224 : ANBN=KAB(1) 225 : SEGACT ANBN 226 : LANBN=AB(/2) 227 : MDNCN=KDNCN 228 : DNCN=KDC(1) 229 : SEGACT DNCN 230 : LDNCN=DC(/2) 231 : MOMALI=KOMALI 232 : NBLIPE=NOMALI(/1) 233 : MACHAR=KACHAR 234 : NCHAR=LACHAL(/1) 235 : C 236 : C BOUCLE SUR LES PAS EN TEMPS 237 : C 238 : NFF=0 239 : NFS=0 240 : NPAS1=NPAS+1 241 : DO 70 NN=2,NPAS1 242 : NFF=NFF+1 243 : MNN=MIN(NN,M) 244 : IF (IIMPI.EQ.1) THEN 245 : WRITE(IOIMP,*) 'NN=',NN,'MNN=',MNN 246 : END IF 247 : DO 10 I=1,NTVN 248 : VN(I)=0.D0 249 : 10 CONTINUE 250 : C 251 : C 252 : C 1 - CALCUL DE LA CONVOLUTION, REMPLISSAGE DE VN 253 : C 254 : C LA CONVOLUTION SE FAIT DANS L ORDRE CROISSANT DES INDICES POUR DNCN 255 : C MNN-1 : LONGUEUR SUR LAQUELLE SE FAIT LA CONVOLUTION 256 : C IDEP : INDICE DE DEPART POUR LE CALCUL DE LA CONVOLUTION 257 : C IARR : INDICE D ARRIVEE POUR LE CALCUL DE LA CONVOLUTION 258 : C INDICES DE DEPART ET D'ARRIVEE A L INTERIEUR DES BLOCS: 259 : C POUR ANBN : DEPART NDANBN, ARRIVEE NAANBN 260 : C POUR DNCN : DEPART NDDNCN, ARRIVEE NADNCN 261 : C LAB : NUMERO DU BLOC ANBN 262 : C LDC : NUMERO DU BLOC DNCN 263 : C 264 : IDEP=NN-(MNN-1) 265 : IARR=NN-1 266 : C WRITE (IOIMP,*) 'IDEP=',IDEP,'IARR=',IARR 267 : J=MNN 268 : LAB=((J-1)/LANBN)+1 269 : C LDC=((IDEP-1)/LDNCN)+1 270 : C DECALAGE DES BLOCS DNCN LORSQUE LE PREMIER NE SERT PLUS 271 : IF(IDEP.NE.1.AND.MOD(IDEP,LDNCN).EQ.1) THEN 272 : KKK=KDC(1) 273 : NDCL=KDC(/1)-1 274 : DO 1 LDC1=1,NDCL 275 : KDC(LDC1)=KDC(LDC1+1) 276 : 1 CONTINUE 277 : KDC(NDCL+1)=KKK 278 : C WRITE (IOIMP,*) 'DECALAGE IDEP ',IDEP 279 : ENDIF 280 : LDC=1 281 : C WRITE (IOIMP,*) 'LAB=',LAB,'LDC=',LDC 282 : ANBN=KAB(LAB) 283 : DNCN=KDC(LDC) 284 : SEGACT ANBN 285 : SEGACT DNCN 286 : C 287 : C BOUCLE SUR LES TERMES DU PRODUIT DE CONVOLUTION 288 : C 289 : NDDNCN=MOD(IDEP,LDNCN) 290 : IF(NDDNCN.EQ.0) NDDNCN=LDNCN 291 : NDANBN=MOD(J,LANBN) 292 : IF(NDANBN.EQ.0) NDANBN=LANBN 293 : DO 40 I=IDEP,IARR 294 : NADNCN=MOD(I,LDNCN) 295 : NAANBN=MOD(J,LANBN) 296 : C 297 : C PRODUIT DE CONVOLUTION PARTIEL UTILISANT LES DEUX BLOCS EN MEMOIRE 298 : C 299 : IF(NADNCN.EQ.0.OR.NAANBN.EQ.1.OR.I.EQ.IARR) THEN 300 : IF(NADNCN.EQ.0) NADNCN=LDNCN 301 : IF(NAANBN.EQ.0) NAANBN=LANBN 302 : C WRITE (IOIMP,*) 'NDANBN=',NDANBN,'NAANBN=',NAANBN 303 : C WRITE (IOIMP,*) 'NDDNCN=',NDDNCN,'NADNCN=',NADNCN 304 : C WRITE (IOIMP,*) I,LAB,ANBN,LDC,DNCN 304 : CALL ELFRE1(VN(1),AB,DC,NREFE,NSTR,NTANBN,NIDNCN,NDANBN,NDDNCN, 305 : *NADNCN,LREF) 306 : C WRITE(IOIMP,*)'VN' 307 : C WRITE(IOIMP,*)(VN(IJ),IJ=1,VN(/1)) 308 : C 309 : NDDNCN=MOD(I+1,LDNCN) 310 : IF(NDDNCN.EQ.0) NDDNCN=LDNCN 311 : NDANBN=MOD(J-1,LANBN) 312 : IF(NDANBN.EQ.0) NDANBN=LANBN 313 : C 314 : C FIN DE BLOC DNCN 315 : C 316 : IF(NADNCN.EQ.LDNCN) THEN 317 : IF(I.NE.IARR) THEN 318 : SEGDES DNCN 319 : ELSE 320 : SEGDES DNCN 321 : ENDIF 322 : IF(LDC.LT.KDC(/1)) THEN 323 : LDC=LDC+1 324 : DNCN=KDC(LDC) 325 : C WRITE(IOIMP,*) KDC(/1),LDC,DNCN 326 : SEGACT DNCN 327 : ENDIF 328 : ENDIF 329 : C 330 : C FIN DE BLOC ANBN 331 : C 332 : IF(NAANBN.EQ.1) THEN 333 : SEGDES ANBN 334 : IF(I.NE.IARR) THEN 335 : LAB=LAB-1 336 : ANBN=KAB(LAB) 337 : SEGACT ANBN 338 : ENDIF 339 : ENDIF 340 : ENDIF 341 : J=J-1 342 : 40 CONTINUE 343 : C 344 : C 345 : C 2 - CALCUL DU CHARGEMENT - BOUCLE SUR LES SOUS-CHARGEMENTS 346 : C 347 : T=(NN-1)*DELTAT 348 : IDCH=1 349 : C WRITE(IOIMP,*) ' NCHAR =',NCHAR 350 : DO 50 NCH=1,NCHAR 351 : MLREE1=LACHAT(NCH) 352 : MLREE2=LACHAF(NCH) 353 : LON=MLREE1.PROG(/1) 353 : CALL INTE22(MLREE1.PROG(1),MLREE2.PROG(1),T,FT,LON) 353 : C CALL INTER1(LACHAT(NCH),LACHAF(NCH),T,FT) 354 : LCH=LACHAL(NCH) 355 : C WRITE(IOIMP,*) ' LCH ',LCH,' NCH ',NCH 355 : CALL MULVEC(BCHAR2(IDCH),BCHAR1(IDCH),FT,LCH) 356 : IDCH=IDCH+LCH 357 : 50 CONTINUE 358 : C WRITE(IOIMP,*) ' BCHAR2 ' 359 : C WRITE(IOIMP,1002) (BCHAR2(IJ),IJ=1,BCHAR2(/1)) 360 : C 361 : C 3 - CALCUL DE DNCN - BOUCLE SUR LES LIAISONS 362 : C 363 : DO 60 NBLI=1,NBLIPE 364 : MALIAI=NOMALI(NBLI) 365 : NL=NDCLIA(/1) 366 : NLS2=NL/2 367 : C 368 : C RANGEMENT DES SECONDS MEMBRES VN DANS LES NL PREMIERES 369 : C COMPOSANTES DU VECTEUR BLIAI DE LA NBLI- EME LIAISON 370 : C 370 : CALL ELFBL1(BLIAI,VN(1),NVNLIA,NLS2) 371 : C WRITE(IOIMP,*) ' BLIAI 1 ' 372 : C WRITE(IOIMP,1002) (BLIAI(IJ),IJ=1,NLS2) 373 : C 374 : C CALCUL DE LA RESULTANTE DES NCHAL CHARGEMENTS CONTENUS DANS BCHAR2 375 : C QUI AGISSENT SUR LA NBLI-IEME LIAISON, 376 : C ET RANGEMENT DANS LA DEUXIEME MOITIE DU VECTEUR SECOND MEMBRE BLIAI 377 : C A L'AIDE DU TABLEAU IBCHA 378 : C 379 : NCHAL=IBCHA(/1) 380 : NLS21=NLS2+1 380 : IF(NCHAL.NE.0) CALL ELFBL2(BLIAI(NLS21),BCHAR2,IBCHA,NCHAL,NLS2) 381 : IF(KLIMAS.NE.0) THEN 382 : C 383 : C CALCUL DE L'ACCELERATION DU CENTRE DE GRAVITE DE L'ELEMENT DE LIAISON 384 : C 385 : MLIMAS=KLIMAS 386 : LIM=NLIMAS(/1) 386 : CALL ELFBL6(BLIAI(NLS21),BLIMAS,ALIMAS,NLIMAS,NLS2,LIM) 387 : ENDIF 388 : C WRITE(IOIMP,*) ' BLIAI 2 ' 389 : C WRITE(IOIMP,1002) (BLIAI(IJ),IJ=NLS21,NL) 390 : C 391 : C MULTIPLICATION ALIAI*BLIAI=XLIAI 392 : C 393 : NBSTLI=NLBLI(/2) 393 : CALL MULMAV(ALIA1,ALIA2,ALIA3,ALIA4,BLIAI,XLIAI,NLS2,NCHAL,NLBLI, 394 : *NBSTLI) 395 : C WRITE(IOIMP,*) ' XLIAI ' 396 : C WRITE(IOIMP,1002) (XLIAI(IJ),IJ=1,NL) 397 : IF(KLIMAS.NE.0) THEN 398 : C 399 : C RANGEMENT DE XLIAI DANS BLIMAS 400 : C 400 : CALL ELFBL5(BLIMAS,XLIAI,NLS2) 401 : ENDIF 402 : C 403 : C RANGEMENT DE XLIAI DANS DNCN 404 : C 404 : CALL ELFBL3(DC(1,NDDNCN),XLIAI,NDCLIA,NL) 405 : C WRITE(IOIMP,*) ' DNCN ' 406 : C WRITE(IOIMP,1002) (DC(IJ,NDDNCN),IJ=1,NIDNCN) 407 : C 408 : IF(IIMPI.EQ.1) THEN 409 : WRITE(IOIMP,1001) NBLI 410 : 1001 FORMAT(//I5,' IEME SECOND MEMBRE BLIAI'//) 411 : WRITE (IOIMP,1002) (BLIAI(L),L=1,NL) 412 : 1002 FORMAT(1X,10(1PE12.5,1X)) 413 : WRITE(IOIMP,1003) 414 : 1003 FORMAT(//' SOLUTION XLIAI'//) 415 : WRITE (IOIMP,1002) (XLIAI(L),L=1,NL) 416 : ENDIF 417 : 60 CONTINUE 418 : C 419 : C 4 - CREATION DU CHAMPOINT SOLUTION A L'INSTANT T 420 : C 421 : IF(NFF.EQ.NFOIS) THEN 422 : NFF=0 423 : NFS=NFS+1 424 : NAT=1 425 : SEGINI MCHPOI 426 : IFOPOI=IFOMOD 427 : JATTRI(1) = 1 428 : SEGINI MSOUPO 429 : IPCHP(1)=MSOUPO 430 : IGEOC=NREMEL 431 : DO 65 I=1,NDDL 432 : NOCOMP(I)= NOMDD(I) 433 : NOCOMP(I + NDDL)= NOMDU(I) 434 : 65 CONTINUE 435 : SEGINI MPOVAL 436 : IPOVAL=MPOVAL 436 : CALL ELFBL4(N,DC(1,NDDNCN),DNORM,PASS,VPOCHA) 437 : SEGDES MPOVAL,MSOUPO,MCHPOI 438 : ISOLEN(NFS)=MCHPOI 438 : C CALL ECCHPO(MCHPOI) 439 : SOLRE(NFS)=T 440 : ENDIF 441 : C 442 : 70 CONTINUE 443 : C 444 : C 5 - SUPPRESSION DES SEGMENTS DE TRAVAIL ET DESACTIVATION 445 : C 446 : SEGDES MSOLRE,MSOLEN 447 : C 448 : SEGSUP VN 449 : C 450 : NSGA=KAB(/1) 451 : DO 80 NSG=1,NSGA 452 : ANBN=KAB(NSG) 453 : SEGSUP ANBN 454 : 80 CONTINUE 455 : NSGD=KDC(/1) 456 : DO 90 NSG=1,NSGD 457 : DNCN=KDC(NSG) 458 : SEGSUP DNCN 459 : 90 CONTINUE 460 : SEGSUP MANBN 461 : SEGSUP MDNCN 462 : C 463 : DO 100 NCH=1,NCHAR 464 : MLREE1=LACHAT(NCH) 465 : MLREE2=LACHAF(NCH) 466 : SEGDES MLREE1 467 : SEGDES MLREE2 468 : 100 CONTINUE 469 : SEGSUP MACHAR 470 : C 471 : DO 110 NBLI=1,NBLIPE 472 : MALIAI=NOMALI(NBLI) 473 : IF(KLIMAS.NE.0) THEN 474 : MLIMAS=KLIMAS 475 : SEGSUP MLIMAS 476 : ENDIF 477 : SEGSUP MALIAI 478 : 110 CONTINUE 479 : ICPR2=KCPR2 480 : SEGSUP ICPR2 481 : SEGSUP MOMALI 482 : C 483 : SEGSUP MNORM 484 : SEGSUP MPASS 485 : ICPR=NRECPR 486 : MCARA=NRECA 487 : SEGSUP ICPR 488 : SEGSUP MCARA 489 : SEGSUP MNREFE 490 : KSOLUT=MSOLUT 491 : WRITE (IOIMP,*) 'FIN DE ELFRES ' 492 : RETURN 493 : END 494 : 495 : 496 :
© Cast3M 2003 - All rights reserved.
Disclaimer