pyarts3.arts.rtepack.nonspecular_radiance_from_patches

rtepack.nonspecular_radiance_from_patches(coords: pyarts3.arts.ArrayOfVector2, sources: pyarts3.arts.StokvecVector, J: pyarts3.arts.Stokvec, Rv: complex, Rh: complex, pos: pyarts3.arts.Vector2, h_pos: float, n_surface: pyarts3.arts.Vector3, k_out: pyarts3.arts.Vector3, ellipsoid: pyarts3.arts.Vector2, hfield: pyarts3.arts.GeodeticField2) pyarts3.arts.Stokvec

Accumulate non-specular scattered radiance from visible surface patches.

Integrates the reflectance contribution from each visible patch j:

L_out = J + (1/pi) sum_j R(k_j, k_out) . L_j . cos(theta_P) . dOmega_j

where dOmega_j is the solid angle of patch j as seen from the scatter point.

Parameters:
  • coords (list of Vector2) – Visible (lat, lon) pairs [degrees] - typically from visible_coordinates()

  • sources (StokvecVector) – Source radiance at each visible coordinate

  • J (Stokvec) – Thermal emission Stokes vector at the scatter point

  • Rv (complex) – Fresnel amplitude for vertical polarisation

  • Rh (complex) – Fresnel amplitude for horizontal polarisation

  • pos (Vector2) – Scatter-point (lat, lon) [degrees]

  • h_pos (float) – Scatter-point height [m]

  • n_surface (Vector3) – Outward unit normal at the scatter point (ECEF)

  • k_out (Vector3) – Unit propagation direction toward the sensor (ECEF)

  • ellipsoid (Vector2) – Ellipsoid semi-axes (a, b) [m]

  • hfield (GeodeticField2) – Height field - provides grid spacing and patch heights [m]

Returns:

L_out – Outgoing Stokes vector toward the sensor

Return type:

Stokvec