17 #ifndef __deal2__error_estimator_h
18 #define __deal2__error_estimator_h
21 #include <deal.II/base/config.h>
23 #include <deal.II/base/function.h>
24 #include <deal.II/base/multithread_info.h>
25 #include <deal.II/dofs/function_map.h>
26 #include <deal.II/fe/component_mask.h>
232 template <
int dim,
int spacedim=dim>
292 template <
typename InputVector,
class DH>
297 const InputVector &solution,
309 template <
typename InputVector,
class DH>
310 static void estimate (
const DH &dof,
313 const InputVector &solution,
334 template <
typename InputVector,
class DH>
339 const std::vector<const InputVector *> &solutions,
351 template <
typename InputVector,
class DH>
352 static void estimate (
const DH &dof,
355 const std::vector<const InputVector *> &solutions,
368 template <
typename InputVector,
class DH>
373 const InputVector &solution,
386 template <
typename InputVector,
class DH>
387 static void estimate (
const DH &dof,
390 const InputVector &solution,
403 template <
typename InputVector,
class DH>
408 const std::vector<const InputVector *> &solutions,
421 template <
typename InputVector,
class DH>
422 static void estimate (
const DH &dof,
425 const std::vector<const InputVector *> &solutions,
455 <<
"The number of elements " << arg1 <<
" and " << arg2
456 <<
" of the vectors do not match!");
480 template <
int spacedim>
506 template <
typename InputVector,
class DH>
511 const InputVector &solution,
523 template <
typename InputVector,
class DH>
524 static void estimate (
const DH &dof,
527 const InputVector &solution,
548 template <
typename InputVector,
class DH>
553 const std::vector<const InputVector *> &solutions,
565 template <
typename InputVector,
class DH>
566 static void estimate (
const DH &dof,
569 const std::vector<const InputVector *> &solutions,
582 template <
typename InputVector,
class DH>
587 const InputVector &solution,
600 template <
typename InputVector,
class DH>
601 static void estimate (
const DH &dof,
604 const InputVector &solution,
617 template <
typename InputVector,
class DH>
622 const std::vector<const InputVector *> &solutions,
635 template <
typename InputVector,
class DH>
636 static void estimate (
const DH &dof,
639 const std::vector<const InputVector *> &solutions,
668 <<
"The number of elements " << arg1 <<
" and " << arg2
669 <<
" of the vectors do not match!");
682 DEAL_II_NAMESPACE_CLOSE
static const unsigned int invalid_unsigned_int
const types::subdomain_id invalid_subdomain_id
unsigned char material_id
std::map< types::boundary_id, const Function< dim > * > type
DeclException0(ExcInvalidBoundaryIndicator)
unsigned int subdomain_id
DeclException2(ExcIncompatibleNumberOfElements, int, int,<< "The number of elements "<< arg1<< " and "<< arg2<< " of the vectors do not match!")
const types::material_id invalid_material_id
static void estimate(const Mapping< dim, spacedim > &mapping, const DH &dof, const Quadrature< dim-1 > &quadrature, const typename FunctionMap< spacedim >::type &neumann_bc, const InputVector &solution, Vector< float > &error, const ComponentMask &component_mask=ComponentMask(), const Function< spacedim > *coefficients=0, const unsigned int n_threads=numbers::invalid_unsigned_int, const types::subdomain_id subdomain_id=numbers::invalid_subdomain_id, const types::material_id material_id=numbers::invalid_material_id)