![]() |
|
Namespace for exact solution. More...
Functions | |
void | get_exact_u_for_unsteady_heat_validation (const double &t, const Vector< double > &x, Vector< double > &u) |
Exact solution as a Vector. More... | |
void | get_exact_u_for_unsteady_heat_validation (const double &t, const Vector< double > &x, double &u) |
Exact solution as a scalar. More... | |
void | get_source_for_unsteady_heat_validation (const double &t, const Vector< double > &x, double &source) |
Source function to make it an exact solution. More... | |
double | melting_surface_height (const double &t, const double &x) |
Height of melting surface. More... | |
void | analytical_outer_unit_normal (const double &t, const Vector< double > &x, double &nx, double &ny) |
Analytical outer unit normal. More... | |
void | flux_into_bulk (const double &t, const Vector< double > &x, const Vector< double > &n, const double &u, double &flux) |
void | prescribed_flux_for_unsteady_heat_validation (const double &t, const Vector< double > &x, const Vector< double > &n, const double &u, double &flux) |
void | rigid_body_rotation (const Vector< double > &x, Vector< double > &u) |
The rigid-body rotation solution. More... | |
void | rigid_body_rotation_dr (const Vector< double > &x, Vector< double > &u) |
The r-derivative of the rigid-body rotation solution. More... | |
void | rigid_body_rotation_dtheta (const Vector< double > &x, Vector< double > &u) |
The theta-derivative of the rigid-body rotation solution. More... | |
Variables | |
double | U0 =0.0 |
Constant/initial temperature. More... | |
double | Growth_rate =1.0 |
Growth rate for interface. More... | |
bool | Use_analytical_outer_unit_normal =true |
Use analytical outer unit normal when computing fluxes? More... | |
double | Omega_cos =0.0 |
Namespace for exact solution.
Namespace for the exact rigid-body-rotation solution.
///////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////
void ExactSolution::analytical_outer_unit_normal | ( | const double & | t, |
const Vector< double > & | x, | ||
double & | nx, | ||
double & | ny | ||
) |
Analytical outer unit normal.
References Growth_rate, Mesh_Parameters::nx, Mesh_Parameters::ny, Eigen::bfloat16_impl::pow(), sin(), sqrt(), plotPSD::t, plotDoE::x, and X.
Referenced by flux_into_bulk().
void ExactSolution::flux_into_bulk | ( | const double & | t, |
const Vector< double > & | x, | ||
const Vector< double > & | n, | ||
const double & | u, | ||
double & | flux | ||
) |
Flux into bulk required by the exact solution on a boundary with outer unit normal n. No dependence on temperature u.
References analytical_outer_unit_normal(), cos(), ProblemParameters::flux(), Growth_rate, melting_surface_height(), n, GlobalParameters::Nx, GlobalParameters::Ny, sin(), plotPSD::t, Use_analytical_outer_unit_normal, plotDoE::x, X, and Y.
Referenced by MeltContactProblem< ELEMENT >::complete_problem_setup(), and prescribed_flux_for_unsteady_heat_validation().
void ExactSolution::get_exact_u_for_unsteady_heat_validation | ( | const double & | t, |
const Vector< double > & | x, | ||
double & | u | ||
) |
Exact solution as a scalar.
References plotPSD::t, and plotDoE::x.
void ExactSolution::get_exact_u_for_unsteady_heat_validation | ( | const double & | t, |
const Vector< double > & | x, | ||
Vector< double > & | u | ||
) |
Exact solution as a Vector.
References cos(), Growth_rate, plotPSD::t, U0, plotDoE::x, X, and Y.
Referenced by MeltContactProblem< ELEMENT >::doc_solution(), SolarRadiationProblem< ELEMENT >::doc_solution(), and UnsteadyHeatMeltProblem< ELEMENT >::doc_solution().
void ExactSolution::get_source_for_unsteady_heat_validation | ( | const double & | t, |
const Vector< double > & | x, | ||
double & | source | ||
) |
Source function to make it an exact solution.
References cos(), Growth_rate, Eigen::bfloat16_impl::pow(), sin(), TestProblem::source(), plotPSD::t, plotDoE::x, X, and Y.
Referenced by MeltContactProblem< ELEMENT >::complete_problem_setup(), and UnsteadyHeatMeltProblem< ELEMENT >::complete_problem_setup().
Height of melting surface.
References cos(), Growth_rate, plotPSD::t, and plotDoE::x.
Referenced by MeltContactProblem< ELEMENT >::doc_solution(), UnsteadyHeatMeltProblem< ELEMENT >::doc_solution(), and flux_into_bulk().
void ExactSolution::prescribed_flux_for_unsteady_heat_validation | ( | const double & | t, |
const Vector< double > & | x, | ||
const Vector< double > & | n, | ||
const double & | u, | ||
double & | flux | ||
) |
Total flux (into bulk + melt) required by the exact solution on a boundary with outer unit normal n. No dependence on temperature u.
Flux required by the exact solution on a boundary with outer unit normal n. No dependence on temperature u.
References cos(), ProblemParameters::flux(), flux_into_bulk(), Growth_rate, GlobalParameters::melt_flux(), n, Omega_cos, Eigen::bfloat16_impl::pow(), sin(), sqrt(), plotPSD::t, plotDoE::x, and X.
Referenced by MeltContactProblem< ELEMENT >::complete_problem_setup(), and UnsteadyHeatMeltProblem< ELEMENT >::complete_problem_setup().
The rigid-body rotation solution.
References Global_Physical_Variables::Re, sin(), and plotDoE::x.
Referenced by SphericalSteadyRotationProblem< ELEMENT >::parameter_study().
The r-derivative of the rigid-body rotation solution.
References Global_Physical_Variables::Re, sin(), and plotDoE::x.
Referenced by SphericalSteadyRotationProblem< ELEMENT >::parameter_study().
The theta-derivative of the rigid-body rotation solution.
References cos(), Global_Physical_Variables::Re, sin(), and plotDoE::x.
Referenced by SphericalSteadyRotationProblem< ELEMENT >::parameter_study().
double ExactSolution::Growth_rate =1.0 |
Growth rate for interface.
Referenced by analytical_outer_unit_normal(), flux_into_bulk(), get_exact_u_for_unsteady_heat_validation(), get_source_for_unsteady_heat_validation(), melting_surface_height(), and prescribed_flux_for_unsteady_heat_validation().
double ExactSolution::Omega_cos =0.0 |
Frequency of co-sinusoidal oscillation of incoming heat flux (to assess suppression of re-freezing). Set to zero for validation.
Referenced by main(), and prescribed_flux_for_unsteady_heat_validation().
double ExactSolution::U0 =0.0 |
Constant/initial temperature.
Referenced by oomph::Newmark< NSTEPS >::assign_initial_data_values(), oomph::Newmark< NSTEPS >::assign_initial_data_values_stage2(), get_exact_u_for_unsteady_heat_validation(), GlobalParameters::incoming_sb_inside(), GlobalParameters::incoming_sb_outside(), main(), MeltContactProblem< ELEMENT >::MeltContactProblem(), SolarRadiationProblem< ELEMENT >::SolarRadiationProblem(), and UnsteadyHeatMeltProblem< ELEMENT >::UnsteadyHeatMeltProblem().
bool ExactSolution::Use_analytical_outer_unit_normal =true |
Use analytical outer unit normal when computing fluxes?
Referenced by flux_into_bulk().