oomph::ProjectableElementBase Class Referenceabstract

Template-free Base class for projectable elements. More...

#include <projection.h>

+ Inheritance diagram for oomph::ProjectableElementBase:

Public Member Functions

 ProjectableElementBase ()
 
virtual ~ProjectableElementBase ()
 Virtual destructor. More...
 
virtual Vector< std::pair< Data *, unsigned > > data_values_of_field (const unsigned &fld)=0
 
virtual unsigned nfields_for_projection ()=0
 
virtual unsigned nhistory_values_for_projection (const unsigned &fld)=0
 
virtual unsigned nhistory_values_for_coordinate_projection ()=0
 
virtual unsigned nvalue_of_field (const unsigned &fld)=0
 
virtual int local_equation (const unsigned &fld, const unsigned &ivalue)=0
 
virtual double jacobian_and_shape_of_field (const unsigned &fld, const Vector< double > &s, Shape &psi)=0
 
virtual double get_field (const unsigned &time, const unsigned &fld, const Vector< double > &s)=0
 

Protected Types

enum  Projection_Type { Coordinate , Lagrangian , Value }
 

Protected Attributes

unsigned Projected_field
 Field that is currently being projected. More...
 
unsigned Time_level_for_projection
 Time level we are projecting (0=current values; >0: history values) More...
 
unsigned Projected_coordinate
 
unsigned Projected_lagrangian
 
Projection_Type Projection_type
 
bool Do_projection
 
unsigned Backup_ninteraction
 
bool Backup_external_geometric_data
 
bool Backup_external_interaction_data
 

Detailed Description

Template-free Base class for projectable elements.

Member Enumeration Documentation

◆ Projection_Type

Enumerated collection to specify which projection problem is to be solved.

Enumerator
Coordinate 
Lagrangian 
Value 
60  {
61  Coordinate,
62  Lagrangian,
63  Value
64  };
@ Value
Definition: projection.h:63
@ Lagrangian
Definition: projection.h:62
@ Coordinate
Definition: projection.h:61

Constructor & Destructor Documentation

◆ ProjectableElementBase()

oomph::ProjectableElementBase::ProjectableElementBase ( )
inline

Constructor: Initialise data so that we don't project but solve the "normal" equations associated with the element.

111  : Projected_field(0),
116  Do_projection(false),
119  {
120  }
unsigned Projected_lagrangian
Definition: projection.h:78
Projection_Type Projection_type
Definition: projection.h:83
unsigned Time_level_for_projection
Time level we are projecting (0=current values; >0: history values)
Definition: projection.h:70
unsigned Backup_ninteraction
Definition: projection.h:93
bool Do_projection
Definition: projection.h:88
bool Backup_external_geometric_data
Definition: projection.h:98
unsigned Projected_field
Field that is currently being projected.
Definition: projection.h:67
unsigned Projected_coordinate
Definition: projection.h:74

◆ ~ProjectableElementBase()

virtual oomph::ProjectableElementBase::~ProjectableElementBase ( )
inlinevirtual

Virtual destructor.

123 {}

Member Function Documentation

◆ data_values_of_field()

virtual Vector<std::pair<Data*, unsigned> > oomph::ProjectableElementBase::data_values_of_field ( const unsigned fld)
pure virtual

Pure virtual function in which the element writer must specify the values associated with field fld. The information is returned in a vector of pairs which comprise the Data object and the value within it, that correspond to field fld. E.g. in Taylor Hood elements the fld-th velocities are stored at the fld-th value of the nodes; the pressures (the DIM-th field) are the DIM-th values at the vertex nodes etc.

Implemented in oomph::ProjectableUnsteadyHeatElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableTimeHarmonicFourierDecomposedLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableUnsteadyHeatMixedOrderSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTaylorHoodMixedOrderSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectablePVDElementWithContinuousPressure< PVD_ELEMENT >, oomph::ProjectablePVDElement< PVD_ELEMENT >, oomph::ProjectablePoissonElement< POISSON_ELEMENT >, oomph::ProjectablePMLTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectablePMLHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::ProjectablePMLFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableLinearElasticityElement< LINEAR_ELAST_ELEMENT >, oomph::ProjectableHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::GenericLagrangeInterpolatedProjectableElement< ELEMENT >, oomph::ProjectableGeneralisedNewtonianCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableGeneralisedNewtonianTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDisplacementBasedFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDarcyElement< DARCY_ELEMENT >, oomph::ProjectableAxisymmetricPoroelasticityElement< AXISYMMETRIC_POROELASTICITY_ELEMENT >, oomph::ProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableAxisymLinearElasticityElement< AXISYM_LINEAR_ELAST_ELEMENT >, oomph::ProjectableAdvectionDiffusionReactionElement< ADR_ELEMENT >, and oomph::ProjectableLinearHeatAndElasticityElement< LINEAR_HEAT_AND_ELAST_ELEMENT >.

◆ get_field()

virtual double oomph::ProjectableElementBase::get_field ( const unsigned time,
const unsigned fld,
const Vector< double > &  s 
)
pure virtual

Return the fld-th field at local coordinates s at time-level time (time=0: current value; time>0: history values)

Implemented in oomph::ProjectableUnsteadyHeatElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableTimeHarmonicFourierDecomposedLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableUnsteadyHeatMixedOrderSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTaylorHoodMixedOrderSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectablePVDElementWithContinuousPressure< PVD_ELEMENT >, oomph::ProjectablePVDElement< PVD_ELEMENT >, oomph::ProjectablePoissonElement< POISSON_ELEMENT >, oomph::ProjectablePMLTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectablePMLHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::ProjectablePMLFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableLinearElasticityElement< LINEAR_ELAST_ELEMENT >, oomph::ProjectableHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::GenericLagrangeInterpolatedProjectableElement< ELEMENT >, oomph::ProjectableGeneralisedNewtonianCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableGeneralisedNewtonianTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDisplacementBasedFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDarcyElement< DARCY_ELEMENT >, oomph::ProjectableAxisymmetricPoroelasticityElement< AXISYMMETRIC_POROELASTICITY_ELEMENT >, oomph::ProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableAxisymLinearElasticityElement< AXISYM_LINEAR_ELAST_ELEMENT >, oomph::ProjectableAdvectionDiffusionReactionElement< ADR_ELEMENT >, and oomph::ProjectableLinearHeatAndElasticityElement< LINEAR_HEAT_AND_ELAST_ELEMENT >.

Referenced by oomph::ProjectableAxisymmetricPoroelasticityElement< AXISYMMETRIC_POROELASTICITY_ELEMENT >::residual_for_projection(), oomph::ProjectableDarcyElement< DARCY_ELEMENT >::residual_for_projection(), and oomph::ProjectableElement< ELEMENT >::residual_for_projection().

◆ jacobian_and_shape_of_field()

virtual double oomph::ProjectableElementBase::jacobian_and_shape_of_field ( const unsigned fld,
const Vector< double > &  s,
Shape psi 
)
pure virtual

Return Jacobian of mapping and the shape functions associated with field fld. The number of shape functions must match the number of values specified in nvalue_of_field(...). For Lagrange-type interpolations the shape functinos are simply the "normal" nodal shape functions; if the element contains internal Data that is not associated with shape functions, simply set the corresonding shape function to 1.

Implemented in oomph::ProjectableUnsteadyHeatElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableTimeHarmonicFourierDecomposedLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableUnsteadyHeatMixedOrderSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTaylorHoodMixedOrderSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectablePVDElementWithContinuousPressure< PVD_ELEMENT >, oomph::ProjectablePVDElement< PVD_ELEMENT >, oomph::ProjectablePoissonElement< POISSON_ELEMENT >, oomph::ProjectablePMLTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectablePMLHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::ProjectablePMLFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableLinearElasticityElement< LINEAR_ELAST_ELEMENT >, oomph::ProjectableHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::GenericLagrangeInterpolatedProjectableElement< ELEMENT >, oomph::ProjectableGeneralisedNewtonianCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableGeneralisedNewtonianTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDisplacementBasedFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDarcyElement< DARCY_ELEMENT >, oomph::ProjectableAxisymmetricPoroelasticityElement< AXISYMMETRIC_POROELASTICITY_ELEMENT >, oomph::ProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableAxisymLinearElasticityElement< AXISYM_LINEAR_ELAST_ELEMENT >, oomph::ProjectableAdvectionDiffusionReactionElement< ADR_ELEMENT >, and oomph::ProjectableLinearHeatAndElasticityElement< LINEAR_HEAT_AND_ELAST_ELEMENT >.

Referenced by oomph::ProjectableElement< ELEMENT >::residual_for_projection().

◆ local_equation()

virtual int oomph::ProjectableElementBase::local_equation ( const unsigned fld,
const unsigned ivalue 
)
pure virtual

Return local equation numbers associated with value ivalue of field fld within the element.

