scoop_scene_mjcf — DRIVE scoop op

• Data kinds: scalar × scalar → table

• Call: import fullseye as fs; fs.ledger.scoop_scene_mjcf(n_spheres: 'int' = 500, radius: 'float' = 0.002, *, a: 'float' = 0.03, h: 'float' = 0.012, rim_height: 'float' = 0.1, mu_slide: 'float' = 0.16, mu_roll: 'float' = 0.09, density: 'float' = 2500.0, bowl_mu: 'float' = 0.5, tile: 'float' = 0.006, drop_gap: 'float' = 0.0003, timestep: 'float' = 0.0015, contact_tc: 'float' = 0.006, solver_iterations: 'int' = 50, solver: 'str' = 'CG', cone: 'str' = 'elliptic', condim: 'int' = 6, seed: 'int' = 0) -> 'dict' (implementation को सीधे call करना हो तो import scoop; scoop.scoop_scene_mjcf(n_spheres: 'int' = 500, radius: 'float' = 0.002, *, a: 'float' = 0.03, h: 'float' = 0.012, rim_height: 'float' = 0.1, mu_slide: 'float' = 0.16, mu_roll: 'float' = 0.09, density: 'float' = 2500.0, bowl_mu: 'float' = 0.5, tile: 'float' = 0.006, drop_gap: 'float' = 0.0003, timestep: 'float' = 0.0015, contact_tc: 'float' = 0.006, solver_iterations: 'int' = 50, solver: 'str' = 'CG', cone: 'str' = 'elliptic', condim: 'int' = 6, seed: 'int' = 0) -> 'dict', registry से लेना हो तो opsdrive.get("scoop_scene_mjcf"))

उपयोग

scene की MJCF string जिसमें spherical cap वाले कटोरे (किनारे की त्रिज्या a, गहराई h, किनारे की ऊँचाई rim_height) को पतली plate की tile से बनाया जाता है, और n_spheres rigid गोले कटोरे के अंदर grid पर रखकर ठीक ऊपर से छोड़े जाते हैं (mujoco आवश्यक नहीं, ledger में दर्ज)।

> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।

椀は内面が球(半径 R = (a² + h²) / 2h)に接する厚さ 2 mm の板を、緯度の輪ごとに方位で並べる(tile = 板の目安の辺、隙間ができないよう 1.35 倍に重ねる)。球は底から千鳥の格子で層に積み(椀の内面から r + drop_gap 離す)、縁より上は縁の円柱の中に積む —— 放すと縁より上の柱が崩れて山になり、あふれた球は縁から転がり落ちて床(高さ 0)に散る。上から落とすと跳ねて椀の中身まで飛び出した(500 個中 172 個しか残らず山ができない、実測)ので、すくい上げた直後の静かな状態を模す。摩擦の作法は granular の heap_scene_mjcf と同じ(転がり摩擦は無次元 μ_r × 半径)。

返り: xml, positions(初期中心)、info(n, radius, a, h, R, rim_height, bottom_height, mass_each, timestep, n_tiles, V_struck)。Raises ValueError: contact_tc < 2 timestep / h > a / 綴り違い / 球が入らない。

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• poc_powder_scoop_pour — py -3.11 examples/poc_powder_scoop_pour.py

वे अगले ops जिनसे type जुड़ता है (table को input के रूप में लेते हैं)

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

इसी category के (scoop)

spoon_bowl_volume · scoop_synth_side · revolution_volume_side · two_view_volume · scoop_volume_read · scoop_count · scoop_image_limit · tilt_wedge_retained


*Provenance: scoop.py — DRIVE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

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