diff --git a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17Sponge/CumulantK17Sponge_Device.cu b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17Sponge/CumulantK17Sponge_Device.cu
index 83c31acdbc9126b229f96ff27c95da4a93eb6787..f81c9643006c0ff8bba0743139adade2d57ba0a6 100644
--- a/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17Sponge/CumulantK17Sponge_Device.cu
+++ b/src/gpu/VirtualFluids_GPU/Kernel/Kernels/BasicKernels/FluidFlow/Compressible/CumulantK17Sponge/CumulantK17Sponge_Device.cu
@@ -342,6 +342,24 @@ __global__ void LB_Kernel_CumulantK17Sponge(
     //!
     real omega = omega_in;
     if(turbulenceModel != TurbulenceModel::None){ omega /= (c1o1 + c3o1*omega_in*turbulentViscosity[k_000]); }
+    ////////////////////////////////////////////////////////////////////////////////////
+    // Calculate modified omega for sponge layer
+    // sponge layer inflow
+    real startXsponge = 1507.0f;
+    real endXsponge = 1537.0f;
+    real sizeSponge = endXsponge - startXsponge;
+
+    if (coordX[k_000] > startXsponge) {
+        real spongeFactor = (((endXsponge - coordX[k_000]) / sizeSponge) * c1o2) + c1o2;
+        omega = spongeFactor * omega;
+    }
+    //sponge layer outflow
+    endXsponge = 30.0f;
+    if (coordX[k_000] < endXsponge) {
+        real spongeFactor = (((coordX[k_000]) / endXsponge) * c1o2) + c1o2;
+        omega = spongeFactor * omega;
+    }
+
     ////////////////////////////////////////////////////////////
     // 2.
     real OxxPyyPzz = c1o1;