granular op• Data kinds: scalar × scalar × scalar × scalar × scalar × scalar → table
• Call: import fullseye as fs; fs.ledger.discharge_synth(D0: 'float', d: 'float', bulk_density: 'float', phi_deg: 'float', pitch: 'float', duration: 'float', n_frames: 'int' = 8, grid: 'int' = 256, C: 'float' = 0.58, k: 'float' = 1.4, noise: 'float' = 0.0, seed: 'int | None' = None) -> 'dict' (implementation को सीधे call करना हो तो import granular; granular.discharge_synth(D0: 'float', d: 'float', bulk_density: 'float', phi_deg: 'float', pitch: 'float', duration: 'float', n_frames: 'int' = 8, grid: 'int' = 256, C: 'float' = 0.58, k: 'float' = 1.4, noise: 'float' = 0.0, seed: 'int | None' = None) -> 'dict', registry से लेना हो तो opsdrive.get("discharge_synth"))
गोल छेद D0 से Beverloo rate पर गिरता powder नीचे angle of repose φ वाले शंकु में जमा होता जाता है, ऐसे heightmaps का क्रम synthesise करता है।
V(t) = W t / ρ_b, R(t) = (3 V / (π tan φ))^{1/3}। लौटाता है: frames (n_frames फ़्रेम, (grid, grid) [m]), times [s], W (वास्तविक दर [kg/s]), masses (वास्तविक द्रव्यमानों का क्रम)। noise = ऊँचाई-मानचित्र में जोड़े गए गॉसियन शोर का σ [m] (दूरी-संवेदक के शोर के स्थान पर; ज़मीन भी डोलती है, इसलिए आयतन 0 पर कटकर पक्षपाती होता है —— उस पक्षपात को गेट मापता है)। ढेर ग्रिड से बाहर निकले तो ValueError (आयतन चुपचाप नहीं काटा जाता)।
• 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
table को input के रूप में लेते हैं)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
granular)heap_volume_cone · heap_mass · heap_volume_heightmap · beverloo_rate · beverloo_fit · dispense_mass_from_video · hopper_discharge_rate · spoon_tilt_critical
*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.