Public Member Functions | Protected Member Functions | List of all members
oomph::LineFluidInterfaceBoundingElement Class Reference

Specialisation of the interface boundary constraint to a line. More...

#include <interface_elements.h>

Inheritance diagram for oomph::LineFluidInterfaceBoundingElement:
oomph::FluidInterfaceBoundingElement oomph::ElasticLineFluidInterfaceBoundingElement< ELEMENT > oomph::SpineLineFluidInterfaceBoundingElement< ELEMENT > oomph::BoundingElementType< ElasticUpdateFluidInterfaceElement< FluidInterfaceElement, SurfaceDerivatives, ELEMENT > > oomph::BoundingElementType< SpineUpdateFluidInterfaceElement< FluidInterfaceElement, SurfaceDerivatives, ELEMENT > > oomph::BoundingElementType< SpineUpdateFluidInterfaceElement< SurfactantTransportInterfaceElement, SurfaceDerivatives, ELEMENT > >

Public Member Functions

 LineFluidInterfaceBoundingElement ()
 Constructor. More...
 
- Public Member Functions inherited from oomph::FluidInterfaceBoundingElement
 FluidInterfaceBoundingElement ()
 Constructor. More...
 
WallUnitNormalFctPtwall_unit_normal_fct_pt ()
 Access function: Pointer to wall unit normal function. More...
 
WallUnitNormalFctPt wall_unit_normal_fct_pt () const
 Access function: Pointer to wall unit normal function. Const version. More...
 
Vector< unsigned > & u_index_interface_boundary ()
 Access for nodal index at which the velocity components are stored. More...
 
void set_contact_angle (double *const &angle_pt, const bool &strong=true)
 Set a pointer to the desired contact angle. Optional boolean (defaults to true) chooses strong imposition via hijacking (true) or weak imposition via addition to momentum equation (false). The default strong imposition is appropriate for static contact angle problems. More...
 
double *& contact_angle_pt ()
 Access function to the pointer specifying the prescribed contact angle. More...
 
double *& ca_pt ()
 Access function to the pointer specifying the capillary number. More...
 
double ca ()
 Return the value of the capillary number. More...
 
double & contact_angle ()
 Return value of the contact angle. More...
 
void fill_in_contribution_to_residuals (Vector< double > &residuals)
 Calculate the residuals. More...
 
virtual void add_additional_residual_contributions_interface_boundary (Vector< double > &residuals, DenseMatrix< double > &jacobian, const unsigned &flag, const Shape &psif, const DShape &dpsifds, const Vector< double > &interpolated_n, const double &W)
 Empty helper function to calculate the additional contributions arising from the node update strategy to the Jacobian within the integration loop. This will be overloaded by elements that require contributions to their underlying equations from boundary integrals. The shape functions, their derivatives w.r.t. to the local coordinates, the unit normal and integral weight are passed in so that they do not have to be recalculated. More...
 
void output (std::ostream &outfile)
 Overload the output function. More...
 
void output (std::ostream &outfile, const unsigned &n_plot)
 Output function. More...
 
void output (FILE *file_pt)
 Overload the C-style output function. More...
 
void output (FILE *file_pt, const unsigned &n_plot)
 C-style Output function. More...
 

Protected Member Functions

void fill_in_generic_residual_contribution_interface_boundary (Vector< double > &residuals, DenseMatrix< double > &jacobian, unsigned flag)
 Overload the helper function to calculate the residuals and (if flag==true) the Jacobian – this function only deals with the part of the Jacobian that can be handled generically. Specific additional contributions may be provided in add_additional_residual_contributions_interface_boundary() More...
 
- Protected Member Functions inherited from oomph::FluidInterfaceBoundingElement
virtual int kinematic_local_eqn (const unsigned &n)=0
 Function that is used to determine the local equation number of the kinematic equation associated with the nodes of the element This must be overloaded depending on the node update scheme. More...
 
void wall_unit_normal (const Vector< double > &x, Vector< double > &normal)
 Function that returns the unit normal of the bounding wall directed out of the fluid. More...
 
void update_in_external_fd (const unsigned &i)
 The geometric data of the parent element is included as external data and so a (bulk) node update must take place after the variation of any of this external data. More...
 
void reset_in_external_fd (const unsigned &i)
 The only external data are these geometric data so We can omit the reset function (relying on the next update. More...
 
void reset_after_external_fd ()
 We require a final node update in the bulk element after all finite differencing. More...
 

Additional Inherited Members

- Protected Attributes inherited from oomph::FluidInterfaceBoundingElement
unsigned Contact_angle_flag
 Flag used to determine whether the contact angle is to be used (0 if not), and whether it will be applied weakly as a force term in the momentum equations (1) or by hijacking the kinematic condition (2). More...
 
Vector< unsigned > U_index_interface_boundary
 Index at which the i-th velocity component is stored in the element's nodes. More...
 

Detailed Description

Specialisation of the interface boundary constraint to a line.

Definition at line 296 of file interface_elements.h.

Constructor & Destructor Documentation

◆ LineFluidInterfaceBoundingElement()

oomph::LineFluidInterfaceBoundingElement::LineFluidInterfaceBoundingElement ( )
inline

Constructor.

Definition at line 309 of file interface_elements.h.

Member Function Documentation

◆ fill_in_generic_residual_contribution_interface_boundary()

void oomph::LineFluidInterfaceBoundingElement::fill_in_generic_residual_contribution_interface_boundary ( Vector< double > &  residuals,
DenseMatrix< double > &  jacobian,
unsigned  flag 
)
protectedvirtual

Overload the helper function to calculate the residuals and (if flag==true) the Jacobian – this function only deals with the part of the Jacobian that can be handled generically. Specific additional contributions may be provided in add_additional_residual_contributions_interface_boundary()

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

Add contribution to element's residual vector and Jacobian

Implements oomph::FluidInterfaceBoundingElement.

Definition at line 223 of file interface_elements.cc.

References oomph::FluidInterfaceBoundingElement::add_additional_residual_contributions_interface_boundary(), oomph::FluidInterfaceBoundingElement::ca(), oomph::FluidInterfaceBoundingElement::contact_angle(), oomph::FluidInterfaceBoundingElement::Contact_angle_flag, oomph::FluidInterfaceBoundingElement::kinematic_local_eqn(), oomph::FluidInterfaceBoundingElement::U_index_interface_boundary, and oomph::FluidInterfaceBoundingElement::wall_unit_normal().

Referenced by oomph::SpineLineFluidInterfaceBoundingElement< ELEMENT >::fill_in_contribution_to_jacobian(), and oomph::ElasticLineFluidInterfaceBoundingElement< ELEMENT >::fill_in_contribution_to_jacobian().


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