ENH: lagrangian/intermediate - improved standard wall Interaction restart behaviour

This commit is contained in:
andy
2012-06-01 14:54:25 +01:00
parent 21ba59c46d
commit 3ba38aec6a
2 changed files with 18 additions and 28 deletions

View File

@ -41,10 +41,6 @@ Foam::StandardWallInteraction<CloudType>::StandardWallInteraction
), ),
e_(0.0), e_(0.0),
mu_(0.0), mu_(0.0),
nEscape0_(this->template getModelProperty<label>("nEscape")),
massEscape0_(this->template getModelProperty<scalar>("massEscape")),
nStick0_(this->template getModelProperty<label>("nStick")),
massStick0_(this->template getModelProperty<scalar>("massStick")),
nEscape_(0), nEscape_(0),
massEscape_(0.0), massEscape_(0.0),
nStick_(0), nStick_(0),
@ -94,10 +90,6 @@ Foam::StandardWallInteraction<CloudType>::StandardWallInteraction
interactionType_(pim.interactionType_), interactionType_(pim.interactionType_),
e_(pim.e_), e_(pim.e_),
mu_(pim.mu_), mu_(pim.mu_),
nEscape0_(pim.nEscape0_),
massEscape0_(pim.massEscape0_),
nStick0_(pim.nStick0_),
massStick0_(pim.massStick0_),
nEscape_(pim.nEscape_), nEscape_(pim.nEscape_),
massEscape_(pim.massEscape_), massEscape_(pim.massEscape_),
nStick_(pim.nStick_), nStick_(pim.nStick_),
@ -204,11 +196,17 @@ bool Foam::StandardWallInteraction<CloudType>::correct
template<class CloudType> template<class CloudType>
void Foam::StandardWallInteraction<CloudType>::info(Ostream& os) void Foam::StandardWallInteraction<CloudType>::info(Ostream& os)
{ {
label npe = returnReduce(nEscape_, sumOp<label>()) + nEscape0_; label npe0 = this->template getBaseProperty<scalar>("nEscape");
scalar mpe = returnReduce(massEscape_, sumOp<scalar>()) + massEscape0_; label npe = npe0 + returnReduce(nEscape_, sumOp<label>());
label nps = returnReduce(nStick_, sumOp<label>()) + nStick0_; scalar mpe0 = this->template getBaseProperty<scalar>("massEscape");
scalar mps = returnReduce(massStick_, sumOp<scalar>()) + massStick0_; scalar mpe = mpe0 + returnReduce(massEscape_, sumOp<scalar>());
label nps0 = this->template getBaseProperty<scalar>("nStick");
label nps = nps0 + returnReduce(nStick_, sumOp<label>());
scalar mps0 = this->template getBaseProperty<scalar>("massStick");
scalar mps = mps0 + returnReduce(massStick_, sumOp<scalar>());
os << " Parcel fate (number, mass)" << nl os << " Parcel fate (number, mass)" << nl
<< " - escape = " << npe << ", " << mpe << nl << " - escape = " << npe << ", " << mpe << nl
@ -217,9 +215,16 @@ void Foam::StandardWallInteraction<CloudType>::info(Ostream& os)
if (this->outputTime()) if (this->outputTime())
{ {
this->setModelProperty("nEscape", npe); this->setModelProperty("nEscape", npe);
nEscape_ = 0;
this->setModelProperty("massEscape", mpe); this->setModelProperty("massEscape", mpe);
massEscape_ = 0.0;
this->setModelProperty("nStick", nps); this->setModelProperty("nStick", nps);
nStick_ = 0;
this->setModelProperty("massStick", mps); this->setModelProperty("massStick", mps);
massStick_ = 0.0;
} }
} }

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -74,21 +74,6 @@ protected:
scalar mu_; scalar mu_;
// Counters for initial particle fates
//- Number of parcels escaped
label nEscape0_;
//- Mass of parcels escaped
scalar massEscape0_;
//- Number of parcels stuck to patches
label nStick0_;
//- Mass of parcels stuck to patches
scalar massStick0_;
// Counters for particle fates // Counters for particle fates
//- Number of parcels escaped //- Number of parcels escaped