Вы находитесь на странице: 1из 36

See

discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/303882449

Troubleshooting gridding issues in Petrel: Effect


of MAPAXES Eclipse keyword and IJK Origin in
Petrel 2011.1
Technical Report March 2012
DOI: 10.13140/RG.2.1.1298.6489

CITATIONS

READS

125

1 author:
Hadi Parvizi
Teesside University
21 PUBLICATIONS 10 CITATIONS
SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Novel Approach of Production Forecasting Considering Heterogeneity Impact for Hydraulically


Fractured Wells View project

Available from: Hadi Parvizi


Retrieved on: 27 September 2016

Effect of MAPAXES and IJK Origin


Petrel 2011.1

Table of Contents
1.

Introduction .......................................................................................................................................... 3
1.1 Problem Statement ............................................................................................................................. 3

2.

ECLIPSE/FloViz Axes .............................................................................................................................. 4

3.

Petrel Axes ............................................................................................................................................ 5


3.1 Additional Controls for Importing into Petrel ..................................................................................... 8
3.2 Additional Controls for Exporting from Petrel .................................................................................. 14

4.

Workflows ........................................................................................................................................... 14
4.1: Exporting ECLIPSE Grid Properties from Petrel Using Global Coordinate System in Petrel ......... 14
4.1.1 Changing Traversal Order .......................................................................................................... 14
4.1.2 Changing traversal order (Traverse first along J then along I) ................................................... 20
4.1.3 Changing Petrel Cell Origin ........................................................................................................ 21
4. 2: Exporting ECLIPSE Grid Properties from Petrel Using Local Coordinate System in Petrel ........... 27
4.2.1 Changing Grid Traversal Order................................................................................................... 27
4.2.2 Changing traversal order (Traverse first along J then along I) ................................................... 31
4.2.3 Changing Petrel Cell Origin ........................................................................................................ 33

4.

The ECLIPSE GDORIENT keyword ........................................................................................................ 34

5.

Summary ............................................................................................................................................. 35

1. Introduction
With the large choice of software packages to use such as pre/post processor for reservoir simulation, it
is not surprising that there are some different assumptions of map axes and IJK origin. This document is
intended to help the user navigate this minefield when using Petrel and ECLIPSE/FloViz.
There might be 16 different combinations of the origin location and the order of reading i, j and k
direction as the following table shows:
Origin top-left: i first then j; K starting from Kmin
Origin top-right: i first then j; K starting from Kmin
Origin bottom-left: i first then j; K starting from Kmin
Origin top-right: i first then j; K starting from Kmin
Origin top-left: j first then i; K starting from Kmin
Origin top-right: j first then i; K starting from Kmin
Origin bottom-left: j first then i; K starting from Kmin
Origin top-right: j first then i; K starting from Kmin

Origin top-left: i first then j; K starting from Kmax


Origin top-right: i first then j; K starting from Kmax
Origin bottom-left: i first then j; K starting from Kmax
Origin top-right: i first then j; K starting from Kmax
Origin top-left: j first then i; K starting from Kmax
Origin top-right: j first then i; K starting from Kmax
Origin bottom-left: j first then i; K starting from Kmax
Origin top-right: j first then i; K starting from Kmax

2. Problem Statement
Using of Petrel as modeller and ECLIPSE as simulator will not require higher level of background
understanding of origin cell and map axes assumptions; since Petrel takes care of it automatically.
However, if using different set of packages with different coordinate system assumptions then
understanding this document would be crucial.
As an example, suppose you have used a left-handed coordinate system to define the grid and the
properties in the modeller software. Then you export the grid and properties in .GRDECL format to be
used in ECLIPSE. In order to define well completion and update the SCHEDULE section of the ECLIPSE
data deck; you wish to use Petrel. Petrel is assuming a right-handed coordinate system by default (refer
to section 3); thus when you import your data set (Grid and the properties that Petrel requires to define
COMPDAT keyword such as permeability, NTG, etc.) into Petrel; it gives you a warning about the lefthanded coordinate of the imported data. This warning is generated as Petrel recognizes the increasing
order of COORD/ZCORN items. You may click on OK and QC imported data. Then you define your new
wells, completions and development strategy. Now, you wish to partially export the SCHEDULE section
for the pre-defined ECLIPSE data deck. You need to adjust the grid settings as explained in section 4.
Therefore, if one wants to use different software packages with different coordinate system
assumptions to generate different parts of the ECLIPSE data deck and merge them together, strongly
advised to read this document.

