はじめに†
- Salome-Mecaで行う(FEM解析全般に言えることだけど)計算は、「弾性解析」と「弾塑性解析」があります。
- 弾性解析→物体にかかる力がゼロになったときに、もとの形に戻る
- 弾塑性解析→物体にかかる力がゼロになったときに、もとの形に戻らない(変形したまま)
- また、弾性解析は荷重-変位のグラフが直線になるのに対し、弾塑性解析はグラフが直線になりません。このことから弾塑性解析の方法を「材料非線形」とも言います。
- モデルについて、今回はシンプルな鋼材、片持ち梁、先端荷重で行います。
- 使用ツールについて、今回の説明ではSalome-Meca2019を使用しています。
Salome-Mecaの起動→ジオメトリの作成†
Salome-Meca2019を起動†

プルダウンメニューから「Geometry」を選択†

ボックスの作成†

- Dx=100,Dy=10,Dz=20→適用して閉じる


ジオメトリのグループの作成†
- 後で載荷面、固定面の設定をするために必要な箇所について、この段階でグループを作成します。
- オブジェクトブラウザーの「Box_1」のところで右クリック→「グループを作成」をクリック
固定面†
- 「オブジェクトの種類」のところで右から2番目の□にチェックを入れる
- 原点側の面をクリック→追加
- 名前をわかりやすいようにつける(ここでは「kotei」とする)→適用して閉じる


載荷面†
- 「オブジェクトの種類」のところで右から2番目の□にチェックを入れる
- 載荷面の反対の面をクリック→追加
- 名前をわかりやすいようにつける(ここでは「saika」とする)→適用して閉じる

メッシュの作成†
メッシュの切り方の設定†
- プルダウンメニューから「Mesh」を選択
- オブジェクトブラウザーで、上で作成した「Box_1」を選択→メッシュを作成(左側にある方)を選択

- 3D→アルゴリズム「NETGEN 3D」を選択→詳細設定セットの割当て→「3D Automatic Tetrahedralization」をクリック

- 要素長設定(メッシュの細かさの設定)をする。モデルに対してあまりにも大きいと思ったような解析結果にならず、逆に細かいと計算に時間がかかったりエラーが出たりする。
- 今回はDx=100,Dy=10,Dz=20のモデルのため、最大要素長=2とする。長さのところに「2」を入力→ok

メッシュを切る†
- オブジェクトブラウザーで、上で作成した「Mesh_1」を選択→メッシュを作成(右側にある方)を選択


グループの作成†
- ジオメトリで作成したグループをメッシュに反映させる
- 「Mesh_1」で右クリック→「ジオメトリのグループを作成」をクリック

- Geometryで作成したBox_1のグループ「saika」「kotei」を選択→適用して閉じる

- オブジェクトブラウザーに反映され画像のようになっていれば成功
- メッシュの作成は以上
AsterStudyの設定†

メッシュ†
- メッシュファイルを読み込む設定をします
- 「メッシュ」→「Read a Mesh」を選択


- Mesh file location:Mesh_1(作成したメッシュ)、Mesh file format:Med を選択してok
- 左下のInfomationにこのように表示されればok
mesh = LIRE_MAILLAGE(
FORMAT='MED',
UNITE=20
Model Definition†
- 解析の方法の設定をします
- 「Model Definition」→「Assign finite element」を選択


- 「メッシュ」が「mesh(LIRE_MAILLAGE)」になっているか確認
- 「Finite element assignement」を1itemに増やす→「Edit」
- Everywhere:Yes Phenomenon:Mechanic Modelisation:3Dを選択→ok

- 左下のInfomationにこのように表示されればok
model = AFFE_MODELE(
AFFE=_F(
MODELISATION=('3D', ),
PHENOMENE='MECANIQUE',
TOUT='OUI'
),
MAILLAGE=mesh
)
Material†
- 上のメニューの「Function and Lists」から「Define function」を選択


- Parameter name:EPSI(ひずみ),Resu_name:SIGM(応力)を入力
- 座標→editをクリック

| EPSI | SIGM |
1 | 0.0015 | 105 |
2 | 0.05 | 200 |
3 | 0.2 | 300 |
- ↑のように入力
- 最初の座標が(0.0015,105)なので、EPSI(歪)が 0.0015 までは、弾性であり、0.0015 以上は塑性となる。(降伏点が 105Mpa となる。)
- ok
- functionの設定は以上。
func = DEFI_FONCTION(
NOM_PARA='EPSI',
NOM_RESU='SIGM',
VALE=(0.0015, 105.0, 0.05, 200.0, 0.2, 300.0)
)

- 上のメニューの「Material」から「Define a material」を選択

- 「Linear isotropic elastcity」を選択

- Young's modulus=ヤング率
- Puisson's ratio=ポアソン比
- それぞれ入力→ok→わかりやすい名前をつける(ここでは「kou」)→ok
- ここでは鋼材をヤング率=20.0kN/mm2、ポアソン比=0.3とする
kou = DEFI_MATERIAU(
ELAS=_F(
E=200000.0,
NU=0.3
),
TRACTION=_F(
SIGM=func
)
)
- 上のメニューの「Material」から「Assign a material」を選択

- 「Model」にチェック→Model=model(AFFE_MODELE)になってることを確認
- 「Material assignment」を追加→編集

- Everywhere:yesを選択(全体が1つの材料のため)
- Material:kou(DEFI_MATERIAU)を選択→ok
fieldmat = AFFE_MATERIAU(
AFFE=_F(
MATER=(kou, ),
TOUT='OUI'
),
MODELE=model
)
弾塑性解析のための設定†
- ここからは弾塑性解析のために必要になる設定をします。
Function and Lists†
DEFI_LIST_REEL†
- 今回は、1回の解析を何回かに分けて解析します。
- どれくらいの細かさに分けるか設定します。
- 上のメニューの「Function and Lists」から「DEFI_LIST_REEL」を選択


- DEBUT:0を入力(DEBUTは開始時間の設定。基本的に0にする)
- 「INTERVALLE」をクリック→edit

- Until:1,Interbal type:Step length,Value:0.1を入力→ok(この設定にすると、1.0倍の変化を0.1倍刻みで変化させて10回分の解析結果を見ることができる)
- ok
listr = DEFI_LIST_REEL(
DEBUT=0.0,
INTERVALLE=_F(
JUSQU_A=1.0,
PAS=0.1
)
)
DEFI_LIST_INST†
- timeを分けて解析するときのオプションを設定しますが、ここではオプションは必要ないので基本の設定を行います。
- 上のメニューの「Function and Lists」から「DEFI_LIST_INST」を選択

- Method:MANUELを選択
- DEFI_LISTのeditをクリック

- Time step list:listr(DEFI_LIST_REEL)を選択→ok→ok
times = DEFI_LIST_INST(
DEFI_LIST=_F(
LIST_INST=listr
),
METHODE='MANUEL'
)