generalizedNewtonian< BasicMomentumTransportModel > Class Template Reference

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

Inheritance diagram for generalizedNewtonian< BasicMomentumTransportModel >:
[legend]
Collaboration diagram for generalizedNewtonian< BasicMomentumTransportModel >:
[legend]

Public Types

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

Public Member Functions

 TypeName ("generalizedNewtonian")
 Runtime type information. More...
 
 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. More...
 
virtual ~generalizedNewtonian ()=default
 Destructor. More...
 
virtual bool read ()
 Read turbulence (momentumTransport) dictionary. More...
 
virtual tmp< volScalarFieldnut () const
 Return the turbulence viscosity,. More...
 
virtual tmp< scalarFieldnut (const label patchi) const
 Return the turbulence viscosity on patch. More...
 
virtual tmp< volScalarFieldnuEff () const
 Return the effective viscosity. More...
 
virtual tmp< scalarFieldnuEff (const label patchi) const
 Return the effective viscosity on patch. More...
 
virtual void correct ()
 Correct the generalizedNewtonian viscosity. More...
 
- 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. More...
 
virtual ~linearViscousStress ()=default
 Destructor. More...
 
virtual bool read ()=0
 Re-read model coefficients if they have changed. More...
 
virtual tmp< volSymmTensorFielddevRhoReff () const
 Return the effective stress tensor. More...
 
virtual tmp< volSymmTensorFielddevRhoReff (const volVectorField &U) const
 Return the effective stress tensor based on a given velocity field. More...
 
virtual tmp< fvVectorMatrixdivDevRhoReff (volVectorField &U) const
 Return the source term for the momentum equation. More...
 
virtual tmp< fvVectorMatrixdivDevRhoReff (const volScalarField &rho, volVectorField &U) const
 Return the source term for the momentum equation. More...
 
virtual void correct ()=0
 Solve the turbulence equations and correct the turbulence viscosity. More...
 
- Public Member Functions inherited from laminarModel< BasicMomentumTransportModel >
 laminarModel (const word &type, const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName)
 Construct from components. More...
 
 TypeName ("laminar")
 Runtime type information. More...
 
 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. More...
 
virtual bool read ()
 Read model coefficients if they have changed. More...
 
virtual const dictionarycoeffDict () const
 Const access to the coefficients dictionary. More...
 
virtual tmp< volScalarFieldnut () const
 Return the turbulence viscosity, i.e. 0 for laminar flow. More...
 
virtual tmp< scalarFieldnut (const label patchi) const
 Return the turbulence viscosity on patch. More...
 
virtual tmp< volScalarFieldnuEff () const
 Return the effective viscosity, i.e. the laminar viscosity. More...
 
virtual tmp< scalarFieldnuEff (const label patchi) const
 Return the effective viscosity on patch. More...
 
virtual tmp< volScalarFieldk () const
 Return the turbulence kinetic energy, i.e. 0 for laminar flow. More...
 
virtual tmp< volScalarFieldepsilon () const
 Return the turbulence kinetic energy dissipation rate,. More...
 
virtual tmp< volScalarFieldomega () const
 Return the specific dissipation rate, i.e. 0 for laminar flow. More...
 
virtual tmp< volSymmTensorFieldR () const
 Return the Reynolds stress tensor, i.e. 0 for laminar flow. More...
 
virtual void correct ()
 Correct the laminar transport. More...
 

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. More...
 
- 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. More...
 

Protected Member Functions

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

Protected Attributes

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

Detailed Description

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

Turbulence model for shear-dependent Non-Newtonian flow.

Source files

Definition at line 56 of file generalizedNewtonian.H.

Member Typedef Documentation

◆ alphaField

typedef BasicMomentumTransportModel::alphaField alphaField

Definition at line 78 of file generalizedNewtonian.H.

◆ rhoField

typedef BasicMomentumTransportModel::rhoField rhoField

Definition at line 79 of file generalizedNewtonian.H.

◆ transportModel

typedef BasicMomentumTransportModel::transportModel transportModel

Definition at line 80 of file generalizedNewtonian.H.

Constructor & Destructor Documentation

◆ generalizedNewtonian()

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.

Definition at line 46 of file generalizedNewtonian.C.

◆ ~generalizedNewtonian()

virtual ~generalizedNewtonian ( )
virtualdefault

Destructor.

Member Function Documentation

◆ strainRate()

Foam::tmp< Foam::volScalarField > strainRate
protectedvirtual

Definition at line 96 of file generalizedNewtonian.C.

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

Here is the call graph for this function:

◆ TypeName()

TypeName ( "generalizedNewtonian< BasicMomentumTransportModel >"  )

Runtime type information.

◆ New()

static 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.

◆ read()

bool read
virtual

Read turbulence (momentumTransport) dictionary.

Implements linearViscousStress< laminarModel< BasicMomentumTransportModel > >.

Definition at line 105 of file generalizedNewtonian.C.

◆ nut() [1/2]

tmp< volScalarField > nut
virtual

Return the turbulence viscosity,.

Reimplemented from laminarModel< BasicMomentumTransportModel >.

Definition at line 115 of file generalizedNewtonian.C.

References Foam::dimViscosity, IOobject::groupName(), Time::New(), and Foam::Zero.

Here is the call graph for this function:

◆ nut() [2/2]

tmp< scalarField > nut ( const label  patchi) const
virtual

Return the turbulence viscosity on patch.

Reimplemented from laminarModel< BasicMomentumTransportModel >.

Definition at line 128 of file generalizedNewtonian.C.

References Time::New(), and Foam::Zero.

Here is the call graph for this function:

◆ nuEff() [1/2]

tmp< volScalarField > nuEff
virtual

Return the effective viscosity.

Reimplemented from laminarModel< BasicMomentumTransportModel >.

Definition at line 139 of file generalizedNewtonian.C.

References IOobject::groupName(), and Time::New().

Here is the call graph for this function:

◆ nuEff() [2/2]

tmp< scalarField > nuEff ( const label  patchi) const
virtual

Return the effective viscosity on patch.

Reimplemented from laminarModel< BasicMomentumTransportModel >.

Definition at line 151 of file generalizedNewtonian.C.

◆ correct()

void correct
virtual

Correct the generalizedNewtonian viscosity.

Implements linearViscousStress< laminarModel< BasicMomentumTransportModel > >.

Definition at line 161 of file generalizedNewtonian.C.

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

Here is the call graph for this function:

Member Data Documentation

◆ viscosityModel_

autoPtr<generalizedNewtonianViscosityModel> viscosityModel_
protected

Run-time selectable non-Newtonian viscosity model.

Definition at line 65 of file generalizedNewtonian.H.

◆ nu_

volScalarField nu_
protected

The non-Newtonian viscosity field.

Definition at line 68 of file generalizedNewtonian.H.


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