Modal Analysis of the Piston
- JMB
- Topic Author
- Visitor
-
19 years 1 month ago #327
by JMB
Modal Analysis of the Piston was created by JMB
Hello,
I am trying to do a modal analysis of the piston shown in the tutorial. I tried using a modified version of the comm file (ModalAnalysis3D.comm) from helpers.tar.gz. But the analysis will not run (See below).
My questions (about ModalAnalysis3D.comm) are:
1. Why is the fixed boundary condition needed in modal analysis? (Modal Analysis is not like Stress Analysis...)
i.e:
BCnd=AFFE_CHAR_MECA(MODELE=FEMLin,
DDL_IMPO=_F(GROUP_NO='EncastrNod',
DX=0.0,
DY=0.0,
DZ=0.0,),);
2. Has anybody performed a modal analysis on the piston and has a .comm file. Could it be posted here for this Code-Aster novice?
My PistonModalAnalysis3D.comm is attached below too.
Thanks
JMB
=========================================================
#
# COMMANDE NO : 0007 CONCEPT DE TYPE :
#
FIN(RETASSAGE='NON',
INFO_RESU='OUI',
FORMAT_HDF='NON',
UNITE=6,
PERFORMANCE='OUI',
);
< >
NOM DE LA BASE : >GLOBALE <
NOMBRE D'ENREGISTREMENTS UTILISES : 17
NOMBRE D'ENREGISTREMENTS MAXIMUM : 31457
LONGUEUR D'ENREGISTREMENT (OCTETS): 409600
NOMBRE TOTAL D'ENTREES/SORTIES : 15
NOMBRE D'IDENTIFICATEURS UTILISES : 205
TAILLE MAXIMUM DU REPERTOIRE : 2000
TAUX D'UTILISATION DU REPERTOIRE %: 10
< >
NOM DE LA BASE : >VOLATILE<
NOMBRE D'ENREGISTREMENTS UTILISES : 2
NOMBRE D'ENREGISTREMENTS MAXIMUM : 31457
LONGUEUR D'ENREGISTREMENT (OCTETS): 409600
NOMBRE TOTAL D'ENTREES/SORTIES : 2
NOMBRE D'IDENTIFICATEURS UTILISES : 123
TAILLE MAXIMUM DU REPERTOIRE : 2000
TAUX D'UTILISATION DU REPERTOIRE %: 6
FIN D'EXECUTION LE : LU-01-MAI -2006 13:15:27
JDC.py : ERREUR A L'EXECUTION - INTERRUPTION
>> JDC.py : DEBUT RAPPORT
CR d'execution de JDC en MIXTE
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Exception utilisateur levee mais pas interceptee. !
! Les bases sont fermees. !
! error : LE GROUP_NO DispSurf NE FAIT PAS PARTIE !
! DU... !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
fin CR d'execution de JDC en MIXTE
>> JDC.py : FIN RAPPORT
Code_Aster run ended, diagnostic : _ERROR
Content of /tmp/interactif.14174 after execution
===========================================================
#Modal Analysis with 3D linear solid elements
#
#template by J.Cugnoni, CAELinux.com, 2005
#
DEBUT();
#Read MED MESH File
#
#First command LIRE_MAILLAGE is used to read the MED mesh file generated by Salome.
#
#To Do:
#Enter the name of your Salome Mesh in b_format_med->NOM_MED
#
#
MeshLin=LIRE_MAILLAGE(UNITE=20,
FORMAT='MED',
NOM_MED='Mesh_1',
INFO_MED=1,);
#Assigns a physical model to geometric entities.
#
#Here we assume that all the geometric entities (TOUT=OUI) are used for mechanical simulation (PHENOMENE=MECANIQUE) with 3D solid elements.
#
#To Do (Optional):
#you can assign other physics or element types (like shells for example) to some of the elements by replacing TOUT=OUI in AFFE with GROUP_MA = TheElementGroupYouWantToModel
#
#
#
#
#
#
FEMLin=AFFE_MODELE(MAILLAGE=MeshLin,
AFFE=_F(TOUT='OUI',
PHENOMENE='MECANIQUE',
MODELISATION='3D',),);
#Material properties
#
#To Do:
#Enter your material properties in this section
#if necessary Copy/Paste the DEFI_MATERIAU command to add a second material
Steel=DEFI_MATERIAU(ELAS=_F(E=2.1e11,
NU=0.27,
RHO=7800.0,),);
#Assigns a physical model
#
#In this second AFFE_MODEL command, we assign once again physical models and finite element types to geometrical entities. But this time the generated model is based on quadratic elements and the solution will be computed from this FE model.
#
#To Do (optional):
#you can assign other physics or element types to element groups by replacing the option TOUT=OUI by the option GROUP_MA=OneElementGroup
#Material assignment
#
#TO DO:
#If you need more than one material, you need to enter pairs of element group materials by duplicating the AFFE option.
Mat=AFFE_MATERIAU(MAILLAGE=MeshLin,
MODELE=FEMLin,
AFFE=_F(TOUT='OUI',
MATER=Steel,),);
#Boundary conditions
#
#This section defines the boundary conditions of the FEA, use DDL_IMPO on selected groups to impose displacements to selected groups
#
#To Do:
#for each boundary conditions, you need to choose the appropriate option, for example DDL_IMPO for imposed displacements, and assign this option to a selected region of the mesh by using the GROUP_NO option for a node group or the GROUP_MA for face / volume groups.
BCnd=AFFE_CHAR_MECA(MODELE=FEMLin,
DDL_IMPO=_F(GROUP_NO='DispSurf',
DX=0.0,
DY=0.0,
DZ=0.0,),);
#Assembling FE matrices
MACRO_MATR_ASSE(MODELE=FEMLin,
CHAM_MATER=Mat,
CHARGE=BCnd,
NUME_DDL=CO('numdof'),
MATR_ASSE=(_F(MATRICE=CO('Kmat'),
OPTION='RIGI_MECA',),
_F(MATRICE=CO('Mmat'),
OPTION='MASS_MECA',),),);
#Finite Element Solution
#
#Based on ARPACK the eigensolver of Code_Aster has numerous options, but here we are focussing on the extraction of the N lowest eigen frequencies and the associated modes.
#
#To Do:
#Enter the number of modes that you want to extract in b_dynam->CALC_FREQ->b_plus_petite->NMAX_FREQ
Solution=MODE_ITER_SIMULT(MATR_A=Kmat,
MATR_B=Mmat,
CALC_FREQ=_F(
OPTION='PLUS_PETITE',
NMAX_FREQ=20,
NMAX_ITER_SHIFT=50,),);
#Write Results to MED file
IMPR_RESU(MODELE=FEMLin,
FORMAT='MED',
UNITE=80,
RESU=_F(MAILLAGE=MeshLin,
RESULTAT=Solution,
NOM_CHAM='DEPL',
NOM_CMP=('DX','DY','DZ',),),);
FIN(FORMAT_HDF='OUI',);
I am trying to do a modal analysis of the piston shown in the tutorial. I tried using a modified version of the comm file (ModalAnalysis3D.comm) from helpers.tar.gz. But the analysis will not run (See below).
My questions (about ModalAnalysis3D.comm) are:
1. Why is the fixed boundary condition needed in modal analysis? (Modal Analysis is not like Stress Analysis...)
i.e:
BCnd=AFFE_CHAR_MECA(MODELE=FEMLin,
DDL_IMPO=_F(GROUP_NO='EncastrNod',
DX=0.0,
DY=0.0,
DZ=0.0,),);
2. Has anybody performed a modal analysis on the piston and has a .comm file. Could it be posted here for this Code-Aster novice?
My PistonModalAnalysis3D.comm is attached below too.
Thanks
JMB
=========================================================
#
# COMMANDE NO : 0007 CONCEPT DE TYPE :
#
FIN(RETASSAGE='NON',
INFO_RESU='OUI',
FORMAT_HDF='NON',
UNITE=6,
PERFORMANCE='OUI',
);
< >
NOM DE LA BASE : >GLOBALE <
NOMBRE D'ENREGISTREMENTS UTILISES : 17
NOMBRE D'ENREGISTREMENTS MAXIMUM : 31457
LONGUEUR D'ENREGISTREMENT (OCTETS): 409600
NOMBRE TOTAL D'ENTREES/SORTIES : 15
NOMBRE D'IDENTIFICATEURS UTILISES : 205
TAILLE MAXIMUM DU REPERTOIRE : 2000
TAUX D'UTILISATION DU REPERTOIRE %: 10
< >
NOM DE LA BASE : >VOLATILE<
NOMBRE D'ENREGISTREMENTS UTILISES : 2
NOMBRE D'ENREGISTREMENTS MAXIMUM : 31457
LONGUEUR D'ENREGISTREMENT (OCTETS): 409600
NOMBRE TOTAL D'ENTREES/SORTIES : 2
NOMBRE D'IDENTIFICATEURS UTILISES : 123
TAILLE MAXIMUM DU REPERTOIRE : 2000
TAUX D'UTILISATION DU REPERTOIRE %: 6
FIN D'EXECUTION LE : LU-01-MAI -2006 13:15:27
JDC.py : ERREUR A L'EXECUTION - INTERRUPTION
>> JDC.py : DEBUT RAPPORT
CR d'execution de JDC en MIXTE
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Exception utilisateur levee mais pas interceptee. !
! Les bases sont fermees. !
! error : LE GROUP_NO DispSurf NE FAIT PAS PARTIE !
! DU... !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
fin CR d'execution de JDC en MIXTE
>> JDC.py : FIN RAPPORT
Code_Aster run ended, diagnostic : _ERROR
Content of /tmp/interactif.14174 after execution
===========================================================
#Modal Analysis with 3D linear solid elements
#
#template by J.Cugnoni, CAELinux.com, 2005
#
DEBUT();
#Read MED MESH File
#
#First command LIRE_MAILLAGE is used to read the MED mesh file generated by Salome.
#
#To Do:
#Enter the name of your Salome Mesh in b_format_med->NOM_MED
#
#
MeshLin=LIRE_MAILLAGE(UNITE=20,
FORMAT='MED',
NOM_MED='Mesh_1',
INFO_MED=1,);
#Assigns a physical model to geometric entities.
#
#Here we assume that all the geometric entities (TOUT=OUI) are used for mechanical simulation (PHENOMENE=MECANIQUE) with 3D solid elements.
#
#To Do (Optional):
#you can assign other physics or element types (like shells for example) to some of the elements by replacing TOUT=OUI in AFFE with GROUP_MA = TheElementGroupYouWantToModel
#
#
#
#
#
#
FEMLin=AFFE_MODELE(MAILLAGE=MeshLin,
AFFE=_F(TOUT='OUI',
PHENOMENE='MECANIQUE',
MODELISATION='3D',),);
#Material properties
#
#To Do:
#Enter your material properties in this section
#if necessary Copy/Paste the DEFI_MATERIAU command to add a second material
Steel=DEFI_MATERIAU(ELAS=_F(E=2.1e11,
NU=0.27,
RHO=7800.0,),);
#Assigns a physical model
#
#In this second AFFE_MODEL command, we assign once again physical models and finite element types to geometrical entities. But this time the generated model is based on quadratic elements and the solution will be computed from this FE model.
#
#To Do (optional):
#you can assign other physics or element types to element groups by replacing the option TOUT=OUI by the option GROUP_MA=OneElementGroup
#Material assignment
#
#TO DO:
#If you need more than one material, you need to enter pairs of element group materials by duplicating the AFFE option.
Mat=AFFE_MATERIAU(MAILLAGE=MeshLin,
MODELE=FEMLin,
AFFE=_F(TOUT='OUI',
MATER=Steel,),);
#Boundary conditions
#
#This section defines the boundary conditions of the FEA, use DDL_IMPO on selected groups to impose displacements to selected groups
#
#To Do:
#for each boundary conditions, you need to choose the appropriate option, for example DDL_IMPO for imposed displacements, and assign this option to a selected region of the mesh by using the GROUP_NO option for a node group or the GROUP_MA for face / volume groups.
BCnd=AFFE_CHAR_MECA(MODELE=FEMLin,
DDL_IMPO=_F(GROUP_NO='DispSurf',
DX=0.0,
DY=0.0,
DZ=0.0,),);
#Assembling FE matrices
MACRO_MATR_ASSE(MODELE=FEMLin,
CHAM_MATER=Mat,
CHARGE=BCnd,
NUME_DDL=CO('numdof'),
MATR_ASSE=(_F(MATRICE=CO('Kmat'),
OPTION='RIGI_MECA',),
_F(MATRICE=CO('Mmat'),
OPTION='MASS_MECA',),),);
#Finite Element Solution
#
#Based on ARPACK the eigensolver of Code_Aster has numerous options, but here we are focussing on the extraction of the N lowest eigen frequencies and the associated modes.
#
#To Do:
#Enter the number of modes that you want to extract in b_dynam->CALC_FREQ->b_plus_petite->NMAX_FREQ
Solution=MODE_ITER_SIMULT(MATR_A=Kmat,
MATR_B=Mmat,
CALC_FREQ=_F(
OPTION='PLUS_PETITE',
NMAX_FREQ=20,
NMAX_ITER_SHIFT=50,),);
#Write Results to MED file
IMPR_RESU(MODELE=FEMLin,
FORMAT='MED',
UNITE=80,
RESU=_F(MAILLAGE=MeshLin,
RESULTAT=Solution,
NOM_CHAM='DEPL',
NOM_CMP=('DX','DY','DZ',),),);
FIN(FORMAT_HDF='OUI',);
Moderators: catux
Time to create page: 0.106 seconds