GRINS-0.6.0
Public Member Functions | Private Attributes | List of all members
TurbulentBdyFunctionU Class Reference
Inheritance diagram for TurbulentBdyFunctionU:
Inheritance graph
[legend]
Collaboration diagram for TurbulentBdyFunctionU:
Collaboration graph
[legend]

Public Member Functions

 TurbulentBdyFunctionU (libMesh::MeshFunction *_turbulent_bc_values)
 
virtual libMesh::Number operator() (const libMesh::Point &, const libMesh::Real=0)
 
virtual void operator() (const libMesh::Point &p, const libMesh::Real t, libMesh::DenseVector< libMesh::Number > &output)
 
virtual libMesh::AutoPtr< libMesh::FunctionBase< libMesh::Number > > clone () const
 

Private Attributes

libMesh::MeshFunction * turbulent_bc_values
 

Detailed Description

Definition at line 81 of file test_turbulent_channel.C.

Constructor & Destructor Documentation

TurbulentBdyFunctionU::TurbulentBdyFunctionU ( libMesh::MeshFunction *  _turbulent_bc_values)
inline

Definition at line 84 of file test_turbulent_channel.C.

Referenced by clone().

84  :
85  turbulent_bc_values(_turbulent_bc_values)
86  { this->_initialized = true; }
libMesh::MeshFunction * turbulent_bc_values

Member Function Documentation

virtual libMesh::AutoPtr<libMesh::FunctionBase<libMesh::Number> > TurbulentBdyFunctionU::clone ( ) const
inlinevirtual

Definition at line 117 of file test_turbulent_channel.C.

References turbulent_bc_values, and TurbulentBdyFunctionU().

118  { return libMesh::AutoPtr<libMesh::FunctionBase<libMesh::Number> > (new TurbulentBdyFunctionU(turbulent_bc_values)); }
libMesh::MeshFunction * turbulent_bc_values
TurbulentBdyFunctionU(libMesh::MeshFunction *_turbulent_bc_values)
virtual libMesh::Number TurbulentBdyFunctionU::operator() ( const libMesh::Point &  ,
const libMesh::Real  = 0 
)
inlinevirtual

Definition at line 88 of file test_turbulent_channel.C.

89  { libmesh_not_implemented(); }
virtual void TurbulentBdyFunctionU::operator() ( const libMesh::Point &  p,
const libMesh::Real  t,
libMesh::DenseVector< libMesh::Number > &  output 
)
inlinevirtual

Definition at line 91 of file test_turbulent_channel.C.

References turbulent_bc_values.

94  {
95  output.resize(1);
96  output.zero();
97 
98  // Since the turbulent_bc_values object has a solution from a 1-d problem, we have to zero out the y coordinate of p
99  libMesh::Point p_copy(p);
100  // Also, the 1-d solution provided is on the domain [0, 1] on the x axis and we need to map this to the corresponding point on the y axis
101  p_copy(0) = p_copy(1);
102  p_copy(1)= 0.0;
103  // Also, the 1-d solution provided is actually a symmetry solution, so we have to make the following map
104  // x_GRINS < 0.5 => x_meshfunction = 2*x_GRINS , x_GRINS >= 0.5 => x_GRINS = 1 - x_GRINS, x_meshfunction = 2*x_GRINS
105  if(p_copy(0) > 0.5)
106  {
107  p_copy(0) = 1 - p_copy(0);
108  }
109  p_copy(0) = 2*p_copy(0);
110 
111  libMesh::DenseVector<libMesh::Number> u_nu_values;
112  turbulent_bc_values->operator()(p_copy, t, u_nu_values);
113 
114  output(0) = u_nu_values(0)/21.995539;
115  }
libMesh::MeshFunction * turbulent_bc_values

Member Data Documentation

libMesh::MeshFunction* TurbulentBdyFunctionU::turbulent_bc_values
private

Definition at line 121 of file test_turbulent_channel.C.

Referenced by clone(), and operator()().


The documentation for this class was generated from the following file:

Generated on Mon Jun 22 2015 21:32:21 for GRINS-0.6.0 by  doxygen 1.8.9.1