pyvista.DataSetFilters.streamlines_evenly_spaced_2D#

DataSetFilters.streamlines_evenly_spaced_2D(vectors=None, start_position=None, integrator_type=2, step_length=0.5, step_unit='cl', max_steps=2000, terminal_speed=1e-12, interpolator_type='point', separating_distance=10, separating_distance_ratio=0.5, closed_loop_maximum_distance=0.5, loop_angle=20, minimum_number_of_loop_points=4, compute_vorticity=True, progress_bar=False)[ソース]#

2Dデータに等間隔の流線を生成します.

このフィルタは xy 平面上にあるデータセット,つまり z=0 にのみ対応しています.メモリの使用量が多くならないように, separating_distance の選択には特に注意が必要です. デフォルトの単位はセルの長さです.

パラメータ:
vectorsstr, optional

積分するアクティブベクトルフィールドの文字列名.

start_positionsequence[float], optional

等間隔のストリームラインを生成するためのシードポイントです.指定されていない場合は,データセット内のランダムな位置が選ばれます.

integrator_type{2, 4}, default: 2

流線生成に使用する積分器のタイプです.デフォルトはRunge-Kutta2です.認識されるソルバーは: RUNGE_KUTTA2 (2) と RUNGE_KUTTA4 (4) です.

step_lengthfloat, default: 0.5

長さ単位またはセル長単位で表されます( step_unit パラメータを参照).

step_unit{'cl', 'l'}, default: "cl"

均一積分ステップ単位.有効な単位は LENGTH_UNIT ('l') と CELL_LENGTH_UNIT ('cl') だけに制限されます.デフォルトは CELL_LENGTH_UNIT です.

max_stepsint, default: 2000

流線を積分するための最大ステップ数.

terminal_speedfloat, default: 1e-12

積分を終了する端子速度の値です.

interpolator_typestr, optional

ポイントまたはセルによる流線積分中にセルの位置を特定するために,速度フィールド補間のタイプを設定します.セルロケータはポイントロケータよりも堅牢です.オプションは 'point' または 'cell' ( 'p' および 'c' の省略形もサポートされています.)です.

separating_distancefloat, default: 10

流線間の距離を step_unit で表したものです.

separating_distance_ratiofloat, default: 0.5

流線が他のストリームラインと SeparatingDistance*SeparatingDistanceRatio よりも近い場合,流線の積分は停止します.

closed_loop_maximum_distancefloat, default: 0.5

閉ループを決定する流線上のポイント間の距離.

loop_anglefloat, default: 20

閉ループを決定するポイント間の最大角度.単位は度.

minimum_number_of_loop_pointsint, default: 4

閉ループが決定されるまでの最小ポイント数です.

compute_vorticitybool, default: True

流線点での渦度計算 . vtkRibbonFilter を使用して適切な流線リボンを生成するために必要.

progress_barbool, default: False

進行状況を示す進行状況バーを表示します.

戻り値:
pyvista.PolyData

これにより,各セル(つまり,ポリライン)が流線を表すポリラインが出力として生成されます.各流線に関連付けられた属性値はセルデータに格納され,流線ポイントに関連付けられた属性値はポイントデータに格納されます.

クロスフロー中のシリンダーの流線を等間隔でプロットします.このデータセットはマルチブロックのデータセットであり,流体の速度は最初のブロックにあります.

>>> import pyvista as pv
>>> from pyvista import examples
>>> mesh = examples.download_cylinder_crossflow()
>>> streams = mesh[0].streamlines_evenly_spaced_2D(
...     start_position=(4, 0.1, 0.0),
...     separating_distance=3,
...     separating_distance_ratio=0.2,
... )
>>> plotter = pv.Plotter()
>>> _ = plotter.add_mesh(
...     streams.tube(radius=0.02), scalars="vorticity_mag"
... )
>>> plotter.view_xy()
>>> plotter.show()
../../../_images/pyvista-DataSetFilters-streamlines_evenly_spaced_2D-1_00_00.png

このフィルターを使用したその他の例については, 2D流線 を参照してください.