41std::shared_ptr<PhiTestPostProcessingStrategy>
PhiTestPostProcessingStrategy::getNewInstance(std::shared_ptr<SimulationResults> simResult, std::shared_ptr<AnalyticalResults> analyticalResult, std::shared_ptr<PhiTestParameterStruct>
testPara, std::vector<std::string> dataToCalcTests)
46PhiTestPostProcessingStrategy::PhiTestPostProcessingStrategy(std::shared_ptr<SimulationResults> simResult, std::shared_ptr<AnalyticalResults> analyticalResult, std::shared_ptr<PhiTestParameterStruct>
testPara, std::vector<std::string> dataToCalcTests)
49 startTimeStepCalculation =
testPara->startTimeStepCalculation;
50 endTimeStepCalculation =
testPara->endTimeStepCalculation;
51 phiDiff.resize(dataToCalculate.size());
57std::vector<std::vector<double> > PhiTestPostProcessingStrategy::reduceDataToTimeSteps(std::vector<std::vector<double> > data)
61 for (
int i =
simResult->getTimeSteps().size() - 1;
i >= 0;
i--) {
62 if (
simResult->getTimeSteps().at(
i) > endTimeStepCalculation)
64 if (
simResult->getTimeSteps().at(
i) < startTimeStepCalculation)
77 bool transpose =
false;
78 int xNodes =
simResult->getNumberOfXNodes();
79 int zNodes =
simResult->getNumberOfZNodes();
80 int timeStepLength =
simResult->getTimeStepLength();
81 for (
int i = 0;
i < dataToCalculate.size();
i++) {
82 std::vector<std::vector<double>>
basicData;
83 if (dataToCalculate.at(
i) ==
"Vx")
85 if (dataToCalculate.at(
i) ==
"Vy")
87 if (dataToCalculate.at(
i) ==
"Vz")
89 if (dataToCalculate.at(
i) ==
"Press")
91 if (dataToCalculate.at(
i) ==
"Rho")
96 phiDiff.at(
i) = fftCalculator->calcPhiDiff(
dataForCalculation, transpose, xNodes, zNodes, timeStepLength);
104 for (
int i = 0;
i < dataToCalculate.size();
i++)
105 if(dataToCalculate.at(
i) == dataToCalc)
106 return phiDiff.at(
i);
std::shared_ptr< SimulationResults > simResult
double getPhiDiff(std::string dataToCalc)
static std::shared_ptr< PhiTestPostProcessingStrategy > getNewInstance(std::shared_ptr< SimulationResults > simResult, std::shared_ptr< AnalyticalResults > analyticalResult, std::shared_ptr< PhiTestParameterStruct > testPara, std::vector< std::string > dataToCalcTests)
static std::shared_ptr< FFTCalculator > getInstance()
std::shared_ptr< T > SPtr