2025-07-06 07:50:36 +00:00
|
|
|
|
/*************************************************************************
|
2025-07-06 14:29:58 +00:00
|
|
|
|
* <EFBFBD>ļ<EFBFBD>: detail.h
|
2025-07-06 07:50:36 +00:00
|
|
|
|
**************************************************************************/
|
|
|
|
|
|
2025-07-06 14:29:58 +00:00
|
|
|
|
#ifndef _DETAIL_H
|
2025-07-06 07:50:36 +00:00
|
|
|
|
#define _DETAIL_H
|
|
|
|
|
|
|
|
|
|
#include "NGCal.h"
|
2025-07-06 14:29:58 +00:00
|
|
|
|
#include <stdbool.h> // <20><><EFBFBD>bool<6F><6C><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>
|
|
|
|
|
|
|
|
|
|
// ʹ<>ýṹ<C3BD><E1B9B9><EFBFBD><EFBFBD><EFBFBD>C++<2B><>
|
|
|
|
|
typedef struct Detail {
|
|
|
|
|
// ˽<>г<EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD>
|
|
|
|
|
int iNCC; // <20><><EFBFBD><EFBFBD><EFBFBD>Ŀ
|
|
|
|
|
|
|
|
|
|
int aiCID[21]; // <20><><EFBFBD>ID
|
|
|
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD>ʷ<EFBFBD><CAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><D8B8><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ч<EFBFBD><D0A7>
|
|
|
|
|
double dOldMixID; // <20><>һ<EFBFBD>μ<EFBFBD><CEBC><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>ID
|
|
|
|
|
double dOldPb; // <20><>һ<EFBFBD>μ<EFBFBD><CEBC><EFBFBD><EFBFBD>Pb
|
|
|
|
|
double dOldTb; // <20><>һ<EFBFBD>μ<EFBFBD><CEBC><EFBFBD><EFBFBD>Tb
|
|
|
|
|
double dOldPf; // <20><>һ<EFBFBD>μ<EFBFBD><CEBC><EFBFBD><EFBFBD>Pf
|
|
|
|
|
double dOldTf; // <20><>һ<EFBFBD>μ<EFBFBD><CEBC><EFBFBD><EFBFBD>Tf
|
|
|
|
|
|
|
|
|
|
// <20><>4<EFBFBD><34>1<EFBFBD><31><EFBFBD>е<EFBFBD>EOS<4F><53><EFBFBD><EFBFBD>
|
|
|
|
|
double adAn[58];
|
2025-07-06 07:50:36 +00:00
|
|
|
|
double adUn[58];
|
|
|
|
|
|
2025-07-06 14:29:58 +00:00
|
|
|
|
// <20><>5<EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double dMri[21]; // <20><>i<EFBFBD><69>ֵķ<D6B5><C4B7><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double dEi[21]; // <20><>i<EFBFBD><69>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double dKi[21]; // <20><>i<EFBFBD><69>ֵijߴ<C4B3><DFB4><EFBFBD><EFBFBD> - m^3/kg-mol ^1/3
|
|
|
|
|
double dGi[21]; // <20><>i<EFBFBD><69>ֵ<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double dQi[21]; // <20><>i<EFBFBD><69>ֵ<EFBFBD><D6B5>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double dFi[21]; // <20><>i<EFBFBD><69>ֵĸ<D6B5><C4B8>²<EFBFBD><C2B2><EFBFBD>
|
|
|
|
|
double dSi[21]; // <20><>i<EFBFBD><69>ֵ<EFBFBD>ż<EFBFBD><C5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double dWi[21]; // <20><>i<EFBFBD><69>ֵĵϲ<DEBA><CFB2><EFBFBD>
|
|
|
|
|
|
|
|
|
|
double dEij[21][21]; // ά<><CEAC>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD><E0BBA5><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
|
|
|
|
|
double dUij[21][21]; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD>Ԫ<EFBFBD><EFBFBD><E0BBA5><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
|
|
|
|
|
double dKij[21][21]; // <20>ߴ<EFBFBD>Ķ<EFBFBD>Ԫ<EFBFBD><EFBFBD><E0BBA5><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
|
|
|
|
|
double dGij[21][21]; // ȡ<><C8A1>Ķ<EFBFBD>Ԫ<EFBFBD><EFBFBD><E0BBA5><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
|
|
|
|
|
|
|
|
|
|
double adTable6Eij[21][21]; // <20><>6<EFBFBD><36><EFBFBD><EFBFBD>
|
|
|
|
|
double adTable6Uij[21][21]; // <20><>6<EFBFBD><36><EFBFBD><EFBFBD>
|
|
|
|
|
double adTable6Kij[21][21]; // <20><>6<EFBFBD><36><EFBFBD><EFBFBD>
|
|
|
|
|
double adTable6Gij[21][21]; // <20><>6<EFBFBD><36><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
double adTable5Qi[21]; // <20><>5<EFBFBD><35><EFBFBD><EFBFBD>
|
|
|
|
|
double adTable5Fi[21]; // <20><>5<EFBFBD><35><EFBFBD><EFBFBD>
|
|
|
|
|
double adTable5Si[21]; // <20><>5<EFBFBD><35><EFBFBD><EFBFBD>
|
|
|
|
|
double adTable5Wi[21]; // <20><>5<EFBFBD><35><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
double adTableHhvMol[4][21]; //GB/T11062 Ħ<><C4A6><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double adTableLhvMol[4][21]; //GB/T11062 Ħ<><C4A6><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
double dXi[21]; // <20><>i<EFBFBD><69>ֵ<EFBFBD>Ħ<EFBFBD><C4A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double dPCalc; // <20><>pdetail()<29><><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9>
|
|
|
|
|
double dT; // <20><>ǰ<EFBFBD>¶<EFBFBD>
|
|
|
|
|
double dP; // <20><>ǰѹ<C7B0><D1B9>
|
|
|
|
|
double dRhoTP; // <20><>T<EFBFBD><54>P<EFBFBD>µ<EFBFBD>Ħ<EFBFBD><C4A6><EFBFBD>ܶ<EFBFBD>
|
|
|
|
|
double dB; // <20>ڶ<EFBFBD>ά<EFBFBD><CEAC>ϵ<EFBFBD><CFB5>B
|
|
|
|
|
double adBcoef[18]; // <20><><EFBFBD><EFBFBD>B<EFBFBD><42>18<31><38>ϵ<EFBFBD><CFB5>
|
|
|
|
|
double adFn[58]; // <20>ܶ<EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD>ĺ<EFBFBD><C4BA><EFBFBD>
|
|
|
|
|
double fx[58]; // <20><><EFBFBD><EFBFBD>3<EFBFBD><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5>
|
|
|
|
|
double dU; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double dKp3; // <20><><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double dW; // <20><><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double dQp2; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD>
|
|
|
|
|
double dF; // <20><><EFBFBD>²<EFBFBD><C2B2><EFBFBD>
|
|
|
|
|
double dRho; // Ħ<><C4A6><EFBFBD>ܶ<EFBFBD>
|
|
|
|
|
double dRhoL; // <20><><EFBFBD><EFBFBD>braket<65><74><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD><C4B5>ܶ<EFBFBD>
|
|
|
|
|
double dRhoH; // <20><><EFBFBD><EFBFBD>braket<65><74><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><C4B8>ܶ<EFBFBD>
|
|
|
|
|
double dPRhoL; // <20><><EFBFBD><EFBFBD>braket<65><74><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>ѹ
|
|
|
|
|
double dPRhoH; // <20><><EFBFBD><EFBFBD>braket<65><74><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD>ѹ
|
|
|
|
|
|
|
|
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>ڸ<DAB8><DFBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD>
|
|
|
|
|
double dZ; // <20><>ǰѹ<C7B0><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double ddZdT; // Z<><5A>T<EFBFBD><54>һ<EFBFBD><D2BB>ƫ<EFBFBD><C6AB><EFBFBD><EFBFBD>
|
|
|
|
|
double dd2ZdT2; // Z<><5A>T<EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD>ƫ<EFBFBD><C6AB><EFBFBD><EFBFBD>
|
|
|
|
|
double ddZdD; // Z<><5A>Ħ<EFBFBD><C4A6><EFBFBD>ܶȵ<DCB6>һ<EFBFBD><D2BB>ƫ<EFBFBD><C6AB><EFBFBD><EFBFBD>
|
|
|
|
|
double ddBdT; // B<><42>T<EFBFBD><54>һ<EFBFBD><D2BB>ƫ<EFBFBD><C6AB><EFBFBD><EFBFBD>
|
|
|
|
|
double dd2BdT2; // B<><42>T<EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD>ƫ<EFBFBD><C6AB><EFBFBD><EFBFBD>
|
2025-07-06 07:50:36 +00:00
|
|
|
|
} Detail;
|
|
|
|
|
|
2025-07-06 14:29:58 +00:00
|
|
|
|
// <20><><EFBFBD>캯<EFBFBD><ECBAAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Detail *Detail_Construct(void);
|
|
|
|
|
|
|
|
|
|
void Detail_Destroy(Detail *pDetail);
|
|
|
|
|
|
|
|
|
|
// ˽<>з<EFBFBD><D0B7><EFBFBD>
|
|
|
|
|
int Detail_compositionchange(Detail *pDetail, NGParSTRUCT *pAGA10);
|
|
|
|
|
|
|
|
|
|
int Detail_table(Detail *pDetail);
|
|
|
|
|
|
|
|
|
|
void Detail_paramdl(Detail *pDetail);
|
|
|
|
|
|
|
|
|
|
void Detail_chardl(Detail *pDetail, NGParSTRUCT *pAGA10);
|
|
|
|
|
|
|
|
|
|
void Detail_bvir(Detail *pDetail);
|
|
|
|
|
|
|
|
|
|
void Detail_temp(Detail *pDetail);
|
|
|
|
|
|
|
|
|
|
void Detail_braket(Detail *pDetail, NGParSTRUCT *pAGA10);
|
|
|
|
|
|
|
|
|
|
void Detail_pdetail(Detail *pDetail, double dRho);
|
|
|
|
|
|
|
|
|
|
void Detail_ddetail(Detail *pDetail, NGParSTRUCT *pAGA10);
|
|
|
|
|
|
|
|
|
|
void Detail_relativedensity(Detail *pDetail, NGParSTRUCT *pAGA10);
|
|
|
|
|
|
|
|
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double Detail_zdetail(Detail *pDetail, double dRho);
|
|
|
|
|
|
|
|
|
|
double Detail_dZdT(Detail *pDetail, double dRho);
|
|
|
|
|
|
|
|
|
|
double Detail_d2ZdT2(Detail *pDetail, double dRho);
|
|
|
|
|
|
|
|
|
|
double Detail_dZdD(Detail *pDetail, double dRho);
|
|
|
|
|
|
|
|
|
|
void Detail_Run(Detail *pDetail, NGParSTRUCT *ptNGPar);
|
2025-07-06 07:50:36 +00:00
|
|
|
|
|
|
|
|
|
#endif
|