30 #include "surfaceInterpolate.H" 40 void Foam::solidDisplacementThermo::readProperty(
volScalarField& prop)
const 42 const dictionary& propDict(subDict(prop.name()));
43 const word propType(propDict.lookup(
"type"));
45 if (propType ==
"uniform")
51 propDict.lookup<scalar>(
"value")
54 else if (propType ==
"field")
61 prop.mesh().time().timeName(0),
73 <<
"Valid type entries are uniform or field for " << prop.name()
87 solidThermo::composite(mesh, phaseName),
88 planeStress_(
lookup(
"planeStress")),
89 thermalStress_(
lookup(
"thermalStress")),
94 phasePropertyName(
"Cp"),
107 phasePropertyName(
"kappa"),
114 Cp_.dimensions()*dimensionSet(1, -1, -1, 0, 0)
120 phasePropertyName(
"E"),
133 phasePropertyName(
"nu"),
146 phasePropertyName(
"alphav"),
158 readProperty(kappa_);
161 readProperty(alphav_);
254 return tmp<scalarField>(
nullptr);
264 return tmp<volScalarField>(
nullptr);
275 return tmp<scalarField>(
nullptr);
282 return tmp<volScalarField>(
nullptr);
293 return tmp<volScalarField>(
nullptr);
304 return tmp<scalarField>(
nullptr);
315 return tmp<scalarField>(
nullptr);
322 return tmp<volScalarField>(
nullptr);
333 return tmp<volScalarField>(
nullptr);
344 return tmp<scalarField>(
nullptr);
355 return tmp<scalarField>(
nullptr);
362 return tmp<volScalarField>(
nullptr);
374 return tmp<volScalarField>(
nullptr);
386 return tmp<scalarField>(
nullptr);
398 return tmp<scalarField>(
nullptr);
468 return tmp<volScalarField>(
nullptr);
478 return tmp<scalarField>(
nullptr);
488 return tmp<volScalarField>(
nullptr);
499 return tmp<scalarField>(
nullptr);
509 return tmp<volScalarField>(
nullptr);
520 return tmp<scalarField>(
nullptr);
527 return tmp<volVectorField>(
nullptr);
537 return tmp<vectorField>(
nullptr);
547 return tmp<symmTensorField>(
nullptr);
virtual tmp< volScalarField > hs() const
Sensible enthalpy [J/kg].
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
virtual tmp< volScalarField > rho() const
Density [kg/m^3].
virtual volScalarField & he()
Enthalpy/Internal energy [J/kg].
virtual bool read()
Read object.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
virtual ~solidDisplacementThermo()
Destructor.
const Boundary & boundaryField() const
Return const-reference to the boundary field.
const dimensionSet dimPressure
Calculate the matrix for the laplacian of the field.
Calculate the snGrad of the given volField.
const dimensionSet dimless
virtual tmp< symmTensorField > KappaLocal(const label patchi) const
Anisotropic thermal conductivity for patch.
virtual tmp< surfaceScalarField > q() const
Return the heat flux.
virtual tmp< volScalarField > kappa() const
Thermal diffusivity for temperature of mixture [W/m/K].
const dimensionedScalar h
Planck constant.
volScalarField rho_
Density field [kg/m^3].
virtual tmp< fvScalarMatrix > divq(volScalarField &he) const
Return the source term for the energy equation.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
stressControl lookup("compactNormalStress") >> compactNormalStress
solidDisplacementThermo(const fvMesh &, const word &phaseName=word::null)
Construct from mesh and phase name.
virtual tmp< volScalarField > hc() const
Enthalpy of formation [J/kg].
virtual tmp< volScalarField > Cpv() const
Heat capacity at constant pressure/volume [J/kg/K].
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
virtual const volScalarField & T() const
Temperature [K].
virtual tmp< volScalarField > ha() const
Absolute enthalpy [J/kg/K].
virtual tmp< volScalarField > Cv() const
Heat capacity at constant volume [J/kg/K].
List< label > labelList
A List of labels.
errorManip< error > abort(error &err)
virtual tmp< volScalarField > alphahe() const
Thermal diffusivity for energy of mixture [kg/m/s].
virtual tmp< volScalarField > alphaEff(const volScalarField &alphat) const
Effective thermal turbulent diffusivity of mixture [kg/m/s].
virtual const volScalarField & alphav() const
Volumetric thermal expansion coefficient [1/T].
virtual tmp< volVectorField > Kappa() const
Anisotropic thermal conductivity [W/m/K].
defineTypeNameAndDebug(combustionModel, 0)
virtual tmp< volScalarField > THE(const volScalarField &h, const volScalarField &p, const volScalarField &T0) const
Temperature from enthalpy/internal energy.
const dimensionSet dimEnergy
virtual const volScalarField & E() const
Youngs modulus [Pa].
const dimensionSet dimMass
static tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate(const GeometricField< Type, fvPatchField, volMesh > &tvf, const surfaceScalarField &faceFlux, Istream &schemeData)
Interpolate field onto faces using scheme given by Istream.
virtual const volScalarField & nu() const
Poisson's ratio [].
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
tmp< fvMatrix< Type > > laplacian(const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
virtual tmp< volScalarField > Cp() const
Heat capacity at constant pressure [J/kg/K].
virtual void correct()
Update properties.
A class for managing temporary objects.
virtual bool read()
Read thermophysicalProperties dictionary.
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
virtual tmp< volScalarField > kappaEff(const volScalarField &) const
Effective thermal turbulent diffusivity for temperature.
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > snGrad(const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
const dimensionSet dimTemperature