Public Member Functions | Private Member Functions | Private Attributes | List of all members
oomph::VolumeConstraintElement Class Reference

A class that is used to implement the constraint that the fluid volume in a region bounded by associated FaceElements (attached, e.g., to the mesh boundaries that enclose a bubble) must take a specific value. This GeneralisedElement is used only to store the desired volume and a pointer to the (usually pressure) freedom that must be traded for the volume constraint. More...

#include <constrained_volume_elements.h>

Inheritance diagram for oomph::VolumeConstraintElement:

Public Member Functions

 VolumeConstraintElement (double *prescribed_volume_pt)
 Constructor: Pass pointer to target volume. "Pressure" value that "traded" for the volume contraint is created internally (as a Data item with a single pressure value) More...
 
 VolumeConstraintElement (double *prescribed_volume_pt, Data *p_traded_data_pt, const unsigned &index_of_traded_pressure)
 Constructor: Pass pointer to target volume, pointer to Data item whose value specified by index_of_traded_pressure represents the "Pressure" value that "traded" for the volume contraint. The Data is stored as external Data for this element. More...
 
 ~VolumeConstraintElement ()
 Empty destructor. More...
 
Data * p_traded_data_pt ()
 Access to Data that contains the traded pressure. More...
 
double p_traded ()
 Return the traded pressure value. More...
 
unsigned index_of_traded_pressure ()
 Return the index of Data object at which the traded pressure is stored. More...
 
void fill_in_contribution_to_residuals (Vector< double > &residuals)
 Fill in the residuals for the volume constraint. More...
 
void fill_in_contribution_to_jacobian (Vector< double > &residuals, DenseMatrix< double > &jacobian)
 Fill in the residuals and jacobian for the volume constraint. More...
 
void fill_in_contribution_to_jacobian_and_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &jacobian, DenseMatrix< double > &mass_matrix)
 Fill in the residuals, jacobian and mass matrix for the volume constraint. More...
 

Private Member Functions

int ptraded_local_eqn ()
 The local eqn number for the traded pressure. More...
 
void fill_in_generic_contribution_to_residuals_volume_constraint (Vector< double > &residuals)
 Fill in the residuals for the volume constraint. More...
 

Private Attributes

double * Prescribed_volume_pt
 Pointer to the desired value of the volume. More...
 
unsigned External_or_internal_data_index_of_traded_pressure
 The Data that contains the traded pressure is stored as external or internal Data for the element. What is its index in these containers? More...
 
bool Traded_pressure_stored_as_internal_data
 The Data that contains the traded pressure is stored as external or internal Data for the element. Which one? More...
 
unsigned Index_of_traded_pressure_value
 Index of the value in traded pressure data that corresponds to the traded pressure. More...
 

Detailed Description

A class that is used to implement the constraint that the fluid volume in a region bounded by associated FaceElements (attached, e.g., to the mesh boundaries that enclose a bubble) must take a specific value. This GeneralisedElement is used only to store the desired volume and a pointer to the (usually pressure) freedom that must be traded for the volume constraint.

Definition at line 65 of file constrained_volume_elements.h.

Constructor & Destructor Documentation

◆ VolumeConstraintElement() [1/2]

oomph::VolumeConstraintElement::VolumeConstraintElement ( double *  prescribed_volume_pt)

Constructor: Pass pointer to target volume. "Pressure" value that "traded" for the volume contraint is created internally (as a Data item with a single pressure value)

Definition at line 60 of file constrained_volume_elements.cc.

References External_or_internal_data_index_of_traded_pressure, Index_of_traded_pressure_value, Prescribed_volume_pt, and Traded_pressure_stored_as_internal_data.

◆ VolumeConstraintElement() [2/2]

oomph::VolumeConstraintElement::VolumeConstraintElement ( double *  prescribed_volume_pt,
Data *  p_traded_data_pt,
const unsigned &  index_of_traded_pressure 
)

Constructor: Pass pointer to target volume, pointer to Data item whose value specified by index_of_traded_pressure represents the "Pressure" value that "traded" for the volume contraint. The Data is stored as external Data for this element.

Definition at line 83 of file constrained_volume_elements.cc.

