https://mooseframework.inl.gov
Loading...
Searching...
No Matches
FVAdvectedVenkatakrishnanDeferredCorrection.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10#pragma once
11
14
24{
25public:
27
29
32
33 bool needsGradients() const override { return true; }
34
36
37 AdvectedSystemContribution advectedInterpolate(const FaceInfo & face,
38 Real elem_value,
39 Real neighbor_value,
40 const VectorValue<Real> * elem_grad,
41 const VectorValue<Real> * neighbor_grad,
42 Real mass_flux) const override;
43
44private:
49};
Interface for interpolation methods that provide matrix and RHS contributions for advected face value...
virtual Real advectedInterpolateValue(const FaceInfo &face, Real elem_value, Real neighbor_value, const VectorValue< Real > *elem_grad, const VectorValue< Real > *neighbor_grad, Real mass_flux) const
Compute the advected face value.
virtual AdvectedSystemContribution advectedInterpolate(const FaceInfo &face, Real elem_value, Real neighbor_value, const VectorValue< Real > *elem_grad, const VectorValue< Real > *neighbor_grad, Real mass_flux) const =0
Compute the matrix weights for the advected face value.
Multi-dimensional MUSCL reconstruction using Venkatakrishnan-limited cell gradients and deferred corr...
bool needsGradients() const override
Whether advected interpolation requires adjacent-cell gradients.
Real _deferred_correction_factor
Scales the deferred correction strength (0 = upwind, 1 = full deferred correction).
Moose::FV::GradientLimiterType gradientLimiter() const override
Limiter used by interpolations that require limited gradients.
AdvectedSystemContribution advectedInterpolate(const FaceInfo &face, Real elem_value, Real neighbor_value, const VectorValue< Real > *elem_grad, const VectorValue< Real > *neighbor_grad, Real mass_flux) const override
Compute the matrix weights for the advected face value.
Registered base class for linear FV interpolation objects.
This data structure is used to store geometric and variable related metadata about each cell face in ...
Definition FaceInfo.h:38
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
GradientLimiterType
Cell-gradient limiter variants used for MUSCL-style reconstructions.
@ Venkatakrishnan
Venkatakrishnan limiter (smooth, multidimensional).