3. INPUT FILE DESCRIPTION
3.1 Input Data Syntax
3.1.1 Example of keyword description (TREND keyword)
This statement defines the trend option that prints data to a file for plotting of specific variables as a function of time. See Appendix A for list of variables available for plotting.
If the soil module is used, the temperatures for selected cells can be trended. If the bundle module is used, the fluid temperature for selected lines can be trended. In both cases some additional information must be given.
If the Compositional Tracking, MEG Tracking or Advanced Well (drilling) modules are used, variables for different components can be trended.
Keyword: TREND
Dependencies: BRANCH, GEOMETRY, POSITION, GRID, LINE, BUNDLE, OPTIONS
Key description table:
Key Type
Unit: ( ) Parameter set Default: [ ]
Description
BRANCH sym.l - Branch numbers where the variables will be plotted.
BUNDLE sym. - Bundle name where LINE is located
COMPONENT sym.l. [ALL] Component names. With the MEG tracking module, available components are HC, H2O and MEG. With DRILLING=ON in OPTIONS, available components are HC, H2O, DENMIN, DENMAX, VISMIN, VISMAX and CUTTING. For the compositional model the names of the available components are given in the feed file.
DELETEPREVIOUS sym. ON | [OFF] All trend variables defined before this keyword will be deleted from the list of trend variables, also those read from the restart file.
DTPLOT r.l. (s) - Sample period for obtaining variable values. DTPLOT should only be given once in the input file. If it is given more than once, OLGA will only use the last one.
LAYER i.l. [ALL] Wall layer no's for plotting of wall temperatures. Layer no 1 is the innermost.
Key Type
Unit: ( ) Parameter set Default: [ ]
Description
LINE sym.l. - Bundle line name.
NPLOT i.l. - Number data points for plotting. A list of values for NPLOT refers to the time points given in TIME. The sample period is calculated as ∆TIME / NPLOT.
PIPE sym.l. - Pipe numbers where the variables will be plotted.
POSITION sym.l. - Positions where the variables will be plotted out. If this is defined for variables, BRANCH, PIPE, and SECTION should not be used for the same variables.
NB! The key POSITION is also used for referencing process equipment with label names. For the variables that are related to a processor equipment, such as CHOKE, CHECK VALVE, VALVE, COMPRESSOR, CONTROLLER, HEAT EXCHANGE, LEAK, PIG/PLUG, SEPARATOR SPOURCE, PUMP and WELL, the
LABEL of the process equipment should be used instead of a defined POSITION (BRANCH=xx, PIPE=xx, SECTION=xx) in the POSITION key.
SECTION i.l. - Section or section boundary numbers where the variables will be plotted.
SLUG i.l. - ID numbers of slugs which will be plotted.
TIME r.l. (s) - Time point when the plot interval is changed.
VARIABLE sym.l. - List of variables to be plotted. Units may be included in the list.
SOILCOLUMN i.l. - Column of soil cells that TSOIL is printed for. Must be specified together with SOILROW.
SOILROW i.l. - ROW of soil cell that is printed for. Must be specified together with SOILCOLUMN.
Required keys: DTPLOT or NPLOT Internal dependencies of keys:
It is recommended to define DPLOT or NPLOT in a separate TREND statement above the TREND statements with variable specifications. If DELETEPREVIOUS is used, it should also be specified in a separate TREND keyword.
If global variables are specified, then
VARIABLE = (HT, NINTGR, VOLGBL) else
if branch variables are specified, then
BRANCH = 1
VARIABLE = (LIQC, MASSIN, MASOUT) end if
else if it is a volume variable, boundary variable or a slug variable in a specified position, then
!same keyword as volume and boundary
or !variables.
VARIABLE = ALEXP
if VARIABLE = TW then see example end
else VARIABLE = TSOIL, then either else if it is a bundle variable
LINE = (CAR-LINE, RET-LINE)
PIPE = 1
SECTION = 1
VARIABLE = (TBUN, UVALUE)
else if it is a process equipment variable (see sec. 3 of Appendix A for list of process equipment variables)
POSITION = VALVE-1 !The position used is the label of the process
!equipment VARIABLE = (PVALVE, TVALVE, GVALVE) else if it is a slug variable for a specific unique slug, then
SLUG = 100 !The slug number used is the ID of the
!slug VARIABLE = (ALFSB, ULFSB) else if it is a compositional variable, then
either if COMPOSITIONAL=ON in OPTIONS
COMPONENT = (C1, C2, MeOH) !Defined in feed file else if COMPOSITIONAL=MEG in OPTIONS
COMPONENT = (HC, H2O, MEG) else if DRILLING=ON in OPTIONS
COMPONENT = (HC, H2O, DENMIN, VISMIN) end if
end if
If DTPLOT needs to be changed, then
TIME = (0, 100) either
DTPLOT = (0.1, 1) or
NPLOT = (1000, 500) end
end if Examples:
Example 1:
!***************************************************************************
! TREND Definition
!---
!
TREND DTPLOT = 0.2E+02
TREND BRANCH = 1, PIPE = 2, SECTION = 2,\
VARIABLE = LSLEXP
TREND BRANCH = 1, PIPE = 13, SECTION = 15,\
VARIABLE = LSLEXP
TREND BRANCH = 1, VARIABLE = LIQC
TREND BRANCH = 1, PIPE = 14, SECTION = 1, VARIABLE = (HOL, TM,\
PT)
TREND BRANCH = 1, PIPE = 16, SECTION = 1, VARIABLE = PT
TREND BRANCH = 1, PIPE = 17, SECTION = 1, VARIABLE = (GT, GLT,\
GG)
TREND VARIABLE = (HT, NSLUG)
TREND BRANCH = 1, PIPE = 1, SECTION = 1,\
VARIABLE = (ALEXP, BEEXP)
TREND BRANCH = 1, PIPE = 1, SECTION = 1,\
VARIABLE = BEEXP
Example 2:
!***************************************************************************
! TREND Definition
!---
!
TREND TIME = (0, 10), DPLOT = (0.5, 1.0)
TREND SLUG = 1, VARIABLE = (ZTSL, UST, ZFSL, USF, UGTSB,\
ULTSB, ULTSL, ULFSL, ALTSB, ALFSB, LSL) TREND BRANCH = 1, PIPE = 2, SECTION = 4,\
VARIABLE = (LSLEXP, HOLEXP)
TREND BRANCH = 1, PIPE = 4, SECTION = 34, VARIABLE = (LSLEXP,\
HOLEXP)
TREND BRANCH = 1, PIPE = 4, SECTION = 6, VARIABLE = (BE, GA) TREND BRANCH = 1, PIPE = 1, SECTION = 2,\
VARIABLE = HOLEXP
TREND VARIABLE = (VOLGBL, RMERR, NINTGR)
3.1.2 General Rules
An input statement has the general form:
KEYWORD KEY = Parameter list, ...
Where the ellipses (...) indicate that the statement may contain more than one "KEY
= Parameter list" combinations. Such combinations are separated by commas.
The KEYWORD identifies the input statement (e.g. BRANCH, VALVE, etc.).
Each keyword has a set of variables, each identified by a KEY (e.g. SETPOINT).
The general rules for an input statement are as follows:
Line length:
Max. 132 characters.
Separators:
A KEYWORD is separated from the first KEY with a space.
KEYs are separated by commas.
Items are separated by commas (,).
Tabulation is treated as one single space.
Line continuation:
An input statement can be written on several lines by ending each line with the continuation character:
/ (backslash) Comments:
Comments are indicated with the comments mark:
! (exclamation mark)
Any information on a line after a comment mark is ignored.
The comment mark can be put anywhere on the line.
String protector:
A string that contains spaces or commas should be protected with double quotes:
" (double quote)
List protector:
Any list should be put inside a parenthesis:
( ... )
Ranges (integers only):
An integer range will be interpreted as the list of all the integers between the two limits of the range connected by the - (dash).
5 - 8 is interpreted as: 5, 6, 7, 8 Repetition:
A number of identical items (real) can be given in a compressed way by the use of the repetition character : (colon).
5:10.2 is interpreted as: 10.2, 10.2, 10.2, 10.2, 10.2 Repeated items can be used in a list together with single items (separated by commas)
Interpolation:
If some variable must be given for a number of sections, the interpolation feature can be used to condense the information given.
The user has the choice of 3 options:
1: Give all the data explicitly (also with repetition sign :) 2: Give one value only: The variable is assumed constant.
3: Give two values: The code interpolates assuming the values as the first and last section values. Uneven section lengths are accounted for.
3.1.3 Parameter Types
The KEY information is given following the syntax of one of 8 parameter types.
1. String: Ex: "PT-CONTR-1"
One or more characters beginning with a letter.
Defines a label (symbol) for later reference.
2. String list: Ex: ("CHOKE-1", "CHOKE-2") List of strings.
3. Symbol: Ex. "PT-CONTR-1"
Ex: "ON"
1-60 characters beginning with a letter. Used to reference something that has a label or to select predefined option names.
4. Symbol List: Ex: ("PT-CONTR-1","GT-CONTR") List of symbols.
NB: Any reference to a non-defined symbol is an error. A user defined object must be defined and labelled before it is referenced.
Exception: The GEOMETRY statement can be defined after the BRANCH statement which references it.
The WALL statement can be defined after the PIPE statement which references it.
5. Integer: Ex: 243556
Obeys the rules for FORTRAN integers.
Normally only used for numbering of branches, pipes. The number can be used for referring branches or pipes instead of the labels.
6. Integer list: Ex: (2, 4, 1500) List of integers.
Ranges are also valid e.g. 3-5 is interpreted as 3,4,5.
7. Real: Ex: -13.456
Obeys the rules for FORTRAN real numbers
Unit can be given after the number separated by spaces:
Ex: 42.35 bara.
8. Real list: Ex. (11.5, -23.7, 12.54E3) List of real numbers.
Unit can be specified after the parenthesis. The unit is used for all the elements in the list.