32 #include "axisym_navier_stokes.h"
37 using namespace oomph;
62 this->set_ninteraction(2);
81 const unsigned interaction = 0;
87 external_element_pt(interaction, ipt));
95 s_external = external_element_local_coord(interaction, ipt);
98 for (
unsigned i = 0;
i < 3;
i++)
114 const unsigned interaction = 1;
120 external_element_pt(interaction, ipt));
128 s_external = external_element_local_coord(interaction, ipt);
131 for (
unsigned i = 0;
i < 3;
i++)
135 for (
unsigned j = 0; j < 2; j++)
151 residuals, jacobian);
154 this->fill_in_jacobian_from_external_interaction_by_fd(residuals, jacobian);
182 this->set_ninteraction(2);
201 const unsigned interaction = 0;
207 external_element_pt(interaction, ipt));
215 s_external = external_element_local_coord(interaction, ipt);
218 for (
unsigned i = 0;
i < 3;
i++)
234 const unsigned interaction = 1;
240 external_element_pt(interaction, ipt));
248 s_external = external_element_local_coord(interaction, ipt);
251 for (
unsigned i = 0;
i < 3;
i++)
255 for (
unsigned j = 0; j < 2; j++)
274 this->fill_in_jacobian_from_external_interaction_by_fd(residuals, jacobian);
303 this->set_ninteraction(2);
322 const unsigned interaction = 0;
328 external_element_pt(interaction, ipt));
336 s_external = external_element_local_coord(interaction, ipt);
339 for (
unsigned i = 0;
i < 3;
i++)
355 const unsigned interaction = 1;
361 external_element_pt(interaction, ipt));
369 s_external = external_element_local_coord(interaction, ipt);
372 for (
unsigned i = 0;
i < 3;
i++)
376 for (
unsigned j = 0; j < 2; j++)
395 this->fill_in_jacobian_from_external_interaction_by_fd(residuals, jacobian);
424 this->set_ninteraction(2);
443 const unsigned interaction = 0;
449 external_element_pt(interaction, ipt));
457 s_external = external_element_local_coord(interaction, ipt);
460 for (
unsigned i = 0;
i < 3;
i++)
476 const unsigned interaction = 1;
482 external_element_pt(interaction, ipt));
490 s_external = external_element_local_coord(interaction, ipt);
493 for (
unsigned i = 0;
i < 3;
i++)
497 for (
unsigned j = 0; j < 2; j++)
516 this->fill_in_jacobian_from_external_interaction_by_fd(residuals, jacobian);
////////////////////////////////////////////////////////////////////// //////////////////////////////...
void fill_in_contribution_to_jacobian(Vector< double > &residuals, DenseMatrix< double > &jacobian)
Compute the element's residual vector and the Jacobian matrix.
LinearisedAxisymmetricQCrouzeixRaviartMultiDomainElement()
Constructor: call the underlying constructors.
virtual void get_base_flow_dudx(const double &time, const unsigned &ipt, const Vector< double > &x, DenseMatrix< double > &result) const
Overload get_base_flow_dudx(...) to return the derivatives of the external element's velocity compone...
virtual void get_base_flow_u(const double &time, const unsigned &ipt, const Vector< double > &x, Vector< double > &result) const
Overload get_base_flow_u(...) to return the external element's velocity components at the integration...
////////////////////////////////////////////////////////////////////// //////////////////////////////...
virtual void get_base_flow_u(const double &time, const unsigned &ipt, const Vector< double > &x, Vector< double > &result) const
Overload get_base_flow_u(...) to return the external element's velocity components at the integration...
LinearisedAxisymmetricQTaylorHoodMultiDomainElement()
Constructor: call the underlying constructors.
virtual void get_base_flow_dudx(const double &time, const unsigned &ipt, const Vector< double > &x, DenseMatrix< double > &result) const
Overload get_base_flow_dudx(...) to return the derivatives of the external element's velocity compone...
void fill_in_contribution_to_jacobian(Vector< double > &residuals, DenseMatrix< double > &jacobian)
Compute the element's residual vector and the Jacobian matrix.
////////////////////////////////////////////////////////////////////// //////////////////////////////...
RefineableLinearisedAxisymmetricQCrouzeixRaviartMultiDomainElement()
Constructor: call the underlying constructors.
void fill_in_contribution_to_jacobian(Vector< double > &residuals, DenseMatrix< double > &jacobian)
Compute the element's residual vector and the Jacobian matrix.
virtual void get_base_flow_u(const double &time, const unsigned &ipt, const Vector< double > &x, Vector< double > &result) const
Overload get_base_flow_u(...) to return the external element's velocity components at the integration...
virtual void get_base_flow_dudx(const double &time, const unsigned &ipt, const Vector< double > &x, DenseMatrix< double > &result) const
Overload get_base_flow_dudx(...) to return the derivatives of the external element's velocity compone...
////////////////////////////////////////////////////////////////////// //////////////////////////////...
void fill_in_contribution_to_jacobian(Vector< double > &residuals, DenseMatrix< double > &jacobian)
Compute the element's residual vector and the Jacobian matrix.
RefineableLinearisedAxisymmetricQTaylorHoodMultiDomainElement()
Constructor: call the underlying constructors.
virtual void get_base_flow_u(const double &time, const unsigned &ipt, const Vector< double > &x, Vector< double > &result) const
Overload get_base_flow_u(...) to return the external element's velocity components at the integration...
virtual void get_base_flow_dudx(const double &time, const unsigned &ipt, const Vector< double > &x, DenseMatrix< double > &result) const
Overload get_base_flow_dudx(...) to return the derivatives of the external element's velocity compone...
double interpolated_dudx_axi_nst(const Vector< double > &s, const unsigned &i, const unsigned &j) const
Return FE interpolated derivatives of velocity component u[i] w.r.t spatial global coordinate directi...
void interpolated_u_axi_nst(const Vector< double > &s, Vector< double > &veloc) const
Compute vector of FE interpolated velocity u at local coordinate s.
/////////////////////////////////////////////////////////////////////////// /////////////////////////...
/////////////////////////////////////////////////////////////////////////
This is a base class for all elements that require external sources (e.g. FSI, multi-domain problems ...
void ignore_external_interaction_data()
Do not include any external interaction data when computing the element's Jacobian.
void ignore_external_geometric_data()
Do not include any external geometric data when computing the element's Jacobian. This function shoul...
void fill_in_contribution_to_jacobian(Vector< double > &residuals, DenseMatrix< double > &jacobian)
Compute the element's residual Vector and the jacobian matrix. Virtual function can be overloaded by ...
/////////////////////////////////////////////////////////////////////////// /////////////////////////...
/////////////////////////////////////////////////////////////////////////// /////////////////////////...
/////////////////////////////////////////////////////////////////////////// /////////////////////////...
/////////////////////////////////////////////////////////////////////////// /////////////////////////...
//////////////////////////////////////////////////////////////////// ////////////////////////////////...