www.mooseframework.org
NSEnergyInviscidSpecifiedNormalFlowBC.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
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 // Navier-Stokes includes
11 #include "NS.h"
13 
15 
16 template <>
17 InputParameters
19 {
20  InputParameters params = validParams<NSEnergyInviscidBC>();
21  params.addRequiredCoupledVar(NS::pressure, "pressure");
22  params.addRequiredParam<Real>("un", "The specified value of u.n for this boundary");
23  return params;
24 }
25 
27  const InputParameters & parameters)
28  : NSEnergyInviscidBC(parameters), _pressure(coupledValue(NS::pressure)), _un(getParam<Real>("un"))
29 {
30 }
31 
32 Real
34 {
35  return qpResidualHelper(_pressure[_qp], _un);
36 }
37 
38 Real
40 {
41  return computeJacobianHelper(/*on-diagonal variable is energy=*/4);
42 }
43 
44 Real
46 {
47  if (isNSVariable(jvar))
48  return computeJacobianHelper(mapVarNumber(jvar));
49  else
50  return 0.0;
51 }
52 
53 Real
55 {
56  // For specified u.n, term "A" is zero, see base class for details.
57  return qpJacobianTermB(var_number, _un) + qpJacobianTermC(var_number, _un);
58 }
NSEnergyInviscidSpecifiedNormalFlowBC::computeQpResidual
virtual Real computeQpResidual()
Definition: NSEnergyInviscidSpecifiedNormalFlowBC.C:33
NSEnergyInviscidSpecifiedNormalFlowBC::_un
const Real _un
Definition: NSEnergyInviscidSpecifiedNormalFlowBC.h:37
NSIntegratedBC::mapVarNumber
unsigned mapVarNumber(unsigned var)
Definition: NSIntegratedBC.C:90
NSEnergyInviscidSpecifiedNormalFlowBC
The inviscid energy BC term with specified normal flow.
Definition: NSEnergyInviscidSpecifiedNormalFlowBC.h:23
NSEnergyInviscidSpecifiedNormalFlowBC::computeJacobianHelper
Real computeJacobianHelper(unsigned var_number)
Definition: NSEnergyInviscidSpecifiedNormalFlowBC.C:54
NSEnergyInviscidSpecifiedNormalFlowBC::computeQpJacobian
virtual Real computeQpJacobian()
Definition: NSEnergyInviscidSpecifiedNormalFlowBC.C:39
NSEnergyInviscidSpecifiedNormalFlowBC.h
NSIntegratedBC::isNSVariable
bool isNSVariable(unsigned var)
Definition: NSIntegratedBC.C:80
validParams< NSEnergyInviscidBC >
InputParameters validParams< NSEnergyInviscidBC >()
Definition: NSEnergyInviscidBC.C:19
NSEnergyInviscidSpecifiedNormalFlowBC::NSEnergyInviscidSpecifiedNormalFlowBC
NSEnergyInviscidSpecifiedNormalFlowBC(const InputParameters &parameters)
Definition: NSEnergyInviscidSpecifiedNormalFlowBC.C:26
NSEnergyInviscidBC
This class corresponds to the inviscid part of the "natural" boundary condition for the energy equati...
Definition: NSEnergyInviscidBC.h:36
NSEnergyInviscidBC::qpJacobianTermB
Real qpJacobianTermB(unsigned var_number, Real un)
Definition: NSEnergyInviscidBC.C:92
NSEnergyInviscidBC::qpResidualHelper
Real qpResidualHelper(Real pressure, Real un)
Definition: NSEnergyInviscidBC.C:37
NS
Definition: NS.h:14
NSEnergyInviscidBC::qpJacobianTermC
Real qpJacobianTermC(unsigned var_number, Real un)
Definition: NSEnergyInviscidBC.C:122
NSEnergyInviscidSpecifiedNormalFlowBC::computeQpOffDiagJacobian
virtual Real computeQpOffDiagJacobian(unsigned jvar)
Definition: NSEnergyInviscidSpecifiedNormalFlowBC.C:45
NS.h
registerMooseObject
registerMooseObject("NavierStokesApp", NSEnergyInviscidSpecifiedNormalFlowBC)
NSEnergyInviscidSpecifiedNormalFlowBC::_pressure
const VariableValue & _pressure
Definition: NSEnergyInviscidSpecifiedNormalFlowBC.h:34
validParams< NSEnergyInviscidSpecifiedNormalFlowBC >
InputParameters validParams< NSEnergyInviscidSpecifiedNormalFlowBC >()
Definition: NSEnergyInviscidSpecifiedNormalFlowBC.C:18
NS::pressure
const std::string pressure
Definition: NS.h:25