Skip to content
Snippets Groups Projects
Commit d7e954b3 authored by Martin Schönherr's avatar Martin Schönherr :speech_balloon:
Browse files

delete VfReader and rename PositionReader to ReaderMeasurePoints

parent d64bcce1
No related branches found
No related tags found
1 merge request!302[GPU] CleanUp inits
#include "PositionReader.h"
#include "Parameter/Parameter.h"
#include <basics/utilities/UbFileInputASCII.h>
using namespace vf::lbm::dir;
//////////////////////////////////////////////////////////////////////////
void PositionReader::readMeasurePoints( Parameter* para )
{
UbFileInputASCII in(para->getmeasurePoints());
int numberOfAllNodes = in.readInteger();
in.readLine();
int tempLevel;
MeasurePoints tempMP;
//printf("done, init the values...\n");
for (int u = 0; u < numberOfAllNodes; u++)
{
tempMP.name = in.readString();
//printf("done, read the name...\n");
tempMP.k = in.readInteger();
//printf("done, read k...\n");
tempLevel = in.readInteger();
//printf("done, read level...\n");
in.readLine();
//printf("done, read the values...\n");
para->getParH(tempLevel)->MP.push_back(tempMP);
//printf("done, put it into a vector...\n");
}
}
#include "Init/VfReader.h" #include "ReaderMeasurePoints.h"
#include "Parameter/Parameter.h" #include "Parameter/Parameter.h"
#include "Init/PositionReader.h"
#include "GPU/CudaMemoryManager.h" #include "GPU/CudaMemoryManager.h"
//////////////////////////////////////////////////////////////////////////////// #include <basics/utilities/UbFileInputASCII.h>
void readMeasurePoints(Parameter* para, CudaMemoryManager* cudaMemoryManager)
using namespace vf::lbm::dir;
//////////////////////////////////////////////////////////////////////////
void ReaderMeasurePoints::readMeasurePoints( Parameter* para )
{ {
//read measure points from file UbFileInputASCII in(para->getmeasurePoints());
PositionReader::readMeasurePoints(para); int numberOfAllNodes = in.readInteger();
//printf("done, reading the file...\n"); in.readLine();
//level loop int tempLevel;
for (int lev = 0; lev <= para->getMaxLevel(); lev++) MeasurePoints tempMP;
//printf("done, init the values...\n");
for (int u = 0; u < numberOfAllNodes; u++)
{ {
//set Memory Size and malloc of the indices and macroscopic values per level tempMP.name = in.readString();
para->getParH(lev)->numberOfValuesMP = (unsigned int)para->getParH(lev)->MP.size()*(unsigned int)para->getclockCycleForMP()/((unsigned int)para->getTimestepForMP()); //printf("done, read the name...\n");
tempMP.k = in.readInteger();
//printf("done, read k...\n");
tempLevel = in.readInteger();
//printf("done, read level...\n");
in.readLine();
//printf("done, read the values...\n");
para->getParH(tempLevel)->MP.push_back(tempMP);
//printf("done, put it into a vector...\n");
}
}
////////////////////////////////////////////////////////////////////////////////
void ReaderMeasurePoints::readMeasurePoints(Parameter* para, CudaMemoryManager* cudaMemoryManager)
{
// read measure points from file
ReaderMeasurePoints::readMeasurePoints(para);
// printf("done, reading the file...\n");
// level loop
for (int lev = 0; lev <= para->getMaxLevel(); lev++) {
// set Memory Size and malloc of the indices and macroscopic values per level
para->getParH(lev)->numberOfValuesMP = (unsigned int)para->getParH(lev)->MP.size() *
(unsigned int)para->getclockCycleForMP() /
((unsigned int)para->getTimestepForMP());
para->getParD(lev)->numberOfValuesMP = para->getParH(lev)->numberOfValuesMP; para->getParD(lev)->numberOfValuesMP = para->getParH(lev)->numberOfValuesMP;
para->getParH(lev)->numberOfPointskMP = (int)para->getParH(lev)->MP.size(); para->getParH(lev)->numberOfPointskMP = (int)para->getParH(lev)->MP.size();
para->getParD(lev)->numberOfPointskMP = para->getParH(lev)->numberOfPointskMP; para->getParD(lev)->numberOfPointskMP = para->getParH(lev)->numberOfPointskMP;
para->getParH(lev)->memSizeIntkMP = sizeof(unsigned int)*(int)para->getParH(lev)->MP.size(); para->getParH(lev)->memSizeIntkMP = sizeof(unsigned int) * (int)para->getParH(lev)->MP.size();
para->getParD(lev)->memSizeIntkMP = para->getParH(lev)->memSizeIntkMP; para->getParD(lev)->memSizeIntkMP = para->getParH(lev)->memSizeIntkMP;
para->getParH(lev)->memSizerealkMP = sizeof(real)*para->getParH(lev)->numberOfValuesMP; para->getParH(lev)->memSizerealkMP = sizeof(real) * para->getParH(lev)->numberOfValuesMP;
para->getParD(lev)->memSizerealkMP = para->getParH(lev)->memSizerealkMP; para->getParD(lev)->memSizerealkMP = para->getParH(lev)->memSizerealkMP;
printf("Level: %d, numberOfValuesMP: %d, memSizeIntkMP: %d, memSizerealkMP: %d\n",lev,para->getParH(lev)->numberOfValuesMP,para->getParH(lev)->memSizeIntkMP, para->getParD(lev)->memSizerealkMP); printf("Level: %d, numberOfValuesMP: %d, memSizeIntkMP: %d, memSizerealkMP: %d\n", lev,
para->getParH(lev)->numberOfValuesMP, para->getParH(lev)->memSizeIntkMP, para->getParD(lev)->memSizerealkMP);
cudaMemoryManager->cudaAllocMeasurePointsIndex(lev); cudaMemoryManager->cudaAllocMeasurePointsIndex(lev);
//loop over all measure points per level // loop over all measure points per level
for(int index = 0; index < (int)para->getParH(lev)->MP.size(); index++) for (int index = 0; index < (int)para->getParH(lev)->MP.size(); index++) {
{ // set indices
//set indices
para->getParH(lev)->kMP[index] = para->getParH(lev)->MP[index].k; para->getParH(lev)->kMP[index] = para->getParH(lev)->MP[index].k;
} }
//loop over all measure points per level times MPClockCycle // loop over all measure points per level times MPClockCycle
for(int index = 0; index < (int)para->getParH(lev)->numberOfValuesMP; index++) for (int index = 0; index < (int)para->getParH(lev)->numberOfValuesMP; index++) {
{ // init values
//init values para->getParH(lev)->VxMP[index] = (real)0.0;
para->getParH(lev)->VxMP[index] = (real)0.0; para->getParH(lev)->VyMP[index] = (real)0.0;
para->getParH(lev)->VyMP[index] = (real)0.0; para->getParH(lev)->VzMP[index] = (real)0.0;
para->getParH(lev)->VzMP[index] = (real)0.0;
para->getParH(lev)->RhoMP[index] = (real)0.0; para->getParH(lev)->RhoMP[index] = (real)0.0;
} }
//copy indices-arrays // copy indices-arrays
cudaMemoryManager->cudaCopyMeasurePointsIndex(lev); cudaMemoryManager->cudaCopyMeasurePointsIndex(lev);
} }
} }
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
...@@ -2,11 +2,15 @@ ...@@ -2,11 +2,15 @@
#define POSITION_READER_H #define POSITION_READER_H
class Parameter; class Parameter;
class CudaMemoryManager;
class PositionReader class ReaderMeasurePoints
{ {
private:
static void readMeasurePoints(Parameter* para);
public: public:
static void readMeasurePoints(Parameter* para); static void readMeasurePoints(Parameter* para, CudaMemoryManager* cudaMemoryManager);
}; };
#endif #endif
\ No newline at end of file
#ifndef VF_READER_H
#define VF_READER_H
class CudaMemoryManager;
class Parameter;
void readMeasurePoints(Parameter* para, CudaMemoryManager* cudaMemoryManager);
#endif
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
#include "StringUtilities/StringUtil.h" #include "StringUtilities/StringUtil.h"
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
#include "Init/InitLattice.h" #include "Init/InitLattice.h"
#include "Init/VfReader.h" #include "Init/ReaderMeasurePoints.h"
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
#include "FindQ/FindQ.h" #include "FindQ/FindQ.h"
#include "FindQ/DefineBCs.h" #include "FindQ/DefineBCs.h"
...@@ -245,7 +245,7 @@ void Simulation::init(GridProvider &gridProvider, BoundaryConditionFactory *bcFa ...@@ -245,7 +245,7 @@ void Simulation::init(GridProvider &gridProvider, BoundaryConditionFactory *bcFa
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
if (para->getUseMeasurePoints()) { if (para->getUseMeasurePoints()) {
VF_LOG_INFO("read measure points"); VF_LOG_INFO("read measure points");
readMeasurePoints(para.get(), cudaMemoryManager.get()); ReaderMeasurePoints::readMeasurePoints(para.get(), cudaMemoryManager.get());
} }
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
......
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