diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.C b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.C index f318c5c73d..0248e4375d 100644 --- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.C +++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.C @@ -85,6 +85,8 @@ void Foam::KinematicParcel::calc const scalar rho0 = rho_; const scalar mass0 = mass(); + const polyMesh& mesh = this->cloud().pMesh(); + // Initialise transfer terms // ~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -104,6 +106,9 @@ void Foam::KinematicParcel::calc vector U1 = calcVelocity(td, dt, cellI, d0, U0, rho0, mass0, Fx, Cud, dUTrans); + // Constrain the new velocity for reduced -D cases + meshTools::constrainDirection(mesh, mesh.solutionD(), U1); + // Accumulate carrier phase source terms // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~