GasFlowMeter/User/NG/Detail.h

123 lines
4.7 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*************************************************************************
* <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