From 4f2d3c7f5b1724e9fd9e6776be1c9fec54e30dc7 Mon Sep 17 00:00:00 2001 From: astridkbjorke Date: Thu, 10 Aug 2017 11:41:36 +0200 Subject: [PATCH] #1126 Fixing missing/wrong filenames in cmake-files, and error in last check-in --- .../ReservoirDataModel/CMakeLists_files.cmake | 4 +- ...TofAccumulatedPhaseFractionsCalculator.cpp | 45 +++++++++++++++++++ .../UnitTests/CMakeLists_files.cmake | 1 + 3 files changed, 48 insertions(+), 2 deletions(-) diff --git a/ApplicationCode/ReservoirDataModel/CMakeLists_files.cmake b/ApplicationCode/ReservoirDataModel/CMakeLists_files.cmake index d5afeb7338..332a8c46bd 100644 --- a/ApplicationCode/ReservoirDataModel/CMakeLists_files.cmake +++ b/ApplicationCode/ReservoirDataModel/CMakeLists_files.cmake @@ -58,7 +58,7 @@ ${CEE_CURRENT_LIST_DIR}RigSimulationWellCoordsAndMD.h ${CEE_CURRENT_LIST_DIR}RigFishbonesGeometry.h ${CEE_CURRENT_LIST_DIR}RigWellPathIntersectionTools.h ${CEE_CURRENT_LIST_DIR}RigTransmissibilityEquations.h -${CEE_CURRENT_LIST_DIR}RigTOFaccumulatedPhaseFractionsPlot.h +${CEE_CURRENT_LIST_DIR}RigTofAccumulatedPhaseFractionsCalculator.h ) @@ -112,7 +112,7 @@ ${CEE_CURRENT_LIST_DIR}RigSimulationWellCoordsAndMD.cpp ${CEE_CURRENT_LIST_DIR}RigFishbonesGeometry.cpp ${CEE_CURRENT_LIST_DIR}RigWellPathIntersectionTools.cpp ${CEE_CURRENT_LIST_DIR}RigTransmissibilityEquations.cpp -${CEE_CURRENT_LIST_DIR}RigTOFaccumulatedPhaseFractionsPlot.cpp +${CEE_CURRENT_LIST_DIR}RigTofAccumulatedPhaseFractionsCalculator.cpp ) diff --git a/ApplicationCode/ReservoirDataModel/RigTofAccumulatedPhaseFractionsCalculator.cpp b/ApplicationCode/ReservoirDataModel/RigTofAccumulatedPhaseFractionsCalculator.cpp index a5fa6ea58d..d66c3ca064 100644 --- a/ApplicationCode/ReservoirDataModel/RigTofAccumulatedPhaseFractionsCalculator.cpp +++ b/ApplicationCode/ReservoirDataModel/RigTofAccumulatedPhaseFractionsCalculator.cpp @@ -89,3 +89,48 @@ void RigTofAccumulatedPhaseFractionsCalculator::computeTOFaccumulations() } + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RigTofAccumulatedPhaseFractionsCalculator::sortTofAndCalculateAccPhaseFraction(const std::vector* tofData, + const std::vector* fractionData, + const std::vector* porvResults, + const std::vector* swatResults, + const std::vector* soilResults, + const std::vector* sgasResults, + std::vector& tofInIncreasingOrder, + std::vector& accumulatedPhaseFractionSwat, + std::vector& accumulatedPhaseFractionSoil, + std::vector& accumulatedPhaseFractionSgas) + +{ + std::map tofAndIndexMap; + + for (int i = 0; i < tofData->size(); i++) + { + tofAndIndexMap[tofData->at(i)] = i; + } + + + double fractionPorvSum = 0.0; + double fractionPorvPhaseSumSwat = 0.0; + double fractionPorvPhaseSumSoil = 0.0; + double fractionPorvPhaseSumSgas = 0.0; + + for (auto element : tofAndIndexMap) //todo - check handling of several cells have same tof value + { + int index = element.second; + double tofValue = element.first; + tofInIncreasingOrder.push_back(tofValue); + + fractionPorvSum += fractionData->at(index) * porvResults->at(index); + fractionPorvPhaseSumSwat += fractionData->at(index) * porvResults->at(index) * swatResults->at(index); + fractionPorvPhaseSumSoil += fractionData->at(index) * porvResults->at(index) * soilResults->at(index); + fractionPorvPhaseSumSgas += fractionData->at(index) * porvResults->at(index) * sgasResults->at(index); + + accumulatedPhaseFractionSwat.push_back(fractionPorvPhaseSumSwat / fractionPorvSum); + accumulatedPhaseFractionSoil.push_back(fractionPorvPhaseSumSoil / fractionPorvSum); + accumulatedPhaseFractionSgas.push_back(fractionPorvPhaseSumSgas / fractionPorvSum); + } +} \ No newline at end of file diff --git a/ApplicationCode/UnitTests/CMakeLists_files.cmake b/ApplicationCode/UnitTests/CMakeLists_files.cmake index 62c9c6eb0f..ae20b6a990 100644 --- a/ApplicationCode/UnitTests/CMakeLists_files.cmake +++ b/ApplicationCode/UnitTests/CMakeLists_files.cmake @@ -24,6 +24,7 @@ ${CEE_CURRENT_LIST_DIR}RivTernaryScalarMapper-Test.cpp ${CEE_CURRENT_LIST_DIR}ScalarMapper-Test.cpp ${CEE_CURRENT_LIST_DIR}WellPathAsciiFileReader-Test.cpp ${CEE_CURRENT_LIST_DIR}opm-flowdiagnostics-Test.cpp +${CEE_CURRENT_LIST_DIR}RigTofAccumulatedPhaseFractionsCalculator-Test.cpp ) list(APPEND CODE_HEADER_FILES