Python スクリプトの使用2019年1月26日 | |
はじめにPython スクリプトの使用について。 使用バージョンSalome-Meca 2018.0.1 (Salome 8.5.0) Python スクリプトの使用Salome は Python で操作することができる (マニュアルにサンプルあり)。画面下のコンソールで実行できる。 ボックスを作ってみる。新しいドキュメントを作り、Geometry モジュールを起動して、以下のように入力する。
from salome.geom import geomBuilder
geompy = geomBuilder.New(salome.myStudy)
gg = salome.ImportComponentGUI('GEOM')
box = geompy.MakeBoxDXDYDZ(1., 1., 1.)
id_box = geompy.addToStudy(box, 'Box')
gg.createAndDisplayGO(id_box)
gg.setDisplayMode(id_box, 2)
メッシュを作ってみる。Mesh モジュールを起動して、以下のように入力する。 from salome.smesh import smeshBuilder smesh = smeshBuilder.New(salome.myStudy) mesh = smesh.Mesh(box, 'Mesh') algo1D = mesh.Segment() algo1D.NumberOfSegments(10) algo2D = mesh.Quadrangle() algo3D = mesh.Hexahedron() mesh.Compute() ![]() ファイルにして読み込ませることもできる。以下のようなファイル box.py を作る。
import salome
from salome.geom import geomBuilder
from salome.smesh import smeshBuilder
salome.salome_init()
study = salome.myStudy
geompy = geomBuilder.New(study)
smesh = smeshBuilder.New(study)
box = geompy.MakeBoxDXDYDZ(1., 1., 1.)
id_box = geompy.addToStudy(box, 'Box')
mesh = smesh.Mesh(box, 'Mesh')
algo1D = mesh.Segment()
algo1D.NumberOfSegments(10)
algo2D = mesh.Quadrangle()
algo3D = mesh.Hexahedron()
mesh.Compute()
mesh.ExportUNV('box.unv')
salome.myStudyManager.SaveAs('box.hdf', study, False)
study.Close()
新しいドキュメントを作り、メニュー [File]-[Load Script...] で上のファイルを開く。ボックスのメッシュが作られたあと、UNV ファイルが出力され、最後にデータが保存される。 Python スクリプトの自動生成[File]-[Dump Study...] でスタディの Python スクリプトを書き出すことができる。 GUI なしでのスクリプトの実行GUI なしでスクリプトを実行することもできる。 サーバーを起動する。 $ salome -t スクリプトを実行する。 $ salome shell box.py サーバーの停止する。 $ salome killall 古い | |
| PENGUINITIS | |