Analysis if 2D Truss Structure by Salome-Meca2023

540 Views

October 04, 24

スライド概要

Salome-Meca2023による面内変形を受けるトラス構造の解析

profile-image

技術士(機械工学),博士(工学),日本機械学会計算力学上級アナリスト(固体力学分野の有限要素法),通訳案内士(英語)

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

Salome-Mecaによる ⼆次元トラスの弾性解析 PE/計算固体⼒学研究室 1

2.

学習⽬標 • 構造要素の簡単な例としてトラスの解析を体験 する • AsterStudyを⽤いてコマンドファイルを作成す ることで,コマンドファイルの構成を理解する • 線形弾性理論解との⽐較を⾏い,解析の精度を 検証する 2

3.

解析の流れ 問題の設定 Geometry Module • 解析対象の形状,⼨法,材料特性の準備 • 解析結果処理に必要な情報の確認 • 形状の作成(点と線で作成) • 境界条件を与える節点グループに名前をつける Mesh Module • メッシュの作成 • メッシュファイルの保存 Aster Module • AsterStudyを⽤いたコマンドファイルの作成 • Studyケースの設定(コマンドファイル,メッシュ ファイルの割当) • 解析の実⾏ ParaVis Module • 変形図によるおおまかな妥当性の確認 • 変位の表⽰ 結果の評価 • 変位の理論解との⽐較 3

4.

解析対象(形状と境界条件) 節点1固定⽀持,節点5はローラ⽀持, その他の節点は⾯内拘束 l 2 1 y 60° l x 4 60° 3 P 60° 5 l Fig. 1 Two dimensional Truss Analyzed 節点1と節点5における y ⽅向反⼒は, 左右の対称性より, P R1  R2  2 棒 ij の内⼒ Nij は,各節点つり合いから, N 12  N 45   N 13  N 35  P P 2 3 3 N 23  N 34  N 24   P 3 P 3 4

5.

予習(変位の予想) トラス全体のひずみエネルギー U は,棒 の断⾯積を A,ヤング率を E として, l 2 1 y 60° l x 4 60° 3 P 60° l 5 N 122l N 232l N 132l N 242l U  2  2  2  2AE 2AE 2AE 2AE P 2l P 2l P 2l P 2l 11P 2l      3AE 3AE 12AE 6AE 12AE 節点3の y ⽅向変位 v3 は,カスティリ 正三⾓形3個からなる アノの定理から, ⼆次元トラス U 11Pl v3   P 6AE 5

6.

⼨法と材料定数 直径 2.0 mmの丸棒で鉄鋼材料を仮定 し,以下とする 86.6 100 y 2 1 l  100 mm 60° 100 P x 4 60° 3 60° 5 100 正三⾓形3個からなる ⼆次元トラス A  3.1416 mm2 E  200 GPa 荷重条件を, P  1.0 kN とすると, 11Pl 11  1.0  103  100 v3    0.292 mm 3 6AE 6  3.1416  200  10 6

7.

応⼒は以下のようになる N 12 P  12   45    184.8 MPa A 3A  23   34  184.8 MPa 13   35  P 2 3A  91.90 MPa  24  184.8 MPa ※ ij はテンソルではなく,棒ij の応⼒ 参考までに両端ピン⽌め柱のオイラーの座屈荷重 Pc  2EI 3.14162  200  103  0.7854 Pc    155 N 2 2 100 4 l / 2 7

8.

解析⽅法 • 棒要素を使⽤(modelisation=BARRE) • Salome-Meca2023 for windows(code-aster ver. 16.5.0)を使⽤し,AsterStudyでゼロか らコマンドファイルを作成 • テキスト出⼒により節点変位と棒の応⼒を確認 8

9.

形状データの作成 • Geometryモジュールにある点と線の機能を使 ⽤し,トラス形状を作成する • 荷重をかける点(Load),固定⽀持点 (Fix),ローラー⽀持点(Roller),その他 (Top)に名称をつける。トラス全体に要素 グループ名(Truss)をつける 9

