Code Aster
Code Aster
Code Aster
Version default
Date : 29/04/2009 Page : 1/10 Cl : U2.08.04 Rvision : 1145
Code_Aster
Titre : Notice de calcul au flambage Responsable : Nicolas GREFFET
Version default
Date : 29/04/2009 Page : 2/10 Cl : U2.08.04 Rvision : 1145
K K x=0 K x= K g x
avec :
K : matrice de rigidit K g : matrice de rigidit gomtrique : valeur propre= avec coefficient multiplicateur du chargement
La rigidit matrielle (ou lastique) se calcule avec loption RIGI_MECA de CALC_MATR_ELEM. La rigidit gomtrique se calcule partir du champ de contrainte solution du problme linaire (option RIGI_GEOM de CALC_MATR_ELEM). Il faut donc avoir effectu un calcul linaire statique pralablement lutilisation de MODE_ITER_SIMULT pour le flambement. Si le chargement est compos dune partie fixe (non pilote) et dune partie variable, le coefficient multiplicateur du chargement ne doit, bien sr, porter que sur la partie variable. La contribution de lautre partie du chargement se retrouve dans le premier membre. Notons f c le chargement fixe et f v le chargement pilot (proportionnel ). Le problme aux valeurs propres devient :
K K g f c f v x=0 K K g f c x= K g f v x
avec :
K: K g f c : K g f v : :
matrice de rigidit matrielle matrice de rigidit gomtrique pour le chargement non pilot matrice de rigidit gomtrique pour le chargement variable valeur propre=
Dans ce cas, il faut donc rsoudre deux problmes lastiques linaires pralables, pour pouvoir calculer les deux matrices de rigidit gomtriques diffrentes. Afin dtre exhaustif, la prsentation portera sur une structure soumise des dplacements imposs ainsi que des efforts, qui seront la combinaison dun chargement fixe et dun chargement variable que lon pilotera avec un coefficient croissant pouvant conduire au flambage.
Manuel d'utilisation
Code_Aster
Titre : Notice de calcul au flambage Responsable : Nicolas GREFFET
Version default
Date : 29/04/2009 Page : 3/10 Cl : U2.08.04 Rvision : 1145
1.1
Code_Aster
Titre : Notice de calcul au flambage Responsable : Nicolas GREFFET
Version default
Date : 29/04/2009 Page : 4/10 Cl : U2.08.04 Rvision : 1145
On calcule, de mme, la matrice de raideur gomtrique pour le chargement constant (PESA et PRESPH), partir de RESC12P1 : SIGC12P1 = CREA_CHAMP ( TYPE_CHAM = 'ELGA_SIEF_R' , OPERATION = 'EXTR' , RESULTAT = RESC12P1 , NOM_CHAM = 'SIEF_ELGA_DEPL' , TYPE_MAXI = 'MINI' , TYPE_RESU = 'VALE' , ) # REGC12P1 = CALC_MATR_ELEM ( OPTION = 'RIGI_GEOM' , MODELE = MODELE , CARA_ELEM = CARAELEM , SIEF_ELGA = SIGC12P1 , ) Il reste calculer la matrice de rigidit matrielle pour le chargement total : REMEP1 = CALC_MATR_ELEM ( OPTION = 'RIGI_MECA' , MODELE = MODELE , CHAM_MATER = CHMAT , CARA_ELEM = CARAELEM , CHARGE = ( CONDLIM , PESA , PRESPH , PRESPS1 , ) , ) Toutes les matrices lmentaires sont calcules, ltape suivante est donc leur assemblage : NUP1 = NUME_DDL ( MATR_RIGI = REMEP1 , ) # RAMC1P1 = ASSE_MATRICE ( MATR_ELEM = REMEP1 , NUME_DDL = NUP1 , ) # RAGEP1 = ASSE_MATRICE ( MATR_ELEM = REGC11P1 , NUME_DDL = NUP1 , ) # RAGC12P1 = ASSE_MATRICE ( MATR_ELEM = REGC12P1 , NUME_DDL = NUP1 , ) On somme ensuite les matrices de rigidit matrielle (RAMC1P1) et gomtrique (RAGC12P1) correspondant au cas de chargement constant : RAMEP1 = COMB_MATR_ASSE ( COMB_R = ( _F( MATR_ASSE = RAMC1P1 , COEF_R = 1.0 , ) , _F( MATR_ASSE = RAGC12P1 , COEF_R = 1.0 , ) , ) , ) Les deux matrices ncessaires au calcul des modes de flambement sont donc construites.
Manuel d'utilisation
Code_Aster
Titre : Notice de calcul au flambage Responsable : Nicolas GREFFET
Version default
Date : 29/04/2009 Page : 5/10 Cl : U2.08.04 Rvision : 1145
1.2
Une fois lintervalle de recherche de charge critique de flambage choisi, on peut alors mettre en uvre MODE_ITER_SIMULT comme suit : MODP1 = MODE_ITER_SIMULT ( MATR_A = RAMEP1 , MATR_B = RAGEP1 , TYPE_RESU = 'MODE_FLAMB' , CALC_FREQ = _F( OPTION = 'BANDE' , CHAR_CRIT = ( -2.4 ,-2.2 , ) , DIM_SOUS_ESPACE = 80 , NMAX_ITER_SOREN = 80 , ) , ) Remarque Si lalgorithme ne converge pas ou si le nombre de modes nest pas celui prdit par IMPR_STURM , il peut tre utile daugmenter les valeurs de DIM_SOUS_ESPACE et NMAX_ITER_SOREN . On norme les modes [bib6], uniquement en se servant des degrs de libert de translation : MODP1 = NORM_MODE ( reuse = MODP1 MODE = MODP1 , NORME = 'TRAN' , ) Les modes peuvent ensuite tre post-traits. Remarques Il est indispensable de vrifier que la raideur gomtrique du modle choisi est bien une option disponible dans Code_Aster (par exemple, ce nest pas le cas des DKT). Une discrtisation plus fine conduit normalement une baisse des charges critiques. La discrtisation doit tre apte capter les modes de flambement, sachant que ces modes peuvent engendrer des dformations localises (plis). Le calcul pralable des modes dynamiques peut constituer une premire indication sur la qualit du maillage, bien que ces modes puissent tre trs diffrents des modes de flambement. Les charges critiques des diffrents modes sont proportionnelles au module dYoung E.
Code_Aster
Titre : Notice de calcul au flambage Responsable : Nicolas GREFFET
Version default
Date : 29/04/2009 Page : 6/10 Cl : U2.08.04 Rvision : 1145
Manuel d'utilisation
Code_Aster
Titre : Notice de calcul au flambage Responsable : Nicolas GREFFET
Version default
Date : 29/04/2009 Page : 7/10 Cl : U2.08.04 Rvision : 1145
Voici un exemple dutilisation de STAT_NON_LINE pour un calcul lastoplastique en grands dplacements ([bib4] pour les lments employs, qui sont de type coques volumiques), avec pilotage en efforts : RESU = STAT_NON_LINE ( MODELE = MODELE , CHAM_MATER = CHMAT , CARA_ELEM = CARAELEM , EXCIT = ( _F( CHARGE = CONDLIM , TYPE_CHARGE = 'FIXE_CSTE' , ) , _F( CHARGE = PESA , TYPE_CHARGE = 'FIXE_CSTE' , ) , _F( CHARGE = PRESPH , FONC_MULT = FONCMUL2 , TYPE_CHARGE = 'SUIV' , ) , _F( CHARGE = PRESPS1 , FONC_MULT = FONCMUL , TYPE_CHARGE = 'SUIV' , ) , ) , COMP_INCR = ( _F( RELATION = 'VMIS_ISOT_TRAC' , DEFORMATION = 'GREEN_GR' , GROUP_MA = ( 'VIROLE' , 'TOIT' , 'ANNEAUX' , 'SGOU') , ) , ) , COMP_ELAS = _F( RELATION = 'ELAS' , DEFORMATION = 'GREEN_GR' , GROUP_MA = 'LTIGE' , ) , INCREMENT = _F( LIST_INST = L_INST1 , NUME_INST_FIN = 14 , SUBD_PAS = 4 , SUBD_PAS_MINI = 1.E-9 , ) , NEWTON = _F( REAC_INCR = 1 , PREDICTION = 'TANGENTE' , MATRICE = 'TANGENTE' , REAC_ITER = 1 , ) , CONVERGENCE = _F( RESI_GLOB_RELA = 1.E-06 , ITER_GLOB_MAXI = 40 , ARRET = 'OUI' , ) , SOLVEUR = _F( METHODE = 'MULT_FRONT' , RENUM = 'METIS' , ) , ) Remarques On utilise la matrice tangente ractualise chaque calcul, en autorisant le sousdcoupage du pas de charge. Les pressions imposes sont des efforts suiveurs ( TYPE_CHARGE='SUIV' ). Dans le cas dune modlisation en lments massifs, le tenseur de dformation recommand en grands dplacements est SIMO_MIEHE .
Code_Aster
Titre : Notice de calcul au flambage Responsable : Nicolas GREFFET
Version default
Date : 29/04/2009 Page : 8/10 Cl : U2.08.04 Rvision : 1145
Si on veut remplacer le pilotage en effort par une mthode par longueur darc, il suffit dcrire : RESU = STAT_NON_LINE ( MODELE = MODELE , CHAM_MATER = CHMAT , CARA_ELEM = CARAELEM , EXCIT = ( _F( CHARGE = CONDLIM , TYPE_CHARGE = 'FIXE_CSTE' , ) , _F( CHARGE = PESA , TYPE_CHARGE = 'FIXE_CSTE' , ) , _F( CHARGE = PRESPH , FONC_MULT = FONCMUL2 , TYPE_CHARGE = 'SUIV' , ) , _F( CHARGE = PRESPS1 , TYPE_CHARGE = 'FIXE_PILO' , ) , ) , COMP_INCR = ( _F( RELATION = 'VMIS_ISOT_TRAC' , DEFORMATION = 'GREEN_GR' , GROUP_MA = ( 'VIROLE' , 'TOIT' , 'ANNEAUX' , 'SGOU') , ) , ) , COMP_ELAS = _F( RELATION = 'ELAS' , DEFORMATION = 'GREEN_GR' , GROUP_MA = 'LTIGE' , ) , INCREMENT = _F( LIST_INST = L_INST1 , NUME_INST_FIN = 14 , SUBD_PAS = 4 , SUBD_PAS_MINI = 1.E-9 , ) , NEWTON = _F( REAC_INCR = 1 , PREDICTION = 'TANGENTE' , MATRICE = 'TANGENTE' , REAC_ITER = 1 , ) , CONVERGENCE = _F( RESI_GLOB_RELA = 1.E-06 , ITER_GLOB_MAXI = 40 , ARRET = 'OUI' , ) , PILOTAGE = _F( GROUP_NO = 'G' , TYPE = 'LONG_ARC' , NOM_CMP = ( 'DY' , ) , COEF_MULT = 7. ) , ) Remarques Dans Code_Aster, on ne peut pas piloter de forces suiveuses. Pour le pilotage par longueur darc, il est, en gnral, recommand que GROUP_NO contienne toute la structure.
Manuel d'utilisation
Code_Aster
Titre : Notice de calcul au flambage Responsable : Nicolas GREFFET
Version default
Date : 29/04/2009 Page : 9/10 Cl : U2.08.04 Rvision : 1145
Pour finir, citons deux articles de Crisfield qui donnent une bonne vision gnrale des problmes et mthodes lis aux calculs non linaires pouvant prsenter divers types dinstabilits ([bib15] et [bib11]). Quelques cas-tests de Code_Aster traitant du flambage : Modes dEuler : sdls504 sdls505 ssll103 ssll105 ssll403 ssll404 ssls110 Modes dEuler et calcul non linaire : ssnl123 Calcul non linaire : ssnl502 ssnp305 : calcul jusqu' un snap-through
Code_Aster
Titre : Notice de calcul au flambage Responsable : Nicolas GREFFET
Version default
Date : 29/04/2009 Page : 10/10 Cl : U2.08.04 Rvision : 1145
Bibliographie
1) 2) 3) 4) 5) 6) 7) 8) 9) Efforts extrieurs de pression en grands dplacements [R3.03.04]. Pression suiveuse pour les lments de coques volumiques [R3.03.07]. Elments finis de coques volumiques [R3.07.04]. Elments de coques volumiques en non linaire gomtrique [R3.07.05]. Algorithme de rsolution pour le problme gnralis [R5.01.01]. Paramtres modaux et norme des vecteurs propres [R5.01.03]. Algorithme non linaire quasi statique [R5.03.01]. Intgration des relations de comportement lasto-plastique de Von Mises [R5.03.02]. Mthodes de pilotage du chargement [R5.03.80].
10) Mthode multifrontale [R6.02.02]. 11) M.A. Crisfield, G. Jelenic, Y. Mi, H.-G. ZhongG & Z. Fan : Some aspects of the non-linear finite element method, Finite Elements in Analysis and Design, Vol. 27, 19-40, 1997. 12) M.A. Crisfield : A fast incremental iterative solution procedure that handles snap through, Computers & Structures, Vol. 13, 55-62, 1981. 13) H.-B. Hellweg & M.A. Crisfield : A new arc-length method for handling sharp snap-backs, Computers & Structures, Vol. 66, 705-709, 1998. 14) E. Riks, C.C. Rankin & F.A. Brogan : On the solution of mode jumping phenomena in thinwalled shell structures , Comp. Meth. In Applied Mech. And Engrg., Vol. 1367, 59-92, 1996. 15) J. Shi & M.A. Crisfield : Combining arc-length and line searches in path-following , Comm. Numer. Meth. Engrg, Vol. 11, 793-803, 1995.
Manuel d'utilisation