61#ifndef INTEGRATIONPLAN_H
62#define INTEGRATIONPLAN_H
64#include <armadillo/arma>
82 template<Type>
void generate(
unsigned,
unsigned) {
throw std::invalid_argument(
"not supported"); }
90 [[nodiscard]]
const arma::mat&
get_data()
const;
97template<>
void IntegrationPlan::generate<IntegrationPlan::Type::GAUSS>(
unsigned,
unsigned);
98template<>
void IntegrationPlan::generate<IntegrationPlan::Type::HERMITE>(
unsigned,
unsigned);
99template<>
void IntegrationPlan::generate<IntegrationPlan::Type::CHEBYSHEV>(
unsigned,
unsigned);
100template<>
void IntegrationPlan::generate<IntegrationPlan::Type::LOBATTO>(
unsigned,
unsigned);
101template<>
void IntegrationPlan::generate<IntegrationPlan::Type::RADAU>(
unsigned,
unsigned);
102template<>
void IntegrationPlan::generate<IntegrationPlan::Type::LAGUERRE>(
unsigned,
unsigned);
103template<>
void IntegrationPlan::generate<IntegrationPlan::Type::IRONS>(
unsigned,
unsigned);
104template<>
void IntegrationPlan::generate<IntegrationPlan::Type::TRIANGLE>(
unsigned,
unsigned);
An IntegrationPlan class.
Definition IntegrationPlan.h:66
double operator()(unsigned, unsigned) const
Definition IntegrationPlan.cpp:1846
const arma::mat & get_data() const
Definition IntegrationPlan.cpp:1844
Type
Definition IntegrationPlan.h:68
void print() const
Definition IntegrationPlan.cpp:1848
const unsigned n_rows
Definition IntegrationPlan.h:85
const unsigned n_cols
Definition IntegrationPlan.h:86