10.

SalomeMecaの起動 ① run_Salome.bat をダブルクリック 10

11.

Geometryの起動 ① Geometry モ ジュールを開く ① プルダウンメニュー から Geometry を選択 11

12.

視線の変更 ① New Entity -> Basic -> 2D Sketch ① 視線を -OZ に変更 12

13.

節点の作成 ① New Entiry -> Basic -> Point ② 点の座標⼊⼒ ③ 点の番号を確認 ④ 節点 1 の座標 は (0, 0, 0) 4 ⑤ 適⽤する 13

14.

節点の作成 ① 点の番号を確認 ② 節点 2 の座標 は (50, 86.6, 0) ⑤ 適⽤して 閉じる ③ 適⽤する ④ 同様にして, 節点 3: (100, 0, 0) 節点 4: (150, 86.6, 0) 節点 5: (200, 0, 0) を作成する 14

15.

節点の作成 ② 座標軸を 表⽰しない ① Fit All ③ 節点の位置 を確認 ④ 節点の作成 を確認 ⑤ 節点座標を 確認 15

16.

線要素の作成 ① New Entiry -> Basic -> Line ② 線の番号を確認 ③線1の 節点は 1-2 3 ④ 適⽤する 16

17.

線要素の作成 ① 線の番号を確認 ③ 線 2 の節点は 1-3 ⑥ 適⽤して 閉じる ④ 適⽤する ⑤ 同様にして, 線 3: 2-3 線 4: 2-4 線 5: 3-4 線 6: 3-5 線 7: 4-5 を作成 17

18.

線要素の確認 ① New Entiry -> Build -> Compound 18

19.

線要素の⼀体化 ① ⼀体化後の 名称を確認 ② 7個の線を選ぶ(cntl キーを押しながらマウ スでピック) ④ 適⽤して閉じる 19

20.

形状グループの作成 ① Compound_1 を右クリック ② グループの作成 20

21.

形状グループの作成 ① 点を選ぶ ② グループ名は Fix ③ 固定⽀持の 点をピック ④ ピックしてい る点をグループ に加える ⑤ 適⽤する 21

22.

形状グループの作成 ① グループ名は Load ③ ピックしてい る点をグループ に加える ② 荷重点を ピック ④ 適⽤する 22

23.

形状グループの作成 ① 同様にして, ローラー⽀持点: Roller 上⾯の2点: Top を作成 23

24.

形状グループの作成 ① 線を選ぶ ② グループ名は Truss ③ 線を全部 ピック ⑤ 適⽤して 閉じる ④ ピックしてい る線をグループ に加える 24

25.

形状グループの作成 ① グループの作成を確認 (⽬のマークの点滅で表 ⽰・⾮表⽰にできる) 25

26.

ここまでの作業の保存 ① File -> Save As 26

27.

作業の保存(Geometryまで) ① 作業フォルダ を開く ② ファイル名は 「Study1_geom1.hdf」 ③ 保存する 27

28.

メッシュデータの作成 • Meshモジュールを⽤いてメッシュ(有限要 素によるモデル)を作成する • 1本の棒を1分割 • メッシュデータをファイル出⼒(エクスポー ト)する • メッシュ作成までの作業を保存する 28

29.

Meshの起動 ① Meshモジュー ルを起動 29

30.

Meshの作成 ③ Fit All で全体表⽰ ② -OZ の⽅向 に表⽰ ① Compound_1を選択し て,表⽰させる(「⽬」 のマークをオン) 30

31.

Meshの作成 ① 1D タブから線 の離散化を開く 31

32.

Meshの作成 ① ⻭⾞マーク を開く ② 分割数を選ぶ 32

33.

分割数の指定 ① セグメントの分割 数を 1 とする ② OKする ③ 適⽤して閉じる 33

34.

