HArD::Core2D
Hybrid Arbitrary Degree::Core 2D - Library to implement 2D schemes with edge and cell polynomials as unknowns
quad2d.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 QUAD2D_HPP
22 #define QUAD2D_HPP
23 #include <vector>
25 #include <assert.h>
26 #include <string>
27 
28 
34 namespace HArDCore2D {
35 
36 // \addtogroup Quadratures
38 
43  static constexpr size_t max_doe = 20;
44 
45 public:
53  QuadRuleTriangle(size_t doe, bool warn);
55 
56  size_t nq();
57  double xq(size_t i);
58  double yq(size_t i);
59  double wq(size_t i);
60  void setup(double xV[], double yV[]);
62 
63 private:
64  size_t _npts;
65  double* _xy;
66  double* _w;
67  double* _xyphys;
68  double area;
69 };
70 
72 }
73 #endif /* QUAD2D_HPP */
Wrapper for dunavant quadrature rules.
Definition: quad2d.hpp:42
double yq(size_t i)
<
Definition: quad2d.cpp:47
double wq(size_t i)
<
Definition: quad2d.cpp:53
size_t nq()
Definition: quad2d.cpp:40
~QuadRuleTriangle()
Definition: quad2d.cpp:34
QuadRuleTriangle(size_t doe, bool warn)
Default constructor.
Definition: quad2d.cpp:11
double xq(size_t i)
<
Definition: quad2d.cpp:41
void setup(double xV[], double yV[])
<
Definition: quad2d.cpp:59
Compute max and min eigenvalues of all matrices for i
Definition: compute_eigs.m:5
Definition: ddr-klplate.hpp:27