30 template<
class ParcelType>
33 const MPPICParcel<ParcelType>&
p
37 UCorrect_(
p.UCorrect_)
41 template<
class ParcelType>
44 const MPPICParcel<ParcelType>&
p,
49 UCorrect_(
p.UCorrect_)
55 template<
class ParcelType>
56 template<
class TrackData>
60 const scalar trackTime
63 typename TrackData::cloudType::parcelType&
p =
64 static_cast<typename TrackData::cloudType::parcelType&
>(*this);
68 case TrackData::tpLinearTrack:
70 ParcelType::move(td, trackTime);
74 case TrackData::tpDampingNoTrack:
77 td.cloud().dampingModel().velocityCorrection(
p, trackTime);
79 td.keepParticle =
true;
83 case TrackData::tpPackingNoTrack:
86 td.cloud().packingModel().velocityCorrection(
p, trackTime);
88 td.keepParticle =
true;
92 case TrackData::tpCorrectTrack:
96 scalar
f =
p.stepFraction();
100 p.U() = (1.0 -
f)*
p.UCorrect();
102 ParcelType::move(td, trackTime);
104 p.U() =
U + (
p.stepFraction() -
f)*
p.UCorrect();
112 return td.keepParticle;