31#ifndef OOMPH_FACE_ELEMENT_AS_GEOMETRIC_OBJECT_HEADER
32#define OOMPH_FACE_ELEMENT_AS_GEOMETRIC_OBJECT_HEADER
36#include <oomph-lib-config.h>
58 template<
class ELEMENT>
106 const unsigned&
i)
const
124 std::ostringstream error_message;
126 <<
"FaceElementAsGeomObject::geom_data_pt() is deliberately broken\n"
127 <<
"as it does not depend on any geometric Data" << std::endl;
139 warn_message <<
"Warning: You have just called the empty function \n"
140 <<
"fill_in_contribution_to_jacobian() for a "
141 "FaceElementAsGeometricObject.\n"
142 <<
"These Elements should only be used to setup "
143 "interactions, so should\n"
144 <<
"not be included in any jacobian calculations\n";
148 "FaceElementAsGeometricObject::fill_in_contribution_to_jacobian()",
181 template<
class ELEMENT>
198 std::ostringstream error_message;
200 <<
"Failed to cast element1_pt to a FaceElementAsGeomObject"
209 std::ostringstream error_message;
211 <<
"Failed to cast element2_pt to a FaceElementAsGeomObject"
A class to do comparison of the elements by lexicographic ordering, based on the boundary coordinates...
int operator()(GeneralisedElement *const &element1_pt, GeneralisedElement *const &element2_pt)
The actual comparison operator.
A class that represents a collection of data; each Data object may contain many different individual ...
This is a base class for all elements that require external sources (e.g. FSI, multi-domain problems ...
void describe_local_dofs(std::ostream &out, const std::string &curr_string) const
Function to describe the local dofs of the element. The ostream specifies the output stream to which ...
Class that is used to create FaceElement from bulk elements and to provide these FaceElement with a g...
void describe_local_dofs(std::ostream &out, const std::string ¤t_string) const
Function to describe the local dofs of the element. The ostream specifies the output stream to which ...
Data * geom_data_pt(const unsigned &j)
Return pointer to the j-th Data item that the object's shape depends on. Object doesn't depend on any...
void fill_in_contribution_to_jacobian(Vector< double > &residuals, DenseMatrix< double > &jacobian)
Override fill in contribution to jacobian, nothing should be done.
FaceElementAsGeomObject(const FaceElementAsGeomObject &)=delete
Broken copy constructor.
void assign_all_generic_local_eqn_numbers(const bool &store_local_dof_pt)
Unique final overrider needed for assign_all_generic_local_eqn_numbers.
unsigned ngeom_data() const
How many items of Data does the shape of the object depend on? None! We're dealing with a pure geomet...
double zeta_nodal(const unsigned &n, const unsigned &k, const unsigned &i) const
Broken assignment operator.
FaceElementAsGeomObject(FiniteElement *const &element_pt, const int &face_index)
Constructor which takes a pointer to a "bulk" element, to which this element is attached....
FaceElements are elements that coincide with the faces of higher-dimensional "bulk" elements....
int & face_index()
Index of the face (a number that uniquely identifies the face in the element)
double zeta_nodal(const unsigned &n, const unsigned &k, const unsigned &i) const
In a FaceElement, the "global" intrinsic coordinate of the element along the boundary,...
FaceGeometry class definition: This policy class is used to allow construction of face elements that ...
A general Finite Element class.
unsigned dim() const
Return the spatial dimension of the element, i.e. the number of local coordinates required to paramet...
virtual double zeta_nodal(const unsigned &n, const unsigned &k, const unsigned &i) const
Specify the values of the "global" intrinsic coordinate, zeta, of a compound geometric object (a mesh...
virtual void build_face_element(const int &face_index, FaceElement *face_element_pt)
Function for building a lower dimensional FaceElement on the specified face of the FiniteElement....
unsigned nodal_dimension() const
Return the required Eulerian dimension of the nodes in this element.
A Generalised Element class.
virtual void assign_all_generic_local_eqn_numbers(const bool &store_local_dof_pt)
Assign all the local equation numbering schemes that can be applied generically for the element....
void set_nlagrangian_and_ndim(const unsigned &n_lagrangian, const unsigned &n_dim)
Set # of Lagrangian and Eulerian coordinates.
An OomphLibError object which should be thrown when an run-time error is encountered....
An OomphLibWarning object which should be created as a temporary object to issue a warning....
TAdvectionDiffusionReactionElement<NREAGENT,DIM,NNODE_1D> elements are isoparametric triangular DIM-d...
DRAIG: Change all instances of (SPATIAL_DIM) to (DIM-1).