Salome-Meca 2018を用いた軸対称問題(SSLA)


スタンプ台にスタンプを押し付けたときのスタンプ台の応力分布

この資料は日本機械学会マルチフィジックス研究会 CAE設計演習問題作成WGによる「CAE設計演習問題集」の「1-6 接触による応力分布」を軸対称の等分布荷重問題に置き換えたものです。

ジオメトリ

  • スタンプ台:直径200mm×高さ100mm
  • スタンプ(荷重範囲):直径60mm

材料

  • ヤング率:E=200,000MPa
  • ポアソン比:$\nu$=0.3

拘束条件と荷重条件

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

解析結果

相当応力図を示します。

コマンドファイル

Salome-Meca 2018(Code_Aster 13.6)のAsterStudyモジュールを用いました。

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_2D=_F(GROUP_MA=('load', )))

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

mater = DEFI_MATERIAU(identifier=u'3:1',
                      ELAS=_F(E=200000.0,
                              NU=0.3))

fieldmat = AFFE_MATERIAU(identifier=u'4:1',
                         AFFE=_F(MATER=(mater, ),
                                 TOUT='OUI'),
                         MAILLAGE=mesh)

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

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

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

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

FIN()