Commit b04bc4c1 authored by Andrew Heather's avatar Andrew Heather
Browse files

added hitPatch() routines

parent 8b5e1619
......@@ -78,6 +78,17 @@ bool Foam::DsmcParcel<ParcelType>::move
}
template<class ParcelType>
template<class TrackData>
void Foam::DsmcParcel<ParcelType>::hitPatch
(
const polyPatch&,
TrackData& td,
const label patchI
)
{}
template<class ParcelType>
template<class TrackData>
void Foam::DsmcParcel<ParcelType>::hitProcessorPatch
......
......@@ -239,6 +239,16 @@ public:
// Patch interactions
//- Overridable function to handle the particle hitting a patch
// Executed before other patch-hitting functions
template<class TrackData>
void hitPatch
(
const polyPatch&,
TrackData& td,
const label patchI
);
//- Overridable function to handle the particle hitting a
// processorPatch
template<class TrackData>
......
......@@ -241,6 +241,24 @@ void Foam::molecule::setSiteSizes(label size)
}
void Foam::molecule::hitPatch
(
const polyPatch&,
molecule::trackData&,
const label
)
{}
void Foam::molecule::hitPatch
(
const polyPatch&,
int&,
const label
)
{}
void Foam::molecule::hitProcessorPatch
(
const processorPolyPatch&,
......
......@@ -256,7 +256,8 @@ public:
// Member Functions
//- Tracking
// Tracking
bool move(trackData&);
void transformProperties(const tensor& T);
......@@ -267,6 +268,7 @@ public:
void setSiteSizes(label size);
// Access
inline const tensor& Q() const;
......@@ -305,8 +307,27 @@ public:
inline label id() const;
// Member Operators
//- Overridable function to handle the particle hitting a patch
// Executed before other patch-hitting functions
void hitPatch
(
const polyPatch&,
molecule::trackData& td,
const label patchI
);
//- Overridable function to handle the particle hitting a patch
// Executed before other patch-hitting functions without trackData
void hitPatch
(
const polyPatch& p,
int& td,
const label patchI
);
//- Overridable function to handle the particle hitting a processorPatch
void hitProcessorPatch
(
......
......@@ -98,6 +98,24 @@ bool Foam::solidParticle::move(solidParticle::trackData& td)
}
void Foam::solidParticle::hitPatch
(
const polyPatch&,
solidParticle::trackData&,
const label
)
{}
void Foam::solidParticle::hitPatch
(
const polyPatch&,
int&,
const label
)
{}
void Foam::solidParticle::hitProcessorPatch
(
const processorPolyPatch&,
......
......@@ -163,68 +163,91 @@ public:
inline scalar wallImpactDistance(const vector& n) const;
//- Tracking
bool move(trackData&);
// Tracking
//- Move
bool move(trackData&);
//- Overridable function to handle the particle hitting a processorPatch
void hitProcessorPatch
(
const processorPolyPatch&,
solidParticle::trackData& td
);
//- Overridable function to handle the particle hitting a processorPatch
//- without trackData
void hitProcessorPatch
(
const processorPolyPatch&,
int&
);
// Patch interactions
//- Overridable function to handle the particle hitting a wallPatch
void hitWallPatch
(
const wallPolyPatch&,
solidParticle::trackData& td
);
//- Overridable function to handle the particle hitting a patch
// Executed before other patch-hitting functions
void hitPatch
(
const polyPatch&,
solidParticle::trackData& td,
const label patchI
);
//- Overridable function to handle the particle hitting a wallPatch
//- without trackData
void hitWallPatch
(
const wallPolyPatch&,
int&
);
//- Overridable function to handle the particle hitting a patch
// Executed before other patch-hitting functions without trackData
void hitPatch
(
const polyPatch& p,
int& td,
const label patchI
);
//- Overridable function to handle the particle hitting a polyPatch
void hitPatch
(
const polyPatch&,
solidParticle::trackData& td
);
//- Overridable function to handle the particle hitting a
// processorPatch
void hitProcessorPatch
(
const processorPolyPatch&,
solidParticle::trackData& td
);
//- Overridable function to handle the particle hitting a polyPatch
//- without trackData
void hitPatch
(
const polyPatch&,
int&
);
//- Overridable function to handle the particle hitting a
// processorPatch without trackData
void hitProcessorPatch
(
const processorPolyPatch&,
int&
);
//- Transform the physical properties of the particle
// according to the given transformation tensor
void transformProperties
(
const tensor& T
);
//- Overridable function to handle the particle hitting a wallPatch
void hitWallPatch
(
const wallPolyPatch&,
solidParticle::trackData& td
);
//- Transform the physical properties of the particle
// according to the given separation vector
void transformProperties
(
const vector& separation
);
//- Overridable function to handle the particle hitting a wallPatch
//- without trackData
void hitWallPatch
(
const wallPolyPatch&,
int&
);
//- Overridable function to handle the particle hitting a polyPatch
void hitPatch
(
const polyPatch&,
solidParticle::trackData& td
);
//- Overridable function to handle the particle hitting a polyPatch
//- without trackData
void hitPatch
(
const polyPatch&,
int&
);
//- Transform the physical properties of the particle
// according to the given transformation tensor
void transformProperties
(
const tensor& T
);
//- Transform the physical properties of the particle
// according to the given separation vector
void transformProperties
(
const vector& separation
);
// I-O
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment