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.
Model: inside r/R, outside (2/πR)[r arcsin(a/r) − a √(1 − a²/r²)] (derived; continuous with a/R at r = a). It does not go through height integration, so it is unaffected by the amplitude attenuation of FFT integration, the far field of a finite window, or the height reference (offset). a minimises the SSE (weighted by bin count) over a grid of [0.2, 3] × a rough initial value, refined to sub-grid with a parabola. centre_xy is (x, y)[m]; if omitted, the centroid of the height integrated from the normals.
Returns: a, delta = a²/R, rms (slope residual), r, slope, model (profiles), centre_xy. Raises ValueError: R, pitch ≤ 0, shape mismatch.
• 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.