当前位置:半城文秘网 >范文大全 > 公文范文 > 基于Java2D的数值模拟绘图系统研究与实现

基于Java2D的数值模拟绘图系统研究与实现

时间:2022-10-21 11:48:02 来源:网友投稿

摘要:大庆油田勘探开发研究院开发研制了具有自主知识产权的聚合物驱油数值模拟软件POLYGEL模型,该模型是一个能够满足油田实际需要的模拟机理完善的聚合物调驱数值模拟软件,具有调剖、多种分子量聚合物驱分质分注等模拟功能,该模型在驱油机理和物理化学现象描述方面已经达到了国际先进水平。然而,POLYGEL模型没有基于微机版本的数值模拟绘图展示系统,使数值模拟的工作效率大为降低,并且也限制了研究院开发研制的数值模拟软件在采油厂的推广应用力度,该文针对上述问题,旨在实现一个操作简捷、性能优越的绘图展示系统,从而使POLYGEL模型的模拟结果更加直观可靠。

关键词:聚合物驱;仿射变换;渗透率;饱和度

中图分类号:TP3文献标识码:A文章编号:1009-3044(2009)25-7222-02

The Research and Implement of Numerical Simulation Drawing System Based on Java2d

LING Yu

(Daqing Oilfield Exploration and Development Institute, Daqing 163712, China)

Abstract: Daqing Oilfield Exploration and Development Institute developed numerical simulation software –POLYGEL model- in polymer flooding that is self-owned intellectual property rights. Its flooding mechanism is healthiness, which can flexibly control profile, separately inject multimolecular polymer flooding based grade. Therefore, it has achieved international advanced level in flooding mechanism and description phenomenon of physics and chemistry. But, POLYGEL model run short of drawing system to display simulation result. This paper aims to develop a operation easily and performance perfectly drawing system to intuitively display simulation result.

Key words: polymer flooding; affine transformation; permeability; saturation

大庆油田历经三次采油,目前聚合物驱油技术已广泛开展。由大庆油田勘探开发研究院自主开发研制的POLYGEL模型是一个能够满足油田实际需要的模拟机理完善的聚合物调驱数值模拟软件,具有调剖、多种分子量聚合物驱分质分注和聚合物弹性提高微观驱油效率等模拟功能,该模型在驱油机理和物理化学现象描述方面已经达到了国际先进水平。本文首先剖析了POLYGEL文件结构,然后对功能进行设计,旨在实现一个操作简捷、性能优越的绘图展示系统,从而从不同时间、不同地层、不同属性描述POLYGEL模型的模拟结果,并使用正则表达式、内存映射等技术提高系统性能,最终使POLYGEL模型的模拟结果更加的直观可靠。

1 绘图基本原理研究

1.1 文件格式剖析

POLYGEL文件一般在200M左右,结构如图1所示,首先是网格的描述信息,包括多个分层的地质平面,接下来是坐标的描述信息,指定了网格的地理坐标,然后是聚合物驱描述的静态信息,即每一个网格对应一个值,这些值描述了地层的厚度、深度、孔隙度和各个方向的渗透率等,接下来是当前时间井的生产现状;再接着描述了聚合物驱对这一地理区域应用的动态结果信息,包括未来某一时间地层的压力、含水饱和度、含油饱和度和井在当前时间的生产现状等。

1.2 仿射变换

本文的坐标系统在地理坐标、屏幕坐标和页面坐标之间进行变换,将采用二维仿射变换,它是一种二维坐标到二维坐标之间的线性变换,保持二维图形的“平直性”和“平行性”。仿射变换可以通过一系列的原子变换的复合来实现,包括:平移(Translation)、缩放(Scale)、翻转(Flip)、旋转(Rotation)和剪切(Shear)。基本原理如公式(1)所示:

(1)

令实现平移变换,将每一点移动到(x+tx, y+ty)。

令实现缩放变换,将每一点的横坐标放大(缩小)至sx倍,纵坐标放大(缩小)至sy倍。

令实现旋转变换,目标图形围绕原点顺时针旋转?鄣弧度。

令实现剪切变换,相当于一个横向剪切与一个纵向剪切的复合。

2 绘图系统的设计与实现

2.1 绘图系统基本功能

绘图系统基本功能如图2所示。

2.2 调色板的实现

应用中,当调色板有所变化时所有与颜色相关的对象也要发生相应的变化,程序使用观察者模式实现这个功能,如图3所示。

另外调色板中还使用了统计分析、颜色插值,颜色反转等功能。

2.3 性能提升

由于POLYGEL文件稍大,一般在200M左右,如果要绘制某一时间,某一地层的属性图时,搜索时间较长,不利于用户的使用,本文通过内存映射技术,并使用哈希表建立内存索引大大提高访问速度,使用“时间+属性名+层号”作为哈希表的键,内存指针作为哈希表的值,从而实现了地层属性的即时绘制。

另外,由于POLYGEL文件为文本文件,本文大量使用正则表达式,从而提高文件的查询、抓取、定位速度。

2.4 实现结果展示

本文在Netbeans环境下使用Java语言进行开发,图4展示了某地区实施聚合物驱油后2009年到2010年含水饱和度的变化,从而可以直观的看出使用聚合物驱油后,该地区含水饱和度受到的影响。

图5通过使用调色板对图形进行控制,通过调色板可以实现颜色统计,压缩,插值、反转和滤除“孔洞”(无效值)等功能。

3 结束语

本文通过对POLYGEL文件进行剖析,使用Java2D技术实现了POLYGEL数值模拟的绘图系统,无论是在性能上还是在功能上都达到了用户的要求,为进一步POLYGEL数值模拟技术的推广打下了良好的基础,从而更好的服务于油田开发的建设。

参考文献:

[1] TIM BOUNDREAU,AROSLAV TULACH,GEERTJAN WIELENGA.叶亮译.NETBEANS富客户端编程权威教程[M].北京:清华大学出版社,2008.

[2] 林丽娜.油田等值线图形绘制方法与应用[D].吉林大学硕士论文,2005.

[3] (美)BRUCE ECKEL.陈昊鹏译.Java编程思想(第四版)[M].北京:机械工业出版社,2007.

推荐访问: 数值 绘图 模拟 研究 系统