Skip to content

Namespace inertialsim::geometry::power_series

Namespace List > inertialsim > geometry > power_series

Power series approximations for common functions (internal API). More...

Public Functions

Type Name
Scalar1D f1 (const Scalar1D & x)
Calculate [**\(sin(x)**_](namespaceinertialsim.md#typedef-matrix) _/x\).
Scalar1D f2 (const Scalar1D & x)
Calculate \((1-_ [_**cos(x)**_](namespaceinertialsim.md#typedef-matrix) _)/x^2\).
Scalar1D f3 (const Scalar1D & x)
Calculate \((x-sin(x))/x^3\).
Scalar1D f4 (const Scalar1D & x)
Calculate \((0.5x^2+cos(x)-1)/x^4\).
Scalar1D f5 (const Scalar1D & x)
Calculate \(1/x^2 - (1+_ [_**cos(x)**_](namespaceinertialsim.md#typedef-matrix) _)/(2_[_**xsin(x)**_](namespaceinertialsim.md#typedef-matrix) _)\).
Scalar1D fn (const Scalar1D & x)
Calculate \((2x-3sin(x)+_ [_**xcos(x)**_](namespaceinertialsim.md#typedef-matrix) _)/(2x^5)\).

Detailed Description

Internal API

This namespace is part of InertialSim's internal API. Most users should use the MatrixLieGroup and derived classes rather than calling these functions directly.

See also: MatrixLieGroup

Public Functions Documentation

function f1

Calculate [**\(sin(x)**_](namespaceinertialsim.md#typedef-matrix) _/x\).

Scalar1D inertialsim::geometry::power_series::f1 (
    const  Scalar1D & x
) 

Calculation is performed in a stable way as positive x -> 0.0 from above. From above and below, the mathematical limit of this function is 1.0. For small x, the function will use the Taylor series approximation and is designed to maintain at least 10 digits of precision.

Parameters:

  • x Input angle in radians, x >= 0.

Returns:

The value for each input.


function f2

Calculate \((1-_ [_**cos(x)**_](namespaceinertialsim.md#typedef-matrix) _)/x^2\).

Scalar1D inertialsim::geometry::power_series::f2 (
    const  Scalar1D & x
) 

Calculation is performed in a stable way as positive x -> 0.0 from above. From above and below, the mathematical limit of this function is 0.5. For small x, the function will use the Taylor series approximation and is designed to maintain at least 10 digits of precision.

Parameters:

  • x Input angle in radians, x >= 0.

Returns:

The value for each input.


function f3

Calculate \((x-sin(x))/x^3\).

Scalar1D inertialsim::geometry::power_series::f3 (
    const  Scalar1D & x
) 

Calculation is performed in a stable way as positive x -> 0.0 from above. From above and below, the mathematical limit of this function is 1/6. For small x, the function will use the Taylor series approximation and is designed to maintain at least 10 digits of precision.

Parameters:

  • x Input angle in radians, x >= 0.

Returns:

The value for each input.


function f4

Calculate \((0.5x^2+cos(x)-1)/x^4\).

Scalar1D inertialsim::geometry::power_series::f4 (
    const  Scalar1D & x
) 

Calculation is performed in a stable way as positive x -> 0.0 from above. From above and below, the mathematical limit of this function is 1/12. For small x, the function will use the Taylor series approximation and is designed to maintain at least 10 digits of precision.

Parameters:

  • x Input angle in radians, x >= 0.

Returns:

The value for each input.


function f5

Calculate \(1/x^2 - (1+_ [_**cos(x)**_](namespaceinertialsim.md#typedef-matrix) _)/(2_[_**xsin(x)**_](namespaceinertialsim.md#typedef-matrix) _)\).

Scalar1D inertialsim::geometry::power_series::f5 (
    const  Scalar1D & x
) 

Calculation is performed in a stable way as positive x -> 0.0 from above. From above and below, the mathematical limit of this function is 1/12. For small x, the function will use the Taylor series approximation and is designed to maintain at least 10 digits of precision.

Parameters:

  • x Input angle in radians, x >= 0.

Returns:

The value for each input.


function fn

Calculate \((2x-3sin(x)+_ [_**xcos(x)**_](namespaceinertialsim.md#typedef-matrix) _)/(2x^5)\).

Scalar1D inertialsim::geometry::power_series::fn (
    const  Scalar1D & x
) 

Calculation is performed in a stable way as positive x -> 0.0 from above. From above and below, the mathematical limit of this function is 1/120. For small x, the function will use the Taylor series approximation and is designed to maintain at least 10 digits of precision.

Parameters:

  • x Input angle in radians, x >= 0.

Returns:

The value for each input.



The documentation for this class was generated from the following file cpp/include/inertialsim/geometry/power_series.h