pyrtc.modal_gains
Per-mode integrator gain optimization from closed-loop telemetry.
The loop applies a gain per controlled mode (Loop.set_modal_gains). This
module picks those gains from closed-loop data, following the modal control
optimization of Gendron & Léna (1994, A&A 291, 337):
Record the modal residuals the loop measures,
y = signal @ cm.T(pyrtc.loop.Loop.modal_residuals()), while it runs with known gains.With an integrator
g / (1 - z^-1)and a pure delay ofdframes, the measured residual isy = E_g (phi + n), whereE_gis the rejection transfer function,phithe disturbance andnthe measurement noise. Dividing the residual PSD by|E_g0|^2gives the pseudo open-loop PSDP_phi + P_n.The noise is white, and the disturbance falls steeply with frequency, so the high-frequency end of the pseudo open-loop PSD estimates
P_n.For each mode, the chosen gain minimizes the predicted residual variance
sum(|E_g|^2 P_phi + |T_g|^2 P_n)(T_g = 1 - E_g) over stable gains.
Optical gains (the reduced sensitivity of a pyramid WFS on a residual
wavefront) are applied separately: Loop.set_optical_gains divides the
effective gains by them.
Functions
|
Return the largest integrator gain that keeps the loop stable. |
|
Return the open-loop transfer |
|
Choose per-mode integrator gains from closed-loop modal residuals. |
|
Return the rejection (error) transfer |
Classes
|
Output of |