0% found this document useful (0 votes)
19 views73 pages

SCAL Plug-in: Workflow Guide for Reservoir Modeling

The SCAL plug-in is designed for Reservoir Engineers to prepare static models using data from Techlog, facilitating workflows for generating tables for dynamic model initialization. It includes guided workflows for rock type and end point generation, utilities for data import and processing, and methods for capillary pressure and relative permeability. The tool allows for the creation of conceptual models and the optimization of parameters through an interactive interface, ultimately producing .dat tables for use in Petrel Reservoir Engineering.

Uploaded by

Youcef Slimi
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views73 pages

SCAL Plug-in: Workflow Guide for Reservoir Modeling

The SCAL plug-in is designed for Reservoir Engineers to prepare static models using data from Techlog, facilitating workflows for generating tables for dynamic model initialization. It includes guided workflows for rock type and end point generation, utilities for data import and processing, and methods for capillary pressure and relative permeability. The tool allows for the creation of conceptual models and the optimization of parameters through an interactive interface, ultimately producing .dat tables for use in Petrel Reservoir Engineering.

Uploaded by

Youcef Slimi
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

SCAL plug-in

SCAL plug-in

Contents
SCAL overview....................................................................................................................... 4
Guided workflows..............................................................................................................................4
Rock type to table.........................................................................................................................4
End points to table........................................................................................................................5
Keff from tables...........................................................................................................................16
Generate KR from PC.................................................................................................................21
Utilities.............................................................................................................................................32
Import from Excel........................................................................................................................33
Deterministic Rock Typing.......................................................................................................... 34
Generate KR from end points.....................................................................................................46
Generate PC from end points.....................................................................................................50
Table Generation........................................................................................................................ 53
Capillary pressure methods............................................................................................................ 55
Closure correction.......................................................................................................................55
Clay-bound water correction.......................................................................................................56
Conversion and Capping............................................................................................................ 58
Averaging - Capillary pressure................................................................................................... 61
Relative permeability methods........................................................................................................ 62
Averaging - Relative permeability............................................................................................... 62
Modeling - Relative permeability.................................................................................................65
Workflow Engine............................................................................................................................. 67
Edit inputs, parameters, and outputs..........................................................................................68
Workflow Engine Execution mode.............................................................................................. 71
Save and restore a workflow...................................................................................................... 71
Automatic launch........................................................................................................................ 72
Save the workflow with parameter settings................................................................................ 72

3
SCAL plug-in

SCAL overview
You can use the SCAL plug-in to prepare a static model the way a Reservoir Engineer does. That is,
with the data present in Techlog and used by the petrophysicist.
The final output is a table that can be used by the simulator, or in Petrel Reservoir Engineering, to
initialize the dynamic model. Guided workflows are also available once the data has been imported
into Techlog to perform two possible workflows:
• Deterministic rock typing to table generation.
• End point generation to table generation.

Guided workflows
A guided workflow is an interface that lets you build a workflow in the workflow engine environment.
Two guided workflows, Rock type to table and End point to table, are provided to help you set up a
workflow without having to manually edit the logical links between the different methods. Once a
workflow is built, you can save it and use it at a later stage.

Rock type to table


You can use this workflow to help you set up the steps needed to prepare your data for the simulation
of an Oil-Water system using an end point scaling approach.
The rock type to table guided workflow structure is:
• Introduction.
• Method selection: Activate or deactivate the optional steps in the workflow, as follows:
• Closure correction: This is only needed for MICP data.
• Clay bound water (CBW) Correction: This is only needed for MICP data.
• Modeling: You can use this to smooth the relative permeability curves after averaging in case
normalization is applied.

Note: Modeling is an optional step, it will work on normalized curves. If you don't
want the output tables to use normalized data, you should not use Modeling.

• Data selection: You can use this to drag Capillary pressure and relative permeability datasets from
the same well into their respective field.
• Deterministic Rock Typing: Rock typing is first done on the permeability dataset, which usually
contains more data. The method and cutoffs you select in Data selection are applied to the relative
permeability dataset. You can go back and forth between the two steps to fine tune the positions of
the cutoffs.
• Capillary pressure: The methods related to capillary pressure are run:
• Closure correction: This is optional for MICP data.
• Clay bound water (CBW) Correction: This is optional for MICP data.
• Conversion and capping.
• Averaging for capillary pressure.
• Relative permeability: The methods related to relative permeability are run:
• Averaging for relative permeability.
• Modeling: Use to smooth the averaged data.
• Table Generation: This is the final step to generate a .dat table to be used in Petrel Reservoir
Engineering, for example. This table contains the data required for the dynamic model
initialization:

SCAL overview > Guided workflows > Rock type to table 4


SCAL plug-in

• Sw [Link]: To get the static model and initial volumes.


• Sw vs. KR (oil and water): To get an update of Sw.
• KRs: Values at each step of the simulation.

End points to table


You can use this workflow to help you set up the steps needed to prepare the data for simulation in
Oil-Water, Gas-Water, or Gas-Oil-Water systems in a parameterized approach.
Introduction to the conceptual model generator

Note: The SCAL plug-in interface has changed since this video was recorded, however the
steps demonstrated in the video remain accurate.

The end points to table guided workflow structure is:


• Introduction.
• Fluids system selection. You can choose from:
• Oil-Water.
• Oil-Water Gas-Oil.
• Gas-Water.
For more information of how the end points are generated for the different fluid systems, refer to
the SCAL Toolbox help page.
• Data selection: You can use this to drag the dataset containing the clustered K, Phi, or Swi
variables you want to use to generate the end points for capillary pressure and relative
permeability curves.
• Confirm the right variables are properly selected. A number of checks are done on families to pre-
filter the variables:
• Swi accepts any family whose measurement is water saturation.
• K accepts any family whose measurement is permeability.
• Phi accepts any family whose measurement is porosity.
• You must select the Corey and LET models for the relative permeability generation.
• Parameters and end points generation: You must specify any relationships between parameters
and inputs. See the Parameters and end point generation section below for more information.
• Options for the table format are specified:
• Family I or II: This is only relevant for the case of Gas-Oil-Water system.
• Number of lines: The default value is 20. This sets the number of lines for the table in the
output files.
• The pressure unit in the output table is set.
• You must add any additional suffix before you generate the table.

Note: The previous table may be overwritten if generated the same day.

• Table Generation: This is the final step to generate a .dat table to be used in Petrel Reservoir
Engineering for example. A workflow is generated in the background and a link to the folder is
generated. Select the link to open the .dat file to check its content.

Parameters and end point generation


Default values are constant values and can be replaced by equations following the python syntax.

SCAL overview > Guided workflows > End points to table 5


SCAL plug-in

Note: In the equation used for each parameter or end point, you can use a dependency on
input. You must comply with the following constrains:
• For a dependency on permeability: k is used in the equation, regardless of the name of
the variable used as input.
• For a dependency on porosity: phi is used in the equation, regardless of the name of the
variable used as input.
• For a dependency on irreducible water saturation: swi is used in the equation,
regardless of the name of the variable used as input.
• For a critical point (SWCR or SGCR) you can use an equation using swl, because swl is
defined in the script before the critical point.

You must use k, phi, or swi in the equation because these are the names of the local variables used
in the python script that runs in the background.
For example, if a dependency on permeability is required, then using K, CKh, or any name other than
k in the equation, results in an execution error and the workflow is aborted.

Note: Python syntax must be used when entering equations. The following are examples of
operators that you can use in equations:
• log10(k)/100
• pow(phi,2)
• min(0.3,max(0, 5*(0.2+phi)/6))
• 0.2 if k > 1000 else 0.3

Note: See reference: SCA2014-080: Parameter based SCAL - Analysing relative


permeability for full field application, Einar Ebeltoft et al. for more information on flow
properties from SCAL experiments.

Conceptual model generator


You can use the conceptual model generator to generate a conceptual model for each end point or
parameter in the End point to table wizard.

With the conceptual model generator you can:


• Choose the equation.
• Define the dataset and variables.
• Map the variables for the matrix display.
• Use the solver for each parameter or end point individually, or manually specify the parameters
values.
• Use the solver to optimize equations for multiple parameters and end points in the matrix display.
• Use the interactive selection to exclude or include points for the solver, for any parameters not
present in the matrix display.
• Display uncertainty span.
• Apply the equation to the endpoint or parameter.
• Quality control (QC) your equation in the matrix display for a specific value of your petrophysical
variable.
• Save and reload an equation using a .json file.
When you generate a conceptual model for a given parameter or end point, the fitting on the cross-
plot enables you to add an uncertainty envelope above and below the curve fitting. This uncertainty is

SCAL overview > Guided workflows > End points to table > Conceptual model generator 6
SCAL plug-in

used at a later stage to compute the relevant optimistic (high) and pessimistic (low) case for the
relative permeability tables.
Generate a conceptual model for a parameter
You can use the solver to generate a conceptual model for a parameter when you are using the End
points to table guided workflow.
Before you can generate a conceptual model for a parameter, you must select the End points to
table guided workflow and follow it to step five below.
Generate a conceptual model for a parameter

Note: The SCAL plug-in interface has changed since the above video was recorded, but
the steps demonstrated in the video remain accurate.

1. To open the Conceptual model generator for the required parameter, select the corresponding fx
button.
A parameter pane opens in the guided workflow window, in context of the parameter.
2. In the Choose equation section, select a predefined equation from the Name list as required.

Note: You can also create a custom equation. For more information, see the Create a
new equation topic.

3. From the Replace x by list, select a variable dependency as required.

Note: The choice of possible dependencies is based on the variables present in the
dataset added to the workflow.

When you choose the dependency, the equation is optimized. The variable x of the equation is
replaced by swi, phi, or k in the equation applied for the parameter or end point.
4. In the Define dataset and variables used for curve fitting section, you must choose the variable
you want to use on the y axis and x axis.

A cross-plot appears that displays the points, as well as the equation you chose with the default
parameter values.
5. In the Specify expression parameters section, you can change the default values as required,
by entering the values manually, or by using the slider.

Note: The minimum and maximum values are used by the solver to search for the
optimized parameters. Select Reset all to reset your changes to the default minimum
and maximum values of -10 and 10.

SCAL overview > Guided workflows > End points to table > Conceptual model generator > Generate a conceptual model for a parameter 7
SCAL plug-in

The solver will optimize the parameters that you selected to match the data from the dataset
chosen in the previous step. The position of the curve in the cross-plot will change to match the
data displayed, within the constrains set.
6. If the solver does not find a solution, select to reset the last parameter you changed.

Note: You can click Reset all to reset all parameters to their default values.

7. To remove outliers from the cross-plot, for the end points that are not in the matrix display:
a) In the Include of exclude data points section, select Consider points as outlier (exclude).

b) Next, select the Interactive selection tool, and then select the outliers you want to remove
in the cross-plot.

Note: The remove outliers from cross-plots is only for the end points that are not in
the matrix display.
For more information regarding removing outliers in the matrix display, see Filtering
topic.

8. To optimize the cross-plot:


a) Select Include parameter in optimization .
b) Select for each parameter in the Specify expression parameters section.

Note: To maintain the shape of the conceptual model, you must select after you select
Include parameter in optimization .
To solve multiple parameters at the same time, select the checkbox beside any
parameters you want to solve, and then click Fine tune parameters of equation .
Any parameters that are not selected will stay constant and will not be solved.

SCAL overview > Guided workflows > End points to table > Conceptual model generator > Generate a conceptual model for a parameter 8
SCAL plug-in

When you load, or use to create equations, they become locked. You can use
Optimize locked equations to optimize all locked equations at the same time.
If you see the message: RuntimeWarning: invalid value encountered in
double_scalars from math import *, it means that the solver was not able to
find a solution. This usually means that the dataset does not contain enough points to be
used for the optimization, and the equation used has too many parameters. You must
not optimize for too many parameters at the same time, two to three at the same time is
the maximum.

9. In the Uncertainty span section, use the High and Low sliders to move the uncertainty span for
the generation of the parameter as required.

Note: The high range is obtained by default as 1.2 times the optimized equation. The
low range is obtained by default as 0.8 times the optimized equation. You can change
these values by using the slider, or by entering any value between 0 and 1 for the low
case and 1 and 2 for the high case.
By default the High range is 1.2 times the optimized equation, and the Low range is 0.8
times the optimized equation. You can also enter any value between 1 and 2 for the
High range, and 0 and 1 for the Low range, in the box as required.

10. Select Apply.


The parameter is saved and the solver closes.
Save and reload equations
You can save the equation used in the End points to table guided workflow as a .json file. The
enables you to reuse the exact equation when required.
To save and reload your equation, you must select the End points to table guided workflow, and
then follow it to step five.
1. To save an equation you have created, select Save as .
2. In the Save as pane, browse to the folder in which you want to save your equation, and then
select Save.
Your equation is saved.
3. If you want to reload your equation, click Open , and then browse to the required saved
equation.
4. In the Open pane, select your saved equation, and then select Open.
Your saved equation is reload.
Create a new equation
You can use the New equation pane to create your own equation, and then use the equation in the
End points to table guided workflow.
You must select the End points to table guided workflow and follow it to step five before you can
create a new equation.
Create a new equation
1. In the Parameter and end points generation pane, click

