Loading...
Searching...
No Matches
generalizedNewtonian< BasicMomentumTransportModel > Class Template Reference

Turbulence model for shear-dependent Non-Newtonian flow. More...

#include <generalizedNewtonian.H>

Inheritance diagram for generalizedNewtonian< BasicMomentumTransportModel >:
Collaboration diagram for generalizedNewtonian< BasicMomentumTransportModel >:

Public Types

typedef BasicMomentumTransportModel::alphaField alphaField
typedef BasicMomentumTransportModel::rhoField rhoField
typedef BasicMomentumTransportModel::transportModel transportModel
Public Types inherited from linearViscousStress< laminarModel< BasicMomentumTransportModel > >
typedef laminarModel< BasicMomentumTransportModel >::alphaField alphaField
typedef laminarModel< BasicMomentumTransportModel >::rhoField rhoField
typedef laminarModel< BasicMomentumTransportModel >::transportModel transportModel
Public Types inherited from laminarModel< BasicMomentumTransportModel >
typedef BasicMomentumTransportModel::alphaField alphaField
typedef BasicMomentumTransportModel::rhoField rhoField
typedef BasicMomentumTransportModel::transportModel transportModel

Public Member Functions

 TypeName ("generalizedNewtonian")
 Runtime type information.
 generalizedNewtonian (const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName)
 Construct from components.
virtual ~generalizedNewtonian ()=default
 Destructor.
virtual bool read ()
 Read turbulence (momentumTransport) dictionary.
virtual tmp< volScalarFieldnut () const
 Return the turbulence viscosity,.
virtual tmp< scalarFieldnut (const label patchi) const
 Return the turbulence viscosity on patch.
virtual tmp< volScalarFieldnuEff () const
 Return the effective viscosity.
virtual tmp< scalarFieldnuEff (const label patchi) const
 Return the effective viscosity on patch.
virtual void correct ()
 Correct the generalizedNewtonian viscosity.
Public Member Functions inherited from linearViscousStress< laminarModel< BasicMomentumTransportModel > >
 linearViscousStress (const word &modelName, const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName)
 Construct from components.
virtual ~linearViscousStress ()=default
 Destructor.
virtual tmp< volSymmTensorFielddevRhoReff () const
 Return the effective stress tensor.
virtual tmp< fvVectorMatrixdivDevRhoReff (volVectorField &U) const
 Return the source term for the momentum equation.
Public Member Functions inherited from laminarModel< BasicMomentumTransportModel >
 TypeName ("laminar")
 Runtime type information.
 declareRunTimeSelectionTable (autoPtr, laminarModel, dictionary,(const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName),(alpha, rho, U, alphaRhoPhi, phi, transport, propertiesName))
virtual ~laminarModel ()=default
 Destructor.
virtual const dictionarycoeffDict () const
 Const access to the coefficients dictionary.
virtual tmp< volScalarFieldk () const
 Return the turbulence kinetic energy, i.e. 0 for laminar flow.
virtual tmp< volScalarFieldepsilon () const
 Return the turbulence kinetic energy dissipation rate,.
virtual tmp< volScalarFieldomega () const
 Return the specific dissipation rate, i.e. 0 for laminar flow.
virtual tmp< volSymmTensorFieldR () const
 Return the Reynolds stress tensor, i.e. 0 for laminar flow.

Static Public Member Functions

static autoPtr< generalizedNewtonianNew (const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName)
 Return a reference to the selected turbulence model.
Static Public Member Functions inherited from laminarModel< BasicMomentumTransportModel >
static autoPtr< laminarModelNew (const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName=turbulenceModel::propertiesName)
 Return a reference to the selected laminar model.

Protected Member Functions

virtual tmp< volScalarFieldstrainRate () const
Protected Member Functions inherited from laminarModel< BasicMomentumTransportModel >
virtual void printCoeffs (const word &type)
 Print model coefficients.
 laminarModel (const laminarModel &)=delete
 No copy construct.
void operator= (const laminarModel &)=delete
 No copy assignment.

Protected Attributes

autoPtr< generalizedNewtonianViscosityModelviscosityModel_
 Run-time selectable non-Newtonian viscosity model.
volScalarField nu_
 The non-Newtonian viscosity field.
Protected Attributes inherited from laminarModel< BasicMomentumTransportModel >
dictionary laminarDict_
 laminar coefficients dictionary
Switch printCoeffs_
 Flag to print the model coeffs at run-time.
dictionary coeffDict_
 Model coefficients dictionary.

Detailed Description

template<class BasicMomentumTransportModel>
class Foam::laminarModels::generalizedNewtonian< BasicMomentumTransportModel >

Turbulence model for shear-dependent Non-Newtonian flow.

Source files

Definition at line 52 of file generalizedNewtonian.H.

Member Typedef Documentation

◆ alphaField

template<class BasicMomentumTransportModel>
typedef BasicMomentumTransportModel::alphaField alphaField

