![]() |
|
#include <double_buoyant_navier_stokes_elements.h>
Public Member Functions | |
RefineableDoubleBuoyantQCrouzeixRaviartElement () | |
void | unfix_pressure (const unsigned &p_dof) |
UnPin p_dof-th pressure dof. More... | |
unsigned | required_nvalue (const unsigned &n) const |
const double & | km () const |
Access function for the transfer constant. More... | |
double *& | km_pt () |
Access function for the pointer to transfer constant. More... | |
const double & | n () const |
Access function for the number of monomers in the micelle. More... | |
double *& | n_pt () |
Access function for the pointer to the number of monomers in the micelle. More... | |
void | disable_ALE () |
Final override for disable ALE. More... | |
void | enable_ALE () |
Final override for enable ALE. More... | |
void | get_reaction_adv_diff_react (const unsigned &ipt, const Vector< double > &C, Vector< double > &R) const |
void | get_reaction_deriv_adv_diff_react (const unsigned &ipt, const Vector< double > &C, DenseMatrix< double > &dRdC) const |
void | compute_norm (double &norm) |
void | output (std::ostream &outfile) |
Overload the standard output function with the broken default. More... | |
void | output (std::ostream &outfile, const unsigned &nplot) |
void | output (FILE *file_pt) |
C-style output function: Broken default. More... | |
void | output (FILE *file_pt, const unsigned &n_plot) |
C-style output function: Broken default. More... | |
void | output_fct (std::ostream &outfile, const unsigned &Nplot, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt) |
Output function for an exact solution: Broken default. More... | |
void | output_fct (std::ostream &outfile, const unsigned &Nplot, const double &time, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt) |
unsigned | c_index_adv_diff_react (const unsigned &i) const |
unsigned | nvertex_node () const |
geometric element. More... | |
Node * | vertex_node_pt (const unsigned &j) const |
unsigned | ncont_interpolated_values () const |
void | get_interpolated_values (const Vector< double > &s, Vector< double > &values) |
void | get_interpolated_values (const unsigned &t, const Vector< double > &s, Vector< double > &values) |
void | further_setup_hanging_nodes () |
void | rebuild_from_sons (Mesh *&mesh_pt) |
void | further_build () |
unsigned | nrecovery_order () |
The recovery order is that of the NavierStokes elements. More... | |
unsigned | num_Z2_flux_terms () |
void | get_Z2_flux (const Vector< double > &s, Vector< double > &flux) |
unsigned | ncompound_fluxes () |
void | get_Z2_compound_flux_indices (Vector< unsigned > &flux_index) |
void | compute_error (std::ostream &outfile, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, double &error, double &norm) |
void | compute_error (std::ostream &outfile, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, double &error, double &norm) |
void | get_wind_adv_diff_react (const unsigned &ipt, const Vector< double > &s, const Vector< double > &x, Vector< double > &wind) const |
void | fill_in_contribution_to_residuals (Vector< double > &residuals) |
void | fill_in_off_diagonal_jacobian_blocks_by_fd (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
void | fill_in_contribution_to_jacobian (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
void | fill_in_contribution_to_jacobian_and_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &jacobian, DenseMatrix< double > &mass_matrix) |
void | integrated_C_and_M (double &int_C, double &int_M) |
![]() | |
RefineableQAdvectionDiffusionReactionElement () | |
Empty Constructor: More... | |
RefineableQAdvectionDiffusionReactionElement (const RefineableQAdvectionDiffusionReactionElement< NREAGENT, DIM, NNODE_1D > &dummy)=delete | |
Broken copy constructor. More... | |
void | operator= (const RefineableQAdvectionDiffusionReactionElement< NREAGENT, DIM, NNODE_1D > &)=delete |
Broken assignment operator. More... | |
unsigned | ncont_interpolated_values () const |
Number of continuously interpolated values: NREAGENT. 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 | rebuild_from_sons (Mesh *&mesh_pt) |
Rebuild from sons: empty. More... | |
unsigned | nrecovery_order () |
void | further_setup_hanging_nodes () |
![]() | |
QAdvectionDiffusionReactionElement () | |
QAdvectionDiffusionReactionElement (const QAdvectionDiffusionReactionElement< NREAGENT, DIM, NNODE_1D > &dummy)=delete | |
Broken copy constructor. More... | |
void | operator= (const QAdvectionDiffusionReactionElement< NREAGENT, DIM, NNODE_1D > &)=delete |
Broken assignment operator. More... | |
unsigned | required_nvalue (const unsigned &n) const |
void | output (std::ostream &outfile) |
void | output (std::ostream &outfile, const unsigned &n_plot) |
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) |
![]() | |
AdvectionDiffusionReactionEquations () | |
AdvectionDiffusionReactionEquations (const AdvectionDiffusionReactionEquations &dummy)=delete | |
Broken copy constructor. More... | |
void | operator= (const AdvectionDiffusionReactionEquations &)=delete |
Broken assignment operator. More... | |
double | dc_dt_adv_diff_react (const unsigned &n, const unsigned &r) const |
void | dc_dt_adv_diff_react (const unsigned &n, Vector< double > &dc_dt) const |
void | disable_ALE () |
void | enable_ALE () |
void | compute_norm (double &norm) |
Compute norm of the solution: sum of squares of L2 norms for reagents. More... | |
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... | |
AdvectionDiffusionReactionSourceFctPt & | source_fct_pt () |
Access function: Pointer to source function. More... | |
AdvectionDiffusionReactionSourceFctPt | source_fct_pt () const |
Access function: Pointer to source function. Const version. More... | |
AdvectionDiffusionReactionWindFctPt & | wind_fct_pt () |
Access function: Pointer to wind function. More... | |
AdvectionDiffusionReactionWindFctPt | wind_fct_pt () const |
Access function: Pointer to reaction function. Const version. More... | |
AdvectionDiffusionReactionReactionFctPt & | reaction_fct_pt () |
Access function: Pointer to reaction function. More... | |
AdvectionDiffusionReactionReactionFctPt | reaction_fct_pt () const |
Access function: Pointer to reaction function. Const version. More... | |
AdvectionDiffusionReactionReactionDerivFctPt & | reaction_deriv_fct_pt () |
Access function: Pointer to reaction derivatives function. More... | |
AdvectionDiffusionReactionReactionDerivFctPt | reaction_deriv_fct_pt () const |
Access function: Pointer to reaction function. Const version. More... | |
const Vector< double > & | diff () const |
Vector of diffusion coefficients. More... | |
Vector< double > *& | diff_pt () |
Pointer to vector of diffusion coefficients. More... | |
const Vector< double > & | tau () const |
Vector of dimensionless timescales. More... | |
Vector< double > *& | tau_pt () |
Pointer to vector of dimensionless timescales. More... | |
virtual void | get_source_adv_diff_react (const unsigned &ipt, const Vector< double > &x, Vector< double > &source) const |
void | get_flux (const Vector< double > &s, Vector< double > &flux) const |
Get flux: \(\mbox{flux}[DIM r + i] = \mbox{d}C_{r} / \mbox{d}x_i \). More... | |
void | fill_in_contribution_to_residuals (Vector< double > &residuals) |
Add the element's contribution to its residual vector (wrapper) More... | |
void | fill_in_contribution_to_jacobian (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
void | fill_in_contribution_to_jacobian_and_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &jacobian, DenseMatrix< double > &mass_matrix) |
double | interpolated_c_adv_diff_react (const Vector< double > &s, const unsigned &i) const |
Return FE representation of function value c_i(s) at local coordinate s. More... | |
unsigned | self_test () |
Self-test: Return 0 for OK. More... | |
void | integrate_reagents (Vector< double > &C) const |
Return the integrated reagent concentrations. 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... | |
virtual bool | local_coord_is_valid (const Vector< double > &s) |
Broken assignment operator. More... | |
virtual void | move_local_coord_back_into_element (Vector< double > &s) const |
void | get_centre_of_gravity_and_max_radius_in_terms_of_zeta (Vector< double > &cog, double &max_radius) const |
virtual void | local_coordinate_of_node (const unsigned &j, Vector< double > &s) const |
virtual void | local_fraction_of_node (const unsigned &j, Vector< double > &s_fraction) |
virtual double | local_one_d_fraction_of_node (const unsigned &n1d, const unsigned &i) |
virtual void | set_macro_elem_pt (MacroElement *macro_elem_pt) |
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 | get_x_from_macro_element (const Vector< double > &s, Vector< double > &x) const |
virtual void | get_x_from_macro_element (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 (const Vector< double > &s, Shape &psi) const =0 |
virtual void | shape_at_knot (const unsigned &ipt, Shape &psi) const |
virtual void | dshape_local (const Vector< double > &s, Shape &psi, DShape &dpsids) const |
virtual void | dshape_local_at_knot (const unsigned &ipt, Shape &psi, DShape &dpsids) const |
virtual void | d2shape_local (const Vector< double > &s, Shape &psi, DShape &dpsids, DShape &d2psids) 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 | describe_local_dofs (std::ostream &out, const std::string ¤t_string) const |
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... | |
virtual unsigned | nnode_1d () const |
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 |
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 |
virtual Node * | get_node_at_local_coordinate (const Vector< double > &s) 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 ElementGeometry::ElementGeometry | element_geometry () const |
Return the geometry type of the element (either Q or T usually). More... | |
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_geometric_data (std::set< Data * > &geometric_data_pt) |
virtual double | s_min () const |
Min value of local coordinate. More... | |
virtual double | s_max () const |
Max. value of local coordinate. More... | |
double | size () const |
virtual double | compute_physical_size () const |
void | point_output (std::ostream &outfile, const Vector< double > &s) |
virtual unsigned | nplot_points_paraview (const unsigned &nplot) const |
virtual unsigned | nsub_elements_paraview (const unsigned &nplot) const |
void | output_paraview (std::ofstream &file_out, const unsigned &nplot) const |
virtual void | write_paraview_output_offset_information (std::ofstream &file_out, const unsigned &nplot, unsigned &counter) const |
virtual void | write_paraview_type (std::ofstream &file_out, const unsigned &nplot) const |
virtual void | write_paraview_offsets (std::ofstream &file_out, const unsigned &nplot, unsigned &offset_sum) 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 | 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 | get_s_plot (const unsigned &i, const unsigned &nplot, Vector< double > &s, const bool &shifted_to_interior=false) const |
virtual std::string | tecplot_zone_string (const unsigned &nplot) const |
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 unsigned | nplot_points (const unsigned &nplot) const |
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) |
virtual unsigned | get_bulk_node_number (const int &face_index, const unsigned &i) const |
virtual 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... | |
virtual unsigned | nnode_on_face () const |
void | face_node_number_error_check (const unsigned &i) const |
Range check for face node numbers. More... | |
virtual CoordinateMappingFctPt | face_to_bulk_coordinate_fct_pt (const int &face_index) const |
virtual BulkCoordinateDerivativesFctPt | bulk_coordinate_derivatives_fct_pt (const int &face_index) const |
![]() | |
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) |
![]() | |
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 |
![]() | |
RefineableAdvectionDiffusionReactionEquations () | |
Empty Constructor. More... | |
RefineableAdvectionDiffusionReactionEquations (const RefineableAdvectionDiffusionReactionEquations< NREAGENT, DIM > &dummy)=delete | |
Broken copy constructor. More... | |
void | operator= (const RefineableAdvectionDiffusionReactionEquations< NREAGENT, DIM > &)=delete |
Broken assignment operator. More... | |
unsigned | num_Z2_flux_terms () |
Number of 'flux' terms for Z2 error estimation. More... | |
void | get_Z2_flux (const Vector< double > &s, Vector< double > &flux) |
void | get_interpolated_values (const Vector< double > &s, Vector< double > &values) |
void | get_interpolated_values (const unsigned &t, const Vector< double > &s, Vector< double > &values) |
void | further_build () |
![]() | |
RefineableElement () | |
virtual | ~RefineableElement () |
Destructor, delete the allocated storage for the hanging equations. More... | |
RefineableElement (const RefineableElement &)=delete | |
Broken copy constructor. More... | |
void | operator= (const RefineableElement &)=delete |
Broken assignment operator. More... | |
Tree * | tree_pt () |
Access function: Pointer to quadtree representation of this element. More... | |
void | set_tree_pt (Tree *my_tree_pt) |
Set pointer to quadtree representation of this element. More... | |
virtual unsigned | required_nsons () const |
bool | refinement_is_enabled () |
Flag to indicate suppression of any refinement. More... | |
void | disable_refinement () |
Suppress of any refinement for this element. More... | |
void | enable_refinement () |
Emnable refinement for this element. More... | |
template<class ELEMENT > | |
void | split (Vector< ELEMENT * > &son_pt) const |
int | local_hang_eqn (Node *const &node_pt, const unsigned &i) |
virtual void | build (Mesh *&mesh_pt, Vector< Node * > &new_node_pt, bool &was_already_built, std::ofstream &new_nodes_file)=0 |
void | set_refinement_level (const int &refine_level) |
Set the refinement level. More... | |
unsigned | refinement_level () const |
Return the Refinement level. More... | |
void | select_for_refinement () |
Select the element for refinement. More... | |
void | deselect_for_refinement () |
Deselect the element for refinement. More... | |
void | select_sons_for_unrefinement () |
Unrefinement will be performed by merging the four sons of this element. More... | |
void | deselect_sons_for_unrefinement () |
bool | to_be_refined () |
Has the element been selected for refinement? More... | |
bool | sons_to_be_unrefined () |
Has the element been selected for unrefinement? More... | |
virtual void | unbuild () |
virtual void | deactivate_element () |
virtual bool | nodes_built () |
Return true if all the nodes have been built, false if not. More... | |
long | number () const |
Element number (for debugging/plotting) More... | |
void | set_number (const long &mynumber) |
Set element number (for debugging/plotting) More... | |
virtual Node * | interpolating_node_pt (const unsigned &n, const int &value_id) |
virtual double | local_one_d_fraction_of_interpolating_node (const unsigned &n1d, const unsigned &i, const int &value_id) |
virtual Node * | get_interpolating_node_at_local_coordinate (const Vector< double > &s, const int &value_id) |
virtual unsigned | ninterpolating_node (const int &value_id) |
virtual unsigned | ninterpolating_node_1d (const int &value_id) |
virtual void | interpolating_basis (const Vector< double > &s, Shape &psi, const int &value_id) const |
virtual void | check_integrity (double &max_error)=0 |
void | identify_field_data_for_interactions (std::set< std::pair< Data *, unsigned >> &paired_field_data) |
void | assign_nodal_local_eqn_numbers (const bool &store_local_dof_pt) |
virtual RefineableElement * | root_element_pt () |
virtual RefineableElement * | father_element_pt () const |
Return a pointer to the father element. More... | |
void | get_father_at_refinement_level (unsigned &refinement_level, RefineableElement *&father_at_reflevel_pt) |
virtual void | initial_setup (Tree *const &adopted_father_pt=0, const unsigned &initial_p_order=0) |
virtual void | pre_build (Mesh *&mesh_pt, Vector< Node * > &new_node_pt) |
Pre-build the element. More... | |
virtual void | setup_hanging_nodes (Vector< std::ofstream * > &output_stream) |
unsigned | nshape_controlling_nodes () |
std::map< Node *, unsigned > | shape_controlling_node_lookup () |
![]() | |
ElementWithZ2ErrorEstimator () | |
Default empty constructor. More... | |
ElementWithZ2ErrorEstimator (const ElementWithZ2ErrorEstimator &)=delete | |
Broken copy constructor. More... | |
void | operator= (const ElementWithZ2ErrorEstimator &)=delete |
Broken assignment operator. More... | |
virtual void | compute_exact_Z2_error (std::ostream &outfile, FiniteElement::SteadyExactSolutionFctPt exact_flux_pt, double &error, double &norm) |
virtual double | geometric_jacobian (const Vector< double > &x) |
![]() | |
RefineableQElement () | |
Empty constuctor. More... | |
![]() | |
RefineableQCrouzeixRaviartElement () | |
Constructor. More... | |
RefineableQCrouzeixRaviartElement (const RefineableQCrouzeixRaviartElement< DIM > &dummy)=delete | |
Broken copy constructor. More... | |
unsigned | ncont_interpolated_values () const |
Broken assignment operator. More... | |
void | rebuild_from_sons (Mesh *&mesh_pt) |
unsigned | nrecovery_order () |
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 | get_interpolated_values (const Vector< double > &s, Vector< double > &values) |
void | get_interpolated_values (const unsigned &t, const Vector< double > &s, Vector< double > &values) |
void | further_setup_hanging_nodes () |
void | further_build () |
void | build_fp_press_adv_diff_robin_bc_element (const unsigned &face_index) |
void | identify_load_data (std::set< std::pair< Data *, unsigned >> &paired_load_data) |
void | rebuild_from_sons (Mesh *&mesh_pt) |
2D Rebuild from sons: Reconstruct pressure from the (merged) sons More... | |
void | rebuild_from_sons (Mesh *&mesh_pt) |
3D Rebuild from sons: Reconstruct pressure from the (merged) sons More... | |
void | further_build () |
void | further_build () |
![]() | |
QCrouzeixRaviartElement () | |
Constructor, there are DIM+1 internal values (for the pressure) More... | |
void | pshape_nst (const Vector< double > &s, Shape &psi) const |
Pressure shape functions at local coordinate s. More... | |
void | pshape_nst (const Vector< double > &s, Shape &psi, Shape &test) const |
Pressure shape and test functions at local coordinte s. More... | |
double | p_nst (const unsigned &i) const |
double | p_nst (const unsigned &t, const unsigned &i) const |
unsigned | npres_nst () const |
Return number of pressure values. More... | |
double | dpshape_and_dptest_eulerian_nst (const Vector< double > &s, Shape &ppsi, DShape &dppsidx, Shape &ptest, DShape &dptestdx) const |
int | p_local_eqn (const unsigned &n) const |
Return the local equation numbers for the pressure values. More... | |
void | fix_pressure (const unsigned &p_dof, const double &p_value) |
Pin p_dof-th pressure dof and set it to value specified by p_value. More... | |
void | identify_pressure_data (std::set< std::pair< Data *, unsigned >> &paired_pressure_data) |
void | output (std::ostream &outfile) |
Redirect output to NavierStokesEquations output. More... | |
void | output (std::ostream &outfile, const unsigned &nplot) |
Redirect output to NavierStokesEquations output. More... | |
void | output (FILE *file_pt) |
Redirect output to NavierStokesEquations output. More... | |
void | output (FILE *file_pt, const unsigned &nplot) |
Redirect output to NavierStokesEquations output. More... | |
void | full_output (std::ostream &outfile) |
void | full_output (std::ostream &outfile, const unsigned &nplot) |
unsigned | ndof_types () const |
void | get_dof_numbers_for_unknowns (std::list< std::pair< unsigned long, unsigned >> &dof_lookup_list) const |
void | pshape_nst (const Vector< double > &s, Shape &psi) const |
double | dpshape_and_dptest_eulerian_nst (const Vector< double > &s, Shape &ppsi, DShape &dppsidx, Shape &ptest, DShape &dptestdx) const |
void | pshape_nst (const Vector< double > &s, Shape &psi) const |
double | dpshape_and_dptest_eulerian_nst (const Vector< double > &s, Shape &ppsi, DShape &dppsidx, Shape &ptest, DShape &dptestdx) const |
![]() | |
NavierStokesEquations () | |
const double & | re () const |
Reynolds number. More... | |
const double & | re_st () const |
Product of Reynolds and Strouhal number (=Womersley number) More... | |
double *& | re_pt () |
Pointer to Reynolds number. More... | |
double *& | re_st_pt () |
Pointer to product of Reynolds and Strouhal number (=Womersley number) More... | |
const double & | viscosity_ratio () const |
double *& | viscosity_ratio_pt () |
Pointer to Viscosity Ratio. More... | |
const double & | density_ratio () const |
double *& | density_ratio_pt () |
Pointer to Density ratio. More... | |
const double & | re_invfr () const |
Global inverse Froude number. More... | |
double *& | re_invfr_pt () |
Pointer to global inverse Froude number. More... | |
const Vector< double > & | g () const |
Vector of gravitational components. More... | |
Vector< double > *& | g_pt () |
Pointer to Vector of gravitational components. More... | |
NavierStokesBodyForceFctPt & | body_force_fct_pt () |
Access function for the body-force pointer. More... | |
NavierStokesBodyForceFctPt | body_force_fct_pt () const |
Access function for the body-force pointer. Const version. More... | |
NavierStokesSourceFctPt & | source_fct_pt () |
Access function for the source-function pointer. More... | |
NavierStokesSourceFctPt | source_fct_pt () const |
Access function for the source-function pointer. Const version. More... | |
NavierStokesPressureAdvDiffSourceFctPt & | source_fct_for_pressure_adv_diff () |
NavierStokesPressureAdvDiffSourceFctPt | source_fct_for_pressure_adv_diff () const |
int & | pinned_fp_pressure_eqn () |
double | u_nst (const unsigned &n, const unsigned &i) const |
double | u_nst (const unsigned &t, const unsigned &n, const unsigned &i) const |
virtual unsigned | u_index_nst (const unsigned &i) const |
unsigned | n_u_nst () const |
double | du_dt_nst (const unsigned &n, const unsigned &i) const |
void | disable_ALE () |
void | enable_ALE () |
virtual int | p_nodal_index_nst () const |
double | pressure_integral () const |
Integral of pressure over element. More... | |
double | dissipation () const |
Return integral of dissipation over element. More... | |
double | dissipation (const Vector< double > &s) const |
Return dissipation at local coordinate s. More... | |
void | get_vorticity (const Vector< double > &s, Vector< double > &vorticity) const |
Compute the vorticity vector at local coordinate s. More... | |
void | get_vorticity (const Vector< double > &s, double &vorticity) const |
Compute the scalar vorticity at local coordinate s (2D) More... | |
double | kin_energy () const |
Get integral of kinetic energy over element. More... | |
double | d_kin_energy_dt () const |
Get integral of time derivative of kinetic energy over element. More... | |
void | strain_rate (const Vector< double > &s, DenseMatrix< double > &strain_rate) const |
Strain-rate tensor: 1/2 (du_i/dx_j + du_j/dx_i) More... | |
void | get_traction (const Vector< double > &s, const Vector< double > &N, Vector< double > &traction) |
void | get_traction (const Vector< double > &s, const Vector< double > &N, Vector< double > &traction_p, Vector< double > &traction_visc_n, Vector< double > &traction_visc_t) |
void | get_load (const Vector< double > &s, const Vector< double > &N, Vector< double > &load) |
unsigned | nscalar_paraview () const |
void | scalar_value_paraview (std::ofstream &file_out, const unsigned &i, const unsigned &nplot) const |
void | scalar_value_fct_paraview (std::ofstream &file_out, const unsigned &i, const unsigned &nplot, const double &time, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt) const |
std::string | scalar_name_paraview (const unsigned &i) const |
void | full_output (std::ostream &outfile) |
void | full_output (std::ostream &outfile, const unsigned &nplot) |
void | output_veloc (std::ostream &outfile, const unsigned &nplot, const unsigned &t) |
void | output_vorticity (std::ostream &outfile, const unsigned &nplot) |
void | output_fct (std::ostream &outfile, const unsigned &nplot, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt) |
void | output_fct (std::ostream &outfile, const unsigned &nplot, const double &time, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt) |
void | compute_norm (double &norm) |
Compute norm of solution: square of the L2 norm of the velocities. More... | |
void | compute_norm (Vector< double > &norm) |
Compute the vector norm of the FEM solution. More... | |
void | compute_error (std::ostream &outfile, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, double &error, double &norm) |
void | compute_error (std::ostream &outfile, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, double &error, double &norm) |
void | compute_error (FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, double &error, double &norm) |
void | compute_error (FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, double &error, double &norm) |
void | fill_in_contribution_to_residuals (Vector< double > &residuals) |
Compute the element's residual Vector. More... | |
void | fill_in_contribution_to_jacobian (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
void | fill_in_contribution_to_jacobian_and_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &jacobian, DenseMatrix< double > &mass_matrix) |
void | fill_in_contribution_to_dresiduals_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam) |
Compute the element's residual Vector. More... | |
void | fill_in_contribution_to_djacobian_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam, DenseMatrix< double > &djac_dparam) |
void | fill_in_contribution_to_djacobian_and_dmass_matrix_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam, DenseMatrix< double > &djac_dparam, DenseMatrix< double > &dmass_matrix_dparam) |
void | fill_in_pressure_advection_diffusion_residuals (Vector< double > &residuals) |
void | fill_in_pressure_advection_diffusion_jacobian (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
void | pin_all_non_pressure_dofs (std::map< Data *, std::vector< int >> &eqn_number_backup) |
Pin all non-pressure dofs and backup eqn numbers. More... | |
void | output_pressure_advection_diffusion_robin_elements (std::ostream &outfile) |
void | delete_pressure_advection_diffusion_robin_elements () |
void | interpolated_u_nst (const Vector< double > &s, Vector< double > &veloc) const |
Compute vector of FE interpolated velocity u at local coordinate s. More... | |
double | interpolated_u_nst (const Vector< double > &s, const unsigned &i) const |
Return FE interpolated velocity u[i] at local coordinate s. More... | |
double | interpolated_u_nst (const unsigned &t, const Vector< double > &s, const unsigned &i) const |
virtual double | interpolated_p_nst (const Vector< double > &s) const |
Return FE interpolated pressure at local coordinate s. More... | |
double | interpolated_p_nst (const unsigned &t, const Vector< double > &s) const |
Return FE interpolated pressure at local coordinate s at time level t. More... | |
double | interpolated_dudx_nst (const Vector< double > &s, const unsigned &i, const unsigned &j) const |
void | point_output_data (const Vector< double > &s, Vector< double > &data) |
void | get_vorticity (const Vector< double > &s, Vector< double > &vorticity) const |
void | get_vorticity (const Vector< double > &s, double &vorticity) const |
void | get_vorticity (const Vector< double > &s, Vector< double > &vorticity) const |
Compute 3D vorticity vector at local coordinate s. More... | |
![]() | |
FSIFluidElement () | |
Constructor. More... | |
FSIFluidElement (const FSIFluidElement &)=delete | |
Broken copy constructor. More... | |
void | operator= (const FSIFluidElement &)=delete |
Broken assignment operator. More... | |
![]() | |
TemplateFreeNavierStokesEquationsBase () | |
Constructor (empty) More... | |
virtual | ~TemplateFreeNavierStokesEquationsBase () |
Virtual destructor (empty) More... | |
![]() | |
NavierStokesElementWithDiagonalMassMatrices () | |
Empty constructor. More... | |
virtual | ~NavierStokesElementWithDiagonalMassMatrices () |
Virtual destructor. More... | |
NavierStokesElementWithDiagonalMassMatrices (const NavierStokesElementWithDiagonalMassMatrices &)=delete | |
Broken copy constructor. More... | |
void | operator= (const NavierStokesElementWithDiagonalMassMatrices &)=delete |
Broken assignment operator. More... | |
![]() | |
RefineableNavierStokesEquations () | |
Constructor. More... | |
virtual Node * | pressure_node_pt (const unsigned &n_p) |
void | get_pressure_and_velocity_mass_matrix_diagonal (Vector< double > &press_mass_diag, Vector< double > &veloc_mass_diag, const unsigned &which_one=0) |
unsigned | num_Z2_flux_terms () |
Number of 'flux' terms for Z2 error estimation. More... | |
void | get_Z2_flux (const Vector< double > &s, Vector< double > &flux) |
void | dinterpolated_u_nst_ddata (const Vector< double > &s, const unsigned &i, Vector< double > &du_ddata, Vector< unsigned > &global_eqn_number) |
Private Member Functions | |
double | Default_Physical_Constant_Value |
Set the default physical value to be one. More... | |
Private Attributes | |
double * | Km_pt |
Pointer to private data. The value of Km. More... | |
double * | N_pt |
Static Private Attributes | |
static double | Default_Physical_Constant_Value |
The static default value of the Rayleigh number. More... | |
Additional Inherited Members | |
![]() | |
typedef void(* | AdvectionDiffusionReactionSourceFctPt) (const Vector< double > &x, Vector< double > &f) |
typedef void(* | AdvectionDiffusionReactionReactionFctPt) (const Vector< double > &c, Vector< double > &R) |
Function pointer to reaction terms. More... | |
typedef void(* | AdvectionDiffusionReactionReactionDerivFctPt) (const Vector< double > &c, DenseMatrix< double > &dRdC) |
Function pointer to derivative of reaction terms. More... | |
typedef void(* | AdvectionDiffusionReactionWindFctPt) (const double &time, const Vector< double > &x, Vector< double > &wind) |
![]() | |
typedef void(* | SteadyExactSolutionFctPt) (const Vector< double > &, Vector< double > &) |
typedef void(* | UnsteadyExactSolutionFctPt) (const double &, const Vector< double > &, Vector< double > &) |
![]() | |
typedef void(* | NavierStokesBodyForceFctPt) (const double &time, const Vector< double > &x, Vector< double > &body_force) |
typedef double(* | NavierStokesSourceFctPt) (const double &time, const Vector< double > &x) |
typedef double(* | NavierStokesPressureAdvDiffSourceFctPt) (const Vector< double > &x) |
![]() | |
static double & | max_integrity_tolerance () |
Max. allowed discrepancy in element integrity check. More... | |
![]() | |
static void | pin_redundant_nodal_pressures (const Vector< GeneralisedElement * > &element_pt) |
static void | unpin_all_pressure_dofs (const Vector< GeneralisedElement * > &element_pt) |
Unpin all pressure dofs in elements listed in vector. More... | |
![]() | |
static double | Tolerance_for_singular_jacobian = 1.0e-16 |
Tolerance below which the jacobian is considered singular. More... | |
static bool | Accept_negative_jacobian = false |
static bool | Suppress_output_while_checking_for_inverted_elements |
![]() | |
static bool | Suppress_warning_about_repeated_internal_data |
static bool | Suppress_warning_about_repeated_external_data = true |
static double | Default_fd_jacobian_step = 1.0e-8 |
![]() | |
static Vector< double > | Gamma |
Vector to decide whether the stress-divergence form is used or not. More... | |
![]() | |
double | dshape_and_dtest_eulerian_adv_diff_react (const Vector< double > &s, Shape &psi, DShape &dpsidx, Shape &test, DShape &dtestdx) const |
double | dshape_and_dtest_eulerian_at_knot_adv_diff_react (const unsigned &ipt, Shape &psi, DShape &dpsidx, Shape &test, DShape &dtestdx) const |
![]() | |
template<unsigned DIM> | |
double | invert_jacobian (const DenseMatrix< double > &jacobian, DenseMatrix< double > &inverse_jacobian) const |
virtual double | invert_jacobian_mapping (const DenseMatrix< double > &jacobian, DenseMatrix< double > &inverse_jacobian) const |
virtual double | local_to_eulerian_mapping (const DShape &dpsids, DenseMatrix< double > &jacobian, DenseMatrix< double > &inverse_jacobian) const |
double | local_to_eulerian_mapping (const DShape &dpsids, DenseMatrix< double > &inverse_jacobian) const |
virtual void | dJ_eulerian_dnodal_coordinates (const DenseMatrix< double > &jacobian, const DShape &dpsids, DenseMatrix< double > &djacobian_dX) const |
template<unsigned DIM> | |
void | dJ_eulerian_dnodal_coordinates_templated_helper (const DenseMatrix< double > &jacobian, const DShape &dpsids, DenseMatrix< double > &djacobian_dX) const |
virtual void | d_dshape_eulerian_dnodal_coordinates (const double &det_jacobian, const DenseMatrix< double > &jacobian, const DenseMatrix< double > &djacobian_dX, const DenseMatrix< double > &inverse_jacobian, const DShape &dpsids, RankFourTensor< double > &d_dpsidx_dX) const |
template<unsigned DIM> | |
void | d_dshape_eulerian_dnodal_coordinates_templated_helper (const double &det_jacobian, const DenseMatrix< double > &jacobian, const DenseMatrix< double > &djacobian_dX, const DenseMatrix< double > &inverse_jacobian, const DShape &dpsids, RankFourTensor< double > &d_dpsidx_dX) const |
virtual void | transform_derivatives (const DenseMatrix< double > &inverse_jacobian, DShape &dbasis) const |
void | transform_derivatives_diagonal (const DenseMatrix< double > &inverse_jacobian, DShape &dbasis) const |
virtual void | transform_second_derivatives (const DenseMatrix< double > &jacobian, const DenseMatrix< double > &inverse_jacobian, const DenseMatrix< double > &jacobian2, DShape &dbasis, DShape &d2basis) const |
template<unsigned DIM> | |
void | transform_second_derivatives_template (const DenseMatrix< double > &jacobian, const DenseMatrix< double > &inverse_jacobian, const DenseMatrix< double > &jacobian2, DShape &dbasis, DShape &d2basis) const |
template<unsigned DIM> | |
void | transform_second_derivatives_diagonal (const DenseMatrix< double > &jacobian, const DenseMatrix< double > &inverse_jacobian, const DenseMatrix< double > &jacobian2, DShape &dbasis, DShape &d2basis) const |
void | fill_in_jacobian_from_nodal_by_fd (DenseMatrix< double > &jacobian) |
virtual void | update_before_nodal_fd () |
virtual void | reset_after_nodal_fd () |
virtual void | update_in_nodal_fd (const unsigned &i) |
virtual void | reset_in_nodal_fd (const unsigned &i) |
template<> | |
double | invert_jacobian (const DenseMatrix< double > &jacobian, DenseMatrix< double > &inverse_jacobian) const |
Zero-d specialisation of function to calculate inverse of jacobian mapping. More... | |
template<> | |
double | invert_jacobian (const DenseMatrix< double > &jacobian, DenseMatrix< double > &inverse_jacobian) const |
One-d specialisation of function to calculate inverse of jacobian mapping. More... | |
template<> | |
double | invert_jacobian (const DenseMatrix< double > &jacobian, DenseMatrix< double > &inverse_jacobian) const |
Two-d specialisation of function to calculate inverse of jacobian mapping. More... | |
template<> | |
double | invert_jacobian (const DenseMatrix< double > &jacobian, DenseMatrix< double > &inverse_jacobian) const |
template<> | |
void | dJ_eulerian_dnodal_coordinates_templated_helper (const DenseMatrix< double > &jacobian, const DShape &dpsids, DenseMatrix< double > &djacobian_dX) const |
template<> | |
void | dJ_eulerian_dnodal_coordinates_templated_helper (const DenseMatrix< double > &jacobian, const DShape &dpsids, DenseMatrix< double > &djacobian_dX) const |
template<> | |
void | dJ_eulerian_dnodal_coordinates_templated_helper (const DenseMatrix< double > &jacobian, const DShape &dpsids, DenseMatrix< double > &djacobian_dX) const |
template<> | |
void | dJ_eulerian_dnodal_coordinates_templated_helper (const DenseMatrix< double > &jacobian, const DShape &dpsids, DenseMatrix< double > &djacobian_dX) const |
template<> | |
void | d_dshape_eulerian_dnodal_coordinates_templated_helper (const double &det_jacobian, const DenseMatrix< double > &jacobian, const DenseMatrix< double > &djacobian_dX, const DenseMatrix< double > &inverse_jacobian, const DShape &dpsids, RankFourTensor< double > &d_dpsidx_dX) const |
template<> | |
void | d_dshape_eulerian_dnodal_coordinates_templated_helper (const double &det_jacobian, const DenseMatrix< double > &jacobian, const DenseMatrix< double > &djacobian_dX, const DenseMatrix< double > &inverse_jacobian, const DShape &dpsids, RankFourTensor< double > &d_dpsidx_dX) const |
template<> | |
void | d_dshape_eulerian_dnodal_coordinates_templated_helper (const double &det_jacobian, const DenseMatrix< double > &jacobian, const DenseMatrix< double > &djacobian_dX, const DenseMatrix< double > &inverse_jacobian, const DShape &dpsids, RankFourTensor< double > &d_dpsidx_dX) const |
template<> | |
void | d_dshape_eulerian_dnodal_coordinates_templated_helper (const double &det_jacobian, const DenseMatrix< double > &jacobian, const DenseMatrix< double > &djacobian_dX, const DenseMatrix< double > &inverse_jacobian, const DShape &dpsids, RankFourTensor< double > &d_dpsidx_dX) const |
template<> | |
void | transform_second_derivatives_template (const DenseMatrix< double > &jacobian, const DenseMatrix< double > &inverse_jacobian, const DenseMatrix< double > &jacobian2, DShape &dbasis, DShape &d2basis) const |
template<> | |
void | transform_second_derivatives_template (const DenseMatrix< double > &jacobian, const DenseMatrix< double > &inverse_jacobian, const DenseMatrix< double > &jacobian2, DShape &dbasis, DShape &d2basis) const |
template<> | |
void | transform_second_derivatives_diagonal (const DenseMatrix< double > &jacobian, const DenseMatrix< double > &inverse_jacobian, const DenseMatrix< double > &jacobian2, DShape &dbasis, DShape &d2basis) const |
template<> | |
void | transform_second_derivatives_diagonal (const DenseMatrix< double > &jacobian, const DenseMatrix< double > &inverse_jacobian, const DenseMatrix< double > &jacobian2, DShape &dbasis, DShape &d2basis) const |
![]() | |
unsigned | add_internal_data (Data *const &data_pt, const bool &fd=true) |
bool | internal_data_fd (const unsigned &i) const |
void | exclude_internal_data_fd (const unsigned &i) |
void | include_internal_data_fd (const unsigned &i) |
void | clear_global_eqn_numbers () |
void | add_global_eqn_numbers (std::deque< unsigned long > const &global_eqn_numbers, std::deque< double * > const &global_dof_pt) |
virtual void | assign_internal_and_external_local_eqn_numbers (const bool &store_local_dof_pt) |
virtual void | assign_additional_local_eqn_numbers () |
int | internal_local_eqn (const unsigned &i, const unsigned &j) const |
int | external_local_eqn (const unsigned &i, const unsigned &j) |
void | fill_in_jacobian_from_internal_by_fd (Vector< double > &residuals, DenseMatrix< double > &jacobian, const bool &fd_all_data=false) |
void | fill_in_jacobian_from_internal_by_fd (DenseMatrix< double > &jacobian, const bool &fd_all_data=false) |
void | fill_in_jacobian_from_external_by_fd (Vector< double > &residuals, DenseMatrix< double > &jacobian, const bool &fd_all_data=false) |
void | fill_in_jacobian_from_external_by_fd (DenseMatrix< double > &jacobian, const bool &fd_all_data=false) |
virtual void | update_before_internal_fd () |
virtual void | reset_after_internal_fd () |
virtual void | update_in_internal_fd (const unsigned &i) |
virtual void | reset_in_internal_fd (const unsigned &i) |
virtual void | update_before_external_fd () |
virtual void | reset_after_external_fd () |
virtual void | update_in_external_fd (const unsigned &i) |
virtual void | reset_in_external_fd (const unsigned &i) |
virtual void | fill_in_contribution_to_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &mass_matrix) |
virtual void | fill_in_contribution_to_inner_products (Vector< std::pair< unsigned, unsigned >> const &history_index, Vector< double > &inner_product) |
virtual void | fill_in_contribution_to_inner_product_vectors (Vector< unsigned > const &history_index, Vector< Vector< double >> &inner_product_vector) |
![]() | |
void | fill_in_generic_residual_contribution_adv_diff_react (Vector< double > &residuals, DenseMatrix< double > &jacobian, DenseMatrix< double > &mass_matrix, unsigned flag) |
![]() | |
void | assemble_local_to_eulerian_jacobian (const DShape &dpsids, DenseMatrix< double > &jacobian) const |
void | assemble_local_to_eulerian_jacobian2 (const DShape &d2psids, DenseMatrix< double > &jacobian2) const |
void | assemble_eulerian_base_vectors (const DShape &dpsids, DenseMatrix< double > &interpolated_G) const |
double | local_to_eulerian_mapping_diagonal (const DShape &dpsids, DenseMatrix< double > &jacobian, DenseMatrix< double > &inverse_jacobian) const |
void | assign_hanging_local_eqn_numbers (const bool &store_local_dof_pt) |
Assign the local equation numbers for hanging node variables. More... | |
virtual void | fill_in_jacobian_from_nodal_by_fd (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
![]() | |
double | dshape_and_dtest_eulerian_nst (const Vector< double > &s, Shape &psi, DShape &dpsidx, Shape &test, DShape &dtestdx) const |
double | dshape_and_dtest_eulerian_at_knot_nst (const unsigned &ipt, Shape &psi, DShape &dpsidx, Shape &test, DShape &dtestdx) const |
double | dshape_and_dtest_eulerian_at_knot_nst (const unsigned &ipt, Shape &psi, DShape &dpsidx, RankFourTensor< double > &d_dpsidx_dX, Shape &test, DShape &dtestdx, RankFourTensor< double > &d_dtestdx_dX, DenseMatrix< double > &djacobian_dX) const |
double | dshape_and_dtest_eulerian_at_knot_nst (const unsigned &ipt, Shape &psi, DShape &dpsidx, RankFourTensor< double > &d_dpsidx_dX, Shape &test, DShape &dtestdx, RankFourTensor< double > &d_dtestdx_dX, DenseMatrix< double > &djacobian_dX) const |
double | dshape_and_dtest_eulerian_at_knot_nst (const unsigned &ipt, Shape &psi, DShape &dpsidx, RankFourTensor< double > &d_dpsidx_dX, Shape &test, DShape &dtestdx, RankFourTensor< double > &d_dtestdx_dX, DenseMatrix< double > &djacobian_dX) const |
![]() | |
virtual void | get_body_force_nst (const double &time, const unsigned &ipt, const Vector< double > &s, const Vector< double > &x, Vector< double > &result) |
virtual void | get_body_force_gradient_nst (const double &time, const unsigned &ipt, const Vector< double > &s, const Vector< double > &x, DenseMatrix< double > &d_body_force_dx) |
virtual double | get_source_nst (const double &time, const unsigned &ipt, const Vector< double > &x) |
virtual void | get_source_gradient_nst (const double &time, const unsigned &ipt, const Vector< double > &x, Vector< double > &gradient) |
virtual void | fill_in_generic_dresidual_contribution_nst (double *const ¶meter_pt, Vector< double > &dres_dparam, DenseMatrix< double > &djac_dparam, DenseMatrix< double > &dmass_matrix_dparam, unsigned flag) |
void | fill_in_contribution_to_hessian_vector_products (Vector< double > const &Y, DenseMatrix< double > const &C, DenseMatrix< double > &product) |
![]() | |
virtual void | pin_elemental_redundant_nodal_pressure_dofs () |
void | fill_in_generic_residual_contribution_nst (Vector< double > &residuals, DenseMatrix< double > &jacobian, DenseMatrix< double > &mass_matrix, unsigned flag) |
void | fill_in_generic_pressure_advection_diffusion_contribution_nst (Vector< double > &residuals, DenseMatrix< double > &jacobian, unsigned flag) |
virtual void | get_dresidual_dnodal_coordinates (RankThreeTensor< double > &dresidual_dnodal_coordinates) |
![]() | |
static void | check_value_id (const int &n_continuously_interpolated_values, const int &value_id) |
![]() | |
Vector< double > * | Diff_pt |
Pointer to global diffusion coefficients. More... | |
Vector< double > * | Tau_pt |
Pointer to global timescales. More... | |
AdvectionDiffusionReactionSourceFctPt | Source_fct_pt |
Pointer to source function: More... | |
AdvectionDiffusionReactionWindFctPt | Wind_fct_pt |
Pointer to wind function: More... | |
AdvectionDiffusionReactionReactionFctPt | Reaction_fct_pt |
Pointer to reaction function. More... | |
AdvectionDiffusionReactionReactionDerivFctPt | Reaction_deriv_fct_pt |
Pointer to reaction derivatives. More... | |
bool | ALE_is_disabled |
![]() | |
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 |
![]() | |
Tree * | Tree_pt |
A pointer to a general tree object. More... | |
unsigned | Refine_level |
Refinement level. More... | |
bool | To_be_refined |
Flag for refinement. More... | |
bool | Refinement_is_enabled |
Flag to indicate suppression of any refinement. More... | |
bool | Sons_to_be_unrefined |
Flag for unrefinement. More... | |
long | Number |
Global element number – for plotting/validation purposes. More... | |
![]() | |
unsigned | P_nst_internal_index |
![]() | |
double * | Viscosity_Ratio_pt |
double * | Density_Ratio_pt |
double * | Re_pt |
Pointer to global Reynolds number. More... | |
double * | ReSt_pt |
Pointer to global Reynolds number x Strouhal number (=Womersley) More... | |
double * | ReInvFr_pt |
Vector< double > * | G_pt |
Pointer to global gravity Vector. More... | |
NavierStokesBodyForceFctPt | Body_force_fct_pt |
Pointer to body force function. More... | |
NavierStokesSourceFctPt | Source_fct_pt |
Pointer to volumetric source function. More... | |
NavierStokesPressureAdvDiffSourceFctPt | Press_adv_diff_source_fct_pt |
bool | ALE_is_disabled |
Vector< FpPressureAdvDiffRobinBCElementBase * > | Pressure_advection_diffusion_robin_element_pt |
int | Pinned_fp_pressure_eqn |
![]() | |
static const unsigned | N_reagent |
![]() | |
static const unsigned | Default_Initial_Nvalue = 0 |
Default value for the number of values at a node. More... | |
static const double | Node_location_tolerance = 1.0e-14 |
static const unsigned | N2deriv [] = {0, 1, 3, 6} |
![]() | |
static DenseMatrix< double > | Dummy_matrix |
static std::deque< double * > | Dof_pt_deque |
![]() | |
static double | Max_integrity_tolerance = 1.0e-8 |
Max. allowed discrepancy in element integrity check. More... | |
A RefinebleELement class that solves the coupled Navier–Stokes and energy equations by coupling two pre-existing classes. The QAdvectionDiffusionReactionElement with bi-quadratic interpolation for the scalar variables (temperature and concentration) and QCrouzeixRaviartElement which solves the Navier–Stokes equations using bi-quadratic interpolation for the velocities and a discontinuous bi-linear interpolation for the pressure. Note that we are free to choose the order in which we store the variables at the nodes. In this case we choose to store the variables in the order fluid velocities followed by bulk concentration followed by micelle concentration. We must, therefore, overload the function AdvectionDiffusionReactionEquations<2,DIM>::u_index_adv_diff_react() to indicate that the concentraion is stored at the DIM-th position not the 0-th. We do not need to overload the corresponding function in the NavierStokesEquations<DIM> class because the velocities are stored first.
|
inline |
Constructor: call the underlying constructors and initialise the pointer to the Rayleigh number to point to the default value of 0.0.
References oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::Default_Physical_Constant_Value, oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::Km_pt, and oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::N_pt.
|
inlinevirtual |
Overload the index at which the temperature and solute concentration variables are stored.
Reimplemented from oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >.
Referenced by oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::fill_in_off_diagonal_jacobian_blocks_by_fd(), and oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::integrated_C_and_M().
|
inlinevirtual |
Validate against exact solution. Solution is provided via function pointer. Plot at a given number of plot points and compute L2 error and L2 norm of velocity solution over element Call the broken default
Reimplemented from oomph::FiniteElement.
References oomph::FiniteElement::compute_error(), and calibrate::error.
|
inlinevirtual |
Validate against exact solution at given time Solution is provided via function pointer. Plot at a given number of plot points and compute L2 error and L2 norm of velocity solution over element Call the broken default
Reimplemented from oomph::FiniteElement.
References oomph::FiniteElement::compute_error(), and calibrate::error.
|
inlinevirtual |
Compute norm of solution – broken virtual can be overloaded by element writer to implement whatever norm is desired for the specific element
Reimplemented from oomph::GeneralisedElement.
References oomph::NavierStokesEquations< DIM >::compute_norm().
|
private |
Set the default physical value to be one.
|
inlinevirtual |
Final override for disable ALE.
Reimplemented from oomph::FiniteElement.
References oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >::disable_ALE(), and oomph::NavierStokesEquations< DIM >::disable_ALE().
|
inlinevirtual |
Final override for enable ALE.
Reimplemented from oomph::FiniteElement.
References oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >::enable_ALE(), and oomph::NavierStokesEquations< DIM >::enable_ALE().
|
inlinevirtual |
Compute the element's residual Vector and the Jacobian matrix. Use finite-differencing only for the off-diagonal blocks.
Reimplemented from oomph::GeneralisedElement.
References oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >::fill_in_contribution_to_jacobian(), oomph::NavierStokesEquations< DIM >::fill_in_contribution_to_jacobian(), and oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::fill_in_off_diagonal_jacobian_blocks_by_fd().
|
inlinevirtual |
Add the element's contribution to its residuals vector, jacobian matrix and mass matrix
Reimplemented from oomph::GeneralisedElement.
References oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >::fill_in_contribution_to_jacobian_and_mass_matrix(), oomph::NavierStokesEquations< DIM >::fill_in_contribution_to_jacobian_and_mass_matrix(), and oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::fill_in_off_diagonal_jacobian_blocks_by_fd().
|
inlinevirtual |
Calculate the element's contribution to the residual vector. Recall that fill_in_* functions MUST NOT initialise the entries in the vector to zero. This allows us to call the fill_in_* functions of the constituent single-physics elements sequentially, without wiping out any previously computed entries.
Reimplemented from oomph::GeneralisedElement.
References oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >::fill_in_contribution_to_residuals(), and oomph::NavierStokesEquations< DIM >::fill_in_contribution_to_residuals().
|
inline |
Helper function to get the off-diagonal blocks of the Jacobian matrix by finite differences
References oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::c_index_adv_diff_react(), oomph::GeneralisedElement::Default_fd_jacobian_step, DIM, oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >::fill_in_contribution_to_residuals(), oomph::NavierStokesEquations< DIM >::fill_in_contribution_to_residuals(), oomph::Node::hanging_pt(), i, oomph::Node::is_hanging(), j, oomph::RefineableElement::local_hang_eqn(), m, oomph::HangInfo::master_node_pt(), oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::n(), oomph::GeneralisedElement::ndof(), oomph::HangInfo::nmaster(), oomph::FiniteElement::nnode(), oomph::FiniteElement::nodal_local_eqn(), oomph::FiniteElement::node_pt(), UniformPSDSelfTest::r, oomph::NavierStokesEquations< DIM >::u_index_nst(), and oomph::Data::value_pt().
Referenced by oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::fill_in_contribution_to_jacobian(), and oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::fill_in_contribution_to_jacobian_and_mass_matrix().
|
inlinevirtual |
Call the underlying single-physics element's further_build() functions and make sure that the pointer to the Rayleigh number is passed to the sons
Reimplemented from oomph::RefineableElement.
References oomph::RefineableElement::father_element_pt(), oomph::RefineableAdvectionDiffusionReactionEquations< NREAGENT, DIM >::further_build(), oomph::RefineableQCrouzeixRaviartElement< DIM >::further_build(), oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::km_pt(), and oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::n_pt().
|
inlinevirtual |
The additional hanging node information must be set up for both single-physics elements.
Reimplemented from oomph::RefineableElement.
References oomph::RefineableQAdvectionDiffusionReactionElement< NREAGENT, DIM, NNODE_1D >::further_setup_hanging_nodes(), and oomph::RefineableQCrouzeixRaviartElement< DIM >::further_setup_hanging_nodes().
|
inlinevirtual |
Get all continuously interpolated values at the local coordinate s at time level t (t=0: present; t>0: previous). We choose to put the fluid velocities first, followed by the temperature
Implements oomph::RefineableElement.
References DIM, oomph::RefineableAdvectionDiffusionReactionEquations< NREAGENT, DIM >::get_interpolated_values(), oomph::RefineableQCrouzeixRaviartElement< DIM >::get_interpolated_values(), i, s, and plotPSD::t.
|
inlinevirtual |
Get the continuously interpolated values at the local coordinate s. We choose to put the fluid velocities first, followed by the temperature.
Reimplemented from oomph::RefineableElement.
References DIM, oomph::RefineableAdvectionDiffusionReactionEquations< NREAGENT, DIM >::get_interpolated_values(), oomph::RefineableQCrouzeixRaviartElement< DIM >::get_interpolated_values(), i, and s.
|
inlinevirtual |
Overload the reaction terms to couple the concentration and micelle terms
Reimplemented from oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >.
References oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::km(), oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::n(), Eigen::bfloat16_impl::pow(), and R.
|
inlinevirtual |
Get the derivatives of the reaction terms with respect to the concentration variables. If no explicit function pointer is set, these will be calculated by finite differences
Reimplemented from oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >.
References oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::km(), N, oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::n(), and Eigen::bfloat16_impl::pow().
|
inlinevirtual |
Overload the wind function in the advection-diffusion equations. This provides the coupling from the Navier–Stokes equations to the advection-diffusion equations because the wind is the fluid velocity.
Reimplemented from oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >.
References oomph::NavierStokesEquations< DIM >::interpolated_u_nst().
|
inlinevirtual |
Fill in which flux components are associated with the fluid measure and which are associated with the temperature measure
Reimplemented from oomph::ElementWithZ2ErrorEstimator.
References i, oomph::RefineableAdvectionDiffusionReactionEquations< NREAGENT, DIM >::num_Z2_flux_terms(), and oomph::RefineableNavierStokesEquations< DIM >::num_Z2_flux_terms().
|
inlinevirtual |
Get the Z2 flux by concatenating the fluxes from the fluid and the advection diffusion elements.
Implements oomph::ElementWithZ2ErrorEstimator.
References ProblemParameters::flux(), oomph::RefineableAdvectionDiffusionReactionEquations< NREAGENT, DIM >::get_Z2_flux(), oomph::RefineableNavierStokesEquations< DIM >::get_Z2_flux(), i, oomph::RefineableAdvectionDiffusionReactionEquations< NREAGENT, DIM >::num_Z2_flux_terms(), oomph::RefineableNavierStokesEquations< DIM >::num_Z2_flux_terms(), and s.
|
inline |
References oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::c_index_adv_diff_react(), oomph::FiniteElement::integral_pt(), J, oomph::FiniteElement::J_eulerian_at_knot(), oomph::FiniteElement::nnode(), oomph::FiniteElement::nodal_value(), oomph::Integral::nweight(), UniformPSDSelfTest::r, oomph::FiniteElement::shape_at_knot(), w, oomph::QuadTreeNames::W, and oomph::Integral::weight().
|
inline |
Access function for the transfer constant.
References oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::Km_pt.
Referenced by oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::get_reaction_adv_diff_react(), and oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::get_reaction_deriv_adv_diff_react().
|
inline |
Access function for the pointer to transfer constant.
References oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::Km_pt.
Referenced by oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::further_build().
|
inline |
Access function for the number of monomers in the micelle.
References oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::N_pt.
Referenced by oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::fill_in_off_diagonal_jacobian_blocks_by_fd(), oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::get_reaction_adv_diff_react(), oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::get_reaction_deriv_adv_diff_react(), and oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::required_nvalue().
|
inline |
Access function for the pointer to the number of monomers in the micelle.
References oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::N_pt.
Referenced by oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::further_build().
|
inlinevirtual |
The number of compound fluxes is two (one for the fluid and one for the concentrations) ALH: May want 3 fluxes here
Reimplemented from oomph::ElementWithZ2ErrorEstimator.
|
inlinevirtual |
The total number of continously interpolated values is DIM+2 (DIM fluid velocities and TWO concentrations).
Implements oomph::RefineableElement.
References DIM.
|
inlinevirtual |
The recovery order is that of the NavierStokes elements.
Implements oomph::ElementWithZ2ErrorEstimator.
References oomph::RefineableQCrouzeixRaviartElement< DIM >::nrecovery_order().
|
inlinevirtual |
The number of Z2 flux terms is the same as that in the fluid element plus that in the advection-diffusion element
Implements oomph::ElementWithZ2ErrorEstimator.
|
inlinevirtual |
geometric element.
Number of vertex nodes in the element is obtained from the
Implements oomph::ElementWithZ2ErrorEstimator.
|
inlinevirtual |
C-style output function: Broken default.
Reimplemented from oomph::FiniteElement.
References oomph::FiniteElement::output().
|
inlinevirtual |
C-style output function: Broken default.
Reimplemented from oomph::FiniteElement.
References oomph::FiniteElement::output().
|
inlinevirtual |
Overload the standard output function with the broken default.
Reimplemented from oomph::FiniteElement.
References oomph::FiniteElement::output().
|
inlinevirtual |
Output function:
Output x, y, u, v, p, theta at Nplot^DIM plot points
Reimplemented from oomph::FiniteElement.
References DIM, oomph::FiniteElement::get_s_plot(), i, oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >::interpolated_c_adv_diff_react(), oomph::NavierStokesEquations< DIM >::interpolated_p_nst(), oomph::NavierStokesEquations< DIM >::interpolated_u_nst(), oomph::FiniteElement::interpolated_x(), oomph::FiniteElement::nplot_points(), s, oomph::FiniteElement::tecplot_zone_string(), and oomph::FiniteElement::write_tecplot_zone_footer().
|
inlinevirtual |
Output function for a time-dependent exact solution: Broken default.
Reimplemented from oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >.
References oomph::FiniteElement::output_fct().
|
inlinevirtual |
Output function for an exact solution: Broken default.
Reimplemented from oomph::FiniteElement.
References oomph::FiniteElement::output_fct().
|
inlinevirtual |
Call the rebuild_from_sons functions for each of the constituent multi-physics elements.
Implements oomph::RefineableElement.
References oomph::RefineableQAdvectionDiffusionReactionElement< NREAGENT, DIM, NNODE_1D >::rebuild_from_sons(), and oomph::RefineableQCrouzeixRaviartElement< DIM >::rebuild_from_sons().
|
inlinevirtual |
The required number of values stored at the nodes is the sum of the required values of the two single-physics elements. Note that this step is generic for any multi-physics element of this type.
Reimplemented from oomph::QCrouzeixRaviartElement< DIM >.
References oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::n().
|
inline |
UnPin p_dof-th pressure dof.
References oomph::GeneralisedElement::internal_data_pt(), oomph::QCrouzeixRaviartElement< DIM >::P_nst_internal_index, and oomph::Data::unpin().
|
inlinevirtual |
Pointer to the j-th vertex node in the element, Call the geometric element's function.
Implements oomph::ElementWithZ2ErrorEstimator.
References j.
|
staticprivate |
The static default value of the Rayleigh number.
Referenced by oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::RefineableDoubleBuoyantQCrouzeixRaviartElement().
|
private |
Pointer to private data. The value of Km.
Referenced by oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::km(), oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::km_pt(), and oomph::RefineableDoubleBuoyantQCrouzeixRaviartElement< DIM >::RefineableDoubleBuoyantQCrouzeixRaviartElement().
|
private |