diff --git a/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.C b/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.C
index 3221257012726cac119b2e61c00ecb7ce6172566..4f8a5f94259e5013dcf1af1220102bfb8e429377 100644
--- a/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.C
+++ b/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.C
@@ -187,6 +187,24 @@ labelList volBSplinesBase::getStartCpID() const
 }
 
 
+label volBSplinesBase::findBoxID(const label cpI) const
+{
+    const labelList startCPID(getStartCpID());
+    for (label iBox = 0; iBox < startCPID.size() - 1 ; ++iBox)
+    {
+        if (cpI >= startCPID[iBox] || cpI < startCPID[iBox + 1])
+        {
+            return iBox;
+        }
+    }
+
+    FatalErrorInFunction
+        << "Invalid control point ID " << cpI << endl
+        << exit(FatalError);
+    return -1;
+}
+
+
 const Foam::labelList& volBSplinesBase::getActiveDesignVariables() const
 {
     return activeDesignVariables_;
diff --git a/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.H b/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.H
index b880a932ce2051bc474cca220800adfeaae9bd94..d6fc19d6169a0a73cb4fb00238136d03818fb390 100644
--- a/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.H
+++ b/src/optimisation/adjointOptimisation/adjoint/parameterization/NURBS/NURBS3DVolume/volBSplinesBase/volBSplinesBase.H
@@ -129,6 +129,9 @@ public:
         //- Get start CP ID for each box
         labelList getStartCpID() const;
 
+        //- Find box of certain control point
+        label findBoxID(const label cpI) const;
+
         //- Get active design variables
         const labelList& getActiveDesignVariables() const;