25 params.
addClassDescription(
"Computes the residual of advective term using finite volume method " 26 "using a deferred correction approach.");
28 "ho_implicit_fraction", 0,
"The fraction of the high order flux that should be implicit");
37 _old_ho_fluxes(declareRestartableData<
std::unordered_map<
dof_id_type,
Real>>(
"old_ho_fluxes")),
38 _current_upwind_fluxes(
39 declareRestartableData<
std::unordered_map<
dof_id_type,
Real>>(
"current_upwind_fluxes")),
42 _ho_implicit_fraction(getParam<
Real>(
"ho_implicit_fraction"))
79 mooseAssert(it != flux_container.end(),
80 "We should have saved an old flux for the current _face_info. Do you have mesh " 81 "adaptivity on? Unfortunately we don't currently support that");
95 mooseAssert(pr.second,
96 "Insertion should have happened. If it did not it means you are overwriting some " 97 "other face's flux!");
104 mooseAssert(pr.second,
105 "Insertion should have happened. If it did not it means you are overwriting some " 106 "other face's flux!");
110 const auto old_upwind_flux =
getOldFlux(
true);
PCNSFVKTDC(const InputParameters ¶ms)
static InputParameters validParams()
std::unordered_map< dof_id_type, Real > & _old_ho_fluxes
Old high order fluxes.
const FaceInfo * _face_info
Real getOldFlux(bool upwind) const
void timestepSetup() override
std::unique_ptr< Moose::FV::Limiter< ADReal > > _upwind_limiter
bool onBoundary(const FaceInfo &fi) const
std::unordered_map< dof_id_type, Real > & _old_upwind_fluxes
virtual ADReal computeQpResidual() override
std::unique_ptr< Moose::FV::Limiter< ADReal > > _limiter
The slope limiter we will apply when interpolating from cell centroids to faces.
std::unordered_map< dof_id_type, Real > & _current_ho_fluxes
Current high order fluxes.
void jacobianSetup() override
Executioner * getExecutioner() const
virtual ADReal computeQpResidual() override
void residualSetup() override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const Real _ho_implicit_fraction
static InputParameters validParams()
std::unordered_map< dof_id_type, Real > & _current_upwind_fluxes
Implements the centered Kurganov-Tadmor discretization of advective fluxes.
virtual bool lastSolveConverged() const=0
registerMooseObject("NavierStokesApp", PCNSFVKTDC)