メッシュの作成 ② メッシュ⽣成 (compute) ① Mesh_1 を右クリック 34

35.

メッシュの作成結果 ① メッシュの 情報を確認 ② 閉じる 35

36.

メッシュファイルの作成 ② Mesh_1 を 右クリック ③ Export -> MED fileを選択 ① Mesh_1の下にグループがで きていることを確認 36

37.

メッシュファイルの保存 ① 作業フォルダ を開く ② ファイル名は 「Mesh_1.med」 ③ 保存する 37

38.

作業の保存(Meshまで) ① File -> Save As... を開く 38

39.

作業の保存(Meshまで) ② ファイル名は 「Study1_mesh1.hdf」 ① 作業フォルダ を開く ③ 保存する 39

40.

解析条件データの作成 • AsterStudy を⽤いて新しい Stage を作成する • AsterStudy を⽤いてファイルのメッシュファ イルとバイナリ出⼒ファイルの割当を⾏う • AsterStudy を⽤いてコマンドファイルをゼロ から作成する • 解析を実⾏する 40

41.

AsterStudyの起動 ① Asterモジュール を起動 41

42.

新しいステージの作成 ① Operation -> Add Stage 42

43.

メッシュの読込み(LIRE_MAILLAGE) ② Commands -> Mesh -> LIRE_MAILLAGE ① 現在のステージ を選択 43

44.

メッシュファイルの読込み ② 作業フォルダ を開く ① メッシュファ イルを探す(...) ③ 保存してある Mesh_1.med を選ぶ ④ 開く 44

45.

メッシュファイルの読込み ① フォーマットは バイナリ(med) ④ OK する ② 適⽤する ③ コマンドファイル の作成を確認 45

46.

モデルの割当(AFFE_MODELE) ② Commands -> Mesh -> AFFE_MODELE 46

47.

モデルの割当(AFFE_MODELE) ① AFFE(割当て) ② アイテムを プラスする ③ 編集する 47

48.

モデルの割当(AFFE_MODELE) ① TOUT(=all) はOUI(=yes) ② PHENOMENE(現象)は MECANIQUE(⼒学) MODELISATION(モデル化)は BARRE(棒要素) ③ OK する 48

49.

モデルの割当(AFFE_MODELE) ② コマンドファイル の作成を確認 ③ OK する ① 適⽤する 49

50.

要素特性の設定(AFFE_CARA_ELEM) ② Commands -> Mesh -> AFFE_CARA_ELEM 50

51.

要素特性の設定(AFFE_CARA_ELEM) ① 棒要素(BARRE) を選ぶ ② アイテムを プラスする ③ 編集する 51

52.

要素特性の設定(AFFE_CARA_ELEM) ① 要素グループを 編集する 52

53.

要素特性の設定(AFFE_CARA_ELEM) ① 線グループ 「Truss」を選ぶ ② OK する 53

54.

要素特性の設定(AFFE_CARA_ELEM) ① SECTION(断⾯)は GENERAL(⼀般)を選ぶ ② CARA(特性)は A (⾯積)を選び,VALE (値)は 3.1416 mm2 ③ OK する 54

55.

要素特性の設定(AFFE_CARA_ELEM) ② コマンドファイル の作成を確認 ③ OK する ① 適⽤する 55

56.

境界条件の設定(AFFE_CHAR_MECA) ① Commands -> BC and Loads -> AFFE_CHAR_MECA 56

57.

材料の定義(DEFI_MATERIAU) ① Commands -> Material -> DEFI_MATERIAU 57

58.

材料の定義(DEFI_MATERIAU) ① ELAS(弾性特性) ② 編集する 58

59.

材料の定義(DEFI_MATERIAU) ① E(ヤング率)= 200000 MPa NU(ポアソン⽐)= 0.3 ② OK する 59

60.

材料の定義(DEFI_MATERIAU) ② コマンドファイル の作成を確認 ③ OK する ① 適⽤する 60

