transform op• Data kinds: signal × signal × signal → signal
• Call: import fullseye as fs; fs.ledger.tf_impulse_response(num, den, t) -> 'np.ndarray' (to call the implementation directly, import mathtransforms; mathtransforms.tf_impulse_response(num, den, t) -> 'np.ndarray'; from the registry, opsmath.get("tf_impulse_response"))
Impulse response h(t) = L⁻¹[H(s)] (t) (the strictly proper part; the delta of the direct feedthrough term is not returned).
Evaluates h(t) = C e^{At} B directly via the matrix exponential (no reliance on partial fractions, so no branching even for repeated roots or poles at the origin).
Every mathops op validates its input before computing (nothing slips through silently):
• complex input raises ValueError — coercing to float64 silently discards the imaginary part (numpy only emits a ComplexWarning and returns a plausible-looking wrong real number). State .real/.imag/abs() explicitly, or use complexops, which handles complex data.
• masked arrays with masked elements raise ValueError — the implicit conversion that peels off the mask and uses the raw values underneath is refused. Say explicitly whether to fill or to drop.
• NaN/Inf raises ValueError on every input (refused with the count stated — it propagates through the whole result).
• Shapes are strict: 1-D and 2-D are never implicitly promoted or broadcast (a matrix in a vector slot, or a vector in a matrix slot, raises ValueError; reshape explicitly).
• Size cap: ops that take a matrix, and the stat_histogram bins, raise ValueError beyond mathops.MAX_ELEMENTS (2^26 ≈ 67 million elements).
• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).
• Operator provenance and references — the sources of the research/methods this op family came from.
• The canonical algorithm (author, year) and its uses are named in the family usage guide above.
• transforms_tour — py -3.11 examples/transforms_tour.py
signal as input)mat_solve · mat_lstsq · stat_describe · stat_histogram · stat_zscore · interp_linear · interp_cubic · interp_scattered
transform)abel_transform · abel_inverse · abel_inverse_image · abel_revolve · hankel_transform · tf_poles_zeros · tf_freq_response · tf_step_response
*Provenance: mathtransforms.py — MATH operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.