井组 *GROUP
目的:
*GROUP用于定义集输中心、井组和平台。通过该关键字输入的信息可以建立一个树状分组结构。
格式:
*GROUP ‘child_1’ … ‘child_n’ *ATTACHTO ‘parent’
定义:
‘child_1’, ‘child_2’ .. , ‘child_n’
隶属于“父”井组的子井组名。每个井组都有一个名称,这个名称要括在单引号中,最多可以用16个字符,并且具有唯一性。*ATTACHTO关键字不是可选的,必须出现。
*ATTACHTO
定义*GROUP后面列出的所有井组的父井组。
‘parent’
父井组的名称。
缺省:
该关键字是可选关键字。如果数据中没有出现*GROUP行,那么模拟中就没有井组,井的日产量和累产量数据直接归入油田累积值中。在输出中报告为FIELD的累产量,但是实际上模型中并没有名为’FIELD’的井组存在,也不能对生产或注入进行井组控制。
数据中输入了*GROUP行后,井组结构就建立起来了,包括至少2个井组:1个顶级井组和’Default-Group’。
顶级井组没有缺省名;其标志是出现在父井组列表中并且没有出现在子井组列表中的独一无二的井组。如果没有或多于1个这样的井组,会产生错误,模拟停止。
井只能隶属于井组,而不是field(顶级)井组。任何没有明确指定所隶属的父井组的井都自动归属于一个内部生成的井组,其名称为’Default-Group’,其父井组为顶级井组。
例如,如果数据中没有涉及井组分级,将缺省存在下面的概念结构(不是真实的井组结构)。
上面FIELD两边的引号故意隐去,是要强调改案例中实际上没有名为 ‘FIELD’的井组存在。该例中不能进行井组控制。
如果单独一行*GROUP ‘Default-Group’ *ATTACHTO ‘Field’
添加到数据中,那么建立下面的井组结构:
这样井组控制就可以作用到’Field’上。
条件:
该关键字必须位于井和动态数据(Well and Recurrent Data )关键字段。
当模拟器遇到 *GROUP 关键字,就继续寻找下一个*GROUP关键字,直到有其他关键字出现。
如果在某个日期新增了一个子井组,那么之前的井组控制(*GCONM,*GCONP或*GCONI 关键字输入的数据)必须重新定义才能生效。
说明:
该关键字通过名称识别井组,并将其指定到一个父井组。在井组分级中对井组的层级数没有限制:
- 顶级。该级别只允许有一个井组;没有缺省名称,可以由用户指定不超出40个字符长度的任意名称。该井组代表整个油田,不能直接包含井。
该井组的名称位于*GROUP 行中*ATTACHTO的后面。顶级井组的名称能够出现在*GROUP行中*ATTACHTO的后面,但不能紧跟在*GROUP后面,其他级别的井组名称都可以跟在*GROUP后面。
- 2级。这些井组的父井组是顶级井组。在一个井组结构中,至少有一个2级井组,名称为’Default-Group’。’Default-Group’ 包含所有没明确归属到某一父井组的任意井。2级井组可以包含单井或井组,但是不能是单井和井组的组合。也就是说,如果一个2级井组的名称位于*WELL行的*ATTACHTO子关键字之后,那么该井组就不能位于任何*GROUP行的*ATTACHTO子关键字之后,反过来也是如此。
- n级。这些井组的父井组是 n-1 级井组。n 级井组可以包含单井,也可以包含井组,但是不能是单井和井组的组合。
有效和无效的井组树如下所示。
有效井组分级的例子:
上面的例子通过下面的关键字实现:
*GROUP ‘GNAME-1’ ‘GNAME-2’ ‘GNAME-3’ *ATTACHTO ‘FIELD’
*GROUP ‘GNAME-4’ ‘GNAME-5’ *ATTACHTO ‘GNAME-1’
*GROUP ‘GNAME-6’ ‘GNAME-7’ *ATTACHTO ‘GNAME-2’
*WELL ‘W-1’ *ATTACHTO ‘GNAME-3’
*WELL ‘W-2’ *ATTACHTO ‘GNAME-3’
*WELL ‘W-3’ *ATTACHTO ‘GNAME-3’
*WELL ‘W4’ *ATTACHTO ‘GNAME-4’
*WELL ‘W5’ *ATTACHTO ‘GNAME-4’
*WELL ‘W6’ *ATTACHTO ‘GNAME-5’
*WELL ‘W7’ *ATTACHTO ‘GNAME-5’
*WELL ‘W8’ *ATTACHTO ‘GNAME-6’
*WELL ‘W9’ *ATTACHTO ‘GNAME-6’
*WELL ‘W10’ *ATTACHTO ‘GNAME-7’
*WELL ‘W11’ *ATTACHTO ‘GNAME-7’
无效井组分级的例子: