74 lines
1.7 KiB
C
74 lines
1.7 KiB
C
|
/*************************************************************************
|
|||
|
* <EFBFBD>ļ<EFBFBD>: therm.h
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>: Therm<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD>ļ<EFBFBD>
|
|||
|
|
|||
|
**************************************************************************/
|
|||
|
|
|||
|
#ifndef _THERM_H
|
|||
|
#define _THERM_H
|
|||
|
|
|||
|
#include "NGCal.h"
|
|||
|
#include "Detail.h"
|
|||
|
|
|||
|
// Therm<72><6D>
|
|||
|
typedef struct Therm {
|
|||
|
// <20><>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD>
|
|||
|
double dT; // <20><>ǰ<EFBFBD>¶ȣ<C2B6><C8A3><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(K)
|
|||
|
double dP; // <20><>ǰѹ<C7B0><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>˹<EFBFBD><CBB9>(Pa)
|
|||
|
double dD; // Ħ<><C4A6><EFBFBD>ܶȣ<DCB6><C8A3><EFBFBD>λmol/dm3
|
|||
|
double dRho; // <20><><EFBFBD><EFBFBD><EFBFBD>ܶȣ<DCB6><C8A3><EFBFBD>λkg/m3
|
|||
|
|
|||
|
double dPdD; // P<><50>D<EFBFBD><44>ƫ<EFBFBD><C6AB><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
double dPdT; // P<><50>T<EFBFBD><54>ƫ<EFBFBD><C6AB><EFBFBD><EFBFBD>
|
|||
|
double dSi; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD><D8A3><EFBFBD>λkJ/kg.K
|
|||
|
double dTold; // ֮ǰʹ<C7B0>õ<EFBFBD><C3B5>¶<EFBFBD>
|
|||
|
|
|||
|
double dMrxold; // ֮ǰʹ<C7B0>õĻ<C3B5><C4BB><EFBFBD><EFBFBD><EFBFBD>Ħ<EFBFBD><C4A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
// <20><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
|
|||
|
double (*CpiMolar)(struct Therm*, NGParSTRUCT*);
|
|||
|
void (*Run)(struct Therm*, NGParSTRUCT*, Detail*);
|
|||
|
double (*Ho)(struct Therm*, NGParSTRUCT*);
|
|||
|
double (*So)(struct Therm*, NGParSTRUCT*);
|
|||
|
void (*CprCvrHS)(struct Therm*, NGParSTRUCT*, Detail*);
|
|||
|
double (*H)(struct Therm*, NGParSTRUCT*, Detail*);
|
|||
|
double (*S)(struct Therm*, NGParSTRUCT*, Detail*);
|
|||
|
void (*HS_Mode)(struct Therm*, NGParSTRUCT*, Detail*, double, double, int);
|
|||
|
} Therm;
|
|||
|
|
|||
|
// Therm<72><6D><EFBFBD>Ĺ<EFBFBD><C4B9>캯<EFBFBD><ECBAAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Therm* Therm_construct(void);
|
|||
|
void Therm_destruct(Therm* obj);
|
|||
|
|
|||
|
// Therm<72><6D>ʹ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
// ʹ<><CAB9> extern <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
extern int GK_points;
|
|||
|
extern double GK_root[5];
|
|||
|
extern double GK_weight[5];
|
|||
|
extern double ThermConstants[21][11];
|
|||
|
|
|||
|
// <20>Ȼ<EFBFBD>ѧ<EFBFBD><D1A7>·<EFBFBD>ﵽ<EFBFBD><EFB5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: 1 cal(IT) = 4.1840 J
|
|||
|
extern double CalTH ;
|
|||
|
|
|||
|
|
|||
|
// ϵ<><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><C3B6>
|
|||
|
enum CoefficientList {
|
|||
|
coefA = 0,
|
|||
|
coefB,
|
|||
|
coefC,
|
|||
|
coefD,
|
|||
|
coefE,
|
|||
|
coefF,
|
|||
|
coefG,
|
|||
|
coefH,
|
|||
|
coefI,
|
|||
|
coefJ,
|
|||
|
coefK
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
#endif
|
|||
|
|