# ARTS built-in documentation server

## Workspace Method specular_losCalc

### Description

```Calculates the specular direction of surface reflections.

A help method to set up the surface properties. This method
calculates specular_los, that is required in several methods
to convert zenith angles to incidence angles.

The method also returns the line-of-sight matching the surface normal.

The default is to consider the surface slope when calculating the
specular direction. That is, the variation of z_surface (as well as
the geoid radius) is considered and the specular direction is calculated
including the specified topography. This part can be deactivated by
setting *ignore_surface_slope* to 1. In this case, the zenith angle of
the specular direction is simply 180-rtp_los[0]. *ignore_surface_slope*
has only an effect for 2D and 3D, as 1D implies a constant radius of
the surface (i.e. no topography).

```

Authors: Patrick Eriksson

### Synopsis

 specular_losCalc( specular_los, surface_normal, rtp_pos, rtp_los, atmosphere_dim, lat_grid, lon_grid, refellipsoid, z_surface, ignore_surface_slope )

### Variables

 OUT specular_los (Vector) The specular direction (for reflection by a flat surface). OUT surface_normal (Vector) The normal vector for a point at the surface. IN rtp_pos (Vector) Position of a radiative transfer point. IN rtp_los (Vector) Line-of-sight at a radiative transfer point. IN atmosphere_dim (Index) The atmospheric dimensionality (1-3). IN lat_grid (Vector) The latitude grid. IN lon_grid (Vector) The longitude grid. IN refellipsoid (Vector) Reference ellipsoid. IN z_surface (Matrix) The surface altitude. GIN ignore_surface_slope (Index, Default: 0) Flag to control if surface slope is consdered or not.