Skip to content
Snippets Groups Projects
Commit e3cfb269 authored by Anna Wellmann's avatar Anna Wellmann
Browse files

Merge branch 'testNodeNumberInBCs' into 'develop'

Use the correct number of nodes for boundary conditions in GridGenerator

See merge request irmb/VirtualFluids_dev!223
parents 0a8d0d98 f23ffe40
No related branches found
No related tags found
1 merge request!223Use the correct number of nodes for boundary conditions in GridGenerator
...@@ -201,7 +201,6 @@ void GridGenerator::sortFluidNodeTags() { ...@@ -201,7 +201,6 @@ void GridGenerator::sortFluidNodeTags() {
void GridGenerator::allocArrays_BoundaryValues() void GridGenerator::allocArrays_BoundaryValues()
{ {
VF_LOG_TRACE("-----alloc BoundaryValues------"); VF_LOG_TRACE("-----alloc BoundaryValues------");
int blocks;
for (uint level = 0; level < builder->getNumberOfGridLevels(); level++) { for (uint level = 0; level < builder->getNumberOfGridLevels(); level++) {
const auto numberOfPressureValues = int(builder->getPressureSize(level)); const auto numberOfPressureValues = int(builder->getPressureSize(level));
...@@ -212,8 +211,7 @@ void GridGenerator::allocArrays_BoundaryValues() ...@@ -212,8 +211,7 @@ void GridGenerator::allocArrays_BoundaryValues()
para->getParD(level)->outflowPressureCorrectionFactor = para->getOutflowPressureCorrectionFactor(); para->getParD(level)->outflowPressureCorrectionFactor = para->getOutflowPressureCorrectionFactor();
if (numberOfPressureValues > 1) if (numberOfPressureValues > 1)
{ {
blocks = (numberOfPressureValues / para->getParH(level)->numberofthreads) + 1; para->getParH(level)->pressureBC.numberOfBCnodes = numberOfPressureValues;
para->getParH(level)->pressureBC.numberOfBCnodes = blocks * para->getParH(level)->numberofthreads;
cudaMemoryManager->cudaAllocPress(level); cudaMemoryManager->cudaAllocPress(level);
builder->getPressureValues(para->getParH(level)->pressureBC.RhoBC, para->getParH(level)->pressureBC.k, para->getParH(level)->pressureBC.kN, level); builder->getPressureValues(para->getParH(level)->pressureBC.RhoBC, para->getParH(level)->pressureBC.k, para->getParH(level)->pressureBC.kN, level);
cudaMemoryManager->cudaCopyPress(level); cudaMemoryManager->cudaCopyPress(level);
...@@ -229,9 +227,9 @@ void GridGenerator::allocArrays_BoundaryValues() ...@@ -229,9 +227,9 @@ void GridGenerator::allocArrays_BoundaryValues()
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
para->getParH(level)->slipBC.numberOfBCnodes = 0; para->getParH(level)->slipBC.numberOfBCnodes = 0;
if (numberOfSlipValues > 1) { if (numberOfSlipValues > 1)
blocks = (numberOfSlipValues / para->getParH(level)->numberofthreads) + 1; {
para->getParH(level)->slipBC.numberOfBCnodes = blocks * para->getParH(level)->numberofthreads; para->getParH(level)->slipBC.numberOfBCnodes = numberOfSlipValues;
cudaMemoryManager->cudaAllocSlipBC(level); cudaMemoryManager->cudaAllocSlipBC(level);
builder->getSlipValues(para->getParH(level)->slipBC.normalX, para->getParH(level)->slipBC.normalY, builder->getSlipValues(para->getParH(level)->slipBC.normalX, para->getParH(level)->slipBC.normalY,
para->getParH(level)->slipBC.normalZ, para->getParH(level)->slipBC.k, level); para->getParH(level)->slipBC.normalZ, para->getParH(level)->slipBC.k, level);
...@@ -250,8 +248,7 @@ void GridGenerator::allocArrays_BoundaryValues() ...@@ -250,8 +248,7 @@ void GridGenerator::allocArrays_BoundaryValues()
para->getParH(level)->stressBC.numberOfBCnodes = 0; para->getParH(level)->stressBC.numberOfBCnodes = 0;
if (numberOfStressValues > 1) if (numberOfStressValues > 1)
{ {
blocks = (numberOfStressValues / para->getParH(level)->numberofthreads) + 1; para->getParH(level)->stressBC.numberOfBCnodes = numberOfStressValues;
para->getParH(level)->stressBC.numberOfBCnodes = blocks * para->getParH(level)->numberofthreads;
cudaMemoryManager->cudaAllocStressBC(level); cudaMemoryManager->cudaAllocStressBC(level);
cudaMemoryManager->cudaAllocWallModel(level, para->getHasWallModelMonitor()); cudaMemoryManager->cudaAllocWallModel(level, para->getHasWallModelMonitor());
builder->getStressValues( para->getParH(level)->stressBC.normalX, para->getParH(level)->stressBC.normalY, para->getParH(level)->stressBC.normalZ, builder->getStressValues( para->getParH(level)->stressBC.normalX, para->getParH(level)->stressBC.normalY, para->getParH(level)->stressBC.normalZ,
...@@ -279,8 +276,7 @@ void GridGenerator::allocArrays_BoundaryValues() ...@@ -279,8 +276,7 @@ void GridGenerator::allocArrays_BoundaryValues()
if (numberOfVelocityValues > 1) if (numberOfVelocityValues > 1)
{ {
blocks = (numberOfVelocityValues / para->getParH(level)->numberofthreads) + 1; para->getParH(level)->velocityBC.numberOfBCnodes = numberOfVelocityValues;
para->getParH(level)->velocityBC.numberOfBCnodes = blocks * para->getParH(level)->numberofthreads;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
cudaMemoryManager->cudaAllocVeloBC(level); cudaMemoryManager->cudaAllocVeloBC(level);
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
...@@ -328,7 +324,7 @@ void GridGenerator::allocArrays_BoundaryValues() ...@@ -328,7 +324,7 @@ void GridGenerator::allocArrays_BoundaryValues()
const auto numberOfPrecursorValues = int(builder->getPrecursorSize(level)); const auto numberOfPrecursorValues = int(builder->getPrecursorSize(level));
VF_LOG_INFO("size precursor level {}: {}", level, numberOfPrecursorValues); VF_LOG_INFO("size precursor level {}: {}", level, numberOfPrecursorValues);
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
blocks = (numberOfPrecursorValues / para->getParH(level)->numberofthreads) + 1; auto blocks = (numberOfPrecursorValues / para->getParH(level)->numberofthreads) + 1;
para->getParH(level)->precursorBC.sizeQ = blocks * para->getParH(level)->numberofthreads; para->getParH(level)->precursorBC.sizeQ = blocks * para->getParH(level)->numberofthreads;
para->getParD(level)->precursorBC.sizeQ = para->getParH(level)->precursorBC.sizeQ; para->getParD(level)->precursorBC.sizeQ = para->getParH(level)->precursorBC.sizeQ;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
...@@ -429,9 +425,8 @@ void GridGenerator::allocArrays_BoundaryValues() ...@@ -429,9 +425,8 @@ void GridGenerator::allocArrays_BoundaryValues()
para->getParH(level)->geometryBC.numberOfBCnodes = 0; para->getParH(level)->geometryBC.numberOfBCnodes = 0;
if (numberOfGeometryValues > 0) if (numberOfGeometryValues > 0)
{ {;
blocks = (numberOfGeometryValues / para->getParH(level)->numberofthreads) + 1; para->getParH(level)->geometryBC.numberOfBCnodes = numberOfGeometryValues;
para->getParH(level)->geometryBC.numberOfBCnodes = blocks * para->getParH(level)->numberofthreads;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
cudaMemoryManager->cudaAllocGeomValuesBC(level); cudaMemoryManager->cudaAllocGeomValuesBC(level);
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment