FiniteAtmosphericLayer
- class hcipy.atmosphere.FiniteAtmosphericLayer(input_grid, Cn_squared=None, L0=inf, velocity=0, height=0, oversampling=2, seed=None)
Bases:
AtmosphericLayer
An atmospheric layer simulating atmospheric turbulence.
This atmospheric layer is finite. This means that it will wrap after translation by more than oversampling times the extent of the input grid.
- Parameters:
- input_gridGrid
The grid on which the incoming wavefront is defined.
- Cn_squaredscalar
The integrated strength of the turbulence for this layer.
- L0scalar
The outer scale for the atmospheric turbulence of this layer. The default is infinity.
- velocityscalar or array_like
The wind speed for this atmospheric layer. If this is a scalar, the wind will be along x. If this is a 2D array, then the values are interpreted as the wind speed along x and y. The default is zero.
- heightscalar
The height of the atmospheric layer. By itself, this value has no influence, but it’ll be used by the AtmosphericModel to perform inter-layer propagations.
- oversamplingscalar
The amount of oversampling in the Fourier space. The atmospheric layer will wrap after translation by more than oversampling times the extent of the input grid. The default is 2.
- seedNone, int, array of ints, SeedSequence, BitGenerator, Generator
A seed to initialize the spectral noise. If None, then fresh, unpredictable entry will be pulled from the OS. If an int or array of ints, then it will be passed to a numpy.SeedSequency to derive the initial BitGenerator state. If a BitGenerator or Generator are passed, these will be wrapped and used instead. Default: None.
Attributes Summary
The integrated strength of the turbulence for this layer.
The outer scale of the turbulence for this layer.
The phase of this layer for a wavelength of one.
The (unshifted) spectral noise of this layer.
The outer scale of the turbulence for this layer.
Methods Summary
evolve_until
(t)Evolve the atmospheric layer until a certain time.
phase_for
(wavelength)Compute the phase at a certain wavelength.
reset
([make_independent_realization])Reset the atmospheric layer to t=0.
Attributes Documentation
- Cn_squared
The integrated strength of the turbulence for this layer.
- L0
The outer scale of the turbulence for this layer.
- achromatic_screen
The phase of this layer for a wavelength of one.
This property is not intended to be used by the user.
- noise
The (unshifted) spectral noise of this layer.
This property is not intended to be used by the user.
- outer_scale
The outer scale of the turbulence for this layer.
Methods Documentation
- evolve_until(t)
Evolve the atmospheric layer until a certain time.
- Parameters:
- tscalar
The new time to evolve the phase screen to.
- phase_for(wavelength)
Compute the phase at a certain wavelength.
- Parameters:
- wavelengthscalar
The wavelength of the light for which to compute the phase screen.
- Returns:
- Field
The computed phase screen.
- reset(make_independent_realization=False)
Reset the atmospheric layer to t=0.
- Parameters:
- make_independent_realizationboolean
Whether to start an independent realization of the noise for the atmospheric layer or not. When this is False, the exact same phase screens will be generated as in the first run, as long as the Cn^2 and outer scale are the same. This allows for testing of multiple runs of a control system with different control parameters. When this is True, an independent realization of the atmospheric layer will be generated. This is useful for Monte-Carlo-style computations. The default is False.