CrossPowerLaw Class Reference

Cross-Power law generalised Newtonian viscosity model. More...

Inheritance diagram for CrossPowerLaw:
Collaboration diagram for CrossPowerLaw:

Public Member Functions

 TypeName ("CrossPowerLaw")
 Runtime type information. More...
 
 CrossPowerLaw (const dictionary &viscosityProperties, const Foam::viscosity &viscosity, const volVectorField &U)
 Construct from components. More...
 
virtual ~CrossPowerLaw ()
 Destructor. More...
 
virtual bool read (const dictionary &viscosityProperties)
 Read transportProperties dictionary. More...
 
virtual tmp< volScalarFieldnu (const volScalarField &nu0, const volScalarField &strainRate) const
 Return the laminar viscosity. More...
 
- Public Member Functions inherited from strainRateViscosityModel
 TypeName ("strainRateViscosityModel")
 Runtime type information. More...
 
 strainRateViscosityModel (const dictionary &viscosityProperties, const viscosity &viscosity, const volVectorField &U)
 Construct from components. More...
 
 strainRateViscosityModel (const strainRateViscosityModel &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~strainRateViscosityModel ()
 Destructor. More...
 
virtual tmp< volScalarFieldnu () const
 Return the laminar viscosity. More...
 
virtual tmp< scalarFieldnu (const label patchi) const
 Return the laminar viscosity for patch. More...
 
virtual void correct ()
 Correct the laminar viscosity. More...
 
void operator= (const strainRateViscosityModel &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from generalisedNewtonianViscosityModel
 TypeName ("generalisedNewtonianViscosityModel")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, generalisedNewtonianViscosityModel, dictionary,(const dictionary &viscosityProperties, const viscosity &viscosity, const volVectorField &U),(viscosityProperties, viscosity, U))
 
 generalisedNewtonianViscosityModel (const dictionary &viscosityProperties, const viscosity &viscosity, const volVectorField &U)
 Construct from components. More...
 
 generalisedNewtonianViscosityModel (const generalisedNewtonianViscosityModel &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~generalisedNewtonianViscosityModel ()
 Destructor. More...
 
void operator= (const generalisedNewtonianViscosityModel &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from viscosity
 TypeName ("viscosity")
 Runtime type information. More...
 
 viscosity ()
 Construct. More...
 
 viscosity (const viscosity &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~viscosity ()
 Destructor. More...
 
void operator= (const viscosity &)=delete
 Disallow default bitwise assignment. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from generalisedNewtonianViscosityModel
static autoPtr< generalisedNewtonianViscosityModelNew (const dictionary &viscosityProperties, const viscosity &viscosity, const volVectorField &U)
 Return a reference to the selected viscosity model. More...
 
- Protected Member Functions inherited from strainRateViscosityModel
virtual tmp< volScalarFieldstrainRate () const
 Return the strain-rate obtained from the velocity field. More...
 
- Protected Attributes inherited from generalisedNewtonianViscosityModel
const viscosityviscosity_
 Reference to the fluid Newtonian viscosity. More...
 
const volVectorFieldU_
 Reference to the velocity field. More...
 

Detailed Description

Cross-Power law generalised Newtonian viscosity model.

The coefficient applied to strain rate $\gamma$ can be specified either as the constant m or the critical stress level at the transition to shear thinning tauStar if tauStar is provided:

Kinematic viscosity [m^2/s]

\[ \nu = \nu_\infty + \frac{(\nu_0 - \nu_\infty)}{1 + (m\gamma)^n} \]

or

\[ \nu = \nu_\infty + \frac{(\nu_0 - \nu_\infty)} {1 + \left(\frac{\nu_0\gamma}{\tau^*}\right)^n} \]

Example specification:

     viscosityModel CrossPowerLaw;

     nuInf      10;
     m          0.4;
     n          3;

Note the viscosity nu0 at zero strain rate is a physical property, generally specified in the physicalProperties file.

Source files

Definition at line 82 of file CrossPowerLaw.H.

Constructor & Destructor Documentation

◆ CrossPowerLaw()

CrossPowerLaw ( const dictionary viscosityProperties,
const Foam::viscosity viscosity,
const volVectorField U 
)

Construct from components.

Definition at line 52 of file CrossPowerLaw.C.

References strainRateViscosityModel::correct(), and CrossPowerLaw::read().

Here is the call graph for this function:

◆ ~CrossPowerLaw()

virtual ~CrossPowerLaw ( )
inlinevirtual

Destructor.

Definition at line 112 of file CrossPowerLaw.H.

Member Function Documentation

◆ TypeName()

TypeName ( "CrossPowerLaw"  )

Runtime type information.

◆ read()

bool read ( const dictionary viscosityProperties)
virtual

Read transportProperties dictionary.

Implements generalisedNewtonianViscosityModel.

Definition at line 73 of file CrossPowerLaw.C.

References dictionary::found(), dictionary::optionalSubDict(), generalisedNewtonianViscosityModel::read(), and dictionary::read().

Referenced by CrossPowerLaw::CrossPowerLaw().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nu()

Foam::tmp< Foam::volScalarField > nu ( const volScalarField nu0,
const volScalarField strainRate 
) const
virtual

Return the laminar viscosity.

Implements strainRateViscosityModel.

Definition at line 102 of file CrossPowerLaw.C.

References Foam::pow().

Here is the call graph for this function:

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