3. ECLIPSE/FloViz Axes
In ECLIPSE and FloViz, the axes are a Right Handed System (RHS). The origin of the grid is at the top left
corner when looking at the grid from above. The cell numbers increases in the i-direction first then in j,
as shown by the arrows in Fig.1. When reading cell information, ECLIPSE assumes that the I direction
cycles fastest, followed by J and K. As an illustration, a model of 20 x 5 x 10 as in Fig.1 will have these
extents specified in the RUNSPEC section. ECLIPSE will expect to read the geometry data for a total of
1000 cells plus property data to calculate the pore volume and transmissibilities for each cell. The first
20 porosity values read by ECLIPSE will be assumed to be from cell (1, 1, 1) to (20, 1, 1). The next 20
porosity values will apply to cell (1, 2, 1) to (20, 2, 1) inclusive.

X-axis
Y-axis
Z-axis

Fig. 1) ECLIPSE/FloViz Axes and cell numbering illustration

4. Petrel Axes
Petrel also uses a (RHS) rule to determine X, Y and Z-axis.
Fig. 2 illustrates how the axis and positive directions are chosen.

Fig. 2) Petrel Axes illustration

Consequently, the cell numbering begins from the far left corner as shown in Fig.3:

11

Fig. 3) Cell numbering in Petrel

10

Fig. 4) Grid Settings

But this would be the case when the settings of the grid model are as Fig. 4; i.e. the origin is top-left and
the order of reading direction is i first then j; and k from top to bottom.
In Petrel, the users often prefer to have the origin shifted on Jmax-as shown in Fig. 5 below- to match
the origin position in ECLIPSE package (FloViz,) which previously was explained. This can be done in
Petrel by adjusting the settings shown in Fig.6 and to get results as shown in Fig.7 .

Origin
1,1,1

Fig. 5) ECLIPSE/FloViz origin


6 and cell numbering

Fig. 6) Petrel default settings of grid for exporting to the simulator and visualization

1,1,1

Fig. 7) Cell number compatibility for Petrel and ECLIPSE in case of default settings of grid export

3.1 Additional Controls for Importing into Petrel


If a case is imported into Petrel, window of Fig. 8 would pops up and one can specify the settings for grid
import by checking the Advanced icon as shown in Fig. 9.

Fig. 8) Petrel Import settings window

Fig. 9) Advanced settings for grid import in Petrel

Now to import ECLIPSE results into Petrel and to transform from ECLIPSE system to Petrel
system, Petrel basically just rotates the ECLIPSE axes system 180 about its X-axis until the Z-axes
points out of the screen. This is equivalent to

Negate the depth values

Negate the Y values

Move the corner of (1,1,1) to the supplied MAPAXES location ( if any)

Note: MAPAXES is an ECLIPSE optional keyword for input of pre-processor map origin. It specifies the
grid axes and the grid origin relative to the map coordinates. It is normally output by grid pre-processors
so that the origin of the maps used to generate the grid can be stored. (For more information please
refer to ECLIPSE Manual)

If Petrel is presented with a Left Handed Coordinate system;

This does NOT change the handedness of the coordinate system i.e. although y values
and K values are negated but Petrel is still working based on the right hand side. (Fig.2)

It performs the above coordinate systems and also flips the J indexing to recover
ECLIPSE indexing i.e. shifting J index to NY-J+1 (where NY is the maximum number of
cells in Y direction).

If Local Coordinate System is ticked ON; (Refer to Fig. 4)

Coordinates in file are assumed to be relative to MAPAXES coordinate system , if


MAPAXES not supplied this will be (0,0)

Negate the depth values

Negate the Y values

Add the MAPAXES origin values to every cell corner

If Global Coordinate System is ticked ON;

Coordinates in file are assumed to be already in the Petrel Axes system

Negate the depth values

Rotate the grid around the Petrel X axis

