https://mooseframework.inl.gov
RhieChowFaceFluxProvider.C
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 
11 
12 using namespace libMesh;
13 
16 {
17  auto params = GeneralUserObject::validParams();
19 
20  return params;
21 }
22 
24  : GeneralUserObject(params), BlockRestrictable(this)
25 {
26 }
27 
28 bool
29 RhieChowFaceFluxProvider::hasFaceSide(const FaceInfo & fi, const bool fi_elem_side) const
30 {
31  if (fi_elem_side)
32  return hasBlocks(fi.elem().subdomain_id());
33  else
34  return fi.neighborPtr() && hasBlocks(fi.neighbor().subdomain_id());
35 }
static InputParameters validParams()
const Elem & elem() const
RhieChowFaceFluxProvider(const InputParameters &params)
bool hasFaceSide(const FaceInfo &fi, const bool fi_elem_side) const override
The following methods are specializations for using the Parallel::packed_range_* routines for a vecto...
static InputParameters validParams()
static InputParameters validParams()
const Elem * neighborPtr() const
const Elem & neighbor() const
subdomain_id_type subdomain_id() const
bool hasBlocks(const SubdomainName &name) const