SpecificActivityCalculator
Specific Activity Calculator
Utility description: Specific Activity Calculator
Specific Activity Calculator — Radiopharmaceutical Specific Activity Calculation ℹ️ Calculates specific activity (MBq/nmol) with decay correction. ℹ️ Supports F-18, Ga-68, Lu-177, Ac-225, Y-90, Cu-64, etc. Usage: SpecificActivityCalculator.exe → demo mode SpecificActivityCalculator.exe input.csv output.json → calculation Input format: BatchNumber,Radionuclide,Measured_Activity_MBq,Measurement_Time_ISO,Mass_Ligand_ug,Molecular_Weight_g_mol,Reference_Time_ISO,Min_Specific_Activity_MBq_nmol Example: LU177-SA-001,Lu-177,7400.0,2026-05-20T08:00:00,50.0,1435.6,2026-05-20T08:00:00,1000.0 — WHY IS THIS NEEDED? Specific Activity (SA) is a key quality parameter for targeted therapy and diagnostics: • Binding Efficiency: High SA ensures that most ligand molecules carry a radionuclide. Low SA means presence of "cold" ligand, which competes for receptors, reducing imaging or therapeutic efficacy. • Toxicity: Excess cold ligand may cause pharmacological effects or toxicity. • Quality Control: SA is calculated from measured activity (dose calibrator) and ligand amount (HPLC/spectrophotometry). • Decay: Activity changes over time, so it is important to specify measurement time and reference time (e.g., injection time). ⚠️ IMPORTANT: • Molecular weight must correspond to the ligand form (free peptide or metal complex). • For generator isotopes (Ga-68, Re-188), SA is often limited by generator capacity and labeling efficiency. • For alpha-emitters (Ac-225), SA requirements are extremely high due to high toxicity of free ions.
input.csv
BatchNumber,Radionuclide,Measured_Activity_MBq,Measurement_Time_ISO,Mass_Ligand_ug,Molecular_Weight_g_mol,Reference_Time_ISO,Min_Specific_Activity_MBq_nmol LU177-SA-001,Lu-177,7400.0,2026-05-20T08:00:00,50.0,1435.6,2026-05-20T08:00:00,1000.0 AC225-SA-001,Ac-225,10.0,2026-05-20T08:00:00,5.0,1200.0,2026-05-20T08:00:00,5000.0
URS & FS — User Requirements and Functional Specification
1. Scope
This document defines requirements and functional behaviour for SpecificActivityCalculator used to control: Specific Activity Calculator. The utility is intended for QC use and applies deterministic rules, not machine learning.
2. Execution modes
SpecificActivityCalculator.exe— demo mode or help output.SpecificActivityCalculator.exe input.csv output.json— process user data and write result.
3. Key source-derived controls
- Specific Activity Calculator — Radiopharmaceutical Specific Activity Calculation
- • Toxicity: Excess cold ligand may cause pharmacological effects or toxicity.
- • Quality Control: SA is calculated from measured activity (dose calibrator) and ligand amount (HPLC/spectrophotometry).
- ⚠️ IMPORTANT:
- • For alpha-emitters (Ac-225), SA requirements are extremely high due to high toxicity of free ions.
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-SA-001 | Batch or lot identifier. |
| 2 | Radionuclide | decimal | Lu-177 | Controlled input parameter from input.csv. |
| 3 | Measured_Activity_MBq | decimal | 7400.0 | Activity of the radiopharmaceutical material or finished product. |
| 4 | Measurement_Time_ISO | decimal | 2026-05-20T08:00:00 | Controlled input parameter from input.csv. |
| 5 | Mass_Ligand_ug | decimal | 50.0 | Controlled input parameter from input.csv. |
| 6 | Molecular_Weight_g_mol | decimal | 1435.6 | Controlled input parameter from input.csv. |
| 7 | Reference_Time_ISO | decimal | 2026-05-20T08:00:00 | Controlled input parameter from input.csv. |
| 8 | Min_Specific_Activity_MBq_nmol | decimal | 1000.0 | Activity of the radiopharmaceutical material or finished product. |
BatchNumber,Radionuclide,Measured_Activity_MBq,Measurement_Time_ISO,Mass_Ligand_ug,Molecular_Weight_g_mol,Reference_Time_ISO,Min_Specific_Activity_MBq_nmol LU177-SA-001,Lu-177,7400.0,2026-05-20T08:00:00,50.0,1435.6,2026-05-20T08:00:00,1000.0 AC225-SA-001,Ac-225,10.0,2026-05-20T08:00:00,5.0,1200.0,2026-05-20T08:00:00,5000.0
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 Specific Activity Calculator, 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": "specific-activity-calculator",
"api": "Specific Activity Calculator",
"overallStatus": "PASS|WARNING|FAIL",
"sourceFile": "input.csv",
"checks": [
{
"parameter": "BatchNumber",
"value": "LU177-SA-001",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Radionuclide",
"value": "Lu-177",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Measured_Activity_MBq",
"value": "7400.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Measurement_Time_ISO",
"value": "2026-05-20T08:00:00",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Mass_Ligand_ug",
"value": "50.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Molecular_Weight_g_mol",
"value": "1435.6",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Reference_Time_ISO",
"value": "2026-05-20T08:00:00",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Min_Specific_Activity_MBq_nmol",
"value": "1000.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 isotope family: alpha-emitting therapy
Ac-225, Ra-223, At-211, Bi-213 and Th-227: targeted alpha therapy and daughter/recoil control.
OpenRPH isotope family: beta-emitting therapy
Lu-177, Y-90, Ho-166, Re-188, Sm-153, Sr-89, P-32, Cu-67 and Tb-161.
OpenRPH isotope family: Ga/Ge
Ga-67, Ga-68 and Ge-68: generator, radiolabelling, PET/SPECT and purity workflows.
OpenRPH isotope family: long-lived PET / immuno-PET
Cu-64, Zr-89, I-124, Mn-52 and Y-86 for antibodies, slow kinetics and extended imaging.
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: imaging QC and quantitative interpretation
Acquisition, uptake, clearance, perfusion, transit, ejection fraction, segmentation and quantitative imaging.
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 workflow: synthesis, labelling and kit reconstitution
Radiolabelling, synthesis, chelation, reducing agent, pH/stoichiometry and kit preparation.
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