Eclipse入门指南

Eclipse入门指南
Eclipse入门指南

主题打印版本

点击此处用原始格式查看主题

精准石油论坛_ 数值模拟软件应用_ 油藏数值模拟入门指南

作者: gulfmoon79 2007-05-14, 23:59 pm

记得上大学最早学围棋时总感觉无从入手,看身边的朋友下棋时学着聂卫平从容入定,潇洒自如的样子,很是羡慕。后来从书店买来围棋入门指南,夜深人静时照着指南慢慢学如何吃子,如何做眼,什么是打劫,怎么样布局。掌握了一点基本知识以后开始找水平最差的下,输了一定不能弃擂,脸皮要厚,缠着对方接着下。赢了水平最差的人后去找中等水平的人下。这样经过一年半载,再看以前那些学着聂卫平从容入定,潇洒自如下棋的同学,心想他们原来不过如此,赶老聂差十万八千里哪。在这里也有许多人把我叫大师,专家,如果哪一天你觉得其实我的水平也很一般,那你就到了专业段位了。

市场上有不少关于油藏数值模拟的书,但好像没有类似围棋入门指南那样从基础开始一步一步介绍的书。我收到不下二十个问油藏数值模拟如何入门的问题。我尝试写一写油藏数值模拟入门指南,希望对那些刚刚开始进入油藏数值模拟领域的工作者有所帮助。

第一:从掌握一套商业软件入手。

我给所有预从事油藏数值模拟领域工作的人员第一个建议是先从学一套商业数值模拟软件开始。起点越高越好,也就是说软件功能越强越庞大越好。现在在市场上流通的ECLIPSE,VIP 和CMG都可以。如果先学小软件容易走弯路。有时候掌握一套小软件后再学商业软件会有心里障碍。

对于软件的学习,当然如果能参加软件培训最好。如果没有机会参加培训,这时候你就需要从软件安装时附带的练习做起。油藏数值模拟软件通常分为主模型,数模前处理和数模后处理。主模型是数模的模拟器,即计算部分。这部分是最重要的部分也是最难掌握的部分。它可以细分为黑油模拟器,组分模拟气,热采模拟器,流线法模拟器等。数模前处理是一些为主模拟器做数据准备的模块。比如准备油田的构造模型,属性模型,流体的PVT参数,岩石的相渗曲线和毛管压力参数,油田的生产数据等。数模后处理是显示模拟计算结果以及进行结果分析。

以ECLIPSE软件为例,ECLIPSE100,ECLIPSE300和FrontSim是主模拟器。ECLISPE100是对黑油模型进行计算,ECLISPE300是对组分模型和热采模拟进行计算,FrontSim是流线法模拟器。前处理模块有Flogrid,PVTi,SCAL,Schedule,VFPi等。Flogrid用于为数值模拟建立模拟模型,包括油田构造模型和属性模型;PVTi用于为模拟准备流体的PVT参数,对于黑油模型,主要是流体的属性随地层压力的变化关系表,对于组分模型是状态方程;SCAL为模型准备岩石的相渗曲线和毛管压力输入参数;Schedule处理油田的生产数据,输出ECLIPSE 需要的数据格式(关键字);VFPi是生成井的垂直管流曲线表,用于模拟井筒管流。ECLIPSE OFFICE和FLOVIZ是后处理模块,进行计算曲线和三维场数据显示和分析,ECLIPSE OFFICE同时也是ECLIPSE的集成平台。

对于初学者,不但要学主模型,也需要学前后处理。对于ECLISPE的初学者,应该先从ECLISPE OFFICE学起,把ECLISPE OFFICE的安装练习做完。然后再去学Flogrid,Schedule 和SCAL。PVTi主要用于组分模型,做黑油模型可以不用。

第二:做油藏数值模拟都需要准备什么参数

在照着软件提供的安装例子做练习时经常遇到的问题是:虽然一步一步按照手册的说明做,但做的时候不明白每一步在做什么,为什么要这么做。这时候的重点在于你要知道你一开始做的工作都是为数值模拟计算提供满足软件格式要求的基础参数。有了这些基础参数你才能

开始进行模拟计算。这些基础参数包括以下几个部分:

1。模拟工作的基本信息:设定是进行黑油模拟,还是热采或组分模拟;模拟采用的单位制(米制或英制);模拟模型大小(你的模型在X,Y,Z三方向的网格数);模拟模型网格类型(角点网格,矩形网格,径向网格或非结构性网格);模拟油藏的流体信息(是油,气,水三相还是油水或气水两相,还可以是油或气或水单相,有没有溶解气和挥发油等);模拟油田投入开发的时间;模拟有没有应用到一些特殊功能(局部网格加密,三次采油,端点标定,多段井等);模拟计算的解法(全隐式,隐压显饱或自适应)。

2。油藏模型:模型在X,Y,Z三方向的网格尺寸大小,每个网格的顶面深度,厚度,孔隙度,渗透率,净厚度(或净毛比)。网格是死网格还是活网格。断层走向和断层传导率。

3。流体PVT属性:油,气,水的地面密度或重度;油,气的地层体积系数,粘度随压力变化表;溶解油气比随压力的变化表;水的粘度,体积系数,压缩系数;岩石压缩系数。如果是组分模型,需要提供状态方程。

4。岩石属性:相对渗透率曲线和毛管压力曲线。如果是油,气,水三相,需要提供油水,油气相对渗透率曲线和毛管压力曲线(软件会自动计算三相流动时的相对渗透率曲线);如果是油,水两相或气,水两相,只需要提供油水或气水两相相对渗透率曲线和毛管压力曲线。5。油藏分区参数:如果所模拟的油田横向或纵向流体属性,岩性变化比较大,或者存在不同的油水界面,这时需要对模型进行PVT分区(不同区域用不同的PVT流体参数表),岩石分区(不同区域用不同的相对渗透率曲线和毛管压力曲线)或者平衡分区(不同平衡区用不同的油水界面)。另外如果想掌握油藏不同断块的储量或采收率,可以对模型进行储量分区(不同储量区可以输出不同的储量,产量,采收率,剩余储量等)。

6。初始化计算参数:油藏模型初始化即计算油藏模型初始饱和度,压力和油气比的分布,从而得到油藏模型的初始储量。这部分需要输入模型参考深度,参考深度处对应的初始压力,油水界面以及气水界面;油气比或饱和压力随深度的变化;如果是组分模型,需要输入组分随深度的变化。

7。输出控制参数:即要求软件在计算时输出哪些结果参数。比如要求输出模型计算油田的油,气,水产量变化曲线;油田压力变化曲线;单井油,气,水产量变化曲线;单井井底压力变化曲线;单井含水,油气比变化曲线等。

8。生产参数:对于已开发油田,这部分的数据量非常大。包括油田每口井的井位,井轨迹,井的射孔位置,井的生产或注入历史(油,气,水产量,注入量,井底压力,井口压力等),井的作业历史等。

第三:如何准备各部分参数

上面介绍了做油藏数值模拟所需要的参数,那么这些参数是如何得来的?又应该如何输入到数模模型中哪?下面具体介绍各部分数据的来源即处理办法。

1。油藏模型:

大多数油公司现在都在采用一体化工作流程,数模工程师不再需要自己去建立油藏模型。地质学家对油田进行详细的油藏描述工作,基于地震解释数据,测井解释数据,岩芯数据以及结合地质家对油田的认识建立三维地质模型。根据数模工程师的要求,地质家对三维地质模型进行粗化处理,可以直接为数模工程师输出符合数模工程师需要的油藏模拟模型。

如果你不幸工作在一个没有很好地采用一体化工作流程的油公司或学校,那你就需要自己建立油藏模拟模型了。这时你需要用到数模软件的前处理建模模块(比如Flogrid).如果你从地质家处拿到的是三维地质模型,你的工作量还不是很大,主要是采用前处理建模模块对地质模型进行粗化,生成数值模拟模型。如果你拿到的是两维数据体,那你的工作量就要大的多。首先你要确定你必须要得到以下几方面的两维数据体:

* 每层的顶面深度

* 每层的厚度

* 每层的孔隙度分布

* 每层的渗透率分布

* 每层的净厚度或净毛比分布

* 断层数据

有了这些数据体,你就可以在前处理建模模块中建立三维数值模拟模型。

还有更不幸的情况,你有可能工作在软硬件环境都很落后的油田(比如国内的四川油田),你根本连两维数据体也拿不到,你能拿到的只是一张一张的等值线图,或者只是单井井点数据,这时候你首先需要做的是将这些等值线图件用数值化仪数值化为两位数据体,或者根据井点数据生成等值线,然后再建三维模型。

你在开始建三维数模模型时首先需要确定你的模型应该采用什么样的网格类型。目前数值模拟软件常用的网格有正交网格,角点网格,径向网格,非结构化网格(比如PEBI)和动态网格等。你需要知道这些网格的不同之处及其优缺点:

A: 正交网格

正交网格是最常见网格,也是最早用来描述油藏的网格类型,目前仍然被广泛应用.由于其计算速度快的特点,一些大型油气田经常采用此网格类型.有研究认为正交网格计算结果比其他网格精确.

正交网格的数学描述也比较简单。以ECLISPE为例,TOPS描述油藏顶部深度,DZ描述油藏每层厚度,DX描述每个网格X方向长度,DY描述每个网格Y方向长度。

B: 角点网格

角点网格的特点是网格的走向可以延着断层线,边界线或尖灭线,也就是说网格可以是扭曲的。这样角点网格克服了正交网格的不灵活性,可以用来方便地模拟断层,边界,尖灭.但由于角点网格网格之间不正交,这种不正交一方面给传导率计算带来难度,增加模拟计算时间,另一方面也会对结果的精度有影响.

角点网格的数学模型很复杂,必须由前处理软件来生成。以ECLISPE为例,COORD用来描述模型网格的顶底坐标线(X,Y,Z),ZCORN描述每个网格八个角点的深度。

C: 径向网格

径向网格比较简单,主要用于单井模拟。径向网格可以更合理的描述井附近流体的径向流动。

D: 非结构网格(PEBI网格)

PEBI网格源于1908年就产生的V oronoi网格.起主要特点是灵活而且正交.PEBI网格体系提供了方便的方法来建立混合网格,比如模型整体采用正交网格,而对断层,井,边界等采用径向,六边型或其他网格.网格间的传达率可以自动计算.PEBI网格的灵活性对模拟直井或水平井的锥进问题非常有用.另外PEBI网格可以用来精确模拟试井问题.还有PEBI网格降低了网格走向对结果的影响.PEBI网格的缺点是矩阵比其他网格要复杂的多,需要更加有效的解法.

E: 动态网格

动态网格是指网格可以随时间而改变.通常用于动态网格加密或动态粗化.比如说在井生产时采用局部加密而当井关闭时则采用正常网格.

有时候建立全油田整体模型后,对于压力及饱和度变化快的区域,常常需要进行局部网格加密.采用局部加密可以准确的描述井附近流体的细微变化。网格局部网格可以是正交网格,或是径向网格.Aziz认为(JPT 1993年)在正交网格中进行正交网格局部加密,有时并不会对结果有改善.他建议采用混合网格,及在正交网格内采用径向网格加密,这样可以精确地模拟含水和气油比的变化规律.

知道了这几种网格类型,那么在你建立模型时应该选择什么网格类型哪?你在建立网格时又应该注意些什么哪?

