Go to the documentation of this file.
10 #if !defined(GEOGRAPHICLIB_SPHERICALENGINE_HPP)
11 #define GEOGRAPHICLIB_SPHERICALENGINE_HPP 1
19 # pragma warning (push)
20 # pragma warning (disable: 4251)
46 static std::vector<real>& sqrttable();
54 -3 * (std::numeric_limits<real>::max_exponent < (1<<14) ?
55 std::numeric_limits<real>::max_exponent : (1<<14))
102 std::vector<real>::const_iterator
_Cnm;
103 std::vector<real>::const_iterator
_Snm;
108 coeff() : _Nx(-1) , _nmx(-1) , _mmx(-1) {}
125 const std::vector<real>&
S,
126 int N,
int nmx,
int mmx)
133 if (!(_Nx >= _nmx && _nmx >= _mmx && _mmx >= -1))
135 if (!(index(_nmx, _mmx) <
int(
C.size()) &&
136 index(_nmx, _mmx) <
int(
S.size()) + (_Nx + 1)))
153 const std::vector<real>&
S,
163 if (!(index(_nmx, _mmx) <
int(
C.size()) &&
164 index(_nmx, _mmx) <
int(
S.size()) + (_Nx + 1)))
171 int N()
const {
return _Nx; }
175 int nmx()
const {
return _nmx; }
179 int mmx()
const {
return _mmx; }
188 {
return m * _Nx -
m * (
m - 1) / 2 +
n; }
214 {
return m > _mmx ||
n > _nmx ? 0 : *(_Cnm + k) *
f; }
226 {
return m > _mmx ||
n > _nmx ? 0 : *(_Snm + (k - (_Nx + 1))) *
f; }
237 {
return (
M + 1) * (2 *
N -
M + 2) / 2; }
248 {
return Csize(
N,
M) - (
N + 1); }
271 static void readcoeffs(std::istream&
stream,
int&
N,
int&
M,
272 std::vector<real>&
C, std::vector<real>&
S);
304 template<
bool gradp, normalization norm,
int L>
332 template<
bool gradp, normalization norm,
int L>
354 static void RootTable(
int N);
366 std::vector<real> temp(0);
367 sqrttable().swap(temp);
373 #if defined(_MSC_VER)
374 # pragma warning (pop)
377 #endif // GEOGRAPHICLIB_SPHERICALENGINE_HPP
Math::real Cv(int k) const
Namespace for GeographicLib.
static void ClearRootTable()
coeff(const std::vector< real > &C, const std::vector< real > &S, int N)
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy x
Math::real Cv(int k, int n, int m, real f) const
std::vector< real >::const_iterator _Cnm
#define GEOGRAPHICLIB_EXPORT
static int Ssize(int N, int M)
Exception handling for GeographicLib.
The evaluation engine for SphericalHarmonic.
std::vector< real >::const_iterator _Snm
static void RootTable(int N)
Package up coefficients for SphericalEngine.
Math::real Sv(int k, int n, int m, real f) const
Spherical harmonic sums for a circle.
int index(int n, int m) const
Jet< T, N > pow(const Jet< T, N > &f, double g)
Header for GeographicLib::Constants class.
coeff(const std::vector< real > &C, const std::vector< real > &S, int N, int nmx, int mmx)
Point2(* f)(const Point3 &, OptionalJacobian< 2, 3 >)
Math::real Sv(int k) const
Matrix< Scalar, Dynamic, Dynamic > C
static int Csize(int N, int M)
Jet< T, N > sqrt(const Jet< T, N > &f)
Matrix< RealScalar, Dynamic, Dynamic > M
gtsam
Author(s):
autogenerated on Sun Dec 22 2024 04:14:02