Manicore
Library to implement schemes on n-dimensionnal manifolds.
quad_2d.hpp
Go to the documentation of this file.
1 // Creates quadrature rule in a cell
2 //
3 // Author: Jerome Droniou (jerome.droniou@monash.edu)
4 //
5 
6 /*
7 *
8 * This library was developed around HHO methods, although some parts of it have a more
9 * general purpose. If you use this code or part of it in a scientific publication,
10 * please mention the following book as a reference for the underlying principles
11 * of HHO schemes:
12 *
13 * The Hybrid High-Order Method for Polytopal Meshes: Design, Analysis, and Applications.
14 * D. A. Di Pietro and J. Droniou. Modeling, Simulation and Applications, vol. 19.
15 * Springer International Publishing, 2020, xxxi + 525p. doi: 10.1007/978-3-030-37203-3.
16 * url: https://hal.archives-ouvertes.fr/hal-02151813.
17 *
18 */
19 
20 
21 #ifndef QUAD_2D_HPP
22 #define QUAD_2D_HPP
23 
24 #include <cstddef>
25 
26 namespace Manicore {
27 
30 
35  static constexpr size_t max_doe = 20;
36 
37 public:
44  QuadRuleTriangle(size_t doe);
46 
47  size_t nq();
48  double xq(size_t i);
49  double yq(size_t i);
50  double wq(size_t i);
51  void setup(double xV[], double yV[]);
53 
54 private:
55  size_t _npts;
56  double* _xy;
57  double* _w;
58  double* _xyphys;
59  double area;
60 };
61 
63 }
64 #endif /* QUAD2D_HPP */
Wrapper for dunavant quadrature rules.
Definition: quad_2d.hpp:34
double yq(size_t i)
<
Definition: quad_2d.cpp:45
double wq(size_t i)
<
Definition: quad_2d.cpp:51
size_t nq()
Definition: quad_2d.cpp:38
~QuadRuleTriangle()
Definition: quad_2d.cpp:32
double xq(size_t i)
<
Definition: quad_2d.cpp:39
void setup(double xV[], double yV[])
<
Definition: quad_2d.cpp:57
QuadRuleTriangle(size_t doe)
Default constructor.
Definition: quad_2d.cpp:14
Definition: maxwell.hpp:23