A: 在条件许可情况下尽量采用正交网格,而且尽量使网格保持均匀.尽量避免大网格直接连接小网格,这样会带来严重的收敛问题.

如果你的模型很大,最好采用正交网格。

B: 角点网格已经非常成熟,但在建立角点网格时不要过分扭曲网格,要尽量保持模型的正交性。如果你的边界与你的主断层相对平行,那么建立的网格系统正交性会比较好。你在建立网格后可以用前处理软件计算模型正交性。

C: 目前PEBI网格在解法上还不成熟,应避免使用.但相信在五年内它会成为主导网格.

D: 使用局部网格加密要小心,最小的网格不能小于井半径.而且局部网格加密部分要覆盖饱和度变化大的网格.如果是水平井,局部网格加密要覆盖水平段。

E: 网格越多模拟结果就越精确的概念是不对的.可以建立单井模型研究多大网格尺寸足够描述地质上的非均质性.

F: 网格走向会影响计算结果. 在天然裂缝油气藏,要使网格走向与主裂缝方向一直.

G:DX/DY 应接近于1,不要大于3。

H: 井之间应有不少于三个网格。

I: 模型的属性分布也很重要。尤其是数模人员自己插值,属性分布经常不合理。我见过许多模型,井只是穿过单个的网格,井穿过网格的附近却全是死网格,这时模型计算根本不能收敛。数模人员如果需要自己建模,最好要找地质人员参谋,或者自己有很好的地质背景。

初学者还有几个基本概念需要掌握:

A:网格的I,J,K

在做模拟时你需要知道每个网格的位置。模型每个网格的位置用网格的I,J,K表示。在ECLISPE软件中,左上角的第一个网格为(1,1,1),在X方向的第二个网格为(2,1,1),在Y方向的第二个网格为(1,2,1),在Z方向的第二个网格为(1,1,2)。其他类推。B:死网格

死网格是模型中不参予流动计算的网格。通常把模型中的泥岩设为死网格。模型自动会把孔隙度和净厚度为0的网格设为死网格。如果你的油藏水体很大,你也不需要把水体都建在模型中。你可以把水体部分设为死网格,然后用解析水体模拟油藏水体的贡献。

C: 在数值模拟模型中如何正确应用有效孔隙度,净毛比?

要明确区分定义.

总孔隙度:孔隙体积占总体积的百分数。

有效孔隙度:连通孔隙体积占总体积的百分数。

毛有效孔隙度:平均有效孔隙度。(泥质含量截至值)

净有效孔隙度:产层平均有效孔隙度(渗透率截至值)

净毛比:净厚度(渗透率截至值)与总厚度之比。

数值模拟模型中要用净有效孔隙度和净毛比,这样模型的体积计算是正确的.

2。流体参数

作者: nuluerhu 2007-05-15, 15:03 pm

非常好,多谢。

作者: solar-h 2007-05-15, 15:22 pm

非常感谢月光老师!感谢你给我们数模工作者在技术上的支持!!!

作者: changjiangzhou 2007-05-15, 17:39 pm

月光老师真是太伟大了!

感谢您的无私奉献!

作者: ysj123man 2007-05-15, 22:41 pm

非常感谢月光老师的无私奉献,期待您的下一篇文章早日降临啊

作者: @mpieclipse 2007-05-17, 14:44 pm

又见月光姐扛鼎大作!

不顶还算是男人吗?!

ps:我给你发了邮件,不知道收到没有?

作者: upcnbl 2007-05-18, 13:19 pm

非常感谢大姐!!!小弟现在正好需要这部分的资料!实在是太感谢了!!!

作者: gulfmoon79 2007-05-21, 5:20 am

2。流体PVT参数

我们前面讲过,数值模拟模型包括黑油模型,组分模型和热采模型。对不同的模型类型需要用不同的模拟器。这些模型类型的区别主要就是在流体的PVT描述方面采用的方法不同。

对黑油模型,流体的PVT属性描述方法是你直接给模型提供油,气,水PVT属性表(油气体积系数,粘度,压缩系数随压力的变化;溶解油气比随压力的变化;水在参考压力下的体积系数,压缩系数,粘度;岩石在参考压力下的压缩系数)。模型在计算过程中对每一个网格,根据当前时间步的网格压力来查你提供的表得到每个网格当前的PVT属性。

组分模型要复杂的多。你不是提供PVT表,而是提供状态方程(EOS)参数(每个组分的临界温度,临界压力,临界Z因子,分子量,偏心因子等),模型通过闪蒸计算来得到每个网格当前的油气PVT属性(粘度,体积系数,压缩系数,溶解油气比)。另外水和岩石的属性还需要单独提供。

黑油模型和组分模型都假定油藏的温度在开采过程中是常数,不随时间变化。如果油藏温度发生了变化,就需要用热采模型。对热采模型,最重要的流体属性变化是流体粘度随温度的变化,即大家常说的粘温曲线。

那么你的模型应该采用哪种模型类型?这一方面取决于你拿到的PVT实验报告,如果你的油藏是凝析气藏,挥发油藏,即你的油藏流体组分在生产过程中会发生明显变化,那你应该用组分模型。另外如果你的油藏将来会考虑注气混相驱,那你也应该用组分模型。

重油热采用热采模型,其他大多数油气藏都可以用黑油模型。本部分只介绍黑油模型的PVT 属性,对组分和热采模型,希望以后有机会再介绍。

对于黑油模型,在PVT部分需要提供的参数包括:

.油,气,水的地面密度或重度。

.油的体积系数,粘度,溶解油气比随压力的变化。

.气的体积系数,粘度随压力的变化。

.参考压力下水的粘度,压缩系数,体积系数。

.参考压力下岩石的压缩系数。

如果你的油藏在不同部位流体属性不同,那你需要提供多个PVT表,每个表对应于模型的某一部分。在后面的分区部分我还要做详细介绍。

对于黑油模型,根据不同的流体属性,可以分为以下四种类型:

.死油油藏:油藏在整个开发阶段压力一直保持在泡点压力以上,在油藏中不会发生脱气。生产油气比是常数(脱气发生在井筒或地面)。

.活油油藏:油藏在开发阶段压力会降到泡点压力以下,在油藏中发生脱气,溶解油气比降低,生产油气比增加(自由气会生产出来)。

.干气藏:气藏压力在生产过程中不会穿过露点线,气藏中没有挥发油产生。

.湿气藏:气藏压力在生产过程中会穿过露点线,气藏中产生挥发油。

对不同的黑油流体,PVT描述方法也不同,比如对死油油藏,溶解油气比(RS)是常数,不随压力变化而变化。而对活油油藏,RS随压力降低而降低(泡点压力以下)。

在我平时回答大家的问题时我发现许对人下面油的PVT定义不理解或理解的不对:

溶解油气比泡点压力体积系数粘度

0.275 400 1.13 1.17 /

0.938 2000 1.162 1.11 /

1.5 3600 1.243 0.95

4000 1.238 0.95

4400 1.233 0.95

4800 1.228 0.95

5200 1.223 0.95

5600 1.218 0.95 /

1.72 4400 1.254 0.94

4800 1.266 0.92

5200 1.26 0.92

5600 1.25 0.92 /

许多人问这个表里面为什么有这么多泡点压力,究竟那个是油藏的泡点压力?油藏应该只有一个泡点压力,怎么会这么多?为什么有多条未饱和压力曲线?

其实这比较好理解,油藏开发过程类似于实验室的差异分离实验,你把这个表用差异分离实验来理解。在开发过程中,当压力低于泡点压力后,有溶解气释放出来,RS降低,油藏由未饱和状态进入饱和状态。这时在饱和状态下油气分离(相当于差异分离实验中将气派出),此时的油应该理解为与原始的油已经不同,如果此时发生压力增加,由于没有气可以溶进去(油气已经分离),油会进入此时(RS)下的未饱和状态。以上表为例,如果油藏的泡点压力为4400,对应的RS为1.72. 当压力由5600下降到4400过程中,油藏在未饱和状态,没有气的析出,RS不变。当压力低于4400以后,有气体析出,RS降低,假设当RS降到1.5时压力增加,由于此时油气已经分离,没有气能够溶解到油中,在RS=1.5出的油的泡点压力为3600,PVT变化会沿着RS=1.5的曲线变化。

那么在这个表中究竟那个是我们通常意义上的泡点压力?是不是最后一个?答案是不是。ECLIPSE软件泡点压力在初始化部分用RSVD或RBVD定义。(各个软件不同)。

另外在提供上面这个表时注意压力和溶解油气比要覆盖整个油藏压力和溶解油气比的变化过程,即不要让软件来进行外插,否则模型计算会不收敛。

另外一个重要的问题是在你为模型提供PVT参数时,应该如何用实验室的报告。你不能直接用实验室的差异分离实验数据,你应该对差异分离实验体积系数数据进行分离器校正。校正方程为:

Bo=Bod*(Bofb/Bodb)

Bo: 模型体积系数

Bod: 差异分离实验的体积系数

Bofb: 分离器实验的体积系数

Bodb: 差异分离实验泡点压力下的体积系数

溶解油气比校正方程:

Rs=Rsfb-(Rsdb-Rsd)Bofb/Bodb

Rsfb: 分离器溶解油气比

Rsdb: 差异分离实验泡点压力下的溶解油气比

Rsd: 差异分离实验溶解油气比

作者: slb 2007-05-21, 8:49 am

很不错啊。多谢。

作者: cced 2007-05-21, 12:12 pm

great job.

作者: ybli1979 2007-05-23, 11:04 am

非常感谢您的无私奉献!

作者: 馒头2007-05-23, 14:19 pm

叫姐姐把你叫老了.嘿嘿。我还是叫你月光妹妹好了,嘿嘿开个玩笑。接着给我们上课吧,急切盼望中.............

作者: gulfmoon79 2007-05-26, 1:52 am

3。相渗和毛管压力曲线

这部分你需要提供油水,油气相对渗透率和毛管压力曲线。

实验室有时为你提供的是压汞曲线,你需要用界面张力计算出油水,油气相对渗透率和毛管压力曲线。比如毛管压力转换方程为:

(Pc)res=(Qres/Qlab)×(Pc)lab

(Pc)res: 油藏条件下的毛管压力。

Qres: 油藏流体的界面张力。

Qlab: 试验室流体界面张力。

(Pc)lab: 试验室毛管压力。

通常你提供的都是两相的相对渗透率曲线。油水相对渗透率曲线是油水两相流动时的相对渗透率,油气相对渗透率是油气两相在束缚水条件下的相对渗透率。实验室一般不测量油,气,水三相流动时的相对渗透率曲线,你的模型中如果存在三相流动,软件会根据你定义的STONE1或STONE2方法计算三相流动时的相对渗透率。

你提供的油水,油气相对渗透率和毛管压力曲线在模型中起两方面作用。首先模型应用你提供的油水,油气相对渗透率和毛管压力曲线进行初始化,计算模型初始的油,水,气饱和度和压力分布。我将在模型初始化部分详细介绍。另一方面是应用于流动计算。

在你提供的油水,油气两相相对渗透率曲线时要保证两条曲线的端点值要匹配。在你提供的曲线中有八个端点值,他们是:

束缚水饱和度:最小含水饱和度

临界含水饱和度:水开始流动是的含水饱和度

最大含水饱和度:曲线中含水饱和度的最大值

束缚气饱和度:最小含气饱和度

临界含气饱和度:水开始流动是的含气饱和度

