https://mooseframework.inl.gov
ImplicitNeumannBC.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 "ImplicitNeumannBC.h"
11 
12 registerMooseObject("NavierStokesApp", ImplicitNeumannBC);
13 
16 {
18  params.addClassDescription("This class implements a form of the Neumann boundary condition in "
19  "which the boundary term is treated 'implicitly'.");
20  return params;
21 }
22 
24 {
25 }
26 
27 Real
29 {
30  return _grad_u[_qp] * _normals[_qp] * _test[_i][_qp];
31 }
32 
33 Real
35 {
36  return (_grad_phi[_j][_qp] * _normals[_qp]) * _test[_i][_qp];
37 }
38 
39 Real
41 {
42  // off-diagonal derivatives are all zero.
43  return 0.;
44 }
const VariableTestValue & _test
This class implements a form of the Neumann boundary condition in which the boundary term is treated ...
unsigned int _j
const MooseArray< Point > & _normals
static InputParameters validParams()
const VariableGradient & _grad_u
static InputParameters validParams()
unsigned int _i
unsigned int _qp
const VariablePhiGradient & _grad_phi
virtual Real computeQpResidual()
virtual Real computeQpOffDiagJacobian(unsigned jvar)
ImplicitNeumannBC(const InputParameters &parameters)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void addClassDescription(const std::string &doc_string)
registerMooseObject("NavierStokesApp", ImplicitNeumannBC)
virtual Real computeQpJacobian()