Implemented in oomph::ProjectableUnsteadyHeatElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableTimeHarmonicFourierDecomposedLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableUnsteadyHeatMixedOrderSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTaylorHoodMixedOrderSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectablePVDElementWithContinuousPressure< PVD_ELEMENT >, oomph::ProjectablePVDElement< PVD_ELEMENT >, oomph::ProjectablePoissonElement< POISSON_ELEMENT >, oomph::ProjectablePMLTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectablePMLHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::ProjectablePMLFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableLinearElasticityElement< LINEAR_ELAST_ELEMENT >, oomph::ProjectableHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::GenericLagrangeInterpolatedProjectableElement< ELEMENT >, oomph::ProjectableGeneralisedNewtonianCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableGeneralisedNewtonianTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDisplacementBasedFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDarcyElement< DARCY_ELEMENT >, oomph::ProjectableAxisymmetricPoroelasticityElement< AXISYMMETRIC_POROELASTICITY_ELEMENT >, oomph::ProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableAxisymLinearElasticityElement< AXISYM_LINEAR_ELAST_ELEMENT >, oomph::ProjectableAdvectionDiffusionReactionElement< ADR_ELEMENT >, and oomph::ProjectableLinearHeatAndElasticityElement< LINEAR_HEAT_AND_ELAST_ELEMENT >.

Referenced by oomph::ProjectableElement< ELEMENT >::residual_for_projection().

◆ nfields_for_projection()

virtual unsigned oomph::ProjectableElementBase::nfields_for_projection ( )
pure virtual

Number of fields of the problem, so e.g. for 2D Navier Stokes this would be 3 (for the two velocities and one pressure)

Implemented in oomph::ProjectableUnsteadyHeatElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableTimeHarmonicFourierDecomposedLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableUnsteadyHeatMixedOrderSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTaylorHoodMixedOrderSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectablePVDElementWithContinuousPressure< PVD_ELEMENT >, oomph::ProjectablePVDElement< PVD_ELEMENT >, oomph::ProjectablePoissonElement< POISSON_ELEMENT >, oomph::ProjectablePMLTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectablePMLHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::ProjectablePMLFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableLinearElasticityElement< LINEAR_ELAST_ELEMENT >, oomph::ProjectableHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::GenericLagrangeInterpolatedProjectableElement< ELEMENT >, oomph::ProjectableGeneralisedNewtonianCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableGeneralisedNewtonianTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDisplacementBasedFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDarcyElement< DARCY_ELEMENT >, oomph::ProjectableAxisymmetricPoroelasticityElement< AXISYMMETRIC_POROELASTICITY_ELEMENT >, oomph::ProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableAxisymLinearElasticityElement< AXISYM_LINEAR_ELAST_ELEMENT >, oomph::ProjectableAdvectionDiffusionReactionElement< ADR_ELEMENT >, and oomph::ProjectableLinearHeatAndElasticityElement< LINEAR_HEAT_AND_ELAST_ELEMENT >.

◆ nhistory_values_for_coordinate_projection()

virtual unsigned oomph::ProjectableElementBase::nhistory_values_for_coordinate_projection ( )
pure virtual

Number of history values to be stored when projecting the history values of the nodal coordinates (includes current value!)

Implemented in oomph::ProjectableUnsteadyHeatElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableTimeHarmonicFourierDecomposedLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableUnsteadyHeatMixedOrderSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTaylorHoodMixedOrderSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectablePVDElementWithContinuousPressure< PVD_ELEMENT >, oomph::ProjectablePVDElement< PVD_ELEMENT >, oomph::ProjectablePoissonElement< POISSON_ELEMENT >, oomph::ProjectablePMLTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectablePMLHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::ProjectablePMLFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableLinearElasticityElement< LINEAR_ELAST_ELEMENT >, oomph::ProjectableHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::GenericLagrangeInterpolatedProjectableElement< ELEMENT >, oomph::ProjectableGeneralisedNewtonianCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableGeneralisedNewtonianTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDisplacementBasedFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDarcyElement< DARCY_ELEMENT >, oomph::ProjectableAxisymmetricPoroelasticityElement< AXISYMMETRIC_POROELASTICITY_ELEMENT >, oomph::ProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableAxisymLinearElasticityElement< AXISYM_LINEAR_ELAST_ELEMENT >, oomph::ProjectableAdvectionDiffusionReactionElement< ADR_ELEMENT >, and oomph::ProjectableLinearHeatAndElasticityElement< LINEAR_HEAT_AND_ELAST_ELEMENT >.

◆ nhistory_values_for_projection()

virtual unsigned oomph::ProjectableElementBase::nhistory_values_for_projection ( const unsigned fld)
pure virtual

Number of history values to be stored for fld-th field (includes current value!)

