fullseye

dynsys_poincare_section — MATH dynsys op

使い方

Where a trajectory crosses a plane — with the crossing point interpolated.

Takes the x block of :func:ode_flow_states and returns the points where coordinate axis crosses value in the given direction (+1 upward, -1 downward, 0 either). The crossing is found by linear interpolation between the two straddling samples, not by taking the nearer sample — otherwise the section is quantised by the step size and a periodic orbit looks like a cloud.

★Why this earns its place: a periodic orbit must give one point (to within the interpolation error), a period-2 orbit two, and a chaotic one a fractal set. That is a check with a number in it, unlike “the picture looks like a strange attractor”.

Returns a two-column pairs array: the first two remaining coordinates, or the sole remaining coordinate followed by zero for a 2-D state.

Raises ValueError: states not (S, n) with S >= 2; axis out of range; direction not in (-1, 0, 1); non-finite input; no crossing found (reported, not returned as an empty array that a caller may read as “no orbit”).

ファミリ共通の入力契約(fail-closed)

mathops の全 op は入力を検証してから計算する(黙って通さない):

詳しい使い方ガイド

参考(サンプルデータ・文献)

実行できる例(この op を実際に呼ぶ検証済みサンプル)

型が繋がる次の op(pairs を入力に取れる)

neighbour_index_gaps · curve_locality

同カテゴリ(dynsys)

ode_flow_states · ode_vector_field_grid · dynsys_lyapunov_spectrum · dynsys_bifurcation_map · dynsys_correlation_dimension


Provenance: mathops.py — MATH operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.