mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Resetting tangential overlap when slip occurs
This commit is contained in:
@ -211,11 +211,34 @@ void Foam::SpringSliderDashpot<CloudType>::evaluatePair
|
|||||||
|
|
||||||
scalar& etaT = etaN;
|
scalar& etaT = etaN;
|
||||||
|
|
||||||
|
// // Tangential force
|
||||||
|
// vector fT_AB =
|
||||||
|
// -min(kT*mag(tangentialOverlap_AB), mu_*mag(fN_AB))
|
||||||
|
// *tangentialOverlap_AB/mag(tangentialOverlap_AB)
|
||||||
|
// - etaT*USlip_AB;
|
||||||
|
|
||||||
// Tangential force
|
// Tangential force
|
||||||
vector fT_AB =
|
vector fT_AB;
|
||||||
-min(kT*mag(tangentialOverlap_AB), mu_*mag(fN_AB))
|
|
||||||
*tangentialOverlap_AB/mag(tangentialOverlap_AB)
|
if (kT*mag(tangentialOverlap_AB) > mu_*mag(fN_AB))
|
||||||
- etaT*USlip_AB;
|
{
|
||||||
|
// Tangential force greater than sliding friction, particle slips
|
||||||
|
|
||||||
|
fT_AB =
|
||||||
|
-mu_*mag(fN_AB)
|
||||||
|
*tangentialOverlap_AB/mag(tangentialOverlap_AB)
|
||||||
|
- etaT*USlip_AB;
|
||||||
|
|
||||||
|
tangentialOverlap_AB = vector::zero;
|
||||||
|
tangentialOverlap_BA = vector::zero;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
fT_AB =
|
||||||
|
-kT*mag(tangentialOverlap_AB)
|
||||||
|
*tangentialOverlap_AB/mag(tangentialOverlap_AB)
|
||||||
|
- etaT*USlip_AB;
|
||||||
|
}
|
||||||
|
|
||||||
pA.f() += fT_AB;
|
pA.f() += fT_AB;
|
||||||
pB.f() += -fT_AB;
|
pB.f() += -fT_AB;
|
||||||
|
|||||||
Reference in New Issue
Block a user