www.mooseframework.org
INSCourant.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 #include "INSCourant.h"
11 #include "MooseMesh.h"
12 
13 registerMooseObject("NavierStokesApp", INSCourant);
14 
15 template <>
16 InputParameters
18 {
19  InputParameters params = validParams<AuxKernel>();
20 
21  params.addClassDescription("Computes h_min / |u|.");
22  // Coupled variables
23  params.addRequiredCoupledVar("u", "x-velocity");
24  params.addCoupledVar("v", "y-velocity"); // only required in 2D and 3D
25  params.addCoupledVar("w", "z-velocity"); // only required in 3D
26 
27  return params;
28 }
29 
30 INSCourant::INSCourant(const InputParameters & parameters)
31  : AuxKernel(parameters),
32  _u_vel(coupledValue("u")),
33  _v_vel(_mesh.dimension() >= 2 ? coupledValue("v") : _zero),
34  _w_vel(_mesh.dimension() == 3 ? coupledValue("w") : _zero)
35 {
36 }
37 
38 Real
40 {
41  const RealVectorValue U(_u_vel[_qp], _v_vel[_qp], _w_vel[_qp]);
42  Real vel_mag = U.norm();
43 
44  // Don't divide by zero...
45  vel_mag = std::max(vel_mag, std::numeric_limits<Real>::epsilon());
46 
47  return _current_elem->hmin() / vel_mag;
48 }
registerMooseObject
registerMooseObject("NavierStokesApp", INSCourant)
INSCourant::computeValue
virtual Real computeValue()
Definition: INSCourant.C:39
INSCourant::_u_vel
const VariableValue & _u_vel
Definition: INSCourant.h:32
INSCourant
Computes h_min / |u|.
Definition: INSCourant.h:23
INSCourant::_v_vel
const VariableValue & _v_vel
Definition: INSCourant.h:33
INSCourant::_w_vel
const VariableValue & _w_vel
Definition: INSCourant.h:34
INSCourant.h
INSCourant::INSCourant
INSCourant(const InputParameters &parameters)
Definition: INSCourant.C:30
validParams< INSCourant >
InputParameters validParams< INSCourant >()
Definition: INSCourant.C:17