Definition at line 78 of file generalizedNewtonian.H.

◆ rhoField

template<class BasicMomentumTransportModel>
typedef BasicMomentumTransportModel::rhoField rhoField

Definition at line 79 of file generalizedNewtonian.H.

◆ transportModel

template<class BasicMomentumTransportModel>
typedef BasicMomentumTransportModel::transportModel transportModel

Definition at line 80 of file generalizedNewtonian.H.

Constructor & Destructor Documentation

◆ generalizedNewtonian()

template<class BasicMomentumTransportModel>
generalizedNewtonian ( const alphaField & alpha,
const rhoField & rho,
const volVectorField & U,
const surfaceScalarField & alphaRhoPhi,
const surfaceScalarField & phi,
const transportModel & transport,
const word & propertiesName )

◆ ~generalizedNewtonian()

template<class BasicMomentumTransportModel>
virtual ~generalizedNewtonian ( )
virtualdefault

Destructor.

Member Function Documentation

◆ strainRate()

template<class BasicMomentumTransportModel>
Foam::tmp< Foam::volScalarField > strainRate ( ) const
protectedvirtual

Definition at line 89 of file generalizedNewtonian.C.

References Foam::fvc::grad(), Foam::mag(), Foam::sqrt(), Foam::symm(), and U.

Referenced by correct(), and generalizedNewtonian().

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

◆ TypeName()

template<class BasicMomentumTransportModel>
TypeName ( "generalizedNewtonian< BasicMomentumTransportModel >" )

Runtime type information.

◆ New()

template<class BasicMomentumTransportModel>
autoPtr< generalizedNewtonian > New ( const alphaField & alpha,
const rhoField & rho,
const volVectorField & U,
const surfaceScalarField & alphaRhoPhi,
const surfaceScalarField & phi,
const transportModel & transport,
const word & propertiesName )
static

Return a reference to the selected turbulence model.

Referenced by generalizedNewtonian().

Here is the caller graph for this function:

◆ read()

template<class BasicMomentumTransportModel>
bool read ( )
virtual

Read turbulence (momentumTransport) dictionary.

Implements linearViscousStress< laminarModel< BasicMomentumTransportModel > >.

Definition at line 98 of file generalizedNewtonian.C.

References laminarModel< BasicMomentumTransportModel >::coeffDict_, and viscosityModel_.

◆ nut() [1/2]

template<class BasicMomentumTransportModel>
tmp< volScalarField > nut ( ) const
virtual

Return the turbulence viscosity,.

Reimplemented from laminarModel< BasicMomentumTransportModel >.

Definition at line 108 of file generalizedNewtonian.C.

References Foam::dimViscosity, IOobject::groupName(), GeometricField< scalar, fvPatchField, volMesh >::New(), and Foam::Zero.

Here is the call graph for this function:

◆ nut() [2/2]

template<class BasicMomentumTransportModel>
tmp< scalarField > nut ( const label patchi) const
virtual

Return the turbulence viscosity on patch.

Definition at line 121 of file generalizedNewtonian.C.

References tmp< T >::New(), and Foam::Zero.

Here is the call graph for this function:

◆ nuEff() [1/2]

template<class BasicMomentumTransportModel>
tmp< volScalarField > nuEff ( ) const
virtual

Return the effective viscosity.

Reimplemented from laminarModel< BasicMomentumTransportModel >.

Definition at line 132 of file generalizedNewtonian.C.

References IOobject::groupName(), GeometricField< scalar, fvPatchField, volMesh >::New(), and nu_.

Here is the call graph for this function:

◆ nuEff() [2/2]

template<class BasicMomentumTransportModel>
tmp< scalarField > nuEff ( const label patchi) const
virtual

Return the effective viscosity on patch.

Definition at line 144 of file generalizedNewtonian.C.

References nu_.

◆ correct()

template<class BasicMomentumTransportModel>
void correct ( )
virtual

Correct the generalizedNewtonian viscosity.

Implements linearViscousStress< laminarModel< BasicMomentumTransportModel > >.

Definition at line 154 of file generalizedNewtonian.C.

References laminarModel< BasicTurbulenceModel >::correct(), nu, nu_, strainRate(), and viscosityModel_.

Here is the call graph for this function:

Member Data Documentation

◆ viscosityModel_

template<class BasicMomentumTransportModel>
autoPtr<generalizedNewtonianViscosityModel> viscosityModel_
protected

Run-time selectable non-Newtonian viscosity model.

Definition at line 63 of file generalizedNewtonian.H.

Referenced by correct(), generalizedNewtonian(), and read().

◆ nu_

template<class BasicMomentumTransportModel>
volScalarField nu_
protected

The non-Newtonian viscosity field.

Definition at line 68 of file generalizedNewtonian.H.

Referenced by correct(), generalizedNewtonian(), nuEff(), and nuEff().


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