GRINS-0.7.0
constant_viscosity.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------bl-
2 //--------------------------------------------------------------------------
3 //
4 // GRINS - General Reacting Incompressible Navier-Stokes
5 //
6 // Copyright (C) 2014-2016 Paul T. Bauman, Roy H. Stogner
7 // Copyright (C) 2010-2013 The PECOS Development Team
8 //
9 // This library is free software; you can redistribute it and/or
10 // modify it under the terms of the Version 2.1 GNU Lesser General
11 // Public License as published by the Free Software Foundation.
12 //
13 // This library is distributed in the hope that it will be useful,
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 // Lesser General Public License for more details.
17 //
18 // You should have received a copy of the GNU Lesser General Public
19 // License along with this library; if not, write to the Free Software
20 // Foundation, Inc. 51 Franklin Street, Fifth Floor,
21 // Boston, MA 02110-1301 USA
22 //
23 //-----------------------------------------------------------------------el-
24 
25 
26 #ifndef GRINS_CONSTANT_VISCOSITY_H
27 #define GRINS_CONSTANT_VISCOSITY_H
28 
29 //GRINS
30 #include "grins/viscosity_base.h"
31 #include "grins/assembly_context.h"
32 #include "grins/parameter_user.h"
33 
34 // libMesh
35 #include "libmesh/libmesh_common.h"
36 
37 #include "libmesh/fem_system.h"
38 
39 class GetPot;
40 
41 namespace GRINS
42 {
44  public ViscosityBase
45  {
46  public:
47 
49 
51  ConstantViscosity( const GetPot& input, const std::string& material );
52 
54  ConstantViscosity( const GetPot& input );
55  virtual ~ConstantViscosity();
56 
57  libMesh::Real operator()() const;
58 
59  libMesh::Real operator()(AssemblyContext& context, unsigned int qp) const;
60 
61  libMesh::Real operator()( const libMesh::Point& p, const libMesh::Real time );
62 
63  libMesh::Real operator()( const libMesh::Real T ) const;
64 
65  libMesh::Real deriv( const libMesh::Real T ) const;
66 
67  void init(libMesh::FEMSystem* /*system*/){};
68 
69  private:
70 
72 
73  libMesh::Real _mu;
74 
75  };
76 
77  /* ------------------------- Inline Functions -------------------------*/
78  inline
79  libMesh::Real ConstantViscosity::operator()() const
80  {
81  return _mu;
82  }
83 
84  inline
85  libMesh::Real ConstantViscosity::operator()(AssemblyContext& /*context*/, unsigned int /*qp*/) const
86  {
87  return _mu;
88  }
89 
90  inline
91  libMesh::Real ConstantViscosity::operator()( const libMesh::Point& /*p*/,
92  const libMesh::Real /*time*/ )
93  {
94  return _mu;
95  }
96 
97  inline
98  libMesh::Real ConstantViscosity::operator()( const libMesh::Real /*T*/ ) const
99  {
100  return (*this)();
101  }
102 
103  inline
104  libMesh::Real ConstantViscosity::deriv( const libMesh::Real /*T*/ ) const
105  {
106  return 0.0;
107  }
108 
109 } // end namespace GRINS
110 
111 #endif // GRINS_CONSTANT_VISCOSITY_H
Base class for viscosity models.
GRINS namespace.
libMesh::Real deriv(const libMesh::Real T) const
ParameterUser base class. Utility methods for subclasses.
libMesh::Real operator()() const
void init(libMesh::FEMSystem *)

Generated on Thu Jun 2 2016 21:52:28 for GRINS-0.7.0 by  doxygen 1.8.10