SCAL overview > Guided workflows > End points to table > Conceptual model generator > Create a new equation 9
SCAL plug-in

next to the parameter you want to change.


The conceptual model generator opens.
2. In the conceptual model generator, in the Choose equation section, click Add and edit an
equation .
The New equation dialog box opens.
3. In the New equation dialog box, in the Start from list, select Scratch(new equation).

Note: You can choose an existing equation from the Start from list if you want to base
your new equation on an existing one.

4. In the Name box, enter a name for you equation.


5. In the Formula box, enter the formula for the equation.

Note: You must follow these rules when you write the equation:
• The equation must follow the python syntax.
• You can use as many parameters as you want, but parameters must be written in
capitals.

Note: Using a large number of parameters may cause errors when


optimization is run on a dataset with small amounts of data.

• A parameter can be a name, but the whole name must be capitalized.


• The function you enter uses x as a variable.
• You can use Python functions, for example:
• pow(x,2)
• x**2
• log(x)
• exp(x)

6. Select Save.

SCAL overview > Guided workflows > End points to table > Conceptual model generator > Create a new equation 10
SCAL plug-in

Note: When you save your equation, the python syntax is checked. If the interpreter
finds any problems with your equation, you will be prompted to correct your equation.
Check the Output window for more information on the problem.

Your equation is saved and you can select it from the Choose equation list in the conceptual
model generator.
Filter the dashboard display
You can use filters to populate the dashboard display with only the points of interest you want to view.
To add a variable as an active filter, drag it to the dropping area. A list of all possible values for the
variable is displayed and you can select the relevant values.
To select values in a filter, you can:
• Drag your cursor over a group of values.
• Press and hold Shift, and then click the first and last values in a range.
• Press and hold Ctrl, and then click individual values.
Select

to clear the filter, or

to remove the variable as an active filter.


You can use more than one variable as a filter. The resulting filter is an intersection of active filters.

Note: If nothing is selected in the filter, the result is the same as if everything was selected.

Exclude points in the matrix display


You cannot use the interactive selection tool in the matrix display. Therefore, you cannot directly
remove an outlier, or identify it in one plot in order to check its position in other plots.
The workaround for this is as follows:
Exclude points in the matrix display.
1. Create a cross-plot in Techlog with the same variables as the plot you want to identify the outlier
from.
2. In the Techlog cross-plot, use interactive selection to select the points of interest.
3. Create a labeling curve with a unique name, such as Selected Points, for example.
You can use this added variable in your filter to exclude outliers.
Optimize multiple parameters at the same time
You can lock parameters to preserve the link between the equation and parameters used in the
generic equation.

Note: You can only do this for equations on the matrix display.

1. Click

to lock or unlock equations as necessary.

SCAL overview > Guided workflows > End points to table > Conceptual model generator > Optimize multiple parameters at the same time 11
SCAL plug-in

2. To optimize all of the locked equations on the matrix display, click Optimize locked equations .

Generate capillary pressure using a dataset


You can use a dataset containing your capillary pressure data to generate the capillary pressure.
Instead of generating capillary pressure from parameters, you can reuse capillary pressure from an
existing dataset. Select Dataset, and then drag the dataset into the Dataset box. When there is only
one choice, the variables are selected automatically. If there are multiple variables, select the variable
required.
To generate the capillary pressure, you must check the relationship between the rock type from the
capillary pressure dataset against the one for the relative permeability.

Output from the guided workflow


When you have entered the required parameters into the End points to table guided workflow, you
can generate the tables for the simulator.

Generate the output


When you have configured the End points to table guided workflow, select the Generate tables for
low, median and high cases check box in step six of the Conceptual model generator wizard, and
then select Generate.
The workflow runs three times, one for each case: low, median, and high. You can find the output
tables in the folder indicated in the Output pane.

Display your results in multi-well cross-plot array versus array


To display an overview of multiple cases, you must open a multi-well cross-plot array versus array
with the following inputs:

SCAL overview > Guided workflows > End points to table > Output from the guided workflow 12
SCAL plug-in

Note: The first time you run the method for the low, median, and high cases, the required
aliases and palette are created and you will see the message: '[Link]' palette
and/or aliases was added. To use them, you must restart Techlog.

• CSW_OR_CSG is an alias for the Core Saturation Water, or Core Saturation Gas.
• KRO_OR_KRW_OR_KRG is an alias for the Core Relative Permeability Oil, Core Relative
Permeability Water, and Core Relative Permeability Gas variables Ckro_Table, Ckrw_Table and
Ckrg_Table.
• The Color variable is created to match the low, median and low cases. A palette with the
corresponding number is associated with it.

Note: The HML palette is created at the same time as the aliases when the high,
median, and low cases are first generated. You must restart Techlog the first time you
apply this palette.

• The Filter variable enables you to filter by group, case, or both, to display the result of the
workflow.

SCAL overview > Guided workflows > End points to table > Output from the guided workflow 13
SCAL plug-in

Advanced: Optimistic and pessimistic case generation


This topic gives a summary of LET and Corey coefficients. There is also a summary of the residual
end point and how the corresponding high (optimistic) and low (pessimistic) relative permeability
cases are obtained from the coefficients computed using the error bands around the conceptual
models.
The proposed combinations are based on observations as shown in paper SCA2014-080 Parameter
based scal - analysing relative permeability for full field application for the oil-water case.

Note: High (optimistic) case, refers to the higher flow of the hydrocarbon phase.

Table 1: Summary of LET and Corey coefficients

Case Coefficient High (optimistic) case Low (pessimistic) case

L for oil Low High

E for oil Low High

T for oil High Low

Corey for water High Low

OW L for water High Low

E for water High Low

T for water Low High

SOWCR High Low

KRWR Low High

Corey for oil Low High

L for oil Low High

E for oil Low High

T for oil High Low

GO Corey for gas High Low

L for gas High Low

E for gas High Low

T for gas Low High

SOGCR High Low

SCAL overview > Guided workflows > End points to table > Advanced: Optimistic and pessimistic case generation 14
SCAL plug-in

Case Coefficient High (optimistic) case Low (pessimistic) case

KRGR Low High

Corey for gas Low High

L for gas Low High

E for gas Low High

T for gas High Low

Corey for water High Low


GW
L for water High Low

E for water High Low

T for water Low High

SGCR Low High

KRWR High Low

Note: Advanced users can change the way the optimistic and pessimistic cases are
computed. To do so, you can swap the minimum and low values used in the conceptual
model. For example, you can change:

to:

If you do this, the optimistic case is computed using low SOWCR, instead of the high value
being used.

References and acknowledgments


We would like to acknowledge that the functionalities described in this section were implemented
using the work presented in the following publications.
• SCA2005-32: A NEW VERSATILE RELATIVE PERMEABILITY CORRELATION.
• SCA2008-08: A NEW VERSATILE CAPILLARY PRESSURE CORRELATION.
• SCA2014-080: PARAMETER BASED SCAL- ANALYSING RELATIVE PERMEABILITY FOR FULL
FIELD APPLICATION.
• SCA2018-056: OVERVIEW OF THE LET FAMILY OF VERSATILE CORRELATIONS FOR FLOW
FUNCTIONS.
We would like to thank Mr. Egil Boye Petersen from Aker BP for his collaboration and his help in
implementing these functionalities in the current commercial offering.

SCAL overview > Guided workflows > End points to table > References and acknowledgments 15
SCAL plug-in

Keff from tables


You can use Keff from tables to integrate Reservoir Engineering data, such as relative permeability
tables, with petrophysical data (such as, saturation and rock type) in order to investigate various
scenarios.
You can use Keff from tables to investigate the following scenarios:
• Saturation uncertainty
• Relative permeability uncertainty
• Depletion

Note: If you have production logging data, you can also integrate this data in the proposed
logview for an even more comprehensive picture.

Keff from tables full case example workflow


tjgcz08zlr

Inputs
During the Keff from tables guided workflow you must enter the necessary inputs in order for the
required outputs to be generated.
After selecting OW (Oil-Water) or GW (Gas-Water), you must enter the data to be used in the Keff
from tables computation.

Configure continuous log dataset


You must enter all mandatory inputs and the required optional inputs for the continuous log dataset:
• Mandatory inputs:
• Base Water Saturation. For example, water saturation computed from Archie, Quanti
Elan, Saturation Height Modeling workflow. Filtering is applied based on the Water_Saturation
measurement.
• Absolute Permeability. For example, permeability of the rock. Filtering is applied based
on the permeability measurement.
• Classification. For example, rock type or facies for which you have a corresponding
relative permeability curve in a separate dataset. Filtering is applied based on the
dimensionless measurement.
• Optional inputs:
• Water Saturation min. Can be the lower saturation values from the uncertainty band.
Filtering is applied based on the Water_Saturation measurement.
• Water Saturation max. Can be the higher saturation values from the uncertainty band. It
can also be a depletion scenario in which the water saturation is increased. Filtering is applied
based on the Water_Saturation measurement.

Note: You can enter on of Water Saturation min or Water Saturation max,
enter both, or enter neither.

• Viscosity of Water. Filtering is applied based on the Water_Viscosity measurement.


• Viscosity of Oil or Viscosity of Gas. Filtering is applied based on the Oil_Viscosity
or Gas_Viscosity measurement.

SCAL overview > Guided workflows > Keff from tables > Inputs 16
SCAL plug-in

Note: Any viscosities you do not enter are set as parameters on the next step of the
guided workflow.

Configure relative permeability datasets


You must enter the various inputs needed for relative permeability datasets:
• Mandatory inputs:
• Water Saturation. The reference variable for the array used for relative permeability.
Filtering is applied based on the Water_Saturation measurement.
• Relative Permeability of Water. Filtering is applied based on the Core Relative
Permeability Water, Core Relative Permeability Oil, or Core elative Permeability Gas families.
• Relative Permeability of Oil or Relative Permeability of Gas. Filtering is
applied based on the Core Relative Permeability Water, Core Relative Permeability Oil, or Core
Relative Permeability Gas families.
• Classification. Filtering is applied based on the dimensionless measurement.

Note: Families can be set up for the different variables. A single measurement can have
multiple possible families. For relative permeabilities, filtering is done on families and not
measurement, as the families are created by the plug-in and are not assigned a
measurement.

Generate relative permeabilities using End points to table guided workflow


You can use the End points to table guided workflow to generate low and high case relative
permeabilities.

Figure 1: Example end points to table guided workflow datasets.

SCAL overview > Guided workflows > Keff from tables > Inputs 17
SCAL plug-in

Note: The Output_for_Keff group contains the dataset needed for the Keff from tables
workflow. The datasets under the Output_plot group are created to facilitate the display of
the result, however, this groupcontains only water or gas or oil relative permeability, which
cannot be used in the Keff from tables workflow.

Outputs
Keff from tables generates various outputs that you can use to assess saturation uncertainty, relative
permeability uncertainty and depletion.
A typical example of a Keff from tables output is:

Outputs are generated in the following groups:


• 1-low
• 2-median
• 3-high
• Flags

Note: In the first 3 groups, subgroups are created based on Sw scenarios (base, max,
min).
Outputs follow the syntax: {FW, KHC, KW}_{high, med, low}_Sw{Min, Base, Max}.
Water breakthrough saturation outputs follow the syntax: swb_{high, med, low}.

SCAL overview > Guided workflows > Keff from tables > Outputs 18
SCAL plug-in

Computation explanation
• Output variables are the result of computations between the different possible inputs (Base, min
and max water saturation) combined with the possible (med, high and low) relative permeabilities.
For each scenario (up to nine cases) a fractional flow is computed using the effective permeability
of each phase extracted by interpolation with the input relative permeability tables.
• At each depth, a classification and a water saturation are present as inputs. For this classification,
the corresponding classification for the relative permeability is used. Using the saturation value
from the log variable at the considered depth, a lookup is done to extract the relative permeability
values for the water and oil,or gas phases. The relative permeability values are then multiplied by
the absolute permeability at the depth, in order to compute a phase permeability.
• Using viscosity parameter or variable, the fractional flow is then computed using the fractional flow
equation:

• A water breakthrough is computed as per Buckley–Leverett Theory (0 of the Δ function):

Flags are also computed and can have three values:


• 0 if Sw from log is between the min and max of the water saturation from the relative permeability
curve.
• 1 if Sw from log is less than the min for the water saturation from the relative permeability curve.
• 2 if Sw from log is greater than the max for the water saturation from the relative permeability
curve.

