Intrepid2
Intrepid2_CubatureDirectLineGauss.hpp
Go to the documentation of this file.
1// @HEADER
2// *****************************************************************************
3// Intrepid2 Package
4//
5// Copyright 2007 NTESS and the Intrepid2 contributors.
6// SPDX-License-Identifier: BSD-3-Clause
7// *****************************************************************************
8// @HEADER
9
16#ifndef __INTREPID2_CUBATURE_DIRECT_LINE_GAUSS_HPP__
17#define __INTREPID2_CUBATURE_DIRECT_LINE_GAUSS_HPP__
18
19#include "Intrepid2_ConfigDefs.hpp"
21
22namespace Intrepid2 {
23
27 template<typename DeviceType = void,
28 typename pointValueType = double,
29 typename weightValueType = double>
31 : public CubatureDirect<DeviceType,pointValueType,weightValueType> {
32 public:
35
36 typedef typename CubatureDirect<DeviceType,pointValueType,weightValueType>::PointViewType PointViewType;
37 typedef typename CubatureDirect<DeviceType,pointValueType,weightValueType>::weightViewType weightViewType;
38
39 private:
40 // static data initialize upto 62 but we only support upto Parameters::MaxCubatureDegreeEdge
41 static constexpr ordinal_type cubatureDataStaticSize=62;
42
45 static const CubatureDataStatic cubatureDataStatic_[cubatureDataStaticSize]; // initialized once
46
47 public:
48
53 CubatureDirectLineGauss(const ordinal_type degree = 0);
54
57 virtual
58 const char*
59 getName() const override {
60 return "CubatureDirectLineGauss";
61 }
62
63
64 };
65
66} // end namespace Intrepid2
67
68// include templated definitions
70
71#endif
Definition file for the Intrepid2::CubatureDirectLineGauss class.
Header file for the Intrepid2::CubatureDirect class.
Defines Gauss integration rules on a line.
virtual const char * getName() const override
Returns cubature name.
static const CubatureDataStatic cubatureDataStatic_[cubatureDataStaticSize]
Complete set of data defining line Gauss(-Legendre) rules.
Defines direct cubature (integration) rules in Intrepid.
Cubature data is defined on the host space and is static.
Cubature data is defined on exec space and deep-copied when an object is created.