****************************************************************
* CALCUL DES FREQUENCES D UNE POUTRE EN FLEXION ENCASTREE-LIBRE
* SOUMISE A UNE EFFORT DE TRACTION DE 150 N
* (HYP. DE TIMOSHENSKO)
* auteur : X Delaune
****************************************************************
*
opti echo 1 ;
opti trac 'PSC' EPTR 5;
*
*--- Affichage
AFFICH = vrai;
*
*
************************************
* Caracteristiques du systeme *
************************************
*
*--- Materiau
Rhostru = 6550.;
Youstru = 9.8E10;
Nustru = 0.3;
*
*--- Dimensions du crayon
Lstru = 0.5;
Re = 4.75E-3;
Ri = 4.18E-3;
De = 2*Re;
Di = 2*Ri;
*
Sect1 = pi*((Re**2)-(Ri**2));
Inry1 = pi*((De**4)-(Di**4))/64;
lambda = 2.;
*
MESS ' ' ;
MESS 'lambda : ' lambda;
*
Secr1 = Sect1/lambda;
MESS 'Sect1 Secr1 : ' Sect1 Secr1;
*
*
**************************************
* Maillage du systeme *
**************************************
*
NbN = 50;
Mess 'Nombre d elements :' NbN;
Mess ' ';
*
Opti Dime 3 Elem seg2;
*
PA = 0. 0. 0.;
PB = (Lstru) 0. 0.;
L1 = PA D NBN PB;
*
*
Modl1 = Modl L1 MECANIQUE ELASTIQUE ISOTROPE TIMO;
Matr1 = Matr Modl1 Youn Youstru Nu Nustru Rho Rhostru ;
Cara1 = Carb Modl1 'SECT' Sect1 'INRY' Inry1 'INRZ' Inry1
'SECY' Secr1 'SECZ' Secr1 'TORS' (2*Inry1);
Matr1 = Matr1 et Cara1;
Modl2 = Modl L1 MECANIQUE ELASTIQUE ISOTROPE POUT;
Matr2 = Matr Modl2 Youn Youstru Nu Nustru Rho Rhostru ;
Cara2 = Carb Modl2 'SECT' Sect1 'INRY' Inry1 'INRZ' Inry1
'SECY' Secr1 'SECZ' Secr1 'TORS' (2*Inry1);
Matr2 = Matr2 et Cara2;
*
*
**************************************
* Masses, Rigidites ... du systeme *
**************************************
*
*--- Masse
Mstru = Masse Modl1 Matr1;
Mstru2 = Masse Modl2 Matr2;
*
*--- Raideur structurale
Ks = Rigi Modl1 Matr1;
Ks2 = Rigi Modl2 Matr2;
*
*--- Conditions aux limites
* Cl1 = Bloq DEPL ROTA PA;
Cl1 = Bloq UX UY RY RZ PA;
Cl2 = Bloq UZ RX L1;
*
Kstru = Ks et Cl1 et Cl2 ;
Kstru2 = Ks2 et Cl1 et Cl2 ;
*
*--- Raideur géométrique
For1 = FORCE FX (150.) PB ;
* For1 = FORCE FX 0. PB ;
Dep1 = Reso Kstru For1 ;
Sig1 = Sigm Modl1 Matr1 Dep1 ;
*
Rig1 = KSIGMA Modl1 Sig1 Cara1 ;
Kstru = Kstru et Rig1 ;
*
Dep2 = Reso Kstru2 For1 ;
Sig2 = Sigm Modl2 Matr2 Dep2 ;
Rig2 = KSIGMA Modl2 Sig2 Cara2 ;
Kstru2 = Kstru2 et Rig2 ;
*****************************************
* Analyse modale *
*****************************************
*
LisFreqT = PROG 37.24 184.35 489.36 942.76 1541.4
1934.2 2280.0 3152.7 4153.3 5275.0 6511.2 ;
* rem : ces fréquences, (sauf le mode axial à 1934Hz)
* ont été calculé avec le code VITAMINE.
NbMod = 10 ;
Bast = VIBR PROCHE (prog 500.) (lect NbMod) Kstru Mstru 'TBAS';
Bast2 = VIBR PROCHE (prog 500.) (lect NbMod) Kstru2 Mstru2 'TBAS';
*
* AFFICHAGE et VERIFICATION
opti echo 0 ;
prerr = prog ;
prerr1 = prog ;
Si (Affich);
MESS ' ';
MESS '-------------------------------------------';
MESS ' Mode | Frequences (Hz) |';
MESS ' | Reference | TIMO | POUT |';
MESS '-------------------------------------------';
MESS ' ';
Repeter LMod NbMod;
i = &LMod;
frqVITA = extr LisFreqT i;
frqTIMO = Bast . 'MODES' . i . 'FREQUENCE';
frqPOUT = Bast2 . 'MODES' . i . 'FREQUENCE';
totoi = chai ' ' i ' | ' frqVITA
' | ' frqTIMO ' | ' frqPOUT ' | ';
Mess totoi;
prerr = prerr et ((frqTIMO / frqVITA) - 1.);
prerr1 = prerr1 et ((frqPOUT / frqVITA) - 1.);
* ui = Bast . 'MODES' . i . 'DEFORMEE_MODALE';
* TRAC ui (defo L1 ui ) TITRE totoi;
Fin LMod;
Finsi;
*
list prerr;
list prerr1;
* pour info valeur trouvee sur PClinux64 le 14/09/2012 par BP :
* 1 | 3.72400E+01 | 3.72309E+01 | 3.72283E+01 |
* 2 | 1.84350E+02 | 1.84259E+02 | 1.84085E+02 |
* 3 | 4.89360E+02 | 4.88985E+02 | 4.87634E+02 |
* 4 | 9.42760E+02 | 9.41818E+02 | 9.36564E+02 |
* 5 | 1.54140E+03 | 1.53963E+03 | 1.52527E+03 |
* 6 | 1.93420E+03 | 1.93420E+03 | 1.93420E+03 |
* 7 | 2.28000E+03 | 2.27731E+03 | 2.24545E+03 |
* 8 | 3.15270E+03 | 3.14929E+03 | 3.08780E+03 |
* 9 | 4.15330E+03 | 4.14962E+03 | 4.04216E+03 |
* 10 | 5.27500E+03 | 5.27218E+03 | 5.09786E+03 |
* prerr =
* -2.44929E-04 -4.96120E-04 -7.65761E-04 -9.98752E-04 -1.14939E-03 -7.88844E-07 -1.18160E-03 -1.08266E-03 -8.85804E-04 -5.33656E-04
* prerr1 =
* -3.14765E-04 -1.43679E-03 -3.52727E-03 -6.57191E-03 -1.04668E-02 -7.88844E-07 -1.51529E-02 -2.05855E-02 -2.67604E-02 -3.35811E-02
errTIMO = maxi prerr 'ABS' ;
errPOUT = maxi prerr1 'ABS' ;
frqTOL = 5.E-2;
SI ((errTIMO < frqTOL) et (errPOUT < frqTOL));
ERRE 0;
SINON;
ERRE 5;
FINSI;
fin ;
© Cast3M 2003 - All rights reserved.
Disclaimer