Example: Consider the following Grid and Property in different options of importing into Petrel;
SPECGRID
2 3 4/
COORD
1000 2000 1000 1100 2000 1100 1050 2000 1000 1150 2000 1100 1100 2000 1000 1200 2000 1100 1000 2200
1000 1100 2200 1100 1100 2200 1000 1200 2200 1100 1200 2200 1000 1300 2200 1100 1000 2600 1000 1100
2600 1100 1150 2600 1000 1250 2600 1100 1300 2600 1000 1400 2600 1100 1000 3200 1000 1100 3200 1100
1200 3200 1000 1300 3200 1100 1400 3200 1000 1500 3200 1100 /
ZCORN
24*1000 24*1100 24*1100 24*1200 24*1200 24*1300 24*1300 24*1400 /
PERMX
123456 123456 123456 123456 /

a) If this case is imported into Petrel with no MAPAXES specification and allocating local coordinate
default values as (0, 0) then you will observe the following Fig. 10.

10

Fig. 10) No MAPAXES specification and allocating local coordinate default values as (0, 0)

Thus, Y-axes are negated. In Z-Dimension all values are negated as well. Thus, the origin is shifted from
(1000,2000) to (1000,-2000) and the model is the same as ECLIPSE/FloViz appearance (no mirroring).
b) If this case is imported into Petrel with no MAPAXES specification and allocating local Origin
Coordinates of (5000, 7000) then you will observe the following Fig.11 .

11

Fig. 11) No MAPAXES specification and allocating local Origin Coordinates of (5000, 7000)

Thus, the Y-axes are negated then values are added to 7000. (i.e. 2000=>-2000 then, -2000+7000=>
5000 as you observe in y-origin). For X-axes, the values are simply added to the specified origin x-value
(i.e. 1000+5000=>6000 as you observe in x-origin). In Z-Dimension all values are negated.

c) If this case is imported into Petrel with no MAPAXES specification and allocating Global
Coordinates then you will observe the following Fig.12 in which the model is mirrored with
respect to X-axes. By the way the properties are allocated to the right cell.

12

Fig. 12) No MAPAXES specification and allocating Global Coordinates

Thus, the Y-axes are not negated anymore. For X-axes, the values are the same as well. Just the model
seems to be mirrored with respect to X-Axis due to different origin of the model and different positive
direction of Y-axes. In Z-Dimension all values are always negated.

13

3.2 Additional Controls for Exporting from Petrel


There is a setting panel for the grid to make user have the control of exporting options of grid. You may
go to the model panes, RMB on the grid and go to the settings, mapping, export settings for the
simulator and visualization as Fig. 6.
You need to be aware of the coordinate system of the simulator or the visualization software that you
want to use, and based on that information, adjust this panel.
Warning: Currently, Petrel does not support the Set K to Kmax and traverse first along J, then along I
transforms as input i.e. Petrel can export the Grid and the properties in such an order.

5. Workflows
4.1: Exporting ECLIPSE Grid Properties from Petrel Using Global Coordinate
System in Petrel
4.1.1 Changing Traversal Order
It is understood that the mapped coordinates are in the right hand system where the cell number
increases traverse along the i-direction first, then along j-direction. The workflow below will outline
how to change the order of cell numbering to be traverse j-direction first then along the i-direction and
how to change the cell origination points. Then look at its effects on the grid property, well location,
faults and aquifer keywords.
1. Open the IJKOnExport.pet project and click on ECLIPSE export settings... in the Project menu as
shown in Fig. 1.1, below:

Fig. 1.1: ECLIPSE export settings window

14

ECLIPSE export settings window-shown in Fig. 1.2-will pop-up, ensure to select Global coordinate
system in the File coordinate system section, this should take the coordinates as shown in petrel. Then
check the User defined cell origin, select Cell origin at (I=0, J=0, K), and Transverse first along I, then
along J in the Petrel cell origin section. Then click OK.

Fig. 1.2: ECLIPSE export settings

2. Select Export in the file menu, type in GCS_I0_J0_K0_IJ in the file name and ensure to select
ECLIPSE keywords (grid geometry and properties)ASCII(*,*) in the save as type and click Save. See
Fig.s 1.3 and 1.4 for illustrations

15

Fig. 1.3: File menu

Fig. 1.4: Export menu window

16

