ray_pointPastRefractive

Workspace.ray_pointPastRefractive(self, ray_point: PropagationPathPoint = self.ray_point, ray_path: ArrayOfPropagationPathPoint = self.ray_path, atm_field: AtmField = self.atm_field, surf_field: SurfaceField = self.surf_field, max_stepsize: Numeric = self.max_stepsize, single_dispersion: Numeric = self.single_dispersion, surf_search_accuracy: Numeric = 0.1, surf_safe_search: Index = 1) → None

Gets the previous refractive point along ray_path

This basically wraps ray_pointPastGeometric() but sets the zenith angle to the refracted zenith angle, i.e.,

\[\theta_{refracted} = \arcsin\left(\frac{n_{current}}{n_{next}}\sin(\theta_{current})\right)\]

Author: Richard Larsson

Parameters:
  • ray_point (~pyarts3.arts.PropagationPathPoint, optional) – A single path point. Defaults to self.ray_point. [OUT]

  • ray_path (~pyarts3.arts.ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. Defaults to self.ray_path. [IN]

  • atm_field (~pyarts3.arts.AtmField, optional) – An atmospheric field in ARTS, this is the main atmospheric data structure in ARTS. Defaults to self.atm_field. [IN]

  • surf_field (~pyarts3.arts.SurfaceField, optional) – The surface field. Defaults to self.surf_field. [IN]

  • max_stepsize (~pyarts3.arts.Numeric, optional) – A control parameter for stepping through layers in ray tracing. Defaults to self.max_stepsize. [IN]

  • single_dispersion (~pyarts3.arts.Numeric, optional) – A dispersion at a single freq point. Defaults to self.single_dispersion. [IN]

  • surf_search_accuracy (~pyarts3.arts.Numeric, optional) – The accuracy within which the surface intersection is counted as a hit. Defaults to 0.1 [IN]

  • surf_safe_search (~pyarts3.arts.Index, optional) – Whether or not to search for the surface intersection in a safer but slower manner. Defaults to 1 [IN]