RadiolysisStabilityChecker
Radiolysis Stability Checker
Utility description: Radiolysis Stability Checker
Radiolysis Stability Checker — Radiopharmaceutical Stability Assessment ℹ️ Predicts RCP drop due to autoradiolysis based on activity, volume, and time. ℹ️ Accounts for radioprotectors (ascorbate, ethanol). Usage: RadiolysisStabilityChecker.exe → demo mode RadiolysisStabilityChecker.exe input.csv output.json → calculation Input format: BatchNumber,Radiopharmaceutical,Initial_Activity_MBq,Volume_mL,Initial_RCP_Percent,Has_Radioprotector,Radioprotector_Type,Radioprotector_Concentration_mM,EOS_Time_ISO,Check_Time_ISO,Radionuclide Example: LU177-STAB-001,Lu-177-DOTATATE,7400.0,5.0,99.5,true,Ascorbic,10.0,2026-05-20T08:00:00,2026-05-20T16:00:00,Lu-177 — WHY IS THIS NEEDED? At high specific activities, radiopharmaceuticals are subject to radiolysis — self-decomposition by their own radiation. • Prediction: The utility estimates how much Radiochemical Purity (RCP) will drop by the time of injection or expiration. • Risk Factors: High activity concentration (MBq/mL), lack of radioprotectors, long storage times. • Alpha Emitters (Ac-225): Have high LET (Linear Energy Transfer), causing rapid radiolysis even at low activities. • Radioprotectors: Ascorbic acid, gentisic acid, or ethanol significantly slow down degradation. ⚠️ IMPORTANT: • The model is simplified. Real radiolysis kinetics are complex and depend on many factors (pH, impurities, vial material). • Use this tool for preliminary assessment and logistics planning. • Always confirm RCP experimentally (TLC/HPLC) before patient administration.
input.csv
BatchNumber,Radiopharmaceutical,Initial_Activity_MBq,Volume_mL,Initial_RCP_Percent,Has_Radioprotector,Radioprotector_Type,Radioprotector_Concentration_mM,EOS_Time_ISO,Check_Time_ISO,Radionuclide LU177-STAB-001,Lu-177-DOTATATE,7400.0,5.0,99.5,true,Ascorbic,10.0,2026-05-20T08:00:00,2026-05-20T16:00:00,Lu-177 AC225-STAB-001,Ac-225-PSMA,10.0,1.0,98.0,false,None,0.0,2026-05-20T08:00:00,2026-05-20T12:00:00,Ac-225
URS & FS — User Requirements and Functional Specification
1. Scope
This document defines requirements and functional behaviour for RadiolysisStabilityChecker used to control: Radiolysis Stability Checker. The utility is intended for QC use and applies deterministic rules, not machine learning.
2. Execution modes
RadiolysisStabilityChecker.exe— demo mode or help output.RadiolysisStabilityChecker.exe input.csv output.json— process user data and write result.
3. Key source-derived controls
- Radiolysis Stability Checker — Radiopharmaceutical Stability Assessment
- BatchNumber,Radiopharmaceutical,Initial_Activity_MBq,Volume_mL,Initial_RCP_Percent,Has_Radioprotector,Radioprotector_Type,Radioprotector_Concentration_mM,EOS_Time_ISO,Check_Time_ISO,Radionuclide
- At high specific activities, radiopharmaceuticals are subject to radiolysis — self-decomposition by their own radiation.
- • Prediction: The utility estimates how much Radiochemical Purity (RCP) will drop by the time of injection or expiration.
- • Alpha Emitters (Ac-225): Have high LET (Linear Energy Transfer), causing rapid radiolysis even at low activities.
- ⚠️ IMPORTANT:
- • The model is simplified. Real radiolysis kinetics are complex and depend on many factors (pH, impurities, vial material).
4. URS — user requirements
| ID | Requirement | Criticality | Acceptance criterion |
|---|---|---|---|
| URS-001 | The utility shall accept input.csv with the exact headers defined in the data contract. | High | The file is processed without manual header changes. |
| URS-002 | The utility shall validate mandatory fields, data types, ranges, units, and critical pharmaceutical/radiochemical limits. | High | Each row receives PASS/WARNING/FAIL status. |
| URS-003 | The utility shall detect critical deviations related to radionuclidic/radiochemical purity, impurities, free radionuclide, pH, endotoxins and sterility where such fields are present. | High | A critical deviation produces FAIL or an explicit critical finding. |
| URS-004 | The utility shall generate output.json with machine-readable results, source values, warnings and failures. | High | JSON is suitable for LIMS/ELN/MES integration and QA/QC review. |
| URS-005 | The utility shall not use machine learning to decide conformance. | Medium | The decision is based on explicit rules and thresholds. |
| URS-006 | The utility shall preserve traceability between batch number, input values, applied rules and final status. | High | The output contains batch identifier and checked parameters. |
| URS-007 | The documentation shall support IQ/OQ preparation and inspection discussion with FDA/EMA/Roszdravnadzor or local regulator. | Medium | URS/FS and test scenarios are supplied with the utility. |
5. input.csv contract
| # | Field | Type | Sample | Purpose |
|---|---|---|---|---|
| 1 | BatchNumber | string | LU177-STAB-001 | Batch or lot identifier. |
| 2 | Radiopharmaceutical | string | Lu-177-DOTATATE | Product/radiopharmaceutical type; affects control interpretation. |
| 3 | Initial_Activity_MBq | decimal | 7400.0 | Activity of the radiopharmaceutical material or finished product. |
| 4 | Volume_mL | decimal | 5.0 | Controlled input parameter from input.csv. |
| 5 | Initial_RCP_Percent | decimal | 99.5 | Controlled input parameter from input.csv. |
| 6 | Has_Radioprotector | decimal | true | Controlled input parameter from input.csv. |
| 7 | Radioprotector_Type | string | Ascorbic | Controlled input parameter from input.csv. |
| 8 | Radioprotector_Concentration_mM | decimal | 10.0 | Controlled input parameter from input.csv. |
| 9 | EOS_Time_ISO | decimal | 2026-05-20T08:00:00 | Controlled input parameter from input.csv. |
| 10 | Check_Time_ISO | decimal | 2026-05-20T16:00:00 | Controlled input parameter from input.csv. |
| 11 | Radionuclide | decimal | Lu-177 | Controlled input parameter from input.csv. |
BatchNumber,Radiopharmaceutical,Initial_Activity_MBq,Volume_mL,Initial_RCP_Percent,Has_Radioprotector,Radioprotector_Type,Radioprotector_Concentration_mM,EOS_Time_ISO,Check_Time_ISO,Radionuclide LU177-STAB-001,Lu-177-DOTATATE,7400.0,5.0,99.5,true,Ascorbic,10.0,2026-05-20T08:00:00,2026-05-20T16:00:00,Lu-177 AC225-STAB-001,Ac-225-PSMA,10.0,1.0,98.0,false,None,0.0,2026-05-20T08:00:00,2026-05-20T12:00:00,Ac-225
6. FS — functional specification
| ID | Function | Implementation |
|---|---|---|
| FS-001 | CSV import | Read input.csv in UTF-8/CSV-compatible format; validate header and expected columns. |
| FS-002 | Schema validation | Validate mandatory fields and column count; report unknown or missing key fields. |
| FS-003 | Type conversion | Convert numeric, flag and text values; record invalid format as row-level error. |
| FS-004 | Rule engine | Apply domain rules for Radiolysis Stability Checker, including critical limits from the utility description. |
| FS-005 | Status aggregation | Generate final status: FAIL for critical failure, WARNING for non-critical deviation, PASS for conformance. |
| FS-006 | JSON export | Write output.json with check details, source values, warnings and critical findings. |
| FS-007 | Audit support | Keep result structure suitable for review, deviation investigation and IQ/OQ preparation. |
7. output.json example
{
"utilityId": "radiolysis-stability-checker",
"api": "Radiolysis Stability Checker",
"overallStatus": "PASS|WARNING|FAIL",
"sourceFile": "input.csv",
"checks": [
{
"parameter": "BatchNumber",
"value": "LU177-STAB-001",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Radiopharmaceutical",
"value": "Lu-177-DOTATATE",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Initial_Activity_MBq",
"value": "7400.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Volume_mL",
"value": "5.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Initial_RCP_Percent",
"value": "99.5",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Has_Radioprotector",
"value": "true",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Radioprotector_Type",
"value": "Ascorbic",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Radioprotector_Concentration_mM",
"value": "10.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
}
],
"criticalFindings": []
}8. OQ/PQ test scenarios
| ID | Scenario | Expected result |
|---|---|---|
| OQ-001 | Valid sample row | PASS or acceptable WARNING according to rules. |
| OQ-002 | Mandatory column is missing | Schema error or FAIL. |
| OQ-003 | Non-numeric value in numeric field | Type conversion error. |
| OQ-004 | Critical parameter outside limit | FAIL and critical finding. |
| PQ-001 | User real batch/lot | Approved review result with input.csv and output.json retained. |
9. QA/QC and change control
- Do not rename columns without validator update.
- Store input.csv, output.json, executable version and checksum.
- Before production use perform IQ/OQ/PQ or equivalent CSV/CSA verification.
- Critical radiopharmaceutical limits must be checked against the approved specification and local SOPs.
Included in packages
PetRad2: advanced radiopharmaceutical QC package
A curated set of new utilities for radionuclide control, targeted alpha therapy, specific activity, radiolysis stability and preliminary dosimetry calculations.
OpenRadiology QC Suite
QC package for radiology and diagnostic imaging: radiopharmaceuticals, PET/SPECT, contrast media, iodinated and gadolinium products, plus particle, sterility and endotoxin checks.
OpenRPH organ/system: endocrine, thyroid and NET
Radioiodine, thyroid/parathyroid, somatostatin receptor, MIBG and neuroendocrine workflows.
OpenRPH organ/system: oncology and theranostics
Tumour imaging, PSMA/FAPI/receptor tracers, immuno-PET, targeted radionuclide therapy and radioembolization.
OpenRPH use case: radionuclide therapy and theranostics
Lu-177, Ac-225, Ra-223, Y-90, Ho-166, Sm-153, Sr-89, Re-188, Tb-161, I-131 and other therapeutic radiopharmaceuticals: activity, purity, free metal, daughters and toxicological constraints.
OpenRPH workflow: generators and isotope purity
Generator eluate, breakthrough, radionuclidic purity, isotope mix and starting radionuclides.
OpenRPH workflow: product release QC
Assay, purity, sterility, endotoxins, pH, impurities, appearance and batch-release checks.
OpenRPH workflow: stability, storage, decay and waste
Kinetic stability, shelf life, decay correction, expiry, storage, trend and radioactive waste.
OpenRPH: combined radiopharmaceutical QC package
RPH combines PetRad, PetRad2 and PetRad3 into one umbrella package for PET/SPECT, therapeutic radionuclides, generators, labelled compounds, decay calculations, sterility, endotoxins and radiochemical/radionuclidic purity.
Open