swarmflow op• Data kinds: signal × scalar × scalar → table
• Call: import fullseye as fs; fs.ledger.ritter_dam_break(x, t: 'float', h0: 'float', g: 'float' = 9.81, particle_mass=None) -> 'dict' (implementation को सीधे call करना हो तो import swarmflow; swarmflow.ritter_dam_break(x, t: 'float', h0: 'float', g: 'float' = 9.81, particle_mass=None) -> 'dict', registry से लेना हो तो opsdrive.get("ritter_dam_break"))
Ritter का dam-break हल (shallow-water समीकरण, सूखा तल, dam x = 0 पर, पानी x < 0 में)।
c₀ = √(g h₀)। x ≤ −c₀ t: h = h₀, u = 0 / −c₀ t < x < 2c₀ t: h = (2c₀ − x/t)²/(9g), u = (2/3)(x/t + c₀) / x ≥ 2c₀ t: h = 0।
अग्रभाग के पास h ∝ (x_f − x)² है, इसलिए लगभग पानी नहीं होता। अग्रभाग से δ तक पानी की मात्रा ∫₀^δ (s/t)²/(9g) ds = δ³/(27 g t²) है (व्युत्पन्न)। प्रति कण मात्रा m (1-आयामी SPH में h₀Δx) देने पर, सबसे आगे वाले कण का स्थान (जहाँ अग्रभाग से मात्रा m/2 है) x_f − (27 g t² m/2)^{1/3} lead_particle में लौटाया जाता है —— कण-विधि का अग्रभाग Ritter के अग्रभाग से हमेशा पीछे दिखता है, और यह विलंब इस सूत्र से पढ़ा जा सकता है (कणों को महीन करने पर यह केवल m^{1/3} के अनुपात में घटता है)।
Returns:
dict: h, u (x के समान आकार), front = 2c₀ t, rarefaction_head = −c₀ t, c0, lead_particle (m दिए जाने पर)।
खाली इनपुट (x में 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_swarm_obstacle_from_flow — py -3.11 examples/poc_swarm_obstacle_from_flow.py
table को input के रूप में लेते हैं)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
swarmflow)sph_kernel · sph_density_pressure · swarm_simulate · swarm_render_overhead · swarm_field_from_tracks · swarm_field_from_piv · potential_flow_cylinder · velocity_deficit_map
*Provenance: swarmflow.py — DRIVE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.