OGS
GaussLegendrePyramid.h
Go to the documentation of this file.
1
11#pragma once
12
13#include <array>
14
15#include "mathlib_export.h"
16
17namespace MathLib
18{
26template <unsigned ORDER>
28{
29 static MATHLIB_EXPORT const unsigned Order = ORDER;
30 static MATHLIB_EXPORT const unsigned NPoints = ORDER;
31 static MATHLIB_EXPORT const std::array<std::array<double, 3>, NPoints> X;
32 static MATHLIB_EXPORT const double W[NPoints];
33};
34
35template <>
37{
38 static MATHLIB_EXPORT const unsigned Order = 2;
39 static MATHLIB_EXPORT const unsigned NPoints = 5;
40 static MATHLIB_EXPORT const std::array<std::array<double, 3>, NPoints> X;
41 static MATHLIB_EXPORT const double W[NPoints];
42};
43
44template <>
46{
47 static MATHLIB_EXPORT const unsigned Order = 3;
48 static MATHLIB_EXPORT const unsigned NPoints = 13;
49 static MATHLIB_EXPORT const std::array<std::array<double, 3>, NPoints> X;
50 static MATHLIB_EXPORT const double W[NPoints];
51};
52
53#ifndef _MSC_VER // The following explicit instantatiation declaration does not
54 // compile on that particular compiler but is necessary.
55template <>
56const std::array<std::array<double, 3>, GaussLegendrePyramid<1>::NPoints>
58template <>
60#endif
61} // namespace MathLib
#define MATHLIB_EXPORT
static MATHLIB_EXPORT const std::array< std::array< double, 3 >, NPoints > X
static MATHLIB_EXPORT const std::array< std::array< double, 3 >, NPoints > X
static MATHLIB_EXPORT const double W[NPoints]
static MATHLIB_EXPORT const unsigned Order
static MATHLIB_EXPORT const std::array< std::array< double, 3 >, NPoints > X
static MATHLIB_EXPORT const unsigned NPoints