最大含气饱和度:曲线中含气饱和度的最大值

油水两相残余油饱和度:油水两相曲线中的含油饱和度最小值

油气两相残余油饱和度:油气两相曲线中的含油饱和度最小值

在你提供的表中,要满足以下端点值一致性:

束缚水饱和度处对应的水相相对渗透率为0

最大含水饱和度对应的油相相对渗透率为0

束缚气饱和度处对应的气相相对渗透率为0

最大含气饱和度对应的油相相对渗透率为0

束缚水饱和度和束缚气饱和度对应的油相相对渗透率相等

最大含气饱和度应该等于1-束缚水饱和度

束缚气饱和度通常为0

模型中应用的通常是驱替毛管压力和相对渗透率曲线,模型初始化肯定需要用驱替曲线。如果你还想用自吸曲线,你可以用软件的溶湿滞后功能。

如果你有毛管压力的J函数曲线,在模型中你也可以用J函数,这样你的毛管压力大小与你模型的地质属性分布(孔隙度,渗透率)有关。

当然如果你的模型不同区域岩性不同,你可以在不同岩性区赋不同的相对渗透率和毛管压力曲线。这部分在分区部分我会详细介绍。

作者: ysj123man 2007-05-27, 9:33 am

现在每天的最大爱好就是来这欣赏月光姐姐的大作啊,享受啊,呵呵

作者: babuzhong 2007-05-28, 20:09 pm

支持月光姐姐!非常感谢!

作者: virginnew 2007-05-30, 16:24 pm

精华中的精华贴,期待继续!

作者: zxwen 2007-05-30, 17:27 pm

这些耗费了不少的经历,你把智慧奉献给了大家,很感动!

作者: lvjianrong1 2007-05-31, 9:25 am

月光姐姐的无私很让人感动,感谢姐姐一年来的热情指导。

作者: gulfmoon79 2007-06-03, 19:36 pm

4。分区设置

前面我们说了,你的油藏不同部位可能有不同的流体属性,比如不同断块的油密度,粘度不同,或你的油藏岩性在纵向或垂向有变化,那你就需要在你的模型中设置流体或岩性分区。通常你可以在你的模型中根据需要设置以下几种分区:

储量分区:如果你想输出模型不同部位的储量,你需要设置储量分区

流体分区:如果你的模型不同部位流体PVT属性不同,你需要设置流体分区

岩性分区:如果你的模型不同部位岩性不同,需要用不同的相渗曲线和毛管压力曲线,你需要设置岩性分区。

平衡区分区:如果你的模型有不同的油水或油气界面,你需要设平衡区分区。

那么软件如何将你的模型分区与你的属性数据关联起来哪?我们假设你的模型有东西两个断块,两断块被封闭断层分割。东断块的油比西断块的油密度重,在你提供油藏流体PVT 表时你需要提供两个表,一个是密度重的PVT表,另一个是密度轻的PVT表。在你的分区部分将东断块的流体分区值设为1,将西断块流体分区值设为2。软件在计算东断块的流体流动时将自动用第一个PVT表(密度重的PVT表),在计算西断块流体流动时用第二个PVT 表(密度轻的PVT表)。

5。模型初始化

模型初始化就是建立在初始状态(油田还未投入开发)下油田压力和饱和度的分布,原始溶解油气比分布,以及初始泡点压力或露点压力分布。这部分你需要提供的参数包括:

参考点的深度

在此参考点对应的压力

油水界面

油气界面

油水界面和油气界面处的毛管压力

饱和压力(泡点压力或露点压力)随深度变化或溶解油气比随深度变化

参考点深度和对应压力你可以由RFT,DST,MDT测试结果得到。油气界面和油水界面通常由地质人员提供,数据来源于测井分析。油水界面和油气界面处的毛管压力是指你提供的界面是自由水面还是油水界面,如果是自由水面,界面处毛管压力为0。如果你的油藏有多个油水或油气界面,或多个压力系统,则需要进行平衡区分区。饱和压力(泡点压力或露点压力)随深度变化或溶解油气比随深度变化由流体实验得到。

软件初始化计算的步骤是这样的:

(1)计算过渡带高度。由油水界面和油气界面深度以及相渗曲线提供的最大毛管压力计算。(2)计算每一个网格初始的油相,水相,气相压力分布。首先将在流体属性部分提供的油,气,水地面密度折算为地下密度。基于参考点的深度和对应压力以及油水界面,油气界面深度,过渡带高度,结合油,气,水地下密度计算其他深度处的油,气,水相压力。

(3) 由每个网格的油,气,水压力计算油水和油气毛管压力

(4) 计算饱和度分布。这部分计算主要用你提供的相渗曲线端点值。将油水界面以下的含水饱和度设为你在油水相渗曲线中提供的最大含水饱和度,通常为1。将油气界面以上的含气饱和度设为你提供的油气相渗曲线的最大值。油气界面以上的含水饱和度为束缚水饱和度。在油区的含油饱和度为1减束缚水饱和度。在过渡带的含油和含水饱和度由你提供的毛管压力曲线得到。

(5)计算初始溶解油气比或泡点压力的分布

初始化计算结束后你就应该已经可以得到你的油田储量了。你的油储量应该等于模型每个网格的孔隙体积乘以含油饱和度之和。如果你想与地质模型的储量进行拟合,你首先需要拟合孔隙体积(DX*DY*DZ*PORO*NTG),然后拟合含油饱和度的分布。

有的人喜欢直接把地质模型的含水饱和度分布赋予数模模型,这样当然可以,但你需要进行端点标定来保证模型初始的稳定性,(关于如何进行端点标定,我以后看会不会有时间专门写)要保证模型初始是稳定的,即在初始状态下流体不发生流动。检查模型是否初始平衡的办法很简单,让模型在没有任何井的情况下计算10年,检查在这十年中模型的压力和饱和度是否发生变化。

作者: summer929 2007-06-04, 16:17 pm

thank u so much

作者: swpiupc 2007-06-09, 19:39 pm

ggoooddd

作者: xiaojiang 2007-06-13, 10:32 am

very nice.

作者: littlekiki 2007-06-15, 1:51 am

检查模型是否初始平衡的办法很简单,让模型在没有任何井的情况下计算10年,检查在这十年中模型的压力和饱和度是否发生变化。

Do you mean no any change at all or in an acceptable range here? I appreciate it.

作者: gulfmoon79 2007-06-15, 21:55 pm

in an acceptable range

作者: littlekiki 2007-06-18, 23:55 pm

Thank you very much gulfmoon.

What is the range you consider as acceptable for pressure and saturation?

作者: daihewei 2007-06-22, 20:54 pm

实际操作一下,看看具体的变化,你就会知道可接受的变化范围。

比如说,有的时候,某一口井的压力会在很小的范围内上下波动(+、-0.005Bars。)大多数会保持一条直线。

作者: tortoisele 2007-06-30, 14:35 pm

谢谢,也想学学,不过好像很难的样子

作者: arthor_2003146 2007-06-30, 21:18 pm

谢谢

作者: gulfmoon79 2007-07-01, 22:12 pm

6.生产历史拟合

历史拟合的过程实际上是验证模型的过程。也就是说验证你上面建的模型能不能重现油田的生产过程。你需要对你的模型进行一系列的调整使其计算结果与你的实际生产数据(产量,压力,饱和度等)相符合。这个调整过程就是历史拟合。这就好比天气预报一样。假如你建立了一个大气流动模型来预测未来的天气情况,你需要先用你的大气模型算一算过去的天气变化,看能不能算的对,通过对模型进行怎么样的调整你才能先把过去的天气算对,然后你才有信心用此模型来预测未来天气。记住你做数模的目的也是为了预测未来。其实算命先生很懂得此道理。你去算命的化他或她先不会算你的未来,而是先告诉你过去你或你家人发生

过什么,如果他或她说的碰巧是对的,那你对他或她对你未来的预测也就会深信不疑。我相信我们的天气预报和数模对未来的预测绝对比算命先生的预测成功率要高的多,但离完全可靠还有很大差距。(另外你需要记住的是你的历史拟合结果不是唯一的,对不同参数的调整可以达到同样的历史拟合结果。)

生产历史拟合需要进行的数据准备工作量很大,你需要数模前处理软件来帮你完成这部分工作(比如ECLIPSE中的SCHEDULE模块)。在这部分你需要准备以下数据:

生产井和注水井的井口坐标

生产井和注水井的井轨迹

生产井和注水井的完井数据(井半径,射孔深度,污染系数,D因子等)

生产井的生产历史(油,气,水产量,井口压力,井底压力)

注入井的注入历史(气,水注入量,井口压力,井底压力)

修井数据(压裂,酸化等)

井的垂直管流表(用于计算井筒内的流动)

然后前处理模块会帮你生成数模软件所需要的数据格式。有几个问题你需要清楚:

(1)产量数据是井口产量(组分模型不同,以后单独讲)

(2)产量数据是日产量或月,季,年平均产量,而不是对应于某一时间步时的产量。(3) 如果用了时率的化一定要小心,要保证累积产量是正确的。累积产量很重要,你在拟合时一定要拟合累积产量。因为只有累积产量正确,才能保证物质平衡正确。产量拟合好并不能保证累积产量也拟合好。

(4)在拟合井底压力时你需要知道你的井底压力对应的深度。在ECLISPE软件中你可以在WELSPECS中提供井底压力(WBHP)对应的深度,在缺省情况下井底压力对应的深度是井最上面的射孔网格中部深度。

(5)你的垂直管流表对应的深度最好接近你的井参考深度。

(6)在ECLIPSED软件中静压(WBP,WBP4,WBP5,WBP9)是井连接网格和附近网格的井连接系数(CCF)的加权平均,如果你想把孔隙体积加权平均也考虑进去,你可以用WPA VE 来修改。

(8)所谓井连接系数(CCF)就是井与所在网格间的传导率。这个值对产量影响很大。在前处理过程中可以选择是否输出此值(在ECLIPSE软件中此值在COMPDAT的第八项),如果CCF没有提供,运行模型时会计算,如果提供了CCF,模型直接用CCF来计算产量。许多人遇到过在历史拟合时虽然修改了渗透率,但对产量影响很小,这是因为模型用了你提供的CCF来计算产量。此时你可以缺省CCF或用前处理软件重新计算修改后的CCF.

(9) 另外一个非常重要的概念是生产指数。数模模型通常用压力平衡半径(PEACEMAN半径)来替代实际的驱替半径,这样数模计算结果与实际生产情况会有误差。所以在历史拟合时首先应该调整生产指数(在ECLIPSE中用WPIMULT)来做初步拟合。WPIMULT=(WBP9-WBHP)/(WBP-WBHP).

(10)如果井由生产井转为注入井,可以先把井关掉然后直接定义井的注入控制(WCONINJH)。

(11)如果井进行了补孔或重新射孔,可以重新定义井的射孔信息(COMPDAT)

(12)如果井进行了作业,可以重新定义井的射孔信息(COMPDAT或WPIMULT)

7. 如何最快完成历史拟合

A: 首先要知道模型中哪些参数是不够精确,哪些是比较精确的.

不确定性参数: 渗透率,传导率,孔隙体积,垂向水平渗透率之比,相对渗透率曲线,水体.

比较精确参数: 孔隙度,地层厚度,净厚度,构造,流体属性,岩石压缩性,毛管力,参考压力,原始

流体界面.

B: 模型局部影响参数和整体影响参数

