Files
ResInsight/GrpcInterface/Python/rips/example_input_files/simulator_events.events
T
Kristian Bendiksen 8324af966c #14666 Simulator Events: Expand INSERT_DATE into insert-date events
INSERT_DATE statements are now expanded into one timeline event per
occurrence instead of a list of bare dates, so each generated date keeps
the COMMENT of its statement.

- New RimWellEventInsertDate (EventType::INSERT_DATE): a date-only event
  that generates no keyword, added with
  WellEventTimeline.add_insert_date_event(event_date, comment).
- The schedule generator writes the comment of an insert-date event as
  "--" lines directly below its DATES keyword.
- generate_schedule(_text) no longer takes additional_dates; insert-date
  events are part of the timeline, but keep the previous behavior of not
  being filtered by set_timestamp().
- SimulatorEventsDocument.report_dates and ApplyReport.report_dates are
  replaced by SimulatorEventsDocument.insert_date_events/insert_dates;
  merging files drops insert dates repeating both date and comment.
2026-09-25 14:35:45 +02:00

52 lines
2.3 KiB
Plaintext

# Example SIMEVENTS well-event-timeline file (version 1.1).
# Parsed by rips.simulator_events; see that module's docstring for the grammar.
# Validate with: python3 -m rips.simulator_events simulator_events.events
SIMEVENTS 1.2
UNIT METRIC
# Typed declarations: dates, Go-style durations (e.g. 5d, 12h30m), well-name aliases, and
# cell filter expressions.
DATE A1_STARTUP = 2018-01-01
DATE A2_STARTUP = 2018-03-01 + 9d
DURATION RAMP = 5d
# A filter becomes a case-level combined data filter attached to the
# perforations that reference it. An unqualified result name is searched in
# STATIC_NATIVE, then DYNAMIC_NATIVE, then GENERATED results; bounds are
# inclusive, so > behaves as >=.
FILTER POROPERM = "PORO > 0.1 AND PERMX > 100.0"
WELL A1 = "55_33-A-1"
# Inserted dates become bare DATES keywords in the generated schedule. Recurring
# dates may use an explicit inclusive end date or default to the last event, and
# a COMMENT is repeated below every generated date.
SCHEDULE
A1_STARTUP INSERT_DATE EVERY=1mon COMMENT="Monthly report"
A2_STARTUP INSERT_DATE EVERY=30d UNTIL="A2_STARTUP + 90d"
# Raw schedule text is preserved verbatim. This block is inserted immediately
# after the date declaration; lower priorities are emitted first when multiple
# blocks use the same placement.
SCHEDULE
A1_STARTUP + RAMP RAW_TEXT PLACEMENT=AFTER_DATE PRIORITY=10
-- Custom schedule text not modeled by the timeline API
WTRACER
'55_33-A-1' 'SIMULATOR_EVENTS_TRACER' 1.0 /
/
END_RAW_TEXT
WELL A1
A1_STARTUP PERFORATION MDSTART=1644.49 MDEND=1664.28 DIAMETER=0.2413 SKIN=5 COMPLETION_NUMBER=1 FILTER=POROPERM
A1_STARTUP PERFORATION MDSTART=1664.28 MDEND=1674.18 DIAMETER=0.2413 SKIN=5 COMPLETION_NUMBER=2 FILTER=POROPERM
A1_STARTUP PERFORATION MDSTART=1674.18 MDEND=1689.82 DIAMETER=0.2413 SKIN=5 COMPLETION_NUMBER=3
A1_STARTUP + RAMP WCONHIST STATUS=OPEN CMODE=ORAT VFP=1
A1_STARTUP + RAMP WELTARG CMODE=BHP VALUE=50
WELL "55_33-A-2"
# An inline quoted expression declares an anonymous filter for one event.
A2_STARTUP - 1d PERFORATION MDSTART=1692.79 MDEND=1706 DIAMETER=0.2413 SKIN=5 COMPLETION_NUMBER=1 FILTER="PORO > 0.2"
A2_STARTUP WCONHIST STATUS=OPEN CMODE=ORAT VFP=2
A2_STARTUP WELTARG CMODE=BHP VALUE=50