Package pygeodesy :: Package auxilats :: Module auxDST :: Class AuxDST |
[frames] | no frames]

# Class AuxDST

    object --+
             |
            AuxDST

Discrete Sine Transforms (DST) for Auxiliary latitudes.

See Also: Karney's C++ class DST.

Instance Methods
__init__(self, N) New AuxDST instance. |
refine(self, f, F, *sentinel) Refine the Fourier series by doubling the sampled points. |
reset(self, N) Reset this DST. |
transform(self, f) Determine `[N + 1]` terms in the Fourier series. |
Inherited from `object`: `__delattr__`, `__format__`, `__getattribute__`, `__hash__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__repr__`, `__setattr__`, `__sizeof__`, `__str__`, `__subclasshook__`

Static Methods
evaluate(sinx, cosx, F, *N) Evaluate the Fourier sum given the sine and cosine of the angle, using precision Clenshaw summation. |
integral(sinx, cosx, F, *N) Evaluate the integral of Fourier sum given the sine and cosine of the angle, using precision Clenshaw summation. |
integral2(sinx, cosx, siny, cosy, F, *N) Compute the definite integral of Fourier sum given the sine and cosine of the angles at the end points, using precision Clenshaw summation. |

Properties
| N Get this DST's size, number of points (`int`).
Inherited from `object`: `__class__`

Method Details

### __init__ (self, N) (Constructor) |
New AuxDST instance. Arguments: `N` - Size, number of points (`int`). Overrides: object.__init__

### evaluate (sinx, cosx, F, *N) Static Method |
Evaluate the Fourier sum given the sine and cosine of the angle, using precision Clenshaw summation. Arguments: `sinx` - The sin(sigma) (`float`). `cosx` - The cos(sigma) (`float`). `F` - The Fourier coefficients (`float`[]). `N` - Optional, (smaller) number of terms to evaluate (`int`). Returns: Precison Clenshaw sum (`float`). See Also: Methods `AuxDST.integral` and `AuxDST.integral2`.

### integral (sinx, cosx, F, *N) Static Method |
Evaluate the integral of Fourier sum given the sine and cosine of the angle, using precision Clenshaw summation. Arguments: `sinx` - The sin(sigma) (`float`). `cosx` - The cos(sigma) (`float`). `F` - The Fourier coefficients (`float`[]). `N` - Optional, `len(F)` or a (smaller) number of terms to evaluate (`int`). Returns: Precison Clenshaw intergral (`float`). See Also: Methods `AuxDST.evaluate` and `AuxDST.integral2`.

### integral2 (sinx, cosx, siny, cosy, F, *N) Static Method |
Compute the definite integral of Fourier sum given the sine and cosine of the angles at the end points, using precision Clenshaw summation. Arguments: `sinx` - The sin(sigma1) (`float`). `cosx` - The cos(sigma1) (`float`). `siny` - The sin(sigma2) (`float`). `cosy` - The cos(sigma2) (`float`). `F` - The Fourier coefficients (`float`[]). `N` - Optional, `len(F)` or a (smaller) number of terms to evaluate (`int`). Returns: Precison Clenshaw integral (`float`). See Also: Methods `AuxDST.evaluate` and `AuxDST.integral`.

### refine (self, f, F, *sentinel) |
Refine the Fourier series by doubling the sampled points. Arguments: `f` - Single-argument callable (`f(sigma)`). `F` - Initial Fourier series coefficients (`float`[:N]). `sentinel` - Optional coefficient(s) to append (`float`(s)). Returns: Fourier series coefficients (`float`[:N*2]). Note: Any initial `F[N:]` sentinel coefficients are ignored.

### reset (self, N) |
Reset this DST. Arguments: `N` - Size, number of points (`int`). Returns: The new size (`int`, non-negative).

### transform (self, f) |
Determine `[N + 1]` terms in the Fourier series. Arguments: `f` - Single-argument callable (`f(sigma)`). Returns: Fourier series coefficients (`float`[:N+1], leading 0).

Property Details

### N Get this DST's size, number of points (`int`). Get method: N(self) - Get this DST's size, number of points (`int`). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.