MultiAperture¶
- class marxs.optics.MultiAperture(**kwargs)[source] [edit on github]¶
Bases:
BaseAperture
,BaseContainer
Group several apertures into one class.
Sometimes a single intrument has several physical openings where photons from an astrophysical source can enter, an example is XMM-Newton that operates three telescopes in parallel. While it is often more efficient to simulate these as entirely separate by running separate simulations, that is not always true. This class groups several apertures together.
Warning
Apertures cannot overlap. There is currently no code checking for this, but overlapping apertures will produce unphysical results.
- Parameters:
- elementslist
The elements of this list are all optical elements that process photons.
- preprocess_stepslist
The elements of this list are functions or callable objects that accept a photon list as input and return no output (default:
[]
). Allpreprocess_steps
are run before every aperture on just the photons that pass this aperture.- postprocess_stepslist
See
preprocess_steps
except that the steps are run after each aperture (default:[]
) on just the photons that passed that aperture.
Define a new MARXS element.
Attributes Summary
Area covered by the aperture
Dictionary for display specifications, e.g. color.
Methods Summary
__call__
(photons)Call self as a function.
Attributes Documentation
- area¶
Area covered by the aperture
- display = {'shape': 'container'}¶
Dictionary for display specifications, e.g. color
Methods Documentation
- __call__(photons)[source] [edit on github]¶
Call self as a function.