天然气组分计算api完成
This commit is contained in:
parent
e35df8935d
commit
e31d6f8593
@ -2,7 +2,9 @@ package com.ruoyi.ngCalTools.controller;
|
|||||||
|
|
||||||
// GasController.java
|
// GasController.java
|
||||||
|
|
||||||
|
import com.ruoyi.common.core.domain.AjaxResult;
|
||||||
import com.ruoyi.ngCalTools.model.GasProps;
|
import com.ruoyi.ngCalTools.model.GasProps;
|
||||||
|
import com.ruoyi.ngCalTools.model.FlowProps;
|
||||||
import com.ruoyi.ngCalTools.service.DetailService;
|
import com.ruoyi.ngCalTools.service.DetailService;
|
||||||
import com.ruoyi.ngCalTools.service.GBT11062Service;
|
import com.ruoyi.ngCalTools.service.GBT11062Service;
|
||||||
import com.ruoyi.ngCalTools.service.ThermService;
|
import com.ruoyi.ngCalTools.service.ThermService;
|
||||||
@ -19,20 +21,56 @@ public class GasController {
|
|||||||
public GBT11062Service gbt11062Service;
|
public GBT11062Service gbt11062Service;
|
||||||
|
|
||||||
|
|
||||||
@PostMapping ("/calculate")
|
|
||||||
public GasProps calculateProperties(@RequestBody GasProps tempPar) {
|
@PostMapping ("/flowCalc")
|
||||||
Zcal(tempPar, 0);
|
public FlowProps flowCalc(@RequestBody FlowProps flowProps) {
|
||||||
return tempPar;
|
GasProps gasProps=new GasProps();
|
||||||
|
AjaxResult ajaxResult=new AjaxResult();
|
||||||
|
return ( flowProps);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping ("/ngCalc")
|
||||||
|
public GasProps ngCalc(@RequestBody FlowProps flowProps) {
|
||||||
|
|
||||||
|
thermService=new ThermService();
|
||||||
|
detailService=new DetailService();
|
||||||
|
gbt11062Service=new GBT11062Service();
|
||||||
|
|
||||||
|
GasProps gasProps=new GasProps();
|
||||||
|
gasProps.dPf=flowProps.getdPf()*1000000;
|
||||||
|
gasProps.dTf=flowProps.getdTf()+273.15;
|
||||||
|
gasProps.dCbtj=flowProps.getdCbtj();
|
||||||
|
|
||||||
|
// 分割字符串
|
||||||
|
String[] stringArray = flowProps.getdngComponents().split("_");
|
||||||
|
double[] doubleArray = new double[stringArray.length]; // 遍历字符串数组,将每个元素转换为 double 类型
|
||||||
|
for (int i = 0; i < stringArray.length; i++) {
|
||||||
|
try {
|
||||||
|
doubleArray[i] = Double.parseDouble(stringArray[i])/100;
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
// 处理转换异常
|
||||||
|
System.err.println("无法将字符串 " + stringArray[i] + " 转换为 double 类型: " + e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
gasProps.adMixture = doubleArray;
|
||||||
|
Crit(gasProps,0); //计算临界流函数所有参数都计算了
|
||||||
|
|
||||||
|
return gasProps;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public int NG_Cal_Init() {
|
public int NG_Cal_Init() {
|
||||||
//create object for calculating density
|
//create object for calculating density
|
||||||
if (null == detailService) {
|
if (null == (detailService=new DetailService())) {
|
||||||
return GasConstants.MEMORY_ALLOCATION_ERROR;
|
return GasConstants.MEMORY_ALLOCATION_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
//create object for calculating thermodynamic properties
|
//create object for calculating thermodynamic properties
|
||||||
if (null == thermService) {
|
if (null == (thermService=new ThermService())) {
|
||||||
return GasConstants.MEMORY_ALLOCATION_ERROR;
|
return GasConstants.MEMORY_ALLOCATION_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -70,7 +108,6 @@ return tempPar;
|
|||||||
gasProps.dCstar = 0;
|
gasProps.dCstar = 0;
|
||||||
return gasProps.dSOS;
|
return gasProps.dSOS;
|
||||||
}
|
}
|
||||||
|
|
||||||
public double Crit(GasProps gasProps, double dPlenumVelocity)
|
public double Crit(GasProps gasProps, double dPlenumVelocity)
|
||||||
{
|
{
|
||||||
//variables local to function
|
//variables local to function
|
||||||
@ -174,22 +211,7 @@ return tempPar;
|
|||||||
return gasProps.dZf;
|
return gasProps.dZf;
|
||||||
|
|
||||||
}
|
}
|
||||||
double Cperf(GasProps gasProps)
|
|
||||||
{
|
|
||||||
|
|
||||||
double k, root, exponent;
|
|
||||||
|
|
||||||
k = gasProps.dKappa; root = 2.0 / (k + 1.0);
|
|
||||||
exponent = (k + 1.0) / (k - 1.0);
|
|
||||||
|
|
||||||
return (Math.sqrt(k * Math.pow(root, exponent)));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
double CRi(GasProps gasProps)
|
|
||||||
{
|
|
||||||
return (Cperf(gasProps) / Math.sqrt(gasProps.dZf));
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -4,6 +4,447 @@ public class GasProps {
|
|||||||
// corresponds to the control group in meter classes
|
// corresponds to the control group in meter classes
|
||||||
public int lStatus; // calculation status 计算状态
|
public int lStatus; // calculation status 计算状态
|
||||||
public boolean bForceUpdate; // 执行全部计算的标志 signal to perform full calculation
|
public boolean bForceUpdate; // 执行全部计算的标志 signal to perform full calculation
|
||||||
|
|
||||||
|
public double[] getAdMixture() {
|
||||||
|
return adMixture;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAdMixture(double[] adMixture) {
|
||||||
|
this.adMixture = adMixture;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getlStatus() {
|
||||||
|
return lStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setlStatus(int lStatus) {
|
||||||
|
this.lStatus = lStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isbForceUpdate() {
|
||||||
|
return bForceUpdate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setbForceUpdate(boolean bForceUpdate) {
|
||||||
|
this.bForceUpdate = bForceUpdate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double[] getAdMixtureV() {
|
||||||
|
return adMixtureV;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAdMixtureV(double[] adMixtureV) {
|
||||||
|
this.adMixtureV = adMixtureV;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double[] getAdMixtureD() {
|
||||||
|
return adMixtureD;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAdMixtureD(double[] adMixtureD) {
|
||||||
|
this.adMixtureD = adMixtureD;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getdCbtj() {
|
||||||
|
return dCbtj;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdCbtj(int dCbtj) {
|
||||||
|
this.dCbtj = dCbtj;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdPb() {
|
||||||
|
return dPb;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdPb(double dPb) {
|
||||||
|
this.dPb = dPb;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdTb() {
|
||||||
|
return dTb;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdTb(double dTb) {
|
||||||
|
this.dTb = dTb;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdPf() {
|
||||||
|
return dPf;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdPf(double dPf) {
|
||||||
|
this.dPf = dPf;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdTf() {
|
||||||
|
return dTf;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdTf(double dTf) {
|
||||||
|
this.dTf = dTf;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdMrx() {
|
||||||
|
return dMrx;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdMrx(double dMrx) {
|
||||||
|
this.dMrx = dMrx;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdZb() {
|
||||||
|
return dZb;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdZb(double dZb) {
|
||||||
|
this.dZb = dZb;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdZf() {
|
||||||
|
return dZf;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdZf(double dZf) {
|
||||||
|
this.dZf = dZf;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdFpv() {
|
||||||
|
return dFpv;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdFpv(double dFpv) {
|
||||||
|
this.dFpv = dFpv;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdDb() {
|
||||||
|
return dDb;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdDb(double dDb) {
|
||||||
|
this.dDb = dDb;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdDf() {
|
||||||
|
return dDf;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdDf(double dDf) {
|
||||||
|
this.dDf = dDf;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdRhob() {
|
||||||
|
return dRhob;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdRhob(double dRhob) {
|
||||||
|
this.dRhob = dRhob;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdRhof() {
|
||||||
|
return dRhof;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdRhof(double dRhof) {
|
||||||
|
this.dRhof = dRhof;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdRD_Ideal() {
|
||||||
|
return dRD_Ideal;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdRD_Ideal(double dRD_Ideal) {
|
||||||
|
this.dRD_Ideal = dRD_Ideal;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdRD_Real() {
|
||||||
|
return dRD_Real;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdRD_Real(double dRD_Real) {
|
||||||
|
this.dRD_Real = dRD_Real;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdHo() {
|
||||||
|
return dHo;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdHo(double dHo) {
|
||||||
|
this.dHo = dHo;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdH() {
|
||||||
|
return dH;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdH(double dH) {
|
||||||
|
this.dH = dH;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdS() {
|
||||||
|
return dS;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdS(double dS) {
|
||||||
|
this.dS = dS;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdCpi() {
|
||||||
|
return dCpi;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdCpi(double dCpi) {
|
||||||
|
this.dCpi = dCpi;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdCp() {
|
||||||
|
return dCp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdCp(double dCp) {
|
||||||
|
this.dCp = dCp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdCv() {
|
||||||
|
return dCv;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdCv(double dCv) {
|
||||||
|
this.dCv = dCv;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getDk() {
|
||||||
|
return dk;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDk(double dk) {
|
||||||
|
this.dk = dk;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdKappa() {
|
||||||
|
return dKappa;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdKappa(double dKappa) {
|
||||||
|
this.dKappa = dKappa;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdSOS() {
|
||||||
|
return dSOS;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdSOS(double dSOS) {
|
||||||
|
this.dSOS = dSOS;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdCstar() {
|
||||||
|
return dCstar;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdCstar(double dCstar) {
|
||||||
|
this.dCstar = dCstar;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdHhvMol() {
|
||||||
|
return dHhvMol;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdHhvMol(double dHhvMol) {
|
||||||
|
this.dHhvMol = dHhvMol;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdLhvMol() {
|
||||||
|
return dLhvMol;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdLhvMol(double dLhvMol) {
|
||||||
|
this.dLhvMol = dLhvMol;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdHhvv() {
|
||||||
|
return dHhvv;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdHhvv(double dHhvv) {
|
||||||
|
this.dHhvv = dHhvv;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdLhvv() {
|
||||||
|
return dLhvv;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdLhvv(double dLhvv) {
|
||||||
|
this.dLhvv = dLhvv;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdHhvm() {
|
||||||
|
return dHhvm;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdHhvm(double dHhvm) {
|
||||||
|
this.dHhvm = dHhvm;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdLhvm() {
|
||||||
|
return dLhvm;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdLhvm(double dLhvm) {
|
||||||
|
this.dLhvm = dLhvm;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdZb11062() {
|
||||||
|
return dZb11062;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdZb11062(double dZb11062) {
|
||||||
|
this.dZb11062 = dZb11062;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdRhob11062() {
|
||||||
|
return dRhob11062;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdRhob11062(double dRhob11062) {
|
||||||
|
this.dRhob11062 = dRhob11062;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdRhof11062() {
|
||||||
|
return dRhof11062;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdRhof11062(double dRhof11062) {
|
||||||
|
this.dRhof11062 = dRhof11062;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdRD_Ideal11062() {
|
||||||
|
return dRD_Ideal11062;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdRD_Ideal11062(double dRD_Ideal11062) {
|
||||||
|
this.dRD_Ideal11062 = dRD_Ideal11062;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdRD_Real11062() {
|
||||||
|
return dRD_Real11062;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdRD_Real11062(double dRD_Real11062) {
|
||||||
|
this.dRD_Real11062 = dRD_Real11062;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getdWobbeIndex() {
|
||||||
|
return dWobbeIndex;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setdWobbeIndex(double dWobbeIndex) {
|
||||||
|
this.dWobbeIndex = dWobbeIndex;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getPc() {
|
||||||
|
return Pc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPc(double pc) {
|
||||||
|
Pc = pc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getTC() {
|
||||||
|
return TC;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTC(double TC) {
|
||||||
|
this.TC = TC;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getBzsx() {
|
||||||
|
return Bzsx;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBzsx(double bzsx) {
|
||||||
|
Bzsx = bzsx;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getBzxx() {
|
||||||
|
return Bzxx;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBzxx(double bzxx) {
|
||||||
|
Bzxx = bzxx;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getTotalC() {
|
||||||
|
return TotalC;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTotalC(double totalC) {
|
||||||
|
TotalC = totalC;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getC2() {
|
||||||
|
return C2;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setC2(double c2) {
|
||||||
|
C2 = c2;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getC2j() {
|
||||||
|
return C2j;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setC2j(double c2j) {
|
||||||
|
C2j = c2j;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getC3j() {
|
||||||
|
return C3j;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setC3j(double c3j) {
|
||||||
|
C3j = c3j;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getC4j() {
|
||||||
|
return C4j;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setC4j(double c4j) {
|
||||||
|
C4j = c4j;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getC5j() {
|
||||||
|
return C5j;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setC5j(double c5j) {
|
||||||
|
C5j = c5j;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getC6j() {
|
||||||
|
return C6j;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setC6j(double c6j) {
|
||||||
|
C6j = c6j;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getC3C4() {
|
||||||
|
return C3C4;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setC3C4(double c3C4) {
|
||||||
|
C3C4 = c3C4;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDngComponents() {
|
||||||
|
return dngComponents;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDngComponents(String dngComponents) {
|
||||||
|
this.dngComponents = dngComponents;
|
||||||
|
}
|
||||||
|
|
||||||
public double[] adMixture; // 气体摩尔组成 Composition in mole fraction
|
public double[] adMixture; // 气体摩尔组成 Composition in mole fraction
|
||||||
public double[] adMixtureV; // 气体体积组成 Composition in mole fraction
|
public double[] adMixtureV; // 气体体积组成 Composition in mole fraction
|
||||||
public double[] adMixtureD; // 气体质量组成 Composition in mole fraction
|
public double[] adMixtureD; // 气体质量组成 Composition in mole fraction
|
||||||
@ -62,447 +503,8 @@ public class GasProps {
|
|||||||
public double C5j; // C5以上组分含量 (kg/m3)
|
public double C5j; // C5以上组分含量 (kg/m3)
|
||||||
public double C6j; // C6以上组分含量 (kg/m3)
|
public double C6j; // C6以上组分含量 (kg/m3)
|
||||||
public double C3C4; // C3C4组分含量 (kg/m3)
|
public double C3C4; // C3C4组分含量 (kg/m3)
|
||||||
public String dngComponents; //组分的组合字符串 从前端传过来
|
public String dngComponents; //组分的组合字符串 从前端传过来
|
||||||
|
|
||||||
// Getters and Setters
|
|
||||||
|
|
||||||
public String getDngComponents() {
|
|
||||||
return dngComponents;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDngComponents(String dngComponents) {
|
|
||||||
this.dngComponents = dngComponents;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getLStatus() {
|
|
||||||
return lStatus;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setLStatus(int lStatus) {
|
|
||||||
this.lStatus = lStatus;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isBForceUpdate() {
|
|
||||||
return bForceUpdate;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setBForceUpdate(boolean bForceUpdate) {
|
|
||||||
this.bForceUpdate = bForceUpdate;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double[] getAdMixture() {
|
|
||||||
return adMixture;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAdMixture(double[] adMixture) {
|
|
||||||
this.adMixture = adMixture;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double[] getAdMixtureV() {
|
|
||||||
return adMixtureV;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAdMixtureV(double[] adMixtureV) {
|
|
||||||
this.adMixtureV = adMixtureV;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double[] getAdMixtureD() {
|
|
||||||
return adMixtureD;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAdMixtureD(double[] adMixtureD) {
|
|
||||||
this.adMixtureD = adMixtureD;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getDCbtj() {
|
|
||||||
return dCbtj;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDCbtj(int dCbtj) {
|
|
||||||
this.dCbtj = dCbtj;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDPb() {
|
|
||||||
return dPb;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDPb(double dPb) {
|
|
||||||
this.dPb = dPb;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDTb() {
|
|
||||||
return dTb;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDTb(double dTb) {
|
|
||||||
this.dTb = dTb;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDPf() {
|
|
||||||
return dPf;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDPf(double dPf) {
|
|
||||||
this.dPf = dPf;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDTf() {
|
|
||||||
return dTf;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDTf(double dTf) {
|
|
||||||
this.dTf = dTf;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDMrx() {
|
|
||||||
return dMrx;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDMrx(double dMrx) {
|
|
||||||
this.dMrx = dMrx;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDZb() {
|
|
||||||
return dZb;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDZb(double dZb) {
|
|
||||||
this.dZb = dZb;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDZf() {
|
|
||||||
return dZf;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDZf(double dZf) {
|
|
||||||
this.dZf = dZf;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDFpv() {
|
|
||||||
return dFpv;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDFpv(double dFpv) {
|
|
||||||
this.dFpv = dFpv;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDDb() {
|
|
||||||
return dDb;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDDb(double dDb) {
|
|
||||||
this.dDb = dDb;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDDf() {
|
|
||||||
return dDf;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDDf(double dDf) {
|
|
||||||
this.dDf = dDf;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDRhob() {
|
|
||||||
return dRhob;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDRhob(double dRhob) {
|
|
||||||
this.dRhob = dRhob;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDRhof() {
|
|
||||||
return dRhof;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDRhof(double dRhof) {
|
|
||||||
this.dRhof = dRhof;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDRD_Ideal() {
|
|
||||||
return dRD_Ideal;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDRD_Ideal(double dRD_Ideal) {
|
|
||||||
this.dRD_Ideal = dRD_Ideal;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDRD_Real() {
|
|
||||||
return dRD_Real;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDRD_Real(double dRD_Real) {
|
|
||||||
this.dRD_Real = dRD_Real;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDHo() {
|
|
||||||
return dHo;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDHo(double dHo) {
|
|
||||||
this.dHo = dHo;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDH() {
|
|
||||||
return dH;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDH(double dH) {
|
|
||||||
this.dH = dH;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDS() {
|
|
||||||
return dS;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDS(double dS) {
|
|
||||||
this.dS = dS;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDCpi() {
|
|
||||||
return dCpi;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDCpi(double dCpi) {
|
|
||||||
this.dCpi = dCpi;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDCp() {
|
|
||||||
return dCp;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDCp(double dCp) {
|
|
||||||
this.dCp = dCp;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDCv() {
|
|
||||||
return dCv;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDCv(double dCv) {
|
|
||||||
this.dCv = dCv;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDk() {
|
|
||||||
return dk;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDk(double dk) {
|
|
||||||
this.dk = dk;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDKappa() {
|
|
||||||
return dKappa;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDKappa(double dKappa) {
|
|
||||||
this.dKappa = dKappa;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDSOS() {
|
|
||||||
return dSOS;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDSOS(double dSOS) {
|
|
||||||
this.dSOS = dSOS;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDCstar() {
|
|
||||||
return dCstar;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDCstar(double dCstar) {
|
|
||||||
this.dCstar = dCstar;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDHhvMol() {
|
|
||||||
return dHhvMol;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDHhvMol(double dHhvMol) {
|
|
||||||
this.dHhvMol = dHhvMol;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDLhvMol() {
|
|
||||||
return dLhvMol;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDLhvMol(double dLhvMol) {
|
|
||||||
this.dLhvMol = dLhvMol;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDHhvv() {
|
|
||||||
return dHhvv;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDHhvv(double dHhvv) {
|
|
||||||
this.dHhvv = dHhvv;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDLhvv() {
|
|
||||||
return dLhvv;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDLhvv(double dLhvv) {
|
|
||||||
this.dLhvv = dLhvv;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDHhvm() {
|
|
||||||
return dHhvm;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDHhvm(double dHhvm) {
|
|
||||||
this.dHhvm = dHhvm;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDLhvm() {
|
|
||||||
return dLhvm;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDLhvm(double dLhvm) {
|
|
||||||
this.dLhvm = dLhvm;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDZb11062() {
|
|
||||||
return dZb11062;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDZb11062(double dZb11062) {
|
|
||||||
this.dZb11062 = dZb11062;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDRhob11062() {
|
|
||||||
return dRhob11062;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDRhob11062(double dRhob11062) {
|
|
||||||
this.dRhob11062 = dRhob11062;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDRhof11062() {
|
|
||||||
return dRhof11062;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDRhof11062(double dRhof11062) {
|
|
||||||
this.dRhof11062 = dRhof11062;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDRD_Ideal11062() {
|
|
||||||
return dRD_Ideal11062;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDRD_Ideal11062(double dRD_Ideal11062) {
|
|
||||||
this.dRD_Ideal11062 = dRD_Ideal11062;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDRD_Real11062() {
|
|
||||||
return dRD_Real11062;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDRD_Real11062(double dRD_Real11062) {
|
|
||||||
this.dRD_Real11062 = dRD_Real11062;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getDWobbeIndex() {
|
|
||||||
return dWobbeIndex;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDWobbeIndex(double dWobbeIndex) {
|
|
||||||
this.dWobbeIndex = dWobbeIndex;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getPc() {
|
|
||||||
return Pc;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPc(double pc) {
|
|
||||||
this.Pc = pc;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getTC() {
|
|
||||||
return TC;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setTC(double tc) {
|
|
||||||
this.TC = tc;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getBzsx() {
|
|
||||||
return Bzsx;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setBzsx(double bzsx) {
|
|
||||||
this.Bzsx = bzsx;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getBzxx() {
|
|
||||||
return Bzxx;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setBzxx(double bzxx) {
|
|
||||||
this.Bzxx = bzxx;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getTotalC() {
|
|
||||||
return TotalC;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setTotalC(double totalC) {
|
|
||||||
this.TotalC = totalC;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getC2() {
|
|
||||||
return C2;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setC2(double c2) {
|
|
||||||
this.C2 = c2;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getC2j() {
|
|
||||||
return C2j;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setC2j(double c2j) {
|
|
||||||
this.C2j = c2j;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getC3j() {
|
|
||||||
return C3j;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setC3j(double c3j) {
|
|
||||||
this.C3j = c3j;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getC4j() {
|
|
||||||
return C4j;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setC4j(double c4j) {
|
|
||||||
this.C4j = c4j;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getC5j() {
|
|
||||||
return C5j;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setC5j(double c5j) {
|
|
||||||
this.C5j = c5j;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getC6j() {
|
|
||||||
return C6j;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setC6j(double c6j) {
|
|
||||||
this.C6j = c6j;
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getC3C4() {
|
|
||||||
return C3C4;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setC3C4(double c3c4) {
|
|
||||||
this.C3C4 = c3c4;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -6,7 +6,7 @@ import org.springframework.stereotype.Service;
|
|||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class DetailService {
|
public class DetailService {
|
||||||
private static final int NUMBER_OF_COMPONENTS = 21;
|
|
||||||
private static final double RGASKJ = 8.314510e-3;
|
private static final double RGASKJ = 8.314510e-3;
|
||||||
|
|
||||||
// 成员变量转换
|
// 成员变量转换
|
||||||
@ -124,7 +124,22 @@ public class DetailService {
|
|||||||
public double dd2BdT2;
|
public double dd2BdT2;
|
||||||
|
|
||||||
|
|
||||||
// 其他成员变量...
|
// 构造函数
|
||||||
|
public DetailService()
|
||||||
|
{
|
||||||
|
//initialize history-sensitive variables
|
||||||
|
dOldMixID = 0.0; // mixture ID from previous calc
|
||||||
|
dOldPb = 0.0; // base pressure from previous calc
|
||||||
|
dOldTb = 0.0; // base temperature from previous calc
|
||||||
|
dOldPf = 0.0; // flowing pressure from previous calc
|
||||||
|
dOldTf = 0.0; // flowing temperature from previous calc
|
||||||
|
|
||||||
|
//initialize gas component array used within this class
|
||||||
|
for (int i = 0; i < GasConstants.NUMBEROFCOMPONENTS; i++) dXi[i] = 0;
|
||||||
|
// function table() populates tables of static constants
|
||||||
|
table();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
public void run(GasProps gasProps) {
|
public void run(GasProps gasProps) {
|
||||||
// 实现转换后的逻辑
|
// 实现转换后的逻辑
|
||||||
@ -132,7 +147,7 @@ public class DetailService {
|
|||||||
|
|
||||||
int i;
|
int i;
|
||||||
// Check for gas composition change
|
// Check for gas composition change
|
||||||
gasProps.bForceUpdate = gasProps.bForceUpdate || compositionChange(gasProps);
|
gasProps.bForceUpdate = (gasProps.bForceUpdate || compositionChange(gasProps));
|
||||||
|
|
||||||
// assign component IDs and values
|
// assign component IDs and values
|
||||||
if (gasProps.bForceUpdate) {
|
if (gasProps.bForceUpdate) {
|
||||||
@ -224,10 +239,9 @@ public class DetailService {
|
|||||||
|
|
||||||
private boolean compositionChange(GasProps gasProps) {
|
private boolean compositionChange(GasProps gasProps) {
|
||||||
double dMixID = 0.0;
|
double dMixID = 0.0;
|
||||||
for (int i = 0; i < NUMBER_OF_COMPONENTS; i++) {
|
for (int i = 0; i < GasConstants.NUMBEROFCOMPONENTS; i++) {
|
||||||
dMixID += ((i + 2) * gasProps.getAdMixture()[i]);
|
dMixID += ((i + 2) * gasProps.adMixture[i]);
|
||||||
}
|
}if (dMixID != dOldMixID) {
|
||||||
if (dMixID != dOldMixID) {
|
|
||||||
dOldMixID = dMixID;
|
dOldMixID = dMixID;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -238,10 +252,10 @@ public class DetailService {
|
|||||||
|
|
||||||
int j, k;
|
int j, k;
|
||||||
// table 5 parameters; declared locally to this function
|
// table 5 parameters; declared locally to this function
|
||||||
double[] adTable5Mri = new double[GasConstants.NUMBEROFCOMPONENTS];
|
double[] adTable5Mri;
|
||||||
double[] adTable5Ei = new double[GasConstants.NUMBEROFCOMPONENTS];
|
double[] adTable5Ei;
|
||||||
double[] adTable5Ki = new double[GasConstants.NUMBEROFCOMPONENTS];
|
double[] adTable5Ki;
|
||||||
double[] adTable5Gi = new double[GasConstants.NUMBEROFCOMPONENTS];
|
double[] adTable5Gi;
|
||||||
|
|
||||||
// 初始化adTable5Mri数组
|
// 初始化adTable5Mri数组
|
||||||
adTable5Mri = new double[]{16.0430, 28.0135, 44.0100, 30.0700, 44.0970, 18.0153, 34.0820, 2.0159, 28.0100, 31.9988, 58.1230, 58.1230, 72.1500, 72.1500, 86.1770, 100.2040, 114.2310, 128.2580, 142.2850, 4.0026, 39.9480};
|
adTable5Mri = new double[]{16.0430, 28.0135, 44.0100, 30.0700, 44.0970, 18.0153, 34.0820, 2.0159, 28.0100, 31.9988, 58.1230, 58.1230, 72.1500, 72.1500, 86.1770, 100.2040, 114.2310, 128.2580, 142.2850, 4.0026, 39.9480};
|
||||||
|
@ -51,88 +51,88 @@ public class GBT11062Service {
|
|||||||
double dMair = 28.9626;
|
double dMair = 28.9626;
|
||||||
double dZair = 0;
|
double dZair = 0;
|
||||||
DetailService detailService;
|
DetailService detailService;
|
||||||
public void Run(GasProps ptAGA10) {
|
public void Run(GasProps gasProps) {
|
||||||
for (int i = 0; i < GasConstants.NUMBEROFCOMPONENTS; i++) dXi[i] = 0;
|
for (int i = 0; i < GasConstants.NUMBEROFCOMPONENTS; i++) dXi[i] = 0;
|
||||||
iNCC = -1;
|
iNCC = -1;
|
||||||
for (i = 0; i < GasConstants.NUMBEROFCOMPONENTS; i++) {
|
for (i = 0; i < GasConstants.NUMBEROFCOMPONENTS; i++) {
|
||||||
if (ptAGA10.adMixture[i] > 0.0) {
|
if (gasProps.adMixture[i] > 0.0) {
|
||||||
iNCC = iNCC + 1;
|
iNCC = iNCC + 1;
|
||||||
aiCID[iNCC] = i;
|
aiCID[iNCC] = i;
|
||||||
dXi[iNCC] = ptAGA10.adMixture[i];
|
dXi[iNCC] = gasProps.adMixture[i];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
iNCC = iNCC + 1;
|
iNCC = iNCC + 1;
|
||||||
|
|
||||||
for (i = 0; i < GasConstants.NUMBEROFCOMPONENTS; i++) {
|
for (i = 0; i < GasConstants.NUMBEROFCOMPONENTS; i++) {
|
||||||
if (ptAGA10.adMixture[i] != 0) {
|
if (gasProps.adMixture[i] != 0) {
|
||||||
ptAGA10.Pc += adTablePc[i] * ptAGA10.adMixture[i];
|
gasProps.Pc += adTablePc[i] * gasProps.adMixture[i];
|
||||||
ptAGA10.TC += adTableTc[i] * ptAGA10.adMixture[i];
|
gasProps.TC += adTableTc[i] * gasProps.adMixture[i];
|
||||||
if (adTableBzsx[i] != 0) {
|
if (adTableBzsx[i] != 0) {
|
||||||
ptAGA10.Bzsx += ptAGA10.adMixture[i] / adTableBzsx[i];
|
gasProps.Bzsx += gasProps.adMixture[i] / adTableBzsx[i];
|
||||||
ptAGA10.Bzxx += ptAGA10.adMixture[i] / adTableBzxx[i];
|
gasProps.Bzxx += gasProps.adMixture[i] / adTableBzxx[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
if (i >= 10 & i <= 18) {
|
if (i >= 10 & i <= 18) {
|
||||||
ptAGA10.C4j += ptAGA10.adMixture[i] * adTableMri[i];
|
gasProps.C4j += gasProps.adMixture[i] * adTableMri[i];
|
||||||
}
|
}
|
||||||
if (i >= 12 & i <= 18) {
|
if (i >= 12 & i <= 18) {
|
||||||
ptAGA10.C5j += ptAGA10.adMixture[i] * adTableMri[i];
|
gasProps.C5j += gasProps.adMixture[i] * adTableMri[i];
|
||||||
}
|
}
|
||||||
if (i >= 14 & i <= 18) {
|
if (i >= 14 & i <= 18) {
|
||||||
ptAGA10.C6j += ptAGA10.adMixture[i] * adTableMri[i];
|
gasProps.C6j += gasProps.adMixture[i] * adTableMri[i];
|
||||||
}
|
}
|
||||||
if (i == 3) {
|
if (i == 3) {
|
||||||
ptAGA10.C2 += ptAGA10.adMixture[i] * adTableMri[i];
|
gasProps.C2 += gasProps.adMixture[i] * adTableMri[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (ptAGA10.dCbtj) {
|
switch (gasProps.dCbtj) {
|
||||||
case 2:
|
case 2:
|
||||||
ptAGA10.dZb11062 += adTableSqrtbj[0][i] * ptAGA10.adMixture[i];
|
gasProps.dZb11062 += adTableSqrtbj[0][i] * gasProps.adMixture[i];
|
||||||
ptAGA10.dHhvMol += adTableHhvMol[0][i] * ptAGA10.adMixture[i];
|
gasProps.dHhvMol += adTableHhvMol[0][i] * gasProps.adMixture[i];
|
||||||
ptAGA10.dLhvMol += adTableLhvMol[0][i] * ptAGA10.adMixture[i];
|
gasProps.dLhvMol += adTableLhvMol[0][i] * gasProps.adMixture[i];
|
||||||
dZair = 0.99941;
|
dZair = 0.99941;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
ptAGA10.dZb11062 += adTableSqrtbj[1][i] * ptAGA10.adMixture[i];
|
gasProps.dZb11062 += adTableSqrtbj[1][i] * gasProps.adMixture[i];
|
||||||
ptAGA10.dHhvMol += adTableHhvMol[1][i] * ptAGA10.adMixture[i];
|
gasProps.dHhvMol += adTableHhvMol[1][i] * gasProps.adMixture[i];
|
||||||
ptAGA10.dLhvMol += adTableLhvMol[1][i] * ptAGA10.adMixture[i];
|
gasProps.dLhvMol += adTableLhvMol[1][i] * gasProps.adMixture[i];
|
||||||
dZair = 0.99958;
|
dZair = 0.99958;
|
||||||
break;
|
break;
|
||||||
case 0:
|
case 0:
|
||||||
ptAGA10.dZb11062 += adTableSqrtbj[2][i] * ptAGA10.adMixture[i];
|
gasProps.dZb11062 += adTableSqrtbj[2][i] * gasProps.adMixture[i];
|
||||||
ptAGA10.dHhvMol += adTableHhvMol[2][i] * ptAGA10.adMixture[i];
|
gasProps.dHhvMol += adTableHhvMol[2][i] * gasProps.adMixture[i];
|
||||||
ptAGA10.dLhvMol += adTableLhvMol[2][i] * ptAGA10.adMixture[i];
|
gasProps.dLhvMol += adTableLhvMol[2][i] * gasProps.adMixture[i];
|
||||||
dZair = 0.99963;
|
dZair = 0.99963;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ptAGA10.Bzsx = 1 / ptAGA10.Bzsx;
|
gasProps.Bzsx = 1 / gasProps.Bzsx;
|
||||||
ptAGA10.Bzxx = 1 / ptAGA10.Bzxx;
|
gasProps.Bzxx = 1 / gasProps.Bzxx;
|
||||||
ptAGA10.dZb11062 = 1 - ptAGA10.dZb11062 * ptAGA10.dZb11062;
|
gasProps.dZb11062 = 1 - gasProps.dZb11062 * gasProps.dZb11062;
|
||||||
ptAGA10.dHhvm = ptAGA10.dHhvMol / ptAGA10.dMrx;
|
gasProps.dHhvm = gasProps.dHhvMol / gasProps.dMrx;
|
||||||
ptAGA10.dLhvm = ptAGA10.dLhvMol / ptAGA10.dMrx;
|
gasProps.dLhvm = gasProps.dLhvMol / gasProps.dMrx;
|
||||||
ptAGA10.dHhvv = ptAGA10.dHhvMol * ptAGA10.dPb / ptAGA10.dTb / 8314.510 / ptAGA10.dZb11062;
|
gasProps.dHhvv = gasProps.dHhvMol * gasProps.dPb / gasProps.dTb / 8314.510 / gasProps.dZb11062;
|
||||||
ptAGA10.dLhvv = ptAGA10.dLhvMol * ptAGA10.dPb / ptAGA10.dTb / 8314.510 / ptAGA10.dZb11062;
|
gasProps.dLhvv = gasProps.dLhvMol * gasProps.dPb / gasProps.dTb / 8314.510 / gasProps.dZb11062;
|
||||||
ptAGA10.dRD_Ideal11062 = ptAGA10.dMrx / dMair;
|
gasProps.dRD_Ideal11062 = gasProps.dMrx / dMair;
|
||||||
ptAGA10.dRD_Real11062 = ptAGA10.dRD_Ideal11062 * dZair / ptAGA10.dZb11062;
|
gasProps.dRD_Real11062 = gasProps.dRD_Ideal11062 * dZair / gasProps.dZb11062;
|
||||||
|
|
||||||
ptAGA10.dRhob11062 = ptAGA10.dMrx * ptAGA10.dPb / 8314.51 / ptAGA10.dTb / ptAGA10.dZb11062;
|
gasProps.dRhob11062 = gasProps.dMrx * gasProps.dPb / 8314.51 / gasProps.dTb / gasProps.dZb11062;
|
||||||
ptAGA10.dRhof11062 = ptAGA10.dMrx * ptAGA10.dPf / 8314.51 / ptAGA10.dTf / ptAGA10.dZf;
|
gasProps.dRhof11062 = gasProps.dMrx * gasProps.dPf / 8314.51 / gasProps.dTf / gasProps.dZf;
|
||||||
ptAGA10.dWobbeIndex = ptAGA10.dHhvv / Math.sqrt(ptAGA10.dRD_Real11062);
|
gasProps.dWobbeIndex = gasProps.dHhvv / Math.sqrt(gasProps.dRD_Real11062);
|
||||||
ptAGA10.C3j = ptAGA10.C4j + ptAGA10.adMixture[4] * adTableMri[4];
|
gasProps.C3j = gasProps.C4j + gasProps.adMixture[4] * adTableMri[4];
|
||||||
ptAGA10.C2j = ptAGA10.C3j + ptAGA10.adMixture[3] * adTableMri[3];
|
gasProps.C2j = gasProps.C3j + gasProps.adMixture[3] * adTableMri[3];
|
||||||
ptAGA10.C3C4 = ptAGA10.adMixture[4] * adTableMri[4] + ptAGA10.adMixture[10] * adTableMri[10] + ptAGA10.adMixture[11] * adTableMri[11];
|
gasProps.C3C4 = gasProps.adMixture[4] * adTableMri[4] + gasProps.adMixture[10] * adTableMri[10] + gasProps.adMixture[11] * adTableMri[11];
|
||||||
ptAGA10.TotalC = ptAGA10.C2j + ptAGA10.adMixture[0] * adTableMri[0];
|
gasProps.TotalC = gasProps.C2j + gasProps.adMixture[0] * adTableMri[0];
|
||||||
|
|
||||||
ptAGA10.TotalC = ptAGA10.TotalC * ptAGA10.dPb / 8314.51 / ptAGA10.dTb / ptAGA10.dZb11062;
|
gasProps.TotalC = gasProps.TotalC * gasProps.dPb / 8314.51 / gasProps.dTb / gasProps.dZb11062;
|
||||||
ptAGA10.C2 = ptAGA10.C2 * ptAGA10.dPb / 8314.51 / ptAGA10.dTb / ptAGA10.dZb11062;
|
gasProps.C2 = gasProps.C2 * gasProps.dPb / 8314.51 / gasProps.dTb / gasProps.dZb11062;
|
||||||
ptAGA10.C3C4 = ptAGA10.C3C4 * ptAGA10.dPb / 8314.51 / ptAGA10.dTb / ptAGA10.dZb11062;
|
gasProps.C3C4 = gasProps.C3C4 * gasProps.dPb / 8314.51 / gasProps.dTb / gasProps.dZb11062;
|
||||||
ptAGA10.C2j = ptAGA10.C2j * ptAGA10.dPb / 8314.51 / ptAGA10.dTb / ptAGA10.dZb11062;
|
gasProps.C2j = gasProps.C2j * gasProps.dPb / 8314.51 / gasProps.dTb / gasProps.dZb11062;
|
||||||
ptAGA10.C3j = ptAGA10.C3j * ptAGA10.dPb / 8314.51 / ptAGA10.dTb / ptAGA10.dZb11062;
|
gasProps.C3j = gasProps.C3j * gasProps.dPb / 8314.51 / gasProps.dTb / gasProps.dZb11062;
|
||||||
ptAGA10.C4j = ptAGA10.C4j * ptAGA10.dPb / 8314.51 / ptAGA10.dTb / ptAGA10.dZb11062;
|
gasProps.C4j = gasProps.C4j * gasProps.dPb / 8314.51 / gasProps.dTb / gasProps.dZb11062;
|
||||||
ptAGA10.C5j = ptAGA10.C5j * ptAGA10.dPb / 8314.51 / ptAGA10.dTb / ptAGA10.dZb11062;
|
gasProps.C5j = gasProps.C5j * gasProps.dPb / 8314.51 / gasProps.dTb / gasProps.dZb11062;
|
||||||
ptAGA10.C6j = ptAGA10.C6j * ptAGA10.dPb / 8314.51 / ptAGA10.dTb / ptAGA10.dZb11062;
|
gasProps.C6j = gasProps.C6j * gasProps.dPb / 8314.51 / gasProps.dTb / gasProps.dZb11062;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -54,13 +54,14 @@ public class ThermService {
|
|||||||
{0.0, 4.9680, 0.0, 100.0, 0.0, 100.0, 0.0, 100.0, 0.0, 100.0, 0.0},
|
{0.0, 4.9680, 0.0, 100.0, 0.0, 100.0, 0.0, 100.0, 0.0, 100.0, 0.0},
|
||||||
{0.0, 4.9680, 0.0, 100.0, 0.0, 100.0, 0.0, 100.0, 0.0, 100.0, 0.0}
|
{0.0, 4.9680, 0.0, 100.0, 0.0, 100.0, 0.0, 100.0, 0.0, 100.0, 0.0}
|
||||||
};
|
};
|
||||||
|
public ThermService()
|
||||||
public void calculateThermodynamicProperties(GasProps gasProps) {
|
{
|
||||||
// 实现热力学计算逻辑
|
// initialize 3 history-sensitive variables
|
||||||
double cp = calculateCpiMolar(gasProps);
|
dSi = 0.0;
|
||||||
gasProps.setDCpi(cp * 1000 / gasProps.getDMrx());
|
dTold = 0.0;
|
||||||
// 其他计算...
|
dMrxold = 0.0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Run(GasProps gasProps, DetailService detailService)
|
public void Run(GasProps gasProps, DetailService detailService)
|
||||||
{
|
{
|
||||||
//local variables
|
//local variables
|
||||||
@ -86,7 +87,7 @@ public class ThermService {
|
|||||||
gasProps.dKappa = (c * gasProps.dRhof) / gasProps.dPf;
|
gasProps.dKappa = (c * gasProps.dRhof) / gasProps.dPf;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
private double calculateCpiMolar(GasProps gasProps) {
|
private double CpiMolar(GasProps gasProps) {
|
||||||
double cp = 0.0;
|
double cp = 0.0;
|
||||||
double Cpx;
|
double Cpx;
|
||||||
double DT, FT, HT, JT;
|
double DT, FT, HT, JT;
|
||||||
@ -213,7 +214,7 @@ public class ThermService {
|
|||||||
double Hinc = 0.0;
|
double Hinc = 0.0;
|
||||||
double Sinc = 0.0;
|
double Sinc = 0.0;
|
||||||
double Smixing = 0.0;
|
double Smixing = 0.0;
|
||||||
double Cp = calculateCpiMolar(gasProps);
|
double Cp = CpiMolar(gasProps);
|
||||||
double Si;
|
double Si;
|
||||||
|
|
||||||
gasProps.dHo = Ho(gasProps);
|
gasProps.dHo = Ho(gasProps);
|
||||||
|
Loading…
Reference in New Issue
Block a user