mirror of
https://github.com/OPM/ResInsight.git
synced 2026-10-24 22:27:55 -05:00
Read the summary unit system from SMSPEC INTEHEAD, and fall back to vector units for ESMRY files without SMSPEC. The unit system is read on first request to keep summary import fast. Ensembles use the same realization as for addresses. New RFT plots get the depth unit from their data sources.
61 lines
1.9 KiB
C++
61 lines
1.9 KiB
C++
/////////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Copyright (C) 2025 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 <http://www.gnu.org/licenses/gpl.html>
|
|
// for more details.
|
|
//
|
|
/////////////////////////////////////////////////////////////////////////////////
|
|
|
|
#pragma once
|
|
|
|
#include "RiaDefines.h"
|
|
|
|
#include "RifEclipseSummaryAddress.h"
|
|
|
|
#include <QString>
|
|
|
|
#include <expected>
|
|
#include <map>
|
|
#include <set>
|
|
#include <string>
|
|
#include <tuple>
|
|
#include <vector>
|
|
|
|
namespace Opm
|
|
{
|
|
namespace EclIO
|
|
{
|
|
class ESmry;
|
|
} // namespace EclIO
|
|
} // namespace Opm
|
|
|
|
namespace RifOpmSummaryTools
|
|
{
|
|
std::tuple<std::set<RifEclipseSummaryAddress>, std::map<RifEclipseSummaryAddress, size_t>, std::map<RifEclipseSummaryAddress, std::string>>
|
|
buildAddressesSmspecAndKeywordMap( const Opm::EclIO::ESmry* summaryFile );
|
|
|
|
std::pair<std::set<RifEclipseSummaryAddress>, std::map<RifEclipseSummaryAddress, std::string>>
|
|
buildAddressesAndKeywordMap( const std::vector<std::string>& keywords );
|
|
|
|
SummaryCategory categoryFromKeyword( const std::string& keyword );
|
|
|
|
QString enhancedSummaryFilename( const QString& fileName );
|
|
QString smspecSummaryFilename( const QString& fileName );
|
|
bool isEsmryConversionRequired( const QString& fileName );
|
|
|
|
RiaDefines::EclipseUnitSystem readUnitSystem( const QString& smspecFileName );
|
|
|
|
std::expected<int, QString> extractRealizationNumber( const QString& path );
|
|
|
|
}; // namespace RifOpmSummaryTools
|