17 #include <deal.II/base/quadrature_lib.h> 18 #include <deal.II/fe/fe_q.h> 23 DEAL_II_NAMESPACE_OPEN
28 std::vector<Point<1> >
29 get_QGaussLobatto_points (
const unsigned int degree)
38 return std::vector<Point<1> >();
44 template <
int dim,
int spacedim>
52 std::vector<bool> (1, false))
54 this->
initialize(get_QGaussLobatto_points(degree));
59 template <
int dim,
int spacedim>
67 std::vector<bool> (1, false))
74 template <
int dim,
int spacedim>
82 std::ostringstream namebuf;
83 bool equidistant =
true;
84 std::vector<double> points(this->degree+1);
88 for (
unsigned int j=0; j<=this->
degree; j++)
92 for (
unsigned int j=0; j<=this->
degree; j++)
93 if (std::fabs(points[j] - (
double)j/this->degree) > 1e-15)
99 if (equidistant ==
true)
101 if (this->degree > 2)
104 <<
">(QIterated(QTrapez()," << this->degree <<
"))";
108 <<
">(" << this->degree <<
")";
114 bool gauss_lobatto =
true;
115 for (
unsigned int j=0; j<=this->
degree; j++)
116 if (points[j] != points_gl.
point(j)(0))
118 gauss_lobatto =
false;
121 if (gauss_lobatto ==
true)
124 <<
">(" << this->degree <<
")";
128 <<
">(QUnknownNodes(" << this->degree <<
"))";
130 return namebuf.str();
135 template <
int dim,
int spacedim>
146 DEAL_II_NAMESPACE_CLOSE
static std::vector< unsigned int > get_dpo_vector(const unsigned int degree)
FE_Q(const unsigned int p)
const unsigned int degree
#define AssertThrow(cond, exc)
virtual FiniteElement< dim, spacedim > * clone() const
const std::vector< unsigned int > & get_numbering_inverse() const
const Point< dim > & point(const unsigned int i) const
std::vector< Point< dim > > unit_support_points
const std::vector< Point< dim > > & get_points() const
std::string dim_string(const int dim, const int spacedim)
void initialize(const std::vector< Point< 1 > > &support_points_1d)
virtual std::string get_name() const
TensorProductPolynomials< dim > poly_space