Walidacja modelu — audyt-materialowy
Audyt materiałowy dla safeguards, bilans MUF, niepewność LEMUF
✓
18/18 asercji zdanych
Walidacja: ✓ ZALICZONA
Obliczono: 2026-07-08 02:28:46 UTC · PHP 8.1.2-1ubuntu2.24
Niezmienniki fizyczne i matematyczne
| Stan | Asercja | Wynik | Oczekiwane |
|---|---|---|---|
| ✓ | Obliczona suma wyjść = produkt + ogony + hold-up Funkcja sumuje strumienie wyjściowe: output = produkt + ogony + hold-up (IAEA Safeguards Glossary). |
10000.000 kg | 10000.000 kg |
| ✓ | Różnica masy = feed − suma wyjść MUF = wejście − wyjścia; przy idealnym bilansie różnica wynosi dokładnie 0 kgU. |
0 kgU | 0 kgU |
| ✓ | U-235 wejście = feed_kg × assay_feed / 100 Masa U-235 w feedzie = masa_total × ułamek wzbogacenia; assay 0,72% to naturalne wzbogacenie uranu. |
72 kgU235 | 72 kgU235 |
| ✓ | Różnica masy ≤ 0,5% → mass_within_tolerance = true Tolerancja 0,5%; różnica masy 0 kgU = 0% < 0,5% → bilans masy w tolerancji. |
true | true |
| ✓ | Duże odchylenie masy (~20%) → mass_within_tolerance = false Brak 1990 kgU w bilansie to ~20% różnica — znacznie przekracza tolerancję 0,5%. |
19.90% | > 0,5% (poza tolerancją) |
| ✓ | Monotoniczność: większy hold-up → mniejsza różnica masy (bliżej bilansu) Rosnący deklarowany hold-up zmniejsza MUF masy: MUF = feed − (produkt + ogony + hold-up). |
hold5=5.0 > hold10=0.0 > hold20=-10.0 kgU | malejąca kolejność różnic |
| ✓ | calculate(): book_inventory = stan_pocz + przyjęcia − wysyłki Inwentarz ksiąg = BI + R − S (IAEA Safeguards Glossary, definicja book inventory). |
1 200 kgU | 1 200 kgU |
| ✓ | calculate(): material_difference = book_inventory − physical_inventory MUF (Material Unaccounted For) = BI + R − S − EI; tu = 1200 − 1200 = 0 kgU. |
0 kgU | 0 kgU |
| ✓ | calculate(): combined_sigma = √(σ_BI² + σ_R² + σ_S² + σ_EI²) Propagacja niepewności w kwadraturze (LEMUF); zakłada nieskorelowane składniki losowe. |
16,6733 kgU | 16,6733 kgU |
| ✓ | calculate(): z_score = material_difference / combined_sigma Wskaźnik z = MUF/σ_MUF; |z| < 1 oznacza różnicę w typowym rozrzucie pomiarowym (IAEA). |
0 | 0 |
| ✓ | Stała U/UF6 = M(U)/M(UF6) ≈ 0,6763 (stechiometria) M(U)=238.029, M(F)=18.998; M(UF6)=352.019 → U/UF6=0,6763. Wartość zgodna z danymi IUPAC/CODATA. |
0,6762 | 0,6762 |
| ✓ | uf6CylinderLedger(): measured_uranium_kg = UF6_kg × U/UF6 Przelicznik stechiometryczny: masa uranu z cylindra UF6 = masa_UF6 × M(U)/M(UF6). |
338,0907 kgU | 338,0907 kgU |
| ✓ | Monotoniczność U-235: wyższy assay produktu → więcej U-235 w produkcie u235_kg = mass_kg × assay_pct / 100 — liniowa zależność od wzbogacenia. |
3%→30.00 < 4,5%→45.00 < 5,5%→55.00 kgU235 | rosnąca kolejność |
| ✓ | Kolejność assay: ogony < feed < produkt (typowy proces wzbogacania) W procesie wzbogacania: assay_ogony < assay_feed (0,72%) < assay_produkt; to podstawowy warunek bilansowy. |
0,300% < 0,720% < 4,500% | rosnąca kolejność |
| ✓ | uncertaintyBudget(): combined_sigma = √Σσᵢ² (z udziałem systematycznym) LEMUF: łączna niepewność MUF w kwadraturze z pięcioma składnikami, w tym systematycznym. |
16,0156 kgU | 16,0156 kgU |
| ✓ | uncertaintyBudget(): suma udziałów wariancji = 100% Każdy wiersz zawiera udział σᵢ²/Σσⱼ² × 100; suma musi być dokładnie 100% (zasada zachowania wariancji). |
100% | 100% |
| ✓ | enrichmentCampaign(): z_score = difference_U235 / combined_sigma Wskaźnik z kampanii: stosunek bilansu U-235 do jego niepewności; |z|<1 → spójność kampanii. |
0,2569 | 0,2569 |
| ✓ | calculate(): MUF/σ < 1 → interpretacja zawiera "mała" lub "typowy rozrzut" |z|=0 < 1 → interpretacja powinna wskazywać na małą różnicę względem niepewności (IAEA kryterium z). |
różnica mieści się w typowym rozrzucie pomiarowym | zawiera "mała" lub "typowy rozrzut" |
Porównanie z benchmarkami
Punkty kontrolne obejmują bilans U-235, przeliczenie UF6 na uran oraz rachunek niepewności LEMUF.
| Benchmark | Model | Referencja | Błąd | Ocena |
|---|---|---|---|---|
| Naturalny feed: 10000 kg × 0,72% Podstawowa kontrola strumienia wejściowego w bilansie safeguards. |
72 kg U-235 | 72 kg U-235 | +0.000% | ✓ doskonały (≤5%) |
| Stechiometria UF6: udział masowy uranu M(U)/(M(U)+6M(F)) na podstawie mas atomowych IUPAC/CODATA. |
0.676181 | 0.676181 | +0.000% | ✓ doskonały (≤5%) |
| Cylinder 500 kg UF6: masa uranu Praktyczny benchmark przeliczenia masy UF6 na masę uranu w cylindrze. |
338.091 kgU | 338.091 kgU | +0.000% | ✓ doskonały (≤5%) |
| LEMUF: łączna niepewność w kwadraturze Kontrola propagacji wariancji z czterech strumieni i składnika systematycznego. |
16.0156 kgU | 16.0156 kgU | +0.000% | ✓ doskonały (≤5%) |
| Kampania: z-score U-235 Końcowy wskaźnik audytowy musi być dokładnie stosunkiem różnicy do niepewności. |
0.256938 | 0.256938 | +0.000% | ✓ doskonały (≤5%) |
Kontekst metodologiczny:
Walidacja nie rozstrzyga, czy deklaracje operatora są prawdziwe; sprawdza rachunek, którym audytor porównuje księgi, pomiary i niepewności. Dlatego benchmarki dotyczą definicji MUF, stechiometrii UF6 i propagacji niepewności, czyli elementów, które muszą być poprawne zanim zacznie się interpretacja safeguards.
Zakres walidacji
Model implementuje: Audyt materiałowy dla safeguards, bilans MUF, niepewność LEMUF.
Pełny zestaw testów (regresja, renderowanie) w public/kalkulatory/tests/.
Uruchamianie: php public/kalkulatory/tests/run.php
Audyt modelu: Audyt spójności deklarowanych strumieni
Kalkulator porównuje deklarowane strumienie feed, product, tails i hold-up jako masę całkowitą oraz jako masę U-235. Wynik jest ćwiczeniem z księgowości materiałowej i kontroli jakości danych.
Najważniejsze uproszczenia
- Nie opisuje prawdziwych progów alarmowych ani procedur inspekcyjnych.
- Nie modeluje punktów pomiarowych, częstości kontroli ani systemów C/S.
- Tolerancja jest parametrem dydaktycznym, nie normą instytucjonalną.
Co można liczyć dokładniej
- Dodać wariant z jawną propagacją niepewności masy i assay dla każdego strumienia osobno.
- Dodać eksport tabeli audytu do prostego arkusza laboratoryjnego.
- Połączyć wynik z wizualizacją warstw kontroli safeguards.