局部影响参数:空隙度,渗透率,厚度,传导率,井生产指数

整体影响参数:饱和度,参考压力,垂向水平渗透率之比,流体,岩石压缩系数

相对渗透率,毛管压力,油水,油气界面。

C: 实测数据误差分析

对油田来说,产油量的测量是精确而且系统的。含水的测量是稳定可靠的,但产气量的测量是不够精确的。

对气田而言,产气量的测量是精确的。

注水量或注气量的测量是不够精确的,一方面是由于测量误差,另一方面是由于一些不可测量因素,比如流体在套管或断层的漏失。

试井结果是可靠的,尤其是压力恢复结果。

RFT和PLT的测量是可靠的,井口压力的测量也是可靠的。

D:如何进行历史拟合

储量拟合:软件一体化对储量拟合带来巨大方便,许多油公司地质模型与油藏模型采用统一软件平台,油藏工程师主要只需要检查在由地质模型

通过网格合并生成油藏模型过程中造成的计算误差。通常孔隙度的合并计算是准确的,但渗透率的合并计算要复杂的多,采用流动

计算合并渗透率比较精确。净毛比也是要考虑的主要因数,请参照第N问题关于如何在模型中处理净毛比与孔隙度部分。

关于网格合并,请参照第N问题。

影响数模模型储量的因素有:孔隙体积,净毛比,毛管压力,相对渗透率曲线端点值,油水界面,气油界面,油水界面和气油界面

处的毛管压力(计算自由水面)。

测井曲线拟合:数模前处理软件(比如Schlumberger的Flogrid)可以基于初始化后的模型对每口井生成人工测井曲线,通过拟合人工生成测井曲线

与实际测井曲线,一方面可以检查地质模型建立以及网格合并过程中可能存在的问题,另一方面可以检查数模模型中输入井的测量深度

与垂直深度是否正确。数模模型中井的垂直深度应该是TVDSS,即减去补心后的深度。错误的深度会导致射孔位置发生偏差。

RFT与PLT拟合:勘探井和重点井通常都有RFT与PLT测量数据,这部分拟合可以帮助认识储层垂向非均质性,对勘探井RFT数据的拟合可以帮助检查数模模型

压力初始化是否正确。

全油田压力拟合:定油藏亏空拟合压力,软件可以通过用户输入的油,气,水地面产量计算油藏亏空。要检查油藏亏空是否正确,是否存在井产不够或注不够

的情况,否则需要调整生产或注入指数。检查全油田压力水平,调整孔隙体积或水体来拟合全油田压力。

单井压力拟合:全油田压力拟合后拟合单井压力,可以通过调整井附近孔隙体积或水体来实现拟合。

含水拟合:定产油量拟合含水。油水粘度比,相对渗透率,渗透率,网格分布和网格大小都会影响含水。

油水粘度比和相对渗透率曲线会影响含水上升规律,相对渗透率端点值,渗透率,网格分布和网格大小会影响见水时间。

井底压力拟合:调整PI,表皮系数,KH。

井口压力拟合:检查VFP表,VFP表对气井会很精确,但油井的VFP会误差很大。所以井口压力拟合应针对气井。

E: 历史拟合经验:

模型计算压力太大:检查孔隙体积,减小水体,检查储量,气顶大小,参考面压力与深度是否对应。

见水时间过早:增加临界含水饱和度,降低水平渗透率,检查水体,检查射孔位置以及油水界面,检查隔层,断层传导率,

检查垂向渗透率,网格方向即网格大小影响。

含水上升太快:油水粘度比,相对渗透率曲线,水体大小。

井底压力太大:增加表皮,减小KH,CCF,减小PI,减小传导率。

作者: snowfox 2007-07-02, 2:09 am

Nice, thank Gulfmoon

作者: daihewei 2007-07-04, 10:08 am

thank u ,sincerely.

作者: 丹顶鹤2007-07-21, 9:02 am

非常好,很有帮助!!!

作者: 梦中的蝴蝶-83 2007-07-22, 21:25 pm

感谢/一直希望有这方面的指导.为我们初学者提供了很好的平台,真是衷心的感谢!!!

作者: 梦中的蝴蝶-83 2007-07-22, 21:29 pm

作者: czh98 2007-07-23, 13:54 pm

非常感谢,看了您的帖子才知道以前所说的数模根本就是只言片语,看来万丈高楼从地起,还得把基础工打扎实才行!谢谢,再一次谢谢您无私的奉献!

作者: coral 2007-07-24, 10:30 am

非常感谢Gulfmoon, 你写的油藏数值模拟入门指南非常好!对初学者很有帮助!

作者: 江城子2007-07-29, 16:04 pm

非常好,谢谢月光小姐的辛勤劳动

作者: 北极星2007-07-31, 9:35 am

非常好,谢谢

作者: thl-1891 2007-08-01, 10:18 am

感谢!感谢!再感谢!

作者: todayyun 2007-08-03, 9:59 am

谢谢月光姐姐为我们这些素不相识的人给予的帮助。如果我能帮助别人也会尽力帮别人的。

作者: Roll 2007-08-03, 16:38 pm

你象黑夜中的一盏灯!

作者: jj1232004 2007-08-04, 15:01 pm

月光姐姐,非常感谢谢你给我们的指导!,/

作者: piao 2007-08-06, 19:20 pm

心理暖洋洋的

作者: langziwj 2007-08-07, 20:05 pm

如此系统的学习。。。非常感谢啊。。

作者: sofay 2007-08-10, 22:47 pm

太谢谢月光老师了!

作者: gulfmoon79 2007-08-12, 19:34 pm

8。模型重启计算

在你对模型历史拟合比较满意以后你就可以开始进行模型预测计算。在你进行预测的时候你当然不想把历史阶段再重新计算一遍,那样太浪费计算时间。你肯定希望从历史拟合结束时间进行预测计算。重启计算就是模型记录历史拟合结束时模型场数据的分布(包括模型饱和度,压力,油气比,井的控制及流量等),然后从此时间往后进行预测计算。

要进行重启计算,首先在你的历史拟合模型中要要求输出重启文件(例如ECLIPSE软件用RPTRST控制重启文件的输出),然后应用此文件进行预测计算。

重启计算并不是只可以从历史拟合结束开始,你可以从任何报告步开始进行重启计算。这样

你可以分阶段进行历史拟合。

9。产量预测

历史拟合的目的是为了用于预测以制定未来开发或调整方案。

在数值模拟软件中,对于产油井或产气井,你可以采用以下几种产量控制方式:

(1)定油量生产

(2)定水量生产

(3)定气量生产

(4)定液量生产

(5)定油藏产液量

(6)定井底压力

(7)定井口压力

(8)受井组产量控制

这里产量设定是最大值,压力设定是最小值。而且你提供的每一个值都会起控制作用。还是以ECLIPSE软件为例。关键字WCONPROD用来设定井的产量控制。比如:WCONPROD

A1 OPEN ORAT 100 200 3* 300 /

在这个例子中,设定了三个控制值,及最大产油量100,最大产水量200和最低压力300。井A1初始定油量(ORAT)生产,产油量为100,在井的生产过程中,产水量可能在上升,井底压力在下降,当井底压力下降到300时,压力不再下降,井将转为定井底压力300生产。这时产水量仍然可能上升,油量下降,当产水量达到200时,井转为受产水量控制。压力可能会上升,油量下降。

对于注水井或注气井,你可以采用以下几种注入控制方式:

(1)定地面注入量

(2)定油藏注入量

(3)井井底压力

(4)定进口压力

(5)受井组注入控制

这里注入量和压力的设定都是最大值。与生产控制相类似,所有设定项都会起控制作用。对于生产井,可以设定以下经济极限控制。

(1)最小产油量

(2)最小产气量

(3)最大含水

(4)最大油气比

(5)最大气水比

当井的生产违背了经济极限控制的化,你可以要求:

(1)关井

(2)封层

(3)修井

(4)开新井

(5)测试

(6)气举

(7)减产

(8)换油管

对于井组或油田,你可以采用以下生产控制方式:

(1)定井组或油田油量生产

(2)定井组或油田水量生产

(3)定井组或油田气量生产

(4)定井组或油田液量生产

(5)定井组或油田油藏产液量

在进行井组或油田生产控制时,单井的产量可以有以下几种操作方式:

(1)根据每口井的产能进行分配

(2)为每口井提供参考产量,井组根据井的参考产量值进行匹配

(3)优先设定,优先值大的井先生产,当这些井不能满足井组产量,再生产优先值低的井。(4)自动钻新井,当井不能满足井组产量,自动钻新井。

对于井组生产也可以设定井组的经济极限控制:

(1)井组最小产油量

(2)井组最小产气量

(3)最大含水

(4)最大油气比

(5)最大气水比

当井组的生产违背了经济极限控制的化,你同样可以要求:

(1)关井

(2)封层

(3)修井

(4)开新井

(5)测试

(6)气举

(7)减产

(8)换油管

井组的注入方式可以有以下几种控制方式:

(1)地面注气量或注水量

(2)油藏注气量或注水量

(3)地面注采比

(4)油藏注采比

如果你想保持油藏压力水平,你还可以设定油藏压力水平,这时模型可以自动调整:

(1)井组油藏产量

(2)井组油藏注水量

(3)井组油藏注气量

(4)井组地面注水量

(5)井组地面注气量

作者: haishi 2007-08-13, 14:36 pm

请问在压力达到最小值300之前,水量先达到最大200,是否是按照水量控制,压力继续下降,降至300时,再转入压力控制呢,请指教.

作者: gulfmoon79 2007-08-13, 21:27 pm

作者: rockwj 2007-08-14, 9:15 am

thanks lots

作者: lxb 2007-08-18, 18:32 pm

恩谢谢月光姐姐拉你虽然在它乡,但是你却照着你的故乡。

作者: lxb 2007-08-18, 18:34 pm

恩谢谢月光姐姐拉你虽然在它乡,但是你却照着你的故乡。

作者: xmw2001 2007-08-20, 7:31 am

感谢gulfmoon specialist

作者: qinshenggao 2007-08-21, 22:28 pm

反正觉得很好的拉

作者: gulfmoon79 2007-08-27, 23:22 pm

10:如何加快数模计算以及如何解决数模计算的收敛性问题?

在了解收敛性之前,应该首先了解几个基本概念:

(1)。报告步:一个数模作业包括多个报告步,报告步是用户设置要求多长时间输出运行报告,比如可以每个月,每季度或每年输出运行报告,运行报告包括产量报告和动态场(重启)报告。

(2)。时间步:一个报告步包括多个时间步,时间步是软件自动设置,即通过多个时间步的计算来达到下一个报告步,以ECLIPSE为例,假如报告步为一个月,在缺省条件下,ECLISPE 第一个时间步取一天,然后以三倍增加,即第二个时间步取三天,然后取九天,下一个时间步是17天来达到30天的报告步,然后会以每30天的时间步来计算。时间步可以通过TUNING关键字来修改。

(3)。非线形迭代:一个时间步包括多次非线形迭代。在缺省情况下,ECLIPSE如果通过12次的非线形迭代没有收敛,ECLIPSE将对时间步减小10倍。比如下一个时间步应该是30天,如果通过12次的迭代计算不能达到收敛,ECLIPSE将把时间步缩短为3天。下一个时间步将以1.25倍增长,即3.75天,4.68天,。。。。如果在计算过程中经常发生时间步的截断,计算将很慢。

