はじめに†
- ここでいうサンドイッチ梁とは、木材の両側を鋼材で挟み、強度を確保した梁のこと。
- 今回はSalome-Mecaで木材と鋼材の2つの材料を定義したモデルの作成→解析結果の確認までを行います。
- 使用ツールについて、今回の説明ではSalome-Meca2021を使用しています。
Salome-Mecaの起動→ジオメトリの作成†
Salome-Meca2021を起動†
プルダウンメニューから「Geometry」を選択†
ボックスの作成†
- 「新しいエンティティ」→「基本図形」→「ボックス」をクリック
- 「Box_1」はDx=10,Dy=10,Dz=100(木材を想定)→適用して閉じる
- 「Box_2」はDx=10,Dy=2,Dz=100(鋼材を想定)→適用して閉じる
鋼材で挟む†
- オブジェクト=Box_1 Dx=0,Dy=2,Dz=0 を入力→適用して閉じる→「tranlation_1」ができる
- 同じように、オブジェクト=Box_2 Dx=0,Dy=12,Dz=0 を入力→適用して閉じる→「tranlation_2」ができる
- オブジェクトブラウザーの「Box_1」「tranlation_2」など書いてあるところの左の目のマークで、表示/非表示の切り替えができる。
- 「Box_2」「tranlation_1」「tranlation_2」の3つを表示させると、厚い材料が薄い材料で挟まれているモデルができる。
- これで大まかなモデル作成は完成のため、次に解析のための下準備を行う。
結合→パーティションの作成†
- 「選択したオブジェクト」の欄で「Box_2」「tranlation_1」「tranlation_2」の3つを選択(キーボードのCtrlを押しながらクリックで複数選択)→適用して閉じる
- 「Fuse_1」ができる
- 次に「操作」→ 「パーティション」を選択
- オブジェクト=Fuse_1、ツールオブジェクト=Box_2,tranlation_2を入力→適用して閉じる
- 「Partition_1」ができる
- 「Partition_1」のみを表示させて、1つのモデルで鋼材と木材に分かれていれば成功。
ジオメトリのグループの作成†
- 後で鋼材、木材、載荷面、固定面の設定をするために必要な箇所について、この段階でグループを作成します。
- オブジェクトブラウザーの「Partition_1」のところで右クリック→「グループを作成」をクリック
- 「オブジェクトの種類」のところで一番右の立方体にチェックを入れる
- 上の鋼材をクリック→追加
- 同じように下の鋼材をクリック→追加
- 名前をわかりやすいようにつける(ここでは「kou」とする)→適用して閉じる
- 同じように真ん中の木材をクリック→追加
- 名前をわかりやすいようにつける(ここでは「moku」とする)→適用して閉じる
固定面†
- 「オブジェクトの種類」のところで右から2番目の□にチェックを入れる
- 上の鋼材の原点側の面をクリック→追加
- 同じように下の鋼材の原点側の面をクリック→追加
- 同じように木材の原点側の面をクリック→追加
- 名前をわかりやすいようにつける(ここでは「kotei」とする)→適用して閉じる
載荷面†
- 「オブジェクトの種類」のところで右から2番目の□にチェックを入れる
- 上の鋼材の載荷面の反対の面をクリック→追加
- 同じように下の鋼材の載荷面の反対の面をクリック→追加
- 同じように木材の載荷面の反対の面をクリック→追加
- 名前をわかりやすいようにつける(ここでは「saika」とする)→適用して閉じる
メッシュの作成†
メッシュの切り方の設定†
- プルダウンメニューから「Mesh」を選択
- オブジェクトブラウザーで、上で作成した「Partition_1」を選択→「メッシュ」→「メッシュを作成します。」を選択
- 3D→アルゴリズム「NETGEN 3D」を選択→詳細設定セットの割当て→「3D Automatic Tetrahedralization」をクリック
- 要素長設定(メッシュの細かさの設定)をする。モデルに対してあまりにも大きいと思ったような解析結果にならず、逆に細かいと計算に時間がかかったりエラーが出たりする。
- 今回はDx=10,Dy=14,Dz=100のモデルのため、最大要素長=2とする。長さのところに「2」を入力→ok
メッシュを切る†
- オブジェクトブラウザーで、上で作成した「Mesh_1」を選択→「メッシュ」→ 「メッシュを作成」を選択
グループの作成†
- ジオメトリで作成したグループをメッシュに反映させる
- 「Mesh_1」で右クリック→「ジオメトリのグループを作成」をクリック
- Geometryで作成したPartition_1のグループ「moku」「kou」「saika」「kotei」を選択→適用して閉じる
- オブジェクトブラウザーに反映され画像のようになっていれば成功
- メッシュの作成は以上
AsterStudyの設定†
- プルダウンメニューから「AsterStudy」を選択
- 「Data Settings」を右クリックし「Add Stage」を選択
メッシュの読み込み†
- メッシュファイルを読み込む設定をします
- 「メッシュ」→「LIRE MAILLAGE」を選択
- UNITE:Mesh_1(作成したメッシュ)、FORMAT:Med を選択してok
- 左下のInfomationにこのように表示されればok
mesh = LIRE_MAILLAGE(
FORMAT='MED',
UNITE=20
Model Definition(解析方法について)†
- 解析の方法の設定をします
- 「Model Definition」→「AFFE_MODELE」を選択
- 「メッシュ」が「mesh(LIRE_MAILLAGE)」になっているか確認
- 「AFFE」を1itemに増やす→「Edit」
- TOUT:OUI PHENOMENE:MECANIQUE MODELISATION:3Dを選択→ok
- 左下のInfomationにこのように表示されればok
model = AFFE_MODELE(
AFFE=_F(
MODELISATION=('3D', ),
PHENOMENE='MECANIQUE',
TOUT='OUI'
),
MAILLAGE=mesh
)
Material(材料の設定)†
- ここで材料の設定をします。
- 今回は鋼材と木材の設定をします。
鋼材の設定†
- 上のメニューの「Material」から「DEFI_MATERIAU」を選択
- 「ERAS」を選択(一般的な材料であればこれを選択)
- E=ヤング率
- NU=ポアソン比
- それぞれ入力→ok→わかりやすい名前をつける(ここでは「kou」)→ok
- ここでは鋼材をヤング率=20.0kN/mm2、ポアソン比=0.3とする
kou = DEFI_MATERIAU(
ELAS=_F(
E=200000.0,
NU=0.3
)
)
木材の設定†
- 上のメニューの「Material」から「DEFI_MATERIAU」を選択
- 「ELAS_ORTH」を選択(xyzの方向で材料特性が違う場合これを選択)
- E_N=6000(E:ヤング率)
- E_L,E_T=250(軸方向ヤング率の1/25)
- NU_LT,NU_LN,NU_TN=0.016(NU:ポアソン比 軸方向ポアソン比を0.4と想定→ここに入力するのは軸方向ポアソン比の1/25のため0.016)
- G_LT,G_LN,G_TN=400(G:せん断弾性係数 ここでは軸方向ヤング率の1/15とする)
- 補足:木材は繊維方向と繊維直交方向で材料特性が違う(異方性材料)のため、このような設定になる。
- ここでは軸方向ヤング率×1/25=軸直交方向ヤング率としています。
moku = DEFI_MATERIAU(
ELAS_ORTH=_F(
E_L=250.0,
E_N=6000.0,
E_T=250.0,
G_LN=400.0,
G_LT=400.0,
G_TN=400.0,
NU_LN=0.016,
NU_LT=0.016,
NU_TN=0.016
)
)
ELAS_ORTHの方向†
- Code_Aster Documantation [U4.43.01] Operator DEFI_MATERIAU より
モデルごとの材料の設定†
- 上のメニューの「Material」から「AFFE_MATERIAU」を選択
- 「MODELE」にチェック→Model=model(AFFE_MODELE)になってることを確認
- 「AFFE」を追加→編集
- 「GROUP_MA」でジオメトリで設定した鋼材のグループ(kou)を選択→ok
- 「MATER」で先程DEFI_MATERIAUで設定した鋼材の材料情報(kou)を選択→ok
- 「MATER」を追加→木材(moku)についても同様に設定→ok
fieldmat = AFFE_MATERIAU(
AFFE=(_F(
GROUP_MA=('kou', ),
MATER=(kou, )
), _F(
GROUP_MA=('moku', ),
MATER=(moku, )
)),
MODELE=model
)
BC and Load (荷重と固定について)†
- 荷重と固定についての設定
- 上のメニューから「BC and Load」→「AFFE_CHAR_MECA」を選択
DDL_IMPO (固定)†
- 固定についての設定(DDL_IMPO=強制変位 ここでは強制変位の設定を0にする=固定ということにしている)
- 「DDL_IMPO」を選択
- 「GROUP_MA」でジオメトリで設定した固定面を選択(ここでは「kotei」)
- DX,DY,DZ=0を入力→ok
FORCE_FACE(面載荷)†
- 荷重についての設定(FORCE_FACE=面載荷 どこか1つの面に荷重をかける場合これを選択)
- 「FORCE_FACE」を選択
- 「GROUP_MA」でジオメトリで設定した載荷面を選択(ここでは「saika」)
- FY=-10を入力(面載荷の場合は載荷する荷重を載荷する面積で割る ここでは10.0N/mm2、方向を考慮してマイナスとする)
- ok→ok
load = AFFE_CHAR_MECA(
DDL_IMPO=_F(
DX=0.0,
DY=0.0,
DZ=0.0,
GROUP_MA=('kotei', )
),
FORCE_FACE=_F(
FY=-10.0,
GROUP_MA=('saika', )
),
MODELE=model
)
Analysis(設定をまとめる)†
- 今までのモデルの設定、材料の設定、荷重と固定の設定を紐付けます。
MECA_STATIQUE(線形解析の設定)†
- 上のメニューから「Analysis」→「MECA_STATIQUE」を選択
- CHAM_MATER:fieldmat(AFFE_MATERIAU) Model:model(AFFE_MODELE)になっていることを確認
- 「EXCIT」で先程BC and loadで設定したloadを設定→ok
reslin = MECA_STATIQUE(
CHAM_MATER=fieldmat,
EXCIT=_F(
CHARGE=load
),
MODELE=model
)
Post Processing(どの数値を計算するか)†
CALC_CHAMP†
- 上のメニューから「Post Processing」→「CALC_CHAMP」を選択
- CONTRAITE:SIGM_NOEU(節点の応力(6成分))を選択
- DEFORMATION:EPSI_NOEU (節点のひずみ)を選択
- CRETERES:SIEQ_NOEU (節点の応力(ミーゼス応力や主応力など)) を選択
- FORCE:REAC_NODA(節点の反力)を選択
- 補足:ちなみにNOEUは節点(NOEUd(フランス語))、ELGAはガウスの積分点(ELement GAuss point)、ELNOは要素(のどこか?)(ELement Node)だとかで、ParaVisでコンター図を描きたいときは Point Data であるNOEUを出力する必要がある。ELGAやELNOは、ParaVis上でSpredSheetViewを開き、Field Data や Cell Data を選択すれば値が見れる。
- RESULTAT:reslin(MECA_STATIQUE)になってるのを確認→ok
unnamed = CALC_CHAMP(
CONTRAINTE=('SIGM_NOEU', ),
CRITERES=('SIEQ_NOEU', ),
DEFORMATION=('EPSI_NOEU', ),
FORCE=('REAC_NODA', ),
RESULTAT=reslin
)
Output(出力設定)†
- 上のメニューから「Output」→「IMPR_RESU」を選択
- UNITE:パソコン上の任意の場所を選択(そこにparavisを見るための.medファイルが保存される)
- RESUを追加→編集
- RESULTAT:reslin(MECA_STATIQUE)を選択→「NOM_CHAM」という欄が出る
- NOM_CHAM:DEPL(変位)を選択→ok
- 同じようにRESULTAT:unnamed(CALC_CHAMP)を選択→「NOM_CHAM」が出る
- NOM_CHAM:CALC_CHAMPで選択した4つの要素(SIGM_NOEU,EPSI_NOEU,SIEQ_NOEU,REAC_NODA)を選択→ok
IMPR_RESU(
FORMAT='MED',
RESU=(_F(
NOM_CHAM=('DEPL', ),
RESULTAT=reslin
), _F(
NOM_CHAM=('EPSI_NOEU', 'SIGM_NOEU', 'SIEQ_NOEU', 'REAC_NODA'),
RESULTAT=unnamed
)),
UNITE=80
)
History Viewで計算†
- ここまで来たら、一度.hdfファイル(salomeの設定ファイル)を保存しておく。
- Casesの中の「CurrentCase」をクリック→Stage_1の横の+をクリック→下のほうにある「Run」をクリック→計算開始
- Auto Refresh:5s にすると計算の経過を見れる(5秒ごとに更新してくれる)
- 成功すると緑色、失敗すると赤になる。
- 補足:Salome-Meca2017(だったと思う)以前では失敗すると赤色か黄色になるとのことです。そのときの赤色は深刻なエラー(ソフト構成上の問題とか)、黄色は計算エラー(パラメータのミス等)らしい。
Paravisで計算結果の確認†
- プルダウンメニューから「Paravis」を選択
- 左側のパイプのブラウザーにある「builtin:」を右クリック→「open」を選択→先ほどの計算結果(.medファイル)を開く
- 計算結果が出てくる
- 初期設定で「Solid Color」となっているところをプルダウンで「reslin_DEPL(変位)」や「unnamed_EPSI_NOEU(ひずみ)」等に変えると、任意のパラメータを確認することができる
変形の確認†
- 任意のパラメータに変更(ここではreslin_DEPL)
- オブジェクトインスペクターの一番上にある「適用」を押す
- 上のメニューの「フィルター」から、「common」→「Warp By Vector」を選択
- パイプのブラウザーに「WarpByVector1」が追加される→選んでオブジェクトインスペクターの一番上にある「適用」を押す
- 構造物の変形が確認できる
数値の確認†
- 右上の「RenderView1」の横にあるボタンを押す(どちらでもよい)
- 一番下の「SpreadSheet View」を選択
- メッシュを切った際のノード(節点)ごとの各パラメータの数値が表示される
任意の点の数値を確認したい場合†
- Select Points ○○ (変位を見たい節点を選択する)
- (上の方にある)Show only selected Elements.