DaughterNuclideIngrowthCalculator

Daughter Nuclide Ingrowth Calculator

radiopharmaceuticals QC URS & FS input.csv output.json radiochemical purity radionuclidic purity calculation
Открыть подборку

Описание утилиты: Daughter Nuclide Ingrowth Calculator

Daughter Nuclide Ingrowth Calculator — Калькулятор накопления дочерних нуклидов

ℹ️  Утилита рассчитывает теоретическую активность дочернего изотопа в радиофармацевтических генераторах:
    • Поддерживаемые пары: Mo-99/Tc-99m, Sr-82/Rb-82, Ge-68/Ga-68, Ti-44/Sc-44, Zn-62/Cu-62
    • Расчет по уравнениям Бейтмана
    • Определение типа радиоактивного равновесия
    • Учет времени, прошедшего с момента последней элюции или очистки

⚠️  ВАЖНО: Расчет предполагает, что в момент времени T0 (начало отсчета) активность дочернего нуклида равна нулю (полная элюция).
    Реальный выход при элюции может быть ниже из-за эффективности колонки.

Использование:
  DaughterNuclideIngrowthCalculator.exe                            → демо-режим
  DaughterNuclideIngrowthCalculator.exe input.csv output.json      → расчет ваших данных

Формат input.csv:
BatchNumber,ParentIsotope,InitialParentActivityMBq,ElapsedTimeHours,DaughterHalfLifeHours,ParentHalfLifeHours

Пример (0 в полях Half-Life означает использование встроенных табличных значений):
  GEN-MO99-001,Mo-99,10000,24,0,0

Поддерживаемые изотопы (автоматический выбор периодов полураспада):
• Mo-99 (65.94 ч) → Tc-99m (6.01 ч)
• Sr-82 (25.36 ч) → Rb-82 (1.27 мин)
• Ge-68 (271 дн) → Ga-68 (67.7 мин)
• Ti-44 (60 лет) → Sc-44 (3.97 ч)
• Zn-62 (9.19 ч) → Cu-62 (9.7 мин)

— ЗАЧЕМ ЭТО НУЖНО?
В радиофармацевтике широко используются генераторные системы, где короткоживущий диагностический или терапевтический изотоп получается из долгоживущего родителя:
• Планирование элюции: Расчет доступной активности перед процедурой
• Контроль качества: Сравнение теоретического выхода с измеренным для оценки эффективности генератора
• Логистика: Оценка активности при доставке в удаленные центры

⚠️  КРИТИЧЕСКИ ВАЖНО:
• Тип равновесия:
  - Секулярное (T_parent >> T_daughter): Активность дочернего нуклида стремится к активности родителя.
  - Транзиторное (T_parent > T_daughter): Активность дочернего нуклида может превышать активность родителя в определенный момент.
• Время максимума: Для транзиторного равновесия существует оптимальное время накопления (t_max), когда активность дочернего нуклида максимальна.
• Выход элюции: Реальная активность = Теоретическая * Эффективность элюции (обычно 80-95%).

Ключевые особенности утилиты:
• Автоматический расчет констант распада
• Поддержка пользовательских периодов полураспада для нестандартных пар
• Определение типа равновесия для правильной интерпретации результатов

💡 Советы по использованию:
1. Для Mo-99/Tc-99m максимум накопления достигается примерно через 23 часа после предыдущей элюции.
2. Для Ga-68 генераторов (Ge-68) равновесие наступает быстро, но из-за долгого периода полураспада родителя активность падает медленно (в основном за счет распада Ge-68, если рассматривать долгосрочно, но в рамках суток почти постоянна).
3. Всегда учитывайте эффективность элюции (Elution Efficiency) при планировании дозы пациенту.

input.csv

BatchNumber,ParentIsotope,InitialParentActivityMBq,ElapsedTimeHours,DaughterHalfLifeHours,ParentHalfLifeHours
GEN-MO99-001,Mo-99,10000,24,0,0
GEN-SR82-002,Sr-82,1850,0.5,0,0
GEN-GA68-003,Ge-68,500,48,0,0
CUSTOM-001,Parent-X,1000,10,2.5,20

