![]() |
|
#include <linearised_axisymmetric_fluid_interface_elements.h>
Public Member Functions | |
PerturbedSpineLinearisedAxisymmetricFluidInterfaceElement (FiniteElement *const &bulk_element_pt, const int &face_index) | |
void | fill_in_contribution_to_jacobian (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
Return the jacobian. More... | |
void | fill_in_generic_residual_contribution_interface (Vector< double > &residuals, DenseMatrix< double > &jacobian, unsigned flag) |
void | output (std::ostream &outfile) |
Overload the output function. More... | |
void | output (std::ostream &outfile, const unsigned &n_plot) |
Output the element. More... | |
void | output (FILE *file_pt) |
Overload the C-style output function. More... | |
void | output (FILE *file_pt, const unsigned &n_plot) |
C-style Output function: x,y,[z],u,v,[w],p in tecplot format. More... | |
void | output_interface_position (std::ostream &outfile, const unsigned &nplot) |
Output just the interface position (base + perturbation) More... | |
void | output_perturbation_to_interface (std::ostream &outfile, const unsigned &nplot) |
Output the perturbation to the interface position. More... | |
double | interpolated_H (const Vector< double > &s, const unsigned &i) const |
![]() | |
Hijacked () | |
Constructor, call the constructors of the base elements. More... | |
Hijacked (FiniteElement *const &element_pt, const int &face_index) | |
Constructor used for hijacking face elements. More... | |
Hijacked (FiniteElement *const &element_pt, const int &face_index, const unsigned &id=0) | |
Data * | hijack_internal_value (const unsigned &n, const unsigned &i, const bool &return_data=true) |
Data * | hijack_external_value (const unsigned &n, const unsigned &i, const bool &return_data=true) |
Data * | hijack_nodal_value (const unsigned &n, const unsigned &i, const bool &return_data=true) |
Data * | hijack_nodal_position_value (const unsigned &n, const unsigned &i, const bool &return_data=true) |
Data * | hijack_nodal_spine_value (const unsigned &n, const unsigned &i, const bool &return_data=true) |
void | assign_local_eqn_numbers (const bool &store_local_dof_pt) |
void | get_residuals (Vector< double > &residuals) |
void | get_jacobian (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
![]() | |
PerturbedSpineElement () | |
Constructor, call the constructor of the base element. More... | |
PerturbedSpineElement (FiniteElement *const &element_pt, const int &face_index) | |
Constructor used for spine face elements. More... | |
~PerturbedSpineElement () | |
Destructor, clean up the storage allocated to the local equation numbers. More... | |
int | spine_local_eqn (const unsigned &n, const unsigned &i) |
virtual int | get_local_eqn_number_corresponding_to_geometric_dofs (const unsigned &n, const unsigned &i) |
![]() | |
void | describe_local_dofs (std::ostream &out, const std::string ¤t_string) const |
void | describe_local_dofs (std::ostream &out, std::string &curr_str) |
Unique final overrider for describe_dofs. More... | |
ElementWithSpecificMovingNodes () | |
Constructor, call the constructor of the base element. More... | |
ElementWithSpecificMovingNodes (FiniteElement *const &element_pt, const int &face_index) | |
Constructor used for face elements. More... | |
~ElementWithSpecificMovingNodes () | |
Empty Destructor,. More... | |
Node * | construct_node (const unsigned &n) |
Node * | construct_node (const unsigned &n, TimeStepper *const &time_stepper_pt) |
Overloaded node allocation for unsteady problems. More... | |
Node * | construct_boundary_node (const unsigned &n) |
Overload the node assignment routine to assign boundary nodes. More... | |
Node * | construct_boundary_node (const unsigned &n, TimeStepper *const &time_stepper_pt) |
Overloaded boundary node allocation for unsteady problems. More... | |
void | complete_setup_of_dependencies () |
void | assign_all_generic_local_eqn_numbers (const bool &store_local_dof_pt) |
void | get_jacobian_and_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &jacobian, DenseMatrix< double > &mass_matrix) |
Compute the element's residuals vector and jacobian matrix. More... | |
![]() | |
ElementWithMovingNodes () | |
Constructor. More... | |
ElementWithMovingNodes (const ElementWithMovingNodes &)=delete | |
Broken copy constructor. More... | |
void | operator= (const ElementWithMovingNodes &)=delete |
Broken assignment operator. More... | |
virtual | ~ElementWithMovingNodes () |
Virtual destructor (clean up and allocated memory) More... | |
unsigned | ngeom_dof () const |
Number of geometric dofs. More... | |
int | geometric_data_local_eqn (const unsigned &n, const unsigned &i) |
void | assemble_set_of_all_geometric_data (std::set< Data * > &unique_geom_data_pt) |
Return a set of all geometric data associated with the element. More... | |
void | identify_geometric_data (std::set< Data * > &geometric_data_pt) |
bool | are_dresidual_dnodal_coordinates_always_evaluated_by_fd () const |
Return whether shape derivatives are evaluated by fd. More... | |
void | enable_always_evaluate_dresidual_dnodal_coordinates_by_fd () |
void | disable_always_evaluate_dresidual_dnodal_coordinates_by_fd () |
void | evaluate_shape_derivs_by_direct_fd () |
Evaluate shape derivatives by direct finite differencing. More... | |
void | evaluate_shape_derivs_by_chain_rule (const bool &i_know_what_i_am_doing=false) |
void | evaluate_shape_derivs_by_fastest_method (const bool &i_know_what_i_am_doing=false) |
int & | method_for_shape_derivs () |
Access to method (enumerated flag) for determination of shape derivs. More... | |
void | enable_bypass_fill_in_jacobian_from_geometric_data () |
Bypass the call to fill_in_jacobian_from_geometric_data. More... | |
void | disable_bypass_fill_in_jacobian_from_geometric_data () |
Do not bypass the call to fill_in_jacobian_from_geometric_data. More... | |
bool | is_fill_in_jacobian_from_geometric_data_bypassed () const |
unsigned | ngeom_data () const |
![]() | |
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 |
void | check_J_eulerian_at_knots (bool &passed) const |
void | check_jacobian (const double &jacobian) const |
double | dshape_eulerian (const Vector< double > &s, Shape &psi, DShape &dpsidx) const |
virtual double | dshape_eulerian_at_knot (const unsigned &ipt, Shape &psi, DShape &dpsidx) const |
virtual double | dshape_eulerian_at_knot (const unsigned &ipt, Shape &psi, DShape &dpsi, DenseMatrix< double > &djacobian_dX, RankFourTensor< double > &d_dpsidx_dX) const |
double | d2shape_eulerian (const Vector< double > &s, Shape &psi, DShape &dpsidx, DShape &d2psidx) const |
virtual double | d2shape_eulerian_at_knot (const unsigned &ipt, Shape &psi, DShape &dpsidx, DShape &d2psidx) const |
virtual void | assign_nodal_local_eqn_numbers (const bool &store_local_dof_pt) |
virtual void | describe_nodal_local_dofs (std::ostream &out, const std::string ¤t_string) const |
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 |
virtual void | get_dresidual_dnodal_coordinates (RankThreeTensor< double > &dresidual_dnodal_coordinates) |
virtual void | disable_ALE () |
virtual void | enable_ALE () |
virtual unsigned | required_nvalue (const unsigned &n) 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 unsigned | nvertex_node () const |
virtual Node * | vertex_node_pt (const unsigned &j) const |
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... | |
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) |
void | interpolated_zeta (const Vector< double > &s, Vector< double > &zeta) const |
void | locate_zeta (const Vector< double > &zeta, GeomObject *&geom_object_pt, Vector< double > &s, const bool &use_coordinate_as_initial_guess=false) |
virtual void | node_update () |
virtual void | identify_field_data_for_interactions (std::set< std::pair< Data *, unsigned >> &paired_field_data) |
virtual 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 |
virtual void | point_output_data (const Vector< double > &s, Vector< double > &data) |
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 unsigned | nscalar_paraview () const |
virtual void | scalar_value_paraview (std::ofstream &file_out, const unsigned &i, const unsigned &nplot) const |
virtual void | scalar_value_fct_paraview (std::ofstream &file_out, const unsigned &i, const unsigned &nplot, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt) const |
virtual void | scalar_value_fct_paraview (std::ofstream &file_out, const unsigned &i, const unsigned &nplot, const double &time, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt) const |
virtual std::string | scalar_name_paraview (const unsigned &i) const |
virtual void | output (const unsigned &t, std::ostream &outfile, const unsigned &n_plot) const |
virtual void | output_fct (std::ostream &outfile, const unsigned &n_plot, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt) |
Output an exact solution over the element. More... | |
virtual void | output_fct (std::ostream &outfile, const unsigned &n_plot, const double &time, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt) |
Output a time-dependent exact solution over the element. More... | |
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, double &error, double &norm) |
Calculate the norm of the error and that of the exact solution. More... | |
virtual void | compute_error (FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, double &error, double &norm) |
Calculate the norm of the error and that of the exact solution. More... | |
virtual void | compute_error (FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, Vector< double > &error, Vector< double > &norm) |
virtual void | compute_error (FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, Vector< double > &error, Vector< double > &norm) |
virtual void | compute_error (std::ostream &outfile, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, double &error, double &norm) |
virtual void | compute_error (std::ostream &outfile, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, double &error, 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 | self_test () |
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 | get_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &mass_matrix) |
virtual void | get_dresiduals_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam) |
virtual void | get_djacobian_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam, DenseMatrix< double > &djac_dparam) |
virtual void | get_djacobian_and_dmass_matrix_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam, DenseMatrix< double > &djac_dparam, DenseMatrix< double > &dmass_matrix_dparam) |
virtual void | get_hessian_vector_products (Vector< double > const &Y, DenseMatrix< double > const &C, DenseMatrix< double > &product) |
virtual void | get_inner_products (Vector< std::pair< unsigned, unsigned >> const &history_index, Vector< double > &inner_product) |
virtual void | get_inner_product_vectors (Vector< unsigned > const &history_index, Vector< Vector< double >> &inner_product_vector) |
virtual void | compute_norm (Vector< double > &norm) |
virtual void | compute_norm (double &norm) |
virtual unsigned | ndof_types () const |
virtual void | get_dof_numbers_for_unknowns (std::list< std::pair< unsigned long, unsigned >> &dof_lookup_list) const |
![]() | |
GeomObject () | |
Default constructor. More... | |
GeomObject (const unsigned &ndim) | |
GeomObject (const unsigned &nlagrangian, const unsigned &ndim) | |
GeomObject (const unsigned &nlagrangian, const unsigned &ndim, TimeStepper *time_stepper_pt) | |
GeomObject (const GeomObject &dummy)=delete | |
Broken copy constructor. More... | |
void | operator= (const GeomObject &)=delete |
Broken assignment operator. More... | |
virtual | ~GeomObject () |
(Empty) destructor More... | |
unsigned | nlagrangian () const |
Access function to # of Lagrangian coordinates. More... | |
unsigned | ndim () const |
Access function to # of Eulerian coordinates. More... | |
void | set_nlagrangian_and_ndim (const unsigned &n_lagrangian, const unsigned &n_dim) |
Set # of Lagrangian and Eulerian coordinates. More... | |
TimeStepper *& | time_stepper_pt () |
TimeStepper * | time_stepper_pt () const |
virtual void | position (const double &t, const Vector< double > &zeta, Vector< double > &r) const |
virtual void | dposition (const Vector< double > &zeta, DenseMatrix< double > &drdzeta) const |
virtual void | d2position (const Vector< double > &zeta, RankThreeTensor< double > &ddrdzeta) const |
virtual void | d2position (const Vector< double > &zeta, Vector< double > &r, DenseMatrix< double > &drdzeta, RankThreeTensor< double > &ddrdzeta) const |
![]() | |
PerturbedSpineFiniteElement () | |
Empty constructor. More... | |
virtual | ~PerturbedSpineFiniteElement () |
Emtpty virtual destructor. More... | |
![]() | |
HijackedElementBase () | |
virtual | ~HijackedElementBase () |
Destructor, destroy the storage for the equation numbers. More... | |
void | unhijack_all_data () |
const double & | residual_multiplier () const |
Return the value of the residual multiplier. More... | |
double *& | residual_multiplier_pt () |
Return the pointer to the residual multiplier. More... | |
![]() | |
LinearisedAxisymmetricFluidInterfaceElement () | |
Constructor, set the default values of the booleans and pointers (null) More... | |
virtual double | sigma (const Vector< double > &s_local) |
void | fill_in_contribution_to_residuals (Vector< double > &residuals) |
Calculate the residuals by calling the generic residual contribution. More... | |
const double & | ca () const |
Return the value of the Capillary number. More... | |
double *& | ca_pt () |
Return a pointer to the Capillary number. More... | |
const double & | st () const |
Return the value of the Strouhal number. More... | |
double *& | st_pt () |
Return a pointer to the Strouhal number. More... | |
const int & | azimuthal_mode_number () const |
Azimuthal mode number k in e^ik(theta) decomposition. More... | |
int *& | azimuthal_mode_number_pt () |
Pointer to azimuthal mode number k in e^ik(theta) decomposition. More... | |
double | u (const unsigned &n, const unsigned &i) |
double | interpolated_u (const Vector< double > &s, const unsigned &i) |
Calculate the i-th velocity component at the local coordinate s. More... | |
![]() | |
FaceElement () | |
Constructor: Initialise all appropriate member data. More... | |
virtual | ~FaceElement () |
Empty virtual destructor. More... | |
FaceElement (const FaceElement &)=delete | |
Broken copy constructor. More... | |
const unsigned & | boundary_number_in_bulk_mesh () const |
Broken assignment operator. More... | |
void | set_boundary_number_in_bulk_mesh (const unsigned &b) |
Set function for the boundary number in bulk mesh. More... | |
double | zeta_nodal (const unsigned &n, const unsigned &k, const unsigned &i) const |
double | J_eulerian (const Vector< double > &s) const |
double | J_eulerian_at_knot (const unsigned &ipt) const |
void | check_J_eulerian_at_knots (bool &passed) const |
double | interpolated_x (const Vector< double > &s, const unsigned &i) const |
double | interpolated_x (const unsigned &t, const Vector< double > &s, const unsigned &i) const |
void | interpolated_x (const Vector< double > &s, Vector< double > &x) const |
void | interpolated_x (const unsigned &t, const Vector< double > &s, Vector< double > &x) const |
double | interpolated_dxdt (const Vector< double > &s, const unsigned &i, const unsigned &t) |
void | interpolated_dxdt (const Vector< double > &s, const unsigned &t, Vector< double > &dxdt) |
int & | normal_sign () |
int | normal_sign () const |
int & | face_index () |
int | face_index () const |
const Vector< double > * | tangent_direction_pt () const |
Public access function for the tangent direction pointer. More... | |
void | set_tangent_direction (Vector< double > *tangent_direction_pt) |
Set the tangent direction vector. More... | |
void | turn_on_warning_for_discontinuous_tangent () |
void | turn_off_warning_for_discontinuous_tangent () |
void | continuous_tangent_and_outer_unit_normal (const Vector< double > &s, Vector< Vector< double >> &tang_vec, Vector< double > &unit_normal) const |
void | continuous_tangent_and_outer_unit_normal (const unsigned &ipt, Vector< Vector< double >> &tang_vec, Vector< double > &unit_normal) const |
void | outer_unit_normal (const Vector< double > &s, Vector< double > &unit_normal) const |
Compute outer unit normal at the specified local coordinate. More... | |
void | outer_unit_normal (const unsigned &ipt, Vector< double > &unit_normal) const |
Compute outer unit normal at ipt-th integration point. More... | |
FiniteElement *& | bulk_element_pt () |
Pointer to higher-dimensional "bulk" element. More... | |
FiniteElement * | bulk_element_pt () const |
Pointer to higher-dimensional "bulk" element (const version) More... | |
CoordinateMappingFctPt & | face_to_bulk_coordinate_fct_pt () |
CoordinateMappingFctPt | face_to_bulk_coordinate_fct_pt () const |
BulkCoordinateDerivativesFctPt & | bulk_coordinate_derivatives_fct_pt () |
BulkCoordinateDerivativesFctPt | bulk_coordinate_derivatives_fct_pt () const |
Vector< double > | local_coordinate_in_bulk (const Vector< double > &s) const |
void | get_local_coordinate_in_bulk (const Vector< double > &s, Vector< double > &s_bulk) const |
void | get_ds_bulk_ds_face (const Vector< double > &s, DenseMatrix< double > &dsbulk_dsface, unsigned &interior_direction) const |
unsigned & | bulk_position_type (const unsigned &i) |
const unsigned & | bulk_position_type (const unsigned &i) const |
void | bulk_node_number_resize (const unsigned &i) |
Resize the storage for the bulk node numbers. More... | |
unsigned & | bulk_node_number (const unsigned &n) |
const unsigned & | bulk_node_number (const unsigned &n) const |
void | bulk_position_type_resize (const unsigned &i) |
Resize the storage for bulk_position_type to i entries. More... | |
unsigned & | nbulk_value (const unsigned &n) |
unsigned | nbulk_value (const unsigned &n) const |
void | nbulk_value_resize (const unsigned &i) |
void | resize_nodes (Vector< unsigned > &nadditional_data_values) |
void | output_zeta (std::ostream &outfile, const unsigned &nplot) |
Output boundary coordinate zeta. More... | |
Private Member Functions | |
int | kinematic_local_eqn (const unsigned &n, const unsigned &i) |
void | hijack_kinematic_conditions (const Vector< unsigned > &bulk_node_number) |
double | dH_dt (const unsigned &n, const unsigned &i) const |
Additional Inherited Members | |
![]() | |
enum | { Shape_derivs_by_chain_rule , Shape_derivs_by_direct_fd , Shape_derivs_by_fastest_method } |
Public enumeration to choose method for computing shape derivatives. More... | |
![]() | |
typedef void(* | SteadyExactSolutionFctPt) (const Vector< double > &, Vector< double > &) |
typedef void(* | UnsteadyExactSolutionFctPt) (const double &, const Vector< double > &, Vector< double > &) |
![]() | |
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 |
![]() | |
virtual void | get_dnodal_coordinates_dgeom_dofs (RankThreeTensor< double > &dnodal_coordinates_dgeom_dofs) |
void | fill_in_jacobian_from_geometric_data (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
void | fill_in_jacobian_from_geometric_data (DenseMatrix< double > &jacobian) |
![]() | |
virtual void | assemble_local_to_eulerian_jacobian (const DShape &dpsids, DenseMatrix< double > &jacobian) const |
virtual void | assemble_local_to_eulerian_jacobian2 (const DShape &d2psids, DenseMatrix< double > &jacobian2) const |
virtual void | assemble_eulerian_base_vectors (const DShape &dpsids, DenseMatrix< double > &interpolated_G) 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 double | local_to_eulerian_mapping_diagonal (const DShape &dpsids, DenseMatrix< double > &jacobian, 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 |
virtual void | fill_in_jacobian_from_nodal_by_fd (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
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) |
void | fill_in_contribution_to_jacobian (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
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_jacobian_and_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &jacobian, DenseMatrix< double > &mass_matrix) |
virtual void | fill_in_contribution_to_dresiduals_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam) |
virtual void | fill_in_contribution_to_djacobian_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam, DenseMatrix< double > &djac_dparam) |
virtual 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) |
virtual void | fill_in_contribution_to_hessian_vector_products (Vector< double > const &Y, DenseMatrix< double > const &C, DenseMatrix< double > &product) |
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 | hijack_global_eqn (long *const &global_eqn_pt) |
void | unhijack_global_eqn (long *const &global_eqn_pt) |
![]() | |
virtual void | add_additional_residual_contributions (Vector< double > &residuals, DenseMatrix< double > &jacobian, const unsigned &flag, const Shape &psif, const DShape &dpsifds, const Vector< double > &interpolated_n, const double &r, const double &W, const double &J) |
double | dXhat_dt (const unsigned &n, const unsigned &i) const |
![]() | |
void | add_additional_values (const Vector< unsigned > &nadditional_values, const unsigned &id) |
![]() | |
Vector< Data * > | Geom_data_pt |
![]() | |
MacroElement * | Macro_elem_pt |
Pointer to the element's macro element (NULL by default) More... | |
![]() | |
unsigned | NLagrangian |
Number of Lagrangian (intrinsic) coordinates. More... | |
unsigned | Ndim |
Number of Eulerian coordinates. More... | |
TimeStepper * | Geom_object_time_stepper_pt |
![]() | |
std::set< long * > * | Hijacked_global_eqn_number_pt |
Vector< int > * | Hijacked_local_eqn_number_pt |
double * | Residual_multiplier_pt |
![]() | |
Vector< unsigned > | U_index_interface |
Index at which the i-th velocity component is stored. More... | |
Vector< unsigned > | Xhat_index_interface |
![]() | |
unsigned | Boundary_number_in_bulk_mesh |
The boundary number in the bulk mesh to which this element is attached. More... | |
FiniteElement * | Bulk_element_pt |
Pointer to the associated higher-dimensional "bulk" element. More... | |
Vector< unsigned > | Bulk_node_number |
Vector< unsigned > | Nbulk_value |
Vector< double > * | Tangent_direction_pt |
![]() | |
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 | Default_residual_multiplier = 0.0 |
Linearised axisymmetric interface elements that are used with a spine mesh, i.e. the mesh deformation is handled by Kistler & Scriven's "method of spines". These elements are FaceElements of bulk Fluid elements and the particular type of fluid element is passed as a template parameter to the element. It shouldn't matter whether the passed element is the underlying (fixed) element or the templated SpineElement<Element>. In the case of steady problems, an additional volume constaint must be imposed to select a particular solution from an otherwise inifinte number. This constraint is associated with an external pressure degree of freedom, which must be passed to the element as external data. If the element is a free surface, Free_surface = true, then the external pressure is the pressure in the inviscid external fluid; otherwise, the pressure degree of freedom must be passed from an element in the adjoining fluid.
|
inline |
Constructor, the arguments are a pointer to the "bulk" element the local coordinate that is fixed on the face, and whether it is the upper or lower limit of that coordinate.
References oomph::FiniteElement::build_face_element(), oomph::FaceElement::bulk_element_pt(), oomph::FaceElement::face_index(), i, oomph::LinearisedAxisymmetricFluidInterfaceElement::U_index_interface, and oomph::LinearisedAxisymmetricFluidInterfaceElement::Xhat_index_interface.
|
inlineprivate |
i-th component of dH/dt at local node n. Uses suitably interpolated value for hanging nodes.
References oomph::PerturbedSpine::height(), i, oomph::TimeStepper::is_steady(), oomph::FiniteElement::node_pt(), oomph::TimeStepper::ntstorage(), oomph::PerturbedSpineNode::perturbed_spine_pt(), plotPSD::t, oomph::GeomObject::time_stepper_pt(), oomph::Data::time_stepper_pt(), and oomph::TimeStepper::weight().
|
inlinevirtual |
Return the jacobian.
Reimplemented from oomph::GeneralisedElement.
References oomph::PerturbedSpineLinearisedAxisymmetricFluidInterfaceElement< ELEMENT >::fill_in_generic_residual_contribution_interface(), and oomph::ElementWithMovingNodes::fill_in_jacobian_from_geometric_data().
|
virtual |
This function is sort-of-hacky: its purpose is to overload the fill_in_generic_residual_contribution_interface(..) function in the LinearisedAxisymmetricFluidInterfaceElement base class, since I have made the maths too general and assumed not only spines but spines which always point vertically. When this is done properly this function should be removed so that the function in the base class is used, and that function should be implemented with the proper general maths which does not assume spines or anything.
Calculate the residuals for the linearised axisymmetric interface element. WARNING: THIS FUNCTION ASSUMES THAT THE PERTURBATION TO THE INTERFACE IS IN A VERTICAL DIRECTION ONLY
Reimplemented from oomph::LinearisedAxisymmetricFluidInterfaceElement.
References Global_Physical_Variables::Ca, oomph::FiniteElement::dshape_eulerian(), oomph::LinearisedAxisymmetricNavierStokesEquations::get_base_flow_u(), oomph::PerturbedSpine::height(), i, J, k, oomph::FiniteElement::nnode(), oomph::FiniteElement::node_pt(), oomph::PerturbedSpineNode::perturbed_spine_pt(), UniformPSDSelfTest::r, s, calibrate::sigma, GlobalParameters::Sigma, sqrt(), Global_Physical_Variables::St, oomph::TimeStepper::time(), oomph::Data::time_stepper_pt(), and w.
Referenced by oomph::PerturbedSpineLinearisedAxisymmetricFluidInterfaceElement< ELEMENT >::fill_in_contribution_to_jacobian().
|
inlineprivatevirtual |
Hijacking the kinematic condition corresponds to hijacking the spine heights.
Implements oomph::LinearisedAxisymmetricFluidInterfaceElement.
References oomph::FaceElement::bulk_node_number(), and oomph::Hijacked< PerturbedSpineElement< FaceGeometry< ELEMENT > > >::hijack_nodal_spine_value().
|
inline |
Return the i-th component of the FE interpolated perturbed surface height (i=0 is cosine part, i=1 is sine part) at local coordinate s
References oomph::PerturbedSpine::height(), i, oomph::FiniteElement::nnode(), oomph::FiniteElement::node_pt(), oomph::PerturbedSpineNode::perturbed_spine_pt(), s, and oomph::FiniteElement::shape().
|
inlineprivatevirtual |
In these elements, the kinematic condition is the equation used to determine the "order epsilon" contributions to the free surface "height". We have two sets of unknowns, HC and HS, and we therefore have two kinematic conditions. Overload the function accordingly.
Implements oomph::LinearisedAxisymmetricFluidInterfaceElement.
References i, and oomph::PerturbedSpineElement< ELEMENT >::spine_local_eqn().
|
inlinevirtual |
Overload the C-style output function.
Reimplemented from oomph::LinearisedAxisymmetricFluidInterfaceElement.
References oomph::FiniteElement::output().
|
inlinevirtual |
C-style Output function: x,y,[z],u,v,[w],p in tecplot format.
Reimplemented from oomph::LinearisedAxisymmetricFluidInterfaceElement.
References oomph::LinearisedAxisymmetricFluidInterfaceElement::output().
|
inlinevirtual |
Overload the output function.
Reimplemented from oomph::LinearisedAxisymmetricFluidInterfaceElement.
References oomph::FiniteElement::output().
|
inlinevirtual |
Output the element.
Reimplemented from oomph::LinearisedAxisymmetricFluidInterfaceElement.
References oomph::LinearisedAxisymmetricFluidInterfaceElement::output().
void oomph::PerturbedSpineLinearisedAxisymmetricFluidInterfaceElement< ELEMENT >::output_interface_position | ( | std::ostream & | outfile, |
const unsigned & | nplot | ||
) |
Output just the interface position (base + perturbation)
Output the combined interface position (base position + perturbation) in tecplot format, using nplot points in each coordinate direction. WARNING: THIS FUNCTION ASSUMES THAT THE PERTURBATION TO THE INTERFACE IS IN A VERTICAL DIRECTION ONLY
References s.
Referenced by PerturbedStateProblem< BASE_ELEMENT, PERTURBED_ELEMENT >::doc_solution().
void oomph::PerturbedSpineLinearisedAxisymmetricFluidInterfaceElement< ELEMENT >::output_perturbation_to_interface | ( | std::ostream & | outfile, |
const unsigned & | nplot | ||
) |
Output the perturbation to the interface position.
//////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////// Output the perturbation to the base interface position (computed by these interface elements) in tecplot format, using nplot points in each coordinate direction. WARNING: THIS FUNCTION ASSUMES THAT THE PERTURBATION TO THE INTERFACE IS IN A VERTICAL DIRECTION ONLY
References s.
Referenced by PerturbedStateProblem< BASE_ELEMENT, PERTURBED_ELEMENT >::doc_solution().