Tip: To avoid confusion when running multiple scenarios, it is good idea to close the
logview and delete the group containing the output variables computed from the method
from the project browser .

Logview zones
There are eight zones in the generated logview:

SCAL overview > Guided workflows > Keff from tables > Outputs 19
SCAL plug-in

Figure 2: Logview zones

1. Inputs: Three tracks. On the saturations track the water breakthrough saturations are also
displayed.
2. Flags.
3. Effective permeabilities: One track displays the water permeabilities for all the scenarios. The
other track displays the hydrocarbon.
4. Sw base scenario: Three tracks display how the effective permeabilities values change for low Sw
case of the left, base in the center and high on the right. One track on the right is added to
compute the fractional flow for the base case only.
5. Fw comparison (base and Swmax): This track displays fractional flow from base Sw case and
compares it with Swmax case (the depletion scenario).

Note: With Sw min, base, max and KR high, med, low, there are nine possible fractional
flow cases computed.

The following two groups of tracks are regrouping them in two different ways:
6. Grouping by KR cases
7. Grouping by Sw cases
8. All outputs are overlapping

Note: The bold fractional curve corresponds to the one which is always computed using Sw
base and KR med.

SCAL overview > Guided workflows > Keff from tables > Outputs 20
SCAL plug-in

Save and load a workflow


You can save the inputs you have entered, including fluid selection, classification wrapping and
viscosity values set up. You can then load these values at the beginning of the Keff from tables
workflow.
You must enter the Keff from table inputs and be in the final step of the guided workflow, before you
can save a workflow.
1. In the Keff from tables pane, click .
2. In the Save Template dialog box, browse to the folder where you want to save the configuration
file, then enter a name for it in the File name box, and click Save.

Note: The Save Template dialog box may take a few seconds to open and become
responsive.

The configuration file, with the .keff extension, is saved to the specified folder.
3. In the first step of the Keff from tables inputs guided workflow, click
.
4. In the Load Template dialog box, browse to the saved .keff configuration file, select it, and then
click Open.

Note: The Load Template dialog box may take a few seconds to open and become
responsive.

The saved values will load into the Keff from tables inputs in the guided workflow.

Advance use cases


The Keff from tables method can be used for advanced interpretation of various scenarios.
The following videos illustrate how the Keff from tables method can be used for advanced
interpretation:

Depletion scenario
ogw671sf7k

Drainage versus Imbibition curves


5r8bzk71io

Generate KR from PC
You can use the KR from PC method to generate relative permeability for two phases from capillary
pressure.

Generate KR from PC proposed methods


• For drainage:
• Corey
• Brookes Corey
• Burdine
• For imbibition:
• Corey
• Brookes Corey
• Burdine

SCAL overview > Guided workflows > Generate KR from PC 21


SCAL plug-in

• Land
• Spiteri
• For scanning:
• Killough
• Spiteri

Generate KR from PC guided workflow


The KR from PC guided workflow has three sections:
• Fluid system selection.
• Dataset drop and variable configuration.
• Graphical interface.

Figure 3: KR from PC interface

The four main panes of the KR from PC interface are as follows:


• A: Parameters for the relative permeability.
• A-1: Drainage.
• A-2: Imbibition.
• A-3: Scanning.
• B: Display of plugs. You can choose to display all, or only the ones you select.
• C: Capillary pressure.
• C-1: Display of the capillary pressure.
• Light gray: The input from selected variables
• Black: The capped pressure.
• Red: The fitted curve.
• C-2: Fitting parameters for capillary pressure.

SCAL overview > Guided workflows > Generate KR from PC 22


SCAL plug-in

• D: Result of the computations.


• D-1: Display of the relative permeability.
• Light color shade for drainage.
• Medium color shade for imbibition.
• Dark color shade for scanning.
• D-2: Enter parameters for the relative permeability.

KR from PC example workflow


wnhkoogtlg

Generate KR from PC methods


There are three methods you can use in the KR from PC guided workflow:
• A-1 - KR drainage method:
• In the KR drainage method pane (A-1) you can change the number of points used in the
relative permeability computation. A change from the default (20) causes the curve to be
resampled with the number of points entered.
• A-2 - Imbibition method:
• In the KR imbibition method pane (A-2) you can enter parameters for Sor (residual oil),
Corey, Brooks-Corey, Burdine or Land.

Note: For Spiteri the residual saturation is computed. For Spiteri computation, you
can use an input table to compute the alpha, beta and gamma parameters from the
Spiteri approach. If you use a table you can fix the wettability angle for all the plugs
from the interface (or use an optional variable in which case the parameter will be
greyed out).
When Land computation is used, the C_Land parameter can be adjusted individually
for each plug.
A Sor optional variable can be used as input, it will be ignored for Spiteri computation.

• A-3 - KR scanning method:


• In the KR scanning method pane (A-3) you can select Spiteri or Killough computation, as well
as initial point from the drainage curve to compute a scanning curve. The trapped oil is
computed.

Inputs
During the KR from PC guided workflow you must enter the necessary inputs in order for the required
outputs to be generated.
After selecting OW (Oil-Water), GO (Gas-Oil), or GW (Gas-Water), you must enter the data to be
used in the KR from PC computation.

Note: The configuration of the workflow and all the modifications made can be saved and
reloaded as a .krfpc file.

You must use a maximum capillary pressure to define the corresponding end point for irreducible
water saturation (SWL or Saturation Water Lowest in reservoir engineering concept). This minimum
water saturation will correspond to the Swirr in the OW or GW system, and will be the end point used

SCAL overview > Guided workflows > Generate KR from PC > Inputs 23
SCAL plug-in

when generating the drainage curve. A change of maximum capillary pressure, or of Swirr will
rescale the KR drainage accordingly. The capping can be done for all the curves at once, or done
plug-by-plug.

Figure 4: KR from PC interface

Mandatory inputs
• Capillary Pressure Reservoir (Array). Filtering is done on variables from the dataset
with the Capillary_Pressure measurement.

Note: It is recommended you input a capillary pressure in reservoir conditions, as


capping pressure will be used. However, any capillary pressure variable can be used as
input, the capping pressure must be converted to the required value to relate to the
required condition.

• Core Water Saturation (Array). Filtering is done on variables from the dataset with the
Water_Saturation measurement. The variable used corresponds to the wetting phaser saturation.

Optional inputs
• Residual Oil Saturation. Filtering is done on variables from the dataset with the
Oil_Saturation measurement.
• KRO at Swi. Filtering is done on variables from the dataset with the Dimensionless
measurement.
• KRW at Swu. Filtering is done on variables from the dataset with the Dimensionless
measurement.
• Wettability Parameter for Spiteri. Filtering is done on variables from the dataset with
the variable containing Theta in the name.
• Initial Oil Saturation for Scanning. Filtering is done on variables from the dataset
with the Oil_Saturation measurement.

SCAL overview > Guided workflows > Generate KR from PC > Inputs 24
SCAL plug-in

Optional use of a table for Spiteri computation


When using the Spiteri method, the computation of the output curve is done using α, β and γ
parameters. These parameters are obtained for a specific formation, usually from a pore-network
simulation (see SPE-96448-PA Elizabeth J. Spiteri “A New Model of Trapping and Relative
Permeability Hysteresis for All Wettability Characteristics” for more details). α, β and γ can be entered
manually for each plug, but you can also select a dataset from the Spiteri table list. You must create
this dataset with the following constraints:
• It must contain alpha, beta and gamma variables.
• It must be indexed in increasing using an ID unitless.
• An additional variable, theta needs to be present. This theta variable is the wettability angle. For
each theta value alpha, beta and gamma must be defined. In the interface, any theta value can
then be entered and an interpolation between the closest two values will return the alpha, beta
and gamma values needed for the output computation.

Note: theta can be replaced by the wettabilityindex variable (in case the table for alpha,
beta and gamma are not indexed verus the wettability angle).

• If the dataset is missing alpha, beta, gamma, or theta (or the wettabilityindex) variable, it will be
not be available in the Spiteri table list. In case both theta and wettabilityindex variable are
present, only theta will be used
• When the wettability value is outside of the range of the values present in the table, the closest
value from the table is used instead.

Figure 5: Spiteri table list

Outputs
KR from PC generates various outputs that you can use to assess saturation uncertainty, relative
permeability uncertainty and depletion.
A typical example of a Keff from tables output is:

SCAL overview > Guided workflows > Generate KR from PC > Outputs 25
SCAL plug-in

Parameters
Parameters for each plug are saved as output variables:
• For PC:
• Lambda_fitting_parameter
• Pce_fitting_parameter
• Swinf_fitting_parameter
• For drainage
• Swirr: Irreducible water saturation obtained from PC curve at PC max (or at maximum of PC is
PC max parameter is higher than maximum of PC).
• For imbibition:
• Sor
• C_land_computed
• For scanning:
• Soi_parameter
• Sot_parameter
• Swinit_parameter

Relative permeability variables


Three groups of variables are saved for relative permeability:
• KR Drainage
• KR Imbibition
• KR Scanning

Note: Saved variables are in the form of {Variable}_{Type}_{Method}_{Fluid System}:


{CSW, CSG, KRW, KRO, KRG}_{Drainage, Imbibition, Scanning}_{Corey, BrooksCorey,
Burdine, Land, Spiteri}_{OW,GW, GO}
For PC variables, the capped curve is shown in black and the fitted curve is shown in red.

SCAL overview > Guided workflows > Generate KR from PC > Outputs 26
SCAL plug-in

Computations
The KR from PC method uses a variety of formulas in its computations.

Capillary pressure curve fitting


For capillary pressure, a fitting on input pressure curve versus saturation is done using a Brooks-
Corey equation. The parameters values given by the solver, Swinf, PCe and λ, minimize the
difference of the square between input and fit over the whole range of the input curve. You can
change the parameters to focus on only a part of the curve to be fitted.

Figure 6: Capillary pressure versus saturation

The equation of the fitting curve is given by the Brooks Corey equation:

SCAL overview > Guided workflows > Generate KR from PC > Computations 27
SCAL plug-in

Drainage and imbibition equations


In the following equations, equations are used for drainage and imbibition with a different normalized
equation for saturation:
• For drainage:

• For imbibition:

Variables are as follows:


• Sw: Wetting phase saturation.
• Swirr: Irreducible wetting phase saturation.
• Sor: Residual non-wetting phase saturation.

Relative permeability Corey equations


• Wetting phase equation:

• Non-wetting phase equation:

Relative permeability Brooks-Corey equations


• Wetting phase equation:

SCAL overview > Guided workflows > Generate KR from PC > Computations 28
SCAL plug-in

• Non-wetting phase equation:

Note: λ, the lambda value, comes from the capillary pressure fitting curve (λ from Brooks-
Corey capillary pressure function).

Relative permeability Burdine equations


• Wetting phase equation:

• Non-wetting phase equation:

Variables are as follows:


• Pc: Capillary pressure defined as a function of Sw (wetting phase saturation).
• Sor: Non-wetting phase saturation of the residual point, used for the imbibition computation. For
drainage Sor = 0.
• Swirr: Irreducible wetting phase saturation.

Relative permeability Land equations


• Wetting phase equation:
The KRw is the same as for drainage truncated at 1 - Sor
• Non-wetting phase equation:

SCAL overview > Guided workflows > Generate KR from PC > Computations 29
SCAL plug-in

Note: With λ from the Brooks-Corey capillary pressure fitting curve.

S*nwf equation

Note: Cland, Sor and Swirr are linked. Fixing two of them will compute the third. If you can
define Cland, then Sor will be recomputed, and the other way around.

Relative permeability Spiteri equation


The Spiteri equation is used for both imbibition and scanning curve.
For imbibition:
• Sot computed correspond to Sor (residual point).
• Soi correspond to the initial point which is at Swirr.

SCAL overview > Guided workflows > Generate KR from PC > Computations 30
SCAL plug-in

Note: The α, β, γ parameters needs to be obtained from separate study and can be stored
in a dataset that can be reused for interpolation.

Relative permeability Killough equation


The Killough equation for the non-wetting phase relative permeability is a rescaling of the imbibition
curve. It is rescaled on saturation from (Swirr, 1-Sor) to (1-Soi, 1-Sot) and vertically from
Kr_imbibition max (for non-wetting phase) = Kr_imbibition(Swirr) = Kr_drainage(Swirr) to
Kr_imbibition(1-Soi).

SCAL overview > Guided workflows > Generate KR from PC > Computations 31
SCAL plug-in

References
SPE-1942 PA Carlon S. Land “Calculation of Imbibition Relative Permeability for Two- and Three-
Phase Flow From Rock Properties“.
SPE-96448-PA Elizabeth J. Spiteri “A New Model of Trapping and Relative Permeability Hysteresis
for All Wettability Characteristics”.
SPE-76757 Kewen Li “Experimental Verification of Methods to Calculate Relative Permeability Using
Capillary Pressure Data”.
SPE-106642 A.M. Attia “Relative Permeability and Wettability of Rocks Obtained From Their
Capillary Pressure and Electrical Resistivity Measurements”.

