GeneralCircle "upgraded" to a GeneralisedElement: Circular ring whose position is given by. More...
#include <circle_as_generalised_element.h>
Public Member Functions | |
ElasticallySupportedRingElement (const double &x_c, const double &y_c, const double &r) | |
Constructor: Build ring from doubles that describe the geometry: x and y positions of centre and the radius. Initialise stiffness to 1.0. By default, no load is set. | |
virtual | ~ElasticallySupportedRingElement () |
Destructor: | |
void | set_load_pt (Data *load_pt) |
Set pointer to Data object that specifies the "load" on the ElasticallySupportedRingElement. | |
double | load () |
"Load" acting on the ring | |
double & | k_stiff () |
Access function for the spring stiffness. | |
void | pin_yc () |
Pin the vertical displacement. | |
void | unpin_yc () |
Unpin the vertical displacement. | |
void | get_residuals (Vector< double > &residuals) |
Compute element residual vector (wrapper) | |
void | get_jacobian (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
Compute element residual Vector and element Jacobian matrix (wrapper) | |
![]() | |
GeneralCircle (const double &x_c, const double &y_c, const double &r) | |
Constructor: Pass x and y-coords of centre and radius (all pinned) | |
GeneralCircle (Data *geom_data_pt) | |
Alternative constructor: Pass x and y-coords of centre and radius (all as part of Data) | |
virtual | ~GeneralCircle () |
Destructor: Clean up if necessary. | |
void | position (const Vector< double > &zeta, Vector< double > &r) const |
Position Vector at Lagrangian coordinate zeta. | |
void | position (const unsigned &t, const Vector< double > &zeta, Vector< double > &r) const |
Position Vector at Lagrangian coordinate zeta at time level t (t=0: present; t>0: previous level). Steady object, so we simply forward the call to the steady version. | |
double & | x_c () |
Access function to x-coordinate of centre of circle. | |
double & | y_c () |
Access function to y-coordinate of centre of circle. | |
double & | R () |
Access function to radius of circle. | |
unsigned | ngeom_data () const |
How many items of Data does the shape of the object depend on? | |
Data * | geom_data_pt (const unsigned &j) |
Return pointer to the j-th Data item that the object's shape depends on. | |
Protected Member Functions | |
void | fill_in_generic_residual_contribution (Vector< double > &residuals, DenseMatrix< double > &jacobian, unsigned flag) |
Compute element residual Vector (only if flag=0) and also the element Jacobian matrix (if flag=1) | |
Private Attributes | |
double | K_stiff |
Stiffness of the ring's "elastic" support. | |
unsigned | External_load_index |
Index of the location of the load Data in the element's array of external data. | |
unsigned | Internal_geometric_data_index |
Index of the location of the geometric Data in the element's array of internal data. | |
bool | Load_data_has_been_set |
Flag to indicate that load data has been set. | |
Additional Inherited Members | |
![]() | |
Vector< Data * > | Geom_data_pt |
Vector of pointers to Data items that affects the object's shape. | |
bool | Must_clean_up |
Do I need to clean up? | |
GeneralCircle "upgraded" to a GeneralisedElement: Circular ring whose position is given by.
The ring's vertical position is determined by "pseudo elasticity":
This simulates the case where the centre of the ring is mounted on an elastic spring of stiffness and loaded by the force
The "load" is specified by the Data object
load_pt()
.
Definition at line 53 of file circle_as_generalised_element.h.
|
inline |
Constructor: Build ring from doubles that describe the geometry: x and y positions of centre and the radius. Initialise stiffness to 1.0. By default, no load is set.
Definition at line 62 of file circle_as_generalised_element.h.
References demo_fish_poisson(), oomph::GeneralCircle::Geom_data_pt, Internal_geometric_data_index, and oomph::GeneralCircle::Must_clean_up.
|
inlinevirtual |
Destructor:
Definition at line 86 of file circle_as_generalised_element.h.
|
inlineprotected |
Compute element residual Vector (only if flag=0) and also the element Jacobian matrix (if flag=1)
Definition at line 195 of file circle_as_generalised_element.h.
References demo_fish_poisson(), External_load_index, Internal_geometric_data_index, K_stiff, load(), and oomph::GeneralCircle::y_c().
Referenced by get_jacobian(), and get_residuals().
|
inline |
Compute element residual Vector and element Jacobian matrix (wrapper)
Definition at line 177 of file circle_as_generalised_element.h.
References demo_fish_poisson(), and fill_in_generic_residual_contribution().
Compute element residual vector (wrapper)
Definition at line 165 of file circle_as_generalised_element.h.
References demo_fish_poisson(), and fill_in_generic_residual_contribution().
|
inline |
Access function for the spring stiffness.
Definition at line 142 of file circle_as_generalised_element.h.
References K_stiff.
|
inline |
"Load" acting on the ring
Definition at line 126 of file circle_as_generalised_element.h.
References demo_fish_poisson(), External_load_index, and Load_data_has_been_set.
Referenced by fill_in_generic_residual_contribution().
|
inline |
Pin the vertical displacement.
Definition at line 146 of file circle_as_generalised_element.h.
References demo_fish_poisson(), and Internal_geometric_data_index.
Set pointer to Data object that specifies the "load" on the ElasticallySupportedRingElement.
Definition at line 96 of file circle_as_generalised_element.h.
References demo_fish_poisson(), External_load_index, and Load_data_has_been_set.
|
inline |
Unpin the vertical displacement.
Definition at line 155 of file circle_as_generalised_element.h.
References demo_fish_poisson(), and Internal_geometric_data_index.
|
private |
Index of the location of the load Data in the element's array of external data.
Definition at line 260 of file circle_as_generalised_element.h.
Referenced by fill_in_generic_residual_contribution(), load(), and set_load_pt().
|
private |
Index of the location of the geometric Data in the element's array of internal data.
Definition at line 264 of file circle_as_generalised_element.h.
Referenced by ElasticallySupportedRingElement(), fill_in_generic_residual_contribution(), pin_yc(), and unpin_yc().
|
private |
Stiffness of the ring's "elastic" support.
Definition at line 256 of file circle_as_generalised_element.h.
Referenced by fill_in_generic_residual_contribution(), and k_stiff().
|
private |
Flag to indicate that load data has been set.
Definition at line 267 of file circle_as_generalised_element.h.
Referenced by load(), and set_load_pt().