5. Exemples#

5.1. Résolution par la méthode directe MULT_FRONT#

  • Constitution de la matrice assemblée et du second membre :

On a calculé auparavant les termes élémentaires KEL, FEL.


NU =NUME_DDL( MATR_RIGI=KEL ) K =ASSE_MATRICE( MATR_ELEM=KEL, NUME_DDL=NU, ) F =ASSE_VECTEUR( MATR_ELEM=FEL, NUME_DDL=NU, )

  • Factorisation:


K =FACTORISER( reuse=K, MATR_ASSE=K, METHODE=”MULT_FRONT”,)

  • Résolution:


U =RESOUDRE( MATR=K, CHAM_NO=F,)

  • pour l’utilisation des charges cinématiques (avec élimination des degrés de liberté imposés), voir l’exemple donné dans la commande AFFE_CHAR_CINE [U4.44.03].

5.2. Résolution par la méthode MUMPS#

NU        =    NUME_DDL( MATR_RIGI= KEL)


K        =    ASSE_MATRICE    (    MATR_ELEM= KEL, NUME_DDL= NU)

F        =    ASSE_VECTEUR    (    VECT_ELEM= FEL, NUME_DDL= NU )

K        =    FACTORISER    (    reuse= K, MATR_ASSE= K, METHODE= 'MUMPS' )

dep        =    RESOUDRE        (    CHAM_NO = F    ,    MATR= K)

5.3. Résolution par la méthode du gradient conjugué pré conditionné#

NU        =    NUME_DDL( MATR_RIGI= KEL)


K        =    ASSE_MATRICE    (    MATR_ELEM= KEL, NUME_DDL= NU )

F        =    ASSE_VECTEUR    (    VECT_ELEM= FEL, NUME_DDL= NU )

KPREC    =    FACTORISER    (    MATR_ASSE= K, METHODE= 'GCPC',

PRE_COND=”LDLT_INC” )

dep = RESOUDRE ( CHAM_NO = F , MATR= K, MATR_PREC= KPREC,

NMAX_ITER= 1000 , RESI_RELA= 1e-07 )

5.4. Résolution par la méthode PETSC#

NU        =    NUME_DDL( MATR_RIGI= KEL)


K        =    ASSE_MATRICE    (    MATR_ELEM= KEL, NUME_DDL= NU )

F        =    ASSE_VECTEUR    (    VECT_ELEM= FEL, NUME_DDL= NU )

K        =    FACTORISER    (    reuse=K, MATR_ASSE= K, METHODE= 'PETSC')

dep        =    RESOUDRE        (    CHAM_NO = F    ,    MATR= K, MATR_PREC= K,

ALGORITHME=”GMRES”, NMAX_ITER= 1000 , RESI_RELA= 1e-07)