torsion_partial_slip — DRIVE cuttouch op

• Data kinds: scalar × scalar × table → table

• Call: import fullseye as fs; fs.ledger.torsion_partial_slip(M: 'float', P: 'float', pad: 'dict | None' = None, ctx=None, field: 'bool' = False, na: 'int' = 64, from_no_slip_read: 'bool' = False, contact: 'dict | None' = None) -> 'dict' (to call the implementation directly, import cuttouch; cuttouch.torsion_partial_slip(M: 'float', P: 'float', pad: 'dict | None' = None, ctx=None, field: 'bool' = False, na: 'int' = 64, from_no_slip_read: 'bool' = False, contact: 'dict | None' = None) -> 'dict'; from the registry, opsdrive.get("torsion_partial_slip"))

Usage

> This operator's description has not been translated yet. The original text follows as it is.

球面パッド(Hertz、法線力 `P)に法線まわりのねじり M` [N·m] を掛けたときの部分滑り: 固着半径 c、ねじれ角 β、全滑りまでの比。

数値解はモジュール冒頭(環 `na 本の影響行列、無次元の 1 本の曲線を一度だけ)。返り: ratio = |M| / ((3π/16)μPa)、c_over_a`、

`beta(部分滑りのねじれ角 [rad])、beta_no_slip = 3M/(16Ga³)(Reissner–Sagoci)、read_bias` = β/β_no_slip(無滑りの関係で

読んだときの M の過大の倍率)、`a・p0・M_full、slipping`(比 ≥ 1 = 全滑り。例外にせず印 —— 滑りは起きる状態で入力の

誤りではない。β は定まらないので nan)、`readable(固着円が読みの核 r < 0.6a を含む)。field=True なら ctx`

(:func:pegtactile.pad_context)の格子で周方向トラクションを Cerruti 核で畳んだ表面変位 `ux・uy` [m] と、マーカーの基準位置での

`u_markers (N, 2) [m] も返す(合成用。全滑りでは作らない)。from_no_slip_read=True なら M` を 無滑りの関係で読んだ値

(Reissner–Sagoci、:func:pegtactile.pad_tactile_read の `torsion_model="no_slip"`)と見て、部分滑りの M に直してから同じ表を返す

(`M = 直した値、M_read = 渡した読み。読みが全滑りの像を超えていれば M = 全滑りのトルクで slipping`)。

`ratio_table_max` は表の最後の行の比(これ以上は固着円が環 1 本より小さく、場を作らない)。

パッドの代わりに `contact={"a": 接触半径 [m], "mu": 摩擦係数, "G": せん断弾性率 [Pa]}` を渡すと、接触半径が分かっている Hertz 接触

(圧力 p₀√(1 − r²/a²)、p₀ = 3P/(2πa²))として同じ数値解を返す —— :func:tactorque.torque_decompose の `Mz` の補正はこの入口を通る

(`field=True はパッドの格子が要るので pad` だけ)。

Raises ValueError: P ≤ 0・非有限、M が非有限、pad が :func:pegtactile.pad_params の表でない、pad と contact の両方 / どちらも無い、

contact の a・mu・G が正の有限でない、field=True で pad が無い、na < 24。

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)

• poc_knife_tactile_toughness — py -3.11 examples/poc_knife_tactile_toughness.py

• poc_tactile_dipole_torque — py -3.11 examples/poc_tactile_dipole_torque.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 (cuttouch)

knife_load_from_pads · toughness_from_pads


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