61.

材料の割当(AFFE_MATERIAU) ① Commands -> Material -> DEFI_MATERIAU 61

62.

材料の割当(AFFE_MATERIAU) ② アイテムを プラスする ① model に割当 ③ 編集する 62

63.

材料の割当(AFFE_MATERIAU) ① TOUT(=all) を OUI(=yes) ② アイテムを プラスする ③ 既に定義されてい る mater を確認 ④ OK する 4 63

64.

材料の割当(AFFE_MATERIAU) ② コマンドファイル の作成を確認 ③ OK する ① 適⽤する 64

65.

荷重・境界条件の設定(AFFE_CHAR_MECA) ① Commands -> BC and Load -> AFFE_CHAR_MECA 65

66.

変位拘束の設定(DDL_IMPO) ① コンセプト名 を「fix」にする ③ アイテムを4個 プラスする ② DDL_IMPO(変 位指定) ④ 編集する 66

67.

変位拘束の設定(DDL_IMPO) ② 節点グループ を探す ③ 編集する ① 全⽅向拘束 DX = 0 DY = 0 DZ = 0 67

68.

変位拘束の設定(DDL_IMPO) ① Fix を選ぶ ② OK する 68

69.

変位拘束の設定(DDL_IMPO) ② OK する 69

70.

変位拘束の設定(DDL_IMPO) ② 同様に, Load : DZ =0 Roller : DY = 0, DZ = 0 Top : DZ = 0 とする ② 編集する 70

71.

変位拘束の設定(DDL_IMPO) ② コマンドファイル の作成を確認 ③ OK する ① 適⽤する 71

72.

荷重・境界条件の設定(AFFE_CHAR_MECA) ① Commands -> BC and Load -> AFFE_CHAR_MECA 72

73.

節点荷重の設定(FORCE_NODALE) ① コンセプト名 を「load」にする ③ アイテムを プラスする ② FORCE_NODALE (節点荷重) ④ 編集する 73

74.

節点荷重の設定(FORCE_NODALE) ② 節点グループ を探す ③ 編集する ① y ⽅向に -1000 N 74

75.

節点荷重の設定(FORCE_NODALE) ① Load を選ぶ ② OK する 75

76.

節点荷重の設定(FORCE_NODALE) ① OK する 76

77.

節点荷重の設定(FORCE_NODALE) ② コマンドファイル の作成を確認 ③ OK する ① 適⽤する 77

78.

線形解析の設定(MECA_STATIC) ① Commands -> Analysis -> Static -> MECA_STATIC 78

79.

線形解析の設定(MECA_STATIC) ① CHAM_MATER(材料の 場),CARA_ELEM(要素特 性),MODELE(モデル)を 既に定義してあるものにする ② EXCIT(活性 化 = 有効化) 2 ④ 編集する ③ アイテムを 2個プラスする 79

80.

荷重・境界条件の有効化(EXCIT) ① 「fix」を選ぶ ② OK する 80

81.

線形解析の設定(MECA_STATIC) ① 同様に「load」 を有効にする ③ コマンドファイル の作成を確認 ④ OK する ② 適⽤する 81

82.

解析結果の後処理(CALC_CHAMP) ① Poast Processing -> CALC_CHAMP 82

83.

解析結果の後処理(CALC_CHAMP) ① 後処理結果は解析と 同じコンセプト名を継承 ② CONTRAINTE(応⼒) のアイテムを増やし, SIEF_ELGA(積分点上の応 ⼒)を選ぶ 83

84.

解析結果の後処理(CALC_CHAMP) ① 後処理結果は解析と 同じコンセプト名を継承 ② FORCE(荷重)のアイ テムを増やし, REAC_NODA(節点反 ⼒)を選ぶ ③ 適⽤する 84

85.

解析結果の後処理(CALC_CHAMP) ① コマンドファイル の作成を確認 ② OK する 85

86.

