Psycal.dllについて

電子空気線図(PsyJ)の主要な計算部分は、共通ライブラリ(Psycal.dll)に書きました。


このライブラリは、MFC DLLで作成しましたので、リンクする際は以下ご注意ください。

Psycal.DLL を使う場合、開発するプログラムのEXEホルダに、Psycal.DLLをコピーし、新たにPsycalのホルダーを作成し、各ヘッダーファイルとライブラリを 置き、ライブラリーファイルは、開発プログラムにリンクしてお使いください。 MFCの共通ライブラリーも必要になります。


DLLのダウンロード はこのリンクをクリックしてください。

Psycal.zip を解凍すると、以下のファイルが現れます。

  DLL本体 ライブラリーファイル ヘッダーファイル
1 Psycal.DLL Psycal.lib PsycalApp.h
PsycalFunction.h
DataManager.h
PsyData.h
Calc.h

 

主な計算機能は以下の通りです。

PsycalApp.h

1 任意の2点より各データの算出 PSYCAL cal_HX(double hi, double xi, double po) const;
PSYCAL cal_DPH(double dp, double hi, double po) const;
PSYCAL cal_RHX(double rh, double xi, double po) const;
PSYCAL cal_RHH(double rh, double hi, double po) const;
PSYCAL cal_RHDP(double rh, double dp, double po) const;
PSYCAL cal_WBX(double wb, double xi, double po) const;
PSYCAL cal_WBDP(double wb, double dp, double po) const;
PSYCAL cal_WBRH(double wb, double rh, double po) const;
PSYCAL cal_DBX(double db, double xi, double po) const;
PSYCAL cal_DBH(double db, double hi, double po) const;
PSYCAL cal_DBDP(double db, double dp, double po) const;
PSYCAL cal_DBRH(double db, double rh, double po) const;
2 熱量とエンタルピ差で風量算出 double cal_AIR_KcalDh(double kcal, double dh) const;
3 風量とエンタルピ差で熱量算出  double cal_TH_GDh(double g, double dh) const;
4 その他  

PsycalFunction.h

1 乾球温度より飽和蒸気圧を算出 double Vpre(double db) const;
2 任意の2点より空気状態の計算 double Vpre(double db) const;
3 蒸気圧から絶対湿度を算出 double Abs_p(double pr, double po) const;
4 絶対湿度から蒸気圧を算出 double Vp_xi(double xi, double po) const;
5 乾球温度と蒸気圧より相対湿度を算出 double Hum_db(double db, double pr) const;
6 乾球温度と相対湿度より蒸気圧を算出 double Vp_dbrh(double db, double rh) const;
7 蒸気圧より露点温度を算出 double Dew_t(double pr) const;
8 蒸気圧と相対湿度より乾球温度を算出 double Dew_prh(double pr, double rh) const;
9 乾球温度と湿球温度より絶対湿度を算出 double Ab_dww(double db, double wb, double po) const
10 乾球温度と湿球温度より絶対湿度を算出 double Ab_dwi(double db, double wb, double po) const;
11 絶対湿度と湿球温度より乾球温度を算出 double Db_xiwbw(double xi, double wb, double po) const;
12 乾球温度と絶対湿度より湿球温度を算出 double Wb_dbxi(double db, double xi, double po) const;
13 湿球温度と絶対湿度より比容積を算出 double Svol(double db, double xi, double po) const;
14 比容積絶と相対湿度より乾球温度を算出 double Db_vxi(double vl, double xi, double po) const;
15 比容積と乾球温度より絶対湿度を算出 double Ab_vdb(double vl, double db, double po) const;
16 乾き蒸気のエンタルピ算出 double Steam_Entalpy(double db) const;
17 乾球温度と絶対湿度よりエンタルピを算出 double Entalpy(double db, double xi) const;
18 エンタルピと乾球温度より絶対湿度を算出 double Ab_hidb(double hi, double db) const;
19 エンタルピと絶対湿度より乾球温度を算出 double Db_hixi(double hi, double xi) const;
20 乾球温度よりドライ空気の比重を算出   double DryAir_Spedn(double db, double po) const;
21 乾球温度より比重を算出 double Spedn(double db, double xi, double po) cons

PSYCALは、状態点を表示する構造体で下の様なものです。

ypedef struct _PSYCAL{
double db;   dry bulb
double db1;    dry bubl 1 
double db2;    dry bulb 2
double wb;     wet bulb
double rh;     relative humidity
double dp;     dew point
double hi;      enthalpy
double xi;      abs humidity
double xi1;    abs humidity 1
double xi2;    abs humidity 2
double px;     vopor pressure
double dn;     dennsity
double mt;    minimun temp
}PSYCAL, *pPSYCAL;

詳細は、解凍された各ヘッダーファイルを参照して下さい。

重要な飽和蒸気圧を算出する関数を変更しました。 Dated 2016.01

今まで、飽和蒸気圧算出関数は、機械学会の式とGoff Goff - Gratch の補間式を使用していましたが、

現在最も信頼されている補間式は、J1S Z8806でも使用されている、 Wexler の式ですので、変更しました。

以下に、各補間式での計算比較をあげます。

乾球温度より飽和蒸気圧を算出
空衛学会 Wexler 機会学会の式 J1S Z8806
DB (mmHg) (hPa) (hPa)   (hPa)
60.0 199.4376 199.2019 199.48
50.0 123.4985 123.3527 123.53
40.0 73.8346 73.7501 73.853
30.0 42.4603 42.4149 42.47
21.0 18.641 24.8767 24.8525 24.882
20.0 17.525 23.3880 23.3656 23.392
15.0 12.78 17.0545 17.0393 17.057
10.0 9.2033 12.2800 12.2699 12.281
9.0 8.6045 11.4811 11.4718 11.482
8.0 8.0404 10.7284 10.7199 10.729
7.0 7.5093 10.0196 10.0118 10.02
6.0 7.01 9.3525 9.3453 9.3531
5.0 6.539 8.7249 8.7184 8.7254
4.0 6.097 8.1348 8.1288 8.1352
3.0 5.681 7.5803 7.5749 7.5806
2.0 5.292 7.0595 7.0546 7.0597
1.0 4.925 6.5707 6.5662 6.5708
0.0 4.581 6.1115 6.1080 6.112
-1.0 5.6267 5.6234
-2.0 5.1772 5.1741
-3.0 4.7606 4.7577
-5.0 4.0176 4.0152
-7.0 3.3819 3.3798
-8.0 3.0998 3.0978
-10.0 2.5990 2.5973
-12.0 2.1732 2.1718
-15.0 1.6530 1.6518
-18.0 1.2492 1.2483
-20.0 1.0326 1.0318
-25.0 0.6329 0.6324
-30.0 0.3802 0.3798
Goff - Gratch の式

このDLLは、MFCで作成されたものですが、C#で作成したものもダウンロード出来るようにいたします。

 

 


ページ先頭に戻る
最終更新日:2020/02/04