さつまろぐ

CAEとかプログラムとか、出来たことの記録など、誰かのお役に立てれば幸い。

Gmshで作ったモデルを修正する(.geoファイルの修正)

モデルを修正する方法として、.geoファイルを修正する方法を紹介します。 .geoファイルの修正は、モデルの修正だけではなく、GUIでは設定しにくい命令も追加できますので、非常に便利です。

.geoファイルとは

Gmshで行う作業は、すべて.geoファイルの中に命令として記録されます。 GUIで何か1つ作業を行うごとに、その作業に対応した命令が自動で保存されていきます。

f:id:satsuma4801:20200917005158p:plain
四角形(点4、線4、面1)

例えば、上図のような四角形に面を作る作業は、.geoファイルには次のように記録されます。

SetFactory("OpenCASCADE");    //OpenCASCADEを使えるようにする
//+
Point(1) = {0, 0, 0, 1.0};               //点1を作る
//+
Point(2) = {1, 0, 0, 1.0};               //点2を作る
//+
Point(3) = {1, 1, 0, 1.0};               //点3を作る
//+
Point(4) = {0, 1, 0, 1.0};               //点4を作る
//+
Line(1) = {1, 2};                           //線1を作る
//+
Line(2) = {2, 3};                           //線2を作る
//+
Line(3) = {3, 4};                           //線3を作る
//+
Line(4) = {4, 1};                           //線4を作る
//+
Curve Loop(1) = {1, 2, 3, 4};       //ループ1を作る
//+
Plane Surface(1) = {1};               //面1を作る

点、線、ループ、面を作る命令が書かれているのが分かります。なお//+の行や//以降の文字はコメントとして無視されます。

.geoファイルへのアクセス

.geoファイルにアクセスするには次の2つの方法が有ります。

  1. Gmshからアクセス

    画面左のツリーから[Modules]-[Geometry]-[Edit script]をクリックすると、現在開いている.geoファイルをテキストエディタで開くことができます。

  2. エクスプローラからアクセス

    画面上部に現在開いている.geoファイルのパスが表示されています。エクスプローラーで直接アクセスし、.geoファイルをテキストエディタで開きます。

f:id:satsuma4801:20200917012252p:plain
.geoファイルへのアクセス:1. Edit script をクリック、2. 保存先へ直接アクセス

.geoファイルの編集と反映

.geoファイルをテキストエディタで開けたら、実際に編集し反映させてみましょう。 上記の四角形の例から、点2をx軸方向に1移動してみます。

修正前

Point(2) = {1, 0, 0, 1.0}; 

修正後(x座標を1から2へ変更)

Point(2) = {2, 0, 0, 1.0};

修正したらファイルを上書き保存して編集は完了です。[Modules]-[Geometry]-[Reload script]をクリックすると、.geoファイルを再読込し、修正が反映されます。

f:id:satsuma4801:20200917014421p:plain
Reload script で.geoファイルの修正を反映

点2がx軸方向へ1移動しました。

f:id:satsuma4801:20200917014837p:plain
点2がx軸方向へ1移動した

以上が.geoファイルの修正によるモデルの修正となります。.geoファイルはテキストファイルであり直接編集できるので、GUIではできない操作を直接打ち込む、といった事ができるようになります(むしろこっちが重要)。各命令については、おいおい書いていこうと思います。


上記は、私がネットの情報やマニュアルを調べたり試行錯誤した上で、「こうやったらできた」というものであり、スマートな方法ではないかも知れません。内容に誤りや、「もっとこうしたほうがいい」という点がありましたら、コメントにて指摘いただければ幸いです。

広告