Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT > Class Template Reference

//////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// More...

#include <pml_helmholtz_time_harmonic_linear_elasticity_interaction.h>

Inheritance diagram for oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >:

Public Member Functions

 PMLHelmholtzFluxFromNormalDisplacementBCElement (FiniteElement *const &bulk_el_pt, const int &face_index)
 Constructor, takes the pointer to the "bulk" element and the face index identifying the face to which the element is attached. More...
 
 PMLHelmholtzFluxFromNormalDisplacementBCElement (const PMLHelmholtzFluxFromNormalDisplacementBCElement &dummy)=delete
 Broken copy constructor. More...
 
void fill_in_contribution_to_residuals (Vector< double > &residuals)
 Broken assignment operator. More...
 
void fill_in_contribution_to_jacobian (Vector< double > &residuals, DenseMatrix< double > &jacobian)
 Add the element's contribution to its residual vector and its Jacobian matrix. More...
 
void output (std::ostream &outfile)
 Output function. More...
 
void output (std::ostream &outfile, const unsigned &n_plot)
 Output function: flux etc at Gauss points; n_plot is ignored. More...
 
void output (FILE *file_pt)
 C-style output function. More...
 
void output (FILE *file_pt, const unsigned &n_plot)
 C-style output function. More...
 

Protected Member Functions

double shape_and_test (const Vector< double > &s, Shape &psi, Shape &test) const
 Function to compute the shape and test functions and to return the Jacobian of mapping between local and global (Eulerian) coordinates. More...
 
double shape_and_test_at_knot (const unsigned &ipt, Shape &psi, Shape &test) const
 Function to compute the shape and test functions and to return the Jacobian of mapping between local and global (Eulerian) coordinates. More...
 

Private Member Functions

void fill_in_generic_residual_contribution_helmholtz_flux_from_displacement (Vector< double > &residuals, DenseMatrix< double > &jacobian, const unsigned &flag)
 Add the element's contribution to its residual vector. flag=1(or 0): do (or don't) compute the contribution to the Jacobian as well. More...
 

Private Attributes

unsigned Dim
 The spatial dimension of the problem. More...
 
std::complex< unsigned > U_index_helmholtz_from_displacement
 The index at which the unknown is stored at the nodes. More...
 

Detailed Description

template<class HELMHOLTZ_BULK_ELEMENT, class ELASTICITY_BULK_ELEMENT>
class oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >

//////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////

A class for elements that allow the imposition of an prescribed flux (determined from the normal displacements of an adjacent linearly elastic solid. Normal derivative for displacement potential is given by normal displacement of adjacent solid multiplies by FSI parameter (q = k^2 B/E). The element geometry is obtained from the FaceGeometry<ELEMENT> policy class.

Definition at line 681 of file pml_helmholtz_time_harmonic_linear_elasticity_interaction.h.

Constructor & Destructor Documentation

◆ PMLHelmholtzFluxFromNormalDisplacementBCElement() [1/2]

template<class HELMHOLTZ_BULK_ELEMENT , class ELASTICITY_BULK_ELEMENT >
oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::PMLHelmholtzFluxFromNormalDisplacementBCElement ( FiniteElement *const &  bulk_el_pt,
const int &  face_index 
)

Constructor, takes the pointer to the "bulk" element and the face index identifying the face to which the element is attached.

/////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////

Constructor, takes the pointer to the "bulk" element, and the face index that identifies the face of the bulk element to which this face element is to be attached.

Definition at line 889 of file pml_helmholtz_time_harmonic_linear_elasticity_interaction.h.

References oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::Dim, and oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::U_index_helmholtz_from_displacement.

◆ PMLHelmholtzFluxFromNormalDisplacementBCElement() [2/2]

template<class HELMHOLTZ_BULK_ELEMENT , class ELASTICITY_BULK_ELEMENT >
oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::PMLHelmholtzFluxFromNormalDisplacementBCElement ( const PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT > &  dummy)
delete

Broken copy constructor.

Member Function Documentation

◆ fill_in_contribution_to_jacobian()

template<class HELMHOLTZ_BULK_ELEMENT , class ELASTICITY_BULK_ELEMENT >
void oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::fill_in_contribution_to_jacobian ( Vector< double > &  residuals,
DenseMatrix< double > &  jacobian 
)
inline

◆ fill_in_contribution_to_residuals()

template<class HELMHOLTZ_BULK_ELEMENT , class ELASTICITY_BULK_ELEMENT >
void oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::fill_in_contribution_to_residuals ( Vector< double > &  residuals)
inline

◆ fill_in_generic_residual_contribution_helmholtz_flux_from_displacement()

template<class HELMHOLTZ_BULK_ELEMENT , class ELASTICITY_BULK_ELEMENT >
void oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::fill_in_generic_residual_contribution_helmholtz_flux_from_displacement ( Vector< double > &  residuals,
DenseMatrix< double > &  jacobian,
const unsigned &  flag 
)
private

Add the element's contribution to its residual vector. flag=1(or 0): do (or don't) compute the contribution to the Jacobian as well.

