ARTS  2.3.1285(git:92a29ea9-dirty)
m_geodetic.cc File Reference

Workspace functions of geodetic character. More...

#include <cmath>
#include <stdexcept>
#include "arts.h"
#include "check_input.h"
#include "geodetic.h"
#include "matpackI.h"
#include "messages.h"

Go to the source code of this file.

Functions

void refellipsoidForAzimuth (Vector &refellipsoid, const Numeric &latitude, const Numeric &azimuth, const Verbosity &)
 WORKSPACE METHOD: refellipsoidForAzimuth. More...
 
void refellipsoidOrbitPlane (Vector &refellipsoid, const Numeric &orbitinc, const Verbosity &)
 WORKSPACE METHOD: refellipsoidOrbitPlane. More...
 
void refellipsoidSet (Vector &refellipsoid, const Numeric &re, const Numeric &e, const Verbosity &)
 WORKSPACE METHOD: refellipsoidSet. More...
 

Variables

const Numeric DEG2RAD
 

Detailed Description

Workspace functions of geodetic character.

Author
Patrick Eriksson Patri.nosp@m.ck.E.nosp@m.rikss.nosp@m.on@c.nosp@m.halme.nosp@m.rs.s.nosp@m.e
Date
2012-02-06

These functions are listed in the doxygen documentation as entries of the file auto_md.h.

Definition in file m_geodetic.cc.

Function Documentation

◆ refellipsoidForAzimuth()

void refellipsoidForAzimuth ( Vector refellipsoid,
const Numeric latitude,
const Numeric azimuth,
const Verbosity verbosity 
)

WORKSPACE METHOD: refellipsoidForAzimuth.

Conversion of 3D ellipsoid to 1D curvature radius.

Calculates the curvature radius for the given latitude and azimuth angle, and uses this to set a spherical reference ellipsoid suitable for 1D calculations. The curvature radius is a better local approximation than using the local ellipsoid radius.

The used expression assumes a geodetic latitude, but also latitudes should be OK as using this method anyhow signifies an approximation.

Author
Patrick Eriksson
Parameters
[in,out]refellipsoidWS Input/Output
[in]latitudeGeneric Input
[in]azimuthGeneric Input

Definition at line 53 of file m_geodetic.cc.

References DEG2RAD, ConstVectorView::nelem(), pow(), and sqrt().

Referenced by refellipsoidForAzimuth_g().

◆ refellipsoidOrbitPlane()

void refellipsoidOrbitPlane ( Vector refellipsoid,
const Numeric orbitinc,
const Verbosity verbosity 
)

WORKSPACE METHOD: refellipsoidOrbitPlane.

Conversion of 3D ellipsoid to 2D orbit track geometry.

Determines an approximate reference ellipsoid following an orbit track. The new ellipsoid is determined simply, by determining the radius at the maximum latitude and from this value calculate a new new eccentricity. The orbit is specified by giving the orbit inclination (orbitinc), that is normally a value around 100 deg for polar sun-synchronous orbits.

Author
Patrick Eriksson
Parameters
[in,out]refellipsoidWS Input/Output
[in]orbitincGeneric Input

Definition at line 76 of file m_geodetic.cc.

References chk_if_in_range(), ConstVectorView::nelem(), pow(), refell2r(), and sqrt().

Referenced by refellipsoidOrbitPlane_g().

◆ refellipsoidSet()

void refellipsoidSet ( Vector refellipsoid,
const Numeric re,
const Numeric e,
const Verbosity verbosity 
)

WORKSPACE METHOD: refellipsoidSet.

Manual setting of the reference ellipsoid.

The two values of refellipsoid can here be set manually. The two arguments correspond directly to first and second element of refellipsoid*.

Author
Patrick Eriksson
Parameters
[out]refellipsoidWS Output
[in]reGeneric Input
[in]eGeneric Input (Default: "0")

Definition at line 91 of file m_geodetic.cc.

Referenced by refellipsoidSet_g().

Variable Documentation

◆ DEG2RAD

const Numeric DEG2RAD

Referenced by refellipsoidForAzimuth().