Releases: Sagnac/Zernike.jl
Releases · Sagnac/Zernike.jl
v3.2.0
- A new wavefront error method has been added which accepts input coordinate vectors and a corresponding phase map;
- The more efficient method of
evalpoly
is now used to evaluate the radial polynomials; - The shading / lighting is now turned off for the plots in order to improve the display.
Full Changelog: v3.1.0...v3.2.0
v3.1.0
- Added unit tests;
map_phase
won't mutate the input coordinate vectors anymore;- The full standardized expansion coefficient vector is now stored within the
WavefrontError
structure; ZPlot
:getproperty
is now used instead ofgetfield
when setting the pupil.
Full Changelog: v3.0.0...v3.1.0
v3.0.0
- Fitting to specific polynomials instead of the full range is now allowed using an input vector of
(m, n)
tuples containing the subset; - Implemented a wavefront error matrix input method;
- The Model methods are now dispatched using parametric type selectors;
- The
scale
keyword option has been renamed tofinesse
; - The new stack function is now used to efficiently construct the phase error fitting matrix;
- Slightly optimized the radial polynomial coefficient algorithm;
- Fixed conversion and indexing errors for wavefront error fitting under
n_max = 0
(mean piston output); - Log transforms are now constructed more efficiently using broadcasted assignment;
- Adjusted the allowed input types for the wavefront error modelling;
- The window and plot title keyword arguments are now optional;
- Added a phase mapping function which converts a uniformly sampled set of data to coordinate vectors and a phase matrix;
- Computation of the RMS wavefront error has been improved by using the inner product;
- Validation of the pupil scaling factor is now carried out independent of translation.
Full Changelog: v2.0.0...v3.0.0
v2.0.0
- Pupil transform algorithm based on Lundström & Unsbo (2007);
- The previous aperture scaling algorithm has been superseded by the pupil transform algorithm which is not only faster and more accurate for higher orders, but also includes translation and rotation for circular and elliptical pupils;
- Functions to convert from Noll and Fringe single-index ordering to the standard ANSI order;
- Log transforms of the Zernike polynomials are now plotted for high orders;
- Various improvements and optimizations.
v1.0.0
- Generation of Zernike polynomials;
- Fitting of wavefront errors;
- Aperture scaling algorithm based on Janssen & Dirksen (2007);
- Radial polynomial coefficient algorithm based on Honarvar & Paramesran (2013).