mindlin_fit_vector — DRIVE tacslip op

• Data kinds: table × matrix × matrix → table

• Call: import fullseye as fs; fs.ledger.mindlin_fit_vector(model: 'dict', pts_px, u_m, n_coarse: 'int' = 51, n_fine: 'int' = 21) -> 'dict' (to call the implementation directly, import tacslip; tacslip.mindlin_fit_vector(model: 'dict', pts_px, u_m, n_coarse: 'int' = 51, n_fine: 'int' = 21) -> 'dict'; from the registry, opsdrive.get("mindlin_fit_vector"))

Usage

Mindlin fit for directional shear (the 2-component version of mindlin_fit): reads (c/a, μP, direction φ) at once.

Under proportional loading the tangential traction is the same radial distribution × a direction vector, so the field is u(p) = A·F_x(p; c) + B·F_y(p; c) (F_y is the unit field F_x in the x direction rotated by 90°, R(90°)F_x(R(−90°)p); the kernel is an isotropic half-space, so it is closed under rotation) —— for each c/a, (A, B) is a linear least-squares problem. μP = √(A² + B²), φ = atan2(B, A), Q = μP(1 − (c/a)³). c/a is scanned coarsely → then finely around the best value. A version that first fixed the direction by "the mean displacement of the stick kernel" and passed it to the one-component mindlin_fit produced a bias of around 0.5° because the phase of the regular grid makes the kernel samples asymmetric (a spurious u component of 0.01 N for pure v shear) (measured and discarded in the pegtactile prototype). Returns c_over_a, q_ratio, muP, Q, phi, rms_m. Raises ValueError: shape mismatch, fewer than 3 points.

Empty input (model is an empty dict) raises ValueError.

References (sample data, literature)

• 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.

Runnable examples (verified samples that actually call this op)

• gallery_drive_soil_tactile — py -3.11 examples/gallery_drive_soil_tactile.py

Ops the type connects to (they accept table as input)

course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same

Same category (tacslip)

mindlin_partial_slip · mindlin_traction · hertz_surface_ur · hertzian_tangential_inner · cerruti_kernel · cerruti_surface_displacement · membrane_shear_field · membrane_markers


*Provenance: tacslip.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.