The ECLIPSE keywords (grid geometry and properties) (ASCII) window will pop-up, select IJK_PORO,
and click Export settings, you will see the ECLIPSE export settings window again, verify that current
settings is that set in the previous step, see Fig. 1.5. Then click OK, then OK in the Export units window.

Fig. 1.5: Export properties window

This should create a file in the location you saved it with the grid property keywords.
Open this file and look at the data in the COORD keyword, the first 6 numbers correspond to the topfirst 3-XYZ coordinates and the bottom-next 3-XYZ coordinate systems of the pillar at the origin of the
grid (originating corner of the first grid block). When you compare with the same point in the 3D
visualization of the grid, you will find that they are the same. Keep in mind that we are working in the
Global Coordinate System; the XY origin can be changed in the Local Coordinate System, which will be
covered in section 2. Subsequent sets of 6 numbers should correspond to the next corner in the order
which the grid is read (I-direction first, then J).
There are 2 PORO keywords, the first shows the porosity values for each grid block starting from the
originating block going in the direction the grid is read/printed when exported and the second shows the
17

porosity values for the local grid starting from the local grid cell that correspond to I=0, J=0 and K=0 and
going in the same direction as stated above. Click on IJK_PORO in the properties folder of the
GCS_I0_J0_K0_IJ grid in the model pane and select each grid block to compare each value, you will
find that they match. Fig. 6 shows the keywords.

Fig.
1.6: COORD and PORO keywords

As shown in Fig. 1, there is a fault that starts at the +Y face of cell (1,1,1) through cell (2,1,1), then turns
to move along the +X face of cell (2,2,1), and turns again to move along the +Y face of cell (3,2,1) to cell
(5,2,1).
3. Look at the FAULTS keyword, the expectation is for the keyword to represent the previously stated
location. This is shown table 1 below:
18

Table 1.1: FAULTS keyword


To view the FAULTS keyword, right click on the case GCS_I0_J0_K0_IJ in the cases pane. Then click
export only. See Fig. 1.7.

Fig. 1.6: Case based Export

After the keywords are exported, right click on the case again, and click editor, look in the grid folder
and open the FAULTS keyword.
An Aquifer was attached to the model; visualizing this aquifer, you will find that it is attached to the J
face of cells with i-range of 3 to 5, j-range of 1 to 1 and k range of 1 to 3, and the +I face of cells in irange 5 to 5, j-range of 1 to 2 and k-range of 1 to 3. This will create an AQUCON keyword that is shown
below in table 1.2.

19

Table 1.2: AQUCON keyword


4. Follow the workflow outlined above to view the FAULTS keyword, when you get to the editor, select
AQUCON in the grid section folder, you will find that the keyword matches that shown in the able
above.
5. The COMPDAT and COMPDATL keywords for both wells should match that shown in the table below
in table 1.3 and 1.4.

Table 1.3: COMPDAT keyword

Table 1.4: COMPDATL keyword


Check the keywords in the schedule section folder in the editor and you will find that the cell index for
the well location match that shown in the above.
4.1.2 Changing traversal order (Traverse first along J then along I)
Repeat the workflow outlined in section 1 step, but select Traverse first along J, then along I in the
ECLIPSE export settings window, then repeat step 2 as outlined above; however name the file
GCS_I0_J0_K0_JI this time.
The expectation is to see that the order of each (X,Y,Z) coordinate in the COORD keywords and the order
of porosity values in both PORO keywords to now be along the j-direction first then along i-direction.
Open the new file and look at the COORD and PORO keywords; this is shown in Fig. 1.8. You will find
that the order each XYZ coordinate is printed for the pillars in the grid is now along the j-direction first
then in the i-direction. This will also be noted in the order of porosity printed.

20

Fig. 1.8: COORD and PORO keyword for Traverse first along J, then along I reading/printing order

The FAULTS, AQUCON, COMPDAT and COMPDATL keywords should be the same as that in the previous
section because the cell index does not change when you change the reading order.
4.1.3 Changing Petrel Cell Origin
The previous exercise was completed with the cell origin at I=0, J=0 and K=0, in the following exercise,
the cell origin will be changed to:

21

I=0, J=Max and K=0


