OGS
GaussLegendrePyramid.cpp
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
5
6namespace MathLib
7{
8template <>
9const std::array<std::array<double, 3>, GaussLegendrePyramid<1>::NPoints>
10 GaussLegendrePyramid<1>::X = {{{{0, 0, -0.5}}}}; // center of mass
11template <>
12double const GaussLegendrePyramid<1>::W[1] = {128. / 27.};
13
14const std::array<std::array<double, 3>, GaussLegendrePyramid<2>::NPoints>
16 {{{-0.584237394672177188, -0.584237394672177188, -2. / 3.}},
17 {{0.584237394672177188, -0.584237394672177188, -2. / 3.}},
18 {{0.584237394672177188, 0.584237394672177188, -2. / 3.}},
19 {{-0.584237394672177188, 0.584237394672177188, -2. / 3.}},
20 {{0., 0., 2. / 5.}}}};
21double const GaussLegendrePyramid<2>::W[5] = {
22 81. / 100., 81. / 100., 81. / 100., 81. / 100., 125. / 27.};
23
24const std::array<std::array<double, 3>, GaussLegendrePyramid<3>::NPoints>
26 {{{-0.673931986207731726, -0.673931986207731726,
27 -0.142857142857142857}},
28 {{0.673931986207731726, -0.673931986207731726, -0.142857142857142857}},
29 {{0.673931986207731726, 0.673931986207731726, -0.142857142857142857}},
30 {{-0.673931986207731726, 0.673931986207731726, -0.142857142857142857}},
31 {{-0.610639618865075532, 0.0, -0.321428571428571429}},
32 {{0.610639618865075532, 0.0, -0.321428571428571429}},
33 {{0.0, -0.610639618865075532, -0.321428571428571429}},
34 {{0.0, 0.610639618865075532, -0.321428571428571429}},
35 {{0.0, 0.0, 0.524394036075370072}},
36 {{-0.580939660561084423, -0.580939660561084423,
37 -0.830065359477124183}},
38 {{0.580939660561084423, -0.580939660561084423, -0.830065359477124183}},
39 {{0.580939660561084423, 0.580939660561084423, -0.830065359477124183}},
40 {{-0.580939660561084423, 0.580939660561084423,
41 -0.830065359477124183}}}};
42double const GaussLegendrePyramid<3>::W[13] = {
43 0.515003019323671498, 0.515003019323671498, 0.515003019323671498,
44 0.515003019323671498, 0.257183745242064659, 0.257183745242064659,
45 0.257183745242064659, 0.257183745242064659, 2.474004977113405936,
46 0.419515737191525950, 0.419515737191525950, 0.419515737191525950,
47 0.419515737191525950};
48
49} // namespace MathLib
static MATHLIB_EXPORT const unsigned NPoints
static MATHLIB_EXPORT const unsigned NPoints
static MATHLIB_EXPORT const double W[NPoints]
static MATHLIB_EXPORT const std::array< std::array< double, 3 >, NPoints > X
static MATHLIB_EXPORT const unsigned NPoints