Segment_Piston_Basis¶
-
class
poppy.zernike.
Segment_Piston_Basis
(rings=2, flattoflat=<Quantity 1. m>, gap=<Quantity 1. cm>, center=False, pupil_diam=None)[source]¶ Bases:
poppy.zernike.Segment_PTT_Basis
Eigenbasis of segment pistons, tips, tilts. (Or of pistons only using the Segment_Piston_Basis subclass.)
The aperture geometry is specified identically to the MultiHexagonAperture class. Set that when creating an instance of this class, then you can call the resulting function object to generate a basis set with the desired sampling, or pass it to the opd_from_zernikes or opd_expand_segments functions.
The basis is generated over a square array that exactly circumscribes the hexagonal aperture.
- rings : int
- Number of rings of segments
- flattoflat : float or astropy.Quantity length
- Size of a single segment
- gap : float or astropy.Quantity length
- Gap between adjacent segments
- center : bool
- Include the center segment?
- pupil_diam : float oar astropy.Quantity length
- Diameter of the array on which to generate the basis; by default this is chosen to circumscribe the multihex aperture given the specified segment and gap sizes and number of segments.
Methods Summary
__call__
([nterms, npix, outside])Generate piston-only basis ndarray for the specified aperture Methods Documentation
-
__call__
(nterms=None, npix=512, outside=nan)[source]¶ Generate piston-only basis ndarray for the specified aperture
- nterms : int
- Number of terms. Set to 3x the number of segments.
- npix : int
- Size, in pixels, of the aperture array.
- outside : float
- Value for pixels outside the specified aperture.
Default is
np.nan
, but you may also find it useful for this to be 0.0 sometimes.