anisotropic< SolidThermophysicalTransportModel > Class Template Reference

Solid thermophysical transport model for anisotropic thermal conductivity. More...

Inheritance diagram for anisotropic< SolidThermophysicalTransportModel >:
Collaboration diagram for anisotropic< SolidThermophysicalTransportModel >:

Public Types

typedef SolidThermophysicalTransportModel::alphaField alphaField
 

Public Member Functions

 TypeName ("anisotropic")
 Runtime type information. More...
 
 anisotropic (const alphaField &alpha, const solidThermo &thermo)
 Construct from solid thermophysical properties. More...
 
virtual ~anisotropic ()
 Destructor. More...
 
virtual bool read ()
 Read thermophysicalTransport dictionary. More...
 
virtual tmp< volScalarFieldkappa () const
 Thermal conductivity [W/m/K]. More...
 
virtual tmp< scalarFieldkappa (const label patchi) const
 Thermal conductivity for patch [W/m/K]. More...
 
virtual tmp< surfaceScalarFieldq () const
 Return the heat flux [W/m^2]. More...
 
virtual tmp< scalarFieldqCorr (const label patchi) const
 Return the patch heat flux correction [W/m^2]. More...
 
virtual tmp< fvScalarMatrixdivq (volScalarField &he) const
 Return the source term for the energy equation. More...
 
virtual void predict ()
 Correct the anisotropic viscosity. More...
 
virtual bool movePoints ()
 Update for mesh motion. More...
 
virtual void topoChange (const polyTopoChangeMap &map)
 Update topology using the given map. More...
 
virtual void mapMesh (const polyMeshMap &map)
 Update from another mesh using the given map. More...
 
virtual void distribute (const polyDistributionMap &map)
 Redistribute or update using the given distribution map. More...
 
- Public Member Functions inherited from TopoChangeableMeshObject< fvMesh >
 TopoChangeableMeshObject (Type &mo)
 
- Public Member Functions inherited from DistributeableMeshObject< Mesh >
template<class Type >
 DistributeableMeshObject (Type &mo)
 
- Public Member Functions inherited from MoveableMeshObject< Mesh >
template<class Type >
 MoveableMeshObject (Type &mo)
 
- Public Member Functions inherited from DeletableMeshObject< Mesh >
template<class Type >
 DeletableMeshObject (Type &mo)
 
virtual ~DeletableMeshObject ()=default
 Virtual destructor to make class polymorphic. More...
 

Detailed Description

template<class SolidThermophysicalTransportModel>
class Foam::solidThermophysicalTransportModels::anisotropic< SolidThermophysicalTransportModel >

Solid thermophysical transport model for anisotropic thermal conductivity.

The anisotropic thermal conductivity field is evaluated from the solid material anisotropic kappa specified in the physicalProperties dictionary transformed into the global coordinate system using default coordinate system and optionally additional coordinate systems specified per-zone in the thermophysicalProperties dictionary.

If the coordinate transformed kappa does not align exactly with the boundary because the patch face orientations do not conform to the coordinate system exactly it may be beneficial for convergence and accuracy to enforce alignment at the boundary by setting the optional boundaryAligned to true.

Usage
Example of the anisotropic thermal conductivity specification in thermophysicalProperties with two zone-based coordinate systems in addition to the default:
model anisotropic;

// Force aligned handling of kappa irrespective
// of the calculated patch alignment factors.
boundaryAligned true;

// Default coordinate system
coordinateSystem
{
    type        cartesian;
    origin      (0 0 0);
    coordinateRotation
    {
        type        cylindrical;
        e3          (1 0 0);
    }
}

// Optional zone coordinate systems
zones
{
    coil1
    {
        type        cartesian;
        origin      (0.1 0.2 0.7);
        coordinateRotation
        {
            type        cylindrical;
            e3          (0.5 0.866 0);
        }
    }

    coil2
    {
        type        cartesian;
        origin      (0.4 0.5 1);
        coordinateRotation
        {
            type        cylindrical;
            e3          (0.866 0.5 0);
        }
    }
}
Source files

Definition at line 117 of file anisotropic.H.

Member Typedef Documentation

◆ alphaField

typedef SolidThermophysicalTransportModel::alphaField alphaField

Definition at line 154 of file anisotropic.H.

Constructor & Destructor Documentation

◆ anisotropic()

◆ ~anisotropic()

virtual ~anisotropic ( )
inlinevirtual

Destructor.

Definition at line 171 of file anisotropic.H.

Member Function Documentation

◆ TypeName()

TypeName ( "anisotropic< SolidThermophysicalTransportModel >"  )

Runtime type information.

◆ read()

bool read
virtual

Read thermophysicalTransport dictionary.

Definition at line 213 of file anisotropic.C.

◆ kappa() [1/2]

Foam::tmp< Foam::volScalarField > kappa
virtual

Thermal conductivity [W/m/K].

Definition at line 360 of file anisotropic.C.

References NotImplemented.

◆ kappa() [2/2]

Foam::tmp< Foam::scalarField > kappa ( const label  patchi) const
virtual

Thermal conductivity for patch [W/m/K].

Definition at line 370 of file anisotropic.C.

References boundary(), n, patchi, and thermo.

Here is the call graph for this function:

◆ q()

Return the heat flux [W/m^2].

Definition at line 383 of file anisotropic.C.

References alpha(), Foam::fvm::laplacian(), fvMesh::magSf(), GeometricField< Type, PatchField, GeoMesh >::New(), and thermo.

Here is the call graph for this function:

◆ qCorr()

Foam::tmp< Foam::scalarField > qCorr ( const label  patchi) const
virtual

Return the patch heat flux correction [W/m^2].

For patch-aligned thermal conductivity qCorr is null

Definition at line 399 of file anisotropic.C.

References alpha(), boundary(), Foam::fvc::grad(), n, patchi, Foam::T(), and thermo.

Here is the call graph for this function:

◆ divq()

Foam::tmp< Foam::fvScalarMatrix > divq ( volScalarField he) const
virtual

Return the source term for the energy equation.

Definition at line 427 of file anisotropic.C.

References alpha(), Foam::e, Foam::fvc::interpolate(), Foam::fvc::laplacian(), Foam::fvm::laplacianCorrection(), Foam::sqr(), and thermo.

Here is the call graph for this function:

◆ predict()

void predict
virtual

Correct the anisotropic viscosity.

Definition at line 452 of file anisotropic.C.

◆ movePoints()

bool movePoints
virtual

Update for mesh motion.

Implements MoveableMeshObject< Mesh >.

Definition at line 467 of file anisotropic.C.

◆ topoChange()

void topoChange ( const polyTopoChangeMap map)
virtual

Update topology using the given map.

Implements TopoChangeableMeshObject< fvMesh >.

Definition at line 475 of file anisotropic.C.

◆ mapMesh()

void mapMesh ( const polyMeshMap map)
virtual

Update from another mesh using the given map.

Implements TopoChangeableMeshObject< fvMesh >.

Definition at line 487 of file anisotropic.C.

◆ distribute()

void distribute ( const polyDistributionMap map)
virtual

Redistribute or update using the given distribution map.

Implements DistributeableMeshObject< Mesh >.

Definition at line 499 of file anisotropic.C.


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