From 5bd492dc56aa6b89f13aeb6149ba81febc9eb0cb Mon Sep 17 00:00:00 2001 From: Magne Sjaastad Date: Thu, 8 Jun 2023 09:13:22 +0200 Subject: [PATCH] Adjustments before release * Make sure existing project files do not filter intersection geometry by cell filters * #10241 Temporarily revert changes to resampling changes These fixes had unintended side effect on well flow plot and rft plots seen in regression tests https://github.com/OPM/ResInsight/issues/10241 * Update version number --- .../RimIntersectionCollection.cpp | 12 ++ .../Intersections/RimIntersectionCollection.h | 1 + .../RigWellLogCurveData.cpp | 133 +++++-------- .../ReservoirDataModel/RigWellLogCurveData.h | 20 +- .../UnitTests/CMakeLists_files.cmake | 2 - .../UnitTests/RigWellLogCurveData-Test.cpp | 183 ------------------ ResInsightVersion.cmake | 10 +- 7 files changed, 73 insertions(+), 288 deletions(-) delete mode 100644 ApplicationLibCode/UnitTests/RigWellLogCurveData-Test.cpp diff --git a/ApplicationLibCode/ProjectDataModel/Intersections/RimIntersectionCollection.cpp b/ApplicationLibCode/ProjectDataModel/Intersections/RimIntersectionCollection.cpp index a25cbc5deb..429e99001a 100644 --- a/ApplicationLibCode/ProjectDataModel/Intersections/RimIntersectionCollection.cpp +++ b/ApplicationLibCode/ProjectDataModel/Intersections/RimIntersectionCollection.cpp @@ -31,6 +31,7 @@ #include "RimGridView.h" #include "RimIntersectionResultDefinition.h" #include "RimIntersectionResultsDefinitionCollection.h" +#include "RimProject.h" #include "RimSimWellInView.h" #include "Riu3DMainWindowTools.h" @@ -560,6 +561,17 @@ void RimIntersectionCollection::defineEditorAttribute( const caf::PdmFieldHandle } } +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RimIntersectionCollection::initAfterRead() +{ + if ( RimProject::current()->isProjectFileVersionEqualOrOlderThan( "2023.03.0" ) ) + { + m_applyCellFilters = false; + } +} + //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- diff --git a/ApplicationLibCode/ProjectDataModel/Intersections/RimIntersectionCollection.h b/ApplicationLibCode/ProjectDataModel/Intersections/RimIntersectionCollection.h index d92baabdbd..a634f2e2d9 100644 --- a/ApplicationLibCode/ProjectDataModel/Intersections/RimIntersectionCollection.h +++ b/ApplicationLibCode/ProjectDataModel/Intersections/RimIntersectionCollection.h @@ -99,6 +99,7 @@ protected: void defineUiTreeOrdering( caf::PdmUiTreeOrdering& uiTreeOrdering, QString uiConfigName = "" ) override; void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override; void defineEditorAttribute( const caf::PdmFieldHandle* field, QString uiConfigName, caf::PdmUiEditorAttribute* attribute ) override; + void initAfterRead() override; private: RimEclipseView* eclipseView() const; diff --git a/ApplicationLibCode/ReservoirDataModel/RigWellLogCurveData.cpp b/ApplicationLibCode/ReservoirDataModel/RigWellLogCurveData.cpp index f255c2b640..dcfcc2de10 100644 --- a/ApplicationLibCode/ReservoirDataModel/RigWellLogCurveData.cpp +++ b/ApplicationLibCode/ReservoirDataModel/RigWellLogCurveData.cpp @@ -345,52 +345,41 @@ cvf::ref RigWellLogCurveData::calculateResampledCurveData( return reSampledData; } -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -void RigWellLogCurveData::interpolateSegment( RiaDefines::DepthTypeEnum resamplingDepthType, - std::vector& resampledValues, - std::map>& resampledDepths, - double targetDepthValue, - size_t firstIndex, - const std::map>& originalDepths, - const std::vector& propertyValues, - double eps ) +void RigWellLogCurveData::interpolateSegment( RiaDefines::DepthTypeEnum resamplingDepthType, + double depthValue, + size_t firstIndex, + std::vector& xValues, + std::map>& resampledDepths, + const double eps ) const { - if ( !originalDepths.contains( resamplingDepthType ) ) return; + auto depthIt = m_depths.find( resamplingDepthType ); - const size_t secondIndex = firstIndex + 1; - const auto& depthValues = originalDepths.find( resamplingDepthType )->second; - if ( secondIndex >= depthValues.size() ) return; + size_t secondIndex = firstIndex + 1; - const double depth0 = depthValues[firstIndex]; - const double depth1 = depthValues[secondIndex]; - const double x0 = propertyValues[firstIndex]; - const double x1 = propertyValues[secondIndex]; - double slope = 0.0; + double depth0 = depthIt->second[firstIndex]; + double depth1 = depthIt->second[secondIndex]; + double x0 = m_propertyValues[firstIndex]; + double x1 = m_propertyValues[secondIndex]; + double slope = 0.0; if ( std::fabs( depth1 - depth0 ) > eps ) { slope = ( x1 - x0 ) / ( depth1 - depth0 ); } - const double resampledValue = slope * ( targetDepthValue - depth0 ) + x0; - resampledValues.push_back( resampledValue ); + double xValue = slope * ( depthValue - depth0 ) + x0; + xValues.push_back( xValue ); - for ( const auto& [depthType, depthTypeValues] : originalDepths ) + for ( auto depthTypeValuesPair : m_depths ) { - // Skip the depth type we are resampling and ensure depth values are available - if ( depthType == resamplingDepthType ) continue; - if ( depthTypeValues.size() < secondIndex - 1 ) continue; - - const double otherDepth0 = depthTypeValues[firstIndex]; - const double otherDepth1 = depthTypeValues[secondIndex]; - const double otherSlope = ( otherDepth1 - otherDepth0 ) / ( depth1 - depth0 ); - resampledDepths[depthType].push_back( otherSlope * ( targetDepthValue - depth0 ) + otherDepth0 ); + if ( depthTypeValuesPair.first != resamplingDepthType ) + { + double otherDepth0 = depthTypeValuesPair.second[0]; + double otherDepth1 = depthTypeValuesPair.second[1]; + double otherSlope = ( otherDepth1 - otherDepth0 ) / ( depth1 - depth0 ); + resampledDepths[depthTypeValuesPair.first].push_back( otherSlope * ( depthValue - depth0 ) + otherDepth0 ); + } } } -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- bool isLeftOf( double x1, double x2, bool reverseOrder, double eps ) { if ( reverseOrder ) @@ -400,9 +389,6 @@ bool isLeftOf( double x1, double x2, bool reverseOrder, double eps ) return x2 - x1 > eps; } -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- bool isRightOf( double x1, double x2, bool reverseOrder, double eps ) { return isLeftOf( x2, x1, reverseOrder, eps ); @@ -411,61 +397,53 @@ bool isRightOf( double x1, double x2, bool reverseOrder, double eps ) //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -std::pair, std::map>> - RigWellLogCurveData::createResampledValuesAndDepths( RiaDefines::DepthTypeEnum resamplingDepthType, - const std::vector& targetDepths, - const std::map>& originalDepths, - const std::vector& propertyValues ) +cvf::ref RigWellLogCurveData::calculateResampledCurveData( RiaDefines::DepthTypeEnum resamplingDepthType, + const std::vector& depths ) const { const double eps = 1.0e-8; - auto depthIt = originalDepths.find( resamplingDepthType ); - if ( depthIt == originalDepths.end() || depthIt->second.empty() ) return {}; - const auto& depthValues = depthIt->second; + std::vector xValues; - std::vector resampledValues; std::map> resampledDepths; - resampledDepths.insert( std::make_pair( resamplingDepthType, targetDepths ) ); + resampledDepths.insert( std::make_pair( resamplingDepthType, depths ) ); - cvf::ref resampledCurveData = new RigWellLogCurveData; + auto depthIt = m_depths.find( resamplingDepthType ); + + cvf::ref reSampledData = new RigWellLogCurveData; + + if ( depthIt == m_depths.end() || depthIt->second.empty() ) return reSampledData; bool reverseOrder = resamplingDepthType == RiaDefines::DepthTypeEnum::CONNECTION_NUMBER; size_t segmentSearchStartIdx = 0; - for ( const auto& targetDepth : targetDepths ) + for ( auto depth : depths ) { bool foundPoint = false; - for ( size_t segmentStartIdx = segmentSearchStartIdx; segmentStartIdx < depthValues.size(); ++segmentStartIdx ) + for ( size_t segmentStartIdx = segmentSearchStartIdx; segmentStartIdx < depthIt->second.size(); ++segmentStartIdx ) { - if ( std::fabs( depthValues[segmentStartIdx] - targetDepth ) < eps ) // already have this depth point, reuse it + if ( std::fabs( depthIt->second[segmentStartIdx] - depth ) < eps ) // already have this depth point, + // reuse it { - resampledValues.push_back( propertyValues[segmentStartIdx] ); + xValues.push_back( m_propertyValues[segmentStartIdx] ); // Copy all depth types for this segment - for ( const auto& depthTypeValuesPair : originalDepths ) + for ( auto depthTypeValuesPair : m_depths ) { if ( depthTypeValuesPair.first != resamplingDepthType ) { resampledDepths[depthTypeValuesPair.first].push_back( depthTypeValuesPair.second[segmentStartIdx] ); } } - segmentSearchStartIdx = segmentStartIdx; + segmentSearchStartIdx = segmentStartIdx + 1; foundPoint = true; break; } - else if ( segmentStartIdx < depthValues.size() - 1 ) + else if ( segmentStartIdx < depthIt->second.size() - 1 ) { - double minDepthSegment = std::min( depthValues[segmentStartIdx], depthValues[segmentStartIdx + 1] ); - double maxDepthSegment = std::max( depthValues[segmentStartIdx], depthValues[segmentStartIdx + 1] ); - if ( cvf::Math::valueInRange( targetDepth, minDepthSegment, maxDepthSegment ) ) + double minDepthSegment = std::min( depthIt->second[segmentStartIdx], depthIt->second[segmentStartIdx + 1] ); + double maxDepthSegment = std::max( depthIt->second[segmentStartIdx], depthIt->second[segmentStartIdx + 1] ); + if ( cvf::Math::valueInRange( depth, minDepthSegment, maxDepthSegment ) ) { - interpolateSegment( resamplingDepthType, - resampledValues, - resampledDepths, - targetDepth, - segmentStartIdx, - originalDepths, - propertyValues, - eps ); + interpolateSegment( resamplingDepthType, depth, segmentStartIdx, xValues, resampledDepths, eps ); segmentSearchStartIdx = segmentStartIdx; foundPoint = true; break; @@ -474,18 +452,17 @@ std::pair, std::mapsecond.front(), reverseOrder, eps ) ) { // Extrapolate from front two - const size_t firstIndex = 0; - interpolateSegment( resamplingDepthType, resampledValues, resampledDepths, targetDepth, firstIndex, originalDepths, propertyValues, eps ); + interpolateSegment( resamplingDepthType, depth, 0, xValues, resampledDepths, eps ); foundPoint = true; } - else if ( isRightOf( targetDepth, depthValues.back(), reverseOrder, eps ) ) + else if ( isRightOf( depth, depthIt->second.back(), reverseOrder, eps ) ) { // Extrapolate from end two - const size_t N = depthValues.size() - 1; - interpolateSegment( resamplingDepthType, resampledValues, resampledDepths, targetDepth, N - 1, originalDepths, propertyValues, eps ); + const size_t N = depthIt->second.size() - 1; + interpolateSegment( resamplingDepthType, depth, N - 1, xValues, resampledDepths, eps ); foundPoint = true; } } @@ -493,18 +470,6 @@ std::pair, std::map RigWellLogCurveData::calculateResampledCurveData( RiaDefines::DepthTypeEnum resamplingDepthType, - const std::vector& depths ) const -{ - const auto [xValues, resampledDepths] = createResampledValuesAndDepths( resamplingDepthType, depths, m_depths, m_propertyValues ); - - cvf::ref reSampledData = new RigWellLogCurveData; reSampledData->setValuesAndDepths( xValues, resampledDepths, m_rkbDiff, m_depthUnit, true, m_useLogarithmicScale ); return reSampledData; } diff --git a/ApplicationLibCode/ReservoirDataModel/RigWellLogCurveData.h b/ApplicationLibCode/ReservoirDataModel/RigWellLogCurveData.h index ee0f03d70b..1e1dbbc923 100644 --- a/ApplicationLibCode/ReservoirDataModel/RigWellLogCurveData.h +++ b/ApplicationLibCode/ReservoirDataModel/RigWellLogCurveData.h @@ -82,20 +82,12 @@ public: cvf::ref calculateResampledCurveData( double newMeasuredDepthStepSize ) const; cvf::ref calculateResampledCurveData( RiaDefines::DepthTypeEnum resamplingDepthType, const std::vector& depths ) const; - static void interpolateSegment( RiaDefines::DepthTypeEnum resamplingDepthType, - std::vector& resampledValues, - std::map>& resampledDepths, - double targetDepthValue, - size_t firstIndex, - const std::map>& originalDepths, - const std::vector& propertyValues, - double eps ); - - static std::pair, std::map>> - createResampledValuesAndDepths( RiaDefines::DepthTypeEnum resamplingDepthType, - const std::vector& targetDepths, - const std::map>& originalDepths, - const std::vector& propertyValues ); + void interpolateSegment( RiaDefines::DepthTypeEnum resamplingDepthType, + double depthValue, + size_t firstIndex, + std::vector& xValues, + std::map>& resampledDepths, + const double eps ) const; private: void calculateIntervalsOfContinousValidValues(); diff --git a/ApplicationLibCode/UnitTests/CMakeLists_files.cmake b/ApplicationLibCode/UnitTests/CMakeLists_files.cmake index 691c226c26..4af078d47a 100644 --- a/ApplicationLibCode/UnitTests/CMakeLists_files.cmake +++ b/ApplicationLibCode/UnitTests/CMakeLists_files.cmake @@ -91,8 +91,6 @@ set(SOURCE_GROUP_SOURCE_FILES ${CMAKE_CURRENT_LIST_DIR}/RifStimPlanCsvSummaryReader-Test.cpp ${CMAKE_CURRENT_LIST_DIR}/RiaEnsembleNameTools-Test.cpp ${CMAKE_CURRENT_LIST_DIR}/RigDeclineCurveCalculator-Test.cpp - ${CMAKE_CURRENT_LIST_DIR}/RigWellLogCurveData-Test.cpp - ${CMAKE_CURRENT_LIST_DIR}/RimWellLogCalculatedCurve-Test.cpp ${CMAKE_CURRENT_LIST_DIR}/RifReaderFmuRft-Test.cpp ${CMAKE_CURRENT_LIST_DIR}/RimSummaryRegressionAnalysisCurve-Test.cpp ) diff --git a/ApplicationLibCode/UnitTests/RigWellLogCurveData-Test.cpp b/ApplicationLibCode/UnitTests/RigWellLogCurveData-Test.cpp deleted file mode 100644 index 4ece723a29..0000000000 --- a/ApplicationLibCode/UnitTests/RigWellLogCurveData-Test.cpp +++ /dev/null @@ -1,183 +0,0 @@ -///////////////////////////////////////////////////////////////////////////////// -// -// Copyright (C) 2023- Equinor ASA -// -// ResInsight is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or -// FITNESS FOR A PARTICULAR PURPOSE. -// -// See the GNU General Public License at -// for more details. -// -///////////////////////////////////////////////////////////////////////////////// - -#include "gtest/gtest.h" - -#include "RiaDefines.h" - -#include "RigWellLogCurveData.h" - -#include "cvfVector3.h" - -#include - -#include - -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -TEST( RigWellLogCurveData, interpolateSegment_first ) -{ - // Input data - const std::map> originalDepths = - { { RiaDefines::DepthTypeEnum::MEASURED_DEPTH, { 0.0, 20.0, 40.0 } }, - { RiaDefines::DepthTypeEnum::TRUE_VERTICAL_DEPTH, { 0.0, 30.0, 60.0 } }, - { RiaDefines::DepthTypeEnum::PSEUDO_LENGTH, { 0.0, 40.0, 80.0 } } }; - const std::vector propertyValues = { 0.0, 100.0, 150.0 }; - const double eps = 1e-6; - - // Output data - const auto resamplingDepthType = RiaDefines::DepthTypeEnum::MEASURED_DEPTH; - std::vector resampledValues; - std::map> resampledDepths; - - // Target data (resampling with MEASURED_DEPTH) - const double targetDepthValue = 10.0; // Halfway between index 0 and 1 for MEASURED_DEPTH in originalDepths - const size_t firstIndex = 0; - - // Call the function under test - RigWellLogCurveData::interpolateSegment( resamplingDepthType, - resampledValues, - resampledDepths, - targetDepthValue, - firstIndex, - originalDepths, - propertyValues, - eps ); - - // Check the results - ASSERT_EQ( resampledValues.size(), size_t( 1 ) ); - ASSERT_DOUBLE_EQ( resampledValues[0], 50.0 ); - - ASSERT_EQ( resampledDepths.size(), size_t( 2 ) ); - ASSERT_EQ( resampledDepths[RiaDefines::DepthTypeEnum::TRUE_VERTICAL_DEPTH].size(), size_t( 1 ) ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::TRUE_VERTICAL_DEPTH][0], 15.0 ); - - ASSERT_EQ( resampledDepths[RiaDefines::DepthTypeEnum::PSEUDO_LENGTH].size(), size_t( 1 ) ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::PSEUDO_LENGTH][0], 20.0 ); -} - -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -TEST( RigWellLogCurveData, interpolateSegment_second ) -{ - // Input data - const std::map> originalDepths = - { { RiaDefines::DepthTypeEnum::MEASURED_DEPTH, { 0.0, 20.0, 40.0 } }, - { RiaDefines::DepthTypeEnum::TRUE_VERTICAL_DEPTH, { 0.0, 30.0, 60.0 } }, - { RiaDefines::DepthTypeEnum::PSEUDO_LENGTH, { 0.0, 40.0, 80.0 } } }; - const std::vector propertyValues = { 0.0, 100.0, 150.0 }; - const double eps = 1e-6; - - // Output data - const auto resamplingDepthType = RiaDefines::DepthTypeEnum::MEASURED_DEPTH; - std::vector resampledValues; - std::map> resampledDepths; - - // Target data (resampling with MEASURED_DEPTH) - const double firstTargetDepthValue = 10.0; // Halfway between index 0 and 1 for MEASURED_DEPTH in originalDepths - const double secondTargetDepthValue = 30.0; // Halfway between index 1 and 2 for MEASURED_DEPTH in originalDepths - const size_t firstIndex = 0; - const size_t secondIndex = 1; - - // Call the function under test with first index and target value - RigWellLogCurveData::interpolateSegment( resamplingDepthType, - resampledValues, - resampledDepths, - firstTargetDepthValue, - firstIndex, - originalDepths, - propertyValues, - eps ); - - // Call the function under test with second index and target value - RigWellLogCurveData::interpolateSegment( resamplingDepthType, - resampledValues, - resampledDepths, - secondTargetDepthValue, - secondIndex, - originalDepths, - propertyValues, - eps ); - - // Check the results - ASSERT_EQ( resampledValues.size(), size_t( 2 ) ); - ASSERT_DOUBLE_EQ( resampledValues[0], 50.0 ); - ASSERT_DOUBLE_EQ( resampledValues[1], 125.0 ); - - ASSERT_EQ( resampledDepths.size(), size_t( 2 ) ); - ASSERT_EQ( resampledDepths[RiaDefines::DepthTypeEnum::TRUE_VERTICAL_DEPTH].size(), size_t( 2 ) ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::TRUE_VERTICAL_DEPTH][0], 15.0 ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::TRUE_VERTICAL_DEPTH][1], 45.0 ); - - ASSERT_EQ( resampledDepths[RiaDefines::DepthTypeEnum::PSEUDO_LENGTH].size(), size_t( 2 ) ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::PSEUDO_LENGTH][0], 20.0 ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::PSEUDO_LENGTH][1], 60.0 ); -} - -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -TEST( RigWellLogCurveData, CreateResampledValuesAndDepthsTest ) -{ - // Input data - RiaDefines::DepthTypeEnum resamplingDepthType = RiaDefines::DepthTypeEnum::MEASURED_DEPTH; - const std::vector targetDepths = { 0.0, 5.0, 10.0, 15.0 }; - const std::map> originalDepths = - { { RiaDefines::DepthTypeEnum::MEASURED_DEPTH, { 0.0, 10.0, 20.0 } }, - { RiaDefines::DepthTypeEnum::TRUE_VERTICAL_DEPTH, { 0.0, 20.0, 40.0 } }, - { RiaDefines::DepthTypeEnum::PSEUDO_LENGTH, { 0.0, 30.0, 60.0 } } }; - const std::vector propertyValues = { 0.0, 100.0, 200.0 }; - - // Call the function under test - auto result = RigWellLogCurveData::createResampledValuesAndDepths( resamplingDepthType, targetDepths, originalDepths, propertyValues ); - - // Check the results - std::vector& resampledPropertyValues = result.first; - std::map>& resampledDepths = result.second; - const auto expectedSize = targetDepths.size(); - - ASSERT_EQ( resampledDepths.size(), originalDepths.size() ); - ASSERT_EQ( resampledDepths[RiaDefines::DepthTypeEnum::MEASURED_DEPTH].size(), expectedSize ); - ASSERT_EQ( resampledDepths[RiaDefines::DepthTypeEnum::TRUE_VERTICAL_DEPTH].size(), expectedSize ); - ASSERT_EQ( resampledDepths[RiaDefines::DepthTypeEnum::PSEUDO_LENGTH].size(), expectedSize ); - - ASSERT_EQ( resampledPropertyValues.size(), expectedSize ); - - // Example assertions for the specific values - ASSERT_DOUBLE_EQ( resampledPropertyValues[0], 0.0 ); - ASSERT_DOUBLE_EQ( resampledPropertyValues[1], 50.0 ); - ASSERT_DOUBLE_EQ( resampledPropertyValues[2], 100.0 ); - ASSERT_DOUBLE_EQ( resampledPropertyValues[3], 150.0 ); - - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::MEASURED_DEPTH][0], 0.0 ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::MEASURED_DEPTH][1], 5.0 ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::MEASURED_DEPTH][2], 10.0 ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::MEASURED_DEPTH][3], 15.0 ); - - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::TRUE_VERTICAL_DEPTH][0], 0.0 ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::TRUE_VERTICAL_DEPTH][1], 10.0 ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::TRUE_VERTICAL_DEPTH][2], 20.0 ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::TRUE_VERTICAL_DEPTH][3], 30.0 ); - - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::PSEUDO_LENGTH][0], 0.0 ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::PSEUDO_LENGTH][1], 15.0 ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::PSEUDO_LENGTH][2], 30.0 ); - ASSERT_DOUBLE_EQ( resampledDepths[RiaDefines::DepthTypeEnum::PSEUDO_LENGTH][3], 45.0 ); -} diff --git a/ResInsightVersion.cmake b/ResInsightVersion.cmake index 20bb57080e..88f95645d2 100644 --- a/ResInsightVersion.cmake +++ b/ResInsightVersion.cmake @@ -1,17 +1,17 @@ set(RESINSIGHT_MAJOR_VERSION 2023) -set(RESINSIGHT_MINOR_VERSION 03) -set(RESINSIGHT_PATCH_VERSION 1) +set(RESINSIGHT_MINOR_VERSION 06) +set(RESINSIGHT_PATCH_VERSION 0) # Opional text with no restrictions -set(RESINSIGHT_VERSION_TEXT "-dev") -#set(RESINSIGHT_VERSION_TEXT "-RC_04") +#set(RESINSIGHT_VERSION_TEXT "-dev") +set(RESINSIGHT_VERSION_TEXT "-RC_01") # Optional text # Must be unique and increasing within one combination of major/minor/patch version # The uniqueness of this text is independent of RESINSIGHT_VERSION_TEXT # Format of text must be ".xx" -set(RESINSIGHT_DEV_VERSION ".01") +#set(RESINSIGHT_DEV_VERSION ".01") # https://github.com/CRAVA/crava/tree/master/libs/nrlib set(NRLIB_GITHUB_SHA "ba35d4359882f1c6f5e9dc30eb95fe52af50fd6f")