Python スクリプトの使用

2014年1月22日

はじめに

Python スクリプトの使用について。

使用バージョン

Salome-Meca 2013.2 (Salome 6.6.0)

Python スクリプトの使用

Salome は Python で操作することができる (マニュアルにサンプルあり)。画面下のコンソールで実行できる。

ボックスを作ってみる。新しいドキュメントを作り、Geometry モジュールを起動して、以下のように入力する。

import geompy

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 モジュールを起動して、以下のように入力する。

import smesh

mesh = smesh.Mesh(box, 'Mesh')

algo1D = mesh.Segment()
algo1D.NumberOfSegments(10)

algo2D = mesh.Quadrangle()

algo3D = mesh.Hexahedron()

mesh.Compute()

ファイルにして読み込ませることもできる。以下のようなファイル box.py を作る。

import salome
import geompy
import smesh

salome.salome_init()

study = salome.myStudy

geompy.init_geom(study)

box = geompy.MakeBoxDXDYDZ(1., 1., 1.)
id_box = geompy.addToStudy(box, 'Box')

smesh.SetCurrentStudy(study)

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 なしでスクリプトを実行することもできる。

~/.bashrc にパスを追加しておく (killSalome.py 用)。

export PATH=~/opt/salome/appli_V6_6_0/bin/salome:$PATH

これは runSalomeMeca 用のパスの前に入れる。

サーバーを起動する。

$ runAppli -t

スクリプトを実行する。

$ runSalomeScript box.py

サーバーの停止する。

$ killSalome.py