モデルを修正する方法として、.geoファイルを修正する方法を紹介します。 .geoファイルの修正は、モデルの修正だけではなく、GUIでは設定しにくい命令も追加できますので、非常に便利です。
.geoファイルとは
Gmshで行う作業は、すべて.geoファイルの中に命令として記録されます。 GUIで何か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つの方法が有ります。
Gmshからアクセス
画面左のツリーから[Modules]-[Geometry]-[Edit script]をクリックすると、現在開いている.geoファイルをテキストエディタで開くことができます。
エクスプローラからアクセス
画面上部に現在開いている.geoファイルのパスが表示されています。エクスプローラーで直接アクセスし、.geoファイルをテキストエディタで開きます。
.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ファイルを再読込し、修正が反映されます。
点2がx軸方向へ1移動しました。
以上が.geoファイルの修正によるモデルの修正となります。.geoファイルはテキストファイルであり直接編集できるので、GUIではできない操作を直接打ち込む、といった事ができるようになります(むしろこっちが重要)。各命令については、おいおい書いていこうと思います。
上記は、私がネットの情報やマニュアルを調べたり試行錯誤した上で、「こうやったらできた」というものであり、スマートな方法ではないかも知れません。内容に誤りや、「もっとこうしたほうがいい」という点がありましたら、コメントにて指摘いただければ幸いです。