![]() |
|
Go to the source code of this file.
Functions | |
MyTaylorHoodElement () | |
unsigned & | nprev_for_extrapolation_of_strain_rate () |
void | enable_fixed_point_iteration_for_strain_rate () |
void | disable_fixed_point_iteration_for_strain_rate () |
Disable use of fixed point iteration. More... | |
void | enable_aitken_extrapolation () |
Enable use of Aitken extrapolation. More... | |
void | disable_aitken_extrapolation () |
Disable use of Aitken extrapolation. More... | |
void | latest_fixed_point_iteration_guess_for_strain_rate (const unsigned &ipt, DenseMatrix< double > &strainrate) const |
void | update_latest_fixed_point_iteration_guess_for_strain_rate () |
void | extrapolated_strain_rate (const unsigned &ipt, DenseMatrix< double > &strainrate) const |
void | extrapolated_strain_rate (const Vector< double > &s, DenseMatrix< double > &strainrate) const |
void | set_error (const double &error) |
Set error value for post-processing. More... | |
std::string | variable_identifier () |
Return variable identifier. More... | |
void | output (std::ostream &outfile, const unsigned &nplot) |
Overload output function. More... | |
void | get_Z2_flux (const Vector< double > &s, Vector< double > &flux) |
Get 'flux' for Z2 error recovery. More... | |
double | square_of_norm_of_strain_invariant (double &norm_squared, double &extrapolated_norm_squared, double &error_norm_squared) |
double | square_of_norm_of_viscosity (double &norm_squared, double &extrapolated_norm_squared, double &error_norm_squared) |
double | square_of_norm_of_fixed_point (double &norm_squared, double &latest_guess_norm_squared, double &error_norm_squared) |
double | square_of_l2_norm () |
Get square of L2 norm of velocity. More... | |
Variables | |
double | Error |
Storage for elemental error estimate – used for post-processing. More... | |
unsigned | Nprev_for_extrapolation_of_strain_rate |
bool | Use_fixed_point_for_strain_rate |
bool | Use_aitken_extrapolation |
Vector< Vector< DenseMatrix< double > > > | Fixed_point_iteration_guess_for_strain_rate |
unsigned | Aitken_index |
void disable_aitken_extrapolation | ( | ) |
void disable_fixed_point_iteration_for_strain_rate | ( | ) |
Disable use of fixed point iteration.
References Use_aitken_extrapolation, and Use_fixed_point_for_strain_rate.
void enable_aitken_extrapolation | ( | ) |
Enable use of Aitken extrapolation.
References Use_aitken_extrapolation.
void enable_fixed_point_iteration_for_strain_rate | ( | ) |
Enable use of fixed point iteration (sets current best guess based on extrapolation)
References Aitken_index, update_latest_fixed_point_iteration_guess_for_strain_rate(), and Use_fixed_point_for_strain_rate.
void extrapolated_strain_rate | ( | const unsigned & | ipt, |
DenseMatrix< double > & | strainrate | ||
) | const |
Get strain-rate tensor: \( e_{ij} \) where \( i,j = r,z,\theta \) (in that order). Extrapolated from history values evaluated at integration point ipt. Overloaded version from base class.
References i, latest_fixed_point_iteration_guess_for_strain_rate(), s, and Use_fixed_point_for_strain_rate.
Referenced by oomph::GeneralisedNewtonianNavierStokesEquations< DIM >::fill_in_generic_residual_contribution_nst(), oomph::RefineableGeneralisedNewtonianNavierStokesEquations< DIM >::fill_in_generic_residual_contribution_nst(), oomph::GeneralisedNewtonianNavierStokesEquations< DIM >::get_traction(), output(), square_of_norm_of_strain_invariant(), and square_of_norm_of_viscosity().
void extrapolated_strain_rate | ( | const Vector< double > & | s, |
DenseMatrix< double > & | strainrate | ||
) | const |
Get strain-rate tensor: \( e_{ij} \) where \( i,j = r,z,\theta \) (in that order). Extrapolated from history values evaluated at local coordinate s. Overloaded version from base class.
References i, j, Nprev_for_extrapolation_of_strain_rate, OOMPH_CURRENT_FUNCTION, OOMPH_EXCEPTION_LOCATION, oomph::oomph_info, and s.
Get 'flux' for Z2 error recovery.
References oomph::Problem_Parameter::Critical_strain_rate, DIM, boost::multiprecision::fabs(), ProblemParameters::flux(), i, j, OOMPH_EXCEPTION_LOCATION, s, and oomph::SecondInvariantHelper::second_invariant().
Referenced by oomph::RefineablePoissonEquations< DIM >::compute_exact_Z2_error(), oomph::TLinearHeatAndElasticityElement< DIM, NNODE_1D >::get_Z2_flux(), oomph::PseudoSolidNodeUpdateElement< BASIC, SOLID >::get_Z2_flux(), and oomph::RefineablePseudoSolidNodeUpdateElement< BASIC, SOLID >::get_Z2_flux().
void latest_fixed_point_iteration_guess_for_strain_rate | ( | const unsigned & | ipt, |
DenseMatrix< double > & | strainrate | ||
) | const |
Return latest guess (obtained via fixed point iteration) for strain rate at integration point ipt
References Aitken_index, Fixed_point_iteration_guess_for_strain_rate, i, and j.
Referenced by extrapolated_strain_rate(), and square_of_norm_of_fixed_point().
Constructor initialise error and set default for number of previous history values to be used for extrapolation of strain rate
References Aitken_index, Error, Fixed_point_iteration_guess_for_strain_rate, Nprev_for_extrapolation_of_strain_rate, Use_aitken_extrapolation, Use_fixed_point_for_strain_rate, and calibrate::val.
unsigned& nprev_for_extrapolation_of_strain_rate | ( | ) |
Number of previous history values to be used for extrapolation of strain rate
References Nprev_for_extrapolation_of_strain_rate.
void output | ( | std::ostream & | outfile, |
const unsigned & | nplot | ||
) |
Overload output function.
References el_dim, Error, extrapolated_strain_rate(), boost::multiprecision::fabs(), i, j, k, s, oomph::SecondInvariantHelper::second_invariant(), size, sqrt(), and oomph::Problem_Parameter::Yield_stress.
Referenced by NavierStokesProblem< ELEMENT >::apply_boundary_conditions(), EqualityChecker< Scalar, StorageIndex, Dim >::check_recursive(), MeltContactProblem< ELEMENT >::doc_solution(), SolarRadiationProblem< ELEMENT >::doc_solution(), ContactProblem< ELEMENT >::doc_solution(), AxisymmetricVibratingShellProblem< ELEMENT >::doc_solution(), VibratingShellProblem< ELEMENT >::doc_solution(), TetmeshPoissonProblem< ELEMENT >::doc_solution(), ElasticRingProblem< ELEMENT >::doc_solution(), FSIChannelWithLeafletProblem< ELEMENT >::doc_solution(), InsertZeros< TensorType >::eval(), BatchMatMul< TensorType >::eval(), Eigen::TensorContractionEvaluatorBase< Derived >::evalGemmPartial(), Eigen::bfloat16_impl::float_to_bfloat16_rtne< false >(), Eigen::bfloat16_impl::float_to_bfloat16_rtne< true >(), HomogenisationProblem< ELEMENT >::HomogenisationProblem(), main(), integratorFunctor< Scalar >::operator()(), oomph::UnsteadyHeatFluxPseudoMeltElement< ELEMENT >::output(), oomph::FSIAxisymmetricLinearElasticityTractionElement< ELASTICITY_BULK_ELEMENT, NAVIER_STOKES_BULK_ELEMENT >::output(), oomph::LinearisedFSIAxisymmetricNStNoSlipBCElementElement< FLUID_BULK_ELEMENT, SOLID_BULK_ELEMENT >::output(), oomph::LinearisedAxisymPoroelasticBJS_FSIElement< FLUID_BULK_ELEMENT, POROELASTICITY_BULK_ELEMENT >::output(), oomph::AxisymmetricPoroelasticityTractionElement< ELEMENT >::output(), oomph::SolidQHermiteElement< DIM >::output(), oomph::FourierDecomposedTimeHarmonicLinElastLoadedByHelmholtzPressureBCElement< ELASTICITY_BULK_ELEMENT, HELMHOLTZ_BULK_ELEMENT >::output(), oomph::FourierDecomposedHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::output(), oomph::TimeHarmonicLinElastLoadedByHelmholtzPressureBCElement< ELASTICITY_BULK_ELEMENT, HELMHOLTZ_BULK_ELEMENT >::output(), oomph::HelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::output(), oomph::TimeHarmonicLinElastLoadedByPMLHelmholtzPressureBCElement< ELASTICITY_BULK_ELEMENT, HELMHOLTZ_BULK_ELEMENT >::output(), oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::output(), SSPorousChannelEquations::output(), SSPorousChannelElement::output(), ComplexHarmonicEquations::output(), HarmonicEquations::output(), OrrSommerfeldEquations< DIM >::output(), NonIsothermalAxisymmetricQCrouzeixRaviartElement::output(), ModalPoissonEquations< DIM >::output(), GelfandBratuElement< NNODE_1D >::output(), PredatorPreyElement::output(), ABCElement::output(), TwoNodePoissonElement::output(), oomph::TLinearHeatAndElasticityElement< DIM, NNODE_1D >::output(), oomph::HeatedPenetratorFluxElement< ELEMENT >::output(), oomph::DarcyFaceElement< ELEMENT >::output(), oomph::SpineUpdateFluidInterfaceElement< EQUATION_CLASS, DERIVATIVE_CLASS, ELEMENT >::output(), oomph::ElasticUpdateFluidInterfaceElement< EQUATION_CLASS, DERIVATIVE_CLASS, ELEMENT >::output(), oomph::PseudoSolidNodeUpdateElement< BASIC, SOLID >::output(), oomph::RefineablePseudoSolidNodeUpdateElement< BASIC, SOLID >::output(), oomph::UnsteadyHeatFluxElement< ELEMENT >::output(), DistanceWrapper< ELEMENT >::output(), oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::output(), oomph::ProjectableAxisymmetricPoroelasticityElement< AXISYMMETRIC_POROELASTICITY_ELEMENT >::output(), oomph::ProjectableDarcyElement< DARCY_ELEMENT >::output(), oomph::ProjectableFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >::output(), oomph::ProjectableHelmholtzElement< HELMHOLTZ_ELEMENT >::output(), oomph::ProjectablePMLFourierDecomposedHelmholtzElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >::output(), oomph::ProjectablePMLHelmholtzElement< HELMHOLTZ_ELEMENT >::output(), StabilityProblem< BASE_ELEMENT, PERTURBED_ELEMENT >::perform_power_method(), QFaceTestProblem< ELEMENT >::QFaceTestProblem(), Eigen::TensorSycl::internal::PartialReducerLauncher< Self, Op, rt >::run(), Eigen::internal::OuterReducer< Self, Op, Eigen::SyclDevice >::run(), Eigen::internal::InnerReducer< Self, Op, Eigen::SyclDevice >::run(), Eigen::internal::GenericReducer< Self, Op, Eigen::SyclDevice >::run(), Eigen::internal::FullReducer< Self, Op, Device, Vectorizable >::run(), Calibration::setOutput(), test_block_io_copy_data_from_source_to_target(), test_block_io_copy_using_reordered_dimensions(), test_block_io_squeeze_ones(), test_block_io_zero_stride(), test_complex_strided(), test_const(), test_fft_2D_golden(), test_fft_non_power_of_2_round_trip(), test_fft_real_input_energy(), TFaceTestProblem< ELEMENT >::TFaceTestProblem(), TriangleFaceTestProblem< ELEMENT >::TriangleFaceTestProblem(), and Eigen::bfloat16_impl::truncate_to_bfloat16().
void set_error | ( | const double & | error | ) |
Set error value for post-processing.
References calibrate::error, and Error.
Referenced by AxisymmetricVibratingShellProblem< ELEMENT >::compute_error_estimate(), VibratingShellProblem< ELEMENT >::compute_error_estimate(), TwoLayerInterfaceProblem< ELEMENT >::compute_error_estimate(), UnstructuredFluidProblem< ELEMENT >::compute_error_estimate(), BubbleInChannelProblem< ELEMENT >::compute_error_estimate(), and DropInChannelProblem< ELEMENT >::compute_error_estimate().
double square_of_l2_norm | ( | ) |
Get square of L2 norm of velocity.
References el_dim, i, J, s, w, and oomph::QuadTreeNames::W.
Referenced by UnstructuredTorusProblem< ELEMENT >::calculate_square_of_l2_norm(), UnstructuredImmersedEllipseProblem< ELEMENT >::doc_solution(), AxisymmetricVibratingShellProblem< ELEMENT >::doc_solution(), VibratingShellProblem< ELEMENT >::doc_solution(), BubbleInChannelProblem< ELEMENT >::doc_solution(), DropInChannelProblem< ELEMENT >::doc_solution(), and UnstructuredFluidProblem< ELEMENT >::doc_solution().
double square_of_norm_of_fixed_point | ( | double & | norm_squared, |
double & | latest_guess_norm_squared, | ||
double & | error_norm_squared | ||
) |
Get square of L2 norms of (i) current strainrate, (ii) its latest guess from fixed point iteration, (iii) difference between the two. Returns area as a check
References i, J, latest_fixed_point_iteration_guess_for_strain_rate(), s, oomph::SecondInvariantHelper::second_invariant(), w, and oomph::QuadTreeNames::W.
double square_of_norm_of_strain_invariant | ( | double & | norm_squared, |
double & | extrapolated_norm_squared, | ||
double & | error_norm_squared | ||
) |
Get square of L2 norms of (i) strain invariant, (ii) its extrapolated value, (iii) difference between the two. Returns area as a check
References extrapolated_strain_rate(), i, J, s, oomph::SecondInvariantHelper::second_invariant(), w, and oomph::QuadTreeNames::W.
double square_of_norm_of_viscosity | ( | double & | norm_squared, |
double & | extrapolated_norm_squared, | ||
double & | error_norm_squared | ||
) |
Get square of L2 norms of (i) viscosity, (ii) its extrapolated value, (iii) difference between the two. Returns area as a check
References extrapolated_strain_rate(), i, J, s, oomph::SecondInvariantHelper::second_invariant(), w, and oomph::QuadTreeNames::W.
void update_latest_fixed_point_iteration_guess_for_strain_rate | ( | ) |
Update latest guess (obtained via fixed point iteration) for strain rate from current actual strain rate
References Aitken_index, boost::multiprecision::fabs(), Fixed_point_iteration_guess_for_strain_rate, i, j, max, Eigen::bfloat16_impl::pow(), s, Use_aitken_extrapolation, v1(), and v2().
Referenced by enable_fixed_point_iteration_for_strain_rate().
std::string variable_identifier | ( | ) |
Return variable identifier.
References oomph::Global_string_for_annotation::string().
|
private |
unsigned storing the number of fixed point iterations after the last Aitken extrapolation
Referenced by enable_fixed_point_iteration_for_strain_rate(), latest_fixed_point_iteration_guess_for_strain_rate(), MyTaylorHoodElement(), and update_latest_fixed_point_iteration_guess_for_strain_rate().
|
private |
Storage for elemental error estimate – used for post-processing.
Referenced by oomph::MyCrouzeixRaviartElement::MyCrouzeixRaviartElement(), MyTaylorHoodElement(), oomph::MyTaylorHoodElement< DIM >::MyTaylorHoodElement(), output(), oomph::MyTaylorHoodElement< DIM >::output(), oomph::MyCrouzeixRaviartElement::output(), set_error(), oomph::MyTaylorHoodElement< DIM >::set_error(), and oomph::MyCrouzeixRaviartElement::set_error().
|
private |
Current, last and 2nd last best guess for strain rate tensor (fixed point iteration)
Referenced by latest_fixed_point_iteration_guess_for_strain_rate(), MyTaylorHoodElement(), and update_latest_fixed_point_iteration_guess_for_strain_rate().
|
private |
Number of previous history values to be used for extrapolation of strain rate
Referenced by extrapolated_strain_rate(), MyTaylorHoodElement(), and nprev_for_extrapolation_of_strain_rate().
|
private |
Boolean to indicate whether we use Aitken extrapolation during the fixed point iterations
Referenced by disable_aitken_extrapolation(), disable_fixed_point_iteration_for_strain_rate(), enable_aitken_extrapolation(), MyTaylorHoodElement(), and update_latest_fixed_point_iteration_guess_for_strain_rate().
|
private |
Boolean to indicate if we're using a fixed point iteration for the strain rate that forms the basis for the invariant
Referenced by disable_fixed_point_iteration_for_strain_rate(), enable_fixed_point_iteration_for_strain_rate(), extrapolated_strain_rate(), and MyTaylorHoodElement().