(4)。线形迭代:一个非线形迭代包括多次线形迭代。线形迭代是解矩阵。

在ECLIPSE输出报告PRT文件中可以找到时间步,迭代次数的信息,比如:

STEP 10 TIME= 100.00 DAYS ( +10.0 DAYS REPT 5 ITS) (1-FEB -2008)

“STEP 10”: 说明这是第10个时间步。

“TIME= 100.00 DAYS”:说明现在模拟到第100天。

“+10.0 DAYS”:说明这个时间步是10天。

“REPT" :说明为什么选10天做为时间步,REPT是指由于到了下一个报告步。

“5 ITS": 说明此10天时间步需要5次非线形迭代。

”(1-FEB-2008)“:现在的模拟时间。

模拟计算的时间取决于时间步的大小,如果模型没有发生时间步的截断而且能保持长的时间步,那表明该模型没有收敛性问题,反之如果经常发生时间步截断,那模型计算将很慢,收敛性差。时间步的大小主要取决于非线形迭代次数。如果模型只用一次非线形迭代计算就可以收敛,那表明模型很容易收敛,如果需要2到3 次,模型较易收敛,如果需要4到9次,那模型不易收敛,大于10次的化模型可能有问题,如果大于12次,时间步将截断。模型不收敛的原因很多,网格参数,属性参数,流体PVT参数,岩石相渗曲线,毛管压力曲线,相渗曲线端点标定,初始化,井轨迹,垂直管流表都会造成模型不收敛,下面分别介绍各部分如何造成不收敛及如何解决。

(1)。网格部分:

网格正交性差和网格尺寸相差太大是导致不收敛的主要原因之一。正交性差会给矩阵求解带来困难,而网格尺寸相差大会导致孔隙体积相差很大,大孔隙体积流到小孔隙体积常会造成不收敛。

解决办法:

网格正交性差通常是在建角点网格时为描述断层或裂缝的走向而造成的。在此情况下,最好能使边界与主断层或裂缝走向平行,这样一方面网格可以很好地描述断层或裂缝,另一方面正交性也很好。

在平面上最好让网格大小能够较均匀,在没有井的地方网格可以很大,但最好能够从大到小均匀过渡。纵向上有的层厚,有的薄,最好把厚层能再细分。在检查模型时应该每层每层都在三维显示中检查。

径向局部网格加密时里面最小的网格不要太小。

在ECLIPSE里用MINPV关键字可以把小于设定孔隙体积的网格设为死网格,这样通常会有用。

(2)。属性参数:

不合理的插值计算会导致属性分布很差,如果是从地质模型粗化为数模模型,通常问题不大,只是有时候数模人员自己插值时会有问题。

解决办法:

有可能尽量用地质模型的数据,自己插值时可以加一些控制点使属性合理分布。X,Y方向的渗透率最好相等或级差不大。在井连通网格的Z方向渗透率不要设为0,如果想控制垂向流动,可给一个很小的值。

(3)。流体PVT参数

流体PVT参数会有两种可能的问题,一是数据不合理导致了负总压缩系数,二是压力或气油比范围给的不够导致模型对PVT参数进行了外插。

解决办法:

检查PRT文件中的W ARNING信息,如果在油藏压力范围内有负总压缩系数的警告,应该修改PVT参数,否则的化会有收敛性问题。如果负总压缩系数是在油藏压力范围之外,可以忽略该警告。此部分的修改主要可以小规模修改油和气的FVF和RS。

(4)。岩石相渗曲线和毛管压力曲线。

通常的问题有:

饱和度和相对渗透率的数据位数过多。

饱和度值太接近,导致相渗曲线的倾角变化很大。

饱和度有很小变化但相对渗透率发生了很大变化。

解决办法:

饱和度和相对渗透率最多给两位小数就够了。

检查相渗曲线的导数(可以应用ECLIPSE中的SCAL模块),导数要光滑。

临界饱和度和束缚饱和度设为不同的值。

(5)。端点标定:

在应用端点标定时,有时标定完后的相渗曲线倾角很大,标定后的毛管了很大。

解决办法:

在三维显示中检查标定完的PCW,可以给PCW一个最大值来控制毛管压力。

输出每个网格标定后的相渗曲线进行检查。

(6)。初始化:

初始化最容易发生的问题是在初始时模型不稳定,流体在初始条件下就会发生流动,这也会导致模型不收敛。造成模型初始不稳定的主要有:

手工通过网格饱和度和压力值。

拟合初始含水饱和度。

解决办法:

尽量不要直接为网格赋压力和饱和度值,尽量由模型通过油水界面及参考压力来进行初始化计算。

要想拟合地质提供的初始含水饱和度分布,应该进行毛管压力的端点标定,这样毛管压力会稳住每个网格的水,在初始条件下不会流动。

可以通过让模型在没有任何井的情况下计算十年来检查初始条件下模型是否稳定,如果10年的计算模型压力和饱和度都由说明变化,说明模型初始是稳定的。=

(7)。井轨迹:

在进行井处理时井可能以之字型在网格中窜过,有可能发生井的实际窜过方向与模型关键字定义的方向不符,这也会导致不收敛。

解决办法:

在三维显示中检查井轨迹。

如果井已经关掉,在模拟时不要给零产量,要用关键字把井关掉。

检查井射孔,井不要射在孤立的网格上。

(8):垂直管流曲线:

有了垂直管流曲线很容易导致模型不收敛,这有两种可能:

曲线有交叉。

曲线发生了外插。

解决办法:

用前处理软件(ECLIPSE中的VFPi)检查曲线。

在ECLIPSE中加EXTRAPMS关键字可以要求输出如果发生VFP插值后的警告信息。

曲线应该覆盖所有井口压力,含水,油气比及产量。

11。结束语

黑油模型数值模拟入门指南先写到这里,其实还有许多没有写道。以后有时间可以再补充。下一步计划写一写组分模型入门指南。组分比黑油要复杂的多。当然关键是状态方程,希望可以早日动手。

Eclipse调试方法入门

Eclipse调试 这个教程将帮助学生获得关于调试的一些关键概念,以及如何进行一个调试 这是我们所熟悉的Eclipse环境,我们从这里开始教程。打开一个我们想进行调试的工程 需要做的第一件事就是给我们的工程设置一个调试特性,点击bug图标之后的下拉三角。弹出Debug窗口 双击Jave Application,我们可以对程序创建一个Java Application型的新配置。选择工程及主类。点击“Apply”然后关闭。

放置断点 断点起到告诉程序什么时候暂停的作用。进入你想放置断点的代码行。右键点击选中行前面的的兰色竖条部分。选择toggle breakpoint。或者双击兰色竖条。 选择toggle breakpoint. 选择Window菜单,切换到debug透视图。这就是Debug透视图,如果你注意到,我们的代码窗口在下方。并且上面多出了两个窗口,左边就是显示我们运行程序的窗口,以及堆栈。右边将显示变量和表达式。

下的箭头符号,进行选择 代码变为绿色,意思是这是将要执行的下一行代码。

现在我们可以执行几个操作。其中比较基础的一个是单步操作。如果断点标注的是一个函数调用,选择单步进入Step Into,你可以执行并进入到代码的下一行;同样的如果你想不执行方法的这一行,你可以执行“Step over”,并且不进入方法。 假设我们使用单步跳入,并且进入了一个函数调用开始调试。这时如果我们使用一个“Step Return”,这将完成执行方法的余下部分。你将顺利的处于方法后的将要执行的那一行代码中。

(继续)按钮。 最后,如果我们不再想进行调试,并且想要程序结束,你可以点击位于左窗口顶端的“terminate”按钮。

eclipse使用技巧

代码篇: 1.在源代码中快速跳转: eclipse中的跳转甚至比https://www.360docs.net/doc/527728272.html,还方便,方法是按住Ctrl键,然后鼠标指向变量名,方法名,类名,就会出现链接,点击就可跳到定义处。 2.实时语法检查: 编辑区右侧如果有红色小方块,直接点击就可跳到有错的行;黄色小方块是警告,可以忽略,但最好检查一下;如果某个函数尚未完成,要提 醒自己注意怎么办?加上注释// TODO,右侧就会有蓝色小方块,提示你此处尚未完成。当一个源码的右侧没有任何提示时,说明这个文件已经 完成了。 3.自动生成getter/setter方法: 只需要申明protected,private类成员变量,然后在Package Explore中找到该类,右键点击,选择“Source”“Generate Getters and Setters”。 4.更改类名/变量名: 如果涉及到多处修改,不要直接在源码中更改,在Package Explore中找到要改名的类或变量,右键点击,选择“Refactor”“Rename”, eclipse会自动搜索所有相关代码并替换,确保不会遗漏或改错。 5.匹配Try: 如果写的代码需要抛出或者捕捉异常,在JBuilder中,你需要首先引入这个异常类,然后再在写好的代码前后加try,catch或者在方法后面加 throws,在eclipse里完全不必要这样,只需要写好代码,然后按ctrl + 1,这时会出来提示,提示你是throw还是catch这个异常,选择你需要 的,按下enter就可以了。 6.快速书写循环代码: 在写循环或者选择条件的语句时,先写出关键字如if、while,然后按alt + /自己去看有什么好处吧。接下来会出来提示代码,按下tab可以在 框框中跳,按下确定跳出代码提示。 热键篇: ctrl + D:删除行 ctrl + M:当前窗口的最大化或最小化 ctrl + L:跳到指定的行 ctrl + 1:代码纠错提示 alt + /:代码辅助提示 F11:运行上次运行的程序

Eclipse的debug操作手册

在本教程中,我们将看到使用Eclipse调试Java应用程序。调试可以帮助我们识别和解决应用程序中的缺陷。我们将重点放在运行时间的问题,而不是编译时错误。有提供像gdb的命令行调试器。在本教程中,我们将集中在基于GUI的调试,我们把我们最喜爱的IDE Eclipse来运行,通过本教程。虽然我们说的Eclipse,点大多是通用的,适用于调试使用的IDE像NetBeans。在看这篇文章前,我推荐你看一下Eclipse 快捷键手册,你也可以到这儿:下载PDF文件 我的eclipse版本是4.2 Juno。 0.三点特别提醒: ?不要使用System.out.println作为调试工具 ?启用所有组件的详细的日志记录级别 ?使用一个日志分析器来阅读日志 [ (System.out.println()对开发人员来说,有时候也许可以是一种调试手段,但是项目一旦完成他就没有什么用途了,就变成垃圾了,得必须注释或删除掉,这样会比较麻烦。启用所有组件的详细日志记录级别,运用日志分析器来记录详细系统运行状态,这对后期网站的优化和维护会有很多作用。)这仅仅是个人理解,仅供参考! ] 1.条件断点 想象一下我们平时如何添加断点,通常的做法是双击行号的左边。在debug视图中, BreakPoint View将所有断点都列出来,但是我们可以添加一个boolean类型的条件来决 定断点是否被跳过。如果条件为真,在断点处程序将停止,否则断点被跳过,程序继续执行。

2.异常断点 在断点view中有一个看起来像J!的按钮,我们可以使用它添加一个基于异常的断点,例如我们希望当NullPointerException抛出的时候程序暂停,我们可以这样: 3.观察点 这是一个很好的功能,他允许当一个选定的属性被访问或者被更改的时候程序执行暂停,并进行debug。最简单的办法是在类中声明成员变量的语句行号左边双击,就可以加入一个观察点。

