grind_time_for_dose_cv — DRIVE doseunif op

• Datenarten: signal × signal × scalar × scalar → table

• Aufruf: import fullseye as fs; fs.ledger.grind_time_for_dose_cv(t, d63, dose_mg: 'float', density: 'float', target_cv: 'float | None' = None, pass_probability: 'float | None' = None, law: 'str' = 'best', k_accept: 'float' = 2.4, limit_av: 'float' = 15.0, n_units: 'int' = 10, ref_range=(98.5, 101.5), n_mc: 'int' = 20000, seed: 'int' = 0) -> 'dict' (die Implementierung direkt: import doseunif; doseunif.grind_time_for_dose_cv(t, d63, dose_mg: 'float', density: 'float', target_cv: 'float | None' = None, pass_probability: 'float | None' = None, law: 'str' = 'best', k_accept: 'float' = 2.4, limit_av: 'float' = 15.0, n_units: 'int' = 10, ref_range=(98.5, 101.5), n_mc: 'int' = 20000, seed: 'int' = 0) -> 'dict'; aus dem Register: opsdrive.get("grind_time_for_dose_cv"))

Verwendung

> Für diesen Operator gibt es noch keine Übersetzung. Es folgt der Originaltext unverändert.

モーメント径 D63 の時間変化に粉砕則を当て、含量の CV が目標まで下がるのに要る粉砕時間を逆算する。

`t: 粉砕時間(エネルギーの代わり、:mod:grind の約束)、d63: その時点の D63 [µm] (:func:dose_cv_from_sizes の d63`。

D50 でなく D63 を使うのは、CV が D63 だけで決まり分布の形の仮定が要らないから —— 粉砕則を D63 に当てるのは D50 に当てるのと同じく仮定)。

目標: `target_cv を直接、または pass_probability` = 10 個の第 1 段に合格する確率(χ² の閉形式、平均のずれを無視した上限)から

`CV = (L1/k) √((n−1)/χ²_p(n−1)) / 100。どちらも無ければ L1/k/100`(= 0.0625、「AV ≤ 15 相当」の目安、合格はおよそ半分)。

必要な D63 は `(CV² D / c)^{1/3}(Poisson、c = πρ/6)。3 則(kick / bond / rittinger)全部で時間を出し、law="best"` は

log の rms が最小の則、名前を渡せばその則。則による違いは `t_req_by_law と t_req_spread` に(模型の不確かさとして読む)。

返り: `t_req、law、d63_req、target_cv、t_req_by_law、t_req_spread(min, max)、extrapolated`(t_req が測った範囲を超える)・

`extrap_ratio、already_met(最初の点で既に目標以下)、cv_observed(各点の CV)、pass_probability_chi2`(目標の CV での

上限)・`pass_probability_mc(平均のずれの項も入れた Monte Carlo、正規近似)、fits(:func:grind.comminution_law_fit` の要約)。

Raises ValueError: 点が 3 未満・非正・長さ違い、target と pass_probability の両方、範囲外の確率・CV、綴り違い。

Referenzen (Beispieldaten, Literatur)

• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).

• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.

• Der kanonische Algorithmus (Autor, Jahr) und seine Anwendungen stehen im Familienleitfaden oben.

Ausführbare Beispiele (verifizierte Samples, die diesen Operator wirklich aufrufen)

• poc_dose_uniformity_from_grinding — py -3.11 examples/poc_dose_uniformity_from_grinding.py

Typkompatible Folge-Operatoren (nehmen table als Eingabe)

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

Gleiche Kategorie (doseunif)

dose_cv_lognormal · dose_cv_from_sizes


*Provenance: doseunif.py — DRIVE Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*

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