33template<
class CloudType>
45template<
class CloudType>
57template<
class CloudType>
60 const typename parcelType::trackingData&
td
63 auto& c = this->owner();
67 auto* resultPtr = c.template getObjectPtr<IOField<scalar>>(
"Nu");
86 auto& Nu = *resultPtr;
90 const auto& heatTransfer = tc.heatTransfer();
91 typename parcelType::trackingData& nctd =
92 const_cast<typename parcelType::trackingData&
>(
td);
95 for (
const parcelType&
p : c)
97 scalar Ts, rhos, mus,
Pr, kappas;
98 p.template calcSurfaceValues<CloudType>
100 c, nctd,
p.T(), Ts, rhos, mus,
Pr, kappas
102 const scalar
Re =
p.Re(rhos,
p.U(),
td.Uc(),
p.d(), mus);
104 Nu[parceli++] = heatTransfer.Nu(
Re,
Pr);
107 const bool haveParticles =
c.size();
110 Nu.write(haveParticles);
CloudFunctionObject(CloudType &owner)
Construct null from owner.
const CloudType & owner() const
Return const access to the owner cloud.
particle::trackingData trackingData
void resize(label newCapacity)
Rehash the hash table with new number of buckets. Currently identical to setCapacity().
A primitive field of type <T> with automated input and output.
@ REGISTER
Request registration (bool: true).
@ NO_READ
Nothing to be read.
@ NO_WRITE
Ignore writing from objectRegistry::writeObject().
Defines the attributes of an object for which implicit objectRegistry management is supported,...
Calculates and writes particle Nusselt number field on the cloud.
NusseltNumber(const dictionary &dict, CloudType &owner, const word &modelName)
Construct from dictionary.
virtual void postEvolve(const typename parcelType::trackingData &td)
Post-evolve hook.
Templated base class for thermodynamic cloud.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
bool store()
Register object with its registry and transfer ownership to the registry.
const dictionary & dict() const
Return const access to the cloud dictionary.
const word & modelName() const
Return const access to the name of the sub-model.
A class for handling words, derived from Foam::string.
wallPoints::trackData td(isBlockedFace, regionToBlockSize)
const dimensionedScalar c
Speed of light in a vacuum.
bool returnReduceOr(const bool value, const int communicator=UPstream::worldComm)
Perform logical (or) MPI Allreduce on a copy. Uses UPstream::reduceOr.
DSMCCloud< dsmcParcel > CloudType
const word GlobalIOList< Tuple2< scalar, vector > >::typeName("scalarVectorTable")
scalarField Re(const UList< complex > &cmplx)
Extract real component.
dimensionedScalar Pr("Pr", dimless, laminarTransport)