122 "This function hasn't been implemented for this element",
135 const unsigned& nplot)
const
138 "This function hasn't been implemented for this element",
159 void output(std::ostream &outfile,
const unsigned &nplot)
169 for (
unsigned iplot=0;iplot<num_plot_points;iplot++)
175 for(
unsigned i=0;
i<2;
i++)
179 for(
unsigned i=0;
i<3;
i++)
188 outfile << std::endl;
200 void output(FILE* file_pt,
const unsigned &n_plot)
204 void output_fct(std::ostream &outfile,
const unsigned &Nplot,
212 void output_fct(std::ostream &outfile,
const unsigned &Nplot,
260 for(
unsigned i=0;
i<3;
i++) {values.push_back(nst_values[
i]);}
263 values.push_back(advection_values[0]);
290 for(
unsigned i=0;
i<3;
i++) {values.push_back(nst_values[
i]);}
293 values.push_back(advection_values[0]);
340 this->Ra_pt = cast_father_element_pt->
ra_pt();
363 unsigned n_fluid_flux =
370 unsigned n_temp_flux =
378 for(
unsigned i=0;
i<n_temp_flux;
i++)
380 flux[n_fluid_flux+
i] = temp_flux[
i];
394 unsigned n_fluid_flux =
397 unsigned n_temp_flux =
403 for(
unsigned i=0;
i<n_fluid_flux;
i++) {flux_index[
i] = 0;}
406 for(
unsigned i=0;
i<n_temp_flux;
i++) {flux_index[n_fluid_flux +
i] = 1;}
419 double&
error,
double& norm)
430 double&
error,
double& norm)
463 for (
unsigned i=0;
i<3;
i++)
487 #ifdef USE_FD_JACOBIAN_FOR_REFINEABLE_BUOYANT_Q_ELEMENT
512 residuals,jacobian,mass_matrix);
525 HangInfo *hang_info_pt=0, *hang_info2_pt=0;
529 unsigned u_nodal_axi_nst[3];
536 const unsigned n_node = this->
nnode();
539 Shape psif(n_node), testf(n_node);
540 DShape dpsifdx(n_node,2), dtestfdx(n_node,2);
546 double Ra = this->
ra();
547 double Pe = this->
pe();
551 int local_eqn=0, local_unknown=0;
554 for(
unsigned ipt=0;ipt<n_intpt;ipt++)
575 for(
unsigned l=0;l<n_node;l++)
578 double u_value = this->
nodal_value(l,u_nodal_axi_adv_diff);
580 for(
unsigned j=0;
j<2;
j++)
582 interpolated_du_axi_adv_diff_dx[
j] += u_value*dpsifdx(l,
j);
593 for(
unsigned l=0;l<n_node;l++)
598 double hang_weight=1.0;
607 n_master = hang_info_pt->
nmaster();
616 for(
unsigned m=0;
m<n_master;
m++)
635 for(
unsigned i=0;
i<3;
i++)
655 unsigned n_master2=1;
656 double hang_weight2=1.0;
659 for(
unsigned l2=0;l2<n_node;l2++)
668 n_master2 = hang_info2_pt->nmaster();
677 for(
unsigned m2=0;
m2<n_master2;
m2++)
684 u_nodal_axi_adv_diff);
686 hang_weight2 = hang_info2_pt->master_weight(
m2);
692 u_nodal_axi_adv_diff);
697 if(local_unknown >= 0)
700 jacobian(local_eqn,local_unknown)
702 r*
W*hang_weight*hang_weight2;
718 u_nodal_axi_adv_diff);
731 unsigned n_master2=1;
732 double hang_weight2=1.0;
735 for(
unsigned l2=0;l2<n_node;l2++)
744 n_master2 = hang_info2_pt->nmaster();
753 for(
unsigned m2=0;
m2<n_master2;
m2++)
759 hang_weight2 = hang_info2_pt->master_weight(
m2);
769 for(
unsigned i2=0;i2<2;i2++)
777 u_nodal_axi_nst[i2]);
783 u_nodal_axi_nst[i2]);
787 if(local_unknown >= 0)
790 jacobian(local_eqn,local_unknown)
791 -=
Pe*psif(l2)*interpolated_du_axi_adv_diff_dx[i2]*testf(l)
792 *
r*
W*hang_weight*hang_weight2;
int i
Definition: BiCGSTAB_step_by_step.cpp:9
const unsigned n
Definition: CG3DPackingUnitTest.cpp:11
JacobiRotation< float > J
Definition: Jacobi_makeJacobi.cpp:3
RowVector3d w
Definition: Matrix_resize_int.cpp:3
void fill_in_contribution_to_residuals(Vector< double > &residuals)
Add the element's contribution to its residual vector (wrapper)
Definition: axisym_advection_diffusion_elements.h:413
void disable_ALE()
Definition: axisym_advection_diffusion_elements.h:133
void fill_in_contribution_to_jacobian(Vector< double > &residuals, DenseMatrix< double > &jacobian)
Definition: axisym_advection_diffusion_elements.h:427
const double & pe() const
Peclet number.
Definition: axisym_advection_diffusion_elements.h:299
double interpolated_u_axi_adv_diff(const Vector< double > &s) const
Return FE representation of function value u(s) at local coordinate s.
Definition: axisym_advection_diffusion_elements.h:437
void enable_ALE()
Definition: axisym_advection_diffusion_elements.h:143
void fill_in_contribution_to_residuals(Vector< double > &residuals)
Compute the element's residual Vector.
Definition: axisym_navier_stokes_elements.h:780
const Vector< double > & g() const
Vector of gravitational components.
Definition: axisym_navier_stokes_elements.h:446
void fill_in_contribution_to_jacobian(Vector< double > &residuals, DenseMatrix< double > &jacobian)
Definition: axisym_navier_stokes_elements.h:793
void interpolated_u_axi_nst(const Vector< double > &s, Vector< double > &veloc) const
Compute vector of FE interpolated velocity u at local coordinate s.
Definition: axisym_navier_stokes_elements.h:865
void disable_ALE()
Definition: axisym_navier_stokes_elements.h:560
double interpolated_p_axi_nst(const Vector< double > &s) const
Return FE interpolated pressure at local coordinate s.
Definition: axisym_navier_stokes_elements.h:1001
void enable_ALE()
Definition: axisym_navier_stokes_elements.h:569
virtual unsigned u_index_axi_nst(const unsigned &i) const
Definition: axisym_navier_stokes_elements.h:506
virtual unsigned required_nvalue(const unsigned &n) const
Number of values (pinned or dofs) required at local node n.
Definition: axisym_navier_stokes_elements.cc:3711
double dshape_and_dtest_eulerian_at_knot_axi_nst(const unsigned &ipt, Shape &psi, DShape &dpsidx, Shape &test, DShape &dtestdx) const
Definition: axisym_navier_stokes_elements.h:1408
FaceGeometry()
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:827
Definition: elements.h:4998
void fill_in_contribution_to_jacobian(Vector< double > &residuals, DenseMatrix< double > &jacobian)
Definition: elements.h:1735
virtual void output_fct(std::ostream &outfile, const unsigned &n_plot, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt)
Output an exact solution over the element.
Definition: elements.h:3104
Node *& node_pt(const unsigned &n)
Return a pointer to the local node n.
Definition: elements.h:2175
double nodal_value(const unsigned &n, const unsigned &i) const
Definition: elements.h:2593
virtual void output(std::ostream &outfile)
Definition: elements.h:3050
virtual double interpolated_x(const Vector< double > &s, const unsigned &i) const
Return FE interpolated coordinate x[i] at local coordinate s.
Definition: elements.cc:3962
int nodal_local_eqn(const unsigned &n, const unsigned &i) const
Definition: elements.h:1432
unsigned nnode() const
Return the number of nodes.
Definition: elements.h:2210
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.
Definition: elements.h:3198
void(* SteadyExactSolutionFctPt)(const Vector< double > &, Vector< double > &)
Definition: elements.h:1759
Integral *const & integral_pt() const
Return the pointer to the integration scheme (const version)
Definition: elements.h:1963
double nodal_position(const unsigned &n, const unsigned &i) const
Definition: elements.h:2317
virtual void write_tecplot_zone_footer(std::ostream &outfile, const unsigned &nplot) const
Definition: elements.h:3174
void(* UnsteadyExactSolutionFctPt)(const double &, const Vector< double > &, Vector< double > &)
Definition: elements.h:1765
virtual void fill_in_contribution_to_jacobian_and_mass_matrix(Vector< double > &residuals, DenseMatrix< double > &jacobian, DenseMatrix< double > &mass_matrix)
Definition: elements.cc:1322
double const & master_weight(const unsigned &i) const
Return weight for dofs on i-th master node.
Definition: nodes.h:808
Node *const & master_node_pt(const unsigned &i) const
Return a pointer to the i-th master node.
Definition: nodes.h:791
unsigned nmaster() const
Return the number of master nodes.
Definition: nodes.h:785
virtual unsigned nweight() const =0
Return the number of integration points of the scheme.
virtual double weight(const unsigned &i) const =0
Return weight of i-th integration point.
HangInfo *const & hanging_pt() const
Definition: nodes.h:1228
bool is_hanging() const
Test whether the node is geometrically hanging.
Definition: nodes.h:1285
Definition: oomph_definitions.h:222
unsigned nplot_points(const unsigned &nplot) const
Definition: Qelements.h:1107
void get_s_plot(const unsigned &i, const unsigned &nplot, Vector< double > &s, const bool &use_equally_spaced_interior_sample_points=false) const
Definition: Qelements.h:1067
std::string tecplot_zone_string(const unsigned &nplot) const
Definition: Qelements.h:1098
Definition: Qelements.h:459
void get_Z2_flux(const Vector< double > &s, Vector< double > &flux)
Definition: refineable_axisym_advection_diffusion_elements.h:90
void get_interpolated_values(const Vector< double > &s, Vector< double > &values)
Definition: refineable_axisym_advection_diffusion_elements.h:100
unsigned num_Z2_flux_terms()
Broken assignment operator.
Definition: refineable_axisym_advection_diffusion_elements.h:83
void further_build()
Further build: Copy source function pointer from father element.
Definition: refineable_axisym_advection_diffusion_elements.h:187
unsigned num_Z2_flux_terms()
Number of 'flux' terms for Z2 error estimation.
Definition: refineable_axisym_navier_stokes_elements.h:75
void get_Z2_flux(const Vector< double > &s, Vector< double > &flux)
Definition: refineable_axisym_navier_stokes_elements.h:83
Definition: refineable_axisym_navier_stokes_elements.h:765
void further_setup_hanging_nodes()
Definition: refineable_axisym_navier_stokes_elements.h:978
void get_interpolated_values(const Vector< double > &s, Vector< double > &values)
Definition: refineable_axisym_navier_stokes_elements.h:918
void rebuild_from_sons(Mesh *&mesh_pt)
Rebuild from sons: Reconstruct pressure from the (merged) sons.
Definition: refineable_axisym_navier_stokes_elements.h:795
unsigned nrecovery_order()
Definition: refineable_axisym_navier_stokes_elements.h:897
void further_build()
Definition: refineable_axisym_navier_stokes_elements.h:984
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:64
void output(FILE *file_pt)
C-style output function: Broken default.
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:196
unsigned u_index_axi_adv_diff() const
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:223
void compute_error(std::ostream &outfile, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, double &error, double &norm)
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:416
void get_Z2_flux(const Vector< double > &s, Vector< double > &flux)
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:360
void further_build()
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:327
void fill_in_contribution_to_residuals(Vector< double > &residuals)
Fill in the constituent elements' contribution to the residual vector.
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:470
unsigned ncompound_fluxes()
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:387
void disable_ALE()
Final override for disable ALE.
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:100
void get_interpolated_values(const unsigned &t, const Vector< double > &s, Vector< double > &values)
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:272
unsigned ncont_interpolated_values() const
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:237
void get_Z2_compound_flux_indices(Vector< unsigned > &flux_index)
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:391
void output(std::ostream &outfile, const unsigned &nplot)
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:159
unsigned nscalar_paraview() const
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:119
void fill_in_off_diagonal_jacobian_blocks_analytic(Vector< double > &residuals, DenseMatrix< double > &jacobian)
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:517
void rebuild_from_sons(Mesh *&mesh_pt)
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:311
const double & ra() const
Access function for the Rayleigh number (const version)
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:93
unsigned nvertex_node() const
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:227
std::string scalar_name_paraview(const unsigned &i) const
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:147
void get_wind_axi_adv_diff(const unsigned &ipt, const Vector< double > &s, const Vector< double > &x, Vector< double > &wind) const
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:437
void compute_error(std::ostream &outfile, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, double &error, double &norm)
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:428
void enable_ALE()
Final override for enable ALE.
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:108
void fill_in_contribution_to_jacobian_and_mass_matrix(Vector< double > &residuals, DenseMatrix< double > &jacobian, DenseMatrix< double > &mass_matrix)
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:506
void scalar_value_paraview(std::ofstream &file_out, const unsigned &i, const unsigned &nplot) const
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:133
unsigned nrecovery_order()
The recovery order is that of the NavierStokes elements.
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:346
RefineableBuoyantQAxisymCrouzeixRaviartElement()
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:78
void further_setup_hanging_nodes()
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:301
static double Default_Physical_Constant_Value
The static default value of the Rayleigh number.
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:72
void output(std::ostream &outfile)
Overload the standard output function with the broken default.
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:154
double *& ra_pt()
Access function for the pointer to the Rayleigh number.
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:96
void fill_in_contribution_to_jacobian(Vector< double > &residuals, DenseMatrix< double > &jacobian)
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:484
void get_interpolated_values(const Vector< double > &s, Vector< double > &values)
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:243
double * Ra_pt
Pointer to a new physical variable, the Rayleigh number.
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:69
void output(FILE *file_pt, const unsigned &n_plot)
C-style output function: Broken default.
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:200
void output_fct(std::ostream &outfile, const unsigned &Nplot, const double &time, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt)
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:212
double geometric_jacobian(const Vector< double > &x)
Fill in the geometric Jacobian, which in this case is r.
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:319
Node * vertex_node_pt(const unsigned &j) const
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:232
unsigned required_nvalue(const unsigned &n) const
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:88
unsigned num_Z2_flux_terms()
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:351
void output_fct(std::ostream &outfile, const unsigned &Nplot, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt)
Output function for an exact solution: Broken default.
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:204
void get_body_force_axi_nst(const double &time, const unsigned &ipt, const Vector< double > &s, const Vector< double > &x, Vector< double > &result)
Definition: axisym_heat_sphere/axisym_buoyant_navier_stokes.h:451
virtual RefineableElement * father_element_pt() const
Return a pointer to the father element.
Definition: refineable_elements.h:539
int local_hang_eqn(Node *const &node_pt, const unsigned &i)
Definition: refineable_elements.h:278
Definition: refineable_axisym_advection_diffusion_elements.h:365
void rebuild_from_sons(Mesh *&mesh_pt)
Rebuild from sons: empty.
Definition: refineable_axisym_advection_diffusion_elements.h:406
void further_setup_hanging_nodes()
Definition: refineable_axisym_advection_diffusion_elements.h:417
RealScalar s
Definition: level1_cplx_impl.h:130
int * m
Definition: level2_cplx_impl.h:294
double Pe
Peclet number.
Definition: axisym_heat_sphere.cc:59
double Ra
Rayleigh number.
Definition: axisym_heat_sphere.cc:62
void gravity(const double &t, const Vector< double > &xi, Vector< double > &b)
Definition: ConstraintElementsUnitTest.cpp:20
void flux(const double &time, const Vector< double > &x, double &flux)
Get flux applied along boundary x=0.
Definition: pretend_melt.cc:59
int error
Definition: calibrate.py:297
Definition: MortaringCantileverCompareToNonMortaring.cpp:176
std::string string(const unsigned &i)
Definition: oomph_definitions.cc:286
@ W
Definition: quadtree.h:63
std::string to_string(T object, unsigned float_precision=8)
Definition: oomph_utilities.h:189
DRAIG: Change all instances of (SPATIAL_DIM) to (DIM-1).
Definition: AnisotropicHookean.h:10
list x
Definition: plotDoE.py:28
t
Definition: plotPSD.py:36
#define OOMPH_EXCEPTION_LOCATION
Definition: oomph_definitions.h:61
#define OOMPH_CURRENT_FUNCTION
Definition: oomph_definitions.h:86
std::ptrdiff_t j
Definition: tut_arithmetic_redux_minmax.cpp:2