diff --git a/src/gpu/VirtualFluids_GPU/GPU/CudaKernelManager.cpp b/src/gpu/VirtualFluids_GPU/GPU/CudaKernelManager.cpp index ee0dd86267e49733b8e35b70c7b9a7106120cf5c..3202144810c83e913c2bf5881b967bf78b4675e2 100644 --- a/src/gpu/VirtualFluids_GPU/GPU/CudaKernelManager.cpp +++ b/src/gpu/VirtualFluids_GPU/GPU/CudaKernelManager.cpp @@ -89,6 +89,14 @@ void CudaKernelManager::runVelocityBCKernel(SPtr<Parameter> para) } } +void CudaKernelManager::runGeoBCKernel(SPtr<Parameter> para) +{ + if (para->getParD()->numberOfVeloBCnodes > 0) + { + // ... + } +} + void CudaKernelManager::calculateMacroscopicValues(SPtr<Parameter> para) { if (para->getIsADcalculationOn()) { diff --git a/src/gpu/VirtualFluids_GPU/GPU/CudaKernelManager.h b/src/gpu/VirtualFluids_GPU/GPU/CudaKernelManager.h index c257875521318615e2b6e59537de8bbb45ad0b70..622bdf135b08ec74b3b45936312ab32e6ac603e6 100644 --- a/src/gpu/VirtualFluids_GPU/GPU/CudaKernelManager.h +++ b/src/gpu/VirtualFluids_GPU/GPU/CudaKernelManager.h @@ -55,6 +55,9 @@ public: //! \brief calls the device function of the velocity boundary condition void runVelocityBCKernel(SPtr<Parameter> para); + //! \brief calls the device function of the geometry boundary condition + void runGeoBCKernel(SPtr<Parameter> para); + //! \brief calls the device function that calculates the macroscopic values void calculateMacroscopicValues(SPtr<Parameter> para); diff --git a/src/gpu/VirtualFluids_GPU/Parameter/Parameter.h b/src/gpu/VirtualFluids_GPU/Parameter/Parameter.h index 912c1c28314e66210ce5a293832be99563158dfd..533ab72b0d1d312e6ce096a6f507820443737fbd 100644 --- a/src/gpu/VirtualFluids_GPU/Parameter/Parameter.h +++ b/src/gpu/VirtualFluids_GPU/Parameter/Parameter.h @@ -84,6 +84,11 @@ struct ParameterStruct{ //! \brief number of lattice nodes for the velocity boundary condition uint numberOfVeloBCnodes; ////////////////////////////////////////////////////////////////////////// + //! \brief stores the geometry boundary condition data + QforBoundaryConditions geometryBC; + //! \brief number of lattice nodes for the velocity boundary condition + uint numberOfgeometryBCnodes; + ////////////////////////////////////////////////////////////////////////// //! \brief sets the forcing uniform on every fluid node in all three space dimensions real *forcing;