#include <spines.h>
Public Member Functions | |
Spine () | |
Default constructor: Create the Spine and initialise its height to zero. More... | |
Spine (const double &height) | |
Constructor: Create the Spine and initialise its height to the specified value. More... | |
Spine (const double &height, const Vector< Data *> &geom_data_pt) | |
Constructor: Create the Spine and initialise its height to the specified value. Store the vector of (pointers to) the additional geometric Data that is required during the node update operation for this Spine. More... | |
Spine (const double &height, const Vector< Data *> &geom_data_pt, const Vector< GeomObject *> &geom_object_pt) | |
Constructor: Create the Spine and initialise its height to the specified value. Store the vector of (pointers to) the additional geometric Data that is required during the node update operation; also store vector of (pointers to) GeomObjects that is required during the node update operation for this Spine. More... | |
~Spine () | |
Destructor: Wipe Data object that stores the Spine height. All other objects (geometric Data and geometric objects) were created outside the Spine and must be deleted there. More... | |
double & | height () |
Access function to spine height. More... | |
Data *& | spine_height_pt () |
Access function to Data object that stores the spine height. More... | |
Data * | spine_height_pt () const |
Access function to Data object that stores the spine height (const version) More... | |
unsigned | ngeom_data () |
Number of geometric Data that is involved in the node update operations for this Spine. More... | |
void | set_geom_data_pt (const Vector< Data *> &geom_data_pt) |
Set vector of (pointers to) geometric Data that is involved in the node update operations for this Spine. Wipes any previously existing geometric Data. More... | |
void | add_geom_data_pt (Data *geom_data_pt) |
Add (pointer to) geometric Data that is involved in the node update operations for this Spine. More... | |
Data *& | geom_data_pt (const unsigned &i) |
Return i-th geometric Data that is involved in the node update operations for this Spine. More... | |
Data * | geom_data_pt (const unsigned &i) const |
Return i-th geometric Data that is involved in the node update operations for this Spine. Const version. More... | |
Vector< Data * > & | vector_geom_data_pt () |
Return the vector of geometric data. More... | |
unsigned | ngeom_object () |
Number of geometric objects that is involved in the node update operations for this Spine. More... | |
void | set_geom_object_pt (const Vector< GeomObject *> &geom_object_pt) |
Set vector of (pointers to) geometric objects that is involved in the node update operations for this Spine. More... | |
void | add_geom_object_pt (GeomObject *geom_object_pt) |
Add (pointer to) geometric object that is involved in the node update operations for this Spine. More... | |
GeomObject *& | geom_object_pt (const unsigned &i) |
Return i-th geometric object that is involved in the node update operations for this Spine. More... | |
GeomObject * | geom_object_pt (const unsigned &i) const |
Return i-th geometric object that is involved in the node update operations for this Spine. Const version. More... | |
Vector< GeomObject * > & | vector_geom_object_pt () |
Return the vector of all geometric objects that affect this spine. More... | |
unsigned | ngeom_parameter () |
Number of geometric parameters that are involved in the node update operations for this Spine. More... | |
void | set_geom_parameter (const Vector< double > &geom_parameter) |
Set vector of geometric parameters that are involved in the node update operations for this Spine. Wipes any previously existing geometric parameters. More... | |
void | add_geom_parameter (const double &geom_parameter) |
Add geometric parameter involved in the node update operations for this Spine. More... | |
double & | geom_parameter (const unsigned &i) |
Return i-th geometric parameter that is involved in the node update operations for this Spine. More... | |
const double & | geom_parameter (const unsigned &i) const |
Return i-th geometric parameter that is involved in the node update operations for this Spine. Const version. More... | |
Private Attributes | |
Vector< Data * > | Geom_data_pt |
Data that stores the spine height. More... | |
Vector< GeomObject * > | Geom_object_pt |
Vector that stores the pointers to geometric objects that is involved in the node update operation. More... | |
Vector< double > | Geom_parameter |
Vector that stores doubles that are used in the geometric updates. More... | |
Spines are used for algebraic node update operations in free-surface fluid problems: They form the back-bones along which nodes in a a free-surface mesh are located. Typically, the free surface is located at the "end" of the spine; the nodes in the interior of the mesh are located at fixed fractions along the spine. The key Data member of the Spine object is its "height" – usually an unknown in the problem – which is used by the SpineNode's node update function to update the SpineNode's position.
In more complex problems (such as the case where a fluid layer is deposited on an elastic body), the node update function can depend on additional information, such as the GeomObject representation of the elastic body, and additional Data objects wich specify the position on the GeomObject from which the Spine emanates. The Spine class therefore provides storage for pointers to GeomObjects and storage for any additional geometric Data that may be required during node update operations.
|
inline |
Default constructor: Create the Spine and initialise its height to zero.
Definition at line 76 of file spines.h.
References Geom_data_pt.
|
inline |
Constructor: Create the Spine and initialise its height to the specified value.
Definition at line 85 of file spines.h.
References Geom_data_pt.
|
inline |
Constructor: Create the Spine and initialise its height to the specified value. Store the vector of (pointers to) the additional geometric Data that is required during the node update operation; also store vector of (pointers to) GeomObjects that is required during the node update operation for this Spine.
Definition at line 123 of file spines.h.
References Geom_data_pt, and i.
|
inline |
|
inline |
Add (pointer to) geometric Data that is involved in the node update operations for this Spine.
Definition at line 196 of file spines.h.
References Geom_data_pt.
|
inline |
Add (pointer to) geometric object that is involved in the node update operations for this Spine.
Definition at line 230 of file spines.h.
References Geom_object_pt.
|
inline |
Add geometric parameter involved in the node update operations for this Spine.
Definition at line 262 of file spines.h.
References Geom_parameter.
|
inline |
Return i-th geometric Data that is involved in the node update operations for this Spine.
Definition at line 203 of file spines.h.
References Geom_data_pt, and i.
Referenced by oomph::SpineNode::all_geom_data_pt().
|
inline |
|
inline |
Return i-th geometric object that is involved in the node update operations for this Spine.
Definition at line 237 of file spines.h.
References Geom_object_pt, and i.
Referenced by oomph::SpineNode::all_geom_object_pt(), oomph::ChannelSpineMesh< ELEMENT >::spine_node_update(), oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::spine_node_update_channel(), oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::spine_node_update_film_lower(), oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::spine_node_update_film_upper(), oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::spine_node_update_horizontal_transition_lower(), oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::spine_node_update_horizontal_transition_upper(), oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::spine_node_update_vertical_transition_lower(), and oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::spine_node_update_vertical_transition_upper().
|
inline |
Return i-th geometric object that is involved in the node update operations for this Spine. Const version.
Definition at line 241 of file spines.h.
References Geom_object_pt, and i.
|
inline |
Return i-th geometric parameter that is involved in the node update operations for this Spine.
Definition at line 267 of file spines.h.
References Geom_parameter, and i.
Referenced by set_geom_parameter(), oomph::ChannelSpineMesh< ELEMENT >::spine_node_update(), oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::spine_node_update_channel(), oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::spine_node_update_film_lower(), oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::spine_node_update_film_upper(), oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::spine_node_update_horizontal_transition_lower(), oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::spine_node_update_horizontal_transition_upper(), oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::spine_node_update_vertical_transition_lower(), and oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::spine_node_update_vertical_transition_upper().
|
inline |
Return i-th geometric parameter that is involved in the node update operations for this Spine. Const version.
Definition at line 272 of file spines.h.
References Geom_parameter, and i.
|
inline |
Access function to spine height.
Definition at line 158 of file spines.h.
References Geom_data_pt.
Referenced by oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::BrethertonSpineMesh(), oomph::ChannelSpineMesh< ELEMENT >::build_channel_spine_mesh(), oomph::SpineNode::h(), and oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::reposition_spines().
|
inline |
Number of geometric Data that is involved in the node update operations for this Spine.
Definition at line 179 of file spines.h.
References Geom_data_pt.
Referenced by oomph::SpineElement< FaceGeometry< ELEMENT > >::complete_setup_of_dependencies(), oomph::SpineNode::ngeom_data(), and oomph::SpineElement< FaceGeometry< ELEMENT > >::spine_local_eqn().
|
inline |
Number of geometric objects that is involved in the node update operations for this Spine.
Definition at line 214 of file spines.h.
References Geom_object_pt.
Referenced by oomph::SpineNode::ngeom_object().
|
inline |
Number of geometric parameters that are involved in the node update operations for this Spine.
Definition at line 252 of file spines.h.
References Geom_parameter.
|
inline |
Set vector of (pointers to) geometric objects that is involved in the node update operations for this Spine.
Definition at line 218 of file spines.h.
References Geom_object_pt, and i.
Referenced by oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::BrethertonSpineMesh(), oomph::ChannelSpineMesh< ELEMENT >::build_channel_spine_mesh(), and oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::reposition_spines().
|
inline |
Set vector of geometric parameters that are involved in the node update operations for this Spine. Wipes any previously existing geometric parameters.
Definition at line 257 of file spines.h.
References geom_parameter(), and Geom_parameter.
Referenced by oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::BrethertonSpineMesh(), oomph::ChannelSpineMesh< ELEMENT >::build_channel_spine_mesh(), and oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::reposition_spines().
|
inline |
Access function to Data object that stores the spine height.
Definition at line 164 of file spines.h.
References Geom_data_pt.
Referenced by oomph::SpineMesh::assign_global_spine_eqn_numbers(), oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::BrethertonSpineMesh(), oomph::ChannelSpineMesh< ELEMENT >::build_channel_spine_mesh(), oomph::SpineElement< FaceGeometry< ELEMENT > >::complete_setup_of_dependencies(), oomph::SpineMesh::describe_spine_dofs(), oomph::SpineMesh::dump(), oomph::BrethertonSpineMesh< ELEMENT, INTERFACE_ELEMENT >::pin_all_spines(), oomph::SpineMesh::read(), and oomph::SpineMesh::set_spine_time_stepper().
|
inline |
Access function to Data object that stores the spine height (const version)
Definition at line 171 of file spines.h.
References Geom_data_pt.
Return the vector of geometric data.
Definition at line 210 of file spines.h.
References Geom_data_pt.
|
inline |
Return the vector of all geometric objects that affect this spine.
Definition at line 248 of file spines.h.
References Geom_object_pt.
Data that stores the spine height.
Vector that stores the pointers to additional geometric Data
Definition at line 282 of file spines.h.
Referenced by add_geom_data_pt(), oomph::SpineElement< FaceGeometry< ELEMENT > >::complete_setup_of_dependencies(), geom_data_pt(), height(), ngeom_data(), set_geom_data_pt(), Spine(), spine_height_pt(), vector_geom_data_pt(), and ~Spine().
|
private |
Vector that stores the pointers to geometric objects that is involved in the node update operation.
Definition at line 286 of file spines.h.
Referenced by add_geom_object_pt(), geom_object_pt(), ngeom_object(), set_geom_object_pt(), and vector_geom_object_pt().
|
private |
Vector that stores doubles that are used in the geometric updates.
Definition at line 289 of file spines.h.
Referenced by add_geom_parameter(), geom_parameter(), ngeom_parameter(), and set_geom_parameter().