Salomeの基本的な使い方

卒論の4年生、創造工房の3年生は、ここにSalomeの基本的な使い方を どんどんメモしていって下さい。

Salome-Mecaチュートリアル

公式ページの検証問題をトレースする

Code_Asterは非常に多くの問題を検証し、公開していますが、 これを再現するのにこの説明ではあまりに不親切では…… と思っていたら、Aster Study -> Operations -> Import a testcase でここにある)難しい問題でも簡単に再現できるようです(確認済み)。

Salome-Mecaを単体でインストール

 新しいPCにCAELinuxをインストールすると、SalomeのGeometryで線や点がちゃんと表示されない。なので、Salome-Mecaを試しに単体でインストールしてみた。

インストール

Windows版

Windows版が出ていたようです。 面白いことにAbaqusやNastranの形式も読み込めるとか。

Salome-Meca2019

Salome-Meca2018

2018/07/13リリース。アイコンが一新されたが、操作方法は2017と比べてそれほど変わらないみたい。

起動時のエラー

グラフィックカードとlibstdc++の相性によって起動しないことがあるらしい。この時、

LD_PRELOAD='/usr/$LIB/libstdc++.so.6' DISPLAY=:0 ~/salome_meca/appli_V2018/salome

というふうにして毎回端末から起動するか、あるいはそれが手間であれば

cd ~/salome_meca/V2018/prerequisites/debianForSalome/lib
mkdir kari
mv libstdc++* kari

として、原因のファイルをどけてやれば、アイコンからでも問題なく起動するSalomeメモの片持ち梁で動作確認済み)。

Salome-Meca2017について

unicode decode error

