PETNormalizationFileAssignmentChecker
PET Normalization File Assignment Checker
PET Normalization File Assignment Check
Checks that the study uses an approved normalization file for the correct scanner, software version and detector configuration.
- ScannerID and detector-configuration match;
- software-version compatibility and file age;
- hash integrity and approval status.
Permitted file age is defined by the manufacturer procedure; a universal 30-day limit shall not be used without approval.
input.csv
ScannerID,StudyID,AssignedNormFile,NormFileScannerID,NormFileSoftwareVersion,CurrentScannerSoftwareVersion,NormFileCreationDate,FileAgeDays,ExpectedHash,ActualHash,IsApproved,DetectorConfig,CurrentDetectorConfig PET-SIEMENS-01,PAT-STUDY-2026-001,NORM_20260722_V01.map,PET-SIEMENS-01,VE11A,VE11A,2026-07-22,0,A1B2C3D4,A1B2C3D4,true,Standard,Standard PET-SIEMENS-01,PAT-STUDY-2026-002,NORM_20260101_V05.map,PET-SIEMENS-01,VE11A,VE11A,2026-01-01,200,A1B2C3D4,A1B2C3D4,true,Standard,Standard PET-GE-02,PAT-STUDY-2026-003,NORM_GE_OLD.map,PET-SIEMENS-01,VE11A,MP23,2026-07-20,2,X9Y8Z7,X9Y8Z7,false,Standard,Standard
URS & FS — user requirements and functional specification
URS — User Requirements Specification
- The utility shall accept input.csv with the headers defined by the data contract.
- Before calculation, the utility shall detect missing columns, type errors, empty mandatory values and illogical dates or ranges.
- The utility shall deterministically perform “PET Normalization File Assignment Check”.
- Limits and rules shall be loaded from an approved profile or explicitly fixed in the validated version.
- Each record shall receive a clear final status: PASS, WARNING or FAIL, with the reason.
- The result shall retain source values, derived values, applied limits and individual check statuses.
- Invalid input shall not return a successful result. The output supports qualified review under an approved procedure.
FS — Functional Specification
- Run PETNormalizationFileAssignmentChecker.exe in demonstration mode or with input.csv output.json arguments.
- Read UTF-8 CSV and map columns to the data contract.
- Convert values to the expected types and validate mandatory fields.
- Perform calculations and rule checks for “PET Normalization File Assignment Check”.
- Create individual checks and derive the overall status from the worst result.
- Write machine-readable output.json; populate errors when a valid calculation cannot be produced.
input.csv example
ScannerID,StudyID,AssignedNormFile,NormFileScannerID,NormFileSoftwareVersion,CurrentScannerSoftwareVersion,NormFileCreationDate,FileAgeDays,ExpectedHash,ActualHash,IsApproved,DetectorConfig,CurrentDetectorConfig PET-SIEMENS-01,PAT-STUDY-2026-001,NORM_20260722_V01.map,PET-SIEMENS-01,VE11A,VE11A,2026-07-22,0,A1B2C3D4,A1B2C3D4,true,Standard,Standard PET-SIEMENS-01,PAT-STUDY-2026-002,NORM_20260101_V05.map,PET-SIEMENS-01,VE11A,VE11A,2026-01-01,200,A1B2C3D4,A1B2C3D4,true,Standard,Standard PET-GE-02,PAT-STUDY-2026-003,NORM_GE_OLD.map,PET-SIEMENS-01,VE11A,MP23,2026-07-20,2,X9Y8Z7,X9Y8Z7,false,Standard,Standard
Minimum output.json structure
{
"utility": "PETNormalizationFileAssignmentChecker",
"source": "input.csv",
"status": "PASS|WARNING|FAIL",
"derivedValues": {},
"checks": [
{
"parameter": "example",
"value": 0,
"limit": "configured profile",
"status": "PASS",
"message": "criterion satisfied"
}
],
"errors": []
}
Minimum OQ scenarios
- A row within the approved profile shall return PASS.
- A non-critical limit violation shall return WARNING or a review status.
- A critical violation shall return FAIL or the applicable operational decision.
- A missing column, invalid type or impossible date shall populate errors and shall not return PASS.
Before operational use
- Reconcile formulas and limits with manufacturer documentation and the approved SOP.
- Fix the scanner model, software version and profile version.
- After an executable, formula or profile change, repeat affected tests.
- Retain the source CSV and JSON result together.
Included in packages
PET Scanner State QC Suite
14 utilities for PET/PET-CT scanner state control: Ge-68/Ga-68 source activity, blank sinogram, detector efficiency, normalization acquisition and factor distribution, normalization-file assignment, trending, energy window, TOF, attenuation-correction map, PET/CT cross-calibration and the daily operational decision.
OpenRPH use case: PET scanner state, gamma camera and radiation physics
The linked medical-device/radiation-physics layer: PET detector QC, normalization, AC map, cross-calibration, TOF, gamma-camera uniformity, source strength and staff dose.
OpenRPH workflow: instruments, devices and radiation safety
PET/gamma-camera state, calibration, detector QC, energy window, TOF, shielding and radiation safety.
Open