結果の印刷出⼒(IMPR_RESU) ① Output -> IMPR_RESU 86

87.

結果の印刷出⼒(IMPR_RESU) ③ 作業フォルダ を開く ② ファイルを 探す(...) ④ファイル名は, Truss.rmed ⑤ 保存 87

88.

結果の印刷出⼒(IMPR_RESU) ① RESU(結果)のアイテムを プラスする ② 編集する 88

89.

結果の印刷出⼒(IMPR_RESU) ① 出⼒する結果は 「reslin」 ② TOUT_CHAM (すべての場)を OUI(= yes) ③ OK する 89

90.

結果の印刷出⼒(IMPR_RESU) ② コマンドファイル の作成を確認 ③ OK する ① 適⽤する 90

91.

結果の印刷出⼒(IMPR_RESU) ① Commands -> Output > IMPR_RESU(結果の印 刷出⼒)を開く 91

92.

結果の印刷出⼒(IMPR_RESU) ③ 作業フォル ダを開く ② 「...」をクリックして 結果ファイルを探す ④ファイル名は, Truss.txt ⑤ 保存 ① フォーマットはテ キスト(RESULTAT) 92

93.

結果の印刷出⼒(IMPR_RESU) ① RESUにアイテム を追加 ② 編集する 93

94.

結果の印刷出⼒(IMPR_RESU) ① 出⼒するRESULTAT(結果) は result(CALC_CHAMP) ② NOM_CHAM(場の名前) を SIEF_ELGA,REAC_NODA, DEPL にする ③ 下にスク ロールする 94

95.

結果の印刷出⼒(IMPR_RESU) ② 出⼒する要素グループ は「Truss」にする ① IMPR_COOR(座標の印 刷)を OUI(=yes)に ③ OK する 95

96.

結果の印刷出⼒(IMPR_RESU) ② コマンドファイル の作成を確認 ③ OK する ① 適⽤する 96

97.

コマンドファイルの保存 ① ステージ名を 右クリック ② コマンドファイルを エキスポート 97

98.

コマンドファイルの保存 ① 作業フォルダ を開く ファイル名は Stage_1.comm ③ 保存 98

99.

