GeographicLib 1.52
|
Mathematical functions needed by GeographicLib. More...
#include <GeographicLib/Math.hpp>
Public Types | |
typedef double | extended |
typedef double | real |
Static Public Member Functions | |
static int | digits () |
static int | set_digits (int ndigits) |
static int | digits10 () |
static int | extra_digits () |
template<typename T = real> | |
static T | pi () |
template<typename T = real> | |
static T | degree () |
template<typename T > | |
static T | sq (T x) |
template<typename T > | |
static T | hypot (T x, T y) |
template<typename T > | |
static T | expm1 (T x) |
template<typename T > | |
static T | log1p (T x) |
template<typename T > | |
static T | asinh (T x) |
template<typename T > | |
static T | atanh (T x) |
template<typename T > | |
static T | copysign (T x, T y) |
template<typename T > | |
static T | cbrt (T x) |
template<typename T > | |
static T | remainder (T x, T y) |
template<typename T > | |
static T | remquo (T x, T y, int *n) |
template<typename T > | |
static T | round (T x) |
template<typename T > | |
static long | lround (T x) |
template<typename T > | |
static T | fma (T x, T y, T z) |
template<typename T > | |
static void | norm (T &x, T &y) |
template<typename T > | |
static T | sum (T u, T v, T &t) |
template<typename T > | |
static T | polyval (int N, const T p[], T x) |
template<typename T > | |
static T | AngNormalize (T x) |
template<typename T > | |
static T | LatFix (T x) |
template<typename T > | |
static T | AngDiff (T x, T y, T &e) |
template<typename T > | |
static T | AngDiff (T x, T y) |
template<typename T > | |
static T | AngRound (T x) |
template<typename T > | |
static void | sincosd (T x, T &sinx, T &cosx) |
template<typename T > | |
static T | sind (T x) |
template<typename T > | |
static T | cosd (T x) |
template<typename T > | |
static T | tand (T x) |
template<typename T > | |
static T | atan2d (T y, T x) |
template<typename T > | |
static T | atand (T x) |
template<typename T > | |
static T | eatanhe (T x, T es) |
template<typename T > | |
static T | taupf (T tau, T es) |
template<typename T > | |
static T | tauf (T taup, T es) |
template<typename T > | |
static bool | isfinite (T x) |
template<typename T = real> | |
static T | NaN () |
template<typename T > | |
static bool | isnan (T x) |
template<typename T = real> | |
static T | infinity () |
template<typename T > | |
static T | swab (T x) |
Static Public Attributes | |
static const bool | bigendian = GEOGRAPHICLIB_WORDS_BIGENDIAN |
Mathematical functions needed by GeographicLib.
Define mathematical functions in order to localize system dependencies and to provide generic versions of the functions. In addition define a real type to be used by GeographicLib.
Example of use:
typedef double GeographicLib::Math::extended |
typedef double GeographicLib::Math::real |
|
static |
Definition at line 26 of file Math.cpp.
Referenced by GeographicLib::MGRS::Forward(), and set_digits().
|
static |
Set the binary precision of a real number.
[in] | ndigits | the number of bits of precision. |
This only has an effect when GEOGRAPHICLIB_PRECISION = 5. See also Utility::set_digits for caveats about when this routine should be called.
Definition at line 34 of file Math.cpp.
References digits().
Referenced by GeographicLib::Utility::set_digits().
|
static |
Definition at line 43 of file Math.cpp.
Referenced by extra_digits().
|
static |
Number of additional decimal digits of precision for real relative to double (0 for float).
Definition at line 51 of file Math.cpp.
References digits10().
Referenced by GeographicLib::GeoCoords::DMSRepresentation(), GeographicLib::DMS::Encode(), GeographicLib::GeoCoords::GeoRepresentation(), and main().
|
inlinestatic |
T | the type of the returned value. |
Definition at line 149 of file Math.hpp.
Referenced by GeographicLib::Ellipsoid::Area(), GeographicLib::EllipticFunction::D(), GeographicLib::EllipticFunction::deltaD(), GeographicLib::EllipticFunction::deltaE(), GeographicLib::EllipticFunction::deltaEinv(), GeographicLib::EllipticFunction::deltaF(), GeographicLib::EllipticFunction::deltaG(), GeographicLib::EllipticFunction::deltaH(), GeographicLib::EllipticFunction::deltaPi(), GeographicLib::EllipticFunction::E(), GeographicLib::EllipticFunction::Einv(), GeographicLib::EllipticFunction::F(), GeographicLib::TransverseMercator::Forward(), GeographicLib::EllipticFunction::G(), GeographicLib::EllipticFunction::H(), GeographicLib::NormalGravity::J2ToFlattening(), GeographicLib::EllipticFunction::Pi(), GeographicLib::EllipticFunction::Reset(), GeographicLib::TransverseMercator::Reverse(), GeographicLib::EllipticFunction::RF(), GeographicLib::EllipticFunction::RG(), and GeographicLib::NormalGravity::V0().
|
inlinestatic |
T | the type of the returned value. |
Definition at line 159 of file Math.hpp.
Referenced by GeographicLib::MagneticModel::FieldComponents(), GeographicLib::CassiniSoldner::Forward(), GeographicLib::AlbersEqualArea::Forward(), GeographicLib::LambertConformalConic::Forward(), GeographicLib::TransverseMercatorExact::Forward(), GeographicLib::Rhumb::GenInverse(), GeographicLib::GeodesicLine::GenPosition(), GeographicLib::GeodesicLineExact::GenPosition(), GeographicLib::RhumbLine::GenPosition(), GeographicLib::Ellipsoid::InverseIsometricLatitude(), GeographicLib::Ellipsoid::InverseRectifyingLatitude(), GeographicLib::Ellipsoid::IsometricLatitude(), GeographicLib::AlbersEqualArea::Reverse(), GeographicLib::LambertConformalConic::Reverse(), GeographicLib::TransverseMercatorExact::Reverse(), GeographicLib::GravityModel::SphericalAnomaly(), GeographicLib::JacobiConformal::x(), and GeographicLib::JacobiConformal::y().
|
inlinestatic |
Square a number.
T | the type of the argument and the returned value. |
[in] | x |
Definition at line 171 of file Math.hpp.
Referenced by GeographicLib::Ellipsoid::Area(), GeographicLib::SphericalEngine::Circle(), GeographicLib::MagneticModel::FieldComponents(), GeographicLib::NormalGravity::FlatteningToJ2(), GeographicLib::PolarStereographic::Forward(), GeographicLib::AlbersEqualArea::Forward(), GeographicLib::LambertConformalConic::Forward(), GeographicLib::TransverseMercator::Forward(), GeographicLib::GeodesicLine::GenPosition(), GeographicLib::GeodesicLineExact::GenPosition(), GeographicLib::GravityModel::GravityModel(), GeographicLib::NormalGravity::J2ToFlattening(), GeographicLib::Ellipsoid::MeridionalCurvatureRadius(), GeographicLib::Ellipsoid::NormalCurvatureRadius(), GeographicLib::NormalGravity::Phi(), GeographicLib::EllipticFunction::Reset(), GeographicLib::PolarStereographic::Reverse(), GeographicLib::AlbersEqualArea::Reverse(), GeographicLib::LambertConformalConic::Reverse(), GeographicLib::TransverseMercator::Reverse(), GeographicLib::EllipticFunction::RG(), GeographicLib::EllipticFunction::RJ(), GeographicLib::AlbersEqualArea::SetScale(), GeographicLib::NormalGravity::SurfaceGravity(), tand(), tauf(), GeographicLib::Ellipsoid::TransverseCurvatureRadius(), GeographicLib::TransverseMercator::TransverseMercator(), GeographicLib::NormalGravity::V0(), GeographicLib::SphericalEngine::Value(), GeographicLib::JacobiConformal::x(), and GeographicLib::JacobiConformal::y().
|
static |
The hypotenuse function avoiding underflow and overflow.
T | the type of the arguments and the returned value. |
[in] | x | |
[in] | y |
Definition at line 57 of file Math.cpp.
References hypot().
|
static |
exp(x) − 1 accurate near x = 0.
T | the type of the argument and the returned value. |
[in] | x |
Definition at line 61 of file Math.cpp.
References expm1().
Referenced by expm1().
|
static |
log(1 + x) accurate near x = 0.
T | the type of the argument and the returned value. |
[in] | x |
Definition at line 65 of file Math.cpp.
References log1p().
Referenced by log1p().
|
static |
The inverse hyperbolic sine function.
T | the type of the argument and the returned value. |
[in] | x |
Definition at line 69 of file Math.cpp.
References asinh().
Referenced by asinh().
|
static |
|
static |
Copy the sign.
T | the type of the argument. |
[in] | x | gives the magitude of the result. |
[in] | y | gives the sign of the result. |
This routine correctly handles the case y = −0, returning &minus|x|.
Definition at line 77 of file Math.cpp.
References copysign().
Referenced by copysign().
|
static |
The cube root function.
T | the type of the argument and the returned value. |
[in] | x |
Definition at line 81 of file Math.cpp.
References cbrt().
Referenced by cbrt().
|
static |
The remainder function.
T | the type of the arguments and the returned value. |
[in] | x | |
[in] | y |
Definition at line 85 of file Math.cpp.
References remainder().
Referenced by remainder().
|
static |
The remquo function.
T | the type of the arguments and the returned value. |
[in] | x | |
[in] | y | |
[out] | n | the low 3 bits of the quotient |
Definition at line 89 of file Math.cpp.
References remquo().
|
static |
The round function.
T | the type of the argument and the returned value. |
[in] | x |
Definition at line 93 of file Math.cpp.
References round().
Referenced by round().
|
static |
The lround function.
T | the type of the argument. |
[in] | x |
If the result does not fit in a long int, the return value is undefined.
Definition at line 97 of file Math.cpp.
References lround().
Referenced by lround().
|
static |
Fused multiply and add.
T | the type of the arguments and the returned value. |
[in] | x | |
[in] | y | |
[in] | z |
fma
instruction).On platforms without the fma
instruction, no attempt is made to improve on the result of a rounded multiplication followed by a rounded addition.
Definition at line 101 of file Math.cpp.
References fma().
Referenced by fma().
|
inlinestatic |
Normalize a two-vector.
T | the type of the argument and the returned value. |
[in,out] | x | on output set to x/hypot(x, y). |
[in,out] | y | on output set to y/hypot(x, y). |
Definition at line 355 of file Math.hpp.
Referenced by GeographicLib::CassiniSoldner::Reset().
|
static |
The error-free sum of two numbers.
T | the type of the argument and the returned value. |
[in] | u | |
[in] | v | |
[out] | t | the exact error given by (u + v) - s. |
See D. E. Knuth, TAOCP, Vol 2, 4.2.2, Theorem B. (Note that t can be the same as one of the first two arguments.)
Definition at line 105 of file Math.cpp.
References GEOGRAPHICLIB_VOLATILE.
|
inlinestatic |
Evaluate a polynomial.
T | the type of the arguments and returned value. |
[in] | N | the order of the polynomial. |
[in] | p | the coefficient array (of size N + 1). |
[in] | x | the variable. |
Evaluate y = ∑n=0..N pn xN−n. Return 0 if N < 0. Return p0, if N = 0 (even if x is infinite or a nan). The evaluation uses Horner's method.
Definition at line 402 of file Math.hpp.
Referenced by GeographicLib::Rhumb::Rhumb(), and GeographicLib::TransverseMercator::TransverseMercator().
|
inlinestatic |
Normalize an angle.
T | the type of the argument and returned value. |
[in] | x | the angle in degrees. |
The range of x is unrestricted.
Definition at line 420 of file Math.hpp.
Referenced by GeographicLib::PolygonAreaT< GeodType >::AddEdge(), GeographicLib::PolygonAreaT< GeodType >::AddPoint(), GeographicLib::Geoid::CacheArea(), GeographicLib::DMS::DecodeAzimuth(), GeographicLib::PolarStereographic::Forward(), GeographicLib::Geohash::Forward(), GeographicLib::GARS::Forward(), GeographicLib::Georef::Forward(), GeographicLib::CassiniSoldner::Forward(), GeographicLib::TransverseMercator::Forward(), GeographicLib::Geodesic::GenDirectLine(), GeographicLib::GeodesicExact::GenDirectLine(), GeographicLib::GeodesicLine::GenPosition(), GeographicLib::GeodesicLineExact::GenPosition(), GeographicLib::RhumbLine::GenPosition(), GeographicLib::GeodesicLine::GeodesicLine(), GeographicLib::GeodesicLineExact::GeodesicLineExact(), GeographicLib::GeoCoords::Reset(), GeographicLib::LocalCartesian::Reset(), GeographicLib::PolarStereographic::Reverse(), GeographicLib::AlbersEqualArea::Reverse(), GeographicLib::LambertConformalConic::Reverse(), GeographicLib::TransverseMercator::Reverse(), GeographicLib::TransverseMercatorExact::Reverse(), GeographicLib::UTMUPS::StandardZone(), and GeographicLib::PolygonAreaT< GeodType >::TestEdge().
|
inlinestatic |
Normalize a latitude.
T | the type of the argument and returned value. |
[in] | x | the angle in degrees. |
Definition at line 433 of file Math.hpp.
Referenced by GeographicLib::PolygonAreaT< GeodType >::AddPoint(), GeographicLib::Ellipsoid::AuthalicLatitude(), GeographicLib::Geoid::CacheArea(), GeographicLib::Ellipsoid::CircleHeight(), GeographicLib::Ellipsoid::CircleRadius(), GeographicLib::Ellipsoid::ConformalLatitude(), GeographicLib::PolarStereographic::Forward(), GeographicLib::AlbersEqualArea::Forward(), GeographicLib::LambertConformalConic::Forward(), GeographicLib::TransverseMercator::Forward(), GeographicLib::TransverseMercatorExact::Forward(), GeographicLib::Ellipsoid::GeocentricLatitude(), GeographicLib::Ellipsoid::InverseAuthalicLatitude(), GeographicLib::Ellipsoid::InverseConformalLatitude(), GeographicLib::Ellipsoid::InverseGeocentricLatitude(), GeographicLib::Ellipsoid::InverseParametricLatitude(), GeographicLib::Ellipsoid::IsometricLatitude(), GeographicLib::Ellipsoid::MeridionalCurvatureRadius(), GeographicLib::Ellipsoid::NormalCurvatureRadius(), GeographicLib::Ellipsoid::ParametricLatitude(), GeographicLib::LocalCartesian::Reset(), GeographicLib::NormalGravity::SurfaceGravity(), and GeographicLib::Ellipsoid::TransverseCurvatureRadius().
|
inlinestatic |
The exact difference of two angles reduced to (−180°, 180°].
T | the type of the arguments and returned value. |
[in] | x | the first angle in degrees. |
[in] | y | the second angle in degrees. |
[out] | e | the error term in degrees. |
This computes z = y − x exactly, reduced to (−180°, 180°]; and then sets z = d + e where d is the nearest representable number to z and e is the truncation error. If d = −180, then e > 0; If d = 180, then e ≤ 0.
Definition at line 452 of file Math.hpp.
Referenced by GeographicLib::CassiniSoldner::Forward(), GeographicLib::AlbersEqualArea::Forward(), GeographicLib::LambertConformalConic::Forward(), GeographicLib::TransverseMercator::Forward(), GeographicLib::TransverseMercatorExact::Forward(), and GeographicLib::Rhumb::GenInverse().
|
inlinestatic |
Difference of two angles reduced to [−180°, 180°]
T | the type of the arguments and returned value. |
[in] | x | the first angle in degrees. |
[in] | y | the second angle in degrees. |
The result is equivalent to computing the difference exactly, reducing it to (−180°, 180°] and rounding the result. Note that this prescription allows −180° to be returned (e.g., if x is tiny and negative and y = 180°).
|
static |
Coarsen a value close to zero.
T | the type of the argument and returned value. |
[in] | x |
The makes the smallest gap in x = 1/16 − nextafter(1/16, 0) = 1/257 for reals = 0.7 pm on the earth if x is an angle in degrees. (This is about 1000 times more resolution than we get with angles around 90°.) We use this to avoid having to deal with near singular cases when x is non-zero but tiny (e.g., 10−200). This converts −0 to +0; however tiny negative numbers get converted to −0.
Definition at line 117 of file Math.cpp.
References GEOGRAPHICLIB_VOLATILE.
Referenced by GeographicLib::Geodesic::GenDirectLine(), GeographicLib::GeodesicExact::GenDirectLine(), GeographicLib::GeodesicLine::GeodesicLine(), and GeographicLib::GeodesicLineExact::GeodesicLineExact().
|
static |
Evaluate the sine and cosine function with the argument in degrees
T | the type of the arguments. |
[in] | x | in degrees. |
[out] | sinx | sin(x). |
[out] | cosx | cos(x). |
The results obey exactly the elementary properties of the trigonometric functions, e.g., sin 9° = cos 81° = − sin 123456789°. If x = −0, then sinx = −0; this is the only case where −0 is returned.
Definition at line 126 of file Math.cpp.
References remquo().
Referenced by GeographicLib::AlbersEqualArea::AlbersEqualArea(), GeographicLib::EllipticFunction::Ed(), GeographicLib::MagneticCircle::FieldGeocentric(), GeographicLib::PolarStereographic::Forward(), GeographicLib::CassiniSoldner::Forward(), GeographicLib::AzimuthalEquidistant::Forward(), GeographicLib::Gnomonic::Forward(), GeographicLib::AlbersEqualArea::Forward(), GeographicLib::LambertConformalConic::Forward(), GeographicLib::TransverseMercator::Forward(), GeographicLib::Geodesic::GenDirectLine(), GeographicLib::GeodesicExact::GenDirectLine(), GeographicLib::GeodesicLine::GenPosition(), GeographicLib::GeodesicLine::GeodesicLine(), GeographicLib::GeodesicLineExact::GeodesicLineExact(), GeographicLib::LambertConformalConic::LambertConformalConic(), GeographicLib::Ellipsoid::NormalCurvatureRadius(), GeographicLib::CassiniSoldner::Reset(), GeographicLib::LocalCartesian::Reset(), tand(), GeographicLib::JacobiConformal::x(), and GeographicLib::JacobiConformal::y().
|
static |
Evaluate the sine function with the argument in degrees
T | the type of the argument and the returned value. |
[in] | x | in degrees. |
Definition at line 148 of file Math.cpp.
References remquo().
Referenced by GeographicLib::Ellipsoid::MeridionalCurvatureRadius(), GeographicLib::Ellipsoid::NormalCurvatureRadius(), GeographicLib::NormalGravity::SurfaceGravity(), and GeographicLib::Ellipsoid::TransverseCurvatureRadius().
|
static |
|
static |
Evaluate the tangent function with the argument in degrees
T | the type of the argument and the returned value. |
[in] | x | in degrees. |
If x = ±90°, then a suitably large (but finite) value is returned.
Definition at line 173 of file Math.cpp.
References sincosd(), and sq().
Referenced by GeographicLib::Ellipsoid::AuthalicLatitude(), GeographicLib::Ellipsoid::CircleHeight(), GeographicLib::Ellipsoid::CircleRadius(), GeographicLib::Ellipsoid::ConformalLatitude(), GeographicLib::PolarStereographic::Forward(), GeographicLib::TransverseMercatorExact::Forward(), GeographicLib::Ellipsoid::GeocentricLatitude(), GeographicLib::Ellipsoid::InverseAuthalicLatitude(), GeographicLib::Ellipsoid::InverseConformalLatitude(), GeographicLib::Ellipsoid::InverseGeocentricLatitude(), GeographicLib::Ellipsoid::InverseParametricLatitude(), GeographicLib::Ellipsoid::IsometricLatitude(), and GeographicLib::Ellipsoid::ParametricLatitude().
|
static |
Evaluate the atan2 function with the result in degrees
T | the type of the arguments and the returned value. |
[in] | y | |
[in] | x |
The result is in the range (−180° 180°]. N.B., atan2d(±0, −1) = +180°; atan2d(−ε, −1) = −180°, for ε positive and tiny; atan2d(±0, +1) = ±0°.
Definition at line 180 of file Math.cpp.
References std::swap().
Referenced by atand(), GeographicLib::MagneticModel::FieldComponents(), GeographicLib::TransverseMercator::Forward(), GeographicLib::Geodesic::GenInverse(), GeographicLib::GeodesicExact::GenInverse(), GeographicLib::Rhumb::GenInverse(), GeographicLib::GeodesicLine::GenPosition(), GeographicLib::GeodesicLineExact::GenPosition(), GeographicLib::Geodesic::InverseLine(), GeographicLib::GeodesicExact::InverseLine(), GeographicLib::PolarStereographic::Reverse(), GeographicLib::AzimuthalEquidistant::Reverse(), GeographicLib::Gnomonic::Reverse(), and GeographicLib::TransverseMercator::Reverse().
|
static |
Evaluate the atan function with the result in degrees
T | the type of the argument and the returned value. |
[in] | x |
Definition at line 205 of file Math.cpp.
References atan2d().
Referenced by GeographicLib::Ellipsoid::AuthalicLatitude(), GeographicLib::Ellipsoid::ConformalLatitude(), GeographicLib::Ellipsoid::GeocentricLatitude(), GeographicLib::Ellipsoid::InverseAuthalicLatitude(), GeographicLib::Ellipsoid::InverseConformalLatitude(), GeographicLib::Ellipsoid::InverseGeocentricLatitude(), GeographicLib::Ellipsoid::InverseIsometricLatitude(), GeographicLib::Ellipsoid::InverseParametricLatitude(), GeographicLib::Ellipsoid::ParametricLatitude(), GeographicLib::PolarStereographic::Reverse(), GeographicLib::AlbersEqualArea::Reverse(), GeographicLib::LambertConformalConic::Reverse(), and GeographicLib::TransverseMercator::Reverse().
|
static |
Evaluate e atanh(e x)
T | the type of the argument and the returned value. |
[in] | x | |
[in] | es | the signed eccentricity = sign(e2) sqrt(|e2|) |
If e2 is negative (e is imaginary), the expression is evaluated in terms of atan.
Definition at line 208 of file Math.cpp.
References atanh().
Referenced by GeographicLib::LambertConformalConic::Forward(), tauf(), and taupf().
|
static |
tanχ in terms of tanφ
T | the type of the argument and the returned value. |
[in] | tau | τ = tanφ |
[in] | es | the signed eccentricity = sign(e2) sqrt(|e2|) |
See Eqs. (7–9) of C. F. F. Karney, Transverse Mercator with an accuracy of a few nanometers, J. Geodesy 85(8), 475–485 (Aug. 2011) (preprint arXiv:1002.1417).
Definition at line 213 of file Math.cpp.
References eatanhe(), hypot(), and isfinite().
Referenced by GeographicLib::Ellipsoid::ConformalLatitude(), GeographicLib::PolarStereographic::Forward(), GeographicLib::TransverseMercator::Forward(), GeographicLib::TransverseMercatorExact::Forward(), GeographicLib::Ellipsoid::IsometricLatitude(), and tauf().
|
static |
tanφ in terms of tanχ
T | the type of the argument and the returned value. |
[in] | taup | τ′ = tanχ |
[in] | es | the signed eccentricity = sign(e2) sqrt(|e2|) |
See Eqs. (19–21) of C. F. F. Karney, Transverse Mercator with an accuracy of a few nanometers, J. Geodesy 85(8), 475–485 (Aug. 2011) (preprint arXiv:1002.1417).
Definition at line 224 of file Math.cpp.
References eatanhe(), GEOGRAPHICLIB_PANIC, hypot(), sq(), and taupf().
Referenced by GeographicLib::TransverseMercatorExact::Forward(), GeographicLib::Ellipsoid::InverseConformalLatitude(), GeographicLib::Ellipsoid::InverseIsometricLatitude(), GeographicLib::PolarStereographic::Reverse(), GeographicLib::LambertConformalConic::Reverse(), GeographicLib::TransverseMercator::Reverse(), and GeographicLib::TransverseMercatorExact::Reverse().
|
static |
Test for finiteness.
T | the type of the argument. |
[in] | x |
Definition at line 256 of file Math.cpp.
References isfinite().
Referenced by isfinite(), and taupf().
|
static |
The NaN (not a number)
T | the type of the returned value. |
Definition at line 260 of file Math.cpp.
Referenced by GeographicLib::GravityModel::Circle(), GeographicLib::PolygonAreaT< GeodType >::Clear(), GeographicLib::UTMUPS::Forward(), GeographicLib::Gnomonic::Forward(), GeographicLib::GeodesicLine::GenPosition(), GeographicLib::GeodesicLineExact::GenPosition(), GeographicLib::RhumbLine::GenPosition(), GeographicLib::OSGB::GridReference(), GeographicLib::NormalGravity::J2ToFlattening(), main(), GeographicLib::GARS::Reverse(), GeographicLib::Geohash::Reverse(), GeographicLib::Georef::Reverse(), GeographicLib::MGRS::Reverse(), GeographicLib::UTMUPS::Reverse(), GeographicLib::Gnomonic::Reverse(), GeographicLib::GeodesicLine::SetArc(), GeographicLib::GeodesicLineExact::SetArc(), and GeographicLib::PolygonAreaT< GeodType >::TestEdge().
|
static |
Test for NaN.
T | the type of the argument. |
[in] | x |
Definition at line 272 of file Math.cpp.
References isnan().
Referenced by isnan().
|
static |
Infinity
T | the type of the returned value. |
Definition at line 276 of file Math.cpp.
Referenced by GeographicLib::EllipticFunction::Reset().
|
inlinestatic |
Swap the bytes of a quantity
T | the type of the argument and the returned value. |
[in] | x |
Definition at line 669 of file Math.hpp.
References std::swap().
|
static |