Skip to Content
DocsSVETlANNa

SVETlANNa

SVETlANNa (Simulating Various Elements of Tunable LAser Neural Networks Accurately) — библиотека для моделирования оптических систем и дифракционных нейронных сетей на базе PyTorch.

Версия 1.0.4 — полная поддержка дифференцируемого моделирования, GPU-ускорение и интеграция с экосистемой PyTorch.

Возможности

ФункцияОписание
Дифференцируемое моделированиеПолная интеграция с PyTorch autograd для оптимизации
Методы распространенияAngular Spectrum (AS) и приближение Френеля
Оптические элементыЛинзы, апертуры, SLM, дифракционные слои, нелинейные элементы
Волновые фронтыПлоские, гауссовы, сферические волны
Нейронные сетиLinearOpticalSetup, DiffractiveConv, DiffractiveRNN
ДетекторыDetector и DetectorProcessorClf для классификации
GPU ускорениеНативная поддержка CUDA

Быстрый старт

from svetlanna import SimulationParameters, Wavefront, LinearOpticalSetup from svetlanna.elements import ThinLens, FreeSpace, DiffractiveLayer from svetlanna.units import ureg # Параметры симуляции params = SimulationParameters.from_ranges( w_range=(-1*ureg.mm, 1*ureg.mm), w_points=512, h_range=(-1*ureg.mm, 1*ureg.mm), h_points=512, wavelength=632.8*ureg.nm ) # Гауссов пучок wf = Wavefront.gaussian_beam(params, waist_radius=0.3*ureg.mm) # Оптическая система setup = LinearOpticalSetup([ ThinLens(params, focal_length=50*ureg.mm), FreeSpace(params, distance=50*ureg.mm, method='AS'), ]) # Фокусировка wf_focus = setup(wf) print(f"Интенсивность в фокусе: {wf_focus.max_intensity:.2e}")

Структура документации

Архитектура

Ссылки