Hermes2D  3.0
quad_all.h
1 // This file is part of Hermes2D.
2 //
3 // Hermes2D is free software: you can redistribute it and/or modify
4 // it under the terms of the GNU General Public License as published by
5 // the Free Software Foundation, either version 2 of the License, or
6 // (at your option) any later version.
7 //
8 // Hermes2D is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 // GNU General Public License for more details.
12 //
13 // You should have received a copy of the GNU General Public License
14 // along with Hermes2D. If not, see <http://www.gnu.org/licenses/>.
15 
16 #ifndef __H2D_QUAD_ALL_H
17 #define __H2D_QUAD_ALL_H
18 
19 // This is a common header for all available 1D and 2D quadrature tables
20 
21 #include "quad.h"
22 
23 namespace Hermes
24 {
25  namespace Hermes2D
26  {
28  class HERMES_API Quad1DStd : public Quad1D
29  {
30  public: Quad1DStd();
31 
32  virtual void dummy_fn() {}
33  };
34 
36  class HERMES_API Quad2DStd : public Quad2D
37  {
38  public: Quad2DStd();
39  ~Quad2DStd();
40  virtual unsigned char get_id()
41  {
42  return 1;
43  };
44 
45  virtual void dummy_fn() {}
46  };
47 
48  extern HERMES_API Quad1DStd g_quad_1d_std;
49  extern HERMES_API Quad2DStd g_quad_2d_std;
50 
52 
58  extern double3 lin_pts_0_tri[];
59 
60  extern double3 lin_pts_0_quad[];
61 
62  extern double3 lin_pts_1_tri[12];
63 
64  extern double3 lin_pts_1_quad[21];
65 
66  extern unsigned short quad_indices[9][5];
67 
68  extern unsigned short tri_indices[5][3];
69 
70  extern unsigned char lin_np_tri[2];
71  extern unsigned char lin_np_quad[2];
72  extern unsigned char* lin_np[2];
73 
74  extern double3* lin_tables_tri[2];
75  extern double3* lin_tables_quad[2];
76  extern double3** lin_tables[2];
77 
78  class Quad2DLin : public Quad2D
79  {
80  public:
81  Quad2DLin();
82  virtual unsigned char get_id()
83  {
84  return 2;
85  };
86  };
87 
88  extern HERMES_API Quad2DLin g_quad_lin;
89  }
90 }
91 #endif
Definition: adapt.h:24
virtual void dummy_fn()
to prevent this class from being instantiated
Definition: quad_all.h:32
2D quadrature points on the standard reference domains (-1,1)^2
Definition: quad_all.h:36
double3 lin_pts_0_tri[]
Definition: quad_std.cpp:2569
1D quadrature points on the standard reference domain (-1,1)
Definition: quad_all.h:28