matched opsignal × signal × pairs → signalimport fullseye as fs; fs.ledger.matched_filter_snr(data, template, psd, rate: 'float' = 4096.0, *, f_low_hz: 'float | None' = 20.0, f_high_hz: 'float | None' = None, template_ref_index: 'int | None' = None, taper_s: 'float' = 0.0) -> 'np.ndarray' (実装を直接呼ぶなら import gwsearch; gwsearch.matched_filter_snr(data, template, psd, rate: 'float' = 4096.0, *, f_low_hz: 'float | None' = 20.0, f_high_hz: 'float | None' = None, template_ref_index: 'int | None' = None, taper_s: 'float' = 0.0) -> 'np.ndarray'、台帳から引くなら ops1d.get("matched_filter_snr"))| 整合フィルタの SNR 時系列 | ρ(t) | (位相で最大化)を signal で返す。 |
data : array_like
観測時系列(1-D)。
template : array_like
テンプレート(data 以下の長さ。末尾を 0 で埋めて同じ長さにする)。
psd : array_like
雑音の片側 PSD の pairs(psd_welch)。
rate : float
標本化周波数 [Hz]。
f_low_hz, f_high_hz : float or None
内積の帯域。
template_ref_index : int or None
テンプレート内の「事象の時刻」の標本番号(None なら argmax |h|)。返り値はこの分だけ
回してあり、|ρ| の山の標本番号 = data 内の事象の時刻になる。
taper_s : float
data の両端を余弦で 0 へ落とす長さ [s] (Tukey 窓の端)。実データの端の不連続が
FFT の循環で全体に漏れるのを抑える(GWOSC の例題は 32 s に対し 2 s)。
numpy.ndarray
data と同じ長さの非負配列。ρ(t) = ⟨d|h_t⟩/σ、⟨a|b⟩ = 4Re∫ÃB̃*/S df、
σ = optimal_snr。位相は解析信号で最大化する(|z|)。テンプレートが data の外へ
はみ出す時刻(先頭の ref 標本と末尾の len(template) − ref 標本)は循環の折り返し
なので 0 にしてある(山の探索に混じらない)。
白色ガウス雑音だけなら |ρ| の典型値は ~1.25(レイリー)、閾値 8 が重力波探索の慣例。
py -3.11 examples/poc_gw_detector_pseudo_simulation.pysignal を入力に取れる)create_funct_1d_array · create_funct_1d_pairs · smooth_funct_1d_gauss · smooth_funct_1d_mean · derivate_funct_1d · integrate_funct_1d · zero_crossings_funct_1d · local_min_max_funct_1d
matched)psd_welch · whiten_by_psd · chirp_newtonian · chirp_mass_from_track · optimal_snr · coincidence_delay
Provenance: gwsearch.py — ONED operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.