Field Transformer¶
Overview¶
FieldTransformer applies geometric transformations (shift, rotation, anamorphosis, scaling) to the electromagnetic field (both phase and amplitude) of individual sources in an asterism. This is used to simulate super-resolution effects or model field-dependent aberrations in a Shack-Hartmann WFS.
Quick start¶
from OOPAO.FieldTransformer import FieldTransformer
ft = FieldTransformer(
src = ast,
shift_x = [0.5, -0.5, 0.0], # sub-pixel shifts per GS [pixels]
shift_y = [0.0, 0.0, 0.5],
rotation_angle = [0.0, 0.0, 0.0],
)
ast * atm * tel * ft * wfs
API reference¶
- class OOPAO.FieldTransformer.FieldTransformer(src, shift_x=None, shift_y=None, rotation_angle=None, anamorphosisAngle=None, tangentialScaling=None, radialScaling=None, remove_edge_effects=True)[source]¶
Geometric EM field transformer for individual sources.
- Parameters:
shift_x (list[float] or None) – Per-source x shifts in pixels (sub-pixel shifts supported). Default
None.shift_y (list[float] or None) – Per-source y shifts in pixels. Default
None.rotation_angle (list[float] or None) – Per-source rotation angles in degrees. Default
None.anamorphosisAngle (list[float] or None) – Per-source anamorphosis angle in degrees. Default
None.tangentialScaling (list[float] or None) – Per-source tangential scaling factors. Default
None.radialScaling (list[float] or None) – Per-source radial scaling factors. Default
None.remove_edge_effects (bool) – If
True, suppress edge artefacts near pupil borders after sub-pixel shifts. DefaultTrue.
Operator summary
Expression
Effect
ast * tel * ft * wfsApply per-source EM field transforms