From d5cb528bf78aece317deefc1da263dc5a691f27d Mon Sep 17 00:00:00 2001 From: graham Date: Wed, 14 Apr 2010 16:12:04 +0100 Subject: [PATCH] ENH: PairCollision. Adding function to WallSpringSliderDashpot to control the number of subCycles. Adding the request for timestep control from the wall model to PairCollision. --- .../Templates/KinematicCloud/KinematicCloud.C | 2 + .../PairCollision/PairCollision.C | 23 +++++---- .../WallSpringSliderDashpot.C | 47 ++++++++++--------- .../WallSpringSliderDashpot.H | 2 +- 4 files changed, 41 insertions(+), 33 deletions(-) diff --git a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C index b72af41e73..486c0959dd 100644 --- a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C @@ -99,6 +99,8 @@ void Foam::KinematicCloud::evolveCloud() if (nSubCycles > 1) { + Info<< " " << nSubCycles << " move-collide subCycles" << endl; + subCycleTime moveCollideSubCycle ( const_cast(this->db().time()), diff --git a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairCollision.C b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairCollision.C index 76ca569acd..e4c4c299e3 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairCollision.C +++ b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairCollision.C @@ -521,24 +521,29 @@ Foam::PairCollision::~PairCollision() template Foam::label Foam::PairCollision::nSubCycles() const { + label nSubCycles = 1; + if (pairModel_->controlsTimestep()) { - label nSubCycles = returnReduce + label nPairSubCycles = returnReduce ( pairModel_->nSubCycles(), maxOp