コマンドファイルの確認 DEBUT(LANG='FR') mesh = LIRE_MAILLAGE(FORMAT='MED', UNITE=2) model = AFFE_MODELE(AFFE=_F(MODELISATION='BARRE', PHENOMENE='MECANIQUE', TOUT='OUI'), MAILLAGE=mesh) elemprop = AFFE_CARA_ELEM(BARRE=_F(CARA='A', GROUP_MA=('Truss', ), SECTION='GENERALE', VALE=3.1416), MODELE=model) 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(DX=0.0, DY=0.0, DZ=0.0, GROUP_NO=('Fix', )), _F(DZ=0.0, GROUP_NO=('Load', )), _F(DY=0.0, DZ=0.0, GROUP_NO=('Roller', )), _F(DZ=0.0, GROUP_NO=('Top', ))), MODELE=model) load = AFFE_CHAR_MECA(FORCE_NODALE=_F(FY=-1000.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_ELGA', ), FORCE=('REAC_NODA', ), RESULTAT=reslin) IMPR_RESU(FORMAT='MED', RESU=_F(RESULTAT=reslin, TOUT_CHAM='OUI'), UNITE=3) IMPR_RESU(FORMAT='RESULTAT', RESU=_F(GROUP_MA=('Truss', ), IMPR_COOR='OUI', NOM_CHAM=('SIEF_ELGA', 'REAC_NODA', 'DEPL'), RESULTAT=reslin), UNITE=4) FIN() 99

100.

解析ケース(Study)の保存 ① File -> Save As... を開く 100

101.

解析ケース(Study)の保存 ① ファイル名はStudy1_aster1とする ② 保存 101

102.

解析ケース(Study)の実⾏ ③ 解析ケースの追加 (緑⾊のプラス) ① 解析に使うメモリ, 上限時間を確認 ④ Run ② ⾃動更新5秒毎に 102

103.

解析ケース(Study)の終了 ① 緑マークで解析成功 を確認 103

104.

解析結果の確認と利⽤ • ParaVisを⽤いて,解析結果を可視化し,定 性的な妥当性を確認する • 解析結果のテキストファイル(*.txt)を開 き,結果を確認する 104

105.

ParaVisの起動 ① Case View タブ を開く ② rmed ファイル を右クリック ③ ParaVis で開く 105

106.

結果の読込み ③ 適⽤する ① 読込むデータに チェックを⼊れる ② ベクトルを ⽣成する 106

107.

変形図の表⽰ ① Filters -> Common -> Warp By Vector を開く 107

108.

変形図の表⽰ ② 適⽤する ③ 変形を確認 ① Vectors = result_DEPL_Vector Scale Factor = 100 108

109.

変位の確認 ① result_DEPL から y ⽅ 向変位 DY を表⽰ ② 理論解との ⼀致を確認 109

110.

結果テキストファイルの確認(SIEF_ELGA) ------> CHAMP PAR ELEMENT AUX POINTS DE GAUSS DE NOM SYMBOLIQUE SIEF_ELGA NUMERO D'ORDRE: 1 INST: 0.00000000000000E+00 M1 N 1 -5.77354503324478E+02 ① 要素ごとの軸⼒が M2 N 1 出⼒されている 1 2.88683602771363E+02 M3 N 1 5.77354503324477E+02 M4 N P  577.4 N 1 -5.77367205542725E+02 M5 N 3 1 5.77354503324477E+02 M6 N P  288.7 N 1 2.88683602771363E+02 M7 N 2 3 1 -5.77354503324477E+02 ※ この条件だと座屈 が先に⽣じる 110

111.

結果テキストファイルの確認(REAC_NODA, DEPL) ① 反⼒ = 500 N CHAMP AUX NOEUDS DE NOM SYMBOLIQUE REAC_NODA NUMERO D'ORDRE: 1 INST: 0.00000000000000E+00 NOEUD X Y DX DY DZ N1 0.00000000000000E+00 0.00000000000000E+00 5.68434188608080E-14 5.00000000000000E+02 0.00000000000000E+00 N2 5.00000000000000E+01 8.66000000000000E+01 1.13686837721616E-13 -6.82121026329696E-13 0.00000000000000E+00 N3 1.00000000000000E+02 0.00000000000000E+00 1.13686837721616E-13 9.09494701772928E-13 0.00000000000000E+00 N4 1.50000000000000E+02 8.66000000000000E+01 -1.13686837721616E-13 -6.25277607468888E-13 0.00000000000000E+00 N5 2.00000000000000E+02 0.00000000000000E+00 -1.13686837721616E-13 5.00000000000000E+02 0.00000000000000E+00 ------> CHAMP AUX NOEUDS DE NOM SYMBOLIQUE DEPL NUMERO D'ORDRE: 1 INST: 0.00000000000000E+00 NOEUD X Y DX DY DZ N1 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00 N2 5.00000000000000E+01 8.66000000000000E+01 9.18906298610143E-02 -1.59156905400305E-01 0.00000000000000E+00 N3 1.00000000000000E+02 0.00000000000000E+00 4.59453149305072E-02 -2.91786492711402E-01 0.00000000000000E+00 N4 1.50000000000000E+02 8.66000000000000E+01 0.00000000000000E+00 -1.59156905400305E-01 0.00000000000000E+00 N5 2.00000000000000E+02 0.00000000000000E+00 9.18906298610143E-02 0.00000000000000E+00 0.00000000000000E+00 ① 最⼤変位 = -0.292 mm 111

112.

まとめ • トラスの解析により,コマンドファイルの作成 を体験した • 解析結果のテキスト出⼒により,理論解との⽐ 較を⾏った 112