*[[出入口の延長(vmtk)]] [#a59dbce3]

管の内部流のような流体計算を行う場合は、入口・出口の境界条件の影響が流れに及ばないように、流体領域を管状に伸ばすことがよくあります。

ここでは、入口・出口が開いた状態の表面メッシュがある場合に、管の中心線から求まる菅の径に基づいて、流体領域を延長します。

使用するツールは、オープンソースの血管モデリング・ツール[[vmtk:http://www.vmtk.org/index.html]](ver 1.2)です。

**表面メッシュ [#f371650d]

使用する表面メッシュは、以下のような血管の一部のメッシュです。(メッシュデータは、このページの一番下のvessel_surf_without_capping.zipにあります。)流体計算用の境界条件として、inletとoutletの位置は絵のように仮定します。

#ref(vessel_surf_without_capping.png,center,nowrap,60%,vessel_surf_without_capping);

上図から分かる通り、入口、出口は開いています。

**vmtkのコマンド実行 [#b0d8e541]

以下、vmtkはインストールされているものと仮定します。

vmtkを起動し、PypePadのコマンド編集欄に以下のコマンドを打ち込みます。

>vmtksurfacereader -ifile vessel_surf_without_capping.vtp --pipe vmtkcenterlines -seedselector openprofiles --pipe vmtkflowextensions -adaptivelength 1 -extensionratio 20 -normalestimationratio 1 -interactive 0 --pipe vmtksurfacewriter -ofile vessel_ex.vtp 

#ref(commands.png,center,nowrap,60%,commands);

コマンドを打ち込みましたら、メニューバーから

Run > Run all

をクリックしてコマンドを実行します。

**境界番号の指定 [#l36f077f]

コマンドを実行しますと、メッセ―ウィンドウに

Cappint surface.

のメッセージが記述された後に、ビューアが立ち上がります。ビューアを見ますと、血管の入口、出口にそれそれ"1"と"0"が表示されているのが分かります。

#ref(viewer_for_boundary_id.png,center,nowrap,60%,viewer_for_boundary_id.);

vmtkでは、基本的に、ビューアの左下にある指示にしたがって進みます。ここでは、下のようにして、入口に"1"と出口に"2"を指定します。

① 表面メッシュの絵に問題がないようでしたら、キーボードから"q"をたたきます。

② "Please input list of inlet profile ids:_"と出ますので入口の番号として、"1"を記入して、Enterします。

③ "Please input list of outlet profile ids(leave empty for all all available profiles):_"とでますので、"0"を記入して、Enterします。

**管の延長 [#w5a52a43]

境界番号を指定しますと、入口、出口が延長されます。出力されたvessel_ex.vtuファイルをParaViewで表示することができます。
境界番号を指定しますと、入口、出口が延長されます。出力されたvessel_ex.vtpファイルをParaViewで表示することができます。

#ref(vessel_ex.png,center,nowrap,40%,excluded vessel);

**ダウンロード [#uf5cec30]
データファイル:
#ref(vessel_surf_without_capping.zip)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS