tacsim op• Data kinds: normalmap × matrix × matrix × scalar × scalar → table
• Call: import fullseye as fs; fs.ledger.contact_radius_fit(normals, X, Y, R: 'float', pitch: 'float', centre_xy=None) -> 'dict' (to call the implementation directly, import tacsim; tacsim.contact_radius_fit(normals, X, Y, R: 'float', pitch: 'float', centre_xy=None) -> 'dict'; from the registry, opsdrive.get("contact_radius_fit"))
Reads the contact radius by fitting the Hertz slope model dh/dr(r; a), with 1 parameter a, to the radial slope distribution of the normal field.
> The detailed description below is the original text — the summary and the headings are translated.
模型: 内側 r/R、外側 (2/πR)[r arcsin(a/r) − a √(1 − a²/r²)] (導出、r = a で a/R に連続)。高さの積分を通らないので FFT 積分の振幅減衰・有限窓の遠方場・高さの基準(オフセット)の影響を受けない。a は [0.2, 3] × 粗い初期値の格子で SSE (ビンの個数で重み)を最小化し、放物線で副格子に詰める。centre_xy は (x, y)[m]、省略なら法線から高さを積分して重心。
返り: a、delta = a²/R、rms(スロープの残差)、r・slope・model(分布)、centre_xy。Raises ValueError: R, pitch ≤ 0、形が合わない。
• 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.
• poc_peg_insertion_tactile — py -3.11 examples/poc_peg_insertion_tactile.py
• poc_tacsim_elastic_membrane — py -3.11 examples/poc_tacsim_elastic_membrane.py
table as input)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
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. 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.