Commit Graph
47 Commits
Author SHA1 Message Date
Bård Skaflestad d9881f3766 Chase API for Well Specification Report
In particular, we now need to pass a flag that says whether or not
any of the run's well lists have changed since the previous report
step.  If so, the well specification report will emit a sheet
detailing the contents of all of the run's current well lists.
2025-10-20 10:07:44 +02:00
tskille 4c40796600 Add CSV output of FIP and RESV data
- can be requested with CSVFIP in keyword RPTSOL
- only output initial in place volumes
2025-06-19 14:33:33 +02:00
Bård Skaflestad fa45c41dd3 Don't Copy Well Objects When Well Names are Sufficient
In particular, favour calling member functions on
ScheduleState::wells to retrieve references to individual well
objects given a name instead of using Schedule::getWells() or
Schedule::getWellsAtEnd().  While convenient, these functions
introduce needless copies of all well objects stored in the Schedule
object.  This commit instead, where possible, uses the somewhat less
convenient ScheduleState::well_order() accessor and then accesses
individual wells by name.

To this end, change BlackoilWellModelGeneric::not_on_process_ from a
function taking a well and returning a bool into a function taking a
well name and returning a bool.
2025-06-19 09:27:57 +02:00
tskille bdc0edef69 Update PRT reports 2025-06-06 11:39:16 +02:00
David Landa Marban 9ebbcc3292 Summary vectors for water mass 2025-04-29 17:38:04 +02:00
Lisa Julia Nebel 240d90a38c Do not divide by zero but check before dividing 2025-04-24 10:42:14 +02:00
Bård Skaflestad e968387719 Trigger WELSPECS Report From Simulator Side
This achieves two goals

  1. It ensures proper sequencing with respect to other PRT file
     reports.
  2. It simplifies generating WELSPECS reports in restarted
     simulation runs.
2025-04-03 16:17:33 +02:00
Arne Morten Kvarving ba6ae2b285 cosmetics 2025-03-26 15:34:57 +01:00
Arne Morten Kvarving a3f8902a22 add support for MSW PRT report 2025-03-26 15:34:57 +01:00
Arne Morten Kvarving cdb48373ce added: support for WELLS=2 in cumulative report 2025-03-26 12:40:46 +01:00
Arne Morten Kvarving 853627d974 added: support for WELLS=2 in production report 2025-03-26 12:36:58 +01:00
Arne Morten Kvarving 79ab9c2fb8 added: support for WELLS=2 in injection report 2025-03-26 12:31:44 +01:00
Arne Morten Kvarving 7975ffba9b FipLog: output using {fmt} 2025-03-19 15:12:18 +01:00
Arne Morten Kvarving b40e28e467 ResvFipLog: output using {fmt} 2025-03-19 15:12:18 +01:00
Arne Morten Kvarving 02b10a462d CumulativeReport: output table entry using {fmt} 2025-03-19 14:03:01 +01:00
Arne Morten Kvarving d1b1ffb142 CumulativeReport: output report header using {fmt} 2025-03-19 14:03:01 +01:00
Arne Morten Kvarving fab7359866 CumulativeReport: output report ending border using {fmt} 2025-03-19 13:38:59 +01:00
Arne Morten Kvarving d5060f19ea ProductionReport: output table entry using {fmt} 2025-03-19 13:14:21 +01:00
Arne Morten Kvarving 0fa3e078de ProductionReport: output report header using {fmt} 2025-03-19 13:13:37 +01:00
Arne Morten Kvarving 3fca5e109c ProductionReport: output report ending border using {fmt} 2025-03-19 12:53:18 +01:00
Arne Morten Kvarving 678b89c7d4 InjectionReport: output report header using {fmt} 2025-03-19 12:38:07 +01:00
Arne Morten Kvarving 09934bdc2b InjectionReport: output report ending border using {fmt} 2025-03-19 11:26:00 +01:00
Arne Morten Kvarving 0e852a8454 InjectionReport: output THP/BHP using {fmt} 2025-03-19 11:26:00 +01:00
Arne Morten Kvarving f101c46598 InjectionReport: output rates using {fmt} 2025-03-19 11:26:00 +01:00
Arne Morten Kvarving e3038eb0a9 InjectionReport: output control modes using {fmt} 2025-03-19 11:26:00 +01:00
Arne Morten Kvarving 9ce863c8fa InjectionReport: properly align connection indices 2025-03-19 11:26:00 +01:00
Arne Morten Kvarving e3741cce1a InjectionReport: left adjust well name 2025-03-19 11:26:00 +01:00
Markus Blatt 69f39598cb Prevent some nan creations during output generation.
If rate that is the nominator is zero just store zero instead of
dividing it by another rater that might also be zero.

