Skip to content

jean-cih/ModelingOfLenses

Repository files navigation

Modeling-of-Lenses

Описание проекта

Программа для численного моделирования и анализа оптических свойств мультипризматических рентгеновских линз с графическим интерфейсом. Позволяет исследовать влияние геометрических параметров и дефектов на фокусирующие характеристики линз.

Ключевые особенности

  • 📊 Визуализация профиля линзы с возможностью поворота
  • 🔍 Анализ функции толщины материала (реальной и теоретической)
  • 🌊 Моделирование амплитуды и фазы прошедшего излучения
  • 📈 Сравнение реальных и теоретических характеристик
  • 💾 Сохранение результатов в различных форматах

Технические характеристики

  • Язык программирования: Python 3.12
  • Библиотеки:
    • NumPy - для научных вычислений
    • SciPy - для оптимизации и интерполяции
    • Matplotlib - для визуализации данных
    • Pandas - для работы с данными
  • Среда разработки: Neovim с LSP (pyright для Python)

Установка и запуск

  1. Убедитесь, что у вас установлен Python 3.12
  2. Установите необходимые зависимости:
    pip install numpy scipy matplotlib pandas tkinter
  3. Запустите программу:
    python app.py

Входные данные

Программа использует CSV-файл с координатами профиля линзы (по умолчанию line.csv). Формат файла:

x1,y1
x2,y2
...
xn,yn

Параметры моделирования

Основные параметры задаются в программе пользователем:

  • Энергия фотонов (кэВ)
  • Фокусное расстояние (мм)
  • Угол рассеяния (градусы)
  • Длина образца (мм)
  • Параметры материала (плотность, атомный номер, атомная масса)

Выходные данные

Программа генерирует:

  1. Графики профилей линзы (теоретического и реального)
  2. Графики амплитуды и фазы волнового фронта
  3. Сравнительные графики интенсивности излучения
  4. Таблицу с расчетными параметрами линзы

Примеры работы

Первоначальная форма в программе для ввода параметров МПЛ image

Форма загрузки данных профилометрии через CSV-файл image

Форма визуализации МПЛ image

Форма расчетных параметров МПЛ image

Форма для исследования интенсивности излучения после прохождения МПЛ image

Форма для исследования функции толщины МПЛ image

Архитектура программы

Программа организована по модульному принципу:

  1. Блок физических расчетов (распространение волн, фазовые преобразования)
  2. Блок обработки данных (загрузка и подготовка профиля линзы)
  3. Блок визуализации (построение графиков и диаграмм)
  4. Вычислительное ядро (реализация математических моделей)

About

Modeling of Multiprismatic X-ray Lenses: Effect of Material Defects on optical properties of the lens.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages