torsion_partial_slip — DRIVE cuttouch op

• 데이터 종류: scalar × scalar × table → table

• 호출: 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'(구현을 직접 호출하려면 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', 원장에서 가져오려면 opsdrive.get("torsion_partial_slip"))

사용법

> 이 연산자의 설명은 아직 번역이 없습니다. 원문을 그대로 싣습니다.

球面パッド(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。

참고(샘플 데이터·문헌)

• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.

• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.

• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.

실행 가능한 예제(이 연산자를 실제로 호출하는 검증된 샘플)

• 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

타입이 이어지는 다음 연산자(table 를 입력으로 받는 것)

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

같은 카테고리(cuttouch)

knife_load_from_pads · toughness_from_pads


*Provenance: cuttouch.py — DRIVE 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.