![]() |
|
#include <axisym_fvk_elements.h>
Public Member Functions | |
FSIAxisymFoepplvonKarmanElement () | |
Constructor. More... | |
virtual | ~FSIAxisymFoepplvonKarmanElement () |
Empty virtual destructor. More... | |
const double & | q () const |
double *& | q_pt () |
virtual unsigned | ngeom_data () const |
virtual Data * | geom_data_pt (const unsigned &j) |
void | position (const Vector< double > &zeta, Vector< double > &r) const |
void | position (const unsigned &t, const Vector< double > &zeta, Vector< double > &r) const |
void | dposition_dt (const Vector< double > &zeta, const unsigned &j, Vector< double > &drdt) |
virtual void | get_pressure_fvk (const unsigned &ipt, const double &r, double &pressure) const |
void | output_integration_points (std::ostream &outfile) |
Output integration points (for checking of fsi setup) More... | |
void | output_adjacent_fluid_elements (std::ostream &outfile, const unsigned &nplot) |
Output adjacent fluid elements (for checking of fsi setup) More... | |
void | update_before_external_interaction_geometric_fd () |
void | reset_after_external_interaction_geometric_fd () |
void | update_in_external_interaction_geometric_fd (const unsigned &i) |
void | reset_in_external_interaction_geometric_fd (const unsigned &i) |
void | node_update_adjacent_fluid_elements () |
void | output (std::ostream &outfile, const unsigned &n_plot) |
![]() | |
AxisymFoepplvonKarmanElement () | |
AxisymFoepplvonKarmanElement (const AxisymFoepplvonKarmanElement< NNODE_1D > &dummy)=delete | |
Broken copy constructor. More... | |
void | operator= (const AxisymFoepplvonKarmanElement< NNODE_1D > &)=delete |
Broken assignment operator. More... | |
unsigned | required_nvalue (const unsigned &n) const |
void | output (std::ostream &outfile) |
void | output (FILE *file_pt) |
void | output (FILE *file_pt, const unsigned &n_plot) |
void | output_fct (std::ostream &outfile, const unsigned &n_plot, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt) |
void | output_fct (std::ostream &outfile, const unsigned &n_plot, const double &time, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt) |
AxisymFoepplvonKarmanElement () | |
AxisymFoepplvonKarmanElement (const AxisymFoepplvonKarmanElement< NNODE_1D > &dummy)=delete | |
Broken copy constructor. More... | |
void | operator= (const AxisymFoepplvonKarmanElement< NNODE_1D > &)=delete |
Broken assignment operator. More... | |
unsigned | required_nvalue (const unsigned &n) const |
void | output (std::ostream &outfile) |
void | output (FILE *file_pt) |
void | output (FILE *file_pt, const unsigned &n_plot) |
void | output_fct (std::ostream &outfile, const unsigned &n_plot, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt) |
void | output_fct (std::ostream &outfile, const unsigned &n_plot, const double &time, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt) |
![]() | |
QElement () | |
Constructor. More... | |
QElement (const QElement &)=delete | |
Broken copy constructor. More... | |
void | shape (const Vector< double > &s, Shape &psi) const |
Broken assignment operator. More... | |
void | dshape_local (const Vector< double > &s, Shape &psi, DShape &dpsids) const |
Derivatives of shape functions for specific QElement<1,..> More... | |
void | d2shape_local (const Vector< double > &s, Shape &psi, DShape &dpsids, DShape &d2psids) const |
double | invert_jacobian_mapping (const DenseMatrix< double > &jacobian, DenseMatrix< double > &inverse_jacobian) const |
double | s_min () const |
Min. value of local coordinate. More... | |
double | s_max () const |
Max. value of local coordinate. More... | |
unsigned | nvertex_node () const |
Number of vertex nodes in the element. More... | |
Node * | vertex_node_pt (const unsigned &j) const |
Pointer to the j-th vertex node in the element. More... | |
void | local_coordinate_of_node (const unsigned &j, Vector< double > &s) const |
Get local coordinates of node j in the element; vector sets its own size. More... | |
void | local_fraction_of_node (const unsigned &j, Vector< double > &s_fraction) |
Get the local fraction of node j in the element. More... | |
double | local_one_d_fraction_of_node (const unsigned &n1d, const unsigned &i) |
Node * | get_node_at_local_coordinate (const Vector< double > &s) const |
Get the node at the specified local coordinate. More... | |
unsigned | nnode_1d () const |
Number of nodes along each element edge. More... | |
unsigned | nplot_points_paraview (const unsigned &nplot) const |
unsigned | nsub_elements_paraview (const unsigned &nplot) const |
void | write_paraview_output_offset_information (std::ofstream &file_out, const unsigned &nplot, unsigned &counter) const |
void | write_paraview_type (std::ofstream &file_out, const unsigned &nplot) const |
void | write_paraview_offsets (std::ofstream &file_out, const unsigned &nplot, unsigned &offset_sum) const |
void | output (std::ostream &outfile) |
Output. More... | |
void | output (std::ostream &outfile, const unsigned &n_plot) |
Output at n_plot points. More... | |
void | output (FILE *file_pt) |
C-style output. More... | |
void | output (FILE *file_pt, const unsigned &n_plot) |
C_style output at n_plot points. More... | |
void | get_s_plot (const unsigned &i, const unsigned &nplot, Vector< double > &s, const bool &use_equally_spaced_interior_sample_points=false) const |
std::string | tecplot_zone_string (const unsigned &nplot) const |
unsigned | nplot_points (const unsigned &nplot) const |
unsigned | get_bulk_node_number (const int &face_index, const unsigned &i) const |
int | face_outer_unit_normal_sign (const int &face_index) const |
Get the sign of the outer unit normal on the face given by face_index. More... | |
CoordinateMappingFctPt | face_to_bulk_coordinate_fct_pt (const int &face_index) const |
BulkCoordinateDerivativesFctPt | bulk_coordinate_derivatives_fct_pt (const int &face_index) const |
![]() | |
LineElementBase () | |
Constructor. Empty. More... | |
![]() | |
QElementBase () | |
Constructor: Initialise pointers to macro element reference coords. More... | |
QElementBase (const QElementBase &)=delete | |
Broken copy constructor. More... | |
virtual | ~QElementBase () |
Broken assignment operator. More... | |
bool | local_coord_is_valid (const Vector< double > &s) |
Check whether the local coordinate are valid or not. More... | |
void | move_local_coord_back_into_element (Vector< double > &s) const |
virtual void | set_macro_elem_pt (MacroElement *macro_elem_pt) |
double & | s_macro_ll (const unsigned &i) |
double & | s_macro_ur (const unsigned &i) |
double | s_macro_ll (const unsigned &i) const |
double | s_macro_ur (const unsigned &i) const |
void | get_x_from_macro_element (const Vector< double > &s, Vector< double > &x) const |
void | get_x_from_macro_element (const unsigned &t, const Vector< double > &s, Vector< double > &x) |
unsigned | nnode_on_face () const |
ElementGeometry::ElementGeometry | element_geometry () const |
It's a Q element! More... | |
![]() | |
QElementGeometricBase () | |
Empty default constructor. More... | |
QElementGeometricBase (const QElementGeometricBase &)=delete | |
Broken copy constructor. More... | |
![]() | |
void | set_dimension (const unsigned &dim) |
void | set_nodal_dimension (const unsigned &nodal_dim) |
void | set_nnodal_position_type (const unsigned &nposition_type) |
Set the number of types required to interpolate the coordinate. More... | |
void | set_n_node (const unsigned &n) |
int | nodal_local_eqn (const unsigned &n, const unsigned &i) const |
double | dJ_eulerian_at_knot (const unsigned &ipt, Shape &psi, DenseMatrix< double > &djacobian_dX) const |
FiniteElement () | |
Constructor. More... | |
virtual | ~FiniteElement () |
FiniteElement (const FiniteElement &)=delete | |
Broken copy constructor. More... | |
void | get_centre_of_gravity_and_max_radius_in_terms_of_zeta (Vector< double > &cog, double &max_radius) const |
MacroElement * | macro_elem_pt () |
Access function to pointer to macro element. More... | |
void | get_x (const Vector< double > &s, Vector< double > &x) const |
void | get_x (const unsigned &t, const Vector< double > &s, Vector< double > &x) |
virtual void | set_integration_scheme (Integral *const &integral_pt) |
Set the spatial integration scheme. More... | |
Integral *const & | integral_pt () const |
Return the pointer to the integration scheme (const version) More... | |
virtual void | shape_at_knot (const unsigned &ipt, Shape &psi) const |
virtual void | dshape_local_at_knot (const unsigned &ipt, Shape &psi, DShape &dpsids) const |
virtual void | d2shape_local_at_knot (const unsigned &ipt, Shape &psi, DShape &dpsids, DShape &d2psids) const |
virtual double | J_eulerian (const Vector< double > &s) const |
virtual double | J_eulerian_at_knot (const unsigned &ipt) const |
void | check_J_eulerian_at_knots (bool &passed) const |
void | check_jacobian (const double &jacobian) const |
double | dshape_eulerian (const Vector< double > &s, Shape &psi, DShape &dpsidx) const |
virtual double | dshape_eulerian_at_knot (const unsigned &ipt, Shape &psi, DShape &dpsidx) const |
virtual double | dshape_eulerian_at_knot (const unsigned &ipt, Shape &psi, DShape &dpsi, DenseMatrix< double > &djacobian_dX, RankFourTensor< double > &d_dpsidx_dX) const |
double | d2shape_eulerian (const Vector< double > &s, Shape &psi, DShape &dpsidx, DShape &d2psidx) const |
virtual double | d2shape_eulerian_at_knot (const unsigned &ipt, Shape &psi, DShape &dpsidx, DShape &d2psidx) const |
virtual void | assign_nodal_local_eqn_numbers (const bool &store_local_dof_pt) |
virtual void | describe_nodal_local_dofs (std::ostream &out, const std::string ¤t_string) const |
virtual void | assign_all_generic_local_eqn_numbers (const bool &store_local_dof_pt) |
Node *& | node_pt (const unsigned &n) |
Return a pointer to the local node n. More... | |
Node *const & | node_pt (const unsigned &n) const |
Return a pointer to the local node n (const version) More... | |
unsigned | nnode () const |
Return the number of nodes. More... | |
double | raw_nodal_position (const unsigned &n, const unsigned &i) const |
double | raw_nodal_position (const unsigned &t, const unsigned &n, const unsigned &i) const |
double | raw_dnodal_position_dt (const unsigned &n, const unsigned &i) const |
double | raw_dnodal_position_dt (const unsigned &n, const unsigned &j, const unsigned &i) const |
double | raw_nodal_position_gen (const unsigned &n, const unsigned &k, const unsigned &i) const |
double | raw_nodal_position_gen (const unsigned &t, const unsigned &n, const unsigned &k, const unsigned &i) const |
double | raw_dnodal_position_gen_dt (const unsigned &n, const unsigned &k, const unsigned &i) const |
double | raw_dnodal_position_gen_dt (const unsigned &j, const unsigned &n, const unsigned &k, const unsigned &i) const |
double | nodal_position (const unsigned &n, const unsigned &i) const |
double | nodal_position (const unsigned &t, const unsigned &n, const unsigned &i) const |
double | dnodal_position_dt (const unsigned &n, const unsigned &i) const |
Return the i-th component of nodal velocity: dx/dt at local node n. More... | |
double | dnodal_position_dt (const unsigned &n, const unsigned &j, const unsigned &i) const |
double | nodal_position_gen (const unsigned &n, const unsigned &k, const unsigned &i) const |
double | nodal_position_gen (const unsigned &t, const unsigned &n, const unsigned &k, const unsigned &i) const |
double | dnodal_position_gen_dt (const unsigned &n, const unsigned &k, const unsigned &i) const |
double | dnodal_position_gen_dt (const unsigned &j, const unsigned &n, const unsigned &k, const unsigned &i) const |
virtual void | get_dresidual_dnodal_coordinates (RankThreeTensor< double > &dresidual_dnodal_coordinates) |
virtual void | disable_ALE () |
virtual void | enable_ALE () |
unsigned | nnodal_position_type () const |
bool | has_hanging_nodes () const |
unsigned | nodal_dimension () const |
Return the required Eulerian dimension of the nodes in this element. More... | |
virtual Node * | construct_node (const unsigned &n) |
virtual Node * | construct_node (const unsigned &n, TimeStepper *const &time_stepper_pt) |
virtual Node * | construct_boundary_node (const unsigned &n) |
virtual Node * | construct_boundary_node (const unsigned &n, TimeStepper *const &time_stepper_pt) |
int | get_node_number (Node *const &node_pt) const |
double | raw_nodal_value (const unsigned &n, const unsigned &i) const |
double | raw_nodal_value (const unsigned &t, const unsigned &n, const unsigned &i) const |
double | nodal_value (const unsigned &n, const unsigned &i) const |
double | nodal_value (const unsigned &t, const unsigned &n, const unsigned &i) const |
unsigned | dim () const |
virtual double | interpolated_x (const Vector< double > &s, const unsigned &i) const |
Return FE interpolated coordinate x[i] at local coordinate s. More... | |
virtual double | interpolated_x (const unsigned &t, const Vector< double > &s, const unsigned &i) const |
virtual void | interpolated_x (const Vector< double > &s, Vector< double > &x) const |
Return FE interpolated position x[] at local coordinate s as Vector. More... | |
virtual void | interpolated_x (const unsigned &t, const Vector< double > &s, Vector< double > &x) const |
virtual double | interpolated_dxdt (const Vector< double > &s, const unsigned &i, const unsigned &t) |
virtual void | interpolated_dxdt (const Vector< double > &s, const unsigned &t, Vector< double > &dxdt) |
unsigned | ngeom_data () const |
Data * | geom_data_pt (const unsigned &j) |
void | position (const Vector< double > &zeta, Vector< double > &r) const |
void | position (const unsigned &t, const Vector< double > &zeta, Vector< double > &r) const |
void | dposition_dt (const Vector< double > &zeta, const unsigned &t, Vector< double > &drdt) |
virtual double | zeta_nodal (const unsigned &n, const unsigned &k, const unsigned &i) const |
void | interpolated_zeta (const Vector< double > &s, Vector< double > &zeta) const |
void | locate_zeta (const Vector< double > &zeta, GeomObject *&geom_object_pt, Vector< double > &s, const bool &use_coordinate_as_initial_guess=false) |
virtual void | node_update () |
virtual void | identify_field_data_for_interactions (std::set< std::pair< Data *, unsigned >> &paired_field_data) |
virtual void | identify_geometric_data (std::set< Data * > &geometric_data_pt) |
double | size () const |
virtual double | compute_physical_size () const |
virtual void | point_output_data (const Vector< double > &s, Vector< double > &data) |
void | point_output (std::ostream &outfile, const Vector< double > &s) |
void | output_paraview (std::ofstream &file_out, const unsigned &nplot) const |
virtual unsigned | nscalar_paraview () const |
virtual void | scalar_value_paraview (std::ofstream &file_out, const unsigned &i, const unsigned &nplot) const |
virtual void | scalar_value_fct_paraview (std::ofstream &file_out, const unsigned &i, const unsigned &nplot, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt) const |
virtual void | scalar_value_fct_paraview (std::ofstream &file_out, const unsigned &i, const unsigned &nplot, const double &time, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt) const |
virtual std::string | scalar_name_paraview (const unsigned &i) const |
virtual void | output (const unsigned &t, std::ostream &outfile, const unsigned &n_plot) const |
virtual void | output_fct (std::ostream &outfile, const unsigned &n_plot, const double &time, const SolutionFunctorBase &exact_soln) const |
Output a time-dependent exact solution over the element. More... | |
virtual void | write_tecplot_zone_footer (std::ostream &outfile, const unsigned &nplot) const |
virtual void | write_tecplot_zone_footer (FILE *file_pt, const unsigned &nplot) const |
virtual void | compute_error (FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, double &error, double &norm) |
Calculate the norm of the error and that of the exact solution. More... | |
virtual void | compute_error (FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, double &error, double &norm) |
Calculate the norm of the error and that of the exact solution. More... | |
virtual void | compute_error (FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, Vector< double > &error, Vector< double > &norm) |
virtual void | compute_error (FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, Vector< double > &error, Vector< double > &norm) |
virtual void | compute_error (std::ostream &outfile, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, Vector< double > &error, Vector< double > &norm) |
virtual void | compute_error (std::ostream &outfile, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, Vector< double > &error, Vector< double > &norm) |
virtual void | compute_abs_error (std::ostream &outfile, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, double &error) |
void | integrate_fct (FiniteElement::SteadyExactSolutionFctPt integrand_fct_pt, Vector< double > &integral) |
Integrate Vector-valued function over element. More... | |
void | integrate_fct (FiniteElement::UnsteadyExactSolutionFctPt integrand_fct_pt, const double &time, Vector< double > &integral) |
Integrate Vector-valued time-dep function over element. More... | |
virtual void | build_face_element (const int &face_index, FaceElement *face_element_pt) |
void | face_node_number_error_check (const unsigned &i) const |
Range check for face node numbers. More... | |
![]() | |
GeneralisedElement () | |
Constructor: Initialise all pointers and all values to zero. More... | |
virtual | ~GeneralisedElement () |
Virtual destructor to clean up any memory allocated by the object. More... | |
GeneralisedElement (const GeneralisedElement &)=delete | |
Broken copy constructor. More... | |
void | operator= (const GeneralisedElement &)=delete |
Broken assignment operator. More... | |
Data *& | internal_data_pt (const unsigned &i) |
Return a pointer to i-th internal data object. More... | |
Data *const & | internal_data_pt (const unsigned &i) const |
Return a pointer to i-th internal data object (const version) More... | |
Data *& | external_data_pt (const unsigned &i) |
Return a pointer to i-th external data object. More... | |
Data *const & | external_data_pt (const unsigned &i) const |
Return a pointer to i-th external data object (const version) More... | |
unsigned long | eqn_number (const unsigned &ieqn_local) const |
int | local_eqn_number (const unsigned long &ieqn_global) const |
unsigned | add_external_data (Data *const &data_pt, const bool &fd=true) |
bool | external_data_fd (const unsigned &i) const |
void | exclude_external_data_fd (const unsigned &i) |
void | include_external_data_fd (const unsigned &i) |
void | flush_external_data () |
Flush all external data. More... | |
void | flush_external_data (Data *const &data_pt) |
Flush the object addressed by data_pt from the external data array. More... | |
unsigned | ninternal_data () const |
Return the number of internal data objects. More... | |
unsigned | nexternal_data () const |
Return the number of external data objects. More... | |
unsigned | ndof () const |
Return the number of equations/dofs in the element. More... | |
void | dof_vector (const unsigned &t, Vector< double > &dof) |
Return the vector of dof values at time level t. More... | |
void | dof_pt_vector (Vector< double * > &dof_pt) |
Return the vector of pointers to dof values. More... | |
void | set_internal_data_time_stepper (const unsigned &i, TimeStepper *const &time_stepper_pt, const bool &preserve_existing_data) |
void | assign_internal_eqn_numbers (unsigned long &global_number, Vector< double * > &Dof_pt) |
void | describe_dofs (std::ostream &out, const std::string ¤t_string) const |
void | add_internal_value_pt_to_map (std::map< unsigned, double * > &map_of_value_pt) |
virtual void | assign_local_eqn_numbers (const bool &store_local_dof_pt) |
virtual void | complete_setup_of_dependencies () |
virtual void | get_residuals (Vector< double > &residuals) |
virtual void | get_jacobian (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
virtual void | get_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &mass_matrix) |
virtual void | get_jacobian_and_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &jacobian, DenseMatrix< double > &mass_matrix) |
virtual void | get_dresiduals_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam) |
virtual void | get_djacobian_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam, DenseMatrix< double > &djac_dparam) |
virtual void | get_djacobian_and_dmass_matrix_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam, DenseMatrix< double > &djac_dparam, DenseMatrix< double > &dmass_matrix_dparam) |
virtual void | get_hessian_vector_products (Vector< double > const &Y, DenseMatrix< double > const &C, DenseMatrix< double > &product) |
virtual void | get_inner_products (Vector< std::pair< unsigned, unsigned >> const &history_index, Vector< double > &inner_product) |
virtual void | get_inner_product_vectors (Vector< unsigned > const &history_index, Vector< Vector< double >> &inner_product_vector) |
virtual void | compute_norm (Vector< double > &norm) |
virtual void | compute_norm (double &norm) |
virtual unsigned | ndof_types () const |
virtual void | get_dof_numbers_for_unknowns (std::list< std::pair< unsigned long, unsigned >> &dof_lookup_list) const |
![]() | |
GeomObject () | |
Default constructor. More... | |
GeomObject (const unsigned &ndim) | |
GeomObject (const unsigned &nlagrangian, const unsigned &ndim) | |
GeomObject (const unsigned &nlagrangian, const unsigned &ndim, TimeStepper *time_stepper_pt) | |
GeomObject (const GeomObject &dummy)=delete | |
Broken copy constructor. More... | |
void | operator= (const GeomObject &)=delete |
Broken assignment operator. More... | |
virtual | ~GeomObject () |
(Empty) destructor More... | |
unsigned | nlagrangian () const |
Access function to # of Lagrangian coordinates. More... | |
unsigned | ndim () const |
Access function to # of Eulerian coordinates. More... | |
void | set_nlagrangian_and_ndim (const unsigned &n_lagrangian, const unsigned &n_dim) |
Set # of Lagrangian and Eulerian coordinates. More... | |
TimeStepper *& | time_stepper_pt () |
TimeStepper * | time_stepper_pt () const |
virtual void | position (const double &t, const Vector< double > &zeta, Vector< double > &r) const |
virtual void | dposition (const Vector< double > &zeta, DenseMatrix< double > &drdzeta) const |
virtual void | d2position (const Vector< double > &zeta, RankThreeTensor< double > &ddrdzeta) const |
virtual void | d2position (const Vector< double > &zeta, Vector< double > &r, DenseMatrix< double > &drdzeta, RankThreeTensor< double > &ddrdzeta) const |
![]() | |
AxisymFoepplvonKarmanEquations () | |
AxisymFoepplvonKarmanEquations (const AxisymFoepplvonKarmanEquations &dummy)=delete | |
Broken copy constructor. More... | |
void | operator= (const AxisymFoepplvonKarmanEquations &)=delete |
Broken assignment operator. More... | |
const double & | nu () const |
Poisson's ratio. More... | |
double *& | nu_pt () |
Pointer to Poisson's ratio. More... | |
const double & | eta () const |
FvK parameter. More... | |
double *& | eta_pt () |
Pointer to FvK parameter. More... | |
virtual unsigned | nodal_index_fvk (const unsigned &i=0) const |
void | compute_error (std::ostream &outfile, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, double &error, double &norm) |
Get error against and norm of exact solution. More... | |
void | compute_error (std::ostream &outfile, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, double &error, double &norm) |
Dummy, time dependent error checker. More... | |
AxisymFoepplvonKarmanPressureFctPt & | pressure_fct_pt () |
Access function: Pointer to pressure function. More... | |
AxisymFoepplvonKarmanPressureFctPt | pressure_fct_pt () const |
Access function: Pointer to pressure function. Const version. More... | |
void | get_gradient_of_deflection (const Vector< double > &s, Vector< double > &gradient) const |
Get gradient of deflection: gradient[i] = dw/dr_i */. More... | |
void | fill_in_contribution_to_residuals (Vector< double > &residuals) |
Fill in the residuals with this element's contribution. More... | |
double | interpolated_w_fvk (const Vector< double > &s) const |
Return FE representation of transverse displacement. More... | |
double | interpolated_u_fvk (const Vector< double > &s) const |
Return FE representation of radial displacement. More... | |
bool | interpolated_stress (const Vector< double > &s, double &sigma_r_r, double &sigma_phi_phi) const |
unsigned | self_test () |
Self-test: Return 0 for OK. More... | |
void | use_linear_bending_model () |
AxisymFoepplvonKarmanEquations () | |
AxisymFoepplvonKarmanEquations (const AxisymFoepplvonKarmanEquations &dummy)=delete | |
Broken copy constructor. More... | |
void | operator= (const AxisymFoepplvonKarmanEquations &)=delete |
Broken assignment operator. More... | |
const double & | eta () const |
FvK parameter. More... | |
double *& | eta_pt () |
Pointer to FvK parameter. More... | |
virtual unsigned | nodal_index_fvk (const unsigned &i=0) const |
void | compute_error (std::ostream &outfile, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, double &error, double &norm) |
Get error against and norm of exact solution. More... | |
void | compute_error (std::ostream &outfile, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, double &error, double &norm) |
Dummy, time dependent error checker. More... | |
AxisymFoepplvonKarmanPressureFctPt & | pressure_fct_pt () |
Access function: Pointer to pressure function. More... | |
AxisymFoepplvonKarmanPressureFctPt | pressure_fct_pt () const |
Access function: Pointer to pressure function. Const version. More... | |
AxisymFoepplvonKarmanPressureFctPt & | airy_forcing_fct_pt () |
Access function: Pointer to Airy forcing function. More... | |
AxisymFoepplvonKarmanPressureFctPt | airy_forcing_fct_pt () const |
Access function: Pointer to Airy forcing function. Const version. More... | |
virtual void | get_airy_forcing_fvk (const unsigned &ipt, const double &r, double &airy_forcing) const |
void | get_gradient_of_deflection (const Vector< double > &s, Vector< double > &gradient) const |
Get gradient of deflection: gradient[i] = dw/dr_i */. More... | |
void | fill_in_contribution_to_residuals (Vector< double > &residuals) |
Fill in the residuals with this element's contribution. More... | |
double | interpolated_w_fvk (const Vector< double > &s) const |
bool | interpolated_stress (const Vector< double > &s, double &sigma_r_r, double &sigma_phi_phi) |
unsigned | self_test () |
Self-test: Return 0 for OK. More... | |
void | use_linear_bending_model () |
![]() | |
ElementWithExternalElement () | |
virtual | ~ElementWithExternalElement () |
The destructor, clean up any allocated memory. More... | |
ElementWithExternalElement (const ElementWithExternalElement &)=delete | |
Broken copy constructor. More... | |
void | operator= (const ElementWithExternalElement &)=delete |
Broken assignment operator. More... | |
bool | storage_has_been_allocated () const |
Helper function to check if storage has actually been allocated. More... | |
FiniteElement *& | external_element_pt (const unsigned &interaction_index, const unsigned &ipt) |
FiniteElement *const & | external_element_pt (const unsigned &interaction_index, const unsigned &ipt) const |
Access function to source element, const version. More... | |
Vector< double > & | external_element_local_coord (const unsigned &interaction_index, const unsigned &ipt) |
Vector< double > const & | external_element_local_coord (const unsigned &interaction_index, const unsigned &ipt) const |
Access function to get source element's coords, const version. More... | |
void | output_external_elements (std::ostream &outfile, const unsigned &interaction_index) |
void | initialise_external_element_storage () |
void | flush_all_external_element_storage () |
Flush the storage for external elements. More... | |
void | set_ninteraction (const unsigned &n_interaction) |
unsigned | ninteraction () const |
Return the number of interactions in the element. More... | |
virtual void | identify_all_field_data_for_external_interaction (Vector< std::set< FiniteElement * >> const &external_elements_pt, std::set< std::pair< Data *, unsigned >> &paired_interaction_data) |
virtual void | identify_all_geometric_data_for_external_interaction (Vector< std::set< FiniteElement * >> const &external_elements_pt, std::set< Data * > &external_geometric_data_pt) |
unsigned | nexternal_interaction_field_data () const |
Vector< Data * > | external_interaction_field_data_pt () const |
unsigned | nexternal_interaction_geometric_data () const |
bool | add_external_geometric_data () |
Are we including external geometric data in the element's Jacobian. More... | |
bool | add_external_interaction_data () |
Are we including external data in the element's Jacobian. More... | |
Vector< Data * > | external_interaction_geometric_data_pt () const |
void | ignore_external_geometric_data () |
void | ignore_external_interaction_data () |
void | include_external_geometric_data () |
void | include_external_interaction_data () |
bool | external_geometric_data_is_included () const |
void | describe_local_dofs (std::ostream &out, const std::string &curr_string) const |
Protected Attributes | |
double * | Q_pt |
![]() | |
MacroElement * | Macro_elem_pt |
Pointer to the element's macro element (NULL by default) More... | |
![]() | |
unsigned | NLagrangian |
Number of Lagrangian (intrinsic) coordinates. More... | |
unsigned | Ndim |
Number of Eulerian coordinates. More... | |
TimeStepper * | Geom_object_time_stepper_pt |
![]() | |
double * | Eta_pt |
Pointer to FvK parameter. More... | |
AxisymFoepplvonKarmanPressureFctPt | Pressure_fct_pt |
Pointer to pressure function: More... | |
double * | Nu_pt |
Pointer to Poisson's ratio. More... | |
bool | Linear_bending_model |
AxisymFoepplvonKarmanPressureFctPt | Airy_forcing_fct_pt |
Pointer to Airy forcing function. More... | |
![]() | |
bool | Add_external_interaction_data |
Boolean flag to indicate whether to include the external data. More... | |
bool | Add_external_geometric_data |
Boolean flag to indicate whether to include the external geometric data. More... | |
Data ** | External_interaction_field_data_pt |
Data ** | External_interaction_geometric_data_pt |
//////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////// FSI Axisym FoepplvonKarmanElement elements are 1D Foeppl von Karman elements with isoparametric interpolation for the function. Gets traction from adjacent fluid element(s) of type FLUID_ELEMENT.
|
inline |
Constructor.
References oomph::ElementWithExternalElement::set_ninteraction().
|
inlinevirtual |
|
inlinevirtual |
j-th time-derivative on object at current time: \( \frac{d^{j} r(\zeta)}{dt^j} \).
Reimplemented from oomph::GeomObject.
References oomph::TimeStepper::is_steady(), oomph::FiniteElement::nnode(), oomph::AxisymFoepplvonKarmanEquations::nodal_index_fvk(), oomph::FiniteElement::nodal_value(), oomph::FiniteElement::node_pt(), oomph::TimeStepper::ntstorage(), oomph::FiniteElement::shape(), plotPSD::t, oomph::GeomObject::time_stepper_pt(), oomph::Data::time_stepper_pt(), and oomph::TimeStepper::weight().
Referenced by oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::output().
|
inlinevirtual |
Return pointer to the j-th Data item that the object's shape depends on.
Reimplemented from oomph::GeomObject.
References oomph::FiniteElement::node_pt().
|
inlinevirtual |
Overload pressure term at (Eulerian) position r. Adds fluid traction to pressure imposed by "pressure fct pointer" (which can be regarded as applying an external (i.e. "on the other side" of the fluid) pressure
Reimplemented from oomph::AxisymFoepplvonKarmanEquations.
References oomph::ElementWithExternalElement::external_element_local_coord(), oomph::ElementWithExternalElement::external_element_pt(), FLUID_ELEMENT, oomph::AxisymFoepplvonKarmanEquations::get_pressure_fvk(), WallFunction::normal(), oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::q(), and UniformPSDSelfTest::r.
|
inlinevirtual |
How many items of Data does the shape of the object depend on? All nodal data
Reimplemented from oomph::GeomObject.
References oomph::FiniteElement::nnode().
|
inline |
Update the nodal positions in all fluid elements that affect the traction on this element
References oomph::ElementWithExternalElement::external_element_pt(), FLUID_ELEMENT, oomph::FiniteElement::integral_pt(), and oomph::Integral::nweight().
Referenced by oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::reset_after_external_interaction_geometric_fd(), oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::reset_in_external_interaction_geometric_fd(), oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::update_before_external_interaction_geometric_fd(), and oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::update_in_external_interaction_geometric_fd().
|
inlinevirtual |
Output FE representation of soln: r,w,dwdt,sigma_r_r,sigma_phi_phi at n_plot plot points
Reimplemented from oomph::AxisymFoepplvonKarmanElement< NNODE_1D >.
References oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::dposition_dt(), oomph::FiniteElement::get_s_plot(), oomph::AxisymFoepplvonKarmanEquations::interpolated_stress(), oomph::AxisymFoepplvonKarmanEquations::interpolated_w_fvk(), oomph::FiniteElement::interpolated_x(), oomph::FiniteElement::nplot_points(), and s.
|
inline |
Output adjacent fluid elements (for checking of fsi setup)
References oomph::ElementWithExternalElement::external_element_pt(), FLUID_ELEMENT, oomph::FiniteElement::integral_pt(), and oomph::Integral::nweight().
|
inline |
Output integration points (for checking of fsi setup)
References oomph::ElementWithExternalElement::external_element_local_coord(), oomph::ElementWithExternalElement::external_element_pt(), FLUID_ELEMENT, oomph::FiniteElement::integral_pt(), oomph::Integral::knot(), oomph::FiniteElement::nnode(), oomph::AxisymFoepplvonKarmanEquations::nodal_index_fvk(), oomph::FiniteElement::nodal_value(), oomph::FiniteElement::node_pt(), oomph::Integral::nweight(), s, oomph::FiniteElement::shape(), plotDoE::x, and oomph::Node::x().
|
inlinevirtual |
Overloaded position function: Return 2D position vector: (r(zeta),z(zeta)) of material point whose "Lagrangian coordinate" is given by zeta.
Reimplemented from oomph::GeomObject.
References oomph::FiniteElement::nnode(), oomph::AxisymFoepplvonKarmanEquations::nodal_index_fvk(), oomph::FiniteElement::nodal_value(), oomph::FiniteElement::node_pt(), UniformPSDSelfTest::r, oomph::FiniteElement::shape(), plotPSD::t, and oomph::Node::x().
|
inlinevirtual |
Overloaded position function: Return 2D position vector: (r(zeta),z(zeta)) of material point whose "Lagrangian coordinate" is given by zeta. Here r=zeta!
Implements oomph::GeomObject.
References UniformPSDSelfTest::r, plotPSD::t, and Eigen::zeta().
|
inline |
Return the ratio of the stress scales used to non-dimensionalise the fluid and elasticity equations.
References oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::Q_pt.
Referenced by oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::get_pressure_fvk().
|
inline |
Return a pointer the ratio of stress scales used to non-dimensionalise the fluid and solid equations.
References oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::Q_pt.
|
inlinevirtual |
Perform any auxiliary node update fcts of the adjacent fluid elements
Reimplemented from oomph::ElementWithExternalElement.
References oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::node_update_adjacent_fluid_elements().
|
inlinevirtual |
Perform any auxiliary node update fcts of the adjacent fluid elements
Reimplemented from oomph::ElementWithExternalElement.
References oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::node_update_adjacent_fluid_elements().
|
inlinevirtual |
Perform any auxiliary node update fcts of the adjacent fluid elements
Reimplemented from oomph::ElementWithExternalElement.
References oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::node_update_adjacent_fluid_elements().
|
inlinevirtual |
Perform any auxiliary node update fcts of the adjacent fluid elements
Reimplemented from oomph::ElementWithExternalElement.
References oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::node_update_adjacent_fluid_elements().
|
protected |
Pointer to the ratio, \( Q \) , of the stress used to non-dimensionalise the fluid stresses to the stress used to non-dimensionalise the solid stresses.
Referenced by oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::q(), and oomph::FSIAxisymFoepplvonKarmanElement< NNODE_1D, FLUID_ELEMENT >::q_pt().