granular op• Data kinds: scalar × scalar × scalar → scalar
• Call: import fullseye as fs; fs.ledger.spoon_tilt_critical(phi_deg: 'float', L: 'float', h0: 'float', lip: 'str' = 'wall') -> 'float' (implementation को सीधे call करना हो तो import granular; granular.spoon_tilt_critical(phi_deg: 'float', L: 'float', h0: 'float', lip: 'str' = 'wall') -> 'float', registry से लेना हो तो opsdrive.get("spoon_tilt_critical"))
वह tilt θ_c [degrees] जिस पर चम्मच से powder गिरना शुरू होता है (2-D cross-section, quasi-static, दीवार friction के बिना —— अपनी व्युत्पत्ति)।
मॉडल: तल की लंबाई L (होंठ से पिछली दीवार तक; पिछली दीवार तल के लंबवत), क्षैतिज स्थिति में गहराई h0 तक समतल भरा पाउडर। होंठ नीचे करके तल को θ झुकाया जाता है। पाउडर की मुक्त सतह क्षैतिज से केवल φ (विश्राम कोण) तक ही खड़ी हो सकती है, इसलिए होंठ से गुज़रने वाली ढलान तल से देखने पर φ − θ है।
• lip="wall" (डिफ़ॉल्ट: मुँह पर किनारा है, आरंभ में मुँह तक समतल भरा, प्रारंभिक क्षेत्रफल L h0): रोका जा सकने वाला अनुप्रस्थ काट A(θ) = ½ L² tan(φ − θ) (तल और सतह के बीच की फन्नी) है। जिस झुकाव पर L h0 से अधिक रोका नहीं जा सकता वह θ_c = φ − atan(2 h0 / L) है (atan2 से)। जितना अधिक भरा, उतनी जल्दी गिरता है; h0 → 0 पर θ_c → φ, और θ = φ पर सब निकल जाता है। यदि 2 h0 / L ≥ tan φ हो तो क्षैतिज में भी पहले से रोका नहीं जा सकता (0 लौटाता है)।
• lip="open" (मुँह पर दीवार रहित पात्र): सामने का भाग शुरू से ही विश्राम कोण की ढलान है, इसलिए θ = 0⁺ से ही गिरता है —— हमेशा 0 लौटाता है।
★2026-10-05 तक wall की फन्नी का ढाल tan φ − tan θ लिखा गया था (लघु-कोण सन्निकटन, θ_c = atan(tan φ − 2 h0 / L))। θ = 10 डिग्री और φ = 30 डिग्री पर फन्नी का ढाल 10 % अधिक था, और L 50 mm, h0 5 mm पर θ_c 20.67 डिग्री आता था (सटीक 18.69 डिग्री)। Raises ValueError: φ का (0, 90) से बाहर होना, L / h0 ≤ 0, lip का wall / open के अलावा होना।
• 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 में दिए गए हैं।
• poc_granular_heap_repose — py -3.11 examples/poc_granular_heap_repose.py
scalar को input के रूप में लेते हैं)spin_from_marker_sequence · carla_transform_matrix · carla_pose_to_world · carla_camera_pose · carla_xy_yaw · carla_scene_load · town_chain · osm_parse
granular)heap_volume_cone · heap_mass · heap_volume_heightmap · beverloo_rate · beverloo_fit · discharge_synth · dispense_mass_from_video · hopper_discharge_rate
*Provenance: granular.py — DRIVE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.