https://mooseframework.inl.gov
Loading...
Searching...
No Matches
FVGeometricAverage.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
15#include "MooseTypes.h"
16
23{
24public:
26
27 FVGeometricAverage(const InputParameters & params);
28
32
33 Real interpolate(const FaceInfo & face, Real elem_value, Real neighbor_value) const override;
34
36 Real,
37 Real,
38 const VectorValue<Real> *,
39 const VectorValue<Real> *,
40 Real) const override;
41
42 Real advectedInterpolateValue(const FaceInfo & face,
43 Real elem_value,
44 Real neighbor_value,
45 const VectorValue<Real> *,
46 const VectorValue<Real> *,
47 Real) const override;
48};
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.
Abstract base class for interpolation methods that produce a scalar face value from adjacent cell val...
virtual Real interpolate(const FaceInfo &face, Real elem_value, Real neighbor_value) const =0
Face interpolation operation for this method.
Simple linear interpolation that uses the geometric weighting stored on FaceInfo.
AdvectedSystemContribution advectedInterpolate(const FaceInfo &face, Real, Real, const VectorValue< Real > *, const VectorValue< Real > *, Real) const override
Compute the matrix weights for the advected face value.
Real advectedInterpolateValue(const FaceInfo &face, Real elem_value, Real neighbor_value, const VectorValue< Real > *, const VectorValue< Real > *, Real) const override
Compute the advected face value.
static InputParameters validParams()
Real interpolate(const FaceInfo &face, Real elem_value, Real neighbor_value) const override
Face interpolation operation for this method.
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.
Matrix/RHS contribution for an advected face interpolation.