Практика 2. Сравнить диффузию с RTE
← Установка · Лекция 2 · Задачи
Одна величина в двух приближениях
Ищем флюенс \(F(r)\) от изотропной вспышки \(N=1\) при 450 нм. LightHit вычисляет его при \(\omega=0\), а диффузионная формула даёт
\[ F_D(r)=\frac{Nv_g}{4\pi Dr}\,e^{-r\sqrt{\alpha/D}},\qquad D=\frac{v_g}{3\mu_s(1-g)},\quad\alpha=v_g\mu_a. \]
Это временной интеграл скорости флюенса, а не число фотоэлектронов ОМ. Здесь \(\mu_a/\mu_s'=40\), поэтому сравнение намеренно проверяет пределы диффузионного приближения для принятой модели воды.
Запуск
python 02_diffusion.py
python 02_diffusion.py --refine --output .work/refined02Полный скрипт · Настройки и среда.
В скрипте используется публичный интерфейс:
solver = lh.PointGreenSolver(medium, settings)
result = solver.solve([0.0], positions, direction=None, photons=1.0)
fluence = result.charge_per_m2charge_per_m2 в этом интерфейсе — скалярный флюенс: название поля не означает детекторный заряд. direction=None задаёт изотропную вспышку.
Результат
В fluence.csv три столбца: расстояние, флюенс RTE и диффузионный флюенс. summary.json дополнительно содержит их отношение.
Сравните обычные и уточнённые настройки. Численная сходимость RTE и применимость диффузионного приближения — две отдельные проверки.