いらない変数の削除(スクリプト)

可視化ソフトウェアParaViewで、"Programmable Filter"を使用して、いらない変数を削除する方法を説明します。

データの準備

まず、例となるデータを作成します。ここでは、トーラス面を作成し、トーラス面の法線ベクトルに対して、勾配ベクトル、渦度、Q-Criterionを計算します。

トーラス面を作成しましょう。ツールバーから

 Sources >> Superquadratic

と進み、Propertiesタブ内の"Apply"をクリックしますと、以下のようなトラース面が作成されます。色づけは法線ベクトルの大きさです。

normals for torus

この法線ベクトルに対して、勾配ベクトル、渦度、Q-Criterionを計算してみましょう。

このためには、ツールバーから

 Filters >> Alphabetical >> Gradient Of Unstructured DataSet

へと進み、Propertiesタブ内の"Compute Vorticity"と"Compute QCriterion"にチェックを入れ、"Appply"します。そうすると、法線ベクトルに対する、勾配ベクトル、渦度、QCriterionが計算されます。

gradients for torus

いらない変数の削除

現在、トーラス面には、法線ベクトル、勾配ベクトル、渦度、Q-Criterionなどの変数があります。このうち、QCriterionだけが必要であると仮定して、Q-Criterionだけを残します。

このためには、"Programmable Filter"を使用します。ツールバーから

 Filters >> Alphabetical >> Programmable Filter

と進み、Propertiesタブ内のScriptに以下のようなPythonコードを記入して"Apply"します。

Everything is expanded.Everything is shortened.
  1
  2
  3
  4
  5
 
 
 
 
 
input = self.GetInput()
output = self.GetOutput()
output.CopyStructure(input)
output.GetPointData().AddArray(input.GetPointData().GetArray("Q-criterion"))

こうすると、"Q-criterion"だけのデータとなります。

Q-Criterion for torus

添付ファイル: filetorus_q-criterion.png 1019件 [詳細] filetorus_gradients.png 1045件 [詳細] filetorus_normals.png 1031件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-06-17 (金) 15:48:18 (857d)