LaserWavelengthAndPowerStabilityChecker
Laser Wavelength & Power Stability Checker
Описание утилиты: Laser Wavelength & Power Stability Checker
Laser Wavelength & Power Stability Checker — Анализатор стабильности длины волны и мощности лазера
ℹ️ Утилита контролирует параметры лазеров для оптической накачки:
• Точность длины волны (соответствие атомному переходу)
• Стабильность мощности (отсутствие шума)
• Термический дрейф
⚠️ КРИТИЧНО: Сдвиг длины волны всего на 0.1 нм резко снижает эффективность!
Лазеры должны быть точно настроены на линию поглощения рубидия (D1).
Использование:
LaserWavelengthAndPowerStabilityChecker.exe → демо-режим (вывод в консоль)
LaserWavelengthAndPowerStabilityChecker.exe input.csv output.json → оценка ваших данных
Формат input.csv:
BatchNumber,ProductName,Center_Wavelength_nm,Target_Wavelength_nm,Output_Power_W,Target_Power_W,Wavelength_Drift_nm,Power_Fluctuation_Percent,Max_Drift_nm,Max_Fluct_Percent
Пример:
LASER-2026-001,Rb-D1 Array,794.72,794.70,100.5,100.0,0.05,1.2,0.1,2.0
— ЗАЧЕМ ЭТО НУЖНО?
Контроль лазеров критичен для процесса SEOP (Spin-Exchange Optical Pumping):
• Поляризация ксенона происходит через передачу спина от оптически накачанного рубидия
• Лазер должен быть точно настроен на резонансную частоту перехода D1 рубидия (~794.7 нм)
• Любое отклонение длины волны (дрейф) приводит к экспоненциальному падению эффективности накачки
• Флуктуации мощности создают шум в уровне поляризации газа
• Перегрев диодов вызывает необратимую деградацию и сдвиг спектра
⚠️ КРИТИЧЕСКИ ВАЖНО:
• Точность длины волны ≤0.1 нм от целевого пика
• Стабильность мощности ≤2% (RMS)
• Контроль температуры диодов (TEC) для предотвращения дрейфа
• Регулярная калибровка спектрометра
Ключевые особенности утилиты:
• Мониторинг соответствия длине волны атомному переходу
• Анализ стабильности выходной мощности во времени
• Выявление термического дрейфа и деградации диодов
• Поддержка многодиодных массивов (stacks)
Критические параметры:
• Wavelength Error: ≤0.1 nm
• Power Fluctuation: ≤2%
• Wavelength Drift: ≤0.1 nm
💡 Советы по использованию:
1. Используйте волоконные брэгговские решетки (FBG) для стабилизации длины волны
2. Контролируйте температуру корпуса лазера с точностью до 0.1°C
3. Проводите预热 (прогрев) лазеров минимум 30 минут перед началом поляризации
4. Следите за деградацией выходной мощности как индикатором старения диодов
5. Используйте обратную связь по мощности для компенсации старения
⚠️ Особенность: В отличие от обычных медицинских лазеров, здесь важна не мощность сама по себе, а ее спектральное совпадение с узкой линией поглощения атома. Ошибка в нанометрах делает всю установку бесполезной. Утилита обеспечивает этот прецизионный контроль.input.csv
BatchNumber,ProductName,Center_Wavelength_nm,Target_Wavelength_nm,Output_Power_W,Target_Power_W,Wavelength_Drift_nm,Power_Fluctuation_Percent,Max_Drift_nm,Max_Fluct_Percent LASER-2026-001,Rb-D1 Pumping Array,794.72,794.70,100.5,100.0,0.05,1.2,0.1,2.0 LASER-2026-002,High-Power Diode Stack,794.85,794.70,150.0,150.0,0.25,3.5,0.1,2.0 LASER-2026-003,Stabilized Laser Module,794.70,794.70,99.8,100.0,0.01,0.5,0.1,2.0
URS & FS — пользовательские требования и функциональная спецификация
URS & FS — спецификация пользователя и функциональная спецификация
Документ описывает контролируемый интерфейс и поведение утилиты LaserWavelengthAndPowerStabilityChecker для объекта «Laser Wavelength & Power Stability Checker». Пределы из исходного описания являются стартовой конфигурацией и до продуктивного применения должны быть сверены с утверждённой спецификацией, протоколом исследования, инструкцией к оборудованию и локальными SOP.
Предметные ограничения и критические параметры
- Wavelength Error: ≤0.1 nm
- Power Fluctuation: ≤2%
- Wavelength Drift: ≤0.1 nm
URS — пользовательские требования
| ID | Требование | Критичность | Критерий приёмки |
|---|---|---|---|
| URS-001 | Утилита должна принимать input.csv с точными заголовками из контракта данных. | High | Файл обрабатывается без ручного переименования колонок. |
| URS-002 | Утилита должна выполнять детерминированную проверку для «Laser Wavelength & Power Stability Checker». | High | Для каждой строки формируется PASS / WARNING / FAIL. |
| URS-003 | Обязательные поля, типы, диапазоны, единицы и согласованность данных должны проверяться до предметных правил. | High | Ошибки схемы отделены от несоответствий. |
| URS-004 | Критические пределы из описания и утверждённой локальной конфигурации должны приводить к critical finding. | High | Нарушение критического правила приводит к FAIL. |
| URS-005 | Результат должен формироваться в машинно-читаемом output.json. | High | JSON содержит исходные значения, проверки, предупреждения и отказы. |
| URS-006 | Решение о соответствии не должно использовать машинное обучение. | Medium | Результат воспроизводим по явным правилам и входным данным. |
| URS-007 | Должна сохраняться трассируемость серии, исходного файла, версии правил и итогового статуса. | High | QA/QC может воспроизвести решение. |
| URS-008 | Утилита должна иметь ровно один основной портальный тег: instrumental. | Medium | Другие теги api / instrumental / medical_devices отсутствуют. |
| URS-009 | Документация должна поддерживать IQ/OQ/PQ или эквивалентную CSA/CSV-проверку. | Medium | Контракт, тестовые сценарии и change-control правила доступны вместе с утилитой. |
Контракт input.csv
| # | Поле | Тип | Единица | Пример | Назначение |
|---|---|---|---|---|---|
| 1 | BatchNumber | string | as specified | LASER-2026-001 | Идентификатор серии/партии для трассируемости. |
| 2 | ProductName | string | as specified | Rb-D1 Pumping Array | Наименование контролируемого продукта, газа, процедуры или оборудования. |
| 3 | Center_Wavelength_nm | decimal | nm | 794.72 | Контролируемое поле input.csv: Center Wavelength nm. |
| 4 | Target_Wavelength_nm | decimal | nm | 794.70 | Контролируемое поле input.csv: Target Wavelength nm. |
| 5 | Output_Power_W | decimal | W | 100.5 | Контролируемое поле input.csv: Output Power W. |
| 6 | Target_Power_W | decimal | W | 100.0 | Контролируемое поле input.csv: Target Power W. |
| 7 | Wavelength_Drift_nm | decimal | nm | 0.05 | Контролируемое поле input.csv: Wavelength Drift nm. |
| 8 | Power_Fluctuation_Percent | decimal | % | 1.2 | Контролируемое поле input.csv: Power Fluctuation Percent. |
| 9 | Max_Drift_nm | decimal | nm | 0.1 | Контролируемое поле input.csv: Max Drift nm. |
| 10 | Max_Fluct_Percent | decimal | % | 2.0 | Контролируемое поле input.csv: Max Fluct Percent. |
BatchNumber,ProductName,Center_Wavelength_nm,Target_Wavelength_nm,Output_Power_W,Target_Power_W,Wavelength_Drift_nm,Power_Fluctuation_Percent,Max_Drift_nm,Max_Fluct_Percent LASER-2026-001,Rb-D1 Pumping Array,794.72,794.70,100.5,100.0,0.05,1.2,0.1,2.0 LASER-2026-002,High-Power Diode Stack,794.85,794.70,150.0,150.0,0.25,3.5,0.1,2.0 LASER-2026-003,Stabilized Laser Module,794.70,794.70,99.8,100.0,0.01,0.5,0.1,2.0
FS — функциональная спецификация
| ID | Функция | Реализация |
|---|---|---|
| FS-001 | CLI execution | LaserWavelengthAndPowerStabilityChecker.exe поддерживает demo mode и режим input.csv output.json. |
| FS-002 | CSV import | Чтение UTF-8 CSV, проверка заголовка, количества и порядка колонок. |
| FS-003 | Schema validation | Проверка обязательности, пустых значений, типов и базовой правдоподобности. |
| FS-004 | Domain rule engine | Применение явных правил для «Laser Wavelength & Power Stability Checker» и локально утверждённых пределов. |
| FS-005 | Status aggregation | FAIL при critical finding; WARNING при некритическом отклонении; PASS при полном соответствии. |
| FS-006 | JSON export | Запись исходных значений, применённых правил, статусов, warnings, failures и версии конфигурации. |
| FS-007 | Audit support | Сохранение структуры результата для review, расследования, IQ/OQ и change control. |
| FS-008 | Integration contract | LIMS/ELN/MES или приборный wrapper формирует CSV; утилита возвращает JSON. |
Пример output.json
{
"utilityId": "laser-wavelength-and-power-stability-checker",
"primaryTag": "instrumental",
"overallStatus": "PASS|WARNING|FAIL",
"sourceFile": "input.csv",
"checks": [
{
"parameter": "BatchNumber",
"value": "LASER-2026-001",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "ProductName",
"value": "Rb-D1 Pumping Array",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Center_Wavelength_nm",
"value": "794.72",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Target_Wavelength_nm",
"value": "794.70",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Output_Power_W",
"value": "100.5",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Target_Power_W",
"value": "100.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Wavelength_Drift_nm",
"value": "0.05",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Power_Fluctuation_Percent",
"value": "1.2",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
}
],
"warnings": [],
"criticalFindings": []
}
OQ/PQ тестовые сценарии
| ID | Сценарий | Ожидаемый результат |
|---|---|---|
| OQ-001 | Валидная строка из примера | PASS или допустимый WARNING согласно локальным правилам. |
| OQ-002 | Отсутствует обязательная колонка | Ошибка схемы; предметные проверки не маскируют ошибку. |
| OQ-003 | Нечисловое значение в числовом поле | Ошибка преобразования типа. |
| OQ-004 | Критический параметр за пределом | FAIL и critical finding. |
| OQ-005 | Граничное значение | Результат соответствует явно заданному оператору ≤ / ≥ / < / >. |
| PQ-001 | Реальные данные площадки | Согласованный QA/QC review с сохранением CSV, JSON, версии и контрольной суммы. |
QA/QC и change control
- Не менять имена колонок без обновления валидатора, документации и тестового набора.
- Хранить input.csv, output.json, версию исполняемого файла, версию правил и контрольные суммы.
- Перед продуктивным использованием выполнить локальную проверку пределов и IQ/OQ/PQ или эквивалентную CSA.
- Изменения, влияющие на безопасность пациента, дозиметрию, газовую смесь, поляризацию или оборудование, требуют документированного impact assessment.
Входит в пакеты
Rph Hyperpolarized Xenon Lifecycle QC Suite
29 утилит для полного жизненного цикла гиперполяризованного ксенона: изотопный состав и чистота газа, SEOP и поляризация, T1/хранение/транспорт, безопасное смешивание и подача, MRI/SPECT QC, дозиметрия, scavenging, recovery и recycling.
ОткрытьRPH isotope family: xenon and gas tracers
Xe-127, Xe-129 и Xe-133 для ventilation, hyperpolarized imaging, gas QC и safety.
ОткрытьRPH organ/system: лёгкие и вентиляция
Lung perfusion, MAA, V/Q, aerosol, xenon ventilation, shunt и pulmonary dosimetry.
ОткрытьRPH use case: ксенон, вентиляция и медицинские газы
Xe-129, Xe-133, Xe-127, гиперполяризация, SEOP, T1, mixing, scavenging, transport, recovery и вентиляционная визуализация.
ОткрытьRPH workflow: дозиметрия и планирование терапии
Activity planning, absorbed dose, organ dose, lung shunt, preplanning и therapy verification.
ОткрытьRPH workflow: imaging QC и количественная интерпретация
Acquisition, uptake, clearance, perfusion, transit, ejection fraction, segmentation и quantitative imaging.
ОткрытьRPH workflow: стабильность, хранение, распад и отходы
Kinetic stability, shelf life, decay correction, expiry, storage, trend и radioactive waste.
Открыть