280 Views
October 04, 24
スライド概要
Salome-Meca2023によるL型2Dフレームの弾性解析
技術士(機械工学),博士(工学),日本機械学会計算力学上級アナリスト(固体力学分野の有限要素法),通訳案内士(英語)
Salome-Mecaによる フレームの弾性解析 PE/計算固体⼒学研究室 1
学習⽬標 • 構造要素の簡単な例としてフレームの解析を体 験する • トラス解析に使⽤したコマンドファイルを修正 してコマンドファイルを作成する • 線形弾性理論解との⽐較を⾏い,解析の精度を 検証する 2
解析の流れ 問題の設定 Geometry Module • 解析対象の形状,⼨法,材料特性の準備 • 解析結果処理に必要な情報の確認 • 形状の作成(点と線で作成) • 境界条件を与える節点グループに名前をつける Mesh Module • メッシュの作成 • メッシュファイルの保存 Aster Module • AsterStudyを⽤いたコマンドファイルの修正 • Studyケースの設定(コマンドファイル,メッシュ ファイルの割当) • 解析の実⾏ ParaVis Module • 変形図によるおおまかな妥当性の確認 • 変位の表⽰ 結果の評価 • 変位の理論解との⽐較 3
解析対象(形状と境界条件) l 下端(節点1)は完全固定 3 2 l P 1 y x 右端で集中荷重を受ける L 字フレーム 接合部(節点2)は直⾓ ⾃由端(節点3)で -y ⽅向に集中 荷重 P ヤング率を E,断⾯⼆次モーメン トは⼀定で I とする 4
理論解(オイラーのはり理論) 1-2間の曲げモーメントは⼀定, M 12 Pl l 3 2 l P 1 y x 2-3間の曲げモーメントは線形分布, M 23 P l x フレーム全体のひずみエネルギー U は, 2 2 2 3 l M l M 2 P l 12 23 U dy dx 0 2EI 0 2EI 3EI 右端で集中荷重を受ける ⾃由端のたわみ v3 は,カスティリアノ の定理より, L 字フレーム ※ 軸⼒やせん断⼒による変形は 無視しています U 2P 2l 3 4Pl 3 v3 P P 3EI 3EI 5
予習(変位の予想) l 3 2 l P 1 y x 右端で集中荷重を受ける L 字フレーム 直径 10.0 mmの丸棒で鉄鋼材料を 仮定して,以下とする l 100 mm E 200 GPa d4 I 491 mm4 64 荷重条件を, P 100 N とすると, 4Pl 3 4 100 1003 v3 3EI 3 200 103 490.8 1.36 mm ※ 有効数字はいいかげんです 6
予習(応⼒の予想) 最⼤曲げモーメント Mmax M max 1.0 104 MPa l 3 2 l P 1 y x 右端で集中荷重を受ける L 字フレーム 曲げ応⼒ b M max d 1.0 104 10 b 2 490.8 2 I 102 MPa 垂直応⼒ y 4P 4 1.0 102 y 2 d 3.1416 102 1.27 MPa ※ 有効数字はいいかげんです 7
解析⽅法 • Salome-Meca2023 for windows(code-aster ver. 16.5.0)を使⽤ • ベルヌイ=オイラーのはり要素 (*) でモデル化 (modelisation = POU_D_E) • AsterStudyでトラス解析に使⽤したコマンド ファイルを修正して使⽤ • テキスト出⼒により節点変位と応⼒を確認 (*) せん断による変形を無視するモデル。code-aster には,せん断変形を考慮 するチモシェンコのはりモデル(POU_D_T)も実装されている 8
形状データの作成 • Geometryモジュールにある点と線の機能を使 ⽤し,フレーム形状を作成する • 荷重をかける点(Load),固定端(Fix), 接合部(Corner)に名称をつける。フレーム 全体に要素グループ名(Frame)をつける 9
SalomeMecaの起動 ① run_Salome.bat をダブルクリック 10
Geometryの起動 ① Geometry モ ジュールを開く 11
視線の変更 ① 視線を -OZ に変更 12
節点の作成 ① Create a point ② 節点座標 節点 1 = (0, 0, 0) 節点2 = (0, 100, 0) 節点3 = (100, 100, 0) を⼊⼒ ③ 節点を定義する ごとに適⽤する ④ 適⽤して 閉じる 13
線要素の作成 ① Create a line ③ 2個の線を定義 Line_1 = Vertex_1 & Vertex_2 Line_2 = Vertex_2 & Vertex_3 ③ 線を定義する ごとに適⽤ ④ 適⽤して 閉じる 4 14
線要素の⼀体化 ① New Entiry -> Build -> Compound ③ 2オブジェクト の選択を確認 ② Line_1 と Line_2 の2つ を同時に選択(cntl を押 しながら 2 つを選択) ④ 適⽤して閉じる 15
形状グループの作成 ③ 点グルー プを作成 ① Compound_1 を右クリック ④ グループ名 を⼊⼒ ⑥ ピックした 節点を追加 ② グループ の作成 ⑤ 画⾯上で節 点をピック ⑦ グループを作成 するごとに適⽤ ⑧ 同様に Fix, Load を設定 16
形状グループの作成 ② グループ名は Frame ① 線を選ぶ ③ フレームの 全体をピック ⑤ 適⽤して 閉じる ④ ピックしてい る線をグループ に加える 17
形状グループの作成 ① グループの作成を確認 (⽬のマークの点滅で表 ⽰・⾮表⽰にできる) 18
ここまでの作業の保存 ① File -> Save As 19
作業の保存(Geometryまで) ① 作業フォルダ を開く ② ファイル名は 「Study1_geom1.hdf」 ③ 保存する 20
メッシュデータの作成 • Meshモジュールを⽤いてメッシュ(有限要 素によるモデル)を作成する • 1本のはり(線)を1分割 • メッシュデータをファイル出⼒(エクスポー ト)する • メッシュ作成までの作業を保存する 21
Meshの起動 ① Meshモジュー ルを起動 22
Meshの作成 ③ Fit All で 全体表⽰ ② -OZ の⽅向 に表⽰ ① Compound_1を選択し て,表⽰させる(「⽬」 のマークをオン) 23
Meshの作成 ① Mesh -> Create Mesh ② 線の離散化 ③ ⻭⾞マーク をクリック ④ セグメント の分割数 24
分割数の指定 ① セグメントの分割 数を 1 とする ② OKする ③ 適⽤して閉じる 25
メッシュの作成 ② メッシュ⽣成 (compute) ① Mesh_1 を右クリック 26
メッシュの作成結果 ① メッシュの 情報を確認 ② 閉じる 27
メッシュファイルの作成 ② Mesh_1 を 右クリック ③ Export -> MED fileを選択 ① Mesh_1の下にグループがで きていることを確認 28
メッシュファイルの保存 ① 作業フォルダ を開く ② ファイル名は 「Mesh_1.med」 ③ 保存する 29
作業の保存(Meshまで) ① File -> Save As... を開く ② 作業フォルダ を開く ③ ファイル名は 「Study1_mesh1.hdf」 ③ 保存する 30
解析条件データの作成 • AsterStudy を⽤いて,既存のファイルからコ マンドファイルの作成を開始する • コマンドファイルを修正する • AsterStudy を⽤いてファイルのメッシュファ イルと出⼒ファイルの割当を⾏う • 解析を実⾏する 31
AsterStudyの起動 ① Asterモジュール を起動 32
新しいステージの作成 ① Operation -> Add Stage from File ② トラスの解析で作成 したコマンドファイル を読込む 33
メッシュファイルの読込み ② 保存してある Mesh_1.medを開く ① LIRE_MAILLAGE をダブルクリック ③ 適⽤して OK する 34
モデルの割当(AFFE_MODELE) ① AFFE_MODELE を ダブルクリック ② モデル化はオイラー はり(POU_D_E) ③ OK する 35
モデルの割当(AFFE_MODELE) ② コマンドファイル の作成を確認 ③ OK する ① 適⽤する 36
要素特性の修正(AFFE_CARA_ELEM) ① AFFE_CARA_ELEM を ダブルクリック ② 断⾯は円形(CERCLE = circle),特性は半径 R = 5 として OK する 37
要素特性の設定(AFFE_CARA_ELEM) ① 要素グループを Frame にする ② OK する 38
要素特性の設定(AFFE_CARA_ELEM) ② コマンドファイル の作成を確認 ③ OK する ① 適⽤する 39
材料の設定(DEFI_MATERIAU,AFFE_MATERIAU) ① DEFI_MATERIAU(材料の定 義)と AFFE_MATERIAU(材料 の割当)を確認(変更なし) ③ コマンドファイル の作成を確認 ④ OK する ② 適⽤する 40
拘束条件の設定(DDL_IMPO) ① fix をダブル クリック ② 4個の変位 指定を削除 41
拘束条件の設定(DDL_IMPO) ① アイテム を追加 ② 編集 42
拘束条件の設定(DDL_IMPO) ① 節点グループ は Fix ② 変位と回転 をすべて拘束 ③ OK する 43
拘束条件の設定(DDL_IMPO) ② コマンドファイル の作成を確認 ③ OK する ① 適⽤する 44
節点荷重の設定(FORCE_NODALE) ① load をダブ ルクリック ② FORCE_MODALE の中⾝を編集 45
節点荷重の設定(FORCE_NODALE) ① 節点グループ は Load ② FY = -100 N に変更する ③ OK する 46
節点荷重の設定(FORCE_NODALE) ② コマンドファイル の作成を確認 ③ OK する ① 適⽤する 47
節点荷重の設定(FORCE_NODAL) ① Load を選ぶ ② OK する 48
線形解析の設定(MECA_STATIC) ① MECA_STATIQUE をダブルクリック ② 材料,要素特性, 有効化する境界条件 を確認 ④ コマンドファイル の作成を確認 ③ 適⽤する ⑤ OK する 49
解析結果の後処理(CALC_CHAMP) ① CALC_CHAMP をダブルクリック ② 応⼒は SIEF_ELNO,SIPO_ELNO EFGE_NOEU,SIPO_NOEU ② FORCE は REAC_NODA ③ 適⽤する ④ コマンド ファイルを確認 ⑤ OK する 50
結果の印刷出⼒(IMPR_RESU) ① IMPR_RESU をダ ブルクリック ② 適⽤する ③ コマンド ファイルを確認 51
結果の印刷出⼒(IMPR_RESU) ② 作業フォルダ を開く ① ファイルを 探す(...) ③ファイル名は, Frame.rmed ④ 保存 ⑤ 保存 52
結果の印刷出⼒(IMPR_RESU) ③ 作業フォル ダを開く ① 2つめの IMPR_RESU をダブルクリック ② 「...」をクリックして 結果ファイルを探す 53
結果の印刷出⼒(IMPR_RESU) ① 作業フォル ダを開く ④ RESU の 内容を編集 ②ファイル名は, Frame.txt ③ 保存 54
結果の印刷出⼒(IMPR_RESU) ① 出⼒する結果は reslin から取得 ② 場の名前は, DEPL(変位), REAC_NODA(節点反⼒), EFGE_NOEU(節点内⼒), SIPO_NOEU(節点応⼒) ③ スクロール 55
結果の印刷出⼒(IMPR_RESU) ② 出⼒する要素グループ は Frame にする(Truss を削除) ① IMPR_COOR(座標の印 刷)を OUI(=yes)に ③ OK する 56
結果の印刷出⼒(IMPR_RESU) ② コマンドファイル の作成を確認 ③ OK する ① 適⽤する 57
コマンドファイルの保存 ① ステージ名を 右クリック ② コマンドファイルを エキスポート ③ コマンドファイルを 保存(画像省略) 58
コマンドファイルの確認 DEBUT(LANG='FR') mesh = LIRE_MAILLAGE(FORMAT='MED', UNITE=20) model = AFFE_MODELE(AFFE=_F(MODELISATION='POU_D_E', PHENOMENE='MECANIQUE', TOUT='OUI'), MAILLAGE=mesh) elemprop = AFFE_CARA_ELEM(MODELE=model, POUTRE=_F(CARA=('R', ), GROUP_MA=('Frame', ), SECTION='CERCLE', VALE=(5.0, ))) mater = DEFI_MATERIAU(ELAS=_F(E=200000.0, NU=0.3)) fieldmat = AFFE_MATERIAU(AFFE=_F(MATER=(mater, ), TOUT='OUI'), MODELE=model) fix = AFFE_CHAR_MECA(DDL_IMPO=_F(DRX=0.0, DRY=0.0, DRZ=0.0, DX=0.0, DY=0.0, DZ=0.0, GROUP_NO=('Fix', )), MODELE=model) load = AFFE_CHAR_MECA(FORCE_NODALE=_F(FY=-100.0, GROUP_NO=('Load', )), MODELE=model) reslin = MECA_STATIQUE(CARA_ELEM=elemprop, CHAM_MATER=fieldmat, EXCIT=(_F(CHARGE=fix), _F(CHARGE=load)), MODELE=model) reslin = CALC_CHAMP(reuse=reslin, CONTRAINTE=('SIEF_ELNO', 'SIPO_ELNO', 'EFGE_NOEU', 'SIPO_NOEU'), FORCE=('REAC_NODA', ), RESULTAT=reslin) IMPR_RESU(FORMAT='MED', RESU=_F(RESULTAT=reslin, TOUT_CHAM='OUI'), UNITE=80) IMPR_RESU(FORMAT='RESULTAT', RESU=_F(GROUP_MA=('Frame', ), IMPR_COOR='OUI', NOM_CHAM=('DEPL', 'REAC_NODA', 'EFGE_NOEU', 'SIPO_NOEU'), RESULTAT=reslin), UNITE=8) FIN() 59
解析ケース(Study)の保存 ① ファイル名はStudy1_aster1とする ② 保存 60
解析ケース(Study)の実⾏ ① History View ④ 解析ケースの追加 (緑⾊のプラス) ② ファイル名,解析に 使うメモリ,上限時間 を確認 ⑤ Run ③ ⾃動更新5秒毎に 61
解析ケース(Study)の終了 ① 緑マークで解析成功 を確認 62
解析結果の確認と利⽤ • ParaVisを⽤いて,解析結果を可視化し,定 性的な妥当性を確認する • 解析結果のテキストファイル(*.txt)を開 き,結果を確認する 63
ParaVisの起動 ① Case View タブ を開く ② rmed ファイル を右クリック ③ ParaVis で開く 64
結果の読込み ③ 適⽤する ① 読込むデータに チェックを⼊れる ② ベクトルを ⽣成する 65
変形図の表⽰ ① Filters -> Common -> Warp By Vector を開く 66
変形図の表⽰ ② 適⽤する ③ 変形を確認 ① Vectors = result_DEPL_Vector Scale Factor = 100 67
結果テキストファイルの確認(DEPL) CHAMP AUX NOEUDS DE NOM SYMBOLIQUE DEPL NUMERO D'ORDRE: 1 INST: 0.00000000000000E+00 NOEUD X Y DX DY DZ DRX DRY DRZ N1 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 N2 0.00000000000000E+00 1.00000000000000E+02 5.09295817894113E-01 -6.36619772367612E-04 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 -1.01859163578820E-02 N3 1.00000000000000E+02 1.00000000000000E+02 5.09295817894113E-01 -1.35875880082328E+00 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 -1.52788745368226E-02 ① 理論解と ⼀致 68
結果テキストファイルの確認(REAC_NODA) ① y ⽅向反⼒ CHAMP AUX NOEUDS DE NOM SYMBOLIQUE REAC_NODA NUMERO D'ORDRE: 1 INST: 0.00000000000000E+00 NOEUD X Y DX DY DZ DRX DRY DRZ N1 0.00000000000000E+00 0.00000000000000E+00 -1.48868527097626E-11 9.99999999999999E+01 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 1.00000000000014E+04 N2 0.00000000000000E+00 1.00000000000000E+02 1.48868527097626E-11 -5.68434188608080E-14 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 -1.45519152283669E-11 N3 1.00000000000000E+02 1.00000000000000E+02 0.00000000000000E+00 1.13686837721616E-13 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 -7.27595761418343E-12 ② z 軸回りの 反モーメント 69
結果テキストファイルの確認(EFGE_NOEU) CHAMP AUX NOEUDS DE NOM SYMBOLIQUE EFGE_NOEU NUMERO D'ORDRE: 1 INST: 0.00000000000000E+00 NOEUD X Y N VY VZ MT MFY MFZ N1 0.00000000000000E+00 0.00000000000000E+00 -9.99999999999999E+01 -1.48929757415317E-11 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 -1.00000000000014E+04 N2 0.00000000000000E+00 1.00000000000000E+02 -5.00000000000000E+01 -5.00000000000074E+01 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 -9.99999999999996E+03 N3 1.00000000000000E+02 1.00000000000000E+02 0.00000000000000E+00 -9.99999999999999E+01 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 -7.27595761418343E-12 ① z 軸回りの曲 げモーメント 70
結果テキストファイルの確認(SIPO_NOEU) CHAMP AUX NOEUDS DE NOM SYMBOLIQUE SIPO_NOEU NUMERO D'ORDRE: 1 INST: 0.00000000000000E+00 NOEUD X Y SN SVY SVZ SMT SMFY SMFZ N1 0.00000000000000E+00 0.00000000000000E+00 -1.27323954473516E+00 -1.89623256528996E-13 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 1.01859163578828E+02 N2 0.00000000000000E+00 1.00000000000000E+02 -6.36619772367581E-01 -6.36619772367675E-01 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 1.01859163578813E+02 N3 1.00000000000000E+02 1.00000000000000E+02 0.00000000000000E+00 -1.27323954473516E+00 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 7.41122956815620E-14 ① y ⽅向の垂 ② z 軸回りの 曲げ応⼒ 直応⼒ 71
まとめ • トラスの解析のコマンドファイルをフレーム解 析に修正した • 解析結果のテキスト出⼒により,理論解との⽐ 較を⾏い,各出⼒の意味を確認した 72