Makes searching for other nans more easy.
2025-03-13 11:24:55 +01:00
Bård Skaflestad 7184d1157b Simplify Value Aggregation for Group/Well Reports
In particular, switch to get_group_var() and get_well_var() instead
of the lower-level 'get()' function as the way to retrieve summary
values and replace lambdas called once with the actual logic.

Finally, switch to using named indices into the 'values' vector to
make the expressions (slightly) more readable.
2025-02-20 16:50:27 +01:00
Arne Morten Kvarving 58a930507a LogOutputHelper: optionally instantiate for float 2024-08-19 13:09:41 +02:00
Tor Harald Sandve b42a8cbcc3 Add output of GMST/GMUS
Rename GMTR to GMMO as ending with TR are used for tracers
[FR]GMTR output maximum trapped CO2 in the gas phase
2024-05-13 11:24:08 +02:00
David Landa Marban 9671792106 summary for immobile free-phase at saturations for which the nonwetting relative permeability equals zero 2024-04-12 15:31:22 +02:00
Arne Morten Kvarving d8fa9c3396 LogOutputHelper: align table 2024-02-23 08:20:14 +01:00
Markus Blatt 819842d7cf Fix linking errors when using shared libraries.
We accomplish that by passing the module version as a string to the
constructors of LogOutputHelper and EclGenericOutputBlackoilModel
instead of calling moduleVersionName() in LogOutputHelper. That way
moduleVersionName is not needed by libopmsimulators anymore and
compilation works again for people requesting shared libraries via
CMake's BUILD_SHARED_LIBS variable.
2024-01-29 16:37:38 +01:00
Tor Harald Sandve de05c84b1d Add co2 mass in place summary vectors 2024-01-26 09:15:43 +01:00
Bård Skaflestad 60c7c79f58 Output Well Flow Sheets for All Wells
There is no need to restrict PRT file flow reports to those wells
which are active on the current rank since the SummaryState object
holds information for all wells active at the current report step.
2024-01-08 08:58:51 +01:00
Torbjørn Skille 72892f0c4b PRT file updates
* Arrays genarated from RPTSOL + FIP is now strictly following Eclipse format
* Adding reservoir volume array also for custom FIP regions
2024-01-03 21:47:54 +01:00
Bård Skaflestad c03f794f9c Remove Dashed Lines Between Records in PRT File Reports
This commit splits the production, injection, and cumulative
*Report_() functions into three logically distinct parts, one for
outputting the report header (begin*Report_()), one for outputting a
single report record (output*ReportRecord_()), and one for ending
the report (end*Report_()).  This simplifies the logic of the
*Record_() member functions since they no longer need to infer the
context which is already available in the caller and can perform a
more narrow task than before.

With this separation we're also able to remove the dashed lines
which would previously separate each report record, thereby creating
PRT file report sheets which have a more expected layout.

Moreover, as an aid to future maintenance, we also factor out common
code for the well and group cases in each *Record_() function.

Finally, fix a unit conversion problem in the report values for
cumulative gas quantities.  The sheet header states that we should
be outputting values in 'MM' prefixed units, but we were only
scaling the gas values by a factor of 1000 instead of 1000*1000.  In
other words, the injection and production gas values in the
cumulative sheet were off by a factor of 1000.
2023-12-11 10:01:22 +01:00
Bård Skaflestad ec549df37b Remove Spurious Blank Lines in PRT File Reports
The StreamLog::addMessageUnconditionally() member function will end
each message with a newline (std::endl) so we should not add such
newlines ourselves.  The extra newline characters produce spurious
blank lines in the report sheets, e.g., for the "PRODUCTION REPORT".

This commit removes the last newline character from each report
request, thus deferring that responsibility to OpmLog::note()
instead.  Doing so, however, means we have take a little more care
with the first line of each report lest we create report sheets
which are smushed together.
2023-12-08 10:22:43 +01:00
Arne Morten Kvarving 44ce054492 changed: refactor LogOutputHelper::fip
only do one output per call. allow passing the name of the
regions to process
2023-11-09 13:08:17 +01:00
Arne Morten Kvarving 92fa9577da consistently use std::size_t 2023-08-15 09:32:10 +02:00
Arne Morten Kvarving b0f1e5d3f5 move output error log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving e2d4bae78d move output of fip reservoir log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving daced47301 move output of fip log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving f5985ff02f move output of injection log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving c9b703f40d move output of production log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving 91a4701fa4 added: add dedicated class for output of logs
start by moving output of cumulative logs to the new class
2023-08-14 11:44:32 +02:00