I=Max, J=0 and K=0
I=Max, J=Max and K=0
For the Case 1 with I=0, J= Max and K=0, follow the workflow outlined in section 1, step 1 but ensure
to select Cell origin at (I=0, J=M, K) in the Petrel cell origin section of the ECLIPSE export settings
window, then follow step 2.
Using the previous section-where the cell originated from I=0, J=0 and K=0-as a base case, the
expectation is that the cell origin will move to the position corresponding to the minimum value of I
and the maximum value of J and the cell numbering will start from there traverse along i-direction
first then along j-direction. The COORD keyword will now look like that shown in table 1.5 below as
compared to base case in table 1.6 below

Table 1.5: Case 1 COORD keyword

Table 1.6: Base Case COORD keyword

The PORO Keywords will show values listed in table 1.7 and 1.8, as compared to those in the base
case that is shown in table 1.9 and 1.10.

22

Table 1.7: Case 1 PORO keyword

Table 1.8: Base case PORO keyword

Table 1.9: Case 1 local grid PORO keyword


keyword

Table 1.10: Base case local grid PORO

Ensure to save the exported files as GCS_I0_JM_K0_IJ, open the files and look at the keywords,
you will find that they match with values shown in the above tables.
Look at the FAULTS keyword and you should expect to find the data in the order shown in table 1.11
below:

Table 1.11: Case 1 FAULTS keyword


23

Look at the AQUCON Keyword and you should expect it to match that data shown in table 1.12
below:

Table 1.12: Case 1 AQUCON keyword


The COMPDAT and COMPDATL keywords show match that shown in tables 1.13 and 1.14 below:

Table 1.13: Case 1 COMPDAT keyword

Table 1.14: Case 1 COMPDATL keyword


Repeat the workflow outlined in section 1, step 1 for case 2 with I=Max, J=0 and K=0 and case 3 with
I=Max, J=Max and K=0. Ensure to select Cell origin at (I=M, J=0, K) and Cell origin at (I=M, J=M,
K) for case 2 and 3 respectively in the Petrel cell origin section of the ECLIPSE export settings
window, then follow step 2. Save the exported files as GCS_IM_J0_K0_IJ for case 3 and
GCS_IM_JM_K0_IJ for case 4.
Open each exported file and review. The expectation is to haves in the COORD keywords as shown
in table 1.15 and 1.16, and PORO keyword shown in table 1.16 to 1.20.

24

Table 1.15: Case 2 COORD keyword

Table 1.16: Case 3 COORD keyword

Table 1.17: Case 2 PORO keyword

Table 1.18: Case 3 PORO keyword

25

Table 1.19: Case 2 local grid keyword

Table 1.20: Case 3 local grid keyword

The FAULTS keywords should be as shown in tables 1.21 and 1.22 for cases 2 and 3 respectively.

Table 1.21: Case 2 FAULTS keyword

Table 1.22: Case 3 FAULTS Keyword


The AQUCON keyword should match table 1.23 and 1.24 for cases 2 and 3 respectively.

Table 1.23: Case 2 AQUCON keyword

Table 1.24: Case 3 AQUCON keyword


The COMPDAT and COMPDATL IJ cell index will also change in cases 2 and 3.
26

4. 2: Exporting ECLIPSE Grid Properties from Petrel Using Local Coordinate


System in Petrel
4.2.1 Changing Grid Traversal Order
1. Read section 1 and follow instructions in step 1 to get to the ECLIPSE export settings window.
Ensure to select Local coordinate system in the File coordinate system section, set the
Coordinate system origin X and Y values to 0 and 0 respectively. This should force the grid
coordinate to start from point (0,0). Then check the User defined cell origin, select Cell origin at
(I=0, J=0, K), and Transverse first along I, then along J in the Petrel cell origin section. Click OK.

2.
Fig. 2.1: ECLIPSE export settings

3. Select Export in the file menu, type in LCS_I0_J0_K0_IJ in the file name and ensure to select
ECLIPSE keywords (grid geometry and properties)ASCII(*,*) in the save as type and click Save. See
Fig.s 2.2 and 2.3 for illustrations

27

Fig. 2.2: File menu

28

Fig. 2.3: Export menu window

