56 void Foam::solvers::solid::correctDiNum()
71 *mesh.surfaceInterpolation::deltaCoeffs()
77 const scalar meanDiNum =
gAverage(DiNumvf);
78 const scalar maxDiNum =
gMax(DiNumvf);
80 Info<<
"Diffusion Number mean: " << meanDiNum
81 <<
" max: " << maxDiNum <<
endl;
97 thermoPtr_(thermoPtr),
98 thermo_(thermoPtr_()),
119 <<
" solver does not support LTS, use 'steadyState' ddtScheme"
149 deltaT =
min(deltaT, maxDi/DiNum*runTime.deltaTValue());
175 if (
pimple.firstIter() ||
pimple.moveMeshOuterCorrectors())
177 if (!mesh_.mover().solidBody())
180 <<
"Region " <<
name() <<
" of type " <<
type()
181 <<
" does not support non-solid body mesh motion"
192 if (
pimple.predictTransport())
208 while (
pimple.correctNonOrthogonal())
237 if (
pimple.correctTransport())
Macros for easy insertion into run-time selection tables.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Generic GeometricField class.
const dictionary & controlDict() const
Return the control dict.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
void validate(const string &app, const word &) const
Check that the thermodynamics package is consistent.
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
bool constrain(fvMatrix< Type > &eqn) const
Apply constraints to an equation.
A special matrix type and solver, designed for finite volume solutions of scalar equations....
void relax(const scalar alpha)
Relax matrix (for steady-state solution).
SolverPerformance< Type > solve(const dictionary &)
Solve segregated or coupled returning the solution statistics.
Mesh data needed to do the Finite Volume discretisation.
virtual void preUpdateMesh()
Prepare for mesh update.
Base-class for solid thermodynamic properties.
Abstract base class for solid thermophysical transport models.
Abstract base class for run-time selectable region solvers.
bool LTS
Switch for local time step transient operation.
const Time & runTime
Time.
Solver module for thermal transport in solid domains and regions for conjugate heat transfer,...
virtual void thermophysicalPredictor()
Construct and solve the energy equation,.
virtual void prePredictor()
Called at the beginning of the PIMPLE loop.
virtual void postSolve()
Called after the PIMPLE loop at the end of the time-step.
virtual void moveMesh()
Called at the start of the PIMPLE loop to move the mesh.
virtual scalar maxDeltaT() const
Return the current maximum time-step for stable solution.
const solidThermo & thermo
Reference to the solid thermophysical properties.
virtual void pressureCorrector()
Construct and solve the pressure equation in the PISO loop.
virtual void postCorrector()
Correct the thermophysical transport modelling.
virtual void momentumPredictor()
Construct and optionally solve the momentum equation.
virtual void readControls()
Read controls.
solid(fvMesh &mesh, autoPtr< solidThermo >)
Construct from region mesh and thermophysical properties.
virtual void preSolve()
Called at the start of the time-step, before the PIMPLE loop.
virtual ~solid()
Destructor.
Foam::fvConstraints & fvConstraints(Foam::fvConstraints::New(mesh))
Foam::fvModels & fvModels(Foam::fvModels::New(mesh))
pimpleControl pimple(mesh)
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
Surface integrate surfaceField creating a volField. Surface sum a surfaceField creating a volField.
Info<< "Creating thermophysical transport model\n"<< endl;turbulenceThermophysicalTransportModels::unityLewisEddyDiffusivity< RASThermophysicalTransportModel< ThermophysicalTransportModel< compressibleMomentumTransportModel, fluidThermo > >> thermophysicalTransport(turbulence(), thermo, true)
const dimensionedScalar kappa
Coulomb constant: default SI units: [N.m2/C2].
tmp< VolField< Type > > surfaceSum(const SurfaceField< Type > &ssf)
static tmp< SurfaceField< Type > > interpolate(const VolField< Type > &tvf, const surfaceScalarField &faceFlux, Istream &schemeData)
Interpolate field onto faces using scheme given by Istream.
tmp< fvMatrix< Type > > ddt(const VolField< Type > &vf)
addToRunTimeSelectionTable(solver, compressibleMultiphaseVoF, fvMesh)
defineTypeNameAndDebug(compressibleMultiphaseVoF, 0)
errorManipArg< error, int > exit(error &err, const int errNo=1)
Ostream & endl(Ostream &os)
Add newline and flush stream.
layerAndWeight min(const layerAndWeight &a, const layerAndWeight &b)
dimensioned< scalar > mag(const dimensioned< Type > &)
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tdf1, const word &name, const dimensionSet &dimensions)
Type gAverage(const FieldField< Field, Type > &f)
word name(const complex &)
Return a string representation of a complex.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
Type gMax(const FieldField< Field, Type > &f)
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.
fluidMulticomponentThermo & thermo