ray_pathGeometric
- Workspace.ray_pathGeometric(self, ray_path: pyarts.arts.ArrayOfPropagationPathPoint | None = None, atmospheric_field: pyarts.arts.AtmField | None = None, surface_field: pyarts.arts.SurfaceField | None = None, pos: pyarts.arts.Vector3 | None = None, los: pyarts.arts.Vector2 | None = None, max_step: pyarts.arts.Numeric | None = None, surface_search_accuracy: pyarts.arts.Numeric | None = None, as_observer: pyarts.arts.Index | None = None, add_limb: pyarts.arts.Index | None = None, remove_non_atm: pyarts.arts.Index | None = None, fix_updown_azimuth: pyarts.arts.Index | None = None, surface_safe_search: pyarts.arts.Index | None = None) None
Get a geometric radiation path
The path is defined by the origo and the line of sight.
The
pos
is either at the end or at the beginning of the path depending on theas_observer
flag. A value that evaluates to true means that it is at the end of the path. Ifas_observer
is true, thelos
is therefore looking backwards along the path. Basically,as_observer
true means thatpos
andlos
behaves as sensor pos and los.The
max_step
is the maximum step length in meters. The path is first created between the two extremes of either space and/or surface. Afterwards, there are additional points added everymax_step
meters between these points until no more fits (the last step is shorter or exactlymax_step
).Upon closing the method, the following options are available to modify the output:
If
add_limb
is true, the limb point is added to the path at the end. It is computed using bisections to ensure that the zenith angle of the tangent point is as close to 90 degrees as it can numerically be.If
remove_non_atm
is true, all points that are not in the atmosphere are removed. It is recommended to remove these points as multiple methods will either perform poorly or not at all with these points present.If
fix_updown_azimuth
is true, the azimuthal angle of the path is fixed to the initial azimuthal angle of the path. Because calculations of the azimuth angle makes use of IEEE atan2, some paths may produce bad angles if this is turned off.Author(s): Richard Larsson
- Parameters:
ray_path (ArrayOfPropagationPathPoint, optional) – A list path points making up a propagation path. See
ray_path
, defaults toself.ray_path
[OUT]atmospheric_field (AtmField, optional) – An atmospheric field in ARTS. See
atmospheric_field
, defaults toself.atmospheric_field
[IN]surface_field (SurfaceField, optional) – The surface field describes the surface properties. See
surface_field
, defaults toself.surface_field
[IN]pos (Vector3) – The origo of the radiation path. [IN]
los (Vector2) – The line of sight of the radiation path. [IN]
max_step (Numeric, optional) – The maximum step length. Defaults to
1000
[IN]surface_search_accuracy (Numeric, optional) – The accuracy within which the surface intersection is counted as a hit. Defaults to
0.1
[IN]as_observer (Index, optional) – Whether or not the path is as seen by the sensor or by the radiation (see text). Defaults to
1
[IN]add_limb (Index, optional) – Wheter or not to add the limb point. Defaults to
0
[IN]remove_non_atm (Index, optional) – Wheter or not to keep only atmospheric points. Defaults to
1
[IN]fix_updown_azimuth (Index, optional) – Whether or not to attempt fix a potential issue with the path azimuthal angle. Defaults to
1
[IN]surface_safe_search (Index, optional) – Whether or not to search for the surface intersection in a safer but slower manner. Defaults to
1
[IN]