https://mooseframework.inl.gov
Loading...
Searching...
No Matches
PINSFVMomentumBoussinesq.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
12#include "NS.h"
13
15
18{
21 "Computes a body force for natural convection buoyancy in porous media: eps alpha (T-T_0)");
22 params.addRequiredParam<MooseFunctorName>(NS::porosity, "Porosity auxiliary variable");
23
24 return params;
25}
26
28 : INSFVMomentumBoussinesq(params), _eps(getFunctor<ADReal>(NS::porosity))
29{
30 if (!dynamic_cast<PINSFVSuperficialVelocityVariable *>(&_var))
31 mooseError("PINSFVMomentumBoussinesq may only be used with a superficial velocity "
32 "variable, of variable type PINSFVSuperficialVelocityVariable.");
33}
34
DualNumber< Real, DNDerivativeType, true > ADReal
registerMooseObject("NavierStokesApp", PINSFVMomentumBoussinesq)
MooseVariableFV< Real > & _var
const Elem *const & _current_elem
Moose::ElemArg makeElemArg(const Elem *elem, bool correct_skewnewss=false) const
Imposes a Boussinesq force on the momentum equation.
static InputParameters validParams()
void addRequiredParam(const std::string &name, const std::string &doc_string)
void addClassDescription(const std::string &doc_string)
void mooseError(Args &&... args) const
Imposes a Boussinesq force on the momentum equation.
PINSFVMomentumBoussinesq(const InputParameters &params)
const Moose::Functor< ADReal > & _eps
the porosity
static InputParameters validParams()
Moose::StateArg determineState() const
static const std::string porosity
Definition NS.h:108