tacsim op• データ種: normalmap × matrix × matrix × scalar → scalar
• 呼び出し: import fullseye as fs; fs.ledger.membrane_delta_from_normals(normals, X, Y, pitch: 'float', tail: 'str' = 'boussinesq', centre_xy=None) -> 'float' (実装を直接呼ぶなら import tacsim; tacsim.membrane_delta_from_normals(normals, X, Y, pitch: 'float', tail: 'str' = 'boussinesq', centre_xy=None) -> 'float'、台帳から引くなら opsdrive.get("membrane_delta_from_normals"))
中心の沈み込み δ を法線場から: 半径方向スロープ s̄(r) を中心から窓の端まで 1D 積分(∫ s̄ dr = ū_z(0) − ū_z(r_max))し、
`tail="boussinesq"` なら遠方場 ū_z ≈ C/r(点荷重の Boussinesq 解、Johnson §3.2)から残りの裾 ū_z(r_max) = r_max · s̄(r_max)
を足す(窓の端の最後の 3 ビンの中央値)。`tail="none"` は裾なし(有限窓の過小評価をそのまま返す —— 間違いの量を測るため)。
高さの FFT 積分を通らないので振幅の減衰を受けない。返り: δ [m]。Raises `ValueError`: 未知の tail、pitch ≤ 0。
• サンプルデータ カタログ(DL URL / ライセンス) — 2-D は skimage.data(BSD/public)+ 合成、3-D は実データ源(Stanford/PDS 等)の DL URL。
• 演算子の来歴・参考文献 — この op 族の元になった研究/手法の出典。
• アルゴリズムの正典(著者・年)と用途は上記ファミリ使い方ガイドに記載。
• poc_tacsim_elastic_membrane — py -3.11 examples/poc_tacsim_elastic_membrane.py
scalar を入力に取れる)spin_from_marker_sequence · carla_transform_matrix · carla_pose_to_world · carla_camera_pose · carla_xy_yaw · carla_scene_load · town_chain · osm_parse
tacsim)combined_modulus · hertz_sphere · hertz_force · hertz_cylinder · hertz_surface_uz · hertz_pressure · membrane_indent_sphere · membrane_indent_shape
*Provenance: tacsim.py — DRIVE operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.