From 5a42999f2867113fcbe2e591e29b5e96b6b12457 Mon Sep 17 00:00:00 2001 From: Anna Wellmann <a.wellmann@tu-bs.de> Date: Mon, 13 Jun 2022 15:47:59 +0000 Subject: [PATCH] Start adding geoBC --- src/gpu/VirtualFluids_GPU/GPU/CudaKernelManager.cpp | 8 ++++++++ src/gpu/VirtualFluids_GPU/GPU/CudaKernelManager.h | 3 +++ src/gpu/VirtualFluids_GPU/Parameter/Parameter.h | 5 +++++ 3 files changed, 16 insertions(+) diff --git a/src/gpu/VirtualFluids_GPU/GPU/CudaKernelManager.cpp b/src/gpu/VirtualFluids_GPU/GPU/CudaKernelManager.cpp index ee0dd8626..320214481 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 c25787552..622bdf135 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 912c1c283..533ab72b0 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; -- GitLab