doseunif op• Data kinds: scalar × scalar × scalar × scalar → table
• Call: import fullseye as fs; fs.ledger.dose_cv_lognormal(d_median: 'float', sigma_ln: 'float', dose_mg: 'float', density: 'float', basis: 'str' = 'number', method: 'str' = 'closed', sampling: 'str' = 'poisson', n_rep: 'int' = 2000, seed: 'int' = 0, max_draws: 'int' = 20000000) -> 'dict' (implementation को सीधे call करना हो तो import doseunif; doseunif.dose_cv_lognormal(d_median: 'float', sigma_ln: 'float', dose_mg: 'float', density: 'float', basis: 'str' = 'number', method: 'str' = 'closed', sampling: 'str' = 'poisson', n_rep: 'int' = 2000, seed: 'int' = 0, max_draws: 'int' = 20000000) -> 'dict', registry से लेना हो तो opsdrive.get("dose_cv_lognormal"))
log-normal कण आकार वाले पाउडर से 1 खुराक (दवा dose_mg) लेने पर मात्रा का CV (केवल कणों की संख्या का उतार-चढ़ाव)।
बंद रूप (व्युत्पत्ति मॉड्यूल के आरंभ में): CV² = c · D63³ / D, c = πρ/6, D63³ = d_g³ exp(13.5 σ²) = d_v³ exp(4.5 σ²)। basis:
"number" (d_median संख्या-आधारित माध्यिका व्यास d_g है, छवियों में कण गिनने का तरीका) / "volume" (आयतन-आधारित माध्यिका व्यास d_v, लेज़र विवर्तन का D50)। sampling: "poisson" (डिफ़ॉल्ट, कणों की संख्या N Poisson है) / "fixed_count" (N को λ के पूर्णांकित पूर्णांक पर स्थिर, CV² = CV²_Poisson − 1/N)। method="monte_carlo": एक खुराक को n_rep बार बनाता है (N निकालें, लॉग-नॉर्मल से N व्यास निकालें और द्रव्यमान जोड़ें) और नमूना CV लौटाता है —— बंद रूप से स्वतंत्र मार्ग (सूत्र का उपयोग नहीं)। मानक त्रुटि cv_mc_se 20 गुच्छों के फैलाव से। निकाले गए व्यासों की कुल संख्या max_draws से अधिक हो तो चुपचाप घटाया नहीं जाता बल्कि ValueError (λ × n_rep देखकर n_rep घटाएँ या बंद रूप का उपयोग करें)।
लौटाता है: cv (method का मान), cv_closed, particles_per_dose (λ; fixed_count में पूर्णांक N), mean_particle_mg, d63, d_number_median व d_volume_median [µm], basis, sampling, method; Monte Carlo में cv_mc, cv_mc_se, n_rep, draws भी। Raises ValueError: जो मात्रा धनात्मक होनी चाहिए वह नहीं है, ग़लत वर्तनी, fixed_count में N < 2, Monte Carlo की कुल संख्या सीमा से अधिक।
• 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_dose_uniformity_from_grinding — py -3.11 examples/poc_dose_uniformity_from_grinding.py
table को input के रूप में लेते हैं)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
doseunif)dose_cv_from_sizes · grind_time_for_dose_cv
*Provenance: doseunif.py — DRIVE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.