MultiHexagonAperture¶
-
class
poppy.
MultiHexagonAperture
(name='MultiHex', flattoflat=1.0, side=None, gap=0.01, rings=1, segmentlist=None, center=False, **kwargs)[source]¶ Bases:
poppy.optics.AnalyticOpticalElement
Defines a hexagonally segmented aperture
- name : string
- Descriptive name
- rings : integer
- The number of rings of hexagons to include, not counting the central segment (i.e. 2 for a JWST-like aperture, 3 for a Keck-like aperture, and so on)
- side : float, optional
- side length (and/or radius) of hexagon, in meters. Overrides flattoflat if both are present.
- flattoflat : float, optional
- Distance between sides (flat-to-flat) of the hexagon, in meters. Default is 1.0
- gap: float, optional
- Gap between adjacent segments, in meters. Default is 0.01 m = 1 cm
- center : bool, optional
- should the central segment be included? Default is False.
- segmentlist : list of ints, optional
- This allows one to specify that only a subset of segments are present, for a partially populated segmented telescope, non-redundant segment set, etc. Segments are numbered from 0 for the center segment, 1 for the segment immediately above it, and then clockwise around each ring. For example, segmentlist=[1,3,5] would make an aperture of 3 segments.
Note that this routine becomes a bit slow for nrings >4. For repeated computations on the same aperture, avoid repeated evaluations of this function. It will be faster to create this aperture, evalute it once, and save the result onto a discrete array, via either
(1) saving it to a FITS file using the to_fits() method, and then use that in a FITSOpticalElement, or (2) Use the fixed_sampling_optic function to create an ArrayOpticalElement with a sampled version of this.Methods Summary
get_transmission
(wave)Compute the transmission inside/outside of the occulter. Methods Documentation