triang
C TRIANG SOURCE MB234859 26/07/30 21:15:09 12609 C======================================================================= C ASSEMBLE LES PETITES MATRICES RIGIDITE ET LES MET SOUS LA FORME C Lt.D.L. C ICHOLE EST LE POINTEUR DE LA MATRICE RESULTANTE C C IGRADJ : 0 si Factorisation de Choleski (solveur direct) C 1 si Factorisation incomplete de Choleski (solveur indirect) C======================================================================= C IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) C -INC SMRIGID -INC PPARAM -INC CCOPTIO -INC SMMATRI C IF(IIMPI.EQ.1)THEN CALL GIBTEM(XKT) INTERR(1)=INT(XKT) WRITE(IOIMP,10) 10 FORMAT(' L''IMPRESSION PRECEDENTE EST AVANT ASSEM1 ') ENDIF C IF(IERR.NE.0) GOTO 5000 C IF(IIMPI.EQ.1)THEN CALL GIBTEM(XKT) INTERR(1)=INT(XKT) WRITE(IOIMP,11) 11 FORMAT(' L''IMPRESSION PRECEDENTE EST AVANT ASSEM2') ENDIF C IF(IERR.NE.0) GOTO 5000 C IF(IIMPI.EQ.1)THEN CALL GIBTEM(XKT) INTERR(1)=INT(XKT) WRITE(IOIMP,12) 12 FORMAT(' L''IMPRESSION PRECEDENTE EST AVANT SHOLE ') ENDIF C C Sauvegarde de la matrice assemblee sous forme creuse IF(IERR.NE.0) GOTO 5000 C MMATRI=MMATRX SEGACT,MMATRI*MOD MMATRI.MFACT=IGRADJ SEGDES,MMATRI C nbnnma=0 nligra=0 xmatri=0 C CALL SHOLE(MMATRX,PREC,istab,nbnnma,nligra,xmatri,0) CC CALL CHOLE(MMATRX,PREC,istab,nbnnma,nligra,xmatri) IF(IERR.NE.0) GOTO 5000 C IF(IIMPI.EQ.1)THEN CALL GIBTEM(XKT) INTERR(1)=INT(XKT) WRITE(IOIMP,13) 13 FORMAT(' L''IMPRESSION PRECEDENTE EST APRES SHOLE') ENDIF C MRIGID=KRIGI SEGACT,MRIGID*MOD ICHOLE=MMATRX SEGDES MRIGID C 5000 CONTINUE RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales