27 #ifndef OOMPH_KIRCHHOFF_LOVE_BEAM_ELEMENTS_HEADER
28 #define OOMPH_KIRCHHOFF_LOVE_BEAM_ELEMENTS_HEADER
32 #include <oomph-lib-config.h>
36 #include "../generic/hermite_elements.h"
37 #include "../generic/geom_objects.h"
38 #include "../generic/fsi.h"
39 #include "../generic/block_preconditioner.h"
215 const double&
h()
const
299 void get_energy(
double& pot_en,
double& kin_en);
303 void get_energy(
double& stretch,
double& bend,
double& kin_en);
324 void output(std::ostream& outfile);
327 void output(std::ostream& outfile,
const unsigned& n_plot);
332 std::ostream& outfile,
333 const unsigned& n_plot)
const;
336 void output(FILE* file_pt);
339 void output(FILE* file_pt,
const unsigned& n_plot);
343 void output(
const unsigned&
t, FILE* file_pt,
const unsigned& n_plot)
const;
428 for (
unsigned i = 0;
i < 2;
i++)
457 const bool& use_coordinate_as_initial_guess =
false);
474 std::list<std::pair<unsigned long, unsigned>>& dof_lookup_list)
const;
526 "ClampedSlidingHermiteBeamBoundaryConditionElement ",
571 void output(std::ostream& outfile,
const unsigned& n_plot)
586 void output(FILE* file_pt,
const unsigned& n_plot)
int i
Definition: BiCGSTAB_step_by_step.cpp:9
void load(Archive &ar, ParticleHandler &handl)
Definition: Particles.h:21
Definition: beam_elements.h:512
void output(FILE *file_pt, const unsigned &n_plot)
Definition: beam_elements.h:586
Vector< double > Vector_to_symmetry_line
Definition: beam_elements.h:594
void set_symmetry_line(const Vector< double > &vector_to_symmetry_line, const Vector< double > &normal_to_symmetry_line)
Broken assignment operator.
Definition: beam_elements.h:548
void output(std::ostream &outfile, const unsigned &n_plot)
Definition: beam_elements.h:571
ClampedSlidingHermiteBeamBoundaryConditionElement(const ClampedSlidingHermiteBeamBoundaryConditionElement &dummy)=delete
Broken copy constructor.
void output(FILE *file_pt)
Definition: beam_elements.h:578
void output(std::ostream &outfile)
Definition: beam_elements.h:564
Vector< double > Normal_to_symmetry_line
Definition: beam_elements.h:598
void fill_in_contribution_to_residuals(Vector< double > &residuals)
Fill in the element's contribution to its residual vector.
Definition: beam_elements.cc:1357
ClampedSlidingHermiteBeamBoundaryConditionElement()
Broken empty constructor.
Definition: beam_elements.h:523
void fill_in_jacobian_from_external_interaction_by_fd(Vector< double > &residuals, DenseMatrix< double > &jacobian)
Definition: element_with_external_element.h:345
Definition: beam_elements.h:352
void dposition_dlagrangian_at_local_coordinate(const Vector< double > &s, DenseMatrix< double > &drdxi) const
Definition: beam_elements.cc:1199
FSIHermiteBeamElement()
Definition: beam_elements.h:364
unsigned ndof_types() const
Definition: beam_elements.h:462
void set_normal_pointing_into_fluid()
Definition: beam_elements.h:377
~FSIHermiteBeamElement()
Destructor: empty.
Definition: beam_elements.h:373
virtual void fill_in_contribution_to_jacobian(Vector< double > &residuals, DenseMatrix< double > &jacobian)
Definition: beam_elements.h:437
void set_normal_pointing_out_of_fluid()
Definition: beam_elements.h:384
void get_dof_numbers_for_unknowns(std::list< std::pair< unsigned long, unsigned >> &dof_lookup_list) const
Definition: beam_elements.cc:1261
void locate_zeta(const Vector< double > &zeta, GeomObject *&geom_object_pt, Vector< double > &s, const bool &use_coordinate_as_initial_guess=false)
Definition: beam_elements.cc:1114
void load_vector(const unsigned &intpt, const Vector< double > &xi, const Vector< double > &x, const Vector< double > &N, Vector< double > &load)
Definition: beam_elements.h:405
bool Normal_points_into_fluid
Definition: beam_elements.h:355
void setup_fsi_wall_element(const unsigned &nlagr_solid, const unsigned &ndim_fluid)
Definition: fsi.cc:121
void fluid_load_vector(const unsigned &intpt, const Vector< double > &N, Vector< double > &load)
Definition: fsi.cc:162
int & face_index()
Definition: elements.h:4626
FaceGeometry()
Definition: beam_elements.h:492
Definition: elements.h:4998
Definition: elements.h:1313
void set_nodal_dimension(const unsigned &nodal_dim)
Definition: elements.h:1390
virtual void output(std::ostream &outfile)
Definition: elements.h:3050
Definition: geom_objects.h:101
Definition: beam_elements.h:313
void output(std::ostream &outfile)
Output function.
Definition: beam_elements.cc:929
HermiteBeamElement()
Constructor (empty)
Definition: beam_elements.h:316
Definition: beam_elements.h:94
KirchhoffLoveBeamEquations()
Definition: beam_elements.h:154
void fill_in_contribution_to_residuals(Vector< double > &residuals)
Definition: beam_elements.h:281
static double Default_sigma0_value
Static default value for 2nd Piola Kirchhoff prestress.
Definition: beam_elements.h:97
void(*&)(const Vector< double > &xi, const Vector< double > &x, const Vector< double > &N, Vector< double > &load) load_vector_fct_pt()
Reference to the load vector function pointer.
Definition: beam_elements.h:169
static void Zero_traction_fct(const Vector< double > &xi, const Vector< double > &x, const Vector< double > &N, Vector< double > &load)
Default load function (zero traction)
Definition: beam_elements.cc:51
GeomObject * Undeformed_beam_pt
Definition: beam_elements.h:149
static void Unit_profile_fct(const Vector< double > &xi, const Vector< double > &x, double &h_ratio)
Default profile function (constant thickness 'h_0')
Definition: beam_elements.cc:66
void fill_in_contribution_to_residuals_beam(Vector< double > &residuals)
Definition: beam_elements.cc:275
void(* Load_vector_fct_pt)(const Vector< double > &xi, const Vector< double > &x, const Vector< double > &N, Vector< double > &load)
Definition: beam_elements.h:128
double *& sigma0_pt()
Return a pointer to axial prestress.
Definition: beam_elements.h:233
void(* Wall_profile_fct_pt)(const Vector< double > &xi, const Vector< double > &x, double &h_ratio)
Definition: beam_elements.h:143
double * Lambda_sq_pt
Pointer to Timescale ratio (non-dim. density)
Definition: beam_elements.h:114
void get_non_unit_tangent(const Vector< double > &s, Vector< double > &r, Vector< double > &drds)
Get position vector to and non-unit tangent vector on wall: dr/ds.
Definition: beam_elements.cc:184
void(*&)(const Vector< double > &xi, const Vector< double > &x, double &h_ratio) wall_profile_fct_pt()
Reference to the wall thickness ratio profile function pointer.
Definition: beam_elements.h:193
static double Default_h_value
Static default value for non-dim wall thickness.
Definition: beam_elements.h:104
double * Sigma0_pt
Pointer to axial prestress.
Definition: beam_elements.h:107
const double & lambda_sq() const
Return the timescale ratio (non-dimensional density)
Definition: beam_elements.h:221
void get_normal(const Vector< double > &s, Vector< double > &N)
Get normal vector on wall.
Definition: beam_elements.h:259
static double Default_lambda_sq_value
Static default value for timescale ratio (1.0 – for natural scaling)
Definition: beam_elements.h:100
void wall_profile(const Vector< double > &xi, const Vector< double > &x, double &h_ratio)
Definition: beam_elements.h:205
double *& h_pt()
Return a pointer to non-dim. wall thickness.
Definition: beam_elements.h:240
const double & sigma0() const
Return the axial prestress.
Definition: beam_elements.h:227
void get_energy(double &pot_en, double &kin_en)
Get potential (strain) and kinetic energy of the element.
Definition: beam_elements.cc:568
double *& lambda_sq_pt()
Return a pointer to timescale ratio (nondim density)
Definition: beam_elements.h:246
const double & h() const
Return the non-dimensional wall thickness.
Definition: beam_elements.h:215
GeomObject *& undeformed_beam_pt()
Definition: beam_elements.h:253
double * H_pt
Pointer to wall thickness.
Definition: beam_elements.h:111
virtual void load_vector(const unsigned &intpt, const Vector< double > &xi, const Vector< double > &x, const Vector< double > &N, Vector< double > &load)
Definition: beam_elements.h:183
virtual void fill_in_contribution_to_jacobian(Vector< double > &residuals, DenseMatrix< double > &jacobian)
Get FE jacobian and residuals (Jacobian done by finite differences)
Definition: beam_elements.cc:534
Definition: oomph_definitions.h:222
Definition: elements.h:4914
Definition: elements.h:3561
Solid point element.
Definition: elements.h:4980
Definition: hermite_elements.h:504
@ N
Definition: constructor.cpp:22
RealScalar s
Definition: level1_cplx_impl.h:130
EIGEN_STRONG_INLINE const Eigen::CwiseBinaryOp< Eigen::internal::scalar_zeta_op< typename DerivedX::Scalar >, const DerivedX, const DerivedQ > zeta(const Eigen::ArrayBase< DerivedX > &x, const Eigen::ArrayBase< DerivedQ > &q)
Definition: SpecialFunctionsArrayAPI.h:152
T sign(T x)
Definition: cxx11_tensor_builtins_sycl.cpp:172
DRAIG: Change all instances of (SPATIAL_DIM) to (DIM-1).
Definition: AnisotropicHookean.h:10
list x
Definition: plotDoE.py:28
t
Definition: plotPSD.py:36
#define OOMPH_EXCEPTION_LOCATION
Definition: oomph_definitions.h:61
#define OOMPH_CURRENT_FUNCTION
Definition: oomph_definitions.h:86