Salome-Meca 2018を用いた節点共有によるAssyの応力解析(SSLV)


複合材とは、材質の異なる形状のものが合わさって構成されるモデルであり、その材質が異なる境界面では、モデルの節点が共有されており、全体としてのモデルは、Solidが1つになるという考え方です。

この資料はオープンCAE勉強会@岐阜で公開されているFS氏ご提供の「SALOME-Mecaの使用法解説:3.0 複合材料の設定」をSalome-Meca 2018(Code_Aster 13.6)のAsterStudyモジュールを用いて実行しました。

ジオメトリ

直方体が2個

材料

2種類の材料を定義します。柔らかい材料(Aluminum)と硬い材料(Steel)を定義します。

材料名 ヤング率 ポアソン比
Aluminum 70,600MPa 0.345
Steel 212,000MPa 0.293

拘束条件と荷重条件

境界条件 トポロジ 境界条件の種類 条件
fix 変位 DX=DY=DZ=0
load 圧力荷重 0.1MPa

解析結果

相当応力図を示します。

コマンドファイル

DEBUT(LANG='EN')


mesh = LIRE_MAILLAGE(identifier=u'0:1',
                     FORMAT='MED',
                     UNITE=20)

mesh = MODI_MAILLAGE(identifier=u'1:1',
                     reuse=mesh,
                     MAILLAGE=mesh,
                     ORIE_PEAU_3D=_F(GROUP_MA=('load', 'fix')))

model = AFFE_MODELE(identifier=u'2:1',
                    AFFE=_F(MODELISATION=('3D', ),
                            PHENOMENE='MECANIQUE',
                            TOUT='OUI'),
                    MAILLAGE=mesh)

Steel = DEFI_MATERIAU(identifier=u'3:1',
                      ELAS=_F(E=210000.0,
                              NU=0.293))

Aluminum = DEFI_MATERIAU(identifier=u'4:1',
                         ELAS=_F(E=70600.0,
                                 NU=0.345))

fieldmat = AFFE_MATERIAU(identifier=u'5:1',
                         AFFE=(_F(GROUP_MA=('Base', ),
                                  MATER=(Aluminum, )),
                               _F(GROUP_MA=('Top', ),
                                  MATER=(Steel, ))),
                         MAILLAGE=mesh)

load = AFFE_CHAR_MECA(identifier=u'6:1',
                      DDL_IMPO=_F(DX=0.0,
                                  DY=0.0,
                                  DZ=0.0,
                                  GROUP_MA=('fix', )),
                      MODELE=model,
                      PRES_REP=_F(GROUP_MA=('load', ),
                                  PRES=0.1))

reslin = MECA_STATIQUE(identifier=u'7:1',
                       CHAM_MATER=fieldmat,
                       EXCIT=_F(CHARGE=load),
                       MODELE=model)

reslin = CALC_CHAMP(identifier=u'8:1',
                    reuse=reslin,
                    CONTRAINTE=('SIGM_ELNO', 'SIGM_NOEU'),
                    CRITERES=('SIEQ_ELNO', 'SIEQ_NOEU'),
                    RESULTAT=reslin)

IMPR_RESU(identifier=u'9:1',
          FORMAT='MED',
          RESU=_F(NOM_CHAM=('SIGM_NOEU', 'SIEQ_NOEU', 'DEPL'),
                  RESULTAT=reslin),
          UNITE=2)

FIN()