URS & FS — спецификация пользователя и функциональная спецификация

Документ описывает контролируемый интерфейс и поведение утилиты DaughterNuclideIngrowthCalculator для объекта Daughter Nuclide Ingrowth Calculator.

Предметные ограничения и критические параметры

Ниже приведены ключевые фрагменты исходного описания. Перед продуктивным применением пределы должны быть сверены с утверждённой спецификацией, регистрационным досье и локальными SOP.
  • ⚠️ ВАЖНО: Расчет предполагает, что в момент времени T0 (начало отсчета) активность дочернего нуклида равна нулю (полная элюция).
  • ⚠️ КРИТИЧЕСКИ ВАЖНО:

URS — пользовательские требования

IDТребованиеКритичностьКритерий приемки
URS-001Утилита должна принимать файл input.csv с точными заголовками, указанными в контракте данных.HighФайл обрабатывается без ручного изменения заголовков.
URS-002Утилита должна выполнять детерминированную проверку для объекта «Daughter Nuclide Ingrowth Calculator» на основе входных значений, утверждённых пределов и предметных правил.HighДля каждой строки формируется статус PASS / WARNING / FAIL.
URS-003Утилита должна проверять обязательные поля, типы данных, числовые диапазоны, единицы измерения и фармацевтическую/радиохимическую правдоподобность.HighОшибки схемы и преобразования явно отражаются в результате.
URS-004Утилита должна выявлять критические отклонения по радионуклидной чистоте, радиохимической чистоте, свободному радионуклиду, примесям, pH, эндотоксинам и стерильности, если такие поля присутствуют.HighКритическое отклонение приводит к FAIL или отдельному critical finding.
URS-005Утилита должна формировать output.json с машинно-читаемыми результатами, исходными значениями, предупреждениями и отказами.HighJSON пригоден для LIMS/ELN/MES-интеграции и QA/QC review.
URS-006Утилита не должна использовать машинное обучение для решения о соответствии.MediumРезультат основан на явно заданных правилах, порогах и входных значениях.
URS-007Утилита должна сохранять трассируемость между номером серии, входными значениями, применёнными правилами и итоговым статусом.HighВыход содержит идентификатор серии и перечень проверенных параметров.
URS-008Документация должна поддерживать подготовку IQ/OQ и обсуждение на инспекции FDA/EMA/Росздравнадзора или локального регулятора.MediumURS & FS, контракт input.csv/output.json и тестовые сценарии доступны вместе с утилитой.

Контракт input.csv

#ПолеТипПримерНазначение
1BatchNumberstringGEN-MO99-001Идентификатор серии/партии для трассируемости.
2ParentIsotopestring / decimalMo-99Контролируемый входной параметр для детерминированных QC-правил.
3InitialParentActivityMBqdecimal10000Активность радиофармацевтического материала, применяемая для выпуска, расчётов распада или дозовой оценки.
4ElapsedTimeHoursdatetime / string24Временная точка для расчёта распада, стабильности или накопления дочернего нуклида.
5DaughterHalfLifeHoursdecimal0Контролируемый входной параметр для детерминированных QC-правил.
6ParentHalfLifeHoursdecimal0Контролируемый входной параметр для детерминированных QC-правил.
BatchNumber,ParentIsotope,InitialParentActivityMBq,ElapsedTimeHours,DaughterHalfLifeHours,ParentHalfLifeHours
GEN-MO99-001,Mo-99,10000,24,0,0
GEN-SR82-002,Sr-82,1850,0.5,0,0
GEN-GA68-003,Ge-68,500,48,0,0
CUSTOM-001,Parent-X,1000,10,2.5,20

FS — функциональная спецификация