Glossary
KRnw
Relative permeability of the non-wetting phase.
KRw
Relative permeability of the wetting phase.
Lambda
Parameter of Brookes Corey capillary pressure equation, coefficient for the shape of the curve.
PC
Capillary pressure.
Pce
Parameter of Brookes Corey capillary pressure equation, entry pressure.
Soi
Initial oil (non wetting phase) saturation alpha, beta, gamma: parameters from the Spiteri approach.
Sor
Residual oil (non wetting phase) saturation.
Sot
Trapped oil (non wetting phase) saturation.
Sw
Water or wetting phase saturation.
Swinf
Parameter of Brookes Corey capillary pressure equation, Sw at infinite capillary pressure.
Swirr
Irreducible water (wetting phase) saturation.

Utilities
You can use the SCAL utilities to import data from Excel, generate Deterministic Rock Typing groups,
generate KR and PC from end points, generate an output table for the simulator, and to access the
SCAL Toolbox.
SCAL plug-in includes the following utilities:
• Import from Excel.
• Deterministic Rock Typing.
• Generate KR from end points.
• Generate PC from end points.
• Table Generation.
• SCAL Toolbox.

SCAL overview > Utilities 32


SCAL plug-in

Import from Excel


You can use the Import from Excel utility to import data in either .xls or .xlsx format when SCAL data
are not available in Techlog. For example, you might want to import relative permeability.
This video and table describe the main functionality of the Import from Excel spreadsheet:
Import from Excel

Name Description

Select file Opens the Windows File Explorer where you can select the .xls or .xlsx file to
import. You can also drag the file to the field on the left of the Select file button.

Save/Load Saves a configuration and reloads it using the .tlxlsScheme extension. You can open
import it in a text editor and modify it manually for faster configuration. For more
scheme information, see the list of .tlxlsScheme tags at the bottom of this topic.

Sheet The Excel report may have useful data only in a few sheets. You can use the Sheet
selection selection pane to choose the sheets you want to import. The right pane displays the
selected sheet. By default, the first one is selected.

Well name/ If you want to use a well name from a cell, enter the cell reference, for example A3
Dataset for the first column, third line. You can also manually enter the Dataset name.
name
Note: It is assumed that the name of the well is the same for all the
sheets. If the well name is different in each tab, the dataset will only be
created for a single well.

Variables to Name, Value, Unit: You can manually enter the name and unit or use it from a cell in
import the spreadsheet. The value is taken from a cell. By default, the expected format is a
cell (letter(s) for the column and number for the line).

Note: The text entered in the cells is interpreted as a cell ID in the Excel
sheet. Units defined with a letter and number will always be interpreted as
cell and will not be imported, for example m2 or m3. You can set the unit
in the import buffer, or in Project Browser once imported.

Once you add a variable, you must configure the name, unit, and value. If there are
a lot of files to configure, it is easier edit the configuration file in a text editor.

Columns to The arrays are necessary in Techlog for SCAL data. These data are present in an
import Excel sheet column. To import them, it is assumed that they are available as
columns. The only elements to specify are the first and last values of the column.
This is taken as reference for all the sheets.

Note: The sheets might have different numbers of lines, in this situation
check the various sheets, and enter the largest number in the Value to
line cell.

The array in Techlog corresponds to the column of data in the Excel file. You can
import the columns.

SCAL overview > Utilities > Import from Excel 33


SCAL plug-in

Name Description

Preview You can preview the data in the right pane of the window. Graphic interaction is
pane possible to pick up a cell ID instead of entering it's reference manually.

Import in Once the configuration is done, you can import the data in Techlog. The data is
Techlog displayed in the import buffer. The datasets are indexed with an ID created from 1. It
counts the number of sheets that were imported. You can have several cores at the
same depth.

Note: To use core depth as reference in the current version, ensure that
the sheets are strictly in increasing or decreasing depth order. If there is
any redundant depth, manually edit the depth by adding an epsilon. You
can then use the core depth variable as reference after the import is done.

.tlxlsScheme tags
To manually configure the configuration files, use the following tags:

<?xml version="1.0" encoding="UTF-8"?>


<ScalExcelImportScheme>
<Well name="B2"/>
<Dataset name="dataset"/>
<Variable name="A3" value="B3" unit=""/>
<Variable name="A4" value="B4" unit="C4"/>
<Variable name="D2" value="E2" unit="F2"/>
<Variable name="Perm" value="E3" unit="mD"/>
<Array name="PC_Lab" topValue="A12" bottomValue="A36" unit="A11"/>
<Array name="B10" topValue="B12" bottomValue="B36" unit="B11"/>
<Array name="C10" topValue="C12" bottomValue="C36" unit="%"/>
</ScalExcelImportScheme>

Deterministic Rock Typing


You can use the Deterministic Rock Typing utility to input high quality data points of porosity and
permeability from log or core. To provide a good standard of accuracy, permeability log points must
include NMR, spectroscopy, and pressure transient analysis.
From core and log porosity and permeability, a series of Pore Throat Radius indicators (PTRi) are
computed using industry standard methods (Winland, Pittman, FZI, Lucia, and so on). You can select
cutoffs to classify the points into Petrophysical Rock Types.
You can use additional quality controls for each input data point (geological facies, Sw from log
analysis, pore throat size from NMR or MICP, and Swirr from NMR or SCAL) in the method as
follows:
• To decide which Pore Throat Radius indicator to use for classification.
• To define the number of Petrophysical Rock Types.
• To set the cutoffs for the classification.
• To validate the resulting Petrophysical Rock Types.

Note: Downstream (not included in the method), the outputs are assigned (tagged) to the
continuous log data from the wells through existing Techlog methods such as IPSOM, HRA
Tagging, and Petrophysical groups.

SCAL overview > Utilities > Deterministic Rock Typing 34


SCAL plug-in

Further analysis is undertaken using methods such as Saturation Height Modeling, Single
Well Predictive Modeling (SWPM), or Flow Unit Analysis. The results are passed to Petrel
for use in static and dynamic modeling.

Generic workflow
1. Select the inputs.
2. Check the parameters and change them as necessary.
3. Run the method to update the plots with the results of the computation.
4. Navigate through the first three tabs (General purpose, Pittman, Carbonate) to determine the
best classification.
5. In the Parameters section, choose the Best PTR.
6. On the Interpretation tab, change the number of lines and fine tune the cutoffs.
7. Run the method again to update it with the new classification. On the Validation tab, the results of
the interpretation are checked against optional inputs to validate the new classification.

Note: The workflow engine that runs the method has no display mode, but some
information is displayed in the Project Browser.
You must run the method after each parameter change, or click Automatic launch in the
Context tab.

Inputs

Mandatory

• Porosity (default family: Core Porosity).


• Permeability (default family: Core Permeability).
If a mandatory input is missing, this error message is displayed:

The plug-in uses a set of default LogView templates. In these templates, the inputs used are named
CPOR and CKH. Refer to the Tips help documentation for information on how to display inputs when
the input names are different.

Optional

You can use these optional inputs to set the rock typing cutoffs and quality check the results.
Right-click and set the optional inputs to empty (not available for mandatory inputs). Refer to the
Workflow Engine help documentation for more information on changing the bound family in the
Select input filters section.

SCAL overview > Utilities > Deterministic Rock Typing 35


SCAL plug-in

• Water Saturation (default family: Water Saturation).


• Irreducible Water Saturation (default family: Irreducible Water Saturation).
• External PTR: Use any measurement as a Pore Throat Radius indicator. For example, you can
use a core permeability to create groups by binning (default family: R35 Pore Throat Radius).
• MICP PTR: For example a radius computed from capillary pressure at 40 percent of mercury
injected (default family: R35 Pore Throat Radius).
• Facies: Classification from any origin (default family: Facies).
The data points in all cross-plots in the different tabs are color-coded with the same variable for all the
plots, Facies, MICP, SW, Swirr, External (optional inputs), or PRT (best), which is the result of
computation using a default palette in Techlog for each variable. Refer to the Palettes section for
more details.
The type of display is made in the method dashboard in the tabs widget. The display by default is
PRT (best).

Note: The following validation error message is displayed if a variable from another dataset is
selected as an input:

To run the method without the invalid input, right-click the necessary variable, and then click Set
empty value.
Optional inputs are not selected by default, you must select them from the Inputs list.

Parameters

Best PTR

Choose which Pore Throat Radius indicator (PTRi) will be guiding the rock typing.
The default is Winland R35.

Cutoffs

For each Pore Throat Radius indicator, the cutoff values are separated by a semicolon (;). The
default values are 0.2; 0.5; 1; 2; 5; 10; 20 except for Lucia where the default cutoffs are: 0.5; 1; 1.5;
2; 2.5; 3; 4.

SCAL overview > Utilities > Deterministic Rock Typing 36


SCAL plug-in

The cutoffs are hard-coded in the unit described in the parameter name and they are not subject to
conversion in the different unit systems.
The cutoffs trigger the lines displayed in each dedicated plot. The number of cutoffs and their values
can be manually changed.

Outputs

Some plots in the numerous tabs use a temporary variable saved by the plug-in in the project
browser in the input dataset under a TEMP subgroup present under the RT_SCAL group:
• Color variables (Temp_Color_for_DRT and Temp_Color_for_DRT_MLP).
• Variables used in the CDF plot (PTRi_WR35_norm, PTRi_WR35_tmp).
• Modified Lorenz Plot (ckhCumulNorm, CPORCumulNorm).
When the name of the group, the suffix, or prefix of an output variable is modified and propagated to
all outputs, it is not applied to the variables under the TEMP sub group.

A Pore Throat Radius indicator (PTRi): It is computed for each method using the literature
equations.
Phiz: Normalized porosity defined as Phiz = Phi / (1 – Phi) is saved as well.
Petrophysical RockType: Rock type defined by using the best PTR. A property under the
Properties tab of the variable specifies which PTRi was selected as Best PTR to generate
PetroRockType.
PTRi_best: The PTRi values computed for the indicator selected as Best via the Best PTR
parameter. A property under the Properties tab of the variable specifies which PTRi was selected
as Best PTR.

The outputs may not be displayed properly if the installation was not done at the User level. The
families and family assignment rules specific to the plug-in are missing and need to be added
manually.
You must add the following families: (Main Family/Family/Unit/Measurement):
• Core Analysis Special/Rock Type/unitless/Dimensionless.
• Core Analysis Special /Pore Throat Radius/um/Micrometer.
• Core Analysis Special / Rock Fabrictbl/unitless/Dimensionless.
You must add the following family assignment rules (Family/Variable/Unit):
• Rock Fabric/PTRi_RFN_L* / *
• Core Permeability/PTRi_k_phi* / *
• Pore Throat Radius/PTRi* / um
• Rock Type / PetroRockType* /

Note: PTRi_Best is not listed under the Outputs list as it is a dynamic output. This means
that the family, or unit may change depending on which Best PTR has been selected.
When the group is propagated to all outputs, Best_PTRi is put under this group. However,
Suffix and Prefix will not be propagated to PTRi_Best.

SCAL overview > Utilities > Deterministic Rock Typing 37


SCAL plug-in

Method dashboard layout

General purpose tab

• Four cross-plots displaying Permeability versus Porosity with Winland R35, FZI, Aguilera, and RQI
lines.
• One plot showing RQI versus Phiz with FZI lines.
• One LogView with the input data and PTR computed for the methods present in this tab. You can
change and save the LogView as a template with the SCAL_RockTyping_GeneralPurpose
name at the project level that is used by the method.

Pittman tab

SCAL overview > Utilities > Deterministic Rock Typing 38


SCAL plug-in

• Six cross-plots displaying Permeability versus Porosity with Pittman R10, R20, R30, R40, R50,
and R60.
• One LogView with the input data and PTR computed for the methods present in this tab. You can
change and save the LogView as a template with the SCAL_RockTyping_Pittman name at the
Project level that is used by the method.

Carbonate tab

SCAL overview > Utilities > Deterministic Rock Typing 39


SCAL plug-in

• Four cross-plots displaying Permeability versus Porosity with Winland R35 for reference, Lucia,
Aguilera, and k/phi ratio.
• One LogView with the input data and PTR computed for the methods present in this tab. You can
change and save the LogView as a template with the SCAL_RockTyping_Carbonate name at
the Project level that is used by the method.

Interpretation tab

The clusters are checked and can be modified.

