19 #ifndef QUADRATURE_HH_ 20 #define QUADRATURE_HH_ 45 template<
unsigned int dim>
52 Quadrature(
const unsigned int n_quadrature_points = 0);
71 void resize(
const unsigned int n_q_points);
74 const unsigned int size()
const;
77 const arma::vec::fixed<dim> &
point(
const unsigned int i)
const;
87 void set_point(
const unsigned int i,
const arma::vec::fixed<dim> &p);
90 double weight(
const unsigned int i)
const;
96 void set_weight(
const unsigned int i,
const double w);
117 template<
unsigned int dim>
123 template<
unsigned int dim>
129 template<
unsigned int dim>
132 arma::vec::fixed<dim> v;
138 template<
unsigned int dim>
143 template<
unsigned int dim>
145 const unsigned int i)
const {
149 template<
unsigned int dim>
154 template<
unsigned int dim>
160 template<
unsigned int dim>
165 template<
unsigned int dim>
170 template<
unsigned int dim>
176 template<
unsigned int dim>
180 template<
unsigned int dim>
inline 220 arma::vec::fixed<dim+1> el_bar_coords, final_bar;
222 for (
unsigned int k=0; k<subq.
size(); k++)
226 arma::vec::fixed<dim> pp;
229 for (
unsigned int i=0; i<RefElement<dim>::n_nodes_per_side; i++) {
245 arma::vec::fixed<1> p({(double)sid});
void set_weight(const unsigned int i, const double w)
Sets individual quadrature weight.
std::vector< double > weights
List of weights to the quadrature points.
Quadrature(const unsigned int n_quadrature_points=0)
Constructor.
std::vector< arma::vec::fixed< dim > > quadrature_points
List of quadrature points.
const std::vector< arma::vec::fixed< dim > > & get_points() const
Return a reference to the whole array of quadrature points.
Base class for quadrature rules on simplices in arbitrary dimensions.
static LocalPoint bary_to_local(const BaryPoint &bp)
Converts from barycentric to local coordinates.
virtual ~Quadrature()
Virtual destructor.
double weight(const unsigned int i) const
Returns the ith weight.
void resize(const unsigned int n_q_points)
Modify the number of quadrature points.
void set_point(const unsigned int i, const arma::vec::fixed< dim > &p)
Sets individual quadrature point coordinates.
const unsigned int size() const
Returns number of quadrature points.
const std::vector< double > & get_weights() const
Return a reference to the whole array of weights.
const arma::vec::fixed< dim > & point(const unsigned int i) const
Returns the ith quadrature point.
static BaryPoint local_to_bary(const LocalPoint &lp)
Converts from local to barycentric coordinates.
Class RefElement defines numbering of vertices, sides, calculation of normal vectors etc...