IDФункцияРеализация
FS-001CSV importПрочитать input.csv в UTF-8/CSV-совместимом формате, проверить наличие заголовка и ожидаемых колонок.
FS-002Schema validationПроверить обязательные поля и количество колонок; сообщить о неизвестных или отсутствующих ключевых полях.
FS-003Type conversionПреобразовать числовые, флаговые и текстовые значения; некорректный формат фиксировать как ошибку строки.
FS-004Domain rule engineПрименить предметные правила для «Daughter Nuclide Ingrowth Calculator», включая критические пределы из описания утилиты и утверждённой спецификации.
FS-005Status aggregationСформировать итоговый статус: FAIL при критическом отказе, WARNING при некритическом отклонении, PASS при соответствии.
FS-006JSON exportЗаписать output.json с детализацией проверок, исходными значениями, предупреждениями, отказами и critical findings.
FS-007Audit supportСохранять структуру результата пригодной для review, расследования отклонений, воспроизведения расчёта и подготовки IQ/OQ.
FS-008Integration contractПоддерживать простой производственный сценарий: LIMS/ELN/MES формирует input.csv, утилита возвращает output.json, портал отображает описание и документацию.

Пример output.json

{
  "utilityId": "daughter-nuclide-ingrowth-calculator",
  "api": "Daughter Nuclide Ingrowth Calculator",
  "overallStatus": "PASS|WARNING|FAIL",
  "sourceFile": "input.csv",
  "checks": [
    {
      "parameter": "BatchNumber",
      "value": "GEN-MO99-001",
      "status": "PASS|WARNING|FAIL",
      "message": "Rule-based check result"
    },
    {
      "parameter": "ParentIsotope",
      "value": "Mo-99",
      "status": "PASS|WARNING|FAIL",
      "message": "Rule-based check result"
    },
    {
      "parameter": "InitialParentActivityMBq",
      "value": "10000",
      "status": "PASS|WARNING|FAIL",
      "message": "Rule-based check result"
    },
    {
      "parameter": "ElapsedTimeHours",
      "value": "24",
      "status": "PASS|WARNING|FAIL",
      "message": "Rule-based check result"
    },
    {
      "parameter": "DaughterHalfLifeHours",
      "value": "0",
      "status": "PASS|WARNING|FAIL",
      "message": "Rule-based check result"
    },
    {
      "parameter": "ParentHalfLifeHours",
      "value": "0",
      "status": "PASS|WARNING|FAIL",
      "message": "Rule-based check result"
    }
  ],
  "criticalFindings": []
}

OQ/PQ тестовые сценарии

IDСценарийОжидаемый результат
OQ-001Валидная строка из примераPASS или допустимый WARNING согласно правилам.
OQ-002Отсутствует обязательная колонкаОшибка схемы или FAIL.
OQ-003Нечисловое значение в числовом полеОшибка преобразования типа.
OQ-004Значение критического параметра за пределомFAIL и critical finding.
PQ-001Реальная серия/партия пользователяСогласованный результат review с сохранением input.csv и output.json.

QA/QC и change control

  • Не менять имена колонок без обновления валидатора и тестового набора.
  • Хранить input.csv, output.json, версию исполняемого файла и контрольную сумму.
  • Перед продуктивным использованием провести IQ/OQ/PQ или эквивалентную CSV/CSA-проверку.
  • Критические радиофармацевтические пределы должны быть сверены с утверждённой спецификацией и локальными SOP.

Входит в пакеты

PetRad3: расширенный PET/SPECT и радиофармацевтический QC-пакет

Подборка утилит для контроля PET/SPECT радиофармпрепаратов, генераторных и циклотронных радионуклидов, меченых соединений, радиохимической чистоты, прорыва, стерильности и эндотоксинов.

Открыть

Радиология

Пакет для радиологии и диагностической визуализации: радиофармпрепараты, PET/SPECT, контрастные вещества, йодсодержащие и гадолиниевые препараты, а также проверки частиц, стерильности и эндотоксинов.

Открыть

RPH: объединённый радиофармацевтический QC-пакет

RPH объединяет PetRad, PetRad2 и PetRad3 в один обзорный пакет для PET/SPECT, терапевтических радионуклидов, генераторов, меченых соединений, расчётов распада, стерильности, эндотоксинов и радиохимической/радионуклидной чистоты.

Открыть