Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
oomph::HijackedElementBase Class Reference

HijackedElement base class that provides storage and access funcitons for pointers to the global equation numbers that are hijacked by the HijackedElement. A default residuals multiplier is also provided. More...

#include <hijacked_elements.h>

+ Inheritance diagram for oomph::HijackedElementBase:

Public Member Functions

 HijackedElementBase ()
 Constructor, initialise the pointer to the equation numbers for the storage to zero. More...
 
virtual ~HijackedElementBase ()
 Destructor, destroy the storage for the equation numbers. More...
 
void unhijack_all_data ()
 Reset the hijacked data pt, so that none of the equations in the element are hijacked. More...
 
const double & residual_multiplier () const
 Return the value of the residual multiplier. More...
 
double *& residual_multiplier_pt ()
 Return the pointer to the residual multiplier. More...
 

Protected Member Functions

void hijack_global_eqn (long *const &global_eqn_pt)
 Mark the global equation, addressed by global_eqn_pt, as hijacked by this element. More...
 
void unhijack_global_eqn (long *const &global_eqn_pt)
 The global equation, addressed by global_eqn_pt, is no longer hijacked by this element. More...
 

Protected Attributes

std::set< long * > * Hijacked_global_eqn_number_pt
 Pointer to a Set of pointers to the equation numbers that will be hijacked by this element. Note that these MUST be pointers because hijacking information is set BEFORE global equation numbers have been assigned. More...
 
Vector< int > * Hijacked_local_eqn_number_pt
 Pointer to a vector of integers containing the local equation numbers of any hijacked variables in the element. More...
 
double * Residual_multiplier_pt
 Pointer to a double that multiplies the contribution to the residuals from the original element. This is usually used as a homotopy parameter to permit a smooth transition between different types of boundary conditions, rather than switching them on or off abruptly. More...
 

Static Protected Attributes

static double Default_residual_multiplier = 0.0
 Static default value for the double that multiplies the original residuals. More...
 

Detailed Description

HijackedElement base class that provides storage and access funcitons for pointers to the global equation numbers that are hijacked by the HijackedElement. A default residuals multiplier is also provided.

Definition at line 44 of file hijacked_elements.h.

Constructor & Destructor Documentation

◆ HijackedElementBase()

oomph::HijackedElementBase::HijackedElementBase ( )
inline

Constructor, initialise the pointer to the equation numbers for the storage to zero.

Definition at line 49 of file hijacked_elements.h.

References Default_residual_multiplier, and Residual_multiplier_pt.

◆ ~HijackedElementBase()

oomph::HijackedElementBase::~HijackedElementBase ( )
virtual

Destructor, destroy the storage for the equation numbers.

Destructor that cleans up any memory allocated by the class.

Definition at line 41 of file hijacked_elements.cc.

References Hijacked_global_eqn_number_pt, and Hijacked_local_eqn_number_pt.

Member Function Documentation

◆ hijack_global_eqn()

void oomph::HijackedElementBase::hijack_global_eqn ( long *const &  global_eqn_pt)
protected

◆ residual_multiplier()

const double & oomph::HijackedElementBase::residual_multiplier ( ) const
inline

Return the value of the residual multiplier.

Definition at line 70 of file hijacked_elements.h.

References Residual_multiplier_pt.

Referenced by oomph::Hijacked< ELEMENT >::get_jacobian(), and oomph::Hijacked< ELEMENT >::get_residuals().

◆ residual_multiplier_pt()

double *& oomph::HijackedElementBase::residual_multiplier_pt ( )
inline

Return the pointer to the residual multiplier.

Definition at line 76 of file hijacked_elements.h.

References Residual_multiplier_pt.

◆ unhijack_all_data()

void oomph::HijackedElementBase::unhijack_all_data ( )
inline

Reset the hijacked data pt, so that none of the equations in the element are hijacked.

Definition at line 64 of file hijacked_elements.h.

References Hijacked_global_eqn_number_pt.

◆ unhijack_global_eqn()

void oomph::HijackedElementBase::unhijack_global_eqn ( long *const &  global_eqn_pt)
protected

The global equation, addressed by global_eqn_pt, is no longer hijacked by this element.

Definition at line 79 of file hijacked_elements.cc.

References Hijacked_global_eqn_number_pt.

Member Data Documentation

◆ Default_residual_multiplier

double oomph::HijackedElementBase::Default_residual_multiplier = 0.0
staticprotected

Static default value for the double that multiplies the original residuals.

Static default value of the multiplier for the original residuals The contribution to the total residuals is the product of the multiplier and the original value of the residuals.

Definition at line 102 of file hijacked_elements.h.

Referenced by HijackedElementBase().

◆ Hijacked_global_eqn_number_pt

std::set<long*>* oomph::HijackedElementBase::Hijacked_global_eqn_number_pt
protected

Pointer to a Set of pointers to the equation numbers that will be hijacked by this element. Note that these MUST be pointers because hijacking information is set BEFORE global equation numbers have been assigned.

Definition at line 86 of file hijacked_elements.h.

Referenced by oomph::Hijacked< ELEMENT >::assign_local_eqn_numbers(), hijack_global_eqn(), unhijack_all_data(), unhijack_global_eqn(), and ~HijackedElementBase().

◆ Hijacked_local_eqn_number_pt

Vector<int>* oomph::HijackedElementBase::Hijacked_local_eqn_number_pt
protected

Pointer to a vector of integers containing the local equation numbers of any hijacked variables in the element.

Definition at line 91 of file hijacked_elements.h.

Referenced by oomph::Hijacked< ELEMENT >::assign_local_eqn_numbers(), oomph::Hijacked< ELEMENT >::get_jacobian(), oomph::Hijacked< ELEMENT >::get_residuals(), and ~HijackedElementBase().

◆ Residual_multiplier_pt

double* oomph::HijackedElementBase::Residual_multiplier_pt
protected

Pointer to a double that multiplies the contribution to the residuals from the original element. This is usually used as a homotopy parameter to permit a smooth transition between different types of boundary conditions, rather than switching them on or off abruptly.

Definition at line 98 of file hijacked_elements.h.

Referenced by HijackedElementBase(), residual_multiplier(), and residual_multiplier_pt().


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