diff --git a/apps/gpu/LBM/ActuatorLine/ActuatorLine.cpp b/apps/gpu/LBM/ActuatorLine/ActuatorLine.cpp index 820b6d8d4ed0eb0a5429d56d63f5ef159b83a87d..77fa287383de3e1f19801af8ed78be9d02d46fba 100644 --- a/apps/gpu/LBM/ActuatorLine/ActuatorLine.cpp +++ b/apps/gpu/LBM/ActuatorLine/ActuatorLine.cpp @@ -132,7 +132,7 @@ void multipleLevel(const std::string& configPath) const real viscosity = 1.56e-5; - const real mach = 0.2; + const real mach = 0.1; const float tStartOut = config.getValue<real>("tStartOut"); @@ -164,10 +164,9 @@ void multipleLevel(const std::string& configPath) para->setMaxLevel(2); scalingFactory.setScalingFactory(GridScalingFactory::GridScaling::ScaleCompressible); - std::string stlPath = "./VirtualFluids_dev/apps/gpu/LBM/ActuatorLine/Pole.stl"; - - Object *sphere = TriangularMesh::make(stlPath); - gridBuilder->addGeometry(sphere); + // std::string stlPath = "./VirtualFluids_dev/apps/gpu/LBM/ActuatorLine/Pole.stl"; + // Object *sphere = TriangularMesh::make(stlPath); + // gridBuilder->addGeometry(sphere); gridBuilder->setPeriodicBoundaryCondition(false, false, false); @@ -189,6 +188,7 @@ void multipleLevel(const std::string& configPath) VF_LOG_INFO("velocity [m/s] = {}", velocity); VF_LOG_INFO("velocity [dx/dt] = {}", velocityLB); VF_LOG_INFO("viscosity [10^8 dx^2/dt] = {}", viscosityLB*1e8); + VF_LOG_INFO("Ma = {}", mach); VF_LOG_INFO("nodes/turbine diameter = {}", reference_diameter/dx); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -227,15 +227,16 @@ void multipleLevel(const std::string& configPath) ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// gridBuilder->setVelocityBoundaryCondition(SideType::MX, velocityLB, 0.0, 0.0); - gridBuilder->setVelocityBoundaryCondition(SideType::MY, 0.0, 0.0, 0.0); + gridBuilder->setSlipBoundaryCondition(SideType::MY,0.0, 0.0, 0.0 ); gridBuilder->setVelocityBoundaryCondition(SideType::PY, velocityLB, 0.0, 0.0); gridBuilder->setVelocityBoundaryCondition(SideType::MZ, velocityLB, 0.0, 0.0); gridBuilder->setVelocityBoundaryCondition(SideType::PZ, velocityLB, 0.0, 0.0); gridBuilder->setPressureBoundaryCondition(SideType::PX, 0.0); - gridBuilder->setVelocityBoundaryCondition(SideType::GEOMETRY, 0.0, 0.0, 0.0); - bcFactory.setGeometryBoundaryCondition(BoundaryConditionFactory::NoSlipBC::NoSlipCompressible); + // gridBuilder->setVelocityBoundaryCondition(SideType::GEOMETRY, 0.0, 0.0, 0.0); + // bcFactory.setGeometryBoundaryCondition(BoundaryConditionFactory::NoSlipBC::NoSlipCompressible); + bcFactory.setSlipBoundaryCondition(BoundaryConditionFactory::SlipBC::SlipCompressible); bcFactory.setVelocityBoundaryCondition(BoundaryConditionFactory::VelocityBC::VelocityAndPressureCompressible); bcFactory.setPressureBoundaryCondition(BoundaryConditionFactory::PressureBC::OutflowNonReflective); @@ -247,10 +248,11 @@ void multipleLevel(const std::string& configPath) //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// int level = 1; // grid level at which the turbine samples velocities and distributes forces - const real epsilon = dx*exp2(-level)*1.5; // width of gaussian smearing + const real epsilon = dx*exp2(-level)*2.0; // width of gaussian smearing const real density = 1.225f; const uint nBlades = 3; - const uint nBladeNodes = 401; // passt zu auflösung von 105 Knoten + const uint nBladeNodes = 404; // passt zu auflösung von 105 Knoten + VF_LOG_INFO("number of blade nodes ALM = {}", nBladeNodes); const real tipspeed_ratio = 7.5f; // tipspeed ratio = angular vel * radius / inflow vel const real omega = 2*tipspeed_ratio*velocity/reference_diameter; diff --git a/apps/gpu/LBM/ActuatorLine/configActuatorLine.txt b/apps/gpu/LBM/ActuatorLine/configActuatorLine.txt index a9b33144e46d22a1ceca926fd9f45e675ec260b1..f637c47f2300e52c482ef1e34deca8109a5bcd04 100644 --- a/apps/gpu/LBM/ActuatorLine/configActuatorLine.txt +++ b/apps/gpu/LBM/ActuatorLine/configActuatorLine.txt @@ -12,8 +12,8 @@ NodesPerDiameter=105 Velocity=9 ################################################## tStartOut=0 -tOut=10000 -tEnd=10000 +tOut=5000 +tEnd=5000 ################################################## # tStartTmpAveraging=100 diff --git a/src/gpu/VirtualFluids_GPU/LBM/Simulation.cpp b/src/gpu/VirtualFluids_GPU/LBM/Simulation.cpp index 74e37b4cb530d672bc4c077367e025ca620a174f..83f39ee8248f3fc84bf45aa6c95f796ea6f85a61 100644 --- a/src/gpu/VirtualFluids_GPU/LBM/Simulation.cpp +++ b/src/gpu/VirtualFluids_GPU/LBM/Simulation.cpp @@ -370,8 +370,8 @@ void Simulation::init(GridProvider &gridProvider, BoundaryConditionFactory *bcFa ////////////////////////////////////////////////////////////////////////// // Write Initialized Files ////////////////////////////////////////////////////////////////////////// - VF_LOG_INFO("Write initialized Files ..."); - dataWriter->writeInit(para, cudaMemoryManager); + // VF_LOG_INFO("Write initialized Files ..."); + // dataWriter->writeInit(para, cudaMemoryManager); if (para->getCalcParticles()) copyAndPrintParticles(para.get(), cudaMemoryManager.get(), 0, true); VF_LOG_INFO("... done.");