Java基础入门教程(适合所有初学者)

第1章 Java语言概述与面向对象思想 1 1.1 Java语言的发展 1 1.1.1 Java语言的产生 1 1.1.2 Java语言的发展 1 1.2 Java语言的特点 2 1.3 面向对象与面向过程的差异 3 1.3.1 面向过程思想回顾 4 1.3.2 面向对象思想介绍 4 1.4 面向对象程序设计中的主要概念和特征 4 1.4.1 主要概念 5 1.4.2 主要特征 5 *1.5 Java与C++的差异 5 1.6本章小结5 习题 5 第2章 Java语言开发环境 6 2.1 JDK 6 2.1.1 JDK的简介6 2.1.2 JDK的构成6 2.1.3 JDK的使用6 2.2 IDE 8 2.2.1 IDE简介8 2.2.2 JBuilder 9 2.2.3 Eclipse 9 2.2.4 相关资源9 2.3 Project管理9 2.3.1 Project的含义9 2.3.2 可行的Project组织模式9 2.3.3 主要开发工具的Project目录10 2.4 本章小结10 习题10 第1章 Java语言概述与面向对象思想 1.1 Java语言的发展 1.1.1 Java语言的产生以介绍面向对象编程的基本概念、基本理论为重点,结合Java语言的语法规则、编程特点和设计思想、强调容易发生错误和编程应注意的地方,使学生能对Java 技术有一个总体了解,通过本课程学习,使学生掌握Java语言的基础知识,理解和掌握面向对象程序设计的基本思想,熟练地使用Java语言进行程序的编写、编译以及调试工作 上世纪90年代初期,Sun公司在研究一种适用于未来的智能设备的编程语言,该语言要具有一些新的特性,以避免C++的一些不足。 该语言起初命名为Oak,来源于语言作者Gosling办公室窗外的一棵橡树(Oak)。后来在注册时候遇到了冲突,于是就从手中的热咖啡联想到了印度尼西亚一个盛产咖啡的岛屿,中文名叫爪哇,Java语言得名于此。 随着Internet的迅速发展,Web应用日益广泛,Java语言也得到了迅速发展。1994年,Gosling

eclipse官方使用教程翻译

Eclipse 官方教程 Lars vogel Version 2.3 Copyright ? 2007 - 2011 Lars Vogel 11.11.2011 Eclipse java ide 本教程java ide eclipse的用法,涉及到eclipse的安装,java程序的创建和使用eclipse的细节,教程基于eclipse3.7(indigo) 1. eclipse概览 很多人知道eclipse是一个java ide。 Eclipse由开源软件社区创建,并且应用于很多不同的领域,比如作为java或者android的开发环境。 Eclipse工程由eclipse基金会管理,eclipse基金会是一个掌管eclipse工程而且帮助培养开源社区以及一个完整的包含产品和服务的非盈利性并由成员支持的公司。 Eclipse起源于2001年,今天在java开发环境市场占有率达到了65%。 Eclipse能够由各种插件来扩展,因此有很多开源工程和公司通过插件扩展了eclipse,所以使用eclipse也可以开发(eclipse rcp) 2开始 2.1安装 Eclipse需要安装安装java运行时。我推荐使用java 7(就是java1.7)。安装eclipse需要从https://www.360docs.net/doc/527728272.html,/downloads下载包“eclipse ide for java developers”。并将它解压到一个目录中,使用的目录名不能包含空格,有时候eclipse出现问题就是因为这个。解压完了之后就可以使用了,不需要什么额外的安装过程。 2.2开始使用eclipse 启动eclipse需要双击eclipse.exe(windows),或./eclipse(linux\mac)。系统会提示你指定一个workspace。Workspace是用来存储java工程(关于workspace,后面有详细讲解)。选择一个空目录然后点击OK,如图:

Eclipse 3.4 安装及使用说明

Eclipse 3.4 安装及使用说明 1. 安装Eclipse 3.4 由于Eclipse是绿色软件,所以直接解压至任意目录即可(例如D:\eclipse)。 2.在Eclipse中安装tomcat插件 解压tomcatPluginV31.zip,获取com.sysdeo.eclipse.tomcat_3.1.0并直接复制到eclipse目录plugins文件夹下即可。如果插件安装成功,新建项目时(File->New->Project)会看到Tomcat Project,如图1所示,否则说明安装不成功。 图 1 接下来在Eclipse中配置Tomcat服务器。在eclipse的菜单中选择: Window->Preferences->Tomcat(没有安装Tomcat插件就不会出现这项),设置Tomcat

Version: 选择“Version 5.x”, Tomcat Home: “C:\Program Files\Apache S oftware Foundation\Tomcat 5.5\”,即Apache Tomcat的安装目录。 图 2 3.采用Eclipse开发简单的Web应用 3.1 创建新项目 新建Tomcat Project,项目名称为“testPrj”,如图3,单击Next按钮进入下一步,如图4,web服务应用根目录为“web”,单击Finish按钮完成项目创建。

图3

图 4 3.2 修改项目的配置及目录结构 单击如图5所示的下三角符号,打开弹出菜单,选择“Filters”,打开过滤器窗口,如图6所示,把“*.resources”项的勾选去掉以显示.classpath文件。打开该文件并进行修改:把“”修改为“”;把“”修改为“”,然后保存该文件。接下来删除“bin”文件夹,删除W EB-INF下的“s rc”文件夹,把“work”文件夹移至web目录下,在项目根目录下添加“s rc”和“test”文件夹,最后项目目录如图7所示。

eclipseCVS使用手册

Eclipse中CVS版本管理 版本管理 1.1 CVS简介 CVS是Concurrent Versions System(并发版本系统)的简称。它是一个开放源代码的项目,是当前最流行的版本控制系统,目前绝大部分Open Source项目都使用它来做版本管理。微软的VSS也可以用来进行Java项目的版本管理,但在学会使用Eclipse后,使用CVS。 CVS采用客户机/服务器体系,代码、文档的各种版本都存储在服务器端,开发者首先从服务器上获得一份复制到本机,然后在此基础上进行开发。开发者可随时将新代码提交给服务器,也可以通过更新操作获得最新的代码,保持与其他开发者的一致。 由于Eclipse本身内置了CVS客户端,只要再建立一个CVS服务器就可以使用这一功能强大的版本控制系统。CVS的功能虽强大,但一般项目通常只用到其20%的功能,所以只要了解最常用的操作就可以了。本系统是的是Eclipse 3.0.1版本,下面将以面向实际项目使用需要的方式来介绍CVS。 1.2 CVS服务器端的安装与配置 CVS起源于UNIX/Linux平台,由于我们平时大多使用的是Windows系统,所以在UNIX/Linux平台下安装使用CVS服务器端的方法,我们不再重复。CVS服务器在Windows 平台的版本:CVSNT,我们下面将着重介绍CVSNT的安装。 首先,我们得下载CVSNT,可以到CVSNT主页https://www.360docs.net/doc/527728272.html,/downloads/去下载它,我们下载的是cvsnt 2.0.58d版本,把它安装在Windows XP系统上。 (1)运行安装程序,完全按照它的默认设置,连续单击“next”按钮,即可完成安装。我们把cvsnt安装在默认的“C:\Program Files\cvsnt”目录下。 (2)通过Windows选择“开始→所有程序→CVSNT”选项,打开cvsnt的设置面板“Service control panel”,如图1.1所示,表明上面两个服务已经启动。 注意 :如果提示找不到rundll32.exe,则单击“浏览”按钮,指向“C:\windows\system32\ 注意: rundll32.exe”并运行它。 (3)单击图1.1中的“Repositories”选项卡,再单击Add按钮,创建一个存放版本文件的目录“c:/cvsfile”,如图1.2所示,单击“OK”按钮后,在弹出的两个窗口中都回答“是”。 注意 注意: :建议在“Name”栏改写成绝对路径“c:/cvsfile”,就能够确保在cvsnt安装后可以 正常使用。

Eclipse_CDT安装及使用教程

Eclipse CDT安装及使用教程 Eclipse CDT安装教程 一、安装配置JDK 1、下载windows jdk 安装包,可以从官网下载,也可以从这里下载,下载完成后,按照一般软件安装的方法安装; 2、安装完成后,找到安装目录,如C:\Program Files\Java\jdk1.6.0_35,记录下来; 3、Windows7下右击电脑桌面的计算机,选择属性,然后点击右边的“高级系统设置”,在弹出的对话框点击“环境变量”,如图。 4、在步骤3中弹出的对话框的下方,看到系统变量,点击下方的“新建”(见图12),然后在变量名的地方填入JA V A_HOME,变量值填入步骤2中记录的路径,然后点击确定;

5、按照步骤4的方法,新建另一个变量,变量名是:CLASSPATH,变量值是:.;%JA V A_HOME%\lib\dt.jar;%JA V A_HOME%\lib\tools.jar;%JA V A_HOME%\jre\lib\rt.jar 统变量中找到变量名为PATH的变量,双击,在变量值的最后加上:;%JA V A_HOME%\bin(见图),然后一路确定。 7、至此,eclipse的运行环境配置成功。

二、配置C/C++编译器MinGW Windows下安装配置MinGW 从MinGW官网下载最新程序,下载地址: https://www.360docs.net/doc/527728272.html,/project/mingw/Installer/mingw-get-inst/mingw-get-inst-20120426/mi ngw-get-inst-20120426.exe; 双击下载好的程序,然后一路点击“Next”按钮,直到图1的界面,选择“I accept the agreement”,然后点击next。 3、选择路径,默认放在C:\MinGW,点击next;接下来的界面也是next;一直到图中的组件选择界面,勾上C Compiler前面的钩,也可以按自己喜好选上C++ Compiler或其它组件,点击next;在下一个界面点击Install,就会进行安装。

Eclipse使用方法[精髓]

附录C 3.2.2使用简介 C.3 使用开发工具进行编程 当下载并安装完毕Eclipse 3.2.2开发工具后,可以使用该开发工具进行代码的开发了,本节将使用该工具开发一段代码,介绍如何使用该开发工具进行编程,请按照如下步骤进行操作。 (1)首先打开Eclipse 3.2.2开发工具,稍等片刻之后,会进入到图C-8所示的界面,在这里将设置工程文件默认的存放路径。 图C-8 设置工程文件默认的存放路径 (2)本书选用默认路径作为工程文件的存放路径,当设置完成之后,就可以单击“OK”按钮,稍等片刻进入Eclipse 3.2.2的主程序。如图C-9所示。 图C-9 Eclipse 3.2.2主程序的欢迎界面 (3)这时可以将欢迎界面关掉,并单击“File” 菜单,将鼠标移动到“New”菜单项上,此时可以看

到图C-10所示的界面。 (4)在图C-11所示的“New”子菜单中选择“Project…”菜单项来创建工程文件,单击之后,会弹出一个图C-12所示的对话框。 (5)在该对话框中将选择所要创建工程的类型,可以选择“Java Project”选项,并单击“Next”按钮来进行创建。单击完“Next”按钮后,会进入图C-13所示的界面,在这里将设置工程文件的名称。 (3)可以在“Project Name”文本框中设置该工程的名称,例如这里将该工程的名称设置为“T est”,当设置完毕之后,可以单击“Fini sh”按钮完成设置。单击完“Fini sh”按钮后,可以在开发工具的主界面左侧看到本工程的工程树。如图C-14所示。 图C-12 选择工程文件的类型图C-13 设置工程文件的名称 图C-14 主界面中的工程树 (4)由于还没有创建文件,所以创建工程完毕之后,工程树比较空,这时可以为该工程创建代码文件,单击“File”菜单,并在其中“New”子菜单中选择“Class”选项。这样会弹出一个用来创建文件的向导提示框,如图C-15所示。

