for (unsigned int d=0;d<dim;++d)
{
- QAnisotropic<dim>* quadrature;
- if (dim == 1) quadrature = new QAnisotropic<dim>(high);
- if (dim == 2) quadrature = new QAnisotropic<dim>(((d==0) ? low : high),
- ((d==1) ? low : high));
- if (dim == 3) quadrature = new QAnisotropic<dim>(((d==0) ? low : high),
- ((d==1) ? low : high),
- ((d==2) ? low : high));
- for (unsigned int k=0;k<quadrature->n_quadrature_points;++k)
- this->generalized_support_points[current++] = quadrature->point(k);
- delete quadrature;
+ const QAnisotropic<dim>
+ quadrature (dim == 1 ?
+ QAnisotropic<dim>(high) :
+ (dim == 2 ?
+ QAnisotropic<dim>(((d==0) ? low : high),
+ ((d==1) ? low : high)) :
+ (dim == 3 ?
+ QAnisotropic<dim>(((d==0) ? low : high),
+ ((d==1) ? low : high),
+ ((d==2) ? low : high))
+ :
+ throw ExcNotImplemented())));
+
+ for (unsigned int k=0;k<quadrature.n_quadrature_points;++k)
+ this->generalized_support_points[current++] = quadrature.point(k);
}
Assert (current == this->dofs_per_cell, ExcInternalError());
}