Public Member Functions | Private Attributes | List of all members
oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT > Class Template Reference

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

#include <multi_domain_boussinesq_elements.h>

Inheritance diagram for oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >:

Public Member Functions

 NavierStokesBoussinesqElement ()
 Constructor: call the underlying constructors and initialise the pointer to the Rayleigh number to point to the default value of 0.0. More...
 
const double & ra () const
 Access function for the Rayleigh number (const version) More...
 
double *& ra_pt ()
 Access function for the pointer to the Rayleigh number. More...
 
void get_body_force_nst (const double &time, const unsigned &ipt, const Vector< double > &s, const Vector< double > &x, Vector< double > &result)
 Overload get_body_force_nst to get the temperature "body force" from the "source" AdvectionDiffusion element via current integration point. More...
 
void get_dbody_force_nst_dexternal_element_data (const unsigned &ipt, DenseMatrix< double > &result, Vector< unsigned > &global_eqn_number)
 Fill in the derivatives of the body force with respect to the external unknowns. More...
 
void fill_in_contribution_to_jacobian (Vector< double > &residuals, DenseMatrix< double > &jacobian)
 Compute the element's residual vector and the Jacobian matrix. Jacobian is computed by finite-differencing or analytically. More...
 
void fill_in_contribution_to_jacobian_and_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &jacobian, DenseMatrix< double > &mass_matrix)
 Add the element's contribution to its residuals vector, jacobian matrix and mass matrix. More...
 
void fill_in_off_diagonal_block_analytic (Vector< double > &residuals, DenseMatrix< double > &jacobian)
 Compute the contribution of the external degrees of freedom (temperatures) on the Navier-Stokes equations. More...
 

Private Attributes

double * Ra_pt
 Pointer to a private data member, the Rayleigh number. More...
 

Detailed Description

template<class NST_ELEMENT, class AD_ELEMENT>
class oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >

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

Build NavierStokesBoussinesqElement that inherits from ElementWithExternalElement so that it can "communicate" with AdvectionDiffusionElementWithExternalElement

Definition at line 815 of file multi_domain_boussinesq_elements.h.

Constructor & Destructor Documentation

◆ NavierStokesBoussinesqElement()

template<class NST_ELEMENT , class AD_ELEMENT >
oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::NavierStokesBoussinesqElement ( )
inline

Constructor: call the underlying constructors and initialise the pointer to the Rayleigh number to point to the default value of 0.0.

Definition at line 827 of file multi_domain_boussinesq_elements.h.

References oomph::MultiDomainBoussinesqHelper::Default_Physical_Constant_Value, and oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::Ra_pt.

Member Function Documentation

◆ fill_in_contribution_to_jacobian()

template<class NST_ELEMENT , class AD_ELEMENT >
void oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::fill_in_contribution_to_jacobian ( Vector< double > &  residuals,
DenseMatrix< double > &  jacobian 
)
inline

Compute the element's residual vector and the Jacobian matrix. Jacobian is computed by finite-differencing or analytically.

Definition at line 867 of file multi_domain_boussinesq_elements.h.

References oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::fill_in_off_diagonal_block_analytic().

◆ fill_in_contribution_to_jacobian_and_mass_matrix()

template<class NST_ELEMENT , class AD_ELEMENT >
void oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::fill_in_contribution_to_jacobian_and_mass_matrix ( Vector< double > &  residuals,
DenseMatrix< double > &  jacobian,
DenseMatrix< double > &  mass_matrix 
)
inline

Add the element's contribution to its residuals vector, jacobian matrix and mass matrix.

Definition at line 889 of file multi_domain_boussinesq_elements.h.

◆ fill_in_off_diagonal_block_analytic()

template<class NST_ELEMENT , class AD_ELEMENT >
void oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::fill_in_off_diagonal_block_analytic ( Vector< double > &  residuals,
DenseMatrix< double > &  jacobian 
)
inline

Compute the contribution of the external degrees of freedom (temperatures) on the Navier-Stokes equations.

Definition at line 903 of file multi_domain_boussinesq_elements.h.

References oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::get_dbody_force_nst_dexternal_element_data().

Referenced by oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::fill_in_contribution_to_jacobian().

◆ get_body_force_nst()

template<class NST_ELEMENT , class AD_ELEMENT >
void oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::get_body_force_nst ( const double &  time,
const unsigned &  ipt,
const Vector< double > &  s,
const Vector< double > &  x,
Vector< double > &  result 
)

Overload get_body_force_nst to get the temperature "body force" from the "source" AdvectionDiffusion element via current integration point.

Definition at line 1002 of file multi_domain_boussinesq_elements.h.

◆ get_dbody_force_nst_dexternal_element_data()

template<class NST_ELEMENT , class AD_ELEMENT >
void oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::get_dbody_force_nst_dexternal_element_data ( const unsigned &  ipt,
DenseMatrix< double > &  result,
Vector< unsigned > &  global_eqn_number 
)

Fill in the derivatives of the body force with respect to the external unknowns.

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

Fill in the derivatives of the body force with respect to the external unknowns in the Navier–Stokes equations

Definition at line 1376 of file multi_domain_boussinesq_elements.h.

Referenced by oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::fill_in_off_diagonal_block_analytic().

◆ ra()

template<class NST_ELEMENT , class AD_ELEMENT >
const double& oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::ra ( ) const
inline

Access function for the Rayleigh number (const version)

Definition at line 837 of file multi_domain_boussinesq_elements.h.

References oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::Ra_pt.

◆ ra_pt()

template<class NST_ELEMENT , class AD_ELEMENT >
double*& oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::ra_pt ( )
inline

Access function for the pointer to the Rayleigh number.

Definition at line 843 of file multi_domain_boussinesq_elements.h.

References oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::Ra_pt.

Member Data Documentation

◆ Ra_pt

template<class NST_ELEMENT , class AD_ELEMENT >
double* oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::Ra_pt
private

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