measurement_sensorAddCamera

Workspace.measurement_sensorAddCamera(self, measurement_sensor: pyarts3.arts.ArrayOfSensorObsel | None = None, measurement_sensor_meta: pyarts3.arts.ArrayOfSensorMetaInfo | None = None, freq_grid: pyarts3.arts.AscendingGrid | None = None, pos: pyarts3.arts.Vector3 | None = None, los: pyarts3.arts.Vector2 | None = None, pol: pyarts3.arts.Stokvec | None = None, n_h: pyarts3.arts.Index | None = None, n_w: pyarts3.arts.Index | None = None, ccd_h: pyarts3.arts.Numeric | None = None, ccd_w: pyarts3.arts.Numeric | None = None, focal_length: pyarts3.arts.Numeric | None = None, aperture_diameter: pyarts3.arts.Numeric | None = None, focus_distance: pyarts3.arts.Numeric | None = None) None

Adds a simple thin-lens camera model to the measurement sensor.

The camera is described by a CCD array of n_h x n_w pixels with physical dimensions ccd_h x ccd_w (in meters), a lens with the given focal_length and aperture_diameter, and a focus_distance that determines the in-focus plane distance from the lens.

Each pixel maps to a unique line-of-sight direction computed via the thin-lens equation. The image distance (lens-to-CCD) is derived from the thin-lens formula:

\[d_i = \frac{f \cdot d_o}{d_o - f}\]

where f is the focal length and d_o is the focus distance.

The angular offset of pixel (ih, iw) from the CCD center is:

\[\Delta\theta_{zen} = -\arctan\!\left(\frac{\Delta y}{d_i}\right),\quad \Delta\theta_{azi} = -\arctan\!\left(\frac{\Delta x}{d_i}\right)\]

(negated because the CCD image is inverted by the lens).

A Dirac weight is assigned per pixel per frequency channel, yielding n_h x n_w x nfreq observation elements. All observation elements share the same frequency grid and the same PosLos grid (one entry per pixel).

Author: Richard Larsson

Parameters:
  • measurement_sensor (ArrayOfSensorObsel, optional) – A list of sensor elements. See measurement_sensor, defaults to self.measurement_sensor [INOUT]

  • measurement_sensor_meta (ArrayOfSensorMetaInfo, optional) – Metadata describing each sensor’s block in measurement_vec. See measurement_sensor_meta, defaults to self.measurement_sensor_meta [INOUT]

  • freq_grid (AscendingGrid, optional) – A frequency grid. Unit: Hz. See freq_grid, defaults to self.freq_grid [IN]

  • pos (Vector3) – Observer position [alt, lat, lon]. [IN]

  • los (Vector2) – Central pixel line of sight [zenith, azimuth]. [IN]

  • pol (Stokvec, optional) – Polarization Stokes weight per pixel. Defaults to 1 0 0 0 [IN]

  • n_h (Index) – Number of pixels along the CCD height (rows). [IN]

  • n_w (Index) – Number of pixels along the CCD width (columns). [IN]

  • ccd_h (Numeric) – Physical height of the CCD in meters. [IN]

  • ccd_w (Numeric) – Physical width of the CCD in meters. [IN]

  • focal_length (Numeric) – Focal length of the lens in meters. [IN]

  • aperture_diameter (Numeric) – Diameter of the lens aperture in meters. [IN]

  • focus_distance (Numeric) – Distance to the in-focus plane in meters (must be > focal_length). [IN]