diff --git a/targets/tests/TestingHULC/Utilities/TestCondition/TestCondition.h b/targets/tests/TestingHULC/Utilities/TestCondition/TestCondition.h index db6d6367a92a38d0abadf95b8294ac022dde215f..2672173c9d726a10e85e33890154bb0825cfc806 100644 --- a/targets/tests/TestingHULC/Utilities/TestCondition/TestCondition.h +++ b/targets/tests/TestingHULC/Utilities/TestCondition/TestCondition.h @@ -9,7 +9,8 @@ class Parameter; class GridProvider; class DataWriter; -class Results; +class Calculator; +class TestResults; class TestCondition { @@ -17,7 +18,8 @@ public: virtual std::shared_ptr<Parameter> getParameter() = 0; virtual std::shared_ptr<GridProvider> getGrid() = 0; virtual std::shared_ptr<DataWriter> getDataWriter() = 0; - virtual std::shared_ptr<Results> getSimulationResults() = 0; + virtual std::shared_ptr<TestResults> getTestResults() = 0; + virtual std::shared_ptr<Calculator> getCalculator() = 0; private: }; diff --git a/targets/tests/TestingHULC/Utilities/TestCondition/TestConditionImp.cpp b/targets/tests/TestingHULC/Utilities/TestCondition/TestConditionImp.cpp index 4d901dd6979ae5fccef498160b6fa00f7254827b..d52703d467051e3ac82253c023522dee4ddffd37 100644 --- a/targets/tests/TestingHULC/Utilities/TestCondition/TestConditionImp.cpp +++ b/targets/tests/TestingHULC/Utilities/TestCondition/TestConditionImp.cpp @@ -7,6 +7,7 @@ #include "Utilities\Results\Results.h" #include "Utilities\DataWriter\Y2dSliceToResults\Y2dSliceToResults.h" #include "Utilities\InitialCondition\InitialCondition.h" +#include "Utilities\Calculator\Calculator.h" #include <sstream> @@ -25,9 +26,14 @@ std::shared_ptr<DataWriter> TestConditionImp::getDataWriter() return writeToVector; } -std::shared_ptr<Results> TestConditionImp::getSimulationResults() +std::shared_ptr<TestResults> TestConditionImp::getTestResults() { - return simResults; + return testResults; +} + +std::shared_ptr<Calculator> TestConditionImp::getCalculator() +{ + return calculator; } @@ -132,14 +138,26 @@ void TestConditionImp::initGridProvider() grid = std::shared_ptr<GridProvider>(new GridReaderforTesting(para, initialCondition)); } -void TestConditionImp::initResults(unsigned int lx, unsigned int lz, unsigned int timeStepLength) +void TestConditionImp::initCalculator(std::shared_ptr<Calculator> calc) +{ + this->calculator = calc; +} + + +void TestConditionImp::setTestResults(std::shared_ptr<TestResults> testResults) { - simResults = std::shared_ptr<Results>(new Results(lx,lz,timeStepLength)); + this->testResults = testResults; } + void TestConditionImp::initDataWriter(unsigned int ySliceForCalculation, unsigned int startTimeCalculation, unsigned int endTime, unsigned int timeStepLength, bool writeFiles, unsigned int startTimeDataWriter) { fileWriter = std::shared_ptr<FileWriter>(new FileWriter()); writeToVector = std::shared_ptr<ToVectorWriter>(new Y2dSliceToResults(simResults, ySliceForCalculation, startTimeCalculation, endTime, timeStepLength, writeFiles, fileWriter, startTimeDataWriter)); } +void TestConditionImp::initSimulationResults(unsigned int lx, unsigned int lz, unsigned int timeStepLength) +{ + simResults = Results::getNewInstance(lx, lz, timeStepLength); + calculator->setSimulationResults(simResults); +} diff --git a/targets/tests/TestingHULC/Utilities/TestCondition/TestConditionImp.h b/targets/tests/TestingHULC/Utilities/TestCondition/TestConditionImp.h index bb97158cd9fc89b8e43ab11b57484b649c0b602a..c89c6b7622362a2e4dd4c1f6a052f7ebb1792d2e 100644 --- a/targets/tests/TestingHULC/Utilities/TestCondition/TestConditionImp.h +++ b/targets/tests/TestingHULC/Utilities/TestCondition/TestConditionImp.h @@ -10,6 +10,9 @@ class InitialCondition; class FileWriter; class ToVectorWriter; class TestParameter; +class Calculator; +class TestResults; +class Results; class TestConditionImp: public TestCondition { @@ -18,13 +21,17 @@ public: void initParameter(real viscosity, std::string gridPath, std::string filePath, int numberOfGridLevels, unsigned int endTime, unsigned int timeStepLength); void initInitialConditions(std::shared_ptr<InitialCondition> initialCondition); void initGridProvider(); - void initResults(unsigned int lx, unsigned int lz, unsigned int timeStepLength); + void initCalculator(std::shared_ptr<Calculator> calc); void initDataWriter(unsigned int ySliceForCalculation, unsigned int startTimeCalculation, unsigned int endTime, unsigned int timeStepLength, bool writeFiles, unsigned int startTimeDataWriter); + void initSimulationResults(unsigned int lx, unsigned int lz, unsigned int timeStepLength); + + void setTestResults(std::shared_ptr<TestResults> testResults); std::shared_ptr<Parameter> getParameter(); std::shared_ptr<GridProvider> getGrid(); std::shared_ptr<DataWriter> getDataWriter(); - std::shared_ptr<Results> getSimulationResults(); + std::shared_ptr<TestResults> getTestResults(); + std::shared_ptr<Calculator> getCalculator(); protected: TestConditionImp() {}; @@ -37,6 +44,8 @@ private: std::shared_ptr<Results> simResults; std::shared_ptr<ToVectorWriter> writeToVector; std::shared_ptr<FileWriter> fileWriter; + std::shared_ptr<Calculator> calculator; + std::shared_ptr<TestResults> testResults; }; #endif \ No newline at end of file diff --git a/targets/tests/TestingHULC/Utilities/TestConditionFactory/TestConditionFactoryImp.cpp b/targets/tests/TestingHULC/Utilities/TestConditionFactory/TestConditionFactoryImp.cpp index 0777858f995c85d1c217bf4105daf1627b0de2bb..fc1e18a6d11c3218de48a6338c822facdfea6f59 100644 --- a/targets/tests/TestingHULC/Utilities/TestConditionFactory/TestConditionFactoryImp.cpp +++ b/targets/tests/TestingHULC/Utilities/TestConditionFactory/TestConditionFactoryImp.cpp @@ -21,7 +21,9 @@ std::vector<std::shared_ptr<TestCondition>> TestConditionFactoryImp::makeTestCon testCondit->initParameter(testPara.at(i)->getViscosity(), testPara.at(i)->getGridPath(), testPara.at(i)->getFilePath(), testPara.at(i)->getNumberOfGridLevels(), testPara.at(i)->getEndTime(), testPara.at(i)->getTimeStepLength()); testCondit->initInitialConditions(testPara.at(i)->getInitialCondition()); testCondit->initGridProvider(); - testCondit->initResults(testPara.at(i)->getLx(), testPara.at(i)->getLz(), testPara.at(i)->getTimeStepLength()); + testCondit->initCalculator(testPara.at(i)->getCalculator()); + testCondit->initSimulationResults(testPara.at(i)->getLx(), testPara.at(i)->getLz(), testPara.at(i)->getTimeStepLength()); + testCondit->setTestResults(testPara.at(i)->getTestResults()); testCondit->initDataWriter(testPara.at(i)->getYSliceForCalculation(), testPara.at(i)->getStartTimeCalculation(), testPara.at(i)->getEndTime(), testPara.at(i)->getTimeStepLength(), testPara.at(i)->getWriteFiles(), testPara.at(i)->getStartTimeDataWriter()); testConditions.push_back(testCondit); } diff --git a/targets/tests/TestingHULC/Utilities/TestParameter/ShearWaveTestParameter/ShearWaveTestParameter.cpp b/targets/tests/TestingHULC/Utilities/TestParameter/ShearWaveTestParameter/ShearWaveTestParameter.cpp index dcfb109d26ed7381913579946634256de2a40fc5..f22a07073a7f12dd93f52072b084bf158e5c260d 100644 --- a/targets/tests/TestingHULC/Utilities/TestParameter/ShearWaveTestParameter/ShearWaveTestParameter.cpp +++ b/targets/tests/TestingHULC/Utilities/TestParameter/ShearWaveTestParameter/ShearWaveTestParameter.cpp @@ -1,30 +1,49 @@ #include "ShearWaveTestParameter.h" #include "Utilities\InitialCondition\ShearWave\InitialConditionShearWave.h" +#include "Utilities\Calculator\FFTCalculator\VzFFTCalculator\VzFFTCalculator.h" +#include "Utilities/TestResults/PhiAndNuTestResults.h" +#include "Utilities/Results/Results.h" #include <sstream> -std::shared_ptr<TestParameter> ShearWaveTestParameter::getNewInstance(real u0, real v0, real viscosity, unsigned int lx, unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, unsigned int startStepCalculation, unsigned int ySliceForCalculation, std::string gridPath, bool writeFiles, unsigned int startStepFileWriter, std::string filePath) +std::shared_ptr<TestParameter> ShearWaveTestParameter::getNewInstance( + real u0, real v0, + real viscosity, unsigned int lx, + unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, + unsigned int startStepCalculation, unsigned int ySliceForCalculation, + std::string gridPath, + bool writeFiles, unsigned int startStepFileWriter, std::string filePath, + std::shared_ptr<PhiAndNuTestResults> testResults) { return std::shared_ptr<TestParameter>(new ShearWaveTestParameter(u0, v0, viscosity, lx, numberOfTimeSteps, basisTimeStepLength, startStepCalculation, ySliceForCalculation, gridPath, - writeFiles, startStepFileWriter, filePath)); + writeFiles, startStepFileWriter, filePath, + testResults)); } -ShearWaveTestParameter::ShearWaveTestParameter(real u0, real v0, real viscosity, unsigned int lx, unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, unsigned int startStepCalculation, unsigned int ySliceForCalculation, std::string gridPath, bool writeFiles, unsigned int startStepFileWriter, std::string filePath) - :TestParameterImp(viscosity, lx, numberOfTimeSteps, basisTimeStepLength, startStepCalculation, ySliceForCalculation, gridPath, writeFiles, startStepFileWriter), u0(u0), v0(v0) +ShearWaveTestParameter::ShearWaveTestParameter( + real u0, real v0, + real viscosity, unsigned int lx, + unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, + unsigned int startStepCalculation, unsigned int ySliceForCalculation, + std::string gridPath, + bool writeFiles, unsigned int startStepFileWriter, std::string filePath, + std::shared_ptr<PhiAndNuTestResults> testResults) + :TestParameterImp(viscosity, lx, + numberOfTimeSteps, basisTimeStepLength, + startStepCalculation, ySliceForCalculation, + gridPath, + writeFiles, startStepFileWriter, testResults), + u0(u0), v0(v0) { std::ostringstream oss; oss << filePath + "/ShearWave/grid" << lx; this->filePath = oss.str(); initialCondition = std::shared_ptr<InitialConditionShearWave>(new InitialConditionShearWave((double)lx, (double)lz, (double)l0, u0, v0, rho0)); -} - -std::shared_ptr<InitialCondition> ShearWaveTestParameter::getInitialCondition() -{ - return initialCondition; + calculator = VzFFTCalculator::getNewInstance(viscosity, testResults); } diff --git a/targets/tests/TestingHULC/Utilities/TestParameter/ShearWaveTestParameter/ShearWaveTestParameter.h b/targets/tests/TestingHULC/Utilities/TestParameter/ShearWaveTestParameter/ShearWaveTestParameter.h index 937e758f391024931747bfd0716f00ad02ea1a58..4fc7afc672c94a34a445203bb1bd5ddfeb2f36d1 100644 --- a/targets/tests/TestingHULC/Utilities/TestParameter/ShearWaveTestParameter/ShearWaveTestParameter.h +++ b/targets/tests/TestingHULC/Utilities/TestParameter/ShearWaveTestParameter/ShearWaveTestParameter.h @@ -3,6 +3,8 @@ #include "../TestParameterImp.h" +class PhiAndNuTestResults; + class ShearWaveTestParameter : public TestParameterImp { public: @@ -11,7 +13,8 @@ public: unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, unsigned int startStepCalculation, unsigned int ySliceForCalculation, std::string gridPath, - bool writeFiles, unsigned int startStepFileWriter, std::string filePath); + bool writeFiles, unsigned int startStepFileWriter, std::string filePath, + std::shared_ptr<PhiAndNuTestResults> testResults); protected: ShearWaveTestParameter() {}; @@ -20,13 +23,10 @@ protected: unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, unsigned int startStepCalculation, unsigned int ySliceForCalculation, std::string gridPath, - bool writeFiles, unsigned int startStepFileWriter, std::string filePath); - - std::shared_ptr<InitialCondition> getInitialCondition(); + bool writeFiles, unsigned int startStepFileWriter, std::string filePath, + std::shared_ptr<PhiAndNuTestResults> testResults); private: - std::shared_ptr<InitialCondition> initialCondition; - real u0, v0; }; diff --git a/targets/tests/TestingHULC/Utilities/TestParameter/TaylorGreenTestParameter/TaylorGreenTestParameter.cpp b/targets/tests/TestingHULC/Utilities/TestParameter/TaylorGreenTestParameter/TaylorGreenTestParameter.cpp index 0d75f12409abcb36cd0a9c43fc26f46ebc580315..3a77273ef1c974e518e4cf4c463f21b1b4d91bae 100644 --- a/targets/tests/TestingHULC/Utilities/TestParameter/TaylorGreenTestParameter/TaylorGreenTestParameter.cpp +++ b/targets/tests/TestingHULC/Utilities/TestParameter/TaylorGreenTestParameter/TaylorGreenTestParameter.cpp @@ -1,30 +1,52 @@ #include "TaylorGreenTestParameter.h" -#include "Utilities\InitialCondition\TaylorGreenVortex\InitialconditionTaylorGreenVortex.h" +#include "Utilities/InitialCondition\TaylorGreenVortex\InitialconditionTaylorGreenVortex.h" +#include "Utilities/Calculator\FFTCalculator\VxFFTCalculator\VxFFTCalculator.h" +#include "Utilities/TestResults/PhiAndNuTestResults.h" +#include "Utilities/Results/Results.h" #include <sstream> -std::shared_ptr<TestParameter> TaylorGreenTestParameter::getNewInstance(real u0, real amplitude, real viscosity, unsigned int lx, unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, unsigned int startStepCalculation, unsigned int ySliceForCalculation, std::string gridPath, bool writeFiles, unsigned int startStepFileWriter, std::string filePath) +std::shared_ptr<TestParameter> TaylorGreenTestParameter::getNewInstance( + real u0, real amplitude, + real viscosity, unsigned int lx, + unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, + unsigned int startStepCalculation, unsigned int ySliceForCalculation, + std::string gridPath, + bool writeFiles, unsigned int startStepFileWriter, std::string filePath, + std::shared_ptr<PhiAndNuTestResults> testResults) { - return std::shared_ptr<TestParameter>(new TaylorGreenTestParameter(u0, amplitude, - viscosity, lx, - numberOfTimeSteps, basisTimeStepLength, - startStepCalculation, ySliceForCalculation, - gridPath, - writeFiles, startStepFileWriter, filePath)); + return std::shared_ptr<TestParameter>( + new TaylorGreenTestParameter( + u0, amplitude, + viscosity, lx, + numberOfTimeSteps, basisTimeStepLength, + startStepCalculation, ySliceForCalculation, + gridPath, + writeFiles, startStepFileWriter, filePath, testResults)); } -TaylorGreenTestParameter::TaylorGreenTestParameter(real u0, real amplitude, real viscosity, unsigned int lx, unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, unsigned int startStepCalculation, unsigned int ySliceForCalculation, std::string gridPath, bool writeFiles, unsigned int startStepFileWriter, std::string filePath) - :TestParameterImp(viscosity, lx, numberOfTimeSteps, basisTimeStepLength, startStepCalculation, ySliceForCalculation, gridPath, writeFiles, startStepFileWriter), u0(u0), amplitude(amplitude) +TaylorGreenTestParameter::TaylorGreenTestParameter( + real u0, real amplitude, + real viscosity, unsigned int lx, + unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, + unsigned int startStepCalculation, unsigned int ySliceForCalculation, + std::string gridPath, + bool writeFiles, unsigned int startStepFileWriter, std::string filePath, + std::shared_ptr<PhiAndNuTestResults> testResults) + + :TestParameterImp(viscosity, lx, + numberOfTimeSteps, basisTimeStepLength, + startStepCalculation, ySliceForCalculation, + gridPath, + writeFiles, startStepFileWriter, testResults), + u0(u0), amplitude(amplitude) { std::ostringstream oss; oss << filePath + "/TaylorGreenVortex/grid" << lx; this->filePath = oss.str(); initialCondition = std::shared_ptr<InitialConditionTaylorGreen>(new InitialConditionTaylorGreen((double)lx, (double)lz, (double)l0, u0, amplitude, rho0)); -} - -std::shared_ptr<InitialCondition> TaylorGreenTestParameter::getInitialCondition() -{ - return initialCondition; + simResults = Results::getNewInstance(lx, lz, timeStepLength); + calculator = VxFFTCalculator::getNewInstance(viscosity, testResults); } diff --git a/targets/tests/TestingHULC/Utilities/TestParameter/TaylorGreenTestParameter/TaylorGreenTestParameter.h b/targets/tests/TestingHULC/Utilities/TestParameter/TaylorGreenTestParameter/TaylorGreenTestParameter.h index 06e4dd538836f125173394aef5f6d3940317f8d6..8cc175942ba9b94c026ea1fcee3971c4f3eded82 100644 --- a/targets/tests/TestingHULC/Utilities/TestParameter/TaylorGreenTestParameter/TaylorGreenTestParameter.h +++ b/targets/tests/TestingHULC/Utilities/TestParameter/TaylorGreenTestParameter/TaylorGreenTestParameter.h @@ -6,6 +6,8 @@ #include <string> #include <memory> +class PhiAndNuTestResults; + class TaylorGreenTestParameter : public TestParameterImp { public: @@ -14,7 +16,8 @@ public: unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, unsigned int startStepCalculation, unsigned int ySliceForCalculation, std::string gridPath, - bool writeFiles, unsigned int startStepFileWriter, std::string filePath); + bool writeFiles, unsigned int startStepFileWriter, std::string filePath, + std::shared_ptr<PhiAndNuTestResults> testResults); protected: TaylorGreenTestParameter(real u0, real amplitude, @@ -22,13 +25,10 @@ protected: unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, unsigned int startStepCalculation, unsigned int ySliceForCalculation, std::string gridPath, - bool writeFiles, unsigned int startStepFileWriter, std::string filePath); - - std::shared_ptr<InitialCondition> getInitialCondition(); + bool writeFiles, unsigned int startStepFileWriter, std::string filePath, + std::shared_ptr<PhiAndNuTestResults> testResults); private: - std::shared_ptr<InitialCondition> initialCondition; - real u0, amplitude; }; diff --git a/targets/tests/TestingHULC/Utilities/TestParameter/TestParameter.h b/targets/tests/TestingHULC/Utilities/TestParameter/TestParameter.h index fa248e5b27fdf5a0c30cda1c0d34c04e3a9372f3..729d942229503089ced128a6aebabdb3bc9271f7 100644 --- a/targets/tests/TestingHULC/Utilities/TestParameter/TestParameter.h +++ b/targets/tests/TestingHULC/Utilities/TestParameter/TestParameter.h @@ -5,11 +5,13 @@ #include <string> class InitialCondition; +class Calculator; +class TestResults; +class Results; class TestParameter { public: - virtual std::shared_ptr<InitialCondition> getInitialCondition() = 0; virtual double getViscosity() = 0; virtual std::string getGridPath() = 0; virtual std::string getFilePath() = 0; @@ -22,9 +24,12 @@ public: virtual unsigned int getStartTimeCalculation() = 0; virtual bool getWriteFiles() = 0; virtual unsigned int getStartTimeDataWriter() = 0; + virtual std::shared_ptr<InitialCondition> getInitialCondition() = 0; + virtual std::shared_ptr<Calculator> getCalculator() = 0; + virtual std::shared_ptr<TestResults> getTestResults() = 0; private: }; -#endif // !TESTPARAMETER_H +#endif diff --git a/targets/tests/TestingHULC/Utilities/TestParameter/TestParameterImp.cpp b/targets/tests/TestingHULC/Utilities/TestParameter/TestParameterImp.cpp index 79fe02e4038334f72743369941fb6fcf1c11e20e..91fde99f069f7ad91286a81841f7c2e3c4ba6eb1 100644 --- a/targets/tests/TestingHULC/Utilities/TestParameter/TestParameterImp.cpp +++ b/targets/tests/TestingHULC/Utilities/TestParameter/TestParameterImp.cpp @@ -1,8 +1,20 @@ #include "TestParameterImp.h" - -TestParameterImp::TestParameterImp(real viscosity, unsigned int lx, unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, unsigned int startStepCalculation, unsigned int ySliceForCalculation, std::string gridPath, bool writeFiles, unsigned int startStepFileWriter) - : viscosity(viscosity), lx(lx), numberOfTimeSteps(numberOfTimeSteps), basisTimeStepLength(basisTimeStepLength), startStepCalculation(startStepCalculation), ySliceForCalculation(ySliceForCalculation), gridPath(gridPath), writeFiles(writeFiles), startStepFileWriter(startStepFileWriter) +#include "Utilities/TestResults/TestResults.h" + +TestParameterImp::TestParameterImp( + real viscosity, unsigned int lx, + unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, + unsigned int startStepCalculation, unsigned int ySliceForCalculation, + std::string gridPath, + bool writeFiles, unsigned int startStepFileWriter, + std::shared_ptr<TestResults> testResults) + :viscosity(viscosity), lx(lx), + numberOfTimeSteps(numberOfTimeSteps), basisTimeStepLength(basisTimeStepLength), + startStepCalculation(startStepCalculation), ySliceForCalculation(ySliceForCalculation), + gridPath(gridPath), + writeFiles(writeFiles), startStepFileWriter(startStepFileWriter), + testResults(testResults) { maxLevel = 0; numberOfGridLevels = 1; @@ -77,4 +89,17 @@ unsigned int TestParameterImp::getStartTimeDataWriter() return startTimeDataWriter; } +std::shared_ptr<InitialCondition> TestParameterImp::getInitialCondition() +{ + return initialCondition; +} + +std::shared_ptr<Calculator> TestParameterImp::getCalculator() +{ + return calculator; +} +std::shared_ptr<TestResults> TestParameterImp::getTestResults() +{ + return testResults; +} diff --git a/targets/tests/TestingHULC/Utilities/TestParameter/TestParameterImp.h b/targets/tests/TestingHULC/Utilities/TestParameter/TestParameterImp.h index bf59245e5596c0bef0a159823ac6034ef56c2d62..a1b0c51d0629c0a7dd68a952efcd2641f3b15da8 100644 --- a/targets/tests/TestingHULC/Utilities/TestParameter/TestParameterImp.h +++ b/targets/tests/TestingHULC/Utilities/TestParameter/TestParameterImp.h @@ -8,8 +8,6 @@ class TestParameterImp: public TestParameter { public: - virtual std::shared_ptr<InitialCondition> getInitialCondition() = 0; - double getViscosity(); std::string getGridPath(); std::string getFilePath(); @@ -22,6 +20,9 @@ public: unsigned int getStartTimeCalculation(); bool getWriteFiles(); unsigned int getStartTimeDataWriter(); + std::shared_ptr<InitialCondition> getInitialCondition(); + std::shared_ptr<Calculator> getCalculator(); + std::shared_ptr<TestResults> getTestResults(); protected: TestParameterImp() {}; @@ -29,7 +30,8 @@ protected: unsigned int numberOfTimeSteps, unsigned int basisTimeStepLength, unsigned int startStepCalculation, unsigned int ySliceForCalculation, std::string gridPath, - bool writeFiles, unsigned int startStepFileWriter); + bool writeFiles, unsigned int startStepFileWriter, + std::shared_ptr<TestResults> testResults); std::string filePath; real viscosity; @@ -46,6 +48,10 @@ protected: unsigned int startTimeCalculation, startTimeDataWriter; unsigned int endTime; + std::shared_ptr<InitialCondition> initialCondition; + std::shared_ptr<Calculator> calculator; + std::shared_ptr<Results> simResults; + std::shared_ptr<TestResults> testResults; }; #endif // !TESTPARAMETERIMP_H diff --git a/targets/tests/TestingHULC/Utilities/reader/reader.cpp b/targets/tests/TestingHULC/Utilities/reader/reader.cpp index c0e23e4ed8e168fd5b15c37e112918e669d2b2be..3e55fcd048559c0eeeae23d9cbe85de0d823ac72 100644 --- a/targets/tests/TestingHULC/Utilities/reader/reader.cpp +++ b/targets/tests/TestingHULC/Utilities/reader/reader.cpp @@ -10,6 +10,7 @@ #include "Utilities\TestInformation\TestInformationImp.h" #include "Utilities\TestParameter\TaylorGreenTestParameter\TaylorGreenTestParameter.h" #include "Utilities\TestParameter\ShearWaveTestParameter\ShearWaveTestParameter.h" +#include "Utilities\TestResults\PhiAndNuTestResults.h" void Reader::calcNumberOfEqualTests() { @@ -124,15 +125,17 @@ std::shared_ptr<TestInformation> Reader::makeTestInformation() std::vector<std::shared_ptr<TestParameter>> Reader::makeTestParameter() { std::vector<std::shared_ptr<TestParameter>> testParameter; + std::shared_ptr<PhiAndNuTestResults> tgvTestResults = PhiAndNuTestResults::getNewInstance("TaylorGreenVortex"); + std::shared_ptr<PhiAndNuTestResults> swTestResults = PhiAndNuTestResults::getNewInstance("ShearWave"); for (int i = 0; i < tgv.size(); i++) { if (tgv.at(i)) { - testParameter.push_back(TaylorGreenTestParameter::getNewInstance(u0TGV, amplitudeTGV, viscosity, l.at(i), numberOfTimeSteps, basisTimeStepLength, startStepCalculation, ySliceForCalculation, grids.at(i), writeFiles, startStepFileWriter, filePath)); + testParameter.push_back(TaylorGreenTestParameter::getNewInstance(u0TGV, amplitudeTGV, viscosity, l.at(i), numberOfTimeSteps, basisTimeStepLength, startStepCalculation, ySliceForCalculation, grids.at(i), writeFiles, startStepFileWriter, filePath, tgvTestResults)); } } for (int i = 0; i < sw.size(); i++) { if (sw.at(i)) { - testParameter.push_back(ShearWaveTestParameter::getNewInstance(u0SW, v0SW, viscosity, l.at(i), numberOfTimeSteps, basisTimeStepLength, startStepCalculation, ySliceForCalculation, grids.at(i), writeFiles, startStepFileWriter, filePath)); + testParameter.push_back(ShearWaveTestParameter::getNewInstance(u0SW, v0SW, viscosity, l.at(i), numberOfTimeSteps, basisTimeStepLength, startStepCalculation, ySliceForCalculation, grids.at(i), writeFiles, startStepFileWriter, filePath, swTestResults)); } }