Eclipse完全手册

Eclipse 完全手册
Eclipse 是一个开放源码的、可扩展的应用开发平台,该平台为编程人员提供了一流的 Java 集成开发环境。作为一套开源工具,可用于构建 Web Services、J2EE 等各种类型的应用,其 所提供的功能不亚于、甚至要超过由专业的集成环境供应商所提供的商业化产品,如 JBuilder。
Eclipse 最有魅力的地方就在于它的插件体系结构。在这个体系中重要的概念是扩展点 (extension points),也就是为插件提供的接口。每一个插件都是在现有的扩展点上开发的, 并可能还留有自己的扩展点,以便在这个插件上继续开发。
由于有了插件,Eclipse 系统的核心部分在启动的时候要完成的工作十分简单:启动平台的 基础部分和查找系统的插件。在 Eclipse 中实现的绝大部分功能是由相应的插件完成的,比如 WrokBench UI 插件完成界面的外观显示,Resource Management 插件完成维护或生成项目或 文件等资源管理工作,而 Version and Configuration Management(VCM)插件则负责完成版 本控制功能,等等。虽然以上提到的每一个功能都是绝大多数 IDE 环境所必备的功能,Eclipse 却把它们都做成了插件模式,甚至用来开发 Java 程序的开发环境(Java development tooling, JDT),也只不过是 Eclipse 系统中的一个普通插件而已。整个 Eclipse 体系结构就像一个大拼 图,可以不断地向上加插件,同时,现有插件上还可以再加插件。
虽然大多数用户很乐于将 Eclipse 当做 Java IDE 来使用,但 Eclipse 的目标不仅限于此。 Eclipse 平台为工具提供者(Tools Provider)提供一套使用机制和一组需要遵循的规则,从而使 得开发出的工具之间可以实现无缝的集成。这些机制通过定义良好的 API 接口、类和方法提供 给用户使用,平台同样为新的工具的开发提供强有力的组件支持(如 Plug-in Development Environment,PDE——插件开发环境)。主要针对希望扩展 Eclipse 的软件开发人员,因为它 允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有 同等的发挥场所。
这种平等和一致性并不仅限于 Java 开发工具。尽管 Eclipse 是使用 Java 语言开发的,但 它的用途并不限于 Java 语言;例如,支持诸如 C/C++、COBOL 和 Eiffel 等编程语言的插件已 经可用, 或预计会推出。 Eclipse 框架还可用来作为与软件开发无关的其他应用程序类型的基础, 比如内容管理系统。

Eclipse中JAVA中文教程

来源:网上 PDF制作:https://www.360docs.net/doc/527728272.html, Eclipse – 整合开发工具 基础篇

Jacky Lee 2005/03/01

目录 0.环境说明 (8) 1.Eclipse简介 (9) 1.1历史背景 (9) 1.2开发原始码软件 (10) 1.3 Eclipse版本介绍 (10) 1.4跨语言、跨平台 (11) 2. Eclipse Platform (13) 2.1概观 (13) 2.2架构 (13) 2.3项目与资料夹 (14) 2.4平台核心 (14) 2.5工作区(workspace) (15) 2.6工作台(workbench) (15) 2.6.1视图(View) (16) 2.6.2编辑器(Editor) (19) 2.6.3视景(Perspective) (22) 2.7重新排列视图和编辑器 (23) 2.7.1放置游标 (23) 2.7.2重新排列视图 (24) 2.7.3并列编辑器 (25) 2.7.4重新排列附加标签的视图 (26) 2.7.5最大化 (27) 2.8菜单和工具列 (28) 2.8.1菜单 (29) 2.8.2图标和按钮 (44) 2.9视景 (49) 2.9.1新视景 (49) 2.9.2新窗口 (51) 2.9.3储存视景 (52) 2.9.4配置视景 (54) 2.10作业和标记 (55) 2.10.1不相关的作业 (56) 2.10.2相关的作业 (56) 2.10.3开启档案 (58) 2.11书签 (58) 2.11.1新增和检视书签 (59)

2.11.2使用书签 (61) 2.11.3移除书签 (61) 2.12快速视图(Fast View) (63) 2.12.1建立快速视图 (63) 2.12.2使用快速视图 (64) 2.13比较 (65) 2.13.1简单比较 (66) 2.13.2了解比较 (67) 2.13.3使用比较 (69) 2.14历史纪录 (71) 2.15回应 UI (73) 3.喜好设定(Preferences) (76) 3.1工作台(Workbench) (77) 3.1.1外观(Appearance) (79) 3.1.2功能(Capabilities) (80) 3.1.3颜色和字型(Colors and Fonts) (82) 3.1.4比较/修正(Compare/Patch) (83) 3.1.5编辑器(Editors) (86) 3.1.6档案关联(File Associations) (87) 3.1.7按键(Keys) (90) 3.1.8标签装饰(Label Decorations) (99) 3.1.9链接资源(Linked Resources) (99) 3.1.10历史纪录(Local History) (101) 3.1.11视景 (102) 3.1.12搜寻(Search) (104) 3.1.13启动和关闭(Startup and Shutdown) (105) 3.2 Ant (107) 3.2.1 Ant 编辑器(Ant Editor) (107) 3.2.2 Ant 执行时期(Ant Runtime) (109) 3.3建置次序(Build Order) (112) 3.4说明(Help) (113) 3.4.1说明服务器(Help Server) (115) 3.5自动更新(Install/Update) (116) 3.6 Java (117) 3.6.1外观(Appearance) (118) 3.6.2类别路径变量(Classpath variables) (119) 3.6.3程序代码格式制作器(Code Formatter) (120) 3.6.4程序代码产生(Code generation) (122)

Eclipse教程

附录J:Eclipse教程 By Y.Daniel Liang 付蓉译 该帮助文档包括以下内容: ●Eclipse入门 ●选择透视图 ●创建项目 ●创建Java程序 ●编译和运行Java程序 ●从命令行运行Java Application ●在Eclipse中调试 提示:在学习完第一章后使用本教程第1节~第6节,学习完第二章后可配合本教 程的第7节,开始学习第十四章时可配合本教程的第8节。 0 简介 该教程的使用者包括正在通过使用Eclipse来学习Java课程的学生和想要用Eclipse开发Java项目的程序员。Eclipse是由IBM提供的一个开源的Java程序开发软件。 你也可以使用JDK命令行工具来写Java程序。JDK命令行工具包括一系列独立的程序,如编译器和解释器,都可从命令行来激活。除了JDK命令行工具,市场上还有很多Java的开发工具,包括Borland公司的JBuilder、NetBeans、Sun公司的ONE Studio(商业版的NetBeans)、Eclipse和WebGain Visual Café。这些工具为快速开发Java程序提供集成的开发环境(IDE)。编辑、编辑、构造、调试和在线帮助被集成在一个用户图形界面。有效的使用将会极大的提高编程速度。 这个简短的教程将会帮助你熟悉Eclipse,尤其是在创建项目、创建程序、编译和运行程序方面。 提示:Eclipse可运行在任何的Java虚拟机之上。本文中所有的屏幕截图都来自于运行在Windows之上的Eclipse3.0。你可以到https://www.360docs.net/doc/527728272.html,下载Eclipse。

安装提示:安装Eclipse之前必须安装JDK1.5。JDK1.5可以从https://www.360docs.net/doc/527728272.html,/j2se/1.5/download.html下载。Windows版本的Eclipse存放在压缩文件eclipse-SDK-3.0-win32.zip中。将文件解压缩到c:\下,解压缩后所有的文件都放在c:\eclipse中。 1 开始使用Eclipse 假设你已经将Eclipse安装在目录c:\eclipse下。要启动Eclipse,双击c:\eclipse目录下的eclipse图标(如图1): 图1 双击后出现了工作区装载窗口(如图2): 图2 输入你的工作区所在的目录,本例所有项目、程序都存放在c:\smith目录下,故输入c:\smith,然后点击OK,Eclipse的图形界面就展现在你的眼前了(如图3)。

Eclipse使用指南

Eclipse使用指南(北京)技术有限公司

1 修订记录

2 目录 1修订记录 (1) 2目录 (1) 3概述 (1) 4基本操作 (1) 4.1常用的快捷键 (1) 4.2设置T ask (2) 4.3eclipse.ini配置 (2) 4.4代码模板 (2) 5插件 (3) 5.1Subversion插件 (3) 5.2Tomcat插件 (4) 6常见问题解答 (4) 6.1Javaw.exe启动有问题 (4) 6.2Ant不能执行 (4) 6.3ant超时解决办法 (4) 7参考资源 (5) 7.1插件地址 (5)

3 概述 本文是关于Eclipse的使用指南。内容包括:eclipse配置、快捷键的使用、使用建议、代码模版的配置、相关参考资源等。 4 基本操作 4.1 常用的快捷键 它可以大大的增强您的开发效率,要想成为高手的必备技能之一。 对于一个仅仅知道几个快捷键的选手,不要急于一天就能掌握所有的操作。可以每天重点使用几个,对于一个java程序员,几周就可以熟练掌握。 1. Alt+shift+s 操作source源代码的一些方式 2. F4 查看类的结构和继承关系 3.可以用Ctrl+shift+L可以查阅,它能增加巨大的效率。 4. Ctr+H:查找具体的类 5. F3 :等价于Ctr+被选中的某个单词 6.Ctrl+/:可以在选中一定的区域后,可以直接的全部加上注释。Ctrl + shift +/可以注释块。 7. Tab+shift:按钮可以跳tab距离。 8.全部选中+tab:可以向前跳置tab的距离。 9. F5和F6:是常用的调试按钮。非常的有用。 10.F4:在选中的类中可以查看类图的集成结构。 11.Shift+鼠标右键,可以选择一行,比直接的按住右键好用多了。 12.Ctr + Shift + o organize import 非常的好用。 13.Ctr + o Quick outline 14.Ctr + Shift + e 在单独的窗口中。列出当前所有的文件, 15.Ctr + T 查询调用该函数父函数。比F4好用。 16.Alt + shift + R 重命名选中的函数rename 17.Ctr + F3 可以查看类

Eclipse与ClearCase结合使用方法

eclipse与clearcase结合使用方法 ClearCase开发eclipse项目(二) 为User2 设置工作区域以访问由User1 所共享的模型 在本节章,User2 将通过创建一个web视图并在其工作空间中导入Piggy Bank UML 项目,来设置他个人的工作区域。要创建一个视图并导入此共享的Piggy Bank 建模项目,请遵循以下步骤: 1.启动User2 的客户端机器上的Software Architect。 2.当收到提示时,选择你的工作空间或者创建一个新的工作空间。 3.这会激活Software Architect 中的ClearCase Remote Client。为得到更多信息,参见 前面的在Software Architect 中激活ClearCase Remote Client 一节(由User1所执行)。 4.从Software Architect 中的ClearCase 透视图创建一个新的ClearCase Web 视图 (命名为baseccrc_view2)。为得到更多信息,参见在Software Architect 中创建一个ClearCase Web 视图,并加载Base ClearCase VOB 工件。 5.在Software Architect(ClearCase透视图)中的ClearCase Navigator 视图中,右键点 击baseccrc_view2 并选择Update Resource(如图21所示)以将UML Project 工件获取到你的本地Web 视图(baseccrc_view2)中。 图21:将UML Project 工件获取到你的本地Web 视图

