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;