www.mooseframework.org
NSWeakStagnationBaseBC.h
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 #pragma once
11 
12 #include "NSIntegratedBC.h"
13 
14 // Forward Declarations
16 
17 // Specialization required of all user-level Moose objects
18 template <>
19 InputParameters validParams<NSWeakStagnationBaseBC>();
20 
28 {
29 public:
30  // Constructor
31  NSWeakStagnationBaseBC(const InputParameters & parameters);
32 
33  // Destructor, better be virtual
35 
36 protected:
40  // virtual Real computeQpResidual();
41  // virtual Real computeQpJacobian();
42  // virtual Real computeQpOffDiagJacobian(unsigned jvar);
43 
44  // Required parameters
47 
48  // Specified flow direction. Should be the components of
49  // a unit vector. TODO: Test reading RealVectorValue objects
50  // directly?
51  Real _sx;
52  Real _sy;
53  Real _sz; // only required in 3D
54 
55  //
56  // Helper functions...
57  //
58 
59  // Given |u|, p_0, and T_0, compute static quantities. Each
60  // on depends on the previous, so it makes sense to compute them
61  // all even if you don't need them all...
62  void staticValues(Real & T_s, Real & p_s, Real & rho_s);
63 
64  // Nicer interface if you actually only want one of the static values.
65  // Note that they will all still be computed!
66  Real rhoStatic();
67 
68  // The velocity magnitude, squared
69  Real velmag2();
70 
71  // The specified flow direction, s, dotted with the outward unit normal
72  // normal vector
73  Real sdotn();
74 };
75 
NSWeakStagnationBaseBC::~NSWeakStagnationBaseBC
virtual ~NSWeakStagnationBaseBC()
Definition: NSWeakStagnationBaseBC.h:34
NSWeakStagnationBaseBC::_stagnation_pressure
Real _stagnation_pressure
Must be implemented in derived classes.
Definition: NSWeakStagnationBaseBC.h:45
NSWeakStagnationBaseBC::_stagnation_temperature
Real _stagnation_temperature
Definition: NSWeakStagnationBaseBC.h:46
NSWeakStagnationBaseBC::rhoStatic
Real rhoStatic()
Definition: NSWeakStagnationBaseBC.C:59
NSWeakStagnationBaseBC::_sz
Real _sz
Definition: NSWeakStagnationBaseBC.h:53
NSWeakStagnationBaseBC
This is the base class for "weakly-imposed" stagnation boundary conditions, that is the relevant boun...
Definition: NSWeakStagnationBaseBC.h:27
NSWeakStagnationBaseBC::NSWeakStagnationBaseBC
NSWeakStagnationBaseBC(const InputParameters &parameters)
Definition: NSWeakStagnationBaseBC.C:31
NSIntegratedBC
This class couples together all the variables for the compressible Navier-Stokes equations to allow t...
Definition: NSIntegratedBC.h:29
NSWeakStagnationBaseBC::staticValues
void staticValues(Real &T_s, Real &p_s, Real &rho_s)
Definition: NSWeakStagnationBaseBC.C:42
NSWeakStagnationBaseBC::sdotn
Real sdotn()
Definition: NSWeakStagnationBaseBC.C:73
NSWeakStagnationBaseBC::_sx
Real _sx
Definition: NSWeakStagnationBaseBC.h:51
NSWeakStagnationBaseBC::_sy
Real _sy
Definition: NSWeakStagnationBaseBC.h:52
NSIntegratedBC.h
NSWeakStagnationBaseBC::velmag2
Real velmag2()
Definition: NSWeakStagnationBaseBC.C:67
validParams< NSWeakStagnationBaseBC >
InputParameters validParams< NSWeakStagnationBaseBC >()
Definition: NSWeakStagnationBaseBC.C:18