Eclipse for C++使用说明

Eclipse(for C++)使用说明 1、启动eclipse,在命令行中输入eclipse,出现窗口,如下图所示: 2、添加工程 在file菜单中选择import,出现窗口如下: 3、在General下选择Existing Projects into Workspace,单击next,出现如下窗口:

4、点击Browse,选择工程位置,出现下图所示 5、单击Finish,工作区如下图所示:

6、修改build选项,有两种方法 方法一:在项目名称上单击右键,选择Properties 方法二:选中项目,在菜单栏,选择Project/Properties 出现下图: 在左边选择C/C++ Build,修改Build directory:选择File system,选择makefile所在的文件夹,点击OK 7、在菜单栏选择Project/Build All,整个项目开始编译,如下图所示:

8、Run,在菜单栏选择Run/Run Configurations,出现窗口如下: 选择Arguments,点击File System,然后选择可执行文件所在目录,点击Apply,Close 然后在工具栏点击,程序即可运行 9、Debug 在Project explorer中,选择可执行文件,然后在菜单栏选择Run/Debug As,出现如下对话框,或者在工具栏点击图标,配置如下图:

点击OK,会弹出如下窗口: 选择Yes,整个工作区将切换到debug模式,如下图所示:

10、切换工作区视图 11、其他 A、查看函数的定义,按下CTRL键后,将鼠标移动到函数名称上左键单击,即可跳转 到函数的定义处。 B、如果想返回到上一视图,在工具栏点击 C、将鼠标移动到函数定义处,然后按下F2键,即可在浮出的窗口中查看该函数的代码 D、在左边Project explore中双击文件,即可在工作区中打开该文件进行编辑 12、在Eclipse中使用CVS 在项目名上单击鼠标右键,在弹出的菜单中选择Team,会出现相关选项

eclipse知识教程(1)

ECLIPSE 黑油数值模拟基础 斯伦贝谢科技服务(北京)有限公司 Schlumberger Technology Services (Beijing) Ltd

目录 简介1 目的3 什么是油藏数值模拟 5 如何把模型与实际油藏联系在一起7 为什么要进行油藏数值模拟研究10 为什么选择ECLIPSE 12 ECLIPSE的功能14 ECLIPSE是如何工作的16 静态油藏描述19 PVT和岩石数据22 初始化数据24 井数据26 使用ECLIPSE进行油藏数值模拟研究28 如何使用手册30 文件的组织和结构33 ECLIPSE输入/输出结构35 ECLIPSE输出文件 37 ECLIPSE输出类型 41 输出文件名称44 文件位置48 宏命令的使用50 输入文件结构53

数据文件语法规则56 关键字语法58 各部分通用的关键字60 系统使用63 基本的UNIX命令65 VI编辑器69 RUNSPEC部分 73 RUNSPEC部分的作用 75 RUNSPEC部分关键字 78 不含RUNSPEC部分的数据文料81 GRID部分83 GRID部分的作用85 数据排列规则88 网格几何形状90 块中心网格实例94 角点网格实例97 网格模型格块属性99 如何指定网格格块属性101 传导系数规则109 笛卡儿网格的传导系数Ill 径向网格传导系数118 页岩模型121 传导系数修正124

非相邻连接NNC 128 断层处NNC的生成130 尖灭处NNC的生成132 局部网格加密(LGR)处NNC的生成134 双孔模型中的NNC 136 水体处NNC的生成138 径向网格中NNC的生成140 径向模型142 输出控制145 GRID部分关键字总结 148 GRID部分关键字149 EDIT部分153 EDIT部分的作用155 EDIT部分关键字总结157 PROPS部分—流体属性159 流体属性的作用161 黑油模型概述163 黑油及组分模拟167 油相状态方程169 用PVDO输入dead oi1的PVT属性172 用PVCDO输入dead oi1的PVT数据174 用PVTO输入live oil的PVT数据176 用PVCO输入live oi1的PVT数据178

Eclipse与CC集成操作手册

第一章综述 Eclipse开放工程是IBM集成开发工具,其强大完善的功能、开放的架构可以 适应各种级别的java开发。 Eclipse本身不集成有ClearCase ,需要添加插件才能集成。 第二章安装 Eclipse若要与CC集成,则需将ClearCase插件添加到Eclipse安装目录下的plugins文件里,如下所示: 配置结束后打开Eclipse,则在Eclipse的界面上显示ClearCase菜单项,如下图 所示:

第三章集成后的日常使用 3.1 创建工作区和共享文件夹 建立一个共享文件夹,用以存放视图信息(如:ccview_stg); 建立一个存放程序的文件夹(如:dzsbvob),该文件夹是用以存放从服务器上load下来的元素。 Eclipse的工作区(如:dzsb_work),该工作区用以存放Eclipse的相关信息;如下:

3.2 连接ClearCase Rational ClearCase 允许联机或脱机工作。如果决定访问 ClearCase 服务器,则必须与其连接。这里是必需的基本步骤。请注意,通常只需要连 接一次以启动任务的活动 要在Eclipse中连接到Rational ClearCase,请选择ClearCase→connect to Rational ClearCase菜单选项或单击ClearCase连接图标。当连接成功后,ClearCase里的菜单选项被激活。如下: 3.3 ClearCase创建视图 打开Project Explorer 控制台,如下:

在选择项目开发流(dzsb_dve_ks),右击→Create View,如下: 单击此菜单;

Eclipse操作指南

Eclipse操作指南和地质建模数据附录 第一部分Eclipse操作指南 一功能介绍 ECLIPSE100是一个全隐式,三维、三相,还包括天然气、凝析油选项功能综合的黑油模拟软件。 Eclipse的输入资料是用关键字系统自由格式输入的。任何标准的编辑程序都可以编辑输入文件。EDIT是一个可供选择的专门用于屏幕编辑的Eclipse编辑程序。当数据输入后,EDIT程序能检查输入数据。 Eclipse软件提供的角点模型和常规筷中心模型非常实用,在一、二和三维模拟中,径向和笛卡尔块中心点模型也都很有用。三维径向模型能模拟0~360o界面上的圆形流动(关键词COORDSYS)。 Eclipse角点模型是唯一的能对正确代表油藏最复杂的几何地质图形进行模拟。前处理程序FILL和GRID常用来准备eclipse油藏模拟的角点数据。独立图形的处理GRAF和GRID 程序能用多种方法显示网格。例如,在进行大型的三维模拟时,用户可要求同时显示在XZ 方向的多条横剖面。网格的平面透明覆盖图是十分有用的,它能正确地对地质平面图进行检查。 Eclipse软件有一套综合的单井控制选择程序。生产井能在给定的油量、水量、液量、气量、油藏流体废弃产量、井底压力和井口压力等数值下进行运算。油藏工程师应对上述数值中一项定出一个目标值,而对其余数值的各项定出限制值。生产井只要不超过限制,在规定的目标下工作。若一个限制值将要超越他的限制界限,那么生产井将自动改变它的控制模式,使井保持在允许的限制条件下工作。效率系数还可用于考虑正常的停产时间。该程序将能计算处于正常流动条件下的流量和流动压力,但累计流量按照有效系数进行扣除。这有助于历史拟合的全过程,生产井可处于另处一种控制类型。输入这些井实际生产的油、气和水量,使井处于相同的产液量的条件下生产,这样,甚至当含水率和气/油比不完全拟合时,压力下降的速度也是大致正确的。实际生产的和计算的这两个产量都可以编入汇总文件,以便进行图形对比。 二建模 1 建立实际模型(Flogrid建模) 煤层气产能数值模拟是跟实际的地质情况紧密联系的,在煤层气田地质和开发资料数据充足的情况下,需要建立包含各种地质参数的三维地质模型,在此基础上全面布井(虚拟井),进一步对所有井开展值模拟工作,从而达到气田产能预测的最终目的。

Eclipse教程入门到精通

Eclipse –入门到精通 初级篇 目录 0.环境说明 (8) 1.Eclipse 简介 (9) 1.1 历史背景 (9) 1.2 开发原始码软件 (10) 1.3 Eclipse 版本介绍 (10) 1.4 跨语言、跨平台 (11) 2. Eclipse Platform (13) 2.1 概观 (13) 2.2 架构 (13) 2.3 项目与资料夹 (14) 2.4 平台核心 (14) 2.5 工作区(workspace) (15) 2.6 工作台(workbench) (15) 2.6.1 视图(View) (16) 2.6.2 编辑器(Editor) (19) 2.6.3 视景(Perspective) (22) 2.7 重新排列视图和编辑器 (23) 2.7.1 放置游标 (23) 2.7.2 重新排列视图 (24) 2.7.3 并列编辑器 (25) 2.7.4 重新排列附加标签的视图 (26) 2.7.5 最大化 (27) 2.8 菜单和工具列 (28) 2.8.1 菜单 (29) 2.8.2 图标和按钮 (44) 2.9 视景 (49) 2.9.1 新视景 (49) 2.9.2 新窗口 (51) 2.9.3 储存视景 (52) 2.9.4 配置视景 (54) 2.10 作业和标记 (55) 2.10.1 不相关的作业 (56) 2.10.2 相关的作业 (56) 2.10.3 开启档案 (58) 2.11 书签 (58)

2.11.1 新增和检视书签 (59) Eclipse 中文教程.doc 第 4 頁,共 288 頁 2.11.2 使用书签 (61) 2.11.3 移除书签 (61) 2.12 快速视图(Fast View) (63) 2.12.1 建立快速视图 (63) 2.12.2 使用快速视图 (64) 2.13 比较 (65) 2.13.1 简单比较 (66) 2.13.2 了解比较 (67) 2.13.3 使用比较 (69) 2.14 历史纪录 (71) 2.15 回应 UI (73) 3.喜好设定(Preferences) ...................................................... 76 3.1 工作台(Workbench) (77) 3.1.1 外观(Appearance) (79) 3.1.2 功能(Capabilities) (80) 3.1.3 颜色和字型(Colors and Fonts) (82) 3.1.4 比较/修正(Compare/Patch) (83) 3.1.5 编辑器(Editors) (86) 3.1.6 档案关联(File Associations) (87) 3.1.7 按键(Keys) (90) 3.1.8 标签装饰(Label Decorations) (99) 3.1.9 链接资源(Linked Resources) (99) 3.1.10 历史纪录(Local History) (101) 3.1.11 视景 (102) 3.1.12 搜寻(Search) (104) 3.1.13 启动和关闭(Startup and Shutdown) (105) 3.2 Ant (107) 3.2.1 Ant 编辑器(Ant Editor) (107) 3.2.2 Ant 执行时期(Ant Runtime) (109) 3.3 建置次序(Build Order) (112) 3.4 说明(Help) (113) 3.4.1 说明服务器(Help Server) (115) 3.5 自动更新(Install/Update) (116) 3.6 Java (117) 3.6.1 外观(Appearance) (118) 3.6.2 类别路径变量(Classpath variables) (119) 3.6.3 程序代码格式制作器(Code Formatter) (120) 3.6.4 程序代码产生(Code generation) (122) Eclipse 中文教程.doc 第 5 頁,共 288 頁

相关文档
最新文档