References External_or_internal_data_index_of_traded_pressure, index_of_traded_pressure(), Index_of_traded_pressure_value, p_traded_data_pt(), Prescribed_volume_pt, and Traded_pressure_stored_as_internal_data.

◆ ~VolumeConstraintElement()

oomph::VolumeConstraintElement::~VolumeConstraintElement ( )
inline

Empty destructor.

Definition at line 121 of file constrained_volume_elements.h.

Member Function Documentation

◆ fill_in_contribution_to_jacobian()

void oomph::VolumeConstraintElement::fill_in_contribution_to_jacobian ( Vector< double > &  residuals,
DenseMatrix< double > &  jacobian 
)
inline

Fill in the residuals and jacobian for the volume constraint.

Definition at line 159 of file constrained_volume_elements.h.

References fill_in_generic_contribution_to_residuals_volume_constraint().

◆ fill_in_contribution_to_jacobian_and_mass_matrix()

void oomph::VolumeConstraintElement::fill_in_contribution_to_jacobian_and_mass_matrix ( Vector< double > &  residuals,
DenseMatrix< double > &  jacobian,
DenseMatrix< double > &  mass_matrix 
)
inline

Fill in the residuals, jacobian and mass matrix for the volume constraint.

Definition at line 169 of file constrained_volume_elements.h.

References fill_in_generic_contribution_to_residuals_volume_constraint().

◆ fill_in_contribution_to_residuals()

void oomph::VolumeConstraintElement::fill_in_contribution_to_residuals ( Vector< double > &  residuals)
inline

Fill in the residuals for the volume constraint.

Definition at line 152 of file constrained_volume_elements.h.

References fill_in_generic_contribution_to_residuals_volume_constraint().

◆ fill_in_generic_contribution_to_residuals_volume_constraint()

void oomph::VolumeConstraintElement::fill_in_generic_contribution_to_residuals_volume_constraint ( Vector< double > &  residuals)
private

◆ index_of_traded_pressure()

unsigned oomph::VolumeConstraintElement::index_of_traded_pressure ( )
inline

Return the index of Data object at which the traded pressure is stored.

Definition at line 145 of file constrained_volume_elements.h.

References Index_of_traded_pressure_value.

Referenced by oomph::VolumeConstraintBoundingElement::set_volume_constraint_element(), and VolumeConstraintElement().

◆ p_traded()

double oomph::VolumeConstraintElement::p_traded ( )
inline

Return the traded pressure value.

Definition at line 139 of file constrained_volume_elements.h.

References Index_of_traded_pressure_value, and p_traded_data_pt().

◆ p_traded_data_pt()

Data* oomph::VolumeConstraintElement::p_traded_data_pt ( )
inline

◆ ptraded_local_eqn()

int oomph::VolumeConstraintElement::ptraded_local_eqn ( )
inlineprivate

Member Data Documentation

◆ External_or_internal_data_index_of_traded_pressure

unsigned oomph::VolumeConstraintElement::External_or_internal_data_index_of_traded_pressure
private

The Data that contains the traded pressure is stored as external or internal Data for the element. What is its index in these containers?

Definition at line 74 of file constrained_volume_elements.h.

Referenced by p_traded_data_pt(), ptraded_local_eqn(), and VolumeConstraintElement().

◆ Index_of_traded_pressure_value

unsigned oomph::VolumeConstraintElement::Index_of_traded_pressure_value
private

Index of the value in traded pressure data that corresponds to the traded pressure.

Definition at line 82 of file constrained_volume_elements.h.

Referenced by index_of_traded_pressure(), p_traded(), ptraded_local_eqn(), and VolumeConstraintElement().

◆ Prescribed_volume_pt

double* oomph::VolumeConstraintElement::Prescribed_volume_pt
private

Pointer to the desired value of the volume.

Definition at line 69 of file constrained_volume_elements.h.

Referenced by fill_in_generic_contribution_to_residuals_volume_constraint(), and VolumeConstraintElement().

◆ Traded_pressure_stored_as_internal_data

bool oomph::VolumeConstraintElement::Traded_pressure_stored_as_internal_data
private

The Data that contains the traded pressure is stored as external or internal Data for the element. Which one?

Definition at line 78 of file constrained_volume_elements.h.

Referenced by p_traded_data_pt(), ptraded_local_eqn(), and VolumeConstraintElement().


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