• Cutoffs: You can change, remove, or add a cutoff, from the Parameters section of the Method
view. The cutoff lines displayed on the Interpretation plots are the ones corresponding to the
values selected for the Best PTR. For example, if PTR from Aguilera is the value selected for
Best PTR, the active cutoffs in the Interpretation tab are the ones in the Aguilera Cutoffs (μm)
parameter.
The cutoff lines in the Porosity Permeability cross-plot are used to assign a Petrophysical Rock
Type. Above the first line from the top, value 1 is assigned, between first and second, value 2 is
assigned, and so on. Below the bottom line, the highest number is assigned.
• Histogram of the best PTR: Histogram of the best PTR selected as per Best PTR parameter
along with the Rock Typing cutoffs, displaying as lines. You can select cutoff lines to move them.
To delete a cutoff line, right-click it and then selectDelete.

Note: To add a new cutoff, right-click in the plot, select Add cutoff line, and then click in
the histogram plot where you want to add a cutoff.

SCAL overview > Utilities > Deterministic Rock Typing 40


SCAL plug-in

Cutoffs are also visible on the next plot CDF Analysis of PTR and move in this plot too when
moved in the histogram. An added cutoff also adds a line in the cross-plot on the right.
• Modified Lorenz plot: This plot shows normalized cumulative Permeability versus normalized
cumulative porosity to be used to help confirm the number of flow units and rock types. Each
change of slope can be interpreted as a change of flow unit, whereas each unique slope can be
interpreted as a rock type.
The depth increment used for the integration is the unit. However, the cumulative curves are
normalized to 1 to be dimensionless. For the Modified Lorenz Plot color, refer to the Tips section.
• CDF analysis cross-plot of the best PTR: The Cumulative Distribution Function (CDF) shows
the cumulative frequency of the PTR distribution. The PTR value is shown on the y axis.
A constant probability of 1/N, where N is the number of samples, is assigned for each point of the
cumulative distribution curve. Probabilities are cumulated from 1/N to (N-1)/N and the
corresponding value of a normal distribution is displayed on X. The last point, for which the
cumulative probability is equal to 1, is not displayed.
The cutoffs can be moved, deleted, or inserted as horizontal lines as on the histogram.
The CDF is useful to identify groups, by removing a cutoff to regroup two groups on a similar trend,
and fine tune the position of the cutoffs to be put where a break in the trend is visible.

Note: When the Best PTR is PTR from External or PTR from MICP, no lines are
visible on the cross-plot as there is no corresponding equation for computing the cutoffs
lines.

• Porosity Permeability cross-plot: This shows permeability versus porosity colored by the
Petrophysical Rock Type. The cutoff lines separating each group are also displayed.

Validation tab

SCAL overview > Utilities > Deterministic Rock Typing 41


SCAL plug-in

• Four cross-plots with Petrophysical Rock Type versus optional inputs (Sw, Swirr, Facies and
MICP).
• Permeability versus Porosity cross-plot shows the best PTR lines as well as boxes for minimum
and maximum of Permeability and Porosity of the points belonging to each petrophysical rock type.
The values are saved as a property of the PetroRockType variable. They can be accessed on
the property tabs of the PetroRockType variable under the Properties tab. Each rock type's
minimum and maximum permeability and porosity values are used.

• 1 LogView with the input data and PTR computed for the methods present in this tab. You can
change and save the LogView as a template with the SCAL_RockTyping_Validation name at
the project level that is used by the method.

Note: For all the plots, the color used for the points is set by default to PTR (Best).
Depending on the optional inputs available, you can enable an additional color mode by
Facies, MICP, Sw, Swirr, and External.

Tips
You can use the Deterministic Rock Typing utility to create standalone plots, use layout templates,
apply Techlog palettes, and reopen a modified method dashboard.

Open plot (cross-plot, histogram or LogView) in standalone


1. Right-click in the plot.
2. To create a standalone plot with the same content, click Duplicate .

Note: The plot is not dynamically linked to the method. It uses temporary variables that
are saved in the Project Browser under a TEMP group, below the SCAL_RT group.
This is useful to open a plot on a larger area to investigate and see the values in detail.
When you run the method, the variables under the TEMP group are deleted and
recreated.

SCAL overview > Utilities > Deterministic Rock Typing > Tips 42
SCAL plug-in

Layout templates
The following templates are in the Plug-in folder and used by default:
• SCAL_RockTyping_Pittman.
• SCAL_RockTyping_GeneralPurpose.
• SCAL_RockTyping_Carbonate.
• SCAL_RockTyping_Validation.
The templates are available at the User level and use default names for the inputs (CPOR, ckh,Sw,
Swirr, and Facies).
If the input name does not match the default name used in the template after the method is run and
in the corresponding tab, you must manually create the new layout by dragging the variables to the
layout, and then arrange them as required.
The layout must be saved as a layout template at the Project level with the same name. When the
method is launched, the saved template is used.

Palettes
A Techlog palette is associated to each option:
• Facies: Groups
• MICP: Groups
• SW: Sw
• Swirr: Sw
• PRT(best) : HRA_Rockclass_18
• External: Groups
To customize a palette, you must create a palette with the same name at the User level. It is applied
instead of the Techlog level palette. Palettes at Company and Project level with the same name are
not applied.
For Modified Lorenz Plot in the Interpretation tab, the color palette is set to unknown and it cannot
be set by the plug-in for a line plot. To confirm that the rocktype is in agreement with the flow units,
you must change the palette manually from unknown to HRA_Rockclass_18 when PRT(Best) is
selected as the display mode.

Reopen a modified method dashboard

• If one of the widgets is mistakenly closed, for example the tabs, plots, or LogView widget, or if the
Method dashboard are closed, click Open Method Dashboard in the Views tab of the Workflow
view.
• If the Method view is closed, click Open Method View in the Views tab of the Workflow view.
• You can drag the three workflow engine windows in the dashboard to arrange them as necessary.

SCAL overview > Utilities > Deterministic Rock Typing > Tips 43
SCAL plug-in

• To save the workspace, click Home, and then on the Window tab, click Save as template. In the
Save Dashboard Template dialog box, click User and type the WE_Workspace name. The next
time that you open a workflow engine method, the WE_Workspace dashboard template is applied.

References
The SCAL plug-in utilizes the following reference material.
• Pittman, E. D., 1992. Relationship of Porosity and Permeability to Various Parameters Derived
from Mercury Injection Capillary Pressure Curves for Sandstones: AAPG Bulletin Vol. 76, No. 2, P.
191 198.
• Gunter, G. W., Spain, D. R., Viro, E. J., Thomas, J. B., Potter G. and Williams, J. Winland Pore
Throat Prediction Method - A Proper Retrospect: New Examples from Carbonates and Complex
Systems: SPWLA 55th Annual Logging Symposium held in Abu Dhabi, United Arab Emirates, May
18-22, 2014.
• Lucia, F. J.,1999, Carbonate reservoir characterization, Springer-Verlag, Berlin.
• Amaefule, J. O., Altunbay, M., Tiab, D., Kersey, D. G., and Keelan, D. K., 1993, Enhanced
Reservoir Description: Using Core and Log Data to Identify Hydraulic (Flow) Units and Predict
Permeability in Uncored Intervals/Wells, Paper SPE 26436.
• R. Aguilera and M.S. Aguilera, The Integration of Capillary pressures and Picket Plots for
Determination of Flow Units and Reservoir Containers: SPE-81196-PA.

Equations
The SCAL plug-in utilizes the following equations in its workflows.
• In the Pore Throats Radius equations, k/φ is permeability, in mD. The equations show the
computation of the different PTRi from the inputs.
• The outputs of the equations are given in μm (except for the k/φ ratio which is in mD, Phiz and
Lucia Rock Fabric Number, which is unitless).
• For Aguilera, Lucia, Pittman, and Winland the equations are the results of correlations available in
the References section.

SCAL overview > Utilities > Deterministic Rock Typing > Equations 44
SCAL plug-in

Data validation
For each PTRi (Phytoplankton Reservoir Trophic Index), the data validation computation is done
within a range of data that are commonly used.
All the methods (Aguilera, Lucia, Pittman, and Winland) are derived from experimental datasets.
When the input has a no value, the output has no value. In Modified Lorenz plot, the contribution of
such point is considered as null.
The correlations of the logic used for validating different data in the computation are described here:

Lucia
• Limits on inputs (porosity and permeability):
• 0.005 < Porosity < 0.5 (v/v).
• 0.1 < Permeability < 15,000 mD
• Data falling above or below a limit are simply replaced by the limit.
• Limits on output PTRi_RFN_L:
• If computed RFN < 0.25 then PTRi_RFN_L = no value.
• If computed RFN > 5.5 then PTRi_RFN_L = no value.
• Where RFN is the Rock Fabric Number computed using the formula from Lucia.

Winland, Pittman, RQI, FZI, and PHIZ


Limits on inputs (porosity and permeability):
• 0.005 < Porosity < 0.5 (v/v).
• 0.001 < Permeability < 15,000 mD.
• Where RFN is the Rock Fabric Number computed using the formula from Lucia.

k-phi ratio and Aguilera


Limits on inputs (porosity and permeability):
• 0.005 < Porosity < 0.999 (v/v).
• 10-10 < Permeability < 15,000 mD.
• Data falling above or below a limit are simply replaced by the limit.

External & MICP


No limits.

SCAL overview > Utilities > Deterministic Rock Typing > Data validation 45
SCAL plug-in

Generate KR from end points


In this method, relative permeability curves are generated from end points and parameters. This
method is generic for all the fluid systems. For oil-water and gas-water, relative permeability curves
are generated versus water saturation. For gas-oil, relative permeability curves are generated versus
gas saturation.
Generate KR from end points
The relative permeability shape is governed by end points:

Note: In some cases it is possible that the critical point is not present and the residual point
coincides with the highest point.
Relative permeability curves are governed by end points.

• For oil-water:
• Lowest:
• KRO: Maximum relative permeability of oil to water at SWL. Its value is between 0 and 1.
• SWL: Lowest water saturation. Its value is between 0 and 1. In ECLIPSE term it is the
connate water saturation.
• Critical:
• KRORW: Relative permeability of oil to water at SWCR. Its value is between 0 and KRO.
• SWCR: Critical water saturation. Saturation above which relative permeability of water to oil
become strictly positive. Its value is between SWL and 1.
• Residual:
• KRWR: Relative permeability of water to oil at residual point. Its value is between 0 and 1.
• 1 - SOWCR or SORW: Residual water saturation. It corresponds to the lowest water
saturation at which oil is not mobile. Its value is between SWCR and 1.
• Highest:

SCAL overview > Utilities > Generate KR from end points 46


SCAL plug-in

• KRW: Relative permeability of water to oil at SWU. Its value is between KRWR and 1. This
point correspond to the aquifer point and is needed for simulation.
• SWU: Highest water saturation. Its value is between SORW and 1.
• For gas-oil:
• Lowest:
• KRO: Maximum relative permeability of oil to gas at SGL. Its value is the same as maximum
relative permeability of oil to water at SWL.
• SGL: Lowest gas saturation. Its value is set to 0.
• Critical:
• KRORG: Relative permeability of oil to gas at SGCR. Its value is between 0 and KRO.
• SGCR: Critical gas saturation. Saturation above which relative permeability of gas to oil
become strictly positive. Its value is between SGU and 1.
• Residual:
• KRGR: Relative permeability of gas to oil at residual point. Its value is between 0 and 1.
• 1 - SWL or SGRO: Residual oil saturation. It corresponds to trapped oil when only gas is
flowing. Its value is between SWCR and 1.
• Highest:
• KRG: Relative permeability of gas to oil at SWU. Its value is between KRGR and 1.
• SGU: Highest gas saturation. At this value saturation of oil is 0. Its value is SGU = 1 - SWL.
• For gas-water:
• Lowest:
• KRG: Maximum relative permeability of gas to water at SWL. Its value is between 0 and 1.
• SWL: Lowest water saturation. Its value is between 0 and 1. In ECLIPSE term it is the
connate water saturation.
• Critical:
• KRGR: Relative permeability of gas to water at SWCR. Its value is between 0 and KRG.
• SWCR: Critical water saturation. Saturation above which relative permeability of water to
gas become strictly positive. Its value is between SWL and 1.
• Residual:
• KRWR: Relative permeability of water to gas at residual point. Its value is between 0 and 1.
• 1 - SGCR or SGR: Residual water saturation. At this point gas saturation is maximum. Its
value is between SWCR and 1.
• Highest:
• KRW: Relative permeability of water to gas at SWU. Its value is between KRWR and 1. This
point correspond to the aquifer point and is needed for simulation.
• SWU: Highest water saturation. Its value is between SGR and 1.

Mandatory inputs
All end points are required for this method to run. To generate relative permeability curves without the
critical, or residual, end point, the input variables for critical and lowest must be entered and set to
the same variables, or residual and highest. The inputs to be used are the same for any fluid system.
They are displayed for oil-water, gas-oil, and gas-water systems.
• Lowest end point:
• KRO/KRO/KRG.
• SWL/SGL/SWL.

SCAL overview > Utilities > Generate KR from end points 47


SCAL plug-in

• Critical end point:


