본문 바로가기

유한요소 해석/구조 해석

Code aster 코드 예시

메뉴얼 : 6.4. [U4.22.01] : Operator DEFI_GROUP (DEFINE_GROUP) — Code-Aster v14 0.1 documentation (biba1632.gitlab.io)

 

6.4. [U4.22.01] : Operator DEFI_GROUP (DEFINE_GROUP) — Code-Aster v14 0.1 documentation

One can create a new group of elements by selecting certain meshes of an existing group. One creates a group of only one element by specifying the required element with the keyword POSITION. The G1I group contains the first element of the G1 element group.

biba1632.gitlab.io

 

[Aster code for loading a .sat file and assigning physical properties:]

from code_aster.Cata.Syntax import _F

# Load the .sat file
maillage = _F(UNITE=8, FORMAT='ASTER',)\
           _F(ACTION=('CHARGE',),\
             MAILLAGE=_F(FORME='GENERALE',\
                         NOM_FICH='.sat_file.sat'))

# Assign physical properties to the mesh
proprietes = _F(PARA=_F(GROUP_MA=('GROUP_1', 'GROUP_2'),\
                         MATER=('MATERIAL_1', 'MATERIAL_2')),\
             MATER=_F(ELAS=_F(E=200000, NU=0.3)))

# Assemble the mesh and properties
modele = _F(MAILLAGE=maillage, PROPRIETES=proprietes,)

 

 

[Here is an example code to create a mesh using Code_Aster:]

from code_aster.Cata.Syntax import _F

# Define the geometry of the mesh
geometrie = _F(GROUP_MA=('all',),
               CHAM_GD=_F(MODELISATION='3D',
                          FONC_MULT=_F(NOM_FONC='box',
                                       VALE=(0.0, 0.0, 0.0, 1.0, 1.0, 1.0))))

# Define the mesh size and type
maillage = _F(GROUP_MA=('all',),
              MAILLAGE=_F(ALGO='MED',
                          NOM_CMP=('DX','DY','DZ'),
                          TAILLE=0.1))

# Assemble the geometry and mesh
modele = _F(GEOMETRIE=geometrie, MAILLAGE=maillage,)

 

 

[Here is an example code to create a group of nodes on the right end of a 3D structure in Code_Aster:]

from code_aster.Cata.Syntax import _F

# Define the node group
group = _F(GROUP_NO=('right',),
           CREA_GROUP_NO=_F(OPTION='COOR_MAX',
                            COOR_MIN_ABS=('inf', 0.0, 0.0),
                            COOR_MAX_ABS=(0.0, 'inf', 'inf')))

# Assemble the node group
modele = _F(GROUP_NO=group,)

 


# Define the boundary conditions
bounds = _F(GROUP_NO=('bottom',),
            CHARGE=_F(FIXE_C=1),
            DDL_IMPO=_F(GROUP_MA=('bottom',),
                        DX=0.0, DY=0.0, DZ=0.0))

bounds2 = _F(GROUP_NO=('left',),
             CHARGE=_F(SYME_Y=1),
             DDL_IMPO=_F(GROUP_MA=('left',),
                         DY=0.0))

# Assemble the boundary conditions
modele = _F(BOUNDS=bounds, BOUNDS=bounds2,)

 

 

 

'유한요소 해석 > 구조 해석' 카테고리의 다른 글

FEM Singularity  (0) 2023.10.22
ASME란 무엇인가?  (0) 2023.02.24