# ARTS built-in documentation server

## Agenda ppath_step_agenda

Calculation of a propagation path step. A propagation path step is defined as the path between some point to a crossing with either the pressure, latitude or longitude grid, and this agenda performs the calculations to determine such a partial propagation path. The starting point is normally a grid crossing point, but can also be an arbitrary point inside the atmosphere, such as the sensor position. Only points inside the model atmosphere are handled. The communication between this agenda and the calling method is handled by ppath_step. That variable is used both as input and output to ppath_step_agenda. The agenda gets back ppath_step as returned to the calling method and the last path point hold by the structure is accordingly the starting point for the new calculations. If a total propagation path shall be determined, this agenda is called repeatedly until the starting point of the propagation path is found and ppath_step will hold all path steps that together make up ppath. The starting point is included in the returned structure. The path is determined by starting at the end point and moving backwards to the starting point. The calculations are initiated by filling ppath_step with the practical end point of the path. This is either the position of the sensor (true or hypothetical), or some point at the top of the atmosphere (determined by geometrical calculations starting at the sensor). This initialisation is not handled by ppath_step_agenda (but by the internal function ppath_start_stepping). The ppath_step_agenda put in points along the propagation path at all crossings with the grids, tangent points and points of surface reflection. It is also allowed to make agendas that put in additional points to fulfil some criterion, such as a maximum distance along the path between the points. Accordingly, the number of new points of each step can exceed one. The include file 'agendas.arts' defines some agendas that can be used here.

**Group: **Agenda

### Variables

OUT | ppath_step | (Ppath) | A propagation path step. |

IN | ppath_step | (Ppath) | A propagation path step. |

IN | ppath_lmax | (Numeric) | Maximum length between points describing propagation paths. |

IN | ppath_lraytrace | (Numeric) | Maximum length of ray tracing steps when determining propagation paths. |

IN | f_grid | (Vector) | The frequency grid for monochromatic pencil beam calculations. |

### Specific methods that can generate ppath_step_agenda

### Generic and supergeneric methods that can generate ppath_step_agenda

### Specific methods that require ppath_step_agenda

- MCGeneral
- MCRadar
- cloudbox_fieldUpdate1D
- cloudbox_fieldUpdateSeq1D
- cloudbox_fieldUpdateSeq3D
- iyClearsky
- iyMC
- iySurfaceFlatReflectivityDirect
- iySurfaceFlatRefractiveIndexDirect
- iySurfaceLambertianDirect
- ppathFromRtePos2
- ppathStepByStep

### Generic and supergeneric methods that can use ppath_step_agenda

- AgendaAppend
- AgendaExecute
- AgendaExecuteExclusive
- Append
- Copy
- Delete
- Ignore
- WriteXML
- WriteXMLIndexed

### Agendas that can generate ppath_step_agenda

- none

### Agendas that require ppath_step_agenda

- none