• KRORW/KRORG/KRGR.
• SWCR/SGCR/SWCR.
• Residual end point:
• KRWR/KRGR/KRWR.
• 1-SOWCR/1-SOGCR-SWL/1-SGCR.
• Highest end point:
• KRW/KRG/KRW.
• SWU/SGU/SWU.

Optional inputs
You must enter parameters for each phase of the different fluid systems. Parameters must be set so
the method knows which fluid system to consider. You must enter either a single Corey coefficient, or
three LET coefficients, in each group.
• Water LET/Corey parameters:
• Corey Water.
• L Water.
• E Water.
• T Water.
• Oil LET/Corey parameters:
• Corey Oil.
• L Oil.
• E Oil.
• T Oil.
• Gas LET/Corey parameters:
• Corey Gas.
• L Gas.
• E Gas.
• T Gas.

Parameters
• Fluid system:
• OW: Oil-water system (Default value).
• GO: Gas-oil system.
• GW: Gas-water system.
• Type:
• Corey: When selected, Corey coefficients will be used. Corey is the default value of this
parameter.
• LET: LET coefficients will be used.
• Count of lines: Default to 42. This parameter sets how many points each capillary pressure curve
will have.

SCAL overview > Utilities > Generate KR from end points 48


SCAL plug-in

Equations
The equations used for generating relative permeability from end points and parameters are for
Corey type of equations:

Or using Swn as normalized saturation:

For LET equation, for example, as used in SCA2014-080 Parameter Based SCAL - Analysing
relative permeability for full field application:

In the equation above, SORW corresponds to the residual water saturation and is equal to 1 -
SOWCR. In the reference SCA2014-080 SORW mentioned in the paper corresponds to SOWCR as
defined by the SOWCR keyword in ECLIPSE as: critical oil-in-water saturation. That is, the largest oil
saturation for which the oil relative permeability is zero in an oil-water system.
Or using Swn as normalized saturation:

SCAL overview > Utilities > Generate KR from end points 49


SCAL plug-in

Outputs
Output variables are saved in the Generated group. Only the variables relevant to the fluid system
are generated. Kr(g or o or w)_(OW or GO or GW)_C_Model in unitless, and S(w or g)_(OW or GO
or GW)_C_Model in v/v.

Note: Once you have created all the end points in the dataset, you can edit them in a data
editor. By using the automatic launch feature of Workflow Engine, any saved change in an
end point variable is automatically saved.

Generate PC from end points


In this method, the capillary pressure curve is generated from the SWL end point and parameters. In
a situation where the capillary pressure profile is not available for a given core, you can generate a
capillary pressure curve using a limited number of parameters.
Generate PC from end points
In the SCA2008-08 A new versatile capillary pressure correlation paper, the LET function is used to
generate a capillary pressure profile. The generic equation proposed captures any capillary pressure
profile (drainage, imbibition, or hysteresis). In the current version of the plug-in, only the first drainage
profile is available. It uses the formula for oil-water, or gas-water systems, as follows:

Where the parameters have the following significance:


• PCmax: Highest pressure at irreducible water saturation.
• PCe: Entry pressure, or threshold pressure. This is the pressure in the drainage phase at which
water saturation starts to drop.
• Swi: Irreducible water saturation. This is the end point that corresponds to the lowest water
saturation seen in the reservoir.
• L, E, and T: LET parameters are used to alter the shape of the curve of the capillary pressure.
• Positive value of L controls the flatness of the curve on the right side (high water saturation).
• Positive value of E controls the transition from PCe to PCmax. Low values make a short
transition, while large values make a longer plateau.
• Positive value of T controls the shape of the left part of the curve. A value lower than 1 makes a
sharp change close to Swi, while a value higher than 1 makes a plateau from PCmax.

SCAL overview > Utilities > Generate PC from end points 50


SCAL plug-in

SCAL overview > Utilities > Generate PC from end points 51


SCAL plug-in

For gas-oil systems, the reference saturation is gas. The minimum gas saturation is 0 and the
maximum is 1 - SWL. The formula is therefore changed to:

Where the parameters have the following significance:


• PCmax: Highest pressure at highest gas saturation.
• PCe: Entry pressure, or threshold pressure This is the pressure in the drainage phase at which
water saturation starts to drop.
• Swi: Irreducible water saturation. This is the end point that corresponds to the lowest water
saturation seen in the reservoir. The highest gas saturation is 1 - SWL when all oil has migrated to
the gas phase.
• L, E, and T: LET parameters are used to alter the shape of the curve of the capillary pressure.
• Positive value of L controls the flatness of the curve on the left side (low gas saturation).
• Positive value of E controls the transition from PCe to PCmax. Low values make a very short
transition, while large values make a longer plateau.
• Positive value of T controls the shape of the right part of the curve. A value lower than 1 makes
a sharp change close to 1 - Swi, while a value higher than 1, makes a plateau from PCmax.

Mandatory inputs
All inputs are required for this method to be run. The inputs that are used are the same for any fluid
system:
• SWL: For oil-water or gas-water this value correspond to the lowest water saturation at the highest
capillary pressure in reservoir condition. In Gas-Oil systems, SWL is still required. The maximum
gas saturation is then computed as 1 - SWL.
• L, E, T: LET parameters are used to control the shape of the capillary pressure curve.
• Max PC: corresponds to the maximum capillary pressure seen in reservoir condition at SWL for
oil-water or gas-water systems, or at Sg = 1 - SWL for gas-oil system.
• Pct: Entry pressure or threshold pressure above which water saturation starts to decrease.

Parameters
• Count of lines: Value defaults to 42. This parameter sets how many points each capillary
pressure curve has.
• Fluid system:
• OW: Oil-water system, this is the default value.
• GO: Gas-oil system.
• GW: Gas-water system.

Outputs
Outputs variables are saved in a group called Generated. Only the variables relevant to the fluid
system are generated. (Sw or Sg)_Pc_(OW or GO or GW)_C_Model in v/v and Pcd_(OW or GO or
GW)_C_Model in bar, by default.

SCAL overview > Utilities > Generate PC from end points 52


SCAL plug-in

Table Generation
You can use this method to combine data from two datasets to generate a table that you can use in
Petrel reservoir engineering, or in a simulator data deck to prepare for dynamic model initialization.
You can generate tables for oil-water, gas-oil-water, and gas-water systems.
When generating tables, the required inputs are relative permeability and capillary pressure curves.
They can be normalized or denormalized. At a minimum the first two groups - Capillary pressure
OW/GW and Relative Permeability OW/GW must be filled. If appropriate, you can leave the groups
Capillary pressure GO and Relative Permeability GO empty. In a given group, the variables must
come from the same dataset, however datasets can be different for the different groups.
This video shows you how to use Table Generation as a standalone method:
Table Generation

Note: Table Generation is also used as the last step of the two guided workflows in the
SCAL ribbon: Rock Type to table and End points to table.

Capillary pressure OW/GW


The first group of inputs for variables related to capillary pressure of Oil-Water and Gas-Water
systems:
• (PC OW/GW) Group: Group variable that can be generated from deterministic rock typing, or any
other variable. This input is mandatory.
• (PC OW/GW) Capillary pressure reservoir: Capillary pressure for the Oil-Water or Gas-Water
system. This input is mandatory.
• (PC OW/GW) Wetting phase saturation: Water saturation. This input is mandatory.

Note: The lowest end point from water saturation (SWL/SWi) from the capillary pressure
profile is used as a reference for SWL when a table is generated. This means that when PC
and KR tables do not have matching SWL, the KR curve is rescaled to match SWL from
PC. As PC has been capped to the maximum PC in reservoir conditions, it is the most
accurate SWL value, therefore it is used to rescale KR.

Relative permeability OW/GW


The second group of inputs for the variables related to relative permeability of Oil-Water or Gas-
Water systems:
• (KR OW/GW) Group: Group variable. It can be generated from deterministic rock typing, or any
other variable. If KR data are coming from a different dataset than PC data, then the groups must
have some overlap in their values. This input is mandatory.
• (KR OW/GW) CKRW: Relative permeability of water is required. This input is mandatory.
• (KR) CKRW Normalized Averaged: You can use the output of the averaging or modeling step,
with the default names being CKRW_Avg, or Ckrw_modeled respectively.
• (KR OW/GW) CKRO/CRKG: Relative permeability of gas or oil is required. This input is
mandatory.

Capillary pressure GO
The third group of inputs for the variables related to capillary pressure of a Gas-Oil system. This set
of inputs is optional, the method can be run without defining any Gas-Oil related inputs. Capillary

SCAL overview > Utilities > Table Generation 53


SCAL plug-in

pressure for GO can be left empty, even if a relative permeability curve is present. PC = 0 is used in
the output if it is missing as an input.
• (PC GO) Group: Group variable. It can be generated from deterministic rock typing or any other
variable. If GO data are coming from a different dataset than Oil-Water data, then the groups must
have some overlap in their values. This input is optional.
• (PC GO) Capillary pressure reservoir: Capillary pressure for the Gas-Oil system. This input is
optional.
• (PC GO) Core gas saturation: Gas saturation. This input is optional.

Relative Permeability GO
The fourth group of inputs for the variables related to relative permeability of a Gas-Oil system. This
set of inputs is optional, the method can be run without defining any Gas-Oil related inputs.
• (KR GO) Group: Group variable. It can be generated from deterministic rock typing or any other
variable. If KR data are coming from a different dataset than PC data, then the groups must have
some overlap in their values. This input is mandatory.
• (KR GO) Core gas saturation: Gas saturation. This input is optional.
• (KR GO) CKRG: Relative permeability of water is required. This input is mandatory.
• (KR GO) CKRO: Relative permeability of gas or oil is required. This input is mandatory.

Note: Because the execution dataset of the method is the dataset from capillary pressure
OW/GW, the data related to relative permeability must be obtained from the relative
permeability dataset. An interpolation is therefore required.
A known issue is that if indexes between capillary pressure and relative permeability do not
overlap, the method will return a validation error. For example, if the interval of relative
permeability reference variable is not included within the values of the reference variable of
the capillary pressure dataset.

Parameters
• Precision: Number of digits after the comma to be used. By default this is 4.
• Count of points: Number of lines (N) per rock type in the final table. A constant step is computed
as (1-SWL)/(N-2). A point is present at Sw = 0.9999. This point is needed because during
simulation the free water level is often defined as contact, and may result in incorrect volumes.
• PC resampling: Resampling for the result in the table is done using interpolation linearly or
logarithmically.
• KR resampling: Resampling for the result in the table is done using interpolation linearly or
logarithmically.
• Export format: Eclipse Family I/Eclipse Family II. Use of Family I will generate the SWOF and
SGOF keywords table. When Gas-Oil is the only input present, Family II will generate a SGFWN
keywords table. Otherwise the SWFN, SGFN, and SOF3 tables are generated.

Output
An output file is available in the folder: C:\Users\YourProfile\AppData\Local\Temp\SCAL.
There is a link to the folder in the Output window. The file [Link] can be used in Petrel
reservoir engineering to import the PC and KR data per rock type.

SCAL overview > Utilities > Table Generation 54


SCAL plug-in

Capillary pressure methods


You can use a number of methods to correct your capillary pressure data. The methods include
closure correction and clay-bound water correction. You can also do pressure conversions, or you
can average capillary pressure curves by group.
The capillary pressure methods are:
• Close correction.
• Clay-bound water correction.
• Conversion and capping.
• Averaging.

Closure correction
You can use the Closure correction method to correct mercury injection capillary pressure data.
A measurement artefact takes place during the experiment and is often not corrected when raw data
is delivered by the laboratory. This artefact is called non-conformance, or the closure effect. It is
related to the nature of mercury, which is a highly non-wetting fluid for the rocks, and the roughness
of the sample.
For mercury to intrude in the sample voids (porosity), force needs to be applied on the mercury to fill
all the gaps on the sample surface, and then to penetrate the sample. Because of the non-wetting
phase nature of mercury, the pressure applied on the fluid can be high.
Each increment of pressure adds more fluid to the porosimeter. Therefore, the volume is incorrectly
reported as the porosity of the sample, and must be removed.
To do so, you can check the profile of the capillary pressure versus the volume injected (or saturation
of wetting or non-wetting phase) and search for an inflection point when starting from 0 volume
injected. The position of this correction point is an interpretation and must be checked. The non-
conformance effect is not expected to be higher than 10 percent, but it could be higher in samples
where the ratio surface to volume is high, in cuttings, for example.

Mandatory inputs
• Capillary pressure: Capillary pressure laboratory (Array). Data to be corrected for closure must
be from mercury injection experiment.
• Wetting phase saturation: The input type must be Core water saturation (Array). If only mercury
saturation is available, you can compute the wetting phase saturation from the data editor by 1 –
CHg. For example, if CHg is mercury saturation in v/v. The search for the inflection point is done
assuming a wetting phase on the x axis and within a window defined by the Min and Max value
parameters.

