39 namespace functionObjects
105 word rhoNMeanName =
"rhoNMean";
106 word rhoMMeanName =
"rhoMMean";
107 word momentumMeanName =
"momentumMean";
108 word linearKEMeanName =
"linearKEMean";
109 word internalEMeanName =
"internalEMean";
110 word iDofMeanName =
"iDofMean";
111 word fDMeanName =
"fDMean";
148 if (
min(
mag(rhoNMean)).value() > vSmall)
150 Info<<
"Calculating dsmcFields." <<
endl;
152 Info<<
" Calculating UMean field." <<
endl;
162 momentumMean/rhoMMean
165 Info<<
" Calculating translationalT field." <<
endl;
177 *(linearKEMean - 0.5*rhoMMean*(UMean & UMean))
180 Info<<
" Calculating internalT field." <<
endl;
193 Info<<
" Calculating overallT field." <<
endl;
204 *(linearKEMean - 0.5*rhoMMean*(UMean & UMean) + internalEMean)
207 Info<<
" Calculating pressure field." <<
endl;
222 forAll(mesh_.boundaryMesh(), i)
226 if (isA<wallPolyPatch>(patch))
229 fDMean.boundaryField()[i]
234 Info<<
" mag(UMean) max/min : "
235 <<
max(
mag(UMean)).value() <<
" "
238 Info<<
" translationalT max/min : "
239 <<
max(translationalT).value() <<
" "
240 <<
min(translationalT).value() <<
endl;
242 Info<<
" internalT max/min : "
243 <<
max(internalT).value() <<
" "
244 <<
min(internalT).value() <<
endl;
246 Info<<
" overallT max/min : "
247 <<
max(overallT).value() <<
" "
248 <<
min(overallT).value() <<
endl;
250 Info<<
" p max/min : "
251 <<
max(
p).value() <<
" "
256 translationalT.
write();
271 <<
") found in rhoNMean field. "
272 <<
"Not calculating dsmcFields to avoid division by zero."
#define forAll(list, i)
Loop across all elements in list.
Macros for easy insertion into run-time selection tables.
Generic GeometricBoundaryField class.
Generic GeometricField class.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
A list of keyword definitions, which are a keyword followed by any number of values (e....
Abstract base-class for Time/database functionObjects.
Calculate intensive fields:
virtual wordList fields() const
Return the list of fields required.
dsmcFields(const word &name, const Time &runTime, const dictionary &dict)
Construct from Time and dictionary.
virtual ~dsmcFields()
Destructor.
virtual bool execute()
Do nothing.
virtual bool write()
Calculate and write the DSMC fields.
virtual bool read(const dictionary &)
Read the dsmcFields data.
Specialisation of Foam::functionObject for an Foam::fvMesh, providing a reference to the Foam::fvMesh...
A patch is a list of labels that address the faces in the global face list.
const vectorField::subField faceAreas() const
Return face areas.
const polyBoundaryMesh & boundaryMesh() const
Return boundaryMesh reference.
const scalarField::subField magFaceAreas() const
Return face area magnitudes.
virtual bool write(const bool write=true) const
Write using setting from DB.
A class for handling words, derived from string.
addToRunTimeSelectionTable(polyPatch, mergedCyclicPolyPatch, word)
Ostream & endl(Ostream &os)
Add newline and flush stream.
word name(const bool)
Return a word representation of a bool.
layerAndWeight min(const layerAndWeight &a, const layerAndWeight &b)
dimensioned< scalar > mag(const dimensioned< Type > &)
defineTypeNameAndDebug(combustionModel, 0)
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)