BaseOFCData¶
- class lsst.ts.ofc.ofc_data.BaseOFCData(y2_filename_root: str = '_y2.yaml', dof_state0_filename: str = 'state0_in_dof.yaml', intrinsic_zk_filename_root: str = 'intrinsic_zk', sen_m_filename_root: str = 'sensitivity', eff_wavelength: dict = <factory>, znmax: int = 28, znmin: int = 4, dof_indices: dict = <factory>, m1m3_force_range: float = 134, m2_force_range: float = 45.0, m1m3_actuator_penalty: float = 13.2584, m2_actuator_penalty: float = 134.0, motion_penalty: float = 0.0, rb_stroke: ~numpy.ndarray = <factory>)¶
Bases:
objectBase Optical Feedback Control Data.
Attributes¶
- alpha
np.arrayoffloat Alpha coefficient for the normalized point-source sensitivity (PSSN).
- dof_state0_filename
string Name of the file with the initial degrees of freedom.
- eff_wavelength
dictofstring Effective wavelength in um for each filter.
- intrinsic_zk_filename_root
string Filename root string for the intrinsic zernike coefficients.
- m1m3_actuator_penalty
float M1M3 actuator penalty factor.
- m2_actuator_penalty
float M2 actuator penalty factor.
- motion_penalty
float Penalty on control motion as a whole.
- rb_stroke
np.arrayoffloat Allowed moving range of rigid body of M2 hexapod and Camera hexapod in the unit of um. e.g. rbStroke[0] means the M2 piston is allowed to move +5900 um to -5900 um.
- sen_m_filename_root
string Filename root string for the sensitivity matrix M.
- y2_filename_root
string Name of the file where
y2_correctionis read from.- dof_indices:
dict Dictionary with the indices of the degrees of freedom.
- znmax
int Max number of zernikes used.
- znmin
int Min number of zernikes used.
Attributes Summary
Delta coefficient for the normalized point-source sensitivity (PSSN).
Attributes Documentation
- delta¶
Delta coefficient for the normalized point-source sensitivity (PSSN).
This delta defines the range where PSSN=1-alpha^2 sigma^2 is accurate to 0.001. What we are concerned with is that the system could be trying to achieve tiny PSSN gains at the price of large control motions. This only applies to converged states. In converged states, of course the Zernikes will be within the range defined by delta. For more details, please check the page 19-21 in: https://docushare.lsst.org/docushare/dsweb/Get/Document-18041/150513.pptx.pdf
Returns¶
np.arrayoffloatDelta coefficient.
- dof_state0_filename: str = 'state0_in_dof.yaml'¶
- intrinsic_zk_filename_root: str = 'intrinsic_zk'¶
- m1m3_actuator_penalty: float = 13.2584¶
- m1m3_force_range: float = 134¶
- m2_actuator_penalty: float = 134.0¶
- m2_force_range: float = 45.0¶
- motion_penalty: float = 0.0¶
- sen_m_filename_root: str = 'sensitivity'¶
- y2_filename_root: str = '_y2.yaml'¶
- znmax: int = 28¶
- znmin: int = 4¶
- alpha