Tb161_Radionuclidic_Purity_Checker
Tb161 Radionuclidic Purity Checker
ℹ️ Utility analyzes gamma spectra for impurities:
• Tb-161 purity (≥99.9%)
• Tb-160 impurity (≤0.1%)
• Target (Gd-153) and activation (Eu-152) impurities
⚠️ CRITICAL: Tb-160 has a half-life of 72 days!
Its accumulation increases patient radiation dose without benefit.
Usage:
Tb161RadionuclidicPurityChecker.exe → demo mode (console output)
Tb161RadionuclidicPurityChecker.exe input.csv output.json → evaluate your data
Input format:
BatchNumber,ProductName,Activity_Tb161,Activity_Tb160,Activity_Gd153,Activity_Eu152,Max_Tb160_Percent,Max_Other_Impurities_Percent
Example:
RPH-TB-2026-001,Tb-161-DOTATATE,1000.0,0.5,0.1,0.05,0.1,0.5
— WHY IS THIS NEEDED?
Radionuclidic purity control is critical for Tb-161 therapy (Novartis, PSI):
• Tb-161 is produced by neutron irradiation of Gd-160
• Side reaction (n, gamma) on Gd-160 can lead to Gd-161, which decays to Tb-161, but Tb-160 can also form via other paths or target impurities
• Tb-160 (T1/2 = 72.3 d) is a long-lived impurity compared to Tb-161 (T1/2 = 6.9 d)
• Presence of Tb-160 significantly increases integral patient dose after therapeutic isotope clearance
• Target impurities (Gd-153) and container activation products (Eu-152) are also controlled
⚠️ CRITICAL:
• Tb-161 radionuclidic purity ≥99.9%
• Tb-160 impurity ≤0.1% (strictly due to long half-life)
• Sum of other impurities ≤0.5%
• High-resolution gamma spectrometry (HPGe) is mandatory for separating close peaks
Key features:
• Calculation of percentage content for each radionuclide
• Specific control of Tb-160 as critical impurity
• Accounting for target and activation product activity
• Support for various limits depending on regulatory requirements
Critical parameters:
• Tb-161 Purity: ≥99.9%
• Tb-160 Impurity: ≤0.1%
• Other Impurities: ≤0.5%
💡 Usage tips:
1. Use calibrated HPGe detector with high efficiency
2. Perform measurements after sufficient cooling time to reduce short-lived isotope background
3. Account for sample geometry when calculating absolute activity
4. Compare spectra with reference libraries for accurate peak identification
5. For Tb-161, low-energy peaks (25-49 keV) are especially important, ensure correct detection
⚠️ Note: Unlike Lu-177 where main impurities are Lu-177m or Lu-176, for Tb-161 the main problem is Tb-160 due to large difference in half-lives. The utility helps guarantee that patient receives only therapeutic dose without long-term radiation tail.
input.csv
BatchNumber,ProductName,Activity_Tb161,Activity_Tb160,Activity_Gd153,Activity_Eu152,Max_Tb160_Percent,Max_Other_Impurities_Percent RPH-TB-2026-001,Tb-161-DOTATATE,1000.0,0.5,0.1,0.05,0.1,0.5 RPH-TB-2026-002,Tb-161-PSMA,500.0,0.1,0.05,0.02,0.1,0.5 RPH-TB-2026-003,Tb-161-Batch (High Impurity),800.0,2.0,0.5,0.3,0.1,0.5
Tb161 Radionuclidic Purity Checker — URS and FS
The English user requirements and functional specification are provided below.
Tb161 Radionuclidic Purity Checker — URS
Tb161 Radionuclidic Purity Checker
This document is generated for the English localization. Non-Russian portal languages must use this English version, not a mixed Russian/English document.
Purpose
Define user requirements for a standalone FUZKK utility that accepts laboratory CSV data, evaluates the records using limits embedded in code, and produces LabWare-compatible JSON.
Scope
The utility is intended for preliminary QC/QA review, integration testing, LIMS/LabWare flow and evidence-trail preparation. Final release decisions remain under the laboratory's validated procedure and responsible personnel.
Users
QC analyst, QA reviewer, CSV/validation engineer, LIMS/LabWare integration engineer, responsible laboratory specialist.
User requirements
- The utility shall run without arguments and print its self-description, a built-in input.csv example from GetDemoData(), and demo evaluation for the embedded records.
- The utility shall run with two arguments: input.csv output.json.
- The utility shall not read input.csv and shall not write output.json when started without arguments.
- CSV numeric values shall be parsed using CultureInfo.InvariantCulture.
- Output shall be generated as LabWare-compatible JSON with Header, Samples, Results, Status, StatusCode, ErrorMessage, Description and DescriptionEN.
- For PASS records, ErrorMessage shall be an empty string.
- Embedded limits shall follow this priority: Ph. Eur. → British Pharmacopoeia / UK implementation → EAEU / regional requirements → EMA/ICH/EU guidance → USP fallback.
- If an exact monograph is not known, strict standard API limits are used where applicable: assay 98–102%, total impurities ≤1.0%, individual impurity ≤0.5%.
- For biologics and mAb-like products, aggregation, sterility and endotoxin checks shall be included where relevant to the utility purpose.
- If a parameter may arrive in different units, the unit shall be represented as a separate input field or explicitly reflected in the input.csv field name.
Input CSV
BatchNumber,ProductName,Activity_Tb161,Activity_Tb160,Activity_Gd153,Activity_Eu152,Max_Tb160_Percent,Max_Other_Impurities_Percent RPH-TB-2026-001,Tb-161-DOTATATE,1000.0,0.5,0.1,0.05,0.1,0.5 RPH-TB-2026-002,Tb-161-PSMA,500.0,0.1,0.05,0.02,0.1,0.5 RPH-TB-2026-003,Tb-161-Batch (High Impurity),800.0,2.0,0.5,0.3,0.1,0.5
input.csv fields
| Field | Sample |
|---|---|
| BatchNumber | RPH-TB-2026-001 |
| ProductName | Tb-161-DOTATATE |
| Activity_Tb161 | 1000.0 |
| Activity_Tb160 | 0.5 |
| Activity_Gd153 | 0.1 |
| Activity_Eu152 | 0.05 |
| Max_Tb160_Percent | 0.1 |
| Max_Other_Impurities_Percent | 0.5 |
Utility description
Tb-161 Radionuclidic Purity Checker — Tb-161 Radionuclidic Purity Analyzer
Tb-161 Radionuclidic Purity Checker — Tb-161 Radionuclidic Purity Analyzer
ℹ️ Utility analyzes gamma spectra for impurities:
• Tb-161 purity (≥99.9%)
• Tb-160 impurity (≤0.1%)
• Target (Gd-153) and activation (Eu-152) impurities
⚠️ CRITICAL: Tb-160 has a half-life of 72 days!
Its accumulation increases patient radiation dose without benefit.
Usage:
Tb161RadionuclidicPurityChecker.exe → demo mode (console output)
Tb161RadionuclidicPurityChecker.exe input.csv output.json → evaluate your data
Input format:
BatchNumber,ProductName,Activity_Tb161,Activity_Tb160,Activity_Gd153,Activity_Eu152,Max_Tb160_Percent,Max_Other_Impurities_Percent
Example:
RPH-TB-2026-001,Tb-161-DOTATATE,1000.0,0.5,0.1,0.05,0.1,0.5
— WHY IS THIS NEEDED?
Radionuclidic purity control is critical for Tb-161 therapy (Novartis, PSI):
• Tb-161 is produced by neutron irradiation of Gd-160
• Side reaction (n, gamma) on Gd-160 can lead to Gd-161, which decays to Tb-161, but Tb-160 can also form via other paths or target impurities
• Tb-160 (T1/2 = 72.3 d) is a long-lived impurity compared to Tb-161 (T1/2 = 6.9 d)
• Presence of Tb-160 significantly increases integral patient dose after therapeutic isotope clearance
• Target impurities (Gd-153) and container activation products (Eu-152) are also controlled
⚠️ CRITICAL:
• Tb-161 radionuclidic purity ≥99.9%
• Tb-160 impurity ≤0.1% (strictly due to long half-life)
• Sum of other impurities ≤0.5%
• High-resolution gamma spectrometry (HPGe) is mandatory for separating close peaks
Key features:
• Calculation of percentage content for each radionuclide
• Specific control of Tb-160 as critical impurity
• Accounting for target and activation product activity
• Support for various limits depending on regulatory requirements
Critical parameters:
• Tb-161 Purity: ≥99.9%
• Tb-160 Impurity: ≤0.1%
• Other Impurities: ≤0.5%
💡 Usage tips:
1. Use calibrated HPGe detector with high efficiency
2. Perform measurements after sufficient cooling time to reduce short-lived isotope background
3. Account for sample geometry when calculating absolute activity
4. Compare spectra with reference libraries for accurate peak identification
5. For Tb-161, low-energy peaks (25-49 keV) are especially important, ensure correct detection
⚠️ Note: Unlike Lu-177 where main impurities are Lu-177m or Lu-176, for Tb-161 the main problem is Tb-160 due to large difference in half-lives. The utility helps guarantee that patient receives only therapeutic dose without long-term radiation tail.
Traceability and limitations
- The URS is used as the source document for functional specification, CSV review and later validation work.
- This document does not replace an approved pharmacopoeial monograph, validated analytical method or internal product specification.
- For product-specific limits, the approved customer specification takes priority.
Tb161 Radionuclidic Purity Checker — FS
Tb161 Radionuclidic Purity Checker
The functional specification describes the behaviour of the standalone FUZKK console utility, input-data format, evaluation algorithm and output JSON structure.
Functional flow
- Main() checks the number of arguments.
- If no arguments are provided: PrintHello() prints the description and built-in input.csv example, then RunDemoEvaluation() executes Evaluate() over GetDemoData() and prints demo JSON.
- If two arguments are provided: RunWithFiles(input.csv, output.json) reads CSV, evaluates each record and writes LabWare-compatible JSON.
- LoadData() uses CultureInfo.InvariantCulture and shall not be called in no-arguments mode.
- Evaluate() returns a named tuple with BatchNumber, ProductName, Parameters, CriticalFailCount, WarningCount, Recommendation and RecommendationEN.
- GetIssues() builds messages for ErrorMessage in WARNING/FAIL cases.
Evaluation rules
- PASS: CriticalFailCount = 0 and WarningCount = 0.
- WARNING: CriticalFailCount = 0 and WarningCount > 0.
- FAIL: CriticalFailCount > 0.
- ERROR: exception during reading or processing.
- ErrorMessage remains empty for PASS.
- Limits are embedded in Program.cs; no external limit configuration is required.
Input and fields
BatchNumber,ProductName,Activity_Tb161,Activity_Tb160,Activity_Gd153,Activity_Eu152,Max_Tb160_Percent,Max_Other_Impurities_Percent RPH-TB-2026-001,Tb-161-DOTATATE,1000.0,0.5,0.1,0.05,0.1,0.5 RPH-TB-2026-002,Tb-161-PSMA,500.0,0.1,0.05,0.02,0.1,0.5 RPH-TB-2026-003,Tb-161-Batch (High Impurity),800.0,2.0,0.5,0.3,0.1,0.5
| Field | Sample |
|---|---|
| BatchNumber | RPH-TB-2026-001 |
| ProductName | Tb-161-DOTATATE |
| Activity_Tb161 | 1000.0 |
| Activity_Tb160 | 0.5 |
| Activity_Gd153 | 0.1 |
| Activity_Eu152 | 0.05 |
| Max_Tb160_Percent | 0.1 |
| Max_Other_Impurities_Percent | 0.5 |
Output JSON
{
"Header": {
"UtilityName": "Tb161_Radionuclidic_Purity_Checker",
"Version": "1.0.0",
"Timestamp": "UTC",
"InstrumentID": "FUZKK-QC-WORKSTATION",
"OperatorID": "Admin"
},
"Samples": [
{
"SampleID": "from BatchNumber",
"BatchNumber": "from CSV",
"ProductName": "from CSV",
"TestName": "utility-specific test",
"AnalysisCode": "utility-specific code",
"Status": "PASS | WARNING | FAIL | ERROR",
"StatusCode": "1 | 2 | 0 | -1",
"ErrorMessage": "",
"Description": "Russian recommendation",
"DescriptionEN": "English recommendation",
"Results": [
{
"ParameterName": "parameter",
"ResultValue": 0.0,
"UnitOfMeasure": "unit",
"SpecificationLimit": "limit",
"IsWithinSpec": true
}
]
}
]
}Included in packages
Radioligand & Theranostics Expansion QC Suite
Radioligand & Theranostics Expansion QC Suite: FUZKK utility package for CSV→JSON QC checks with EU-first limit priority.
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 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: imaging QC and quantitative interpretation
Acquisition, uptake, clearance, perfusion, transit, ejection fraction, segmentation and quantitative imaging.
OpenRPH workflow: instruments, devices and radiation safety
PET/gamma-camera state, calibration, detector QC, energy window, TOF, shielding and radiation safety.
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.
Open