Salome-Meca 入門

2014年2月8日

はじめに

Salome-Meca とは、モデラー Salome と構造解析ソルバー Code_Aster がセットになったオープンソースのシステムである。これ 1 つですぐに構造解析を体験することができる。

Linux 環境で動作する。ここではとりあえず基本的な操作の手順を示す。

使用バージョン

SALOME-MECA-2014.1-x86_64, Linux Mint 15 x86_64

インストール

Salome-Meca は Code_Aster のページ から入手できる。

パッケージを展開。

$ tar xvzf SALOME-MECA-2014.1-LGPL.tgz

インストーラの実行。

$ ./SALOME-MECA-2014.1-LGPL.run

指示に従ってインストールする。

インストールが済むと、ウインドウマネージャにアイコンが追加される。そのアイコンから Salome-Meca を起動できる。

※コマンドラインからでも起動は可能だが、コマンドラインから起動するとポスト処理モジュール ParaVis がうまく動かない。

メニューの日本語化

Salome のメニューを日本語にすることができる。メニュー [File]-[Preferences] の [SALOME]-[General] の "Language" の "Current language" から "ja" を選んで、Salome-Meca を再起動する。

Salome 入門

Salome は様々なモジュールで構成されており、それぞれのモジュールでメニューや操作が異なる。以下では Geometry モジュールを例にして基本的な使い方を示す。

Salome-Meca を起動。

$ runSalomeMeca

"New document" ボタンを押してドキュメントを新規作成する。

新規ドキュメントが開く。

"Geometry" ボタンを押して Geometry モジュールを起動する。

ジオメトリ作成ボタンをどれか押す。

ダイアログが表示される。"Apply and Close" ボタンを押すと、形状が作成される。

表示モードの切り替え

メニューの [View]-[Display Mode] で "Wireframe" と "Shading", "Shading With Edges" の切り替えができる。

マウスによる画面操作

回転Ctrl + 右ボタンドラッグ
平行移動Ctrl + 中央ボタンドラッグ
拡大・縮小Ctrl + 左ボタンドラッグ/ホイール回転

オブジェクトの選択

直接選択左クリック/Object Browser で項目クリック
矩形選択左ボタンドラッグ
多角形選択右ボタンドラッグしながら左クリック、終了は左ダブルクリック

オブジェクトの作成・削除

オブジェクトの作成

オブジェクトの作成はメニュー [New Entity] かツールバーのボタンで行う

オブジェクトの削除

オブジェクトの削除は、オブジェクトを選択してポップアップメニュー (右クリック) "Delete" か、Del キーを押す。画面左の Object Browser でも可能。

オブジェクトの操作

オブジェクトの操作はメニュー [Operations] かツールバーのボタンで行う。ダイアログでオブジェクトを選択する場合、矢印ボタンを押した後、画面か Object Browser でオブジェクトを指定する (自動で選択されることもある)。

オブジェクトの表示・非表示

オブジェクトを選択してポップアップメニュー Hide/Show で表示・非表示を切り替えられる。Object Browser でも可能。

終了

メニュー [File]-[Exit] で終了。

Salome-Meca による構造解析

丸棒の端を固定し、もう一端に荷重をかけて圧縮するという例を実行してみる。

  1. 上の手順にしたがって、Salome-Meca を起動し、ドキュメントを新規作成し、Geometry モジュールを有効にする。
  2. メニュー [New Entity]-[Primitives]-[Cylinder] (あるいはツールバーのボタン) で円筒を作る。サイズは好きなようにする。
  3. Object Browser でオブジェクトを選び右クリック、ポップアップメニューから "Create Group" を選ぶ。
  4. "Shape Type" でフェイスを選ぶ。"Group Name" は好きにつけてよいが、たとえば "fix" とする。オブジェクトの底を選んで "add" ボタンを押す。"Apply" ボタンを押すと、グループが作成される (Object Browser 上で見ることができる)。同様にして、オブジェクトの上面を選んで "load" というグループを作る。これらが境界条件が設定される場所になる。
  5. "Mesh" ボタンを押して Mesh モジュールを起動する。
  6. メニュー [Mesh]-[Create Mesh] を選ぶ。Object Browser でオブジェクトを選ぶと、"Geometry" 欄に設定される。"Assign a set of hypotheses" の "Automatic Tetrahedralization" を選び、メッシュサイズを適当に設定する。"Algorithm" として自動的に "Tetrahedron (Netgen)" (テトラメッシュを作るアルゴリズム) が選ばれる。"Apply and Close" ボタンを押す。
  7. Object Browser の Mesh ツリーから今作ったメッシュ (名前を変えていなければ "Mesh_1") を選択、ポップアップメニューで "Compute" を選ぶと、メッシュが作成される。
  8. 解析の設定に移る。"Aster" ボタンを押して Aster モジュールを起動する。
  9. "Linear Elastic" ボタンを押す。
    線形弾性体解析用の設定ウィザードが起動する。指示にしたがって進める。最後に command file の保存パスを聞かれるので、"job1.comm" などとする (名前は任意だが、拡張子は ".comm" とする)。
  10. Object Browser の Aster ツリー上に "linear-static" という項目ができるので、これを選び、ポップアップメニューの "Edit" を選択。Name を command file の名前と同じにしておくとわかりやすい。
  11. Object Browser の "job1" ("linear-static" を改名したもの) のポップアップで "Run" を選ぶと、計算が始まる。セットアップに問題がなければ、xterm が起動して実行中のメッセージが流れる。計算が無事終わると、Object Browser に Post-Pro のツリーができる。Code_Aster のメッセージは、"job1" の "Results" ツリーの "job1.mess" を右クリックしてポップアップメニューを開き、"Read as text" で見ることができる。
  12. 結果の表示に移る。"Post-Pro" ボタンを押して Post-Pro モジュールを起動する。
  13. Object Browser の Post-Pro ツリーの "job1.med" (結果ファイル) - "MAIL" - "Fields" - "RESU___DEPL___..." - "0,_" を右クリック、ポップアップメニューから "Deformed Shape" を選ぶ。
    ダイアログを適当に設定して "Apply and Close" ボタンを押すと、変形後の形状が表示される。同様に Scalar Map を表示すると、変位分布が描かれる (メッシュを非表示にするとよいかもしれない)。
  14. メニュー [File]-[Save] でデータを保存する。

保存データからの再開

データを読み込んですぐ Aster モジュールで計算データを編集しようとしてもできない。その場合は一度 Mesh モジュールを起動する。

古い情報