Amandus: Simulations based on multilevel Schwarz methods
Public Member Functions | Protected Attributes | List of all members
ErrorRemesher< VECTOR, dim > Class Template Reference

Remesher interpolating all vectors and using an ErrorIntegrator to calculate criterion. More...

#include <adaptivity.h>

Inheritance diagram for ErrorRemesher< VECTOR, dim >:
Inheritance graph
[legend]
Collaboration diagram for ErrorRemesher< VECTOR, dim >:
Collaboration graph
[legend]

Public Member Functions

 ErrorRemesher (AmandusApplicationSparse< dim > &app, dealii::Triangulation< dim > &tria, ErrorIntegrator< dim > &error_integrator)
 
void flag_callback (std::function< void(dealii::Triangulation< dim > &, const dealii::BlockVector< double > &)> callback)
 Set callback for flagging. More...
 
virtual void remesh (const dealii::AnyData &out, const dealii::AnyData &)
 
- Public Member Functions inherited from AllInterpolatingRemesher< VECTOR, dim >
 AllInterpolatingRemesher (AmandusApplicationSparse< dim > &app, dealii::Triangulation< dim > &tria)
 
virtual void operator() (dealii::AnyData &out, const dealii::AnyData &in)
 
virtual void extract_vectors (const dealii::AnyData &to_extract)
 
virtual void finalize_transfer ()
 
- Public Member Functions inherited from InterpolatingRemesher< VECTOR, dim >
 InterpolatingRemesher (AmandusApplicationSparse< dim > &app, dealii::Triangulation< dim > &tria)
 
virtual void prepare_transfer ()
 called at pre_refinement signal of triangulation More...
 
- Public Member Functions inherited from Remesher< VECTOR, dim >
 Remesher (AmandusApplicationSparse< dim > &app, dealii::Triangulation< dim > &tria)
 

Protected Attributes

ErrorIntegrator< dim > * error_integrator
 
dealii::BlockVector< double > indicator
 
std::function< void(dealii::Triangulation< dim > &, const dealii::BlockVector< double > &)> callback
 
- Protected Attributes inherited from AllInterpolatingRemesher< VECTOR, dim >
std::vector< VECTOR * > extracted
 
- Protected Attributes inherited from InterpolatingRemesher< VECTOR, dim >
dealii::SolutionTransfer< dim, VECTOR > transfer
 
std::vector< VECTOR > to_transfer
 Vectors to be transferred to new grid. More...
 
std::vector< VECTOR > transferred
 Interpolated vectors on new grid. More...
 
- Protected Attributes inherited from Remesher< VECTOR, dim >
dealii::SmartPointer< AmandusApplicationSparse< dim >, Remesher< VECTOR, dim > > app
 
dealii::SmartPointer< dealii::Triangulation< dim >, Remesher< VECTOR, dim > > tria
 

Additional Inherited Members

- Protected Member Functions inherited from InterpolatingRemesher< VECTOR, dim >
void connect_transfer ()
 

Detailed Description

template<class VECTOR, int dim>
class ErrorRemesher< VECTOR, dim >

Remesher interpolating all vectors and using an ErrorIntegrator to calculate criterion.

Calculates a cellwise refinement indicator based on an ErrorIntegrator. Passes that information to a callback which should flag cells for refinement/coarsening depending on the indicator. Modifies the mesh and interpolates all the vectors it received.

Constructor & Destructor Documentation

template<class VECTOR, int dim>
ErrorRemesher< VECTOR, dim >::ErrorRemesher ( AmandusApplicationSparse< dim > &  app,
dealii::Triangulation< dim > &  tria,
ErrorIntegrator< dim > &  error_integrator 
)
inline

Member Function Documentation

template<class VECTOR, int dim>
void ErrorRemesher< VECTOR, dim >::flag_callback ( std::function< void(dealii::Triangulation< dim > &, const dealii::BlockVector< double > &)>  callback)
inline

Set callback for flagging.

template<class VECTOR, int dim>
virtual void ErrorRemesher< VECTOR, dim >::remesh ( const dealii::AnyData &  out,
const dealii::AnyData &   
)
inlinevirtual

Member Data Documentation

template<class VECTOR, int dim>
std::function<void(dealii::Triangulation<dim>&, const dealii::BlockVector<double>&)> ErrorRemesher< VECTOR, dim >::callback
protected
template<class VECTOR, int dim>
ErrorIntegrator<dim>* ErrorRemesher< VECTOR, dim >::error_integrator
protected
template<class VECTOR, int dim>
dealii::BlockVector<double> ErrorRemesher< VECTOR, dim >::indicator
protected

The documentation for this class was generated from the following file: