* fichier : vibr6.dgibi ************************************************************************ ************************************************************************ ********************************************************************** * * * Mots-clés : Vibrations, calcul modal, modes complexes, * * interaction fluide-structure, instabilite , tuyau, 3D * * * * TEST : VIBR6 * * * * Modele de PAIDOUSSIS & ORTOJA-STARZEWSKI * * * * On recherche ici les modes propres complexes * * d'un arbre soumis a un ecoulement * * Arbre soumis a un ecoulement exterieur axial permanent * * Conditions aux limites : articule - articule * * * ********************************************************************** ************************************ * OPTIONS * ************************************ * SI GRAPH = N PAS DE GRAPHIQUE AFFICHE GRAPH = 'N' ; ************************************ * Caracteristiques du systeme * ************************************ *--- Materiau Rhostru = 4000.; Youstru = 1.E10; Nustru = 0.; *--- Longueur du crayon Lstru = 2.; *--- Rayon du crayon R = 10.E-3; *--- Section du crayon Sstru = PI*R*R; *--- Masse lineique du crayon Mstru = Rhostru*Sstru; *--- Masse volumique du fluide Rhof = 1000.; *--- Masse ajoutee du fluide (fluide non confine) Mfaj = Rhof*PI*R*R; *--- Masse volumique equivalente Rhoe = (Mstru+Mfaj)/Sstru; *--- Vitesse axiale du fluide Vmin = 0.; Vmax = 120.; PVa = 1.; * * ************************************** * Maillage du systeme * ************************************** * NbN = 100; Mess 'Nombre de noeuds :' NbN; Mess ' '; PA = (-.5*Lstru) 0. 0.; PB = (.5*Lstru) 0. 0.; * * ************************************** * Masses, Rigidites ... du systeme * ************************************** * *--- Masse Mstru = Masse Modl1 Matr1; *--- Raideur structrale *--- Conditions aux limites : Probleme plan * Kstru = Kstru et Cl1 et Cl2 et Cl3 et Cl4 et CL5; * *********************************** * Rigidites supplementaires * *********************************** * Lpout = Lstru/NbN; * *--- Amortissement du a l'écoulement * *--- Raideur due a l'ecoulement * * ***************************************** * Analyse modale * ***************************************** * * Basm = Basr.'MODES'; SI (NEG GRAPH 'N'); Mess ' '; Mess 'Fluide a l arret'; Repeter LMod Nbmod; i=&LMod; Fin LMod; Mess ' '; Mess ' '; Mess ' '; Finsi; * ***************************************** * Mise en forme du tableau de resultats * ***************************************** * Mod = Table; Mod.Reel = Table; Mod.Imag = Table; Repeter Bloc6 (2*Nbmod); i=&Bloc6; Fin Bloc6; * ***************************************** * Projection des matrices * ***************************************** * *--- Matrice masse *--- Matrices amortissement *--- Matrices de raideur * *--- Reperage de la vitesse critique VSauv = 'N'; * ===================================== * * Boucle sur la vitesse axiale * * ===================================== * * k=&Bloc10; SI (NEG GRAPH 'N'); Mess 'Iteration' k; Mess 'Vitesse axiale : ' Va ; Mess ' '; Finsi; * ****************************************** * Masses, rigidites ... * ****************************************** * *---- Amortissement At = (2*Mfaj*Va*Afp); *---- Rigidite Kt = (Ksp) et ((Mfaj*Va*Va)*Kfp); * ****************************************** * Calcul des modes complexes * ****************************************** * Basm = Basc.'MODES'; * *--- Extraction des frequences Repeter Bloc2 (2*Nbmod); i=&Bloc2; Modn = Basm.i; f = Modn.'FREQUENCE_REELLE'; * Si (>EG f 0.); * Finsi; Fin bloc2; * *--- Tri croissant des frequences Repeter Bloc3 (n1-1); i=&Bloc3+1; Pos = 1; Repeter Bloc4 n2; j = &Bloc4; Si (> f f1); Pos = Pos + 1; Finsi; Fin Bloc4; Fin Bloc3; *--- Sauvegarde Repeter Bloc5 n1; i=&Bloc5; Msg = 'STAB.'; Si ((< if -1.D-10) et (>EG f 0.) et (f < 1e-5 ) ); Msg = 'INST.'; Si (EGA VSauv 'N'); Vcrit = Va - (PVa/2.); VSauv = 'O'; Finsi; Finsi; Si (> f 0.); *--- Valeurs propres relatives a lambda = i omega = ix2PIxf Sinon; Si (EGA f 0.); Finsi; Finsi; Fin Bloc5; SI (NEG GRAPH 'N'); Mess ' '; Finsi; * Fin Bloc10; * ********************************** * Traces * ********************************** * * SI (NEG GRAPH 'N'); * Nbcour=2*Nbmod; Tab1 = Table; Repeter Ident1 Nbcour; k=&Ident1; Tab1.k = 'NOLI'; Fin Ident1; * k=1; *--- Traces relatifs a la frequence *--- Traces relatifs a lambda = i 2 Pi f Repeter Trac1 (Nbcour-1); k=&Trac1+1; Finsi; Fin Trac1; Finsi; * ********************************** * Test de bon fonctionnement * ********************************** * Vth = (Pi/Lstru)*((Youstru*Pi*(R**4)/(4*mfaj))**0.5); *Mess 'Erreur : ' (Abs((Vcrit-Vth)/Vth)); Si (Abs((Vcrit - 25.)/25.) < 0.05); Sinon; Finsi; * FIN;
© Cast3M 2003 - Tous droits réservés.
Mentions légales