Helper function to compute the element's residual vector and the Jacobian matrix.

Definition at line 1047 of file pml_helmholtz_time_harmonic_linear_elasticity_interaction.h.

Referenced by oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::fill_in_contribution_to_jacobian(), and oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::fill_in_contribution_to_residuals().

◆ output() [1/4]

template<class HELMHOLTZ_BULK_ELEMENT , class ELASTICITY_BULK_ELEMENT >
void oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::output ( FILE *  file_pt)
inline

C-style output function.

Definition at line 800 of file pml_helmholtz_time_harmonic_linear_elasticity_interaction.h.

◆ output() [2/4]

template<class HELMHOLTZ_BULK_ELEMENT , class ELASTICITY_BULK_ELEMENT >
void oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::output ( FILE *  file_pt,
const unsigned &  n_plot 
)
inline

C-style output function.

Definition at line 806 of file pml_helmholtz_time_harmonic_linear_elasticity_interaction.h.

◆ output() [3/4]

template<class HELMHOLTZ_BULK_ELEMENT , class ELASTICITY_BULK_ELEMENT >
void oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::output ( std::ostream &  outfile)
inline

Output function.

Definition at line 730 of file pml_helmholtz_time_harmonic_linear_elasticity_interaction.h.

◆ output() [4/4]

template<class HELMHOLTZ_BULK_ELEMENT , class ELASTICITY_BULK_ELEMENT >
void oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::output ( std::ostream &  outfile,
const unsigned &  n_plot 
)
inline

◆ shape_and_test()

template<class HELMHOLTZ_BULK_ELEMENT , class ELASTICITY_BULK_ELEMENT >
double oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::shape_and_test ( const Vector< double > &  s,
Shape &  psi,
Shape &  test 
) const
inlineprotected

Function to compute the shape and test functions and to return the Jacobian of mapping between local and global (Eulerian) coordinates.

Definition at line 816 of file pml_helmholtz_time_harmonic_linear_elasticity_interaction.h.

◆ shape_and_test_at_knot()

template<class HELMHOLTZ_BULK_ELEMENT , class ELASTICITY_BULK_ELEMENT >
double oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::shape_and_test_at_knot ( const unsigned &  ipt,
Shape &  psi,
Shape &  test 
) const
inlineprotected

Function to compute the shape and test functions and to return the Jacobian of mapping between local and global (Eulerian) coordinates.

Definition at line 840 of file pml_helmholtz_time_harmonic_linear_elasticity_interaction.h.

Member Data Documentation

◆ Dim

template<class HELMHOLTZ_BULK_ELEMENT , class ELASTICITY_BULK_ELEMENT >
unsigned oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::Dim
private

◆ U_index_helmholtz_from_displacement

template<class HELMHOLTZ_BULK_ELEMENT , class ELASTICITY_BULK_ELEMENT >
std::complex<unsigned> oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::U_index_helmholtz_from_displacement
private

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