Example codes
and tutorials
The (Not-so) Quick Guide
List of tutorials/demo codes
Single-Physics Problems
Poisson
Adaptivity illustrated for Poisson
Advection-Diffusion
Unsteady heat equation
Linear wave equation
The Young-Laplace equation
Navier-Stokes
Free-surface Navier-Stokes
Axisymmetric Navier-Stokes
Solid mechanics
Beam structures
Shell structures
Multi-physics Problems
Fluid-structure interaction
Boussinesq convection
Steady thermoelasticity
Methods-based example codes and tutorials
Mesh generation
Linear solvers and preconditioners
Visualisation of the results
Parallel processing
How to write a new element
How to write a new refineable element
Default nonlinear solvers -- the sequence of action functions
...
Documentation
FE theory and top-down discussion of the data structure
The (Not-so) Quick Guide
Comprehensive bottom-up discussion of the data structure
List of available structured and unstructured meshes
Linear solvers and preconditioners
Visualisation of the results
Parallel processing
Coding conventions and C++ style
Creating documentation
Optimisation - robustness vs. "raw speed"
Linear vs. nonlinear problems
Storing shape functions
Changing the default "full" integration scheme
Disabling the ALE formulation of unsteady equations
C vs. C++ output
Different sparse assembly techniques and the STL memory pool
Publications
Publications
Talks
Journal publications
Theses
Picture show
Download
Copyright
Download/installation instructions
Download page
FAQ & Contact
FAQ
Change log
Bugs and other known problems
Completeness of the library & our "To-Do List"
Contact the developers
Get involved

 


Beta release!

Please note that the library has not been "officially" released. While we continue to work on the documentation, these web pages are likely to contain broken links and documents in draft form. Please send an email to

oomph-lib AT maths DOT man DOT ac DOT uk

if you wish to be informed of the library's "official" release.

oomph::ElementWithZ2ErrorEstimator Class Reference

#include <error_estimator.h>

Inheritance diagram for oomph::ElementWithZ2ErrorEstimator:

oomph::FiniteElement oomph::GeneralisedElement oomph::GeomObject oomph::RefineableAdvectionDiffusionEquations< DIM > oomph::RefineableAdvectionDiffusionReactionEquations< NREAGENT, DIM > oomph::RefineableAxisymmetricNavierStokesEquations oomph::RefineableGeneralisedAdvectionDiffusionEquations< DIM > oomph::RefineableLinearElasticityEquations< DIM > oomph::RefineableLinearWaveEquations< DIM > oomph::RefineableNavierStokesEquations< DIM > oomph::RefineablePoissonEquations< DIM > oomph::RefineablePVDEquations< DIM > oomph::RefineablePVDEquationsWithPressure< DIM > oomph::RefineableUnsteadyHeatEquations< DIM > List of all members.

Detailed Description

Base class for finite elements that can compute the quantities that are required for the Z2 error estimator.

Definition at line 93 of file error_estimator.h.


Public Member Functions

 ElementWithZ2ErrorEstimator ()
 Default empty constructor.
 ElementWithZ2ErrorEstimator (const ElementWithZ2ErrorEstimator &)
 Broken copy constructor.
void operator= (const ElementWithZ2ErrorEstimator &)
 Broken assignment operator.
virtual unsigned num_Z2_flux_terms ()=0
 Number of 'flux' terms for Z2 error estimation.
virtual unsigned ncompound_fluxes ()
 A stuitable error estimator for a multi-physics elements may require one Z2 error estimate for each field (e.g. velocity and temperature in a fluid convection problem). It is assumed that these error estimates will each use selected flux terms. The number of compound fluxes returns the number of such combinations of the flux terms. Default value is one and all flux terms are combined with equal weight.
virtual void get_Z2_flux (const Vector< double > &s, Vector< double > &flux)=0
 Z2 'flux' terms for Z2 error estimation.
virtual void get_Z2_compound_flux_indices (Vector< unsigned > &flux_index)
 Return the compound flux index of each flux component The default (do nothing behaviour) will mean that all indices remain at the default value zero.
virtual unsigned nvertex_node () const =0
 Number of vertex nodes in the element.
virtual Nodevertex_node_pt (const unsigned &j) const =0
 Pointer to the j-th vertex node in the element. Needed for efficient patch assmbly.
virtual unsigned nrecovery_order ()=0
 Order of recovery shape functions.
