diff --git a/integration/OpenCFD/code/waveModel/waveModel/waveModel.C b/integration/OpenCFD/code/waveModel/waveModel/waveModel.C
index 96d234f49fdd2336dfca516ff88103e7a7ed9cbc..3d56459e36bb52bb367c06130ce966895c90f99d 100644
--- a/integration/OpenCFD/code/waveModel/waveModel/waveModel.C
+++ b/integration/OpenCFD/code/waveModel/waveModel/waveModel.C
@@ -276,6 +276,7 @@ Foam::waveModel::waveModel
     waterDepthRef_(0),
     initialDepth_(0),
     rampTime_(VSMALL),
+    currTimeIndex_(-1),
     activeAbsorption_(false),
     U_(patch.size(), vector::zero),
     alpha_(patch.size(), 0)
@@ -338,9 +339,7 @@ bool Foam::waveModel::read()
 
 void Foam::waveModel::correct(const scalar t)
 {
-    static label timeIndex = -1;
-
-    if (mesh_.time().timeIndex() != timeIndex)
+    if (mesh_.time().timeIndex() != currTimeIndex_)
     {
         Info<< "Updating " << type() << " wave model for patch "
             << patch_.name() << endl;
@@ -394,7 +393,7 @@ void Foam::waveModel::correct(const scalar t)
         // Transform velocity into global co-ordinate system
         U_ = Rlg_ & U_;
 
-        timeIndex = mesh_.time().timeIndex();
+        currTimeIndex_ = mesh_.time().timeIndex();
     }
 }
 
diff --git a/integration/OpenCFD/code/waveModel/waveModel/waveModel.H b/integration/OpenCFD/code/waveModel/waveModel/waveModel.H
index 077633ae373a4c31e855c9b18a47e576293603b5..dea8125e06abdbdfdf99612f4657a6a723bc63ac 100644
--- a/integration/OpenCFD/code/waveModel/waveModel/waveModel.H
+++ b/integration/OpenCFD/code/waveModel/waveModel/waveModel.H
@@ -114,9 +114,13 @@ protected:
         //- Ramp time
         scalar rampTime_;
 
+        //- Time index used for updating
+        label currTimeIndex_;
+
         //- Active wave absorption switch
         bool activeAbsorption_;
 
+
         // Current values
 
             //- Velocity field