lagrangian: Removed unnecessary patch argument from hit methods
The patch can be determined from the particle when it is needed. Most of the time it is not.
This commit is contained in:
@ -126,12 +126,7 @@ bool Foam::findCellParticle::move
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool Foam::findCellParticle::hitPatch
|
bool Foam::findCellParticle::hitPatch(Cloud<findCellParticle>&, trackingData&)
|
||||||
(
|
|
||||||
const polyPatch&,
|
|
||||||
Cloud<findCellParticle>& cloud,
|
|
||||||
trackingData& td
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -139,8 +134,7 @@ bool Foam::findCellParticle::hitPatch
|
|||||||
|
|
||||||
void Foam::findCellParticle::hitWedgePatch
|
void Foam::findCellParticle::hitWedgePatch
|
||||||
(
|
(
|
||||||
const wedgePolyPatch&,
|
Cloud<findCellParticle>&,
|
||||||
Cloud<findCellParticle>& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -151,8 +145,7 @@ void Foam::findCellParticle::hitWedgePatch
|
|||||||
|
|
||||||
void Foam::findCellParticle::hitSymmetryPlanePatch
|
void Foam::findCellParticle::hitSymmetryPlanePatch
|
||||||
(
|
(
|
||||||
const symmetryPlanePolyPatch&,
|
Cloud<findCellParticle>&,
|
||||||
Cloud<findCellParticle>& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -163,8 +156,7 @@ void Foam::findCellParticle::hitSymmetryPlanePatch
|
|||||||
|
|
||||||
void Foam::findCellParticle::hitSymmetryPatch
|
void Foam::findCellParticle::hitSymmetryPatch
|
||||||
(
|
(
|
||||||
const symmetryPolyPatch&,
|
Cloud<findCellParticle>&,
|
||||||
Cloud<findCellParticle>& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -175,8 +167,7 @@ void Foam::findCellParticle::hitSymmetryPatch
|
|||||||
|
|
||||||
void Foam::findCellParticle::hitCyclicPatch
|
void Foam::findCellParticle::hitCyclicPatch
|
||||||
(
|
(
|
||||||
const cyclicPolyPatch&,
|
Cloud<findCellParticle>&,
|
||||||
Cloud<findCellParticle>& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -187,8 +178,7 @@ void Foam::findCellParticle::hitCyclicPatch
|
|||||||
|
|
||||||
void Foam::findCellParticle::hitCyclicAMIPatch
|
void Foam::findCellParticle::hitCyclicAMIPatch
|
||||||
(
|
(
|
||||||
const cyclicAMIPolyPatch&,
|
Cloud<findCellParticle>&,
|
||||||
Cloud<findCellParticle>& cloud,
|
|
||||||
trackingData& td,
|
trackingData& td,
|
||||||
const vector&
|
const vector&
|
||||||
)
|
)
|
||||||
@ -200,8 +190,7 @@ void Foam::findCellParticle::hitCyclicAMIPatch
|
|||||||
|
|
||||||
void Foam::findCellParticle::hitCyclicACMIPatch
|
void Foam::findCellParticle::hitCyclicACMIPatch
|
||||||
(
|
(
|
||||||
const cyclicACMIPolyPatch&,
|
Cloud<findCellParticle>&,
|
||||||
Cloud<findCellParticle>& cloud,
|
|
||||||
trackingData& td,
|
trackingData& td,
|
||||||
const vector&
|
const vector&
|
||||||
)
|
)
|
||||||
@ -213,8 +202,7 @@ void Foam::findCellParticle::hitCyclicACMIPatch
|
|||||||
|
|
||||||
void Foam::findCellParticle::hitProcessorPatch
|
void Foam::findCellParticle::hitProcessorPatch
|
||||||
(
|
(
|
||||||
const processorPolyPatch&,
|
Cloud<findCellParticle>&,
|
||||||
Cloud<findCellParticle>& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -225,8 +213,7 @@ void Foam::findCellParticle::hitProcessorPatch
|
|||||||
|
|
||||||
void Foam::findCellParticle::hitWallPatch
|
void Foam::findCellParticle::hitWallPatch
|
||||||
(
|
(
|
||||||
const wallPolyPatch& wpp,
|
Cloud<findCellParticle>&,
|
||||||
Cloud<findCellParticle>& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -222,84 +222,46 @@ public:
|
|||||||
//- Track all particles to their end point
|
//- Track all particles to their end point
|
||||||
bool move(Cloud<findCellParticle>&, trackingData&, const scalar);
|
bool move(Cloud<findCellParticle>&, trackingData&, const scalar);
|
||||||
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a patch
|
//- Overridable function to handle the particle hitting a patch
|
||||||
// Executed before other patch-hitting functions
|
// Executed before other patch-hitting functions
|
||||||
bool hitPatch
|
bool hitPatch(Cloud<findCellParticle>&, trackingData&);
|
||||||
(
|
|
||||||
const polyPatch&,
|
|
||||||
Cloud<findCellParticle>&,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a wedge
|
//- Overridable function to handle the particle hitting a wedge
|
||||||
void hitWedgePatch
|
void hitWedgePatch(Cloud<findCellParticle>&, trackingData&);
|
||||||
(
|
|
||||||
const wedgePolyPatch&,
|
|
||||||
Cloud<findCellParticle>&,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
// symmetry plane
|
// symmetry plane
|
||||||
void hitSymmetryPlanePatch
|
void hitSymmetryPlanePatch(Cloud<findCellParticle>&, trackingData&);
|
||||||
(
|
|
||||||
const symmetryPlanePolyPatch&,
|
|
||||||
Cloud<findCellParticle>&,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
// symmetry patch
|
// symmetry patch
|
||||||
void hitSymmetryPatch
|
void hitSymmetryPatch(Cloud<findCellParticle>&, trackingData&);
|
||||||
(
|
|
||||||
const symmetryPolyPatch&,
|
|
||||||
Cloud<findCellParticle>&,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a cyclic
|
//- Overridable function to handle the particle hitting a cyclic
|
||||||
void hitCyclicPatch
|
void hitCyclicPatch(Cloud<findCellParticle>&, trackingData&);
|
||||||
(
|
|
||||||
const cyclicPolyPatch&,
|
|
||||||
Cloud<findCellParticle>&,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a cyclicAMI
|
//- Overridable function to handle the particle hitting a cyclicAMI
|
||||||
void hitCyclicAMIPatch
|
void hitCyclicAMIPatch
|
||||||
(
|
(
|
||||||
const cyclicAMIPolyPatch&,
|
Cloud<findCellParticle>&,
|
||||||
Cloud<findCellParticle>& cloud,
|
trackingData&,
|
||||||
trackingData& td,
|
|
||||||
const vector&
|
const vector&
|
||||||
);
|
);
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a cyclicACMI
|
//- Overridable function to handle the particle hitting a cyclicACMI
|
||||||
void hitCyclicACMIPatch
|
void hitCyclicACMIPatch
|
||||||
(
|
(
|
||||||
const cyclicACMIPolyPatch&,
|
Cloud<findCellParticle>&,
|
||||||
Cloud<findCellParticle>& cloud,
|
trackingData&,
|
||||||
trackingData& td,
|
|
||||||
const vector&
|
const vector&
|
||||||
);
|
);
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
//- processorPatch
|
//- processorPatch
|
||||||
void hitProcessorPatch
|
void hitProcessorPatch(Cloud<findCellParticle>&, trackingData&);
|
||||||
(
|
|
||||||
const processorPolyPatch&,
|
|
||||||
Cloud<findCellParticle>&,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a wallPatch
|
//- Overridable function to handle the particle hitting a wallPatch
|
||||||
void hitWallPatch
|
void hitWallPatch(Cloud<findCellParticle>&, trackingData&);
|
||||||
(
|
|
||||||
const wallPolyPatch&,
|
|
||||||
Cloud<findCellParticle>&,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
// Ostream Operator
|
// Ostream Operator
|
||||||
|
|||||||
@ -270,12 +270,7 @@ bool Foam::streamLineParticle::move
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool Foam::streamLineParticle::hitPatch
|
bool Foam::streamLineParticle::hitPatch(streamLineParticleCloud&, trackingData&)
|
||||||
(
|
|
||||||
const polyPatch&,
|
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
// Disable generic patch interaction
|
// Disable generic patch interaction
|
||||||
return false;
|
return false;
|
||||||
@ -284,8 +279,7 @@ bool Foam::streamLineParticle::hitPatch
|
|||||||
|
|
||||||
void Foam::streamLineParticle::hitWedgePatch
|
void Foam::streamLineParticle::hitWedgePatch
|
||||||
(
|
(
|
||||||
const wedgePolyPatch& pp,
|
streamLineParticleCloud&,
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -296,8 +290,7 @@ void Foam::streamLineParticle::hitWedgePatch
|
|||||||
|
|
||||||
void Foam::streamLineParticle::hitSymmetryPlanePatch
|
void Foam::streamLineParticle::hitSymmetryPlanePatch
|
||||||
(
|
(
|
||||||
const symmetryPlanePolyPatch& pp,
|
streamLineParticleCloud&,
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -308,8 +301,7 @@ void Foam::streamLineParticle::hitSymmetryPlanePatch
|
|||||||
|
|
||||||
void Foam::streamLineParticle::hitSymmetryPatch
|
void Foam::streamLineParticle::hitSymmetryPatch
|
||||||
(
|
(
|
||||||
const symmetryPolyPatch& pp,
|
streamLineParticleCloud&,
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -320,8 +312,7 @@ void Foam::streamLineParticle::hitSymmetryPatch
|
|||||||
|
|
||||||
void Foam::streamLineParticle::hitCyclicPatch
|
void Foam::streamLineParticle::hitCyclicPatch
|
||||||
(
|
(
|
||||||
const cyclicPolyPatch& pp,
|
streamLineParticleCloud&,
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -332,8 +323,7 @@ void Foam::streamLineParticle::hitCyclicPatch
|
|||||||
|
|
||||||
void Foam::streamLineParticle::hitCyclicAMIPatch
|
void Foam::streamLineParticle::hitCyclicAMIPatch
|
||||||
(
|
(
|
||||||
const cyclicAMIPolyPatch&,
|
streamLineParticleCloud&,
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td,
|
trackingData& td,
|
||||||
const vector&
|
const vector&
|
||||||
)
|
)
|
||||||
@ -345,8 +335,7 @@ void Foam::streamLineParticle::hitCyclicAMIPatch
|
|||||||
|
|
||||||
void Foam::streamLineParticle::hitCyclicACMIPatch
|
void Foam::streamLineParticle::hitCyclicACMIPatch
|
||||||
(
|
(
|
||||||
const cyclicACMIPolyPatch&,
|
streamLineParticleCloud&,
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td,
|
trackingData& td,
|
||||||
const vector&
|
const vector&
|
||||||
)
|
)
|
||||||
@ -358,8 +347,7 @@ void Foam::streamLineParticle::hitCyclicACMIPatch
|
|||||||
|
|
||||||
void Foam::streamLineParticle::hitProcessorPatch
|
void Foam::streamLineParticle::hitProcessorPatch
|
||||||
(
|
(
|
||||||
const processorPolyPatch&,
|
streamLineParticleCloud&,
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -370,8 +358,7 @@ void Foam::streamLineParticle::hitProcessorPatch
|
|||||||
|
|
||||||
void Foam::streamLineParticle::hitWallPatch
|
void Foam::streamLineParticle::hitWallPatch
|
||||||
(
|
(
|
||||||
const wallPolyPatch& wpp,
|
streamLineParticleCloud&,
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -207,63 +207,32 @@ public:
|
|||||||
// Tracking
|
// Tracking
|
||||||
|
|
||||||
//- Track all particles to their end point
|
//- Track all particles to their end point
|
||||||
bool move
|
bool move(streamLineParticleCloud&, trackingData&, const scalar);
|
||||||
(
|
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData&,
|
|
||||||
const scalar
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a patch
|
//- Overridable function to handle the particle hitting a patch
|
||||||
// Executed before other patch-hitting functions
|
// Executed before other patch-hitting functions
|
||||||
bool hitPatch
|
bool hitPatch(streamLineParticleCloud&, trackingData&);
|
||||||
(
|
|
||||||
const polyPatch&,
|
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a wedge
|
//- Overridable function to handle the particle hitting a wedge
|
||||||
void hitWedgePatch
|
void hitWedgePatch(streamLineParticleCloud&, trackingData&);
|
||||||
(
|
|
||||||
const wedgePolyPatch&,
|
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
// symmetry plane
|
// symmetry plane
|
||||||
void hitSymmetryPlanePatch
|
void hitSymmetryPlanePatch(streamLineParticleCloud&, trackingData&);
|
||||||
(
|
|
||||||
const symmetryPlanePolyPatch&,
|
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
// symmetry patch
|
// symmetry patch
|
||||||
void hitSymmetryPatch
|
void hitSymmetryPatch(streamLineParticleCloud&, trackingData&);
|
||||||
(
|
|
||||||
const symmetryPolyPatch&,
|
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a cyclic
|
//- Overridable function to handle the particle hitting a cyclic
|
||||||
void hitCyclicPatch
|
void hitCyclicPatch(streamLineParticleCloud&, trackingData&);
|
||||||
(
|
|
||||||
const cyclicPolyPatch&,
|
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
// cyclicAMIPatch
|
// cyclicAMIPatch
|
||||||
void hitCyclicAMIPatch
|
void hitCyclicAMIPatch
|
||||||
(
|
(
|
||||||
const cyclicAMIPolyPatch&,
|
streamLineParticleCloud&,
|
||||||
streamLineParticleCloud& cloud,
|
trackingData&,
|
||||||
trackingData& td,
|
|
||||||
const vector& direction
|
const vector& direction
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -271,28 +240,17 @@ public:
|
|||||||
// cyclicACMIPatch
|
// cyclicACMIPatch
|
||||||
void hitCyclicACMIPatch
|
void hitCyclicACMIPatch
|
||||||
(
|
(
|
||||||
const cyclicACMIPolyPatch&,
|
streamLineParticleCloud&,
|
||||||
streamLineParticleCloud& cloud,
|
trackingData&,
|
||||||
trackingData& td,
|
|
||||||
const vector& direction
|
const vector& direction
|
||||||
);
|
);
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
//- processorPatch
|
//- processorPatch
|
||||||
void hitProcessorPatch
|
void hitProcessorPatch(streamLineParticleCloud&, trackingData&);
|
||||||
(
|
|
||||||
const processorPolyPatch&,
|
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a wallPatch
|
//- Overridable function to handle the particle hitting a wallPatch
|
||||||
void hitWallPatch
|
void hitWallPatch(streamLineParticleCloud&, trackingData&);
|
||||||
(
|
|
||||||
const wallPolyPatch&,
|
|
||||||
streamLineParticleCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
// I-O
|
// I-O
|
||||||
|
|||||||
@ -81,12 +81,7 @@ bool Foam::DSMCParcel<ParcelType>::move
|
|||||||
|
|
||||||
template<class ParcelType>
|
template<class ParcelType>
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
bool Foam::DSMCParcel<ParcelType>::hitPatch
|
bool Foam::DSMCParcel<ParcelType>::hitPatch(TrackCloudType&, trackingData&)
|
||||||
(
|
|
||||||
const polyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -96,8 +91,7 @@ template<class ParcelType>
|
|||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void Foam::DSMCParcel<ParcelType>::hitProcessorPatch
|
void Foam::DSMCParcel<ParcelType>::hitProcessorPatch
|
||||||
(
|
(
|
||||||
const processorPolyPatch&,
|
TrackCloudType&,
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -109,14 +103,19 @@ template<class ParcelType>
|
|||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void Foam::DSMCParcel<ParcelType>::hitWallPatch
|
void Foam::DSMCParcel<ParcelType>::hitWallPatch
|
||||||
(
|
(
|
||||||
const wallPolyPatch& wpp,
|
|
||||||
TrackCloudType& cloud,
|
TrackCloudType& cloud,
|
||||||
trackingData& td
|
trackingData&
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
label wppIndex = wpp.index();
|
const label wppIndex = this->patch();
|
||||||
|
|
||||||
label wppLocalFace = wpp.whichFace(this->face());
|
const wallPolyPatch& wpp =
|
||||||
|
static_cast<const wallPolyPatch&>
|
||||||
|
(
|
||||||
|
this->mesh().boundaryMesh()[wppIndex]
|
||||||
|
);
|
||||||
|
|
||||||
|
const label wppLocalFace = wpp.whichFace(this->face());
|
||||||
|
|
||||||
const scalar fA = mag(wpp.faceAreas()[wppLocalFace]);
|
const scalar fA = mag(wpp.faceAreas()[wppLocalFace]);
|
||||||
|
|
||||||
@ -155,11 +154,7 @@ void Foam::DSMCParcel<ParcelType>::hitWallPatch
|
|||||||
// pre-interaction momentum
|
// pre-interaction momentum
|
||||||
vector preIMom = m*U_;
|
vector preIMom = m*U_;
|
||||||
|
|
||||||
cloud.wallInteraction().correct
|
cloud.wallInteraction().correct(*this);
|
||||||
(
|
|
||||||
static_cast<DSMCParcel<ParcelType> &>(*this),
|
|
||||||
wpp
|
|
||||||
);
|
|
||||||
|
|
||||||
U_dot_nw = U_ & nw;
|
U_dot_nw = U_ & nw;
|
||||||
|
|
||||||
@ -194,7 +189,6 @@ void Foam::DSMCParcel<ParcelType>::hitWallPatch
|
|||||||
cloud.qBF()[wppIndex][wppLocalFace] += deltaQ;
|
cloud.qBF()[wppIndex][wppLocalFace] += deltaQ;
|
||||||
|
|
||||||
cloud.fDBF()[wppIndex][wppLocalFace] += deltaFD;
|
cloud.fDBF()[wppIndex][wppLocalFace] += deltaFD;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -262,31 +262,16 @@ public:
|
|||||||
//- Overridable function to handle the particle hitting a patch
|
//- Overridable function to handle the particle hitting a patch
|
||||||
// Executed before other patch-hitting functions
|
// Executed before other patch-hitting functions
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
bool hitPatch
|
bool hitPatch(TrackCloudType&, trackingData&);
|
||||||
(
|
|
||||||
const polyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
// processorPatch
|
// processorPatch
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void hitProcessorPatch
|
void hitProcessorPatch(TrackCloudType&, trackingData&);
|
||||||
(
|
|
||||||
const processorPolyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a wallPatch
|
//- Overridable function to handle the particle hitting a wallPatch
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void hitWallPatch
|
void hitWallPatch(TrackCloudType&, trackingData&);
|
||||||
(
|
|
||||||
const wallPolyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Transform the physical properties of the particle
|
//- Transform the physical properties of the particle
|
||||||
// according to the given transformation tensor
|
// according to the given transformation tensor
|
||||||
|
|||||||
@ -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-2015 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -53,8 +53,7 @@ Foam::MaxwellianThermal<CloudType>::~MaxwellianThermal()
|
|||||||
template<class CloudType>
|
template<class CloudType>
|
||||||
void Foam::MaxwellianThermal<CloudType>::correct
|
void Foam::MaxwellianThermal<CloudType>::correct
|
||||||
(
|
(
|
||||||
typename CloudType::parcelType& p,
|
typename CloudType::parcelType& p
|
||||||
const wallPolyPatch& wpp
|
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
vector& U = p.U();
|
vector& U = p.U();
|
||||||
@ -63,7 +62,9 @@ void Foam::MaxwellianThermal<CloudType>::correct
|
|||||||
|
|
||||||
label typeId = p.typeId();
|
label typeId = p.typeId();
|
||||||
|
|
||||||
label wppIndex = wpp.index();
|
const label wppIndex = p.patch();
|
||||||
|
|
||||||
|
const polyPatch& wpp = p.mesh().boundaryMesh()[wppIndex];
|
||||||
|
|
||||||
label wppLocalFace = wpp.whichFace(p.face());
|
label wppLocalFace = wpp.whichFace(p.face());
|
||||||
|
|
||||||
|
|||||||
@ -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-2016 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -72,11 +72,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Apply wall correction
|
//- Apply wall correction
|
||||||
virtual void correct
|
virtual void correct(typename CloudType::parcelType& p);
|
||||||
(
|
|
||||||
typename CloudType::parcelType& p,
|
|
||||||
const wallPolyPatch& wpp
|
|
||||||
);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -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-2015 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -51,8 +51,7 @@ Foam::MixedDiffuseSpecular<CloudType>::~MixedDiffuseSpecular()
|
|||||||
template<class CloudType>
|
template<class CloudType>
|
||||||
void Foam::MixedDiffuseSpecular<CloudType>::correct
|
void Foam::MixedDiffuseSpecular<CloudType>::correct
|
||||||
(
|
(
|
||||||
typename CloudType::parcelType& p,
|
typename CloudType::parcelType& p
|
||||||
const wallPolyPatch& wpp
|
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
vector& U = p.U();
|
vector& U = p.U();
|
||||||
@ -61,7 +60,9 @@ void Foam::MixedDiffuseSpecular<CloudType>::correct
|
|||||||
|
|
||||||
label typeId = p.typeId();
|
label typeId = p.typeId();
|
||||||
|
|
||||||
label wppIndex = wpp.index();
|
const label wppIndex = p.patch();
|
||||||
|
|
||||||
|
const polyPatch& wpp = p.mesh().boundaryMesh()[wppIndex];
|
||||||
|
|
||||||
label wppLocalFace = wpp.whichFace(p.face());
|
label wppLocalFace = wpp.whichFace(p.face());
|
||||||
|
|
||||||
|
|||||||
@ -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-2016 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -80,11 +80,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Apply wall correction
|
//- Apply wall correction
|
||||||
virtual void correct
|
virtual void correct(typename CloudType::parcelType& p);
|
||||||
(
|
|
||||||
typename CloudType::parcelType& p,
|
|
||||||
const wallPolyPatch& wpp
|
|
||||||
);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -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-2015 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -52,8 +52,7 @@ Foam::SpecularReflection<CloudType>::~SpecularReflection()
|
|||||||
template<class CloudType>
|
template<class CloudType>
|
||||||
void Foam::SpecularReflection<CloudType>::correct
|
void Foam::SpecularReflection<CloudType>::correct
|
||||||
(
|
(
|
||||||
typename CloudType::parcelType& p,
|
typename CloudType::parcelType& p
|
||||||
const wallPolyPatch& wpp
|
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
vector& U = p.U();
|
vector& U = p.U();
|
||||||
|
|||||||
@ -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-2016 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -70,11 +70,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Apply wall correction
|
//- Apply wall correction
|
||||||
virtual void correct
|
virtual void correct(typename CloudType::parcelType& p);
|
||||||
(
|
|
||||||
typename CloudType::parcelType& p,
|
|
||||||
const wallPolyPatch& wpp
|
|
||||||
);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -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-2016 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -127,11 +127,7 @@ public:
|
|||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Apply wall correction
|
//- Apply wall correction
|
||||||
virtual void correct
|
virtual void correct(typename CloudType::parcelType& p) = 0;
|
||||||
(
|
|
||||||
typename CloudType::parcelType& p,
|
|
||||||
const wallPolyPatch& wpp
|
|
||||||
) = 0;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -284,93 +284,44 @@ protected:
|
|||||||
|
|
||||||
// Patch interactions
|
// Patch interactions
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a patch.
|
||||||
// patch. Executed before other patch-hitting functions.
|
// Executed before other patch-hitting functions.
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
bool hitPatch
|
bool hitPatch(TrackCloudType&, trackingData&);
|
||||||
(
|
|
||||||
const polyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a wedgePatch
|
//- Overridable function to handle the particle hitting a wedgePatch
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void hitWedgePatch
|
void hitWedgePatch(TrackCloudType&, trackingData&);
|
||||||
(
|
|
||||||
const wedgePolyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
// symmetryPlanePatch
|
// symmetryPlanePatch
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void hitSymmetryPlanePatch
|
void hitSymmetryPlanePatch(TrackCloudType&, trackingData&);
|
||||||
(
|
|
||||||
const symmetryPlanePolyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a symmetryPatch
|
||||||
// symmetryPatch
|
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void hitSymmetryPatch
|
void hitSymmetryPatch(TrackCloudType&, trackingData&);
|
||||||
(
|
|
||||||
const symmetryPolyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a cyclicPatch
|
//- Overridable function to handle the particle hitting a cyclicPatch
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void hitCyclicPatch
|
void hitCyclicPatch(TrackCloudType&, trackingData&);
|
||||||
(
|
|
||||||
const cyclicPolyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a cyclicAMIPatch
|
//- Overridable function to handle the particle hitting a cyclicAMIPatch
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void hitCyclicAMIPatch
|
void hitCyclicAMIPatch(TrackCloudType&, trackingData&, const vector&);
|
||||||
(
|
|
||||||
const cyclicAMIPolyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td,
|
|
||||||
const vector& direction
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
// cyclicACMIPatch
|
// cyclicACMIPatch
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void hitCyclicACMIPatch
|
void hitCyclicACMIPatch(TrackCloudType&, trackingData&, const vector&);
|
||||||
(
|
|
||||||
const cyclicACMIPolyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td,
|
|
||||||
const vector& direction
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a processorPatch
|
||||||
// processorPatch
|
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void hitProcessorPatch
|
void hitProcessorPatch(TrackCloudType&, trackingData&);
|
||||||
(
|
|
||||||
const processorPolyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a wallPatch
|
//- Overridable function to handle the particle hitting a wallPatch
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void hitWallPatch
|
void hitWallPatch(TrackCloudType&, trackingData&);
|
||||||
(
|
|
||||||
const wallPolyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|||||||
@ -122,73 +122,41 @@ void Foam::particle::hitFace
|
|||||||
}
|
}
|
||||||
else if (onBoundaryFace())
|
else if (onBoundaryFace())
|
||||||
{
|
{
|
||||||
if(!p.hitPatch(mesh_.boundaryMesh()[p.patch()], cloud, ttd))
|
if(!p.hitPatch(cloud, ttd))
|
||||||
{
|
{
|
||||||
const polyPatch& patch = mesh_.boundaryMesh()[p.patch()];
|
const polyPatch& patch = mesh_.boundaryMesh()[p.patch()];
|
||||||
|
|
||||||
if (isA<wedgePolyPatch>(patch))
|
if (isA<wedgePolyPatch>(patch))
|
||||||
{
|
{
|
||||||
p.hitWedgePatch
|
p.hitWedgePatch(cloud, ttd);
|
||||||
(
|
|
||||||
static_cast<const wedgePolyPatch&>(patch), cloud, ttd
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
else if (isA<symmetryPlanePolyPatch>(patch))
|
else if (isA<symmetryPlanePolyPatch>(patch))
|
||||||
{
|
{
|
||||||
p.hitSymmetryPlanePatch
|
p.hitSymmetryPlanePatch(cloud, ttd);
|
||||||
(
|
|
||||||
static_cast<const symmetryPlanePolyPatch&>(patch),
|
|
||||||
cloud,
|
|
||||||
ttd
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
else if (isA<symmetryPolyPatch>(patch))
|
else if (isA<symmetryPolyPatch>(patch))
|
||||||
{
|
{
|
||||||
p.hitSymmetryPatch
|
p.hitSymmetryPatch(cloud, ttd);
|
||||||
(
|
|
||||||
static_cast<const symmetryPolyPatch&>(patch), cloud, ttd
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
else if (isA<cyclicPolyPatch>(patch))
|
else if (isA<cyclicPolyPatch>(patch))
|
||||||
{
|
{
|
||||||
p.hitCyclicPatch
|
p.hitCyclicPatch(cloud, ttd);
|
||||||
(
|
|
||||||
static_cast<const cyclicPolyPatch&>(patch), cloud, ttd
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
else if (isA<cyclicACMIPolyPatch>(patch))
|
else if (isA<cyclicACMIPolyPatch>(patch))
|
||||||
{
|
{
|
||||||
p.hitCyclicACMIPatch
|
p.hitCyclicACMIPatch(cloud, ttd, direction);
|
||||||
(
|
|
||||||
static_cast<const cyclicACMIPolyPatch&>(patch),
|
|
||||||
cloud,
|
|
||||||
ttd,
|
|
||||||
direction
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
else if (isA<cyclicAMIPolyPatch>(patch))
|
else if (isA<cyclicAMIPolyPatch>(patch))
|
||||||
{
|
{
|
||||||
p.hitCyclicAMIPatch
|
p.hitCyclicAMIPatch(cloud, ttd, direction);
|
||||||
(
|
|
||||||
static_cast<const cyclicAMIPolyPatch&>(patch),
|
|
||||||
cloud,
|
|
||||||
ttd,
|
|
||||||
direction
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
else if (isA<processorPolyPatch>(patch))
|
else if (isA<processorPolyPatch>(patch))
|
||||||
{
|
{
|
||||||
p.hitProcessorPatch
|
p.hitProcessorPatch(cloud, ttd);
|
||||||
(
|
|
||||||
static_cast<const processorPolyPatch&>(patch), cloud, ttd
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
else if (isA<wallPolyPatch>(patch))
|
else if (isA<wallPolyPatch>(patch))
|
||||||
{
|
{
|
||||||
p.hitWallPatch
|
p.hitWallPatch(cloud, ttd);
|
||||||
(
|
|
||||||
static_cast<const wallPolyPatch&>(patch), cloud, ttd
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -220,43 +188,36 @@ void Foam::particle::trackToAndHitFace
|
|||||||
|
|
||||||
|
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
bool Foam::particle::hitPatch
|
bool Foam::particle::hitPatch(TrackCloudType&, trackingData&)
|
||||||
(
|
|
||||||
const polyPatch&,
|
|
||||||
TrackCloudType&,
|
|
||||||
trackingData&
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void Foam::particle::hitWedgePatch
|
void Foam::particle::hitWedgePatch(TrackCloudType& cloud, trackingData& td)
|
||||||
(
|
|
||||||
const wedgePolyPatch& wpp,
|
|
||||||
TrackCloudType&,
|
|
||||||
trackingData&
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
FatalErrorInFunction
|
FatalErrorInFunction
|
||||||
<< "Hitting a wedge patch should not be possible."
|
<< "Hitting a wedge patch should not be possible."
|
||||||
<< abort(FatalError);
|
<< abort(FatalError);
|
||||||
|
|
||||||
vector nf = normal();
|
hitSymmetryPatch(cloud, td);
|
||||||
nf /= mag(nf);
|
|
||||||
|
|
||||||
transformProperties(I - 2.0*nf*nf);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void Foam::particle::hitSymmetryPlanePatch
|
void Foam::particle::hitSymmetryPlanePatch
|
||||||
(
|
(
|
||||||
const symmetryPlanePolyPatch& spp,
|
TrackCloudType& cloud,
|
||||||
TrackCloudType&,
|
trackingData& td
|
||||||
trackingData&
|
|
||||||
)
|
)
|
||||||
|
{
|
||||||
|
hitSymmetryPatch(cloud, td);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
template<class TrackCloudType>
|
||||||
|
void Foam::particle::hitSymmetryPatch(TrackCloudType&, trackingData&)
|
||||||
{
|
{
|
||||||
vector nf = normal();
|
vector nf = normal();
|
||||||
nf /= mag(nf);
|
nf /= mag(nf);
|
||||||
@ -266,28 +227,10 @@ void Foam::particle::hitSymmetryPlanePatch
|
|||||||
|
|
||||||
|
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void Foam::particle::hitSymmetryPatch
|
void Foam::particle::hitCyclicPatch(TrackCloudType&, trackingData&)
|
||||||
(
|
|
||||||
const symmetryPolyPatch& spp,
|
|
||||||
TrackCloudType&,
|
|
||||||
trackingData&
|
|
||||||
)
|
|
||||||
{
|
|
||||||
vector nf = normal();
|
|
||||||
nf /= mag(nf);
|
|
||||||
|
|
||||||
transformProperties(I - 2.0*nf*nf);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
template<class TrackCloudType>
|
|
||||||
void Foam::particle::hitCyclicPatch
|
|
||||||
(
|
|
||||||
const cyclicPolyPatch& cpp,
|
|
||||||
TrackCloudType&,
|
|
||||||
trackingData&
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
|
const cyclicPolyPatch& cpp =
|
||||||
|
static_cast<const cyclicPolyPatch&>(mesh_.boundaryMesh()[patch()]);
|
||||||
const cyclicPolyPatch& receiveCpp = cpp.neighbPatch();
|
const cyclicPolyPatch& receiveCpp = cpp.neighbPatch();
|
||||||
const label receiveFacei = receiveCpp.whichFace(facei_);
|
const label receiveFacei = receiveCpp.whichFace(facei_);
|
||||||
|
|
||||||
@ -327,14 +270,15 @@ void Foam::particle::hitCyclicPatch
|
|||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void Foam::particle::hitCyclicAMIPatch
|
void Foam::particle::hitCyclicAMIPatch
|
||||||
(
|
(
|
||||||
const cyclicAMIPolyPatch& cpp,
|
TrackCloudType&,
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td,
|
trackingData& td,
|
||||||
const vector& direction
|
const vector& direction
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
vector pos = position();
|
vector pos = position();
|
||||||
|
|
||||||
|
const cyclicAMIPolyPatch& cpp =
|
||||||
|
static_cast<const cyclicAMIPolyPatch&>(mesh_.boundaryMesh()[patch()]);
|
||||||
const cyclicAMIPolyPatch& receiveCpp = cpp.neighbPatch();
|
const cyclicAMIPolyPatch& receiveCpp = cpp.neighbPatch();
|
||||||
const label sendFacei = cpp.whichFace(facei_);
|
const label sendFacei = cpp.whichFace(facei_);
|
||||||
const label receiveFacei = cpp.pointFace(sendFacei, direction, pos);
|
const label receiveFacei = cpp.pointFace(sendFacei, direction, pos);
|
||||||
@ -398,12 +342,14 @@ void Foam::particle::hitCyclicAMIPatch
|
|||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void Foam::particle::hitCyclicACMIPatch
|
void Foam::particle::hitCyclicACMIPatch
|
||||||
(
|
(
|
||||||
const cyclicACMIPolyPatch& cpp,
|
|
||||||
TrackCloudType& cloud,
|
TrackCloudType& cloud,
|
||||||
trackingData& td,
|
trackingData& td,
|
||||||
const vector& direction
|
const vector& direction
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
const cyclicACMIPolyPatch& cpp =
|
||||||
|
static_cast<const cyclicACMIPolyPatch&>(mesh_.boundaryMesh()[patch()]);
|
||||||
|
|
||||||
const label localFacei = cpp.whichFace(facei_);
|
const label localFacei = cpp.whichFace(facei_);
|
||||||
|
|
||||||
// If the mask is within the patch tolerance at either end, then we can
|
// If the mask is within the patch tolerance at either end, then we can
|
||||||
@ -424,7 +370,7 @@ void Foam::particle::hitCyclicACMIPatch
|
|||||||
|
|
||||||
if (couple)
|
if (couple)
|
||||||
{
|
{
|
||||||
hitCyclicAMIPatch(cpp, cloud, td, direction);
|
hitCyclicAMIPatch(cloud, td, direction);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -437,22 +383,12 @@ void Foam::particle::hitCyclicACMIPatch
|
|||||||
|
|
||||||
|
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void Foam::particle::hitProcessorPatch
|
void Foam::particle::hitProcessorPatch(TrackCloudType&, trackingData&)
|
||||||
(
|
|
||||||
const processorPolyPatch&,
|
|
||||||
TrackCloudType&,
|
|
||||||
trackingData&
|
|
||||||
)
|
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void Foam::particle::hitWallPatch
|
void Foam::particle::hitWallPatch(TrackCloudType&, trackingData&)
|
||||||
(
|
|
||||||
const wallPolyPatch&,
|
|
||||||
TrackCloudType&,
|
|
||||||
trackingData&
|
|
||||||
)
|
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -352,7 +352,6 @@ template<class ParcelType>
|
|||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
bool Foam::KinematicParcel<ParcelType>::hitPatch
|
bool Foam::KinematicParcel<ParcelType>::hitPatch
|
||||||
(
|
(
|
||||||
const polyPatch& pp,
|
|
||||||
TrackCloudType& cloud,
|
TrackCloudType& cloud,
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
@ -360,6 +359,8 @@ bool Foam::KinematicParcel<ParcelType>::hitPatch
|
|||||||
typename TrackCloudType::parcelType& p =
|
typename TrackCloudType::parcelType& p =
|
||||||
static_cast<typename TrackCloudType::parcelType&>(*this);
|
static_cast<typename TrackCloudType::parcelType&>(*this);
|
||||||
|
|
||||||
|
const polyPatch& pp = p.mesh().boundaryMesh()[p.patch()];
|
||||||
|
|
||||||
// Invoke post-processing model
|
// Invoke post-processing model
|
||||||
cloud.functions().postPatch(p, pp, td.keepParticle);
|
cloud.functions().postPatch(p, pp, td.keepParticle);
|
||||||
|
|
||||||
@ -386,8 +387,7 @@ template<class ParcelType>
|
|||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void Foam::KinematicParcel<ParcelType>::hitProcessorPatch
|
void Foam::KinematicParcel<ParcelType>::hitProcessorPatch
|
||||||
(
|
(
|
||||||
const processorPolyPatch&,
|
TrackCloudType&,
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -399,12 +399,11 @@ template<class ParcelType>
|
|||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void Foam::KinematicParcel<ParcelType>::hitWallPatch
|
void Foam::KinematicParcel<ParcelType>::hitWallPatch
|
||||||
(
|
(
|
||||||
const wallPolyPatch& wpp,
|
TrackCloudType&,
|
||||||
TrackCloudType& cloud,
|
trackingData&
|
||||||
trackingData& td
|
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
// Wall interactions handled by generic hitPatch function
|
// wall interactions are handled by the generic hitPatch method
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -585,31 +585,16 @@ public:
|
|||||||
//- Overridable function to handle the particle hitting a patch
|
//- Overridable function to handle the particle hitting a patch
|
||||||
// Executed before other patch-hitting functions
|
// Executed before other patch-hitting functions
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
bool hitPatch
|
bool hitPatch(TrackCloudType& cloud, trackingData& td);
|
||||||
(
|
|
||||||
const polyPatch& p,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
// processorPatch
|
// processorPatch
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void hitProcessorPatch
|
void hitProcessorPatch(TrackCloudType& cloud, trackingData& td);
|
||||||
(
|
|
||||||
const processorPolyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a wallPatch
|
//- Overridable function to handle the particle hitting a wallPatch
|
||||||
template<class TrackCloudType>
|
template<class TrackCloudType>
|
||||||
void hitWallPatch
|
void hitWallPatch(TrackCloudType& cloud, trackingData& td);
|
||||||
(
|
|
||||||
const wallPolyPatch&,
|
|
||||||
TrackCloudType& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Transform the physical properties of the particle
|
//- Transform the physical properties of the particle
|
||||||
// according to the given transformation tensor
|
// according to the given transformation tensor
|
||||||
|
|||||||
@ -235,34 +235,19 @@ void Foam::molecule::setSiteSizes(label size)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool Foam::molecule::hitPatch
|
bool Foam::molecule::hitPatch(moleculeCloud&, trackingData&)
|
||||||
(
|
|
||||||
const polyPatch&,
|
|
||||||
moleculeCloud&,
|
|
||||||
trackingData&
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Foam::molecule::hitProcessorPatch
|
void Foam::molecule::hitProcessorPatch(moleculeCloud&, trackingData& td)
|
||||||
(
|
|
||||||
const processorPolyPatch&,
|
|
||||||
moleculeCloud&,
|
|
||||||
trackingData& td
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
td.switchProcessor = true;
|
td.switchProcessor = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Foam::molecule::hitWallPatch
|
void Foam::molecule::hitWallPatch(moleculeCloud&, trackingData&)
|
||||||
(
|
|
||||||
const wallPolyPatch& wpp,
|
|
||||||
moleculeCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
vector nw = normal();
|
vector nw = normal();
|
||||||
nw /= mag(nw);
|
nw /= mag(nw);
|
||||||
|
|||||||
@ -364,28 +364,13 @@ public:
|
|||||||
|
|
||||||
//- Overridable function to handle the particle hitting a patch
|
//- Overridable function to handle the particle hitting a patch
|
||||||
// Executed before other patch-hitting functions
|
// Executed before other patch-hitting functions
|
||||||
bool hitPatch
|
bool hitPatch(moleculeCloud& cloud, trackingData& td);
|
||||||
(
|
|
||||||
const polyPatch&,
|
|
||||||
moleculeCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a processorPatch
|
//- Overridable function to handle the particle hitting a processorPatch
|
||||||
void hitProcessorPatch
|
void hitProcessorPatch(moleculeCloud& cloud, trackingData& td);
|
||||||
(
|
|
||||||
const processorPolyPatch&,
|
|
||||||
moleculeCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a wallPatch
|
//- Overridable function to handle the particle hitting a wallPatch
|
||||||
void hitWallPatch
|
void hitWallPatch(moleculeCloud& cloud, trackingData& td);
|
||||||
(
|
|
||||||
const wallPolyPatch&,
|
|
||||||
moleculeCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
// I-O
|
// I-O
|
||||||
|
|||||||
@ -96,12 +96,7 @@ bool Foam::solidParticle::move
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool Foam::solidParticle::hitPatch
|
bool Foam::solidParticle::hitPatch(solidParticleCloud&, trackingData&)
|
||||||
(
|
|
||||||
const polyPatch&,
|
|
||||||
solidParticleCloud& cloud,
|
|
||||||
trackingData&
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -109,8 +104,7 @@ bool Foam::solidParticle::hitPatch
|
|||||||
|
|
||||||
void Foam::solidParticle::hitProcessorPatch
|
void Foam::solidParticle::hitProcessorPatch
|
||||||
(
|
(
|
||||||
const processorPolyPatch&,
|
solidParticleCloud&,
|
||||||
solidParticleCloud& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -118,12 +112,7 @@ void Foam::solidParticle::hitProcessorPatch
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Foam::solidParticle::hitWallPatch
|
void Foam::solidParticle::hitWallPatch(solidParticleCloud& cloud, trackingData&)
|
||||||
(
|
|
||||||
const wallPolyPatch& wpp,
|
|
||||||
solidParticleCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
vector nw = normal();
|
vector nw = normal();
|
||||||
nw /= mag(nw);
|
nw /= mag(nw);
|
||||||
@ -140,7 +129,7 @@ void Foam::solidParticle::hitWallPatch
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Foam::solidParticle::transformProperties (const tensor& T)
|
void Foam::solidParticle::transformProperties(const tensor& T)
|
||||||
{
|
{
|
||||||
particle::transformProperties(T);
|
particle::transformProperties(T);
|
||||||
U_ = transform(T, U_);
|
U_ = transform(T, U_);
|
||||||
|
|||||||
@ -196,29 +196,14 @@ public:
|
|||||||
|
|
||||||
//- Overridable function to handle the particle hitting a patch
|
//- Overridable function to handle the particle hitting a patch
|
||||||
// Executed before other patch-hitting functions
|
// Executed before other patch-hitting functions
|
||||||
bool hitPatch
|
bool hitPatch(solidParticleCloud& cloud, trackingData& td);
|
||||||
(
|
|
||||||
const polyPatch&,
|
|
||||||
solidParticleCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
// processorPatch
|
// processorPatch
|
||||||
void hitProcessorPatch
|
void hitProcessorPatch(solidParticleCloud& cloud, trackingData& td);
|
||||||
(
|
|
||||||
const processorPolyPatch&,
|
|
||||||
solidParticleCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a wallPatch
|
//- Overridable function to handle the particle hitting a wallPatch
|
||||||
void hitWallPatch
|
void hitWallPatch(solidParticleCloud& cloud, trackingData& td);
|
||||||
(
|
|
||||||
const wallPolyPatch&,
|
|
||||||
solidParticleCloud& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Transform the physical properties of the particle
|
//- Transform the physical properties of the particle
|
||||||
// according to the given transformation tensor
|
// according to the given transformation tensor
|
||||||
|
|||||||
@ -154,12 +154,7 @@ bool Foam::trackedParticle::move
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool Foam::trackedParticle::hitPatch
|
bool Foam::trackedParticle::hitPatch(Cloud<trackedParticle>&, trackingData&)
|
||||||
(
|
|
||||||
const polyPatch&,
|
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -167,8 +162,7 @@ bool Foam::trackedParticle::hitPatch
|
|||||||
|
|
||||||
void Foam::trackedParticle::hitWedgePatch
|
void Foam::trackedParticle::hitWedgePatch
|
||||||
(
|
(
|
||||||
const wedgePolyPatch&,
|
Cloud<trackedParticle>&,
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -179,8 +173,7 @@ void Foam::trackedParticle::hitWedgePatch
|
|||||||
|
|
||||||
void Foam::trackedParticle::hitSymmetryPlanePatch
|
void Foam::trackedParticle::hitSymmetryPlanePatch
|
||||||
(
|
(
|
||||||
const symmetryPlanePolyPatch&,
|
Cloud<trackedParticle>&,
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -191,8 +184,7 @@ void Foam::trackedParticle::hitSymmetryPlanePatch
|
|||||||
|
|
||||||
void Foam::trackedParticle::hitSymmetryPatch
|
void Foam::trackedParticle::hitSymmetryPatch
|
||||||
(
|
(
|
||||||
const symmetryPolyPatch&,
|
Cloud<trackedParticle>&,
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -203,8 +195,7 @@ void Foam::trackedParticle::hitSymmetryPatch
|
|||||||
|
|
||||||
void Foam::trackedParticle::hitCyclicPatch
|
void Foam::trackedParticle::hitCyclicPatch
|
||||||
(
|
(
|
||||||
const cyclicPolyPatch&,
|
Cloud<trackedParticle>&,
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -215,10 +206,9 @@ void Foam::trackedParticle::hitCyclicPatch
|
|||||||
|
|
||||||
void Foam::trackedParticle::hitCyclicAMIPatch
|
void Foam::trackedParticle::hitCyclicAMIPatch
|
||||||
(
|
(
|
||||||
const cyclicAMIPolyPatch&,
|
Cloud<trackedParticle>&,
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td,
|
trackingData& td,
|
||||||
const vector&
|
const vector& direction
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
// Remove particle
|
// Remove particle
|
||||||
@ -228,8 +218,7 @@ void Foam::trackedParticle::hitCyclicAMIPatch
|
|||||||
|
|
||||||
void Foam::trackedParticle::hitCyclicACMIPatch
|
void Foam::trackedParticle::hitCyclicACMIPatch
|
||||||
(
|
(
|
||||||
const cyclicACMIPolyPatch&,
|
Cloud<trackedParticle>&,
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td,
|
trackingData& td,
|
||||||
const vector&
|
const vector&
|
||||||
)
|
)
|
||||||
@ -241,8 +230,7 @@ void Foam::trackedParticle::hitCyclicACMIPatch
|
|||||||
|
|
||||||
void Foam::trackedParticle::hitProcessorPatch
|
void Foam::trackedParticle::hitProcessorPatch
|
||||||
(
|
(
|
||||||
const processorPolyPatch&,
|
Cloud<trackedParticle>&,
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -253,8 +241,7 @@ void Foam::trackedParticle::hitProcessorPatch
|
|||||||
|
|
||||||
void Foam::trackedParticle::hitWallPatch
|
void Foam::trackedParticle::hitWallPatch
|
||||||
(
|
(
|
||||||
const wallPolyPatch& wpp,
|
Cloud<trackedParticle>&,
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td
|
trackingData& td
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -242,88 +242,50 @@ public:
|
|||||||
//- Track all particles to their end point
|
//- Track all particles to their end point
|
||||||
bool move(Cloud<trackedParticle>&, trackingData&, const scalar);
|
bool move(Cloud<trackedParticle>&, trackingData&, const scalar);
|
||||||
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a patch
|
//- Overridable function to handle the particle hitting a patch
|
||||||
// Executed before other patch-hitting functions
|
// Executed before other patch-hitting functions
|
||||||
bool hitPatch
|
bool hitPatch(Cloud<trackedParticle>&, trackingData&);
|
||||||
(
|
|
||||||
const polyPatch&,
|
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a wedge
|
//- Overridable function to handle the particle hitting a wedge
|
||||||
void hitWedgePatch
|
void hitWedgePatch(Cloud<trackedParticle>&, trackingData&);
|
||||||
(
|
|
||||||
const wedgePolyPatch&,
|
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
// symmetry plane
|
// symmetry plane
|
||||||
void hitSymmetryPlanePatch
|
void hitSymmetryPlanePatch(Cloud<trackedParticle>&, trackingData&);
|
||||||
(
|
|
||||||
const symmetryPlanePolyPatch&,
|
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
// symmetry patch
|
// symmetry patch
|
||||||
void hitSymmetryPatch
|
void hitSymmetryPatch(Cloud<trackedParticle>&, trackingData&);
|
||||||
(
|
|
||||||
const symmetryPolyPatch&,
|
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a cyclic
|
//- Overridable function to handle the particle hitting a cyclic
|
||||||
void hitCyclicPatch
|
void hitCyclicPatch(Cloud<trackedParticle>&, trackingData&);
|
||||||
(
|
|
||||||
const cyclicPolyPatch&,
|
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a cyclicAMI
|
//- Overridable function to handle the particle hitting a cyclicAMI
|
||||||
void hitCyclicAMIPatch
|
void hitCyclicAMIPatch
|
||||||
(
|
(
|
||||||
const cyclicAMIPolyPatch&,
|
Cloud<trackedParticle>&,
|
||||||
Cloud<trackedParticle>& cloud,
|
trackingData&,
|
||||||
trackingData& td,
|
|
||||||
const vector&
|
const vector&
|
||||||
);
|
);
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a cyclicACMI
|
//- Overridable function to handle the particle hitting a cyclicACMI
|
||||||
void hitCyclicACMIPatch
|
void hitCyclicACMIPatch
|
||||||
(
|
(
|
||||||
const cyclicACMIPolyPatch&,
|
Cloud<trackedParticle>&,
|
||||||
Cloud<trackedParticle>& cloud,
|
trackingData&,
|
||||||
trackingData& td,
|
|
||||||
const vector&
|
const vector&
|
||||||
);
|
);
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a
|
//- Overridable function to handle the particle hitting a
|
||||||
//- processorPatch
|
//- processorPatch
|
||||||
void hitProcessorPatch
|
void hitProcessorPatch(Cloud<trackedParticle>&, trackingData&);
|
||||||
(
|
|
||||||
const processorPolyPatch&,
|
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Overridable function to handle the particle hitting a wallPatch
|
//- Overridable function to handle the particle hitting a wallPatch
|
||||||
void hitWallPatch
|
void hitWallPatch(Cloud<trackedParticle>&, trackingData&);
|
||||||
(
|
|
||||||
const wallPolyPatch&,
|
|
||||||
Cloud<trackedParticle>& cloud,
|
|
||||||
trackingData& td
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Convert processor patch addressing to the global equivalents
|
//- Convert processor patch addressing to the global equivalents
|
||||||
// and set the celli to the face-neighbour
|
// and set the celli to the face-neighbour
|
||||||
void correctAfterParallelTransfer(const label, trackingData& td);
|
void correctAfterParallelTransfer(const label, trackingData&);
|
||||||
|
|
||||||
|
|
||||||
// Ostream Operator
|
// Ostream Operator
|
||||||
|
|||||||
Reference in New Issue
Block a user