Mechanics of Defect Evolution Library
Loading...
Searching...
No Matches
GaussLegendre_2_16.h
Go to the documentation of this file.
1#ifndef model_GAUSSLEGENDRE_2_16_H_
2#define model_GAUSSLEGENDRE_2_16_H_
3
4namespace model{
5
6template <>
7struct GaussLegendre<2,16>{
8 // Dunavant p=8, ng=16 (weights sum to 0.5 on reference triangle)
9 // Source: Dunavant 1985 tables / Burkardt triangle_dunavant_rule. :contentReference[oaicite:3]{index=3}
10 static Eigen::Matrix<double,3,16> abcsissasAndWeights(){
11 Eigen::Matrix<double,16,3> U;
12
13 const double w0 = 0.5*0.144315607677787;
14
15 const double w1 = 0.5*0.095091634267285;
16 const double a1 = 0.081414823414554;
17 const double b1 = 0.459292588292723;
18
19 const double w2 = 0.5*0.103217370534718;
20 const double a2 = 0.658861384496480;
21 const double b2 = 0.170569307751760;
22
23 const double w3 = 0.5*0.032458497623198;
24 const double a3 = 0.898905543365938;
25 const double b3 = 0.050547228317031;
26
27 const double w4 = 0.5*0.027230314174435;
28 const double a4 = 0.008394777409958;
29 const double b4 = 0.263112829634638;
30 const double c4 = 0.728492392955404;
31
32 U <<
33 // centroid
34 0.333333333333333, 0.333333333333333, w0,
35
36 // (a1,b1,b1)
37 b1, b1, w1,
38 a1, b1, w1,
39 b1, a1, w1,
40
41 // (a2,b2,b2)
42 b2, b2, w2,
43 a2, b2, w2,
44 b2, a2, w2,
45
46 // (a3,b3,b3)
47 b3, b3, w3,
48 a3, b3, w3,
49 b3, a3, w3,
50
51 // (a4,b4,c4) six permutations
52 b4, c4, w4,
53 c4, b4, w4,
54 a4, c4, w4,
55 c4, a4, w4,
56 a4, b4, w4,
57 b4, a4, w4;
58
59 return U.transpose();
60 }
61};
62
63} // namespace model
64
65#endif
static Eigen::Matrix< double, 3, 16 > abcsissasAndWeights()
Class template defining the GaussLegendre rules for determination of quadrature abscissas and weights...