virtual double geometric_jacobian (const Vector< double > &x)
 Return the geometric jacobian (should be overloaded in cylindrical and spherical geometries). Default value one is suitable for Cartesian coordinates.

Constructor & Destructor Documentation

oomph::ElementWithZ2ErrorEstimator::ElementWithZ2ErrorEstimator (  )  [inline]

Default empty constructor.

Definition at line 99 of file error_estimator.h.

oomph::ElementWithZ2ErrorEstimator::ElementWithZ2ErrorEstimator ( const ElementWithZ2ErrorEstimator  )  [inline]

Broken copy constructor.

Definition at line 102 of file error_estimator.h.

References oomph::BrokenCopy::broken_copy().


Member Function Documentation

virtual double oomph::ElementWithZ2ErrorEstimator::geometric_jacobian ( const Vector< double > &  x  )  [inline, virtual]

Return the geometric jacobian (should be overloaded in cylindrical and spherical geometries). Default value one is suitable for Cartesian coordinates.

Reimplemented in oomph::RefineableAxisymmetricNavierStokesEquations.

Definition at line 146 of file error_estimator.h.

Referenced by oomph::Z2ErrorEstimator::get_element_errors().

virtual void oomph::ElementWithZ2ErrorEstimator::get_Z2_compound_flux_indices ( Vector< unsigned > &  flux_index  )  [inline, virtual]

Return the compound flux index of each flux component The default (do nothing behaviour) will mean that all indices remain at the default value zero.

Definition at line 131 of file error_estimator.h.

Referenced by oomph::Z2ErrorEstimator::get_element_errors().

virtual void oomph::ElementWithZ2ErrorEstimator::get_Z2_flux ( const Vector< double > &  s,
Vector< double > &  flux 
) [pure virtual]

Z2 'flux' terms for Z2 error estimation.

Implemented in oomph::RefineableNavierStokesEquations< DIM >, oomph::RefineablePoissonEquations< DIM >, oomph::RefineableAxisymmetricNavierStokesEquations, oomph::RefineablePVDEquations< DIM >, oomph::RefineablePVDEquationsWithPressure< DIM >, oomph::RefineableAdvectionDiffusionEquations< DIM >, oomph::RefineableGeneralisedAdvectionDiffusionEquations< DIM >, oomph::RefineableUnsteadyHeatEquations< DIM >, oomph::RefineableLinearWaveEquations< DIM >, oomph::RefineableLinearElasticityEquations< DIM >, and oomph::RefineableAdvectionDiffusionReactionEquations< NREAGENT, DIM >.

Referenced by oomph::Z2ErrorEstimator::get_element_errors().

virtual unsigned oomph::ElementWithZ2ErrorEstimator::ncompound_fluxes (  )  [inline, virtual]

A stuitable error estimator for a multi-physics elements may require one Z2 error estimate for each field (e.g. velocity and temperature in a fluid convection problem). It is assumed that these error estimates will each use selected flux terms. The number of compound fluxes returns the number of such combinations of the flux terms. Default value is one and all flux terms are combined with equal weight.

Definition at line 123 of file error_estimator.h.

Referenced by oomph::Z2ErrorEstimator::get_element_errors().

virtual unsigned oomph::ElementWithZ2ErrorEstimator::nrecovery_order (  )  [pure virtual]

Order of recovery shape functions.

Implemented in oomph::RefineableQTaylorHoodElement< DIM >, oomph::RefineableQCrouzeixRaviartElement< DIM >, oomph::RefineableQPoissonElement< DIM, NNODE_1D >, oomph::RefineableQSpectralPoissonElement< DIM, NNODE_1D >, oomph::RefineableAxisymmetricQTaylorHoodElement, oomph::RefineableAxisymmetricQCrouzeixRaviartElement, oomph::RefineableQPVDElement< DIM, NNODE_1D >, oomph::RefineableQPVDElementWithPressure< DIM >, oomph::RefineableQPVDElementWithContinuousPressure< DIM >, oomph::RefineableQAdvectionDiffusionElement< DIM, NNODE_1D >, oomph::RefineableQGeneralisedAdvectionDiffusionElement< DIM, NNODE_1D >, oomph::RefineableQSUPGAdvectionDiffusionElement< DIM, NNODE_1D >, oomph::RefineableQUnsteadyHeatElement< DIM, NNODE_1D >, oomph::RefineableQLinearWaveElement< DIM, NNODE_1D >, oomph::RefineableQLinearElasticityElement< DIM, NNODE_1D >, and oomph::RefineableQAdvectionDiffusionReactionElement< NREAGENT, DIM, NNODE_1D >.

