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.
|
|
|
|
|
#pragma once
|
|
|
|
|
|
#include "iAlgPvtBase.h"
|
|
|
|
|
|
#include "gasZg.h"
|
|
|
|
|
|
|
|
|
|
|
|
// 气体压缩系数
|
|
|
|
|
|
class M_PVT_EXPORT gasCg : public iAlgPvtBase
|
|
|
|
|
|
{
|
|
|
|
|
|
private:
|
|
|
|
|
|
|
|
|
|
|
|
enum PvtAlgMethod
|
|
|
|
|
|
{
|
|
|
|
|
|
PM_Dranchuk = 0
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
gasCg();
|
|
|
|
|
|
|
|
|
|
|
|
// 绑定成员变量
|
|
|
|
|
|
virtual void bindMembers();
|
|
|
|
|
|
|
|
|
|
|
|
// 虚函数,计算函数
|
|
|
|
|
|
virtual bool cal(VecDouble vecIns, VecDouble& vecOuts);
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
|
|
|
|
|
|
bool dranchuk(VecDouble vecP, VecDouble& vecCg);
|
|
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
|
|
|
|
|
|
double m_dTpr; //tpr,拟对比温度,Tpr=T/Tc,温度与临界温度的比值,无量纲
|
|
|
|
|
|
double m_dT; // rt,油藏温度,°C
|
|
|
|
|
|
double m_dTc; //tc,临界温度,不同的组分有不同的临界温度值,°C
|
|
|
|
|
|
|
|
|
|
|
|
double m_dRg; //rg,气体比重,该气体的密度与空气密度之比,无量纲,具体情况具体分析,0.55-0.8
|
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|