Parameters
The parameters are applied when the method is run for all plugs that are not quality checked.
• Min: Minimum value of the window for searching inflection point.
• Max: Maximum value of the window for searching inflection point.
• Method: Extrapolation, Normalization, or Shift. The default value is Normalization,
which is the recommended value.
• Normalization: The points between the correction point and maximum are removed. The
points between 0 and the correction point are renormalized (the water saturation of the
correction point is now 100 percent or 1 v/v).

SCAL overview > Capillary pressure methods > Closure correction 55


SCAL plug-in

• Extrapolation: You can apply this option, for example if the sample is homogeneous. The
logs of the pressures between the correction point and the maximum are replaced with an
extrapolated value that uses the same slope at the correction point.
• Shift: This option is available in case the input values correspond to bulk volumes instead of
wetting phase saturation.

Note: The correction point is initially the inflection point found between the minimum and
maximum. If no inflection point is found in the interval, the correction point is set at the
highest value of the interval on the curve.
To drop a correction point on any tangent to the curve, select Plug view, and then select a
plug in the View mode above the filter.

Outputs
For a selected plug, once the correction point is moved, the plug is considered quality checked. The
parameters in the method view have no effect. To reset a point, right-click it, and then click Reset to
default in the filter.
Variables outputs from the method are under the SCAL_CCE group.
• CSW_CCE: Wetting phase saturation (Array) after correction.
• PC_LAB_CCE: Capillary pressure laboratory (Array) after correction.
• QC_CCE: A flag to indicate if a plug was QC’ed or not (1 if QC’ed, no value if not).
• Method_CCE: 1 if normalization was done, 0 if extrapolation was done.
• CSW_X: X value of the correction point.
• PCLAB_Y: Y value of the correction point.
• PCE_CCE: Entry pressure, the value of the capillary pressure laboratory at the first saturation lower
than 1. It can be used as input to rock typing.

Clay-bound water correction


This correction follows the empirical relations of Hill, Shirley, and Klein and correct SCAL
measurements from the presence of clay bound water.
Clay-bound water correction proposes to correct for the change of volume available between the
sample that was used in mercury injection experiment and the sample without cleaning. Samples
must go through a cleaning process using different types of solvents, water is removed from the
sample and the total porosity available to mercury becomes larger than the actual porosity available
to oil during the drainage process.

SCAL overview > Capillary pressure methods > Clay-bound water correction 56
SCAL plug-in

The details of the correction are available in SPWLA (1979). Juhász, I. The central role of Qv and
formation-water salinity in the evaluation of shale formations.

Mandatory inputs
• Core water saturation (Array) v/v.
• Capillary pressure laboratory (Array) bar.

Optional inputs
• Volumetric CEC eq/L.
• Core porosity v/v.

Note: To activate the module, you must enter either the Core porosity or the Volumetric
CEC. If you do not, a validation error is displayed:

• Salinity eq/L (salinity in the formula used in the reference is not in g/L. To convert g/L to meq/cm3
for an NaCl solution, the salinity in g/L must be divided by 58.44 to obtain NaCl eq/L).

Parameters
Clay-bound water (CBW) is the water immobilized by the clay present in the formation. We assume
that clay-bound water is the clay hydration water, that is the sorbed water and the hydration water of
the exchange cations, surrounding the clay particles in equilibrium with an electrolyte. It contains the
clay particles. The counteractions constitute the cation-exchange capacity of the rock, that is
commonly referred to as Qv (meq/cm3 or eq/L). The Qv parameter is obtained from empirical
relationships established for the reservoir in question on the basis of laboratory measurements.
Qv is an individual property of the sample and must be imported with the sample information. If the
Qv is not available, you can calculate it with the following relation:

SCAL overview > Capillary pressure methods > Clay-bound water correction 57
SCAL plug-in

Where a and b are the coefficients that you can modify.


After calculating the Qv, you can estimate the following ratio:

Co = salinity [g/L]
The ratio is used to calculate the corrected pressure and saturation using the following equations:

Outputs
The output variables are present under the SCAL_CBW group:
• CSW_CBW Core water saturation (Array) v/v.
• PC_LAB_CBW Capillary pressure laboratory (Array) bar.

Conversion and Capping


This method is used for converting a pressure, J transform or height arrays, to Leverett J (Array),
Height Above Free Water Level, Capillary Pressure Laboratory (Array), Capillary Pressure IFT1
(Array) and Capillary Pressure Reservoir (Array).
You can apply an optional maximum cap to the capillary pressure in the reservoir condition. This
option is needed when you generate a table for the simulator and for saturation height modeling, to
focus only on the usable range of the capillary pressure in the reservoir.
For example, MICP data provides a full profile of saturation versus pressure, which is extremely
useful for pore throat transformation and rock typing. However, it often contains too much information
to create a saturation height model. Capping to the range of the capillary pressure in the reservoir
condition lets you focus on a smaller interval. Therefore, enabling you to reconstruct it more
accurately with fewer points in the output table, or, for example, through a single pore throat
saturation height model.

Mandatory inputs
• Capillary pressure, can be one of the following families:
• Leverett J (Array).
• Height Above Free Water Level.
• Capillary Pressure Laboratory (Array).
• Capillary Pressure IFT1 (Array).
• Capillary Pressure Reservoir (Array).

SCAL overview > Capillary pressure methods > Conversion and Capping 58
SCAL plug-in

Note: The input filter for the Capillary pressure field uses an advanced filter combining
all of the families above. If no family is assigned to the input variable, for example, when
dropping the variable directly, or a family is assigned but none of the five are in the
advanced filter, the method validation will fail:

• Wetting phase saturation: This is typically in the Core Water Saturation (Array) family. It can be
obtained from the non-wetting phase (1 – saturation of mercury, for example). The conversion to
different fluid systems is done in this method.

Optional inputs
• Porosity: An advanced filter that searches for core porosity, porosity or total porosity.
• Permeability: An advanced filter that searches for core permeability or permeability.

Note: Both the Porosity and Permeability inputs are needed to get conversion to J. If
either is missing, the J output is empty.

• Filter: Used to populate the filter of the array crossplot that is displayed in the method dashboard.
The default filter used is Rock type.
• Color: Used to color the curves. By default, the filter used is the same as that selected from the
Filter list.

Parameters
You can switch each parameter to a variable by dropping the corresponding variable from the project
browser.

The method automatically validates the unit compatibility between the variable and the parameter. A
validation error is displayed if the units are not compatible, as shown here:

SCAL overview > Capillary pressure methods > Conversion and Capping 59
SCAL plug-in

The conversion parameters are:


• Interfacial tension laboratory: 480 dyne/cm by default for Mercury-Air experiment. It must be
changed for centrifuge and porous plate experiment. In case of multiple experiments, data present
in the same dataset of a variable is mandatory.
• Interfacial tension reservoir: 30 dyne/cm by default.
• Cos of wettability angle laboratory: 0.766 by default.
• Cos of wettability angle reservoir: 1 by default.
• Oil density: 0.8 g/cc by default. It can be used for any fluid: gas condensate or oil.
• Water density: 1.0 g/cc by default.
The capping parameters are:
• Interpolation: Logarithmic, Linear, or None.
When capping is applied, an interpolation is often needed between the two points above and
below the capping value. If the capping value is higher than the highest value of the data, an
extrapolation is done using the first two data points.

Note: Extrapolation may also occur until the maximum capillary pressure in the reservoir
condition value of the parameter, whichever is higher (in the case where the
extrapolation would bring a negative value, 0 is used instead).

• Logarithmic: The interpolation or extrapolation is done on a logarithmic scale on the y axis


and linear scale on the x axis.
• Linear: The interpolation or extrapolation is done on a linear scale on the x and y axis.
• None: No capping is applied. The output of the method is only converted to the different
conditions.
• Max. cap. Pres. In reservoir condition: This parameter is used to cap the data to a maximum
value in the reservoir condition. We recommend that you limit above the actual range by a factor
of two.

Outputs
The outputs of the method are present under the SCAL_Conversion group:
• CSW_Cap: The wetting phase saturation is generated to have the same number of columns as
the other outputs. The interpolation and data have been removed, or extrapolation has been done.
In either case, the number of columns for the outputs is different than from the inputs.
• HAFWL_Conversion, J_Conversion, PC_IFT1_Conversion, PC_LAB_Conversion and
PC_RES_Conversion are output as Height above free water level, J leverett (Array) or pressures

SCAL overview > Capillary pressure methods > Conversion and Capping 60
SCAL plug-in

(Capillary pressure IFT1 (Array), Capillary pressure Laboratory (Array) and Capillary pressure
Reservoir (Array)). Conversion and Capping is applied on the output.

Averaging - Capillary pressure


You can use this method to average capillary pressure curves by group, with an option to normalize
the data. For each capillary pressure curve, a lowest saturation end point is also returned.

Mandatory inputs
• Capillary pressure reservoir: You can input can either the capillary pressure reservoir (Array)
family, or the J Leverett (Array) family. Any other family does not pass the method validation:

Note: The input of this method is typically the output of the Conversion and Capping
step.

• Wetting phase saturation: The Core water saturation (array) family is expected.

Optional inputs
• Group: If a group is not available, the average is provided for all the curves as if they belonged to
the same group. If a group is available, the average is done for the x and y axis based on the
selected parameters.

Note: The variable used for the group input is also used in the cross-plot filter.

• Weight: You can use a weighting factor for averaging as described in SPE-125492: Upscaling
Saturation-Height Technology for Aram Carbonates for Improved Transition-Zone Characterization
J. J. M. Buiting. This factor is used only when the Average parameter is set to On X using
weight.
• Color: You can use the same variable as for group. If no palette is associated to the variable used
for color, a default one is created. Otherwise, the palette used in the main parameters of the
variable used for Color is used.
By default, the Inputs box is left blank. Click Select input filters to see a list of variables you can
use. Once a variable is selected, right-click it and select Set empty value to set the optional box to
empty.

Parameters
• Average: Done on either X values at given Y values, or the other way round.
• On X: A resample is done on Y so all the curves have an X value at different Y values. Then
the average is done on , i is the index of the column, and k is the index for
the number of plugs in the group.
• On Log(Y): A resample is done on X so all the curves have a Y value at different X values.
The average is done on Log(Y) for all the curves with a value.
, with i is the index of the column and k is the index for the number of
plugs in the group.

SCAL overview > Capillary pressure methods > Averaging - Capillary pressure 61
SCAL plug-in

• On X using Weight: A resample is done on Y for all the curves to have an X value at
different Y values. The average is done on X for all the curves with a value.

• On Y: A resample is done on X so all the curves have a Y value at different X values. Then the
average is done on Y for all the curves with a value. , with i is the
index of the column and k is the index for the number of plugs in the group.
In case the input data was not capped and some plugs have missing values, an extrapolation is
done using the last two points to get some data to average.
• Normalization: When set to No, saturation is not changed. When set to Yes, there is some impact
on the computation:
For average of On X using Weight: The average is done first, then normalization. For all the
other options, normalization is done first, and then the average is computed. Normalization
consists in getting the lowest saturation (Swl_output) and computes a new saturation as:
.
The normalization process is used in the end point scaling process for some flexibility when
initializing a model for simulation. However, it requires a model for each end point to denormalize the
data in the cell of interest before computing any useful saturation.

Outputs
The data is not necessarily sampled in the same way on X or Y and a resample step is necessary
prior to computing the average.
Swl_output corresponds to the lowest wetting phase saturation for which a capillary pressure is
present. It can be used as an end point to find a regression versus K or Phi, to generate a property in
3D to denormalize the table later in an end point scaling workflow.
PC_Res_resampled and J_resample versus CSW_normalized: The input data is displayed after
resample. The resample is done to condition the averaging computation. They can be normalized, or
not based on the Normalization option.
PC_Res_averaged and J_averaged versus CSW_normalized_averaged: The data has been
averaged and eventually normalized. They are the inputs for the table generation.

Relative permeability methods


There are two methods that you can use to modify your relative permeability data. These methods
can be used to either average the relative permeability curves by group, or to smooth normalized
data to avoid convergence issues in the simulator.
The SCAL plug-in contains two relative permeability methods:
• Averaging
• Modeling

Averaging - Relative permeability


You can use this method to average the relative permeability curves by group, with an option to
choose how to normalize the data. For each relative permeability curve, the end points are also
returned. The method assumes the fluid system is oil and water.
End points are displayed on the plot and the Swcr can be moved for each plug independently.

SCAL overview > Relative permeability methods > Averaging - Relative permeability 62
SCAL plug-in

Mandatory inputs
• Wetting phase saturation: Core water saturation (array) family is expected.
• Relative permeability non wetting phase: Core relative permeability oil family is expected.
• Relative permeability wetting phase: Core relative permeability water family is expected.
• Reference: Depth, core depth, or reference family is expected.

