Simulation input: Add refinement test.

This commit is contained in:
Kristian Bendiksen committed 2025-12-01 14:20:49 +01:00
1 parent 475e05da88
commit e08ba63f01
3 files changed
+194 -5

No files matched your search

@@ -446,9 +446,10 @@ std::expected<caf::VecIjk1, QString> RigGridExportAdapter::transformIjkToSectorC
// Transform to sector-relative coordinates with refinement
// Eclipse uses 1-based indexing, so we'll return 1-based coordinates
size_t sectorI = ( originalIjk.x() - min.x() ) * refinement.x() + 1;
size_t sectorJ = ( originalIjk.y() - min.y() ) * refinement.y() + 1;
size_t sectorK = ( originalIjk.z() - min.z() ) * refinement.z() + 1;
// Center the coordinate in the refined cell block
size_t sectorI = ( originalIjk.x() - min.x() ) * refinement.x() + ( refinement.x() + 1 ) / 2;
size_t sectorJ = ( originalIjk.y() - min.y() ) * refinement.y() + ( refinement.y() + 1 ) / 2;
size_t sectorK = ( originalIjk.z() - min.z() ) * refinement.z() + ( refinement.z() + 1 ) / 2;
return caf::VecIjk1( sectorI, sectorJ, sectorK );
}
@@ -539,8 +539,9 @@ std::expected<Opm::DeckRecord, QString> RigSimulationInputTool::processWelspecsR
size_t clampedJ = std::max( settings.min().y(), std::min( settings.max().y(), static_cast<size_t>( origJ ) ) );
// Transform with clamped coordinates (this will always succeed)
size_t sectorI = ( clampedI - settings.min().x() ) * settings.refinement().x() + 1;
size_t sectorJ = ( clampedJ - settings.min().y() ) * settings.refinement().y() + 1;
// Center the coordinate in the refined cell block
size_t sectorI = ( clampedI - settings.min().x() ) * settings.refinement().x() + ( settings.refinement().x() + 1 ) / 2;
size_t sectorJ = ( clampedJ - settings.min().y() ) * settings.refinement().y() + ( settings.refinement().y() + 1 ) / 2;
if ( origI < static_cast<int>( settings.min().x() ) || origI > static_cast<int>( settings.max().x() ) ||
origJ < static_cast<int>( settings.min().y() ) || origJ > static_cast<int>( settings.max().y() ) )