Implemented in oomph::ProjectableUnsteadyHeatElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableTimeHarmonicFourierDecomposedLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableUnsteadyHeatMixedOrderSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTaylorHoodMixedOrderSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectablePVDElementWithContinuousPressure< PVD_ELEMENT >, oomph::ProjectablePVDElement< PVD_ELEMENT >, oomph::ProjectablePoissonElement< POISSON_ELEMENT >, oomph::ProjectablePMLTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectablePMLHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::ProjectablePMLFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableLinearElasticityElement< LINEAR_ELAST_ELEMENT >, oomph::ProjectableHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::GenericLagrangeInterpolatedProjectableElement< ELEMENT >, oomph::ProjectableGeneralisedNewtonianCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableGeneralisedNewtonianTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDisplacementBasedFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDarcyElement< DARCY_ELEMENT >, oomph::ProjectableAxisymmetricPoroelasticityElement< AXISYMMETRIC_POROELASTICITY_ELEMENT >, oomph::ProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableAxisymLinearElasticityElement< AXISYM_LINEAR_ELAST_ELEMENT >, oomph::ProjectableAdvectionDiffusionReactionElement< ADR_ELEMENT >, and oomph::ProjectableLinearHeatAndElasticityElement< LINEAR_HEAT_AND_ELAST_ELEMENT >.

◆ nvalue_of_field()

virtual unsigned oomph::ProjectableElementBase::nvalue_of_field ( const unsigned fld)
pure virtual

Return number of values (pinned or not) associated with field fld within the element. This must correspond to the number of shape functions returned in jacobian_and_shape_of_field(...).

Implemented in oomph::ProjectableUnsteadyHeatElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableTimeHarmonicFourierDecomposedLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectableUnsteadyHeatMixedOrderSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableUnsteadyHeatSpaceTimeElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableTaylorHoodMixedOrderSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableTaylorHoodSpaceTimeElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectablePVDElementWithContinuousPressure< PVD_ELEMENT >, oomph::ProjectablePVDElement< PVD_ELEMENT >, oomph::ProjectablePoissonElement< POISSON_ELEMENT >, oomph::ProjectablePMLTimeHarmonicLinearElasticityElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::ProjectablePMLHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::ProjectablePMLFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableLinearElasticityElement< LINEAR_ELAST_ELEMENT >, oomph::ProjectableHelmholtzElement< HELMHOLTZ_ELEMENT >, oomph::GenericLagrangeInterpolatedProjectableElement< ELEMENT >, oomph::ProjectableGeneralisedNewtonianCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableGeneralisedNewtonianTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::GeneralisedNewtonianProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDisplacementBasedFoepplvonKarmanElement< FVK_ELEMENT >, oomph::ProjectableDarcyElement< DARCY_ELEMENT >, oomph::ProjectableAxisymmetricPoroelasticityElement< AXISYMMETRIC_POROELASTICITY_ELEMENT >, oomph::ProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableAxisymmetricTaylorHoodElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableAxisymLinearElasticityElement< AXISYM_LINEAR_ELAST_ELEMENT >, oomph::ProjectableAdvectionDiffusionReactionElement< ADR_ELEMENT >, and oomph::ProjectableLinearHeatAndElasticityElement< LINEAR_HEAT_AND_ELAST_ELEMENT >.

Referenced by oomph::ProjectableElement< ELEMENT >::residual_for_projection().

Member Data Documentation

◆ Backup_external_geometric_data

bool oomph::ProjectableElementBase::Backup_external_geometric_data
protected

Remember if the element includes external geometric data when used in non-projection mode (this is temporarily disabled during the projection)

Referenced by oomph::ProjectableElement< ELEMENT >::disable_projection(), and oomph::ProjectableElement< ELEMENT >::enable_projection().

◆ Backup_external_interaction_data

bool oomph::ProjectableElementBase::Backup_external_interaction_data
protected

Remember if the element includes external data when used in non-projection mode (this is temporarily disabled during the projection)

Referenced by oomph::ProjectableElement< ELEMENT >::disable_projection(), and oomph::ProjectableElement< ELEMENT >::enable_projection().

◆ Backup_ninteraction

unsigned oomph::ProjectableElementBase::Backup_ninteraction
protected

Store number of "external" interactions that were assigned to the element before doing the projection.

Referenced by oomph::ProjectableElement< ELEMENT >::disable_projection(), and oomph::ProjectableElement< ELEMENT >::enable_projection().

◆ Do_projection

bool oomph::ProjectableElementBase::Do_projection
protected

◆ Projected_coordinate

◆ Projected_field

◆ Projected_lagrangian

◆ Projection_type

◆ Time_level_for_projection


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