Optional inputs
• Group: In case a group is absent, the average is provided for all the curves as if they belong to
the same group. If a group is present, the average is done for the x and y axis based on the
parameters selected below. The variable used for group is used as well in the filter of the cross-
plot.
• Weight: A weighting factor can be used for averaging as described in SPE-125492: Upscaling
Saturation-Height Technology for Aram Carbonates for Improved Transition-Zone Characterization
J. J .M. Buiting. This factor is used only when Average parameter is set to On X using weight.
This option is needed mostly for the Capillary pressure method, but used for relative permeability
as well.
By default, the Inputs box is left blank. Click Select input filters to see a list of variables you can
use. Once a variable is selected, right-click it and select Set empty value to set the optional box to
empty.

Parameters
• Type of normalization: Normalization can be done on a range between different useful end
points.
• SWL to SWU: SWL is the lowest saturation reported from the experiment at which a
measurement was made. SWU is the highest. The point at SWU = 1 is not part of the
experiments, however during simulation this point is required for the acquirer. That is, the
permeability for a cell of 100 percent water is looking at Sw = 100 percent, even if this point is
not reach during the imbibition experiment. For that reason, this point is added in the method.
• SWL to 1–SOWCR: SOWCR being the irreducible oil saturation during imbibition experiment,
also called Residual oil saturation.

SCAL overview > Relative permeability methods > Averaging - Relative permeability 63
SCAL plug-in

• SWCR to 1–SOWCR: You can move SWCR. It is set by default at the same value as SWL. You
can move it on the x axis until it reaches the tangent made by the next two points. In reality,
SWCR is not observed, but it is an important parameter. It is the saturation at which the first
drop of water moves.
• SWCR to SWU: You can use this to do the normalization starting from SWCR, rather than SWL.
• None: You can use option in case end point scaling is not required in the simulator.

Note: Please note that in this situation, the averaging step is not required, because
averaging expects normalized curves.

Normalization computes a new saturation as:

The normalization process is used in end point scaling process to give some flexibility when
initializing a model for simulation. However, it requires a model for each end point to
denormalize the data in the cell of interest before computing any useful saturation. The model
for each point can be obtained by plotting them versus porosity or permeability, and searching
for a regression per rock type that can be used later to create a property for these end points in
the 3D model.
• Average: Done on either X values at given Y values, or the other way round.
• On X: A resample is done on Y so all the curves have an X value at different Y values. Then
the average is done on , i is the index of the column, and k is the index for the
number of plugs in the group.
• On Log(Y): A resample is done on X so all the curves have a Y value at different X values.
The average is done on Log(Y) for all the curves with a value. , i is the
index of the column, and k is the index for the number of plugs in the group.
• On X using Weight: A resample is done on Y so all the curves have an X value at different
Y values. Then the average is done on X for all the curves with a value. ,
i is the index of the column, and k is the index for the number of plugs in the group.
• On Y: A resample is done on X so all the curves have a Y value at different X values. Then the
average is done on Y for all the curves with a value. , i is the index of the
column, and k is the index for the number of plugs in the group.
If the input data is not capped and some plugs have missing values, an extrapolation is done using
the last two points to get some data to average.

Outputs
The outputs from the method are saved under two groups:
• Under SCAL_EndPoints the end points are saved:
• SWL
• SWCR
• 1-SOWCR
• SWU
• KRO
• KRORW
• KRW

SCAL overview > Relative permeability methods > Averaging - Relative permeability 64
SCAL plug-in

• KRWR
• Under SCAL_RelativePermeability:
• CKRO_Norm
• CKRW_Norm
• Csw_Norm
• CKRO_Avg
• CKRW_Avg
• Csw_Avg

Note: CKRO_Norm, CKRW_Norm, and Csw_Norm are used to display the normalized
curves in the plug tab of the dashboard. Each curve is normalized before averaging is
done per group.
CKRO_Avg, CKRW_Avg, and Csw_Avg are used to display the averaged curves in the
Averaging tab of the dashboard. These are the main outputs of the method which are
used directly for table generation, or are used in the modeling step before the table
generation.

Modeling - Relative permeability


You can use this method to smooth the data to avoid convergence issues in the simulator. This is not
a necessary step, as smooth data is often obtained from averaging, when there are enough curves to
avoid spikes in the averaged data.
If there are not enough curves in a given group, smoothing is recommended. Modeling must be done
on normalized data. Two options are available:
• Corey
• LET
We recommend that you run the method when a parameter is changed. The method uses a python
script to run the computation, and it cannot be done while another process is running. You can run
the method automatically using the Workflow Engine.

Mandatory inputs
• Relative permeability non wetting phase: You must use the averaged curve per rock type that is
the output of the averaging method.
• Relative permeability wetting phase: You must use the averaged curve per rock type that is the
output of the averaging method.
• Wetting phase saturation: If the family assignment rules modified the family assigned to the
output of the averaging method, you can drag the variables into the Value box.

Optional inputs
Group: Modeling is done for each curve per group. The input of the method must be the output of the
averaging method.

SCAL overview > Relative permeability methods > Modeling - Relative permeability 65
SCAL plug-in

By default, the Inputs box is blank. Click Select input filters to see a list of variables you can use.
Once a variable is selected, right-click it, and then select Set empty value to set the optional field to
empty.

Parameters
• Fitting function:
• Corey
• LET
• Corey equations:
• Oil:
• Water:

Note: In these equations, KRO, KRW, and CSW are the normalized oil relative
permeability, normalized water relative permeability, and normalized water
saturation respectively.

• LET equations:
• Oil:
• Water:

Note: In these equations, KRO, KRW, and CSW are the normalized oil relative
permeability, normalized water relative permeability, and normalized water
saturation respectively.
For KRW, the maximum value is 1, as the smoothing is done on normalized
data.

• Scale:
• Linear
• Logarithmic

Note: You can do the fitting on these two scales to get different models based on
where a better fit is needed.
The LET logarithmic scale is unstable, because of this we do not recommend using it.

Outputs
• Ckro_Modeled
• Ckrw_Modeled
• Csw_Modeled

Note: These outputs can be used as input in table generation.

SCAL overview > Relative permeability methods > Modeling - Relative permeability 66
SCAL plug-in

Workflow Engine
The Workflow Engine is an environment in which you can set up a workflow using multiple methods.
You can use the Workflow Engine interface to edit inputs, parameters, and outputs as required.
Setup a workflow in Workflow Engine
Techlog automatically opens three default workflow engine panes when launching the SCAL method:
• Workflow view: Displays the method and well added into the workflow.
• Method view: Displays the execution dataset, inputs, parameters, and outputs of the selected
method.
• Method dashboard: Displays any item set by the method, for example plots and custom widgets.

Add a well or dataset


To add a dataset or a well, drag it from the Project browser into the Workflow view pane. The
Method view and Method dashboard panes are updated with information from the execution
dataset.
If the well contains multiple datasets, the first dataset under the well is set as the execution dataset.
The workflow engine can handle one dataset per well as the reference of the execution to interpolate
variables from different datasets. You can set the execution dataset at two levels:
• Workflow level: This setting is applied to all the methods in the workflow. If set, the workflow level
setting is overridden by the method level. To check the workflow level execution dataset:
1. Click any area of empty space in the Workflow view.

SCAL overview > Workflow Engine 67


SCAL plug-in

2. In the Method view: [Workflow] pane, select a dataset from the Execution dataset list, if
available.

• Method level: This setting overrides the workflow level setting and is applicable only for the
method itself. To check the method level execution dataset, do the following:
1. In the Workflow view, select a method.
2. In the Method view, check the Execution datasets settings section.

Edit inputs, parameters, and outputs


In the Method view, you can give an empty value to optional inputs, edit inputs filters, and revert
parameters back to their default values.
The Method view shows available inputs, parameters, and outputs. The list of inputs is only
available when you select the Value cell in the Inputs section.

SCAL overview > Workflow Engine > Edit inputs, parameters, and outputs 68
SCAL plug-in

When a variable belongs to the current execution dataset, the name of the variable is displayed.
When a variable belongs to datasets other than the execution dataset, the name of the dataset and
variable are displayed with the [DatasetName].[VariableName] format. When the variable from
a different dataset is selected, it is interpolated with the execution dataset.

Note: In the SCAL plug-in, this interpolation is not allowed for the validation. If a variable from a
different dataset is selected, the following error message is displayed:

Optional inputs
You can give inputs defined as optional by the method an empty value, as follows:
1. Right-click the value.
2. Select Set empty value.

Note: If there is no applicable data in the well, with the current input filter settings, the
cell is empty and you cannot select an input item. You can check the expected input
from the Input filter window.

Edit inputs filters


1. To display the current list of inputs and parameters in the left side of the Deterministic Rock
Typing dialog box, click Select input filters . If no data matches the criteria selected (Family,
Alias or Name), check the data in the project browser.

Note: When the data is present, but assigned to different families, you can remove the
corresponding field to change the input filter settings. For example, by removing the
Facies family.

2. Select the necessary filter from the Filters list in the right pane.
3. To add the selected filter to the Inputs list, click .

SCAL overview > Workflow Engine > Edit inputs, parameters, and outputs 69
SCAL plug-in

Edit parameters
Workflow Engine has different levels of parameter value storage:
• Well (context).
• Workflow default (Master template).
• Plugin default value.
If you make an edit at the Well level, it will override the Workflow default level value. To switch the
Well level to the Workflow default level, click Show default values .
When the well level is displayed, the Well column displays the well name.

When the Workflow default level is displayed, the column displays Default.

SCAL overview > Workflow Engine > Edit inputs, parameters, and outputs 70
SCAL plug-in

To revert a parameter back to it's default value, click Restore to default filter .

Edit outputs
All the outputs and their attributes are listed in the Outputs section. Select one of the outputs from
the list, as required. The attributes for the outputs are displayed and you can be edit them.
You can propagate Group, Prefix, Suffix, and Dataset to all the outputs. Right-click the Value
column, and then click Propagate this value to all outputs.

Reuse parameter settings with other datasets


When you change the execution dataset, the Input, Parameter, and Output settings are not be
changed. In SCAL, a unique logic is implemented and the inputs are automatically updated to select
the variables from the execution dataset.
By changing the execution dataset, the method is reset from the executed status. The same
parameters from previous execution are used and the inputs are updated by the method.

Workflow Engine Execution mode


Validation is done automatically when you add a well to the workflow. You can check the status of the
validation to see if the inputs can run the method and run it in Execution mode to check the status.
1. Check that the Method status icon in the method box of the Workflow view, or the Method
view, shows that the method has been validated.

Note: If the icon indicates an error , click the icon to display the error message which
contains information on why the validation failed:

2. When the method is validated, you must run it in execution mode. After running the method, check
the Method status icon again. The method status changes to Method executed.

Note: If the output of the method is modified afterwards, the Method status icon
method status changes to Method executed with altered output.

3. When the method status is Method executed or Method executed with altered
output, the Execute button of the method is disabled, as computation complete. If you want to
run the method again, right-click in the Workflow view, and then click Invalidate workflow.

Note: Workflow engine automatically resets when the setting of the method is changed,
or input data itself is edited.

Save and restore a workflow


You can save a workflow and then restore it later in the Project browser, you can use this to create
a preset workflow and regenerate your data when required.
1. In the Workflow View, in the Edit group, click Save.
2. In the Save workflow dialog box, enter a workflow name and select the storage level as
necessary.
3. To save the workflow including the computation status, select the Save status box.

SCAL overview > Workflow Engine > Save and restore a workflow 71
SCAL plug-in

This lets you check if the inputs and outputs are still the same when once the computation is done.
If the Save status check box is cleared, the workflow is saved without the computation status.
4. Click OK.
The saved workflow is displayed under the workflow area in the Project browser section.
To restore a saved workflow, double-click the saved workflow in the Project browser section.

Automatic launch
You can use Automatic launch to automatically run the workflow whenever you change a setting.
1. In the Workflow View, select a method.
2. In the Context group, click Automatic launch.

Save the workflow with parameter settings


You can save a workflow without selecting a well and preserve the parameter settings. You can then
apply the saved parameters to any well.
1. Right-click the Value cell, and then select Set as default value.

2. Click Show default values and check that the default value is updated.

Note: The default value is kept for this workflow.

3. In the Workflow view, right-click any empty space, and then select Remove all wells.

SCAL overview > Workflow Engine > Save the workflow with parameter settings 72
SCAL plug-in

4. In the Workflow view, right-click any empty space, and then select Save.
5. In the Selected name box, type a relevant name, and then clear the Save status check box.
6. Click OK.

7. To check the default settings without dragging a well, highlight the method and check the Method
view. To display the default values, click Show default values .

The edited default values are saved and are applied the next time the workflow is opened.

SCAL overview > Workflow Engine > Save the workflow with parameter settings 73

You might also like