Туториалы
Пошаговые примеры решения практических задач с SVETlANNa.
Все туториалы содержат полный исполняемый код. Рекомендуем запускать примеры в Jupyter Notebook или Python скрипте.
Содержание
Уровни сложности
| Туториал | Уровень | Ключевые концепции |
|---|---|---|
| Фокусировка пучка | Начальный | ThinLens, FreeSpace, Wavefront |
| 4f-система | Средний | Фурье-оптика, пространственная фильтрация |
| Восстановление фазы | Средний | Итеративные алгоритмы, Gerchberg-Saxton |
| Дифракционная нейросеть | Продвинутый | DiffractiveLayer, обучение, классификация |
Рекомендуемый порядок изучения
Фокусировка пучка
Базовый пример: фокусировка гауссова пучка линзой. Изучите основы работы с Wavefront, ThinLens и FreeSpace.
4f-система
Построение классической 4f-системы для оптической фильтрации. Практическое применение Фурье-оптики.
Восстановление фазы
Алгоритм Gerchberg-Saxton для восстановления фазы из измерений интенсивности. Итеративная оптимизация.
Дифракционная нейросеть
Обучение многослойной D²NN для классификации изображений. Полный цикл: данные → обучение → оценка.
Предварительные требования
Перед началом рекомендуем ознакомиться с:
- Основные концепции — архитектура библиотеки
- SimulationParameters — настройка параметров
- Оптические элементы — доступные элементы
- Волновые фронты — работа с полями
Запуск примеров
# Минимальный шаблон для туториалов
import torch
from svetlanna import SimulationParameters, Wavefront
from svetlanna.units import ureg
params = SimulationParameters.from_ranges(
w_range=(-2*ureg.mm, 2*ureg.mm), w_points=512,
h_range=(-2*ureg.mm, 2*ureg.mm), h_points=512,
wavelength=632.8*ureg.nm
)
wf = Wavefront.gaussian_beam(params, waist_radius=0.5*ureg.mm)
print(f"Готово! Форма поля: {wf.shape}")Для работы с GPU убедитесь, что установлена CUDA-версия PyTorch и выполните params.to('cuda') перед созданием элементов.