https://mooseframework.inl.gov
Loading...
Searching...
No Matches
NSMomentumInviscidFluxWithGradP.h
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#pragma once
11
12#include "NSKernel.h"
13#include "NSPressureDerivs.h"
14
15// ForwardDeclarations
16
18{
19public:
21
23
24protected:
25 virtual Real computeQpResidual();
26 virtual Real computeQpJacobian();
27 virtual Real computeQpOffDiagJacobian(unsigned int jvar);
28
29 // Coupled gradients
31
32 // Parameters
33 const unsigned int _component;
34
35private:
36 // Computes the Jacobian contribution due to the pressure term,
37 // by summing over the appropriate Hessian row.
38 Real pressureQpJacobianHelper(unsigned var_number);
39
40 // Single vector to refer to all gradients. We have to store
41 // pointers since you can't have a vector<Foo&>. Initialized in
42 // the ctor.
43 std::vector<const VariableGradient *> _gradU;
44
45 // An object for computing pressure derivatives.
46 // Constructed via a reference to ourself
48
49 // Declare ourselves friend to the helper class.
50 template <class U>
51 friend class NSPressureDerivs;
52};
const InputParameters & parameters() const
This class couples together all the variables for the compressible Navier-Stokes equations to allow t...
Definition NSKernel.h:26
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
NSPressureDerivs< NSMomentumInviscidFluxWithGradP > _pressure_derivs
std::vector< const VariableGradient * > _gradU
Class outside the Moose hierarchy that contains common functionality for computing derivatives of the...
VariableGradientTempl< false > VariableGradient