https://mooseframework.inl.gov
Loading...
Searching...
No Matches
FaceArgInterface.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
12#include "MooseTypes.h"
13#include "FaceInfo.h"
15#include "libmesh/elem.h"
16
22{
23public:
24 virtual ~FaceArgInterface() = default;
25 virtual bool hasFaceSide(const FaceInfo & fi, const bool fi_elem_side) const = 0;
26};
27
33{
34public:
45 const Moose::FV::LimiterType limiter_type,
46 const bool elem_is_upwind,
47 const bool correct_skewness = false,
48 const Moose::StateArg * state_limiter = nullptr) const;
49
58 Moose::FaceArg makeCDFace(const FaceInfo & fi, const bool correct_skewness = false) const;
59};
60
61inline Moose::FaceArg
62FaceArgProducerInterface::makeCDFace(const FaceInfo & fi, const bool correct_skewness) const
63{
64 return makeFace(fi, Moose::FV::LimiterType::CentralDifference, true, correct_skewness);
65}
A base class interface for both producers and consumers of functor face arguments,...
virtual ~FaceArgInterface()=default
virtual bool hasFaceSide(const FaceInfo &fi, const bool fi_elem_side) const =0
An interface for producers of functor face arguments, e.g.
Moose::FaceArg makeFace(const FaceInfo &fi, const Moose::FV::LimiterType limiter_type, const bool elem_is_upwind, const bool correct_skewness=false, const Moose::StateArg *state_limiter=nullptr) const
Create a functor face argument from provided component arguments.
Moose::FaceArg makeCDFace(const FaceInfo &fi, const bool correct_skewness=false) const
Make a functor face argument with a central differencing limiter, e.g.
This data structure is used to store geometric and variable related metadata about each cell face in ...
Definition FaceInfo.h:38
A structure defining a "face" evaluation calling argument for Moose functors.
State argument for evaluating functors.