123 lines
4.7 KiB
C
123 lines
4.7 KiB
C
/*************************************************************************
|
||
* <20>ļ<EFBFBD>: detail.h
|
||
**************************************************************************/
|
||
|
||
#ifndef _DETAIL_H
|
||
#define _DETAIL_H
|
||
|
||
#include "NGCal.h"
|
||
#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];
|
||
double adUn[58];
|
||
|
||
// <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>
|
||
} Detail;
|
||
|
||
// <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);
|
||
|
||
#endif
|