组分数值模拟入门指南
#1
gulfmoon79
发表于 07-01-2008 - 21:48
精准.石油.论坛 forum.petro-china.com
做组分模拟前应该有很好的黑油模拟的基础。你应该先把黑油模拟做好以后再开始做组分模拟。在我写的过程中,我也假定你已经很好地掌握了黑油模型。涉及到黑油方面的内容时我不会做重复介绍。如果你有疑问,可以参照我以前写的黑油模拟入门指南。
关于组分模拟,大家首先会有下面一些疑问。为什么要做组分模拟?在什么情况下需要做组分模拟?组分模拟与黑油模拟有什么区别?组分模拟结果是不是一定比黑油模拟好?组分模拟用多少组分比较好?我先试着回答一下这些基本问题,然后我再介绍具体如何做组分模拟。
我们都知道,地下的流体的组成实际上是非常复杂的,可能含有成百上千的组分。地下流体以油或气相的形式存在。对于大多数油藏,我们基本上可以把地下流体分为两个组分,及油组分和气组分。油组分以油相的形式存在,气组分以气相的形式存在。两个组分会发生物质交换,及气组分会溶解到油相,油组分也会从气相挥发(油和气都不会溶解于水)。 这两个组分之间的物质交换可以用溶解油气比和(或)挥发气油比来表示。溶解油气比和挥发气油比都只是压力的函数。地下油气相的密度可以通过地面油气相的密度,溶解油气比以及体积系数来计算。油气相的体积系数也只是压力的函数。同样地下油气相的粘度也是压力的函数。这就是我们所熟悉的黑油模型。对于大多数油藏,采用这样的处理方式计算结果是有保证的。但并不是所有油藏都可以这样处理。比如凝析气藏,气藏温度很靠近临界温度,在开发过程中有许多独特的特性。在井底附近,压力低于露点压力,油相(重组分)析出而且饱和度大于临界含油饱和度,这时会发生油气两相流动。在远离井底附近,可能压力也低于露点压力,但含油饱和度低于临界含油饱和度,这时只有气相发生流动。在气藏中没有油相的析出,只是纯气相流动。所以在井底会有三个流动带,每个流动带的特性都不同。我们需要用到组分模型计算每个流动带的组分变化,是哪些组分从气相析出,析出的组分含量,这样我们可以计算出各个组分在油相和气相中的含量,从而得到油气相的饱和度,密度,粘度等属性。这样你的油气属性不像黑油模型那样只是压力的函数,在组分模型中它们同时也是组分的函数.我在后面会专门用一个章节介绍如何模拟凝析气藏,包括非达西流动,相渗曲线随流速的变化,井底附近拟压力处理等等。
另一种需要用到组分模型的情况是注气驱。对于黑油模型,任何注入气都没有区别。但实际上,不同的注入气,驱替效率不同。如果是混相驱,不同的注入气最小混相压力也不同。我们必须知道注入气的组成,才能更好的模拟驱替过程。
其他一些需要用到组分模型的情形有挥发油藏的模拟,组分分布变化显著的油气藏模拟,地层温度差别显著的油气藏以及机理性研究等。
全球估计至少百分比七十以上的数值模拟模型都是黑油模型,组分模型不多。一个制约组分模型应用的主要原因是计算时间。组分模型比黑油模型计算要慢很多。组分模型每一个时间步都要进行闪蒸计算,这部分计算可能占整个计算量的一半时间。组分越多,闪蒸计算所需要的时间越多。多一个组分,组分模型总计算时间可能会多出三倍。通常组分模型大都选用6到8个组分,不会更多。
----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
#2
sandstone
发表于 07-02-2008 - 01:19
精准.石油.论坛 forum.petro-china.com
----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
#3
gulfmoon79
发表于 07-02-2008 - 23:32
精准.石油.论坛 forum.petro-china.com
我之所以一开始就介绍对组分模型的输出结果的认识是因为我认为这是非常重要的一部分。比如说你建的是组分模型,你在做历史拟合,拟合油田产油量,产气量。首先你就应该知道模型计算的产油量,产气量与你实际测量的产油量,产气量是不是同一种情形。
模型计算输出的每口井产量都是针对分离器的产量。比如你有三级分离器,模型输出的产油量是最后一级分离器时的产油量。模型计算输出的产气量是每一级分离器分离的气量都折算到标准条件下的气量之和。折算过程是用理想状态方程:Psep*Vsep/Tsep = Pstd*Vstd/Tstd
sep: 分离器
std: 标态
P: 压力
V: 体积2
T: 温度
有时候你可能要拟合湿气的产量。模型计算输出的湿气产量是井口碳氢产量用理想状态方程折算到标态下的产量。你可以理解为分离器之前的碳氢产量。1摩尔理想气体在标态下占的体积为379.48立方英尺,那么湿气产量就应该等于井的摩尔产量乘以379.48。
你最好先找一个你使用的软件安装自带的组分模型,然后运行该模型,输出计算的油,气产量,湿气产量,摩尔产量,每级分离器的油气产量,然后自己手工算一下它们的关系。然后你可以尝试改变分离器条件(你需要定井底压力生产),你会发现你的油气产量发生了变化,但湿气产量并没有发生变化。
----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
#4
gulfmoon79
发表于 07-04-2008 - 00:34
精准.石油.论坛 forum.petro-china.com
组分模型输入参数大多数与黑油模型一样。
2.1: 模型网格改造: 完全一样
2.2: 模型网格属性: 完全一样
2.3: 相渗曲线: 完全一样
2.4: 毛管压力: 完全一样
2.5: 岩石压缩: 完全一样
2.6: 分区设置: 基本一样。但组分模型还可以设EOS分区。不同EOS分区可以赋不同的EOS参数。如果油田同时开采多套流体属性不同的油气藏,你可能需要进行EOS分区。不同EOS分区要求有相同的组分,比如如果一个EOS分区用了N2, CO2, C1, C2, C3, C456, C7+, 那么另一套EOS也应该用这几个组分,只不过对不同分区,它们的摩尔组成不同,EOS参数也可能不同。
如果你要采用多个EOS分区,你最好将EOS分区和平衡区设为一致。否则的化你的模型可能不会稳定。因为在组分模型中,你的油,气相的密度,饱和度等都是由EOS状态方程计算的,在进行初始化计算时,模型不光要保证压力,饱和度平衡,同时要保证热动力平衡(这部分在后面的模型初始化部分会详细介绍)。你的EOS分区如果与平衡区不一致,很可能会导致流体初始不平衡。
2.7: 流体参数:这是黑油模型和组分模型数据输入差别最大的地方。 黑油模型输入的是油,气的体积系数,粘度与压力的关系,油气比与压力的关系,这些关系都是以表的形式输入,软件在计算时直接查这些表,以及做相应的内插和外插值。但不做其他计算。组分模型完全不同,组分模型输入的是EOS状态方程参数。这些参数包括各个组分的命名,临界温度,临界压力,临界Z因子,分子量,偏心因子,OMEGAA,OMEGAB,参考密度,参考温度,二元相关系数,体积偏移等。同时需要输入所应用的状态方程,油藏温度,组分的组成或组分组成随深度的变化。如果粘度计算采用LBC相关式,那么还需要输入LBC系数。如果模拟混相驱的化,需要输入等张比容来计算油气相界面张力。油气的地面密度不需要输入,只需要输入水的地面密度,EOS状态方程会计算油气相的地面密度。
如果地面EOS状态方程参数与地下不同,那么可以输入地面条件下的EOS状态方程参数。模型在做地面分离器计算时,会应用地面条件下的EOS状态方程。
2.8: 初始化设置:黑油模型和组分模型输入参数很相近,但软件初始化计算方法有所不同,我在后面会详细介绍组分模型的初始化计算方法。
在这部分还需要定义油田分离器条件。软件应用油田分离器条件计算地面储量。
2.9: 生产控制部分: 对于组分模型,对每口生产井或井组,需要定义生产井或井组对应的分离器条件。软件应用地面分离器条件计算井的地面油气产量。
如果注气的化,不光需要指定注入量控制,还需要指定注入气的组分。
如果是气回注的化,只需要指定回注哪个井或井组的气,气的组分会自动计算。如果有些气是用于出售或燃料,那么在计算回注量前,模型会先扣除这些气量。
----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
#5
gulfmoon79
发表于 07-04-2008 - 20:03
精准.石油.论坛 forum.petro-china.com
我们上面说过,做组分模拟通常选用6个到8个组分就可以了。那么应该选哪些组分?下面是建议的工作流程:
3.1: 用你的PVT处理软件先辟分加组分(C7+或C12+等)。
3.2: 辟分完后拟合饱和压力,拟合相图,拟合实验室结果。
3.3: 组分合并。将辟分后的加组分合并为2到3个组分,保留C1为独立组分,将中间组分(C2,C3,C4,C5,C6)合并为两个组分。对于非烃类组分,可以合并到烃类组分或设为独立组分。
3.4: 重新拟合实验室数据
3.5: 输出EOS参数。
最好选用三参数状态方程,两参数状态方程不能准确预测液体密度。
粘度计算最好选用Pedersen方法,此方法比LBC方法精确。
4 PVT实验拟合
PVT实验拟合时,掌握EOS状态方程是基础。EOS状态方程有多种类型,比如二参数PR状态方程,三参数PR3状态方程,二参数SRK状态方程,三参数SRK状态方程,RK,ZJ,SW状态方程等。不同的状态方程有时候计算出来的结果差别可能很大,这其中最常用的是三参数PR3状态方程。
对于纯组分(C1,C2,C3,iC4,nC4,iC5,nC5,C6)而言,随着组分摩尔分子量的增加,组分的临界温度,沸点,临界体积,偏心因子,液体密度都是增加的,而临界压力和临界Z因子随组分摩尔分子量的增加是减小的。如果在你拟合以后这种单调性发生了变化,那你的拟合肯定有问题。
另外流体取样有井底取样和井口取样,在做井底取样时要保证样品在饱和压力以上。井口取样通常是实验室根据生产油气比将井口的油样和气样在实验室生成代表油藏条件的样品。当然你不可能影响取样,但你应该知道你拿到PVT实验报告的取样流程。如果取样有问题,样品根本不能代表油藏流体,那你的拟合就白费力了。
通常对不同的流体类型采用不同的PVT实验。比如对黑油通常进行差异分离实验(DL),等组分膨胀实验(CCE),对凝析气采用等容衰竭实验(CVD)和等组分膨胀实验(CCE)。另外还可能进行分离器实验,如果注气的化会进行一次接触混相实验,多次接触混相实验。你需要知道每个实验是怎么做的,最重要的是你需要知道你拿到的实验室报告结果中各相参数是如何定义的。比如你拿到的CCE实验中报告中的液体饱和度是用的液体体积除以饱和压力下的液体体积还是除以目前条件下的总体积。在你把你的实验结果输入到你采用的PVT分析软件中时你要检查它们用的定义是否一致。
你的PVT拟合实际上就是用你的PVT软件,调整EOS状态方程参数,使你的PVT软件用EOS计算的结果与你的实验室测量结果匹配,然后把拟合好的EOS输出给组分模型用于组分模拟的EOS和闪蒸计算。在你做PVT拟合时,你需要首先对你拿到的实验结果进行质量检查,不合格的样品和有问题的实验数据根本没必要费时间,你做也是白做,这样的数据用于模拟带来的问题更多。然后在拟合时你应该知道应该调整那个参数,如何调整各个参数,各个参数是如何影响结果的。最后是EOS的输出。下面介绍PVT拟合的步骤:
4.1:PVT实验报告的质量检查
. 确认取样压力在饱和压力以上,样品可以代表油藏流体。
. 报告中所有组分摩尔百分数之和为100。
. 组分物质平衡检查。对CVD实验,绘组分K值图,组分的Log(K)与压力。组分的K值图应该是单调变化的,组分K值线不会交叉,顺序为N2,C1,CO2,C2,C3,iC4,nC4,iC5,nC5,C6 ...Cn+.
.绘Hoffman-Crump-Hocott图,Kp与F因子,所有组分应该在一条直线上。
.检查实验结果的变化趋势是否正确。比如在CVD或CCE实验中液体密度随压力的降低应该增加。
.检查你的实验报告中各项实验结果的定义与你的软件是否一致。
.CCE,CVD,DL实验应该在油藏体积,分离器实验应该在地面条件。
4.2:选用哪个EOS状态方程
软件通常提供许多EOS状态方程,你至少应该选用三参数状态方程。常用的是三参数PR状态方程
4.3:给实验结果设权值
你拿到的实验结果数据很多,你可能不能将所有实验结果都拟合好,你应该知道哪些是你必须拟合好的。饱和压力应该是最重要的,饱和压力对你的数模计算影响是最大的,你应该给饱和压力一个很大的权值,比如5000,以便EOS能首先拟合好饱和压力。对凝析气藏,CVD实验中的液体析出量是非常重要的,如果你不能拟合好实验,你很可能在数模时拟合不上生产油气比。同样你需要给CVD实验中的液体析出量大的权值。分离器实验也很重要,你也需要设大的权值,比如1000。分离器实验直接与你的产量有关。对一些结果不可靠的实验,你可以设很小的权值,比如0.5.
4.4:在拟合时调整哪个组分的属性
通常你拿到的实验室报告组分会做到C7+或C12+,也有做到C22+甚至更多组分的时候。在你拟合实验结果时,你要知道有些组分属性是不能调整的,比如纯组分C1, C2, C3, IC4, NC4, IC5, NC5,C6以及H2O, H2S, N2, CO2, CO的临界压力,临界温度和偏心因子等这些应该不会变化,在你拟合时不要调整这些参数。重组分(C7.C8.C9....)的临界属性不确定,你可以调整。你拿到的实验室报告中最不确定的应该是加组分的属性(C7+,C12+等),加组分是大于此组分的无数组分的混合体,通常实验室会给出加组分的摩尔分子量和指定重度,属性来自于计算,不确定。因而对加组分属性的调整是PVT拟合的首选。
对加组分属性的调整有以下方式:
.辟分加组分:加组分是大于此组分的无数组分的混合体,实验室的测量根本不能精确描述加组分,通过辟分,将加组分辟分为几个重组分,通常会较容易的拟合实验室测量结果
.回归加组分的摩尔分子量:这样做的好处是使加组分的临界压力,临界温度等属性变化是一致的。
.回归加组分的属性:直接回归加组分的临界压力,临界温度或偏心因子等属性
4.5:组分属性如何影响结果
.组分的临界压力,临界温度,偏心因子影响饱和压力和液体析出量,所以在你拟合饱和压力和液体析出量时可以回归组分的临界压力,临界温度或偏心因子
.组分的体积偏移(Volume Shift)影响Z因子和液体密度,在拟合Z因子和液体密度时回归组分的体积偏移
.在回归时你可以让组分的体积偏移取决于组分的临界压力,临界温度,偏心因子,这样调整组分的临界压力,临界温度或偏心因子时也影响Z因子和液体密度。
.组分的临界Z因子或临界体积影响LBC的粘度,在用LBC方法计算粘度时要回归组分的临界Z因子或临界体积。注意粘度回归是单独进行的,你先把其他测量结果拟合好后再对粘度进行单独回归,粘度回归不影响其他结果。
.二元相关系数的回归一定要小心,不合理的回归在进行组分模拟时会导致严重的收敛性问题。
.组分的Omega属性也是可以进行回归的。
4.6:输出EOS
你拟合PVT的目的是为了给组分模拟提供EOS状态方程。在拟合好以后你需要输出EOS状态方程。
----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
#6
gulfmoon79
发表于 07-10-2008 - 23:36
精准.石油.论坛 forum.petro-china.com
组分模型同黑油模型一样,可以采用平衡初始化方法,手工建立初始场分布方法和拟合初始含水分布方法。下面对各种方法进行一一介绍。
5.1:平衡初始化方法:
我们在黑油模型入门指南中介绍黑油模型的平衡初始化步骤为:
(1)计算过渡带高度。由油水界面和油气界面深度以及相渗曲线提供的最大毛管压力计算。
(2)计算每一个网格初始的油相,水相,气相压力分布。首先将在流体属性部分提供的油,气,水地面密度折算为地下密度。基于参考点的深度和对应压力以及油水界面,油气界面深度,过渡带高度,结合油,气,水地下密度计算其他深度处的油,气,水相压力。
(3) 由每个网格的油,气,水压力计算油水和油气毛管压力
(4) 计算饱和度分布。这部分计算主要用你提供的相渗曲线端点值。将油水界面以下的含水饱和度设为你在油水相渗曲线中提供的最大含水饱和度,通常为1。将油气界面以上的含气饱和度设为你提供的油气相渗曲线的最大值。油气界面以上的含水饱和度为束缚水饱和度。在油区的含油饱和度为1减束缚水饱和度。在过渡带的含油和含水饱和度由你提供的毛管压力曲线得到。
组分模型的初始化与黑油模型有相同之处。组分模型也是先计算模型所有网格初始压力,然后根据油水,油气界面,毛管压力曲线,相渗曲线端点值来计算初始饱和度的分布。不同之处在于组分模型不光需要保证初始压力和饱和度场的平衡,同时也需要保证初始组分分布的平衡。组分是否平衡是通过状态方程来计算的。
你如果采用平衡初始化方法,你需要指定参考深度,参考深度对应的压力,油水界面,油气界面信息。同时你也需要指定初始油相或气相对应某深度或随深度变化的组分组成。如果你的油气界面在油藏内(初始是油气两相分布),你的参考深度应该设在油气界面,同时参考深度对应的压力应该等于饱和压力。
你的输入参考压力,参考深度,油气界面与你输入的组分组成应该匹配,否则很容易造成初始不平衡。比如你输入的油气界面在3000米,那么在3000米以下应该是油相。但是如果状态方式通过你输入的组分组成计算结果在3000米以下是气相,你的状态方程计算的初始界面与你的油气界面设置的油气界面不同,你的模型初始分布不平衡。你或者需要修改油气界面,或者需要修改参考压力,或者该深度对应的组分组成不对。
状态方程是通过网格流体的临界温度与油藏温度的比较来判断油气相的。如果该网格流体计算的临界温度大于油藏温度,那么此网格应该是油相,如果该网格流体计算的临界温度小于油藏温度,那么此网格应该是气相。如果你设置的油气界面或压力与你的组分组成很不匹配,软件会试图修改计算的网格流体临界温度来使之与油藏温度相等。你可能在输出结果中见到过LI因子,如果此因子不等于1,说明你的初始输入参数不匹配。
通过上面的介绍你可能意识到组分模型与黑油模型一个很大的不同。组分模型需要进行相的标识计算。你可能在模拟过程中会发现一个网格在一个很小的时间步会从百分之百含气变成百分之百含油,这就是相标定的问题,尤其在靠近临界点,这现象更明显。
5.2 赋值方法
在黑油模拟中我们说过,最好不要进行手工赋值。因为不容易保证初始平衡。在组分模拟中,手工赋值会更难,因为你还需要保证初始组分组成的平衡。
你不光需要输入每个网格的压力,饱和度,还需要输入每个网格气相和液相组分的组成,你需要保证你输入的饱和度与每个网格气相和液相组分的组成匹配,否则你会发现你的网格初始化计算后的饱和度并不等于你设置的饱和度。
5.3 拟合初始含水分布
这与黑油模拟是一样的。你提供初始含水饱和度场数据,软件会通过标定输入的毛管压力曲线来拟合初始含水饱和度。具体标定过程如下:
假如一个网格提供的初始含水饱和度是0.6,其对应模型初始输入毛管压力曲线中的毛管压力值为1, 网格由初始平衡计算的毛管压力为5,模型初始输入毛管压力曲线中的最大毛管压力值为10,那么标定后这个网格毛管压力曲线的最大毛管压力值为10×(5/1)=50.
这个网格的毛管压力在标定前后是不变的(这是由油水界面和油水密度决定的),因而这个标定过程可以理解为用手拉着输入毛管压力曲线的最大值上下移动,直到这个网格的毛管压力在标定前后不变
----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
#8
gulfmoon79
发表于 07-23-2008 - 23:04
精准.石油.论坛 forum.petro-china.com
组分模拟需要定义井的分离器条件。前几天这里有人问过在初始化时提供的油田分离器条件与这里井的分离器条件有什么区别。在初始化部分提供的油田的初始化条件是用于计算地面的储量,而在生产控制部分提供的井的分离器条件是进行井的生产或注入控制。
除了需要提供生产井的分离器条件外,对于注气井,需要定义注入气的组分组成。黑油模型注入气是没有区别的,其属性由你提供的PVT表来表示。组分模型不同,不同的注入气驱替效果不同。比如不同的注入气,最低混相压力不同。你可以把产出气进行回注,这时你不需要定义注入气组分,因为模拟器知道产出气的组分组成。
组分模型的历史拟合与黑油模型一个最大的不同之处在于在拟合时你可能需要重新处理EOS参数。你的流体属性(密度,粘度,体积系数,油气比等)都是EOS计算出来的(粘度是用相关式),正如在进行黑油模型的历史拟合时你可能需要调整PVT参数,在组分模型拟合时你可能需要调整EOS参数。
通常一个有效的办法是你先选择一口生产数据和测试数据比较齐全的井做单井模拟,用这口井的数据标定EOS参数,然后在做油田拟合时可以不再调整EOS参数。
在黑油模型的入门指南中我们介绍了产量预测的各种控制方式,在组分模型中你也都可以采用。另外对于组分模型,你还可以进行:
(1) 销售气量控制
(2) 燃气量控制
(3) 湿气产量控制
(4) 湿气注入控制
(5) 季节性调整供应气
(6) 液化气生产控制
----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
#9
gulfmoon79
发表于 07-31-2008 - 22:02
精准.石油.论坛 forum.petro-china.com
做组分模拟需要对状态方程及闪蒸计算有基本了解。你可能不需要完全掌握其计算过程,但对其中涉及到的一些参数你应该知道其意义。状态方程及闪蒸计算涉及到大量的数学方程,你如果感兴趣,可以找相关资料,我在这里只做最基本的介绍,不涉及任何数学公式。(霍金在写时间简史时编辑告诉他书中每加一个数学公式书的销售量将减一半,结果霍金只加了一个公式,可能是全世界最知名的数学公式)。
我们知道在黑油模型中存在油气水三相,油气都不溶解于水中,但气会溶解到油中(溶解气),油也可以在气相中存在(挥发油)。通过用户提供的溶解油气比或气油比与压力的关系表,模型可以计算出在生产或注入过程中油气相的分布。
组分模型与此有很大不同。在组分模型中,通常也假定油气相与水相不会有物质交换(这个假定不完全成立,可以用特定功能模拟油气相在水中的溶解,比如CO2溶解于水)。但各个组分可以以气相存在,也可以以液相存在。对每一个组分,在每一个时间步,模型需要计算该组分在气相的摩尔分数,在液相的摩尔分数。然后根据此结果可以计算出气相和液相的摩尔分数,油气相的饱和度,油气相的密度以及粘度等相关参数。整个的计算过程用的就是状态方程和闪蒸计算。
在进行状态方程和闪蒸计算时,会涉及到以下一些参数:
(1) 平衡常数(K值):某组分在气相中的摩尔分数除以在液相中的摩尔分数。
(2) 液相摩尔分数:液相摩尔数除以总摩尔数。
(3) 气相摩尔分数:气相摩尔数除以总摩尔数。
液相摩尔分数加气相摩尔分数等于1
(4) 组分气相摩尔分数:某组分在气相中的摩尔数除以气相总摩尔数。
(5) 组分液相摩尔分数:某组分在液相中的摩尔数除以液相总摩尔数。
(6) 组分总摩尔分数:某组分总摩尔数除以流体总摩尔数
(7) 摩尔密度: 组分摩尔数除以油藏体积
(8) 逸度:按照WIKE百科的解释,逸度是以压力改变方式对物质化学势能的测量。其反映的是物质倾向于以液相或气相存在。可以理解为逃逸趋势。
状态方程有多种,常用的是PR和SRK方程。不同的状态方程对PVT的计算结果也会有所不同。状态方程又有两参数和三参数状态方程之分。两参数状态方程在预测液体密度方面会有较大误差。三参数状态方程增加了组分的体积偏移量,大大改善了对液体密度的计算。所以在组分模拟中最常用的还是三参数PR方程。
闪蒸计算就是计算组分在液相和气相中的分布。闪蒸计算需要应用到热力学平衡计算。根据热力学平衡理论,在平衡时,每个组分在气相中的逸度和在液相中的逸度应该相等。逸度是温度,压力和组分组成的函数。每个组分的逸度大小可以由状态方程来计算。在进行闪蒸计算时,首先需要计算平衡常数,这是通过迭代计算得到的。
闪蒸计算的大约计算步骤是这样的:
(1) 对每一组分赋平衡常数值
(2) 解闪蒸方程,得到气相摩尔分数
(3) 计算每一组分的气相和液相摩尔分数
(4) 由状态方程计算每一组分的气液相逸度
(5) 检查气液相逸度是否相等,不相等的化重新设平衡常数值
(6) 由组分的摩尔密度,气液相摩尔分数计算油气水饱和度分布
(7) 计算油气密度,粘度等参数
----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
#10
gulfmoon79
发表于 09-22-2008 - 20:01
精准.石油.论坛 forum.petro-china.com
组分模型最常用于模拟凝析气藏和混相驱。由于凝析气藏的特殊流动特性,在模拟凝析气藏时,通常要应用到一些特殊模拟功能,比如拟压力,非达西流,相对渗透率随流速的变化等。你需要知道这些功能的作用以及为什么需要应用这些功能,如何应用这些功能。
石油界很早就认识到凝析气藏在开采过程中可以分为三个流动带。在井底附近压力下降最大,当压力低于露点压力后,液体析出,液体饱和度增大到一定程度,液体开始流动。这可以称为第一流动带。在离井底较远地带,虽然压力可能已经低于露点压力,但液体饱和度很小,液体还不能发生流动,这可以称为第二流动带。在气藏内部,压力可能高于露点压力,只有单相气相,这可以称为第三流动带。
在第一流动带,气液两相共存,而且两相都参与流动。气液总组分组成恒定,油气比为常数。随着气藏开发,压力下降,第一流动带会逐渐增大。第二流动带也是气液两相共存,但由于液相饱和度小,只有气相流动。随着气藏开发,压力下降,第二流动带会逐渐变小。第三流动带压力大于露点压力,单相气相存在。
气井在开采过程中,压力下降,当压力低于露点压力后,液相开始析出,液相在井底附近累积,第一流动带逐渐扩大。由于液相饱和度的增加,降低了气相流体相对渗透率,导致气产量的下降。这是大家常说的凝析油堵塞。
除了凝析油堵塞会导致气产量下降,非达西流动也是一个重要影响因数。由于气相的高速流动,惯性力远大于粘性力,流速和压降成非线型关系,非达西流动导致了额外压力降。非达西流动不只在井底附近发生,在气藏中气相的流动也呈非达西流动。
虽然凝析油堵塞和非达西流动应该导致气相产能的降低,但在实际生产过程中发现气相产能的降低并不像理论预测的严重,这是由于高速流动气体对凝析油的速度剥离效应,导致气相相对渗透率没有明显降低。也就是说,这时相对渗透率受流速的影响。
凝析气藏在生产过程中存在非达西流动,近井凝析油堵塞以及流速影响相对渗透率,下面介绍数值模拟如何模拟这些现象。
8.1:模拟非达西流动。
通过试井结果可以得到井的D因子,这个参数可以直接赋给井模型,模拟器在计算井的连接系数时将用到D因子。
发生在气藏中的非达西流动用Forchheimer模型来模拟,这时需要提供Forchheimer参数。这个参数可以作为历史拟合的参数,或先进行单井模拟,将拟合好的Forchheimer参数用于气田模型。
8.2:模拟相对渗透率随流速变化
模型需要计算毛管数,通过毛管数计算混相相对渗透率曲线。模型用混相相对渗透率曲线与用户提供相对渗透率曲线根据用户提供的参数来计算相对渗透率随流速变化。
8.3:模拟拟压力
如果网格很小的化可以不用模拟拟压力,模型可以精确描述井筒附近流体流度的变化。但如果网格较大,需要应用拟压力。这时模型在计算井流时将附加计算阻流系数。
你可以先建一个单井细网格模型,不用拟压力。然后再建一个单井粗网格模型,用拟压力。这两个模型应该得到同样的生产动态效果。
8.4:ECLIPSE软件如何模拟凝析气藏。
(1)WDFAC定义井的D因子
(2)VDFLOW指定气藏中常非达西流动系数
(3)VDKRO和VDKRG定义气藏中的非达西流动参数,软件用Forchheimer模型计算非达西流动系数
(4) PSEUPRES激活拟压力计算
(5)VDKRO,VDKRG,VDKRGC指定相对渗透率随流速变化参数。
8.5:关键点
先建单井模型,进行单井模拟,然后再应用到全气田模型中。
----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
#11
sunyikun
发表于 09-22-2008 - 21:30
精准.石油.论坛 forum.petro-china.com
以前记得在同一单位问师兄关于数模的东西,人家死活不说,要不就是问烦了给你蹦出一句让人摸不着头脑但又感觉深不可测的话, 所谓教会徒弟饿死师父,那是真真正正的就说这个技术传承的偏见和无奈.可是自看了您的博客后,不仅被您的一针见血且快速的问题回复所折服,更惊讶的是您系统化的贴出黑油模拟的技术操作细节, 还有紧接着的令人神秘莫测的组分模拟的技术秘籍, 让人感到,你在此行业的功力非同小可。句句珠玑,字字铿锵,真是一篇勘比一篇精彩、这些问答,集锦是难得的数值模拟宝典。
更有一句"不回答盗版的任何问题", 彰显出您在道德品格方面也是出众拔粹.德艺双修.相较国内一些"概不传外"的狭隘之见真是天上地下, 境界显分。 如果真的有一天后进中有能什么造诣,您的领引和指导将永远被深刻铭记,正如众多作者在扉页上所镌刻,献给引领我入门,得以能够坚持在此行业......
再次真诚的说一句,辛苦了月光版。
----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
#13
fdzhou8896
发表于 10-30-2008 - 11:34
精准.石油.论坛 forum.petro-china.com
----
来源: 精准石油论坛 - 推进信息共享,提升科技水平
#14
阿&良
发表于 11-11-2008 - 16:47
精准.石油.论坛 forum.petro-china.com
你是我们的榜样!!!
敬佩月光老师的无私!衷心祝愿你身体健康,阖家欢乐!
谢谢您了,太感谢你的无私、知识的渊博、好东东
:support: 月光姐姐太伟大了!感激不尽!
支持
感谢月光老师!!!!!
感谢月光姐姐
我毕业设计就是组分模拟,谢谢月光姐姐!!!
谢谢您了!
非常感谢!
太感谢了,虽然我现在是一点都不懂,但是很想学好啊!
太感谢了,虽然我现在是一点都不懂,但是很想学好啊!
十分感谢
您一直是我的榜样!
十分感谢!专家!
谢谢月光老师!不知道你能不能到北京来举办讲座呢?
谢谢月光老师指导啊!
感谢,心中的疑惑明朗了许多。
您真的太无私了!
感谢月光姐姐,您辛苦了
感谢月光姐姐,您辛苦了。
正在开始学习组份模型,太及时了!
刚刚知道这个论坛,但是通过这篇文章后,感觉真是有好心人,无私的奉献自己的知识啊! :support:
谢谢,真是太伟大了
一个真正的好人!
简直就是伟大的好人!
简直不知道说什么好啊,好人啦!
非常感谢
非常感谢!!!!!!
感谢月光姐姐无私的奉献!
不知道月光老师回国过没?衷心祝福你幸福一生!
月光姐姐,你非常伟大,非常感谢!
月光姐姐,你非常伟大,非常感谢!
golfmoon姐姐这种人多出现几个就好了!
谢谢月光老师!
引用框(blue-water @ 2008-10-02, 20:23 pm)
问个与学术无关的问题:我看到论坛里很多人都称gulfmoon为月光姐姐,gulfmoon是位女士?
呵呵,希望不要拍砖!
谢谢月光老师! 您的无私让我感动!谢谢!
GREAT!
敬佩中
呵呵,偶尔路过,相当敬佩!
really good!
支持月光姐姐,非常感谢你!
功力相当地深厚!
感谢月光大姐,很长时间我没来这个网站了。
太感谢了~~~
非常感谢月光老师
月光老师,您辛苦了!衷心祝愿您:身体健康、工作顺利。
感谢月光老师 ,谢谢您的无私奉献
首先非常感谢您,我是一个初学者,看了您的讲解有了谢了解。
我有一个问题,如果我想做CO2和N2的驱替的话,但是我手里的PVT实验数据组分中只有N2,没有CO2,像这样的情况怎么办?
----
来源: 精准石油论坛 - 推进信息共享,提升科技水平

登录
注册
帮助

多重回复