From 21afa958a4cbf02f69421a725b2f065b5d05b4da Mon Sep 17 00:00:00 2001
From: Armin Wehrfritz <armin.wehrfritz@aalto.fi>
Date: Tue, 13 Aug 2013 23:25:40 +0300
Subject: [PATCH] Fix mass losses

---
 .../parcels/Templates/ReactingParcel/ReactingParcel.C            |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.C b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.C
index 29e0940..1e68dc1 100644
--- a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.C
+++ b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.C
@@ -371,13 +371,13 @@ void Foam::ReactingParcel<ParcelType>::calc
     }
 
     // Remove the particle when mass falls below minimum threshold
-    if (np0*mass1 < td.cloud().constProps().minParticleMass())
+    if (mag(np0*mass1 - td.cloud().constProps().minParticleMass()) < SMALL)
     {
         td.keepParticle = false;
 
         if (td.cloud().solution().coupled())
         {
-            scalar dm = np0*mass1;
+            scalar dm = np0*mass0;
 
             // Absorb parcel into carrier phase
             forAll(Y_, i)
@@ -391,7 +391,7 @@ void Foam::ReactingParcel<ParcelType>::calc
             }
             td.cloud().UTrans()[cellI] += dm*U0;
 
-            td.cloud().phaseChange().addToPhaseChangeMass(dm);
+            td.cloud().phaseChange().addToPhaseChangeMass(np0*mass1);
         }
 
         return;
-- 
1.7.10.4

