Releases: MatthewFilipovich/torchoptics
Releases · MatthewFilipovich/torchoptics
TorchOptics 0.4.0
What's Changed
- Fix bounds handling in visualization in #56
- Refactor
elementsinSystemtotuplefor better type safety and type hinting in #58 - Update CI workflow with ruff and pyright in #59
- Add logging to propagation functions in #60
- Fix meshgrid initialization in profiles in #61
- Update slicing support in
Systemin #63 - Update documentation in #64
Full Changelog: v0.3.2...v0.4.0
TorchOptics 0.3.2
What's Changed
- Convert test framework to pytest by @MatthewFilipovich in #51
- Update readme and contributing by @MatthewFilipovich in #52
- Improve visualization functions by @MatthewFilipovich in #53
- Add kwargs to
visualize_tensor()by @swansonr in #54 - Refactor
animate_tensor()by @MatthewFilipovich in #55
New Contributors
Full Changelog: v0.3.1...v0.3.2
TorchOptics 0.3.1
What's Changed
- Add shape initialization utility in #47
- Improve lens classes and functions in #48
- Add
spherical_waveandplane_waveprofiles in #49
Full Changelog: v0.3.0...v0.3.1
TorchOptics 0.3.0
What's Changed
- Refactor
Fieldclass and subclasses in #42:- Rename
CoherenceFieldtoSpatialCoherence - Remove
PolarizedFieldclass. Instead, polarization can be simulated directly with theFieldandSpatialCoherenceclasses usingpolarized_modulate(). - Remove
FieldDetectorclass. UseField.inner()instead - Rename
IntensityDetectortoLinearDetector - Add
get_coherence_evolution(), which returns the spatial coherence evolution function - Refactor validation methods in
Field
- Rename
- Rename
PlanarGeometrytoPlanarGridin #43 - Add Siemens star pattern and docs example in #44
Full Changelog: v0.2.1...v0.3.0
TorchOptics 0.2.1
What's Changed
- Improve docs in #34
- Fix
shapeinitialization inPlanarGeometryin #36 - Add type hints and update documentation in #37
- Fix
fftfreq_grad()and add relevant tests in #38
Full Changelog: v0.2.0...v0.2.1
TorchOptics 0.2.0
What's Changed
- Refactor validation and utility functions in #14
- Enhance CI workflow with linting and formatting tools in #18
- Refactor
register_optics_property()in #19 - Add grating profiles in #21
- Add Zernike polynomial profiles in #22
- Update propagation functions with new arguments in #23
- Miscellaneous fixes in #24
- Fix critical propagation distance calculations and update documentation in #25
- Implement copy utility function in #26
- Fix profile return dtypes and add tests in #28
- Improve
is_asm()and spatial coherence error in #29 - Allow evanescent waves in asm propagation in #31
- Refactor docs in #32
- Fix docs for readthedocs in #33
Full Changelog: v0.1.0...v0.2.0
TorchOptics 0.1.0
What's Changed
- Fix mypy errors in #4
- Add getter functions for wavelength and spacing in #5
- Enable polychromatic modulation elements in #8
- Improve
Systemclass in #9 - Update functionality of parameters in #10
- Change default interpolation mode from
bilineartonearest - Change
modulation_profilefrom a property to method - Fix bug in
Lensclass
Full Changelog: v0.0.0...v0.1.0
TorchOptics 0.0.0
First public release of TorchOptics 🎉