You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nmWTAI-Platform/Include/mAlg/mAlgPvt/gasOilRatio.h

48 lines
1.4 KiB
C

#pragma once
#include "iAlgPvtBase.h"
// 定义计算气油比方法名称
enum egasOilRs
{
StandingRS = 0,
LasterRS,
VasquezAndBeggsRS,
GlasoVolatileRS,
GlasoNoVolatileRS
};
// 计算气油比方法
class M_PVT_EXPORT gasOilRatio : public iAlgPvtBase
{
public:
gasOilRatio();
// 绑定成员变量
virtual void bindMembers();
// 虚函数,计算函数
virtual bool cal(VecDouble vecIns, VecDouble& vecOuts);
public:
bool laster(VecDouble vecIns, VecDouble& vecOuts);
bool standing(VecDouble vecP, VecDouble& vecRs);
bool vasquezAndBeggs(VecDouble vecP, VecDouble& vecRs);
bool glasoVolatile(VecDouble vecP, VecDouble& vecRs);
bool glasoNoVolatile(VecDouble vecP, VecDouble& vecRs);
private:
double m_dRo; //ro,油相比重该油相的密度与4℃时纯水的密度之比无量纲具体情况具体分析,0.8-0.9
double m_dRg; //rg, 气体比重,该气体的密度与空气密度之比,无量纲,具体情况具体分析,0.55-0.8
double m_dyg; //yg, 混合物中气体摩尔分数,无量纲,没有默认值,甲烷0.85 其他比较小
//double m_dMo; // 油的视分子量,无量纲,100-150
double m_dT; //rt,油藏温度°C
double m_dPsep; //Psep,分离器压力MPa0.79111
double m_dTsep; //tsep,分离器温度F60F
};