20 #include "libmesh/quadrature_clough.h"
21 #include "libmesh/quadrature_gauss.h"
22 #include "libmesh/quadrature_gm.h"
23 #include "libmesh/quadrature_grid.h"
24 #include "libmesh/quadrature_jacobi.h"
25 #include "libmesh/quadrature_monomial.h"
26 #include "libmesh/quadrature_simpson.h"
27 #include "libmesh/quadrature_trap.h"
28 #include "libmesh/quadrature_gauss_lobatto.h"
29 #include "libmesh/quadrature_conical.h"
30 #include "libmesh/quadrature_nodal.h"
31 #include "libmesh/string_to_enum.h"
32 #include "libmesh/auto_ptr.h"
33 #include "libmesh/enum_quadrature_type.h"
42 const unsigned int _dim,
53 const unsigned int _dim,
64 libMesh::out <<
"WARNING: Clough quadrature implemented" << std::endl
65 <<
" up to TWENTYTHIRD order." << std::endl;
69 return libmesh_make_unique<QClough>(
_dim,
_order);
78 libMesh::out <<
"WARNING: Gauss quadrature implemented" << std::endl
79 <<
" up to FORTYTHIRD order." << std::endl;
83 return libmesh_make_unique<QGauss>(
_dim,
_order);
92 libMesh::out <<
"WARNING: Jacobi(1,0) quadrature implemented" << std::endl
93 <<
" up to FORTYTHIRD order." << std::endl;
98 libMesh::out <<
"WARNING: Jacobi(1,0) quadrature implemented" << std::endl
99 <<
" in 1D only." << std::endl;
103 return libmesh_make_unique<QJacobi>(
_dim,
_order, 1, 0);
112 libMesh::out <<
"WARNING: Jacobi(2,0) quadrature implemented" << std::endl
113 <<
" up to FORTYTHIRD order." << std::endl;
118 libMesh::out <<
"WARNING: Jacobi(2,0) quadrature implemented" << std::endl
119 <<
" in 1D only." << std::endl;
123 return libmesh_make_unique<QJacobi>(
_dim,
_order, 2, 0);
132 libMesh::out <<
"WARNING: Simpson rule provides only" << std::endl
133 <<
" THIRD order!" << std::endl;
137 return libmesh_make_unique<QSimpson>(
_dim);
146 libMesh::out <<
"WARNING: Trapezoidal rule provides only" << std::endl
147 <<
" FIRST order!" << std::endl;
151 return libmesh_make_unique<QTrap>(
_dim);
155 return libmesh_make_unique<QGrid>(
_dim,
_order);
158 return libmesh_make_unique<QGrundmann_Moller>(
_dim,
_order);
161 return libmesh_make_unique<QMonomial>(
_dim,
_order);
164 return libmesh_make_unique<QGaussLobatto>(
_dim,
_order);
167 return libmesh_make_unique<QConical>(
_dim,
_order);
170 return libmesh_make_unique<QNodal>(
_dim,
_order);
173 libmesh_error_msg(
"ERROR: Bad qt=" << _qt);