Referenced by oomph::Z2ErrorEstimator::get_element_errors().

virtual unsigned oomph::ElementWithZ2ErrorEstimator::num_Z2_flux_terms (  )  [pure virtual]

Number of 'flux' terms for Z2 error estimation.

Implemented in oomph::RefineableNavierStokesEquations< DIM >, oomph::RefineablePoissonEquations< DIM >, oomph::RefineableAxisymmetricNavierStokesEquations, oomph::RefineablePVDEquations< DIM >, oomph::RefineablePVDEquationsWithPressure< DIM >, oomph::RefineableAdvectionDiffusionEquations< DIM >, oomph::RefineableGeneralisedAdvectionDiffusionEquations< DIM >, oomph::RefineableUnsteadyHeatEquations< DIM >, oomph::RefineableLinearWaveEquations< DIM >, oomph::RefineableLinearElasticityEquations< DIM >, and oomph::RefineableAdvectionDiffusionReactionEquations< NREAGENT, DIM >.

Referenced by oomph::Z2ErrorEstimator::get_element_errors().

virtual unsigned oomph::ElementWithZ2ErrorEstimator::nvertex_node (  )  const [pure virtual]

Number of vertex nodes in the element.

Implemented in oomph::RefineableQTaylorHoodElement< DIM >, oomph::RefineableQCrouzeixRaviartElement< DIM >, oomph::RefineableQPoissonElement< DIM, NNODE_1D >, oomph::RefineableQSpectralPoissonElement< DIM, NNODE_1D >, oomph::RefineableAxisymmetricQTaylorHoodElement, oomph::RefineableAxisymmetricQCrouzeixRaviartElement, oomph::RefineableQPVDElement< DIM, NNODE_1D >, oomph::RefineableQPVDElementWithPressure< DIM >, oomph::RefineableQPVDElementWithContinuousPressure< DIM >, oomph::RefineableQAdvectionDiffusionElement< DIM, NNODE_1D >, oomph::RefineableQGeneralisedAdvectionDiffusionElement< DIM, NNODE_1D >, oomph::RefineableQSUPGAdvectionDiffusionElement< DIM, NNODE_1D >, oomph::RefineableQUnsteadyHeatElement< DIM, NNODE_1D >, oomph::RefineableQLinearWaveElement< DIM, NNODE_1D >, oomph::RefineableQLinearElasticityElement< DIM, NNODE_1D >, and oomph::RefineableQAdvectionDiffusionReactionElement< NREAGENT, DIM, NNODE_1D >.

void oomph::ElementWithZ2ErrorEstimator::operator= ( const ElementWithZ2ErrorEstimator  )  [inline]

Broken assignment operator.

Definition at line 108 of file error_estimator.h.

References oomph::BrokenCopy::broken_assign().

virtual Node* oomph::ElementWithZ2ErrorEstimator::vertex_node_pt ( const unsigned &  j  )  const [pure virtual]

Pointer to the j-th vertex node in the element. Needed for efficient patch assmbly.

Implemented in oomph::RefineableQTaylorHoodElement< DIM >, oomph::RefineableQCrouzeixRaviartElement< DIM >, oomph::RefineableQPoissonElement< DIM, NNODE_1D >, oomph::RefineableQSpectralPoissonElement< DIM, NNODE_1D >, oomph::RefineableAxisymmetricQTaylorHoodElement, oomph::RefineableAxisymmetricQCrouzeixRaviartElement, oomph::RefineableQPVDElement< DIM, NNODE_1D >, oomph::RefineableQPVDElementWithPressure< DIM >, oomph::RefineableQPVDElementWithContinuousPressure< DIM >, oomph::RefineableQAdvectionDiffusionElement< DIM, NNODE_1D >, oomph::RefineableQGeneralisedAdvectionDiffusionElement< DIM, NNODE_1D >, oomph::RefineableQSUPGAdvectionDiffusionElement< DIM, NNODE_1D >, oomph::RefineableQUnsteadyHeatElement< DIM, NNODE_1D >, oomph::RefineableQLinearWaveElement< DIM, NNODE_1D >, oomph::RefineableQLinearElasticityElement< DIM, NNODE_1D >, and oomph::RefineableQAdvectionDiffusionReactionElement< NREAGENT, DIM, NNODE_1D >.


The documentation for this class was generated from the following file:
Generated on Mon Aug 10 11:24:37 2009 by  doxygen 1.4.7