A GMP-compliant command-line tool to compute F0 values from autoclave temperature profiles for steam sterilization validation.
- Reads temperature-time CSV data (time in minutes, temperature in °C)
- Computes F0 (equivalent exposure time at 121.1°C) using trapezoidal integration of lethal rates
- Calculates Z-value based lethality (default Z = 10°C)
- Reports maximum lethal rate, time above 100°C, and summary statistics
- Outputs detailed lethal rate table as CSV
- Follows USP <1229> and ISO 14161 guidelines for steam sterilization validation
- Validates input data integrity (monotonic time, high temperatures detected)
- Error handling for missing columns, invalid values, non-numeric data
Requires Python 3.7 or later. No external dependencies beyond the standard library.
git clone https://github.com/yourusername/f0-lethality-calculator.git
cd f0-lethality-calculator
pip install -e .Or run directly:
python -m f0_lethality_calculator --helpBasic usage with a temperature profile CSV:
python -m f0_lethality_calculator data/profile.csvSpecify reference temperature and Z-value:
python -m f0_lethality_calculator data/profile.csv --t-ref 121.1 --z 12Save lethal rate details to a file:
python -m f0_lethality_calculator data/profile.csv --output lethality_report.csvThe CSV file must have a header row with columns Time (min) and Temperature (°C) (case-sensitive, exactly as shown). Example:
Time (min),Temperature (°C)
0.0,25.4
1.0,50.2
2.0,80.1
...
30.0,121.3
31.0,121.2
Time must be monotonically increasing. The tool will exit with an error if it detects any irregularities.
$ python -m f0_lethality_calculator tests/test_data/valid.csv
F0 (total lethal effect): 15.23 minutes
Maximum lethal rate: 1.04 min^-1
Time above 100°C: 12.0 minutes
Lethality report saved to f0_report.csv
MIT © 2026 Collins Amatu Gorgerat