https://mooseframework.inl.gov
Loading...
Searching...
No Matches
NSGravityPower.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
10#include "NSGravityPower.h"
11
13
16{
18 params.addClassDescription("This class computes the momentum contributed by gravity.");
19 params.addRequiredCoupledVar("momentum", "");
20 params.addRequiredParam<Real>("acceleration", "The body force vector component.");
21 return params;
22}
23
25 : Kernel(parameters),
26 _momentum_var(coupled("momentum")),
27 _momentum(coupledValue("momentum")),
28 _acceleration(getParam<Real>("acceleration"))
29{
30}
31
32Real
34{
35 // -(rho * U * g) * phi
36 return -_momentum[_qp] * _acceleration * _test[_i][_qp];
37}
38
39Real
41{
42 return 0.0;
43}
44
45Real
47{
48 if (jvar == _momentum_var)
49 return -_phi[_j][_qp] * _acceleration * _test[_i][_qp];
50
51 return 0.0;
52}
registerMooseObject("NavierStokesApp", NSGravityPower)
void addRequiredCoupledVar(const std::string &name, const std::string &doc_string)
void addRequiredParam(const std::string &name, const std::string &doc_string)
void addClassDescription(const std::string &doc_string)
unsigned int _qp
unsigned int _j
unsigned int _i
const VariablePhiValue & _phi
const VariableTestValue & _test
static InputParameters validParams()
static InputParameters validParams()
virtual Real computeQpJacobian()
const Real _acceleration
virtual Real computeQpResidual()
unsigned int _momentum_var
const VariableValue & _momentum
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
NSGravityPower(const InputParameters &parameters)