The ECLIPSE keywords (grid geometry and properties) (ASCII) window will pop-up, select IJK_PORO,
and click Export settings, you will see the ECLIPSE export settings window again, verify that current
settings is that set in the previous step, see Fig. 2.4. Then click OK. Then OK in the Export units window.

29

Fig. 2.4: Export properties window

This should create a file in the location you save it with the grid property keywords.
Open this file and look at the data in the COORD keyword, the first 6 numbers correspond to the topfirst 3-XYZ coordinates and the bottom-next 3-XYZ coordinate systems of the pillar at the origin of the
grid. You will find that the X, Y coordinates correspond to the values entered in the ECLIPSE export
settings window.
The PORO keyword will show porosity values for each grid block starting from the originating block
going in the direction the grid is read/printed when exported. Click on IJK_PORO in the properties
folder of the LCS_I0_J0_K0_IJ grid in the model pane and select each grid block to compare each
value, you will find that they match. Fig. 2.5 shows the keywords.

30

Fig. 2.5: COORD and PORO keywords

4.2.2 Changing traversal order (Traverse first along J then along I)


Repeat step 1 above but select Traverse first along J, then along I in the ECLIPSE export settings
window, then repeat step 2 as outlined above; however name the file LCS_I0_J0_K0_JI this time.
Open the new file and look at the COORD and PORO keywords; this is shown in Fig. 2.6. You will find
that the order each XYZ coordinate is printed for the pillars in the grid is now along the j-direction first
then in the i-direction. This will also be noted in the order of porosity printed.

31

Fig. 2.6: COORD and PORO keyword for Traverse first along J, then along I reading/printing order

Follow step 3 of section 1.1 to generate the FAULTS Keyword, and it should match that shown in table
2.1 below:

Table 2.1: FAULTS Keyword


They keyword is identical to that of the global case, and should not be different because, changing only
the coordinate system from global to local does not affect the cell XYZ or IJK index.
The AQUCON keyword should also be identical to that of the global case and should not change when
modifying the reading/printing order of cell.

32

4.2.3 Changing Petrel Cell Origin


As done in section 1.2.1, we will changed the cell origin to that shown below and look at how the grid
property keywords will change.
For the Case 1 with I=0, J= Max and K=0, follow the workflow outlined in section 1, step 1 but ensure to
select Local coordinate system in the File coordinate system section, set the Coordinate system
origin X and Y values to 0 and 0 respectively. Then select Cell origin at (I=0, J=M, K) in the Petrel cell
origin section of the ECLIPSE export settings window, then follow step 2 in section 1.1.
The COORD keyword will look like that shown in table 2.2 below:

Table 2.2: (0,M,0) cell origin COORD keyword


Repeat the workflow to change the cell origin to (I=Max, J=0 and K=0) and (I=Max, J=Max and K=0) and
the COORD keywords for each case should match tables 2.3 and 2.4 respectively.

33

Table 2.3: (M,0,0) cell origin COORD keyword

Table 2.4: (M,M,0) cell origin COORD keyword

As stated in section 2.1, the FAULTS, AQUCON, COMPDAT, COMPDATL keywords should be identical to
that shown in section 1.2 for each of the cell origin cases.

4. The ECLIPSE GDORIENT keyword


This keyword, new for 2011 ECLIPSE, records the traversal order of properties in IJK space, the Z axis
direction and the grid handedness of the grid containing the properties in the ECLIPSE file. One may
check it by opening the exported formatted Grid. ECLIPSE 2011.1 onwards exports this keyword even it
is not mentioned in data deck into the output grid.
Petrel 2011.1 is not exporting this keyword and the user is supposed to define it, if it is required.

34

5. Summary
All in all, if you want to have the same model appearance with respect to the north (not mirrored), you
may choose local coordinates (default for importing in Petrel) in which Petrel negates Y-values and Z
values and whenever Petrel exports for the Simulator, it works based on the grid export settings
(Default: shifting J to Jmax to be compatible with ECLIPSE/FloViz). By this method, the user can use
Petrel and ECLIPSE/FloViz without any mirroring problem or data inconsistency.
Petrel can export the grid for third party software with different coordinate system and cell numbering
approach but bear in mind that Petrel is not supposed to import/interpret the exported grid settings
with cell numbering other than the I direction cycles fastest, followed by J and K.

35