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)