The N x M trapezoidal rule on the torus with minor radius 1 and major radius AspectRatio.
More...
|
| static constexpr Kokkos::Array< Scalar, 3 *num_points > | points () |
| | The points as (x, y, z) triples, ring by ring in theta from the outer equator, by increasing phi in a ring.
|
| static constexpr Kokkos::Array< Scalar, num_points > | weights () |
| | The num_points weights, in the order of points().
|
| template<class Function> |
| static constexpr auto | integrate (const Function &f) |
| | sum_i w_i f(x_i, y_i, z_i), approximating the integral of f over the torus.
|
template<class
Scalar, unsigned N, unsigned M,
double AspectRatio>
class mundy::TrapezoidalTorus< Scalar, N, M, AspectRatio >
The points and weights are correctly rounded to Scalar and computed by the compiler, so every member is a constant expression. Like GaussLegendreSphere's rule, it integrates over a unit-scale surface; scale for other minor radii.