@@ -585,6 +585,83 @@ are correctly associated with reservoir zones.
585585If a zone is specified but no ZONEMAP is provided, or if the observation location doesn't match
586586the expected zone, the observation will be deactivated with a warning during the simulation.
587587
588+
589+ .. _seismic_observation :
590+
591+ SEISMIC_OBSERVATION keyword
592+ ---------------------------
593+
594+ The keyword ``SEISMIC_OBSERVATION `` is used to condition on spatially
595+ distributed observations along a horizon, such as 4D seismic attributes
596+ (amplitude, time-shift, impedance change, etc.). Each observation
597+ represents a single measurement at a specific horizontal location, and a
598+ single ``SEISMIC_OBSERVATION `` declaration typically defines many
599+ individual measurements loaded from an external file.
600+
601+ A minimal seismic observation is created as follows:
602+
603+ .. code-block :: none
604+
605+ SEISMIC_OBSERVATION OBS_MEAN_2025 {
606+ OBS_FILE = path/to/observations.csv;
607+ };
608+
609+ The name (``OBS_MEAN_2025 `` above) is used as a label for the observation
610+ within ERT and must be unique. If the name is omitted, the stem of the
611+ observation file will be used.
612+
613+ Observations are read from either a CSV file or a Parquet file. The file
614+ type is determined from the file extension (``.csv `` or ``.parquet ``).
615+ Parquet is the preferred format for seismic observations as it is a typed,
616+ compressed binary format that is significantly smaller and faster to load
617+ than CSV. The file must contain one row per observation with the following
618+ required columns:
619+
620+ - ``X_UTME ``: Easting coordinate of the measurement location.
621+ - ``Y_UTMN ``: Northing coordinate of the measurement location.
622+ - ``OBS ``: The observed value at that location.
623+ - ``OBS_ERROR ``: The observation error (absolute standard deviation).
624+
625+ .. note ::
626+ The ``CSV `` key is a deprecated alias for ``OBS_FILE ``.
627+ Existing configurations using ``CSV = path/to/observations.csv; `` will
628+ continue to work but emit a deprecation warning; new configurations should
629+ use ``OBS_FILE ``. ``OBS_FILE `` and ``CSV `` cannot be combined in the same
630+ declaration.
631+
632+ An example of such a CSV could look like this:
633+
634+ .. code-block :: none
635+
636+ X_UTME,Y_UTMN,OBS,OBS_ERROR
637+ 463401.665023891,6929758.90312445,0.008602961,0.005
638+ 463312.374851203,6929712.58234601,-0.007062605,0.005
639+ 463245.488743621,6929689.04095157,0.009096828,0.005
640+ 463198.920134567,6929645.33178924,-0.007231411,0.005
641+
642+ All observation coordinates within a single ``SEISMIC_OBSERVATION ``
643+ declaration must be at least 0.2 m apart. Overlapping or duplicate
644+ coordinates will cause ERT to raise a configuration error.
645+
646+ Limiting observations with a boundary polygon
647+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
648+
649+ An optional ``BOUNDARY `` file may be provided to restrict which
650+ observations are used during the update step. Observations located
651+ outside the polygon are deactivated. The boundary file must contain a
652+ closed polygon, given as ``X Y Z `` triplets, with the polygon terminated
653+ by a line containing ``999.0 999.0 999.0 ``:
654+
655+ .. code-block :: none
656+
657+ SEISMIC_OBSERVATION OBS_MIN_2025 {
658+ OBS_FILE = path/to/observations.csv;
659+ BOUNDARY = path/to/boundary.pol;
660+ };
661+
662+ The boundary file is resolved relative to the directory containing the
663+ observation configuration file, the same as ``OBS_FILE ``.
664+
588665.. _localization_keyword :
589666
590667The LOCALIZATION keyword - Configuring observations with location
@@ -765,80 +842,3 @@ is ``summary``. Valid formats are:
765842 - date: '2015-03-15'
766843 value: 0.015
767844 error: 0.01
768-
769-
770- .. _seismic_observation :
771-
772- SEISMIC_OBSERVATION keyword
773- ---------------------------
774-
775- The keyword ``SEISMIC_OBSERVATION `` is used to condition on spatially
776- distributed observations along a horizon, such as 4D seismic attributes
777- (amplitude, time-shift, impedance change, etc.). Each observation
778- represents a single measurement at a specific horizontal location, and a
779- single ``SEISMIC_OBSERVATION `` declaration typically defines many
780- individual measurements loaded from an external file.
781-
782- A minimal seismic observation is created as follows:
783-
784- .. code-block :: none
785-
786- SEISMIC_OBSERVATION OBS_MEAN_2025 {
787- OBS_FILE = path/to/observations.csv;
788- };
789-
790- The name (``OBS_MEAN_2025 `` above) is used as a label for the observation
791- within ERT and must be unique. If the name is omitted, the stem of the
792- observation file will be used.
793-
794- Observations are read from either a CSV file or a Parquet file. The file
795- type is determined from the file extension (``.csv `` or ``.parquet ``).
796- Parquet is the preferred format for seismic observations as it is a typed,
797- compressed binary format that is significantly smaller and faster to load
798- than CSV. The file must contain one row per observation with the following
799- required columns:
800-
801- - ``X_UTME ``: Easting coordinate of the measurement location.
802- - ``Y_UTMN ``: Northing coordinate of the measurement location.
803- - ``OBS ``: The observed value at that location.
804- - ``OBS_ERROR ``: The observation error (absolute standard deviation).
805-
806- .. note ::
807- The ``CSV `` key is a deprecated alias for ``OBS_FILE ``.
808- Existing configurations using ``CSV = path/to/observations.csv; `` will
809- continue to work but emit a deprecation warning; new configurations should
810- use ``OBS_FILE ``. ``OBS_FILE `` and ``CSV `` cannot be combined in the same
811- declaration.
812-
813- An example of such a CSV could look like this:
814-
815- .. code-block :: none
816-
817- X_UTME,Y_UTMN,OBS,OBS_ERROR
818- 463401.665023891,6929758.90312445,0.008602961,0.005
819- 463312.374851203,6929712.58234601,-0.007062605,0.005
820- 463245.488743621,6929689.04095157,0.009096828,0.005
821- 463198.920134567,6929645.33178924,-0.007231411,0.005
822-
823- All observation coordinates within a single ``SEISMIC_OBSERVATION ``
824- declaration must be at least 0.2 m apart. Overlapping or duplicate
825- coordinates will cause ERT to raise a configuration error.
826-
827- Limiting observations with a boundary polygon
828- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
829-
830- An optional ``BOUNDARY `` file may be provided to restrict which
831- observations are used during the update step. Observations located
832- outside the polygon are deactivated. The boundary file must contain a
833- closed polygon, given as ``X Y Z `` triplets, with the polygon terminated
834- by a line containing ``999.0 999.0 999.0 ``:
835-
836- .. code-block :: none
837-
838- SEISMIC_OBSERVATION OBS_MIN_2025 {
839- OBS_FILE = path/to/observations.csv;
840- BOUNDARY = path/to/boundary.pol;
841- };
842-
843- The boundary file is resolved relative to the directory containing the
844- observation configuration file, the same as ``OBS_FILE ``.
0 commit comments