日本語環境のUbuntuで計算を実行しようとすると&link(この人(オープンCAE勉強会の人),https://twitter.com/mmer547/status/903788754506309632)と同じエラーが発生する。どうやら自動でlogの名前に実行日時が書き込まれるのだが、グルー言語としてPython2.7(Python2系はデフォルトではutf-8に対応していない)が使われているため、実行日時の曜日が日本語であることによってエラーが出るらしい。

Salome-Meca2016について

Salome-Meca2015.2について

Salomeの日本語化

DEXCSのSalomeについて

インポート

 FreeCADとSalomeを使って、調査してみる。

STEPおよびBREP

 充実立体として、そのままSalomeにインポートして、計算にかけられるので一番取り扱いしやすそうな形式。しかし、AUTOCADからはエクスポートできない。

IGES

 &link(AUTOCADからエクスポートできる形式,http://docs.autodesk.com/ACD/2014/JPN/index.html?url=files/GUID-81A5EE76-39A7-40A4-A5C5-E4921C03B33A.htm,topicNumber=d30e317617)。ほとんどの場合、表面の情報しか持っていないようなので、そのままでは数値計算できない。Salomeにインポートした後に、次の作業が必要。

stl

 3Dプリンター関係で使用する形式。表面の情報しか持っていないし、そのままSalomeのGeometryにインポートすることはできない(Meshにはインポートできるけど、ShellにもSolidにもなっていないので、全く役に立たない)。Salomeにインポートするには以下のようにFreeCADを経由する必要がある。

FreeCAD

Salome

stl(追記)

Salome-Meca2016になってから、FreeCADを経由しなくても、次のようにすれば充実立体に変換して、メッシュを切って、計算できるようになった。

とはいえ、stlはすべての面を三角形で形作っているので、面の選択が非常に大変(一つの面を選択したいだけなのに、沢山の細かな三角形を一個一個選択しなければならない)なため、今までどおりFreeCADを経由した方が楽そう。

salome-mecaにスクリプトを使って節点座標をインポートする。

 インポートしたらダミー文字を座標の前や後に入れてあげる。それは写真で示している感じ。 ダミー文字列は

,AA, P
,BB, =geompy.MakeVertex(
,CC,,
,DD,,
,EE, )

になる 上記の文字列を写真のように入れたら、csvファイルで保存する。 csvファイルで保存したら今度はテキストエディターで開く。その後ダミー文字列を置換する。

表示スクリプトの作成

Lbre ofice等の表計算ツールで作成する。以下の写真のようになる。

スクリプトを統括する

salome.salome_init() theStudy = salome.myStudy

import GEOM import geompy import math import SALOMEDS

geompy.init_geom(theStudy)

それであとは作ったものを貼り付ければ良い。

salome-meca にスクリプトでインポート

salome-meca を開いてファイルからスプリクトを読み込むを選択 > あとはファイルを選択すればいい。

salome user's guide

salomeの3Dモデル作成手順

salomeの基本操作

モデル作成に関して(特に複雑なモデルを作成する方へ)

点から(中身が詰まっていない)直方体を作る

Salome-Meca2019で4点から面を作る。

面から(中身が詰まっている)直方体を作る

中身が詰まった三角錐を作る

物体を切り抜いて孔を空ける

geometryで部材に色を付ける。

体積を求める

後藤メモ(2014/11/6)

直方体は割と正確に(有効数字10桁以上)出るけど、球や円錐は有効数字1桁しか出ない(メッシュを細かくしても)。曲面のない角柱や角錐はどうでしょう? 誰か、調査して下さい。

後藤メモ(2014/11/7) 昨夜、自宅のマシンで計算してみたら、精度が悪かったのだが、大学のマシンでメッシュを細かくしてみたら、球でも有効数字3桁ぐらいの精度が出た。 昨晩、家で計算したときは円錐の体積が\( \pi \)になるようにと思って、 半径を100, 高さを333.3333とかと入れたのだけど、3で割るんだから高さは300にすべきですね。それで精度が悪いと思い込んでおりました。 昨夜は、酒もあんまり飲んでなかったはずなので(ビール200\( \sim \)300m\( \ell \))、 ちょっとぼけてきたのかもしれません。

追記(2014/12/16) SalomeのGeometry操作中に求めたいオブジェクトを選択してMeasuresからBasicPropertiesをクリックすれば体積が求まりました。球の体積も有効数字8桁ぐらいの精度が出ました。 追記(2016/10/21) メッシュの体積も求めることができます

物体の色を変更する

物体を木材などの色に変更したいとき

Colorが出ない人は……

色を物体ごとに変えたい時

2つの画面で物体を見比べるには

例えば、Mesh_1とMesh_2を見比べたり、Post-Proの結果を見比べたいとき

2材料の場合(Aster Study)

2材料を解くためsalomeでグルーピングするには

材料が2つのとき

http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s30a_model.png

http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s31edit.png

http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s32pheno.png

http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s33items.png

http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s34item.png

http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s35_3d.png

http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s36mesh.png

http://www.str.ce.akita-u.ac.jp/~gotouhan/salome/gazou/s37model.png

salomeで.unvをつくり、プログラムで.inpにする方法

四面体要素C3D4

メッシュを切る手順

直方体要素C3D8で切る手順

salomeでダイヤカットを作る

c3d4or3dプリンタ用

s6用

Salomeモデリング上の注意

計算結果をcsvファイルで出力

手順

メモ

New Entity

Primitive

basic

Delete all?が出たら

http://www.str.ce.akita-u.ac.jp/~gotouhan/j2019/aoyama/deleteall.png Salomeを閉じるときにたまに出るやつ. これが出たら「はい」を押そう.「いいえ」を押すとAster Studyのコマンドファイルが消えてしまう.

SALOMEで形状生成 → Netgenでメッシュ切り → cgxで境界条件設定 → CalculiXで計算

手順

SALOME

Netgen

cgx

以下のcgxコマンドは全部「CalculiX Graphix」ウィンドウ(以下cgxウィンドウ)が手前にある状態で入力

Node

Node, NSET=Nall

Element, type=C3D4, ELSET=PART1

荷重のかけ方

直方体に直方体メッシュを切って、拘束、載荷する手順

SalomeからCalculiXのinpファイルを生成

SalomeのunvファイルをCalculiXのinpに変換


SalomeのmedファイルをCalculiXのinpに変換

例題

マニュアル和訳

計算サーバーのsalomeを使う手順

動作状況等

&link(Salome,http://www.salome-platform.org/)5.1.3のバイナリー版は、 Vine5.1上では、起動はするが、Geometryなどの新規作成をして、ちょっと動作させようとすると、

練習

&link(ここ,http://salome-meca.cocolog-nifty.com/blog/2012/02/30-f8fd.html) と同じ事をやろうとするとメッシュを切るまでは問題なく進むが、 そのあとAsterに切り替えた瞬間に

Fatal error
SIGSEGV 'segmentation violation'detected Address 18

と表示され動かなくなる(Address 0 も確認)。Terminalでどんなエラーが出力されるかよく見る必要がある。

追記

salomeを再起動後、再度計算を試みた。 Linear elastic -> 3D までは問題ない。 次のselect a mesh from the salome object browser で、 作ったMesh_1を選択しても

The selected entry is not a mesh or the SMESH component must be activated

と言われてしまう。 salomeのフォーラム(古いけど)を見る限り、有効な解決策はないみたい。

code-asterの基本的な使い方(線形弾性)

 code-asterにはかなりたくさんの機能がある。詳しい使い方は&link(ここ,http://opencae.gifu-nct.ac.jp/pukiwiki/index.php?SALOME-Meca%A4%CE%BB%C8%CD%D1%CB%A1%B2%F2%C0%E2)に載っている

code-asterコマンドリスト

http://opencae.gifu-nct.ac.jp/pukiwiki/index.php?plugin=attach&refer=SALOME-Meca%A4%CE%BB%C8%CD%D1%CB%A1%B2%F2%C0%E2&openfile=00-00.pdf

「geometry」で固定や載荷をするところをつくる

「mesh」でメッシュ分割

「aster」で条件を入力

「commファイル」で各条件を編集

要素数が多くて計算が出来なかったときの対処方法

「post-pro」で結果の表示

「paravis」で結果の表示

rmedファイル(結果)をテキストファイルにするには

commファイルの編集(unvファイル)

 初期状態では、commファイルの一番下が、

に変えて、asterをrunすると、いつも通り同ディレクトリにlinear-static.rmedができている。名前は、med形式になっているが、viで中身を開いてみると、ちゃんとunv形式になっている。デフォルトでは、viでunvファイルを開いて、次のように打てば節点情報が見れる。

ちなみに、載荷線or面などのグループの節点番号を調べたい場合は、

Gmsh経由(posファイル)

 ぱっと見、節点番号が表示されていない気がしますが……。

直方体要素での解析方法

https://sites.google.com/site/codeastersalomemeca/home/salome-meca-chutoriaru1/meshmojuru#TOC-6-Geometry-を参照した

(解決したらここに方法を書く)

熱関係

asterで熱を解くやり方(材料一つ)

シェル要素

接触解析(摩擦あり)

座屈解析

直交異方性材料

Aster Studyの設定方法

DEFE_MATERIAU(Define a material)

*ELAS_ORTHを選択する。

ポアソン比

Code_Asterでの直交異方性材料のポアソン比がよく分からない(梁の変位にほとんど影響しないので確かめていない,とか)とのことだったので,構造解析関係のプログラム置き場にある&link(ccxonsaito.f90,http://www.str.ce.akita-u.ac.jp/~gotou/programoj/ccx/ccxonsaito.f90)の異方性材料の設定をもとに,CalculiXとCode_Asterで同じ計算をして確かめてみた(計算に使ったものは&link(こちら,http://www.str.ce.akita-u.ac.jp/~gotouhan/j2017/kondo/tyousa/ortho/))

局所座標系

Code_Asterで斜めになっている物体を直交異方性材料として計算するのが難しいという問題が(トラス橋や屋根付橋などで)あったが,部材の向きごとに局所座標系を決めれば比較的簡単に計算できる.

シェル要素の異方性

http://www.str.ce.akita-u.ac.jp/~gotouhan/j2019/aoyama/defi_composite.png

回転対称性・横方向等方性(円筒座標系)

http://www.str.ce.akita-u.ac.jp/~gotouhan/j2020/oikawa/entou.png

http://www.str.ce.akita-u.ac.jp/~gotouhan/j2020/oikawa/archihou.comm

elemprop = AFFE_CARA_ELEM(MASSIF=_F(ANGL_AXE=(0.0, 90.0),

                                   GROUP_MA=('Partition_3', ),
                                   ORIG_AXE=(0.0, 14500.0, 10000.0)),
                         MODELE=model)

mater = DEFI_MATERIAU(ELAS_ORTH=_F(E_L=375.0,

                                  E_N=7500.0,
                                  E_T=375.0,
                                  G_LN=500.0,
                                  G_LT=500.0,
                                  G_TN=500.0,
                                  NU_LN=0.016,
                                  NU_LT=0.016,
                                  NU_TN=0.016))

弾塑性解析

   20mmの角棒の片端を固定して引っ張ったときの先端の伸び      20mmの角棒を片持ち梁として曲げたときの先端のたわみ

斜張橋等のケーブルの疲労解析

Aster Study1の設定

AFFE-CARA-ELEMの設定 いつものソリッド要素のときに3Dと設定しているところをスクロールしていくと"CABLE"というがある。

 CABLEを設定するとSECTION で断面積 N_INITでケーブルの初期張力を設定する。 その他の設定はまだわかっていない。破壊挙動を再現することはどうしたらいいのかわからない。さて..............

ひずみの出力(v12)

commファイルの一番下のところを以下の(1),(2)のように修正する.

IMPR_RESU(FORMAT='MED',

         UNITE=80,
         RESU=_F(MAILLAGE=MAIL,
                 RESULTAT=resu,
                 NOM_CHAM=('SIGM_NOEU','SIEQ_NOEU','DEPL','EPSI_NOEU',),),);    #----(2)

ParaViSで梁要素や板要素の変位図を描く

立体要素とは違い、回転自由度を持つ梁要素や板要素のDEPLは1節点につき6成分あるため、そのままでは Warp By Vector で変位図を描けない。 このとき、PropertiesのGenerateVectorsにチェックを入れ、Applyすると、DEPLの最初の3成分(DX・DY・DZ)だけ取り出したベクトル(DEPL_Vector)が作られるため、 Warp By Vector で変位図を描けるようになる。

ParaViSで板要素の板厚を反映させる(要確認)

ParaViSでMEDファイルを読み込んでも、自動では板厚を考慮したモデルとして描画されない。そのため、与えた板厚が正しいかどうかや、厚さ方向の(積分点とかの?)応力やひずみの分布等を視覚的に確認できない。このとき、以下略(そのうちに書く。というか誰か書いて)……

部材をブーリアン結合で結合する方法とコンパウンドで一つのモデルにする方法

詳細設定をしてメッシュをきる方法

3DのアルゴリズムをNETGEN3D > 2DのアルゴリズムをNETGEN1D-2Dにする。

2Dの画面の詳細設定の右にある歯車マークをクリックしてNETGEN 2D Paranetersを選択する。

最大サイズと最小サイズを設定する。(ジオメトリを選択して詳細設定を開くと最大最小の数値が表示される、最小サイズは選択したモデルのメッシュを切ることができる最小のサイズなためその数値を超えないようにする。)

その設定が終わったらOKで戻って適用して閉じる。あとはいつも通りメッシュを切る。

salome-mecaでメモリーが足りないと言われたら

  ! <S> Exception user raised but not interceptee. !

  ! The bases are fermees.                                                       !
  ! Type of the exception: error                                                 !
  !                                                                              !
  !  Error during the dynamic allocation. It was not possible to allocate        !
  !  a memory zone length 263 Mo, one exceeds the maximum limit                  !
  !  built-in with 1293 Mo and one occupies already 1059 Mo.                     !
  !  The last operation of memory deallocation made it possible to recover 0 Mo

paravisで試験体の色をセットする方法

paravisを開いた後,パイプブラウザでファイルを開く.Solid Colorを選択して色をつけた後,左側にカラーマップエディタが出てくるのでそこをカスタムする.


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS