diff --git a/src/GridGenerator/grid/GridBuilder/GridBuilder.h b/src/GridGenerator/grid/GridBuilder/GridBuilder.h index e4bfdc26498e5e7eaea276f82c83d4528adec93d..78521d070e9c329cc2190b7df8fdce169aee25b2 100644 --- a/src/GridGenerator/grid/GridBuilder/GridBuilder.h +++ b/src/GridGenerator/grid/GridBuilder/GridBuilder.h @@ -42,8 +42,6 @@ public: virtual VF_PUBLIC uint getNumberOfGridLevels() = 0; - virtual void writeGridToVTK(std::string output, int level) = 0; - virtual void writeSimulationFiles(std::string output, BoundingBox &nodesDelete, bool writeFilesBinary, int level) = 0; virtual void writeArrows(std::string fileName, std::shared_ptr<ArrowTransformator> trans) const = 0; virtual SPtr<Grid> getGrid(uint level) = 0; diff --git a/src/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp b/src/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp index b258b3215199ecd61322770494c9a62e49274593..b5badc0a3b1b437573f8b3690a185a27a5c314e4 100644 --- a/src/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp +++ b/src/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp @@ -19,12 +19,10 @@ #include <GridGenerator/grid/NodeValues.h> #include <GridGenerator/geometries/Arrow/ArrowImp.h> -#include <GridGenerator/utilities/Transformator/ArrowTransformator.h> +#include <GridGenerator/utilities/transformator/ArrowTransformator.h> #include <utilities/logger/Logger.h> - - #include <GridGenerator/grid/GridFactory.h> #include "grid/GridInterface.h" //#include "grid/GridMocks.h" @@ -152,24 +150,6 @@ std::vector<std::string> LevelGridBuilder::getTypeOfBoundaryConditions() const return this->channelBoundaryConditions; } -void LevelGridBuilder::writeGridToVTK(std::string output, int level) -{ - checkLevel(level); - GridVTKWriter::writeGridToVTKXML(grids[level], output); - GridVTKWriter::writeSparseGridToVTK(grids[level], output); -} - - -void LevelGridBuilder::writeSimulationFiles(std::string output, BoundingBox &nodesDelete, bool writeFilesBinary, int level) -{ - //checkLevel(level); - //UnstructuredLevelGridBuilder builder; - //builder.buildUnstructuredGrid(this->gridKernels[level]->grid, nodesDelete); - - //std::vector<Node> coords = builder.getCoordsVec(); - //std::vector<std::vector<std::vector<real> > > qs = builder.getQsValues(); - //SimulationFileWriter::writeSimulationFiles(output, coords, qs, writeFilesBinary, this->gridKernels[level]->grid, this->transformators[level]); -} std::shared_ptr<Grid> LevelGridBuilder::getGrid(int level, int box) { @@ -363,8 +343,6 @@ void LevelGridBuilder::writeArrow(const int i, const int qi, const Vertex& start } } - - Vertex LevelGridBuilder::getVertex(int matrixIndex) const { real x, y, z; diff --git a/src/GridGenerator/grid/GridBuilder/LevelGridBuilder.h b/src/GridGenerator/grid/GridBuilder/LevelGridBuilder.h index b1ee89dd598217a95fa746502684838f925a6aaf..0a8ac5ecf7a88800e8d616aa166fd2f7f534b279 100644 --- a/src/GridGenerator/grid/GridBuilder/LevelGridBuilder.h +++ b/src/GridGenerator/grid/GridBuilder/LevelGridBuilder.h @@ -3,7 +3,6 @@ #include "GridGenerator/global.h" - #include <vector> #include <string> #include <memory> @@ -20,13 +19,17 @@ class PolyDataWriterWrapper; class BoundingBox; enum class Device; +enum class BoundaryCondition +{ + PERIODIC, VELOCITY, PRESSURE, SLIP, NOSLIP +}; + class LevelGridBuilder : public GridBuilder { protected: VF_PUBLIC LevelGridBuilder(Device device, const std::string& d3qxx); public: - VF_PUBLIC static std::shared_ptr<LevelGridBuilder> makeShared(Device device, const std::string& d3qxx); VF_PUBLIC SPtr<Grid> getGrid(uint level) override; @@ -35,10 +38,6 @@ public: VF_PUBLIC virtual ~LevelGridBuilder(); - VF_PUBLIC virtual void writeGridToVTK(std::string output, int level); - VF_PUBLIC virtual void writeSimulationFiles(std::string output, BoundingBox &nodesDelete, - bool writeFilesBinary, int level); - VF_PUBLIC virtual std::shared_ptr<Grid> getGrid(int level, int box); VF_PUBLIC virtual void createBoundaryConditions(); @@ -49,6 +48,11 @@ public: VF_PUBLIC virtual int getBoundaryConditionSize(int rb) const; VF_PUBLIC virtual std::vector<std::string> getTypeOfBoundaryConditions() const; + //VF_PUBLIC virtual void setInflowBoundaryCondition(BoundaryCondition boundaryCondition); + //VF_PUBLIC virtual void setOutflowBoundaryCondition(BoundaryCondition boundaryCondition); + //VF_PUBLIC virtual std::vector<BoundaryCondition> getTypeOfBoundaryCondition() const; + + VF_PUBLIC virtual void getNodeValues(real *xCoords, real *yCoords, real *zCoords, unsigned int *nx, unsigned int *ny, unsigned int *nz, unsigned int *geo, const int level) const; VF_PUBLIC virtual void getDimensions(int &nx, int &ny, int &nz, const int level) const; @@ -64,14 +68,13 @@ protected: std::vector<std::shared_ptr<Grid> > grids; - std::vector<std::vector<std::vector<real> > > Qs; std::vector<std::string> channelBoundaryConditions; + std::vector<BoundaryCondition> channelBoundaryConditionTypes; void checkLevel(int level); protected: - void removeOverlapNodes(); void createBCVectors(); void addShortQsToVector(int index); @@ -85,7 +88,6 @@ protected: const; private: - Device device; std::string d3qxx; @@ -98,7 +100,7 @@ public: VF_PUBLIC uint getNumberOfNodesCF(int level) override; VF_PUBLIC uint getNumberOfNodesFC(int level) override; - VF_PUBLIC void getGridInterfaceIndices(uint* iCellCfc, uint* iCellCff, uint* iCellFcc, uint* iCellFcf, int level) const; + VF_PUBLIC void getGridInterfaceIndices(uint* iCellCfc, uint* iCellCff, uint* iCellFcc, uint* iCellFcf, int level) const override; VF_PUBLIC void setOffsetFC(real* xOffCf, real* yOffCf, real* zOffCf, int level) override; VF_PUBLIC void setOffsetCF(real* xOffFc, real* yOffFc, real* zOffFc, int level) override;