ModalAdaptiveOpticsLayer

class hcipy.atmosphere.ModalAdaptiveOpticsLayer(layer, controlled_modes, lag, framerate=None)

Bases: AtmosphericLayer

An atmospheric layer that simulates modal adaptive optics correction.

This layer wraps an existing atmospheric layer and applies a correction based on a set of controlled modes, simulating the effect of an adaptive optics system with a certain framerate and lag.

Parameters:
layerAtmosphericLayer

The underlying atmospheric layer to be corrected.

controlled_modesModeBasis

The mode basis used for adaptive optics correction.

lagint

The number of frames of lag in the adaptive optics system. This has to be an integer; if it’s not, it will be rounded to the nearest integer. A warning will also be emitted in this case.

frameratescalar or None

The framerate of the adaptive optics system in 1/time. If this is None, the layer will be reconstructed every call to evolve_until().

Attributes Summary

Cn_squared

The atmospheric refractive index structure constant (Cn^2) of the layer.

L0

The outer scale of turbulence (L0) of the layer.

framerate

outer_scale

The outer scale of turbulence (L0) of the layer.

Methods Summary

evolve_until(t)

Evolves the atmospheric layer until a certain time t.

phase_for(wavelength)

Calculates the phase screen for a given wavelength with AO correction.

reset()

Resets the corrected coefficients and the underlying atmospheric layer.

Attributes Documentation

Cn_squared

The atmospheric refractive index structure constant (Cn^2) of the layer.

Returns:
scalar

The Cn^2 value.

L0

The outer scale of turbulence (L0) of the layer.

Returns:
scalar

The L0 value.

framerate
outer_scale

The outer scale of turbulence (L0) of the layer.

Returns:
scalar

The L0 value.

Methods Documentation

evolve_until(t)

Evolves the atmospheric layer until a certain time t.

This method evolves the underlying atmospheric layer in discrete steps determined by the framerate, and calls reconstruct_wavefront at each of these steps.

Parameters:
tscalar

The time until which to evolve the layer.

phase_for(wavelength)

Calculates the phase screen for a given wavelength with AO correction.

Parameters:
wavelengthscalar

The wavelength for which to calculate the phase screen.

Returns:
Field

The phase screen with adaptive optics correction applied.

reset()

Resets the corrected coefficients and the underlying atmospheric layer.