/[ascend]/trunk/models/johnpye/fprops/fluids/ethane.c
ViewVC logotype

Annotation of /trunk/models/johnpye/fprops/fluids/ethane.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2301 - (hide annotations) (download) (as text)
Sat Aug 21 13:28:35 2010 UTC (13 years, 10 months ago) by jpye
File MIME type: text/x-csrc
File size: 12189 byte(s)
Regen toluene model working, next water.
1 hongke 2280 /* This file is created by Hongke Zhu, 06-17-2010.
2     Chemical & Materials Engineering Department,
3     University of Alabama in Huntsville, United States.
4    
5     LITERATURE REFERENCE
6     Buecker, D. and Wagner, W.
7     "A Reference Equation of State for the Thermodynamic Properties of Ethane for Temperatures from the Melting Line to 675 K and Pressures up to 900 MPa,"
8     J. Phys. Chem. Ref. Data, 35(1):205-266, 2006.
9     */
10    
11 jpye 2301 #include "../helmholtz.h"
12    
13 hongke 2280 #define ETHANE_M 30.06904 /* kg/kmol */
14     #define ETHANE_R (8314.472/ETHANE_M) /* J/kg/K */
15     #define ETHANE_TSTAR 305.322 /* K */
16    
17     const IdealData ideal_data_ethane = {
18     9.212802589 /* constant */
19     , -4.682248550 /* linear */
20     , ETHANE_TSTAR /* Tstar */
21     , ETHANE_R /* cp0star */
22     , 1 /* power terms */
23     , (const IdealPowTerm[]){
24     {4.003039265, 0.0}
25     }
26     , 4 /* exponential terms */
27     , (const IdealExpTerm[]){
28     {1.117433359, 430.23083}
29     ,{3.467773215, 1224.31590}
30     ,{6.941944640, 2014.12064}
31     ,{5.970850948, 4268.34363}
32     }
33     };
34    
35     const HelmholtzData helmholtz_data_ethane = {
36     "ethane"
37     , /* R */ ETHANE_R /* J/kg/K */
38     , /* M */ ETHANE_M /* kg/kmol */
39     , /* rho_star */ 6.856886685*ETHANE_M /* kg/m3(= rho_c for this model) */
40     , /* T_star */ ETHANE_TSTAR /* K (= T_c for this model) */
41    
42     , /* T_c */ ETHANE_TSTAR
43     , /* rho_c */ 6.856886685*ETHANE_M /* kg/m3 */
44 jpye 2301 , /* T_t */ 90.368
45 hongke 2280
46     , 0.0995 /* acentric factor */
47     , &ideal_data_ethane
48     , 39 /* power terms */
49     , (const HelmholtzPowTerm[]){
50     /* a_i, t_i, d_i, l_i */
51     {0.83440745735241e+0, 0.25, 1.0, 0}
52     , {-0.14287360607171e+1, 1.00, 1.0, 0}
53     , {0.34430242210927e+0, 0.25, 2.0, 0}
54     , {-0.42096677920265e+0, 0.75, 2.0, 0}
55     , {0.12094500886549e-1, 0.75, 4.0, 0}
56     , {-0.57976201597341e+0, 2.00, 1.0, 1}
57     , {-0.33127037870838e-1, 4.25, 1.0, 1}
58     , {-0.11751654894130e+0, 0.75, 2.0, 1}
59     , {-0.11160957833067e+0, 2.25, 2.0, 1}
60     , {0.62181592654406e-1, 3.00, 3.0, 1}
61     , {0.98481795434443e-1, 1.00, 6.0, 1}
62     , {-0.98268582682358e-1, 1.25, 6.0, 1}
63     , {-0.23977831007049e-3, 2.75, 7.0, 1}
64     , {0.69885663328821e-3, 1.00, 9.0, 1}
65     , {0.19665987803305e-4, 2.00, 10.0, 1}
66     , {-0.14586152207928e-1, 2.50, 2.0, 2}
67     , {0.46354100536781e-1, 5.50, 4.0, 2}
68     , {0.60764622180645e-2, 7.00, 4.0, 2}
69     , {-0.26447330147828e-2, 0.50, 5.0, 2}
70     , {-0.42931872689904e-1, 5.50, 5.0, 2}
71     , {0.29987786517263e-2, 2.50, 6.0, 2}
72     , {0.52919335175010e-2, 4.00, 8.0, 2}
73     , {-0.10383897798198e-2, 2.00, 9.0, 2}
74     , {-0.54260348214694e-1, 10.00, 2.0, 3}
75     , {-0.21959362918493e+0, 16.00, 3.0, 3}
76     , {0.35362456650354e+0, 18.00, 3.0, 3}
77     , {-0.12477390173714e+0, 20.00, 3.0, 3}
78     , {0.18425693591517e+0, 14.00, 4.0, 3}
79     , {-0.16192256436754e+0, 18.00, 4.0, 3}
80     , {-0.82770876149064e-1, 12.00, 5.0, 3}
81     , {0.50160758096437e-1, 19.00, 5.0, 3}
82     , {0.93614326336655e-2, 7.00, 6.0, 3}
83     , {-0.27839186242864e-3, 15.00, 11.0, 3}
84     , {0.23560274071481e-4, 9.00, 14.0, 3}
85     , {0.39238329738527e-2, 26.00, 3.0, 4}
86     , {-0.76488325813618e-3, 28.00, 3.0, 4}
87     , {-0.49944304440730e-2, 28.00, 4.0, 4}
88     , {0.18593386407186e-2, 22.00, 8.0, 4}
89     , {-0.61404353331199e-3, 13.00, 10.0, 4}
90     }
91     , 5 /* gaussian terms */
92     , (const HelmholtzGausTerm[]){
93     /* n_i, t_i, d_i, alpha_i,beta_i, gamma_i,delta_i */
94     {-0.23312179367924e-2, 0.0, 1.0, 15.0, 150.0, 1.05, 1.0}
95     , {0.29301047908760e-2, 3.0, 1.0, 15.0, 150.0, 1.05, 1.0}
96     , {-0.26912472842883e-3, 3.0, 3.0, 15.0, 150.0, 1.05, 1.0}
97     , {0.18413834111814e+3, 0.0, 3.0, 20.0, 275.0, 1.22, 1.0}
98     , {-0.10397127984854e+2, 3.0, 2.0, 20.0, 400.0, 1.16, 1.0}
99    
100     }
101     , 0 /* critical terms */
102     , 0
103     };
104    
105     /*
106     Test suite. These tests attempt to validate the current code using a few sample figures output by REFPROP 8.0. To compile and run the test:
107    
108     ./test.py ethane
109     */
110    
111     #ifdef TEST
112    
113 jpye 2300 #include "../test.h"
114 hongke 2280 #include <math.h>
115     #include <assert.h>
116     #include <stdio.h>
117    
118     const TestData td[]; const unsigned ntd;
119    
120     int main(void){
121     //return helm_check_u(&helmholtz_data_ethane, ntd, td);
122     //return helm_check_dpdT_rho(&helmholtz_data_ethane, ntd, td);
123     //return helm_check_dpdrho_T(&helmholtz_data_ethane, ntd, td);
124     //return helm_check_dhdT_rho(&helmholtz_data_ethane, ntd, td);
125     //return helm_check_dhdrho_T(&helmholtz_data_ethane, ntd, td);
126     //return helm_check_dudT_rho(&helmholtz_data_ethane, ntd, td);
127     //return helm_check_dudrho_T(&helmholtz_data_ethane, ntd, td);
128     return helm_run_test_cases(&helmholtz_data_ethane, ntd, td, 'C');
129     }
130    
131     /*
132     A small set of data points calculated using REFPROP 8.0, for validation.
133     */
134    
135     const TestData td[] = {
136     /* Temperature, Pressure, Density, Int. Energy, Enthalpy, Entropy, Cv, Cp, Cp0, Helmholtz */
137     /* (C), (MPa), (kg/m3), (kJ/kg), (kJ/kg), (kJ/kg-K), (kJ/kg-K), (kJ/kg-K), (kJ/kg-K), (kJ/kg) */
138     {-1.50E+2, 1.E-1, 6.15508091549E+2, -8.14074352115E+2, -8.13911884714E+2, -4.35084835408E+0, 1.47272462242E+0, 2.28315877551E+0, 1.23340615685E+0, -2.7826737731E+2}
139     , {-1.00E+2, 1.E-1, 5.57924288163E+2, -6.97493200756E+2, -6.97313964967E+2, -3.55730207586E+0, 1.43319138386E+0, 2.39683640756E+0, 1.33921915038E+0, -8.15463463211E+1}
140     , {-5.0E+1, 1.E-1, 1.6506610855E+0, -1.84257088313E+2, -1.23675300278E+2, -4.69372323988E-1, 1.20911299515E+0, 1.50677347493E+0, 1.47500607374E+0, -7.95166542153E+1}
141     , {0.E+0, 1.E-1, 1.33711322049E+0, -1.19427058448E+2, -4.46390760485E+1, -1.50320162463E-1, 1.37554352423E+0, 1.66329486468E+0, 1.64770632977E+0, -7.83671060713E+1}
142     , {5.0E+1, 1.E-1, 1.12569683934E+0, -4.55714350685E+1, 4.32624289924E+1, 1.44740666891E-1, 1.57340801762E+0, 1.85691579801E+0, 1.84756881746E+0, -9.23443815743E+1}
143     , {1.00E+2, 1.E-1, 9.72734661786E-1, 3.85164067559E+1, 1.41319364159E+2, 4.26515557391E-1, 1.7855009878E+0, 2.06675950332E+0, 2.06055304947E+0, -1.20637873485E+2}
144     , {1.50E+2, 1.E-1, 8.56686172895E-1, 1.33251710849E+2, 2.49980570452E+2, 6.99510128615E-1, 1.9993968478E+0, 2.27931863461E+0, 2.27492077928E+0, -1.62746000074E+2}
145     , {2.00E+2, 1.E-1, 7.65532193698E-1, 2.385314345E+2, 3.69159513663E+2, 9.65506465445E-1, 2.20744745702E+0, 2.48651259424E+0, 2.48324891026E+0, -2.18297949625E+2}
146     , {2.50E+2, 1.E-1, 6.91995014141E-1, 3.53965012959E+2, 4.98474724671E+2, 1.22514923762E+0, 2.40587848199E+0, 2.68436360406E+0, 2.68185570132E+0, -2.86971810704E+2}
147     , {3.00E+2, 1.E-1, 6.31396132606E-1, 4.79036463654E+2, 6.37415640903E+2, 1.47866774316E+0, 2.59336692506E+0, 2.87144237161E+0, 2.8694618797E+0, -3.6846195334E+2}
148     , {-1.50E+2, 1.E+0, 6.15951026097E+2, -8.14397400291E+2, -8.12773894594E+2, -4.35347677541E+0, 1.4738480412E+0, 2.28169516546E+0, 1.23340615685E+0, -2.782667354E+2}
149     , {-1.00E+2, 1.E+0, 5.58684411309E+2, -6.98096136336E+2, -6.96306217054E+2, -3.56079196369E+0, 1.4344409742E+0, 2.39254727436E+0, 1.33921915038E+0, -8.15450078231E+1}
150     , {-5.0E+1, 1.E+0, 4.92434824501E+2, -5.73033239153E+2, -5.71002513562E+2, -2.92644398383E+0, 1.47314126188E+0, 2.66286649615E+0, 1.47500607374E+0, 8.00027358387E+1}
151     , {0.E+0, 1.E+0, 1.4819396272E+1, -1.3469652118E+2, -6.72173889914E+1, -8.44255116701E-1, 1.43006561191E+0, 1.86687159029E+0, 1.64770632977E+0, 9.59117639465E+1}
152     , {5.0E+1, 1.E+0, 1.19101910522E+1, -5.61907916886E+1, 2.77709177094E+1, -5.25130332024E-1, 1.59719044298E+0, 1.9566449391E+0, 1.84756881746E+0, 1.13505075105E+2}
153     , {1.00E+2, 1.E+0, 1.0065262914E+1, 3.03701471884E+1, 1.2972174968E+2, -2.3208574693E-1, 1.79909383847E+0, 2.12785139896E+0, 2.06055304947E+0, 1.16972943655E+2}
154     , {1.50E+2, 1.E+0, 8.75460242192E+0, 1.26680079205E+2, 2.40905711827E+2, 4.72787513622E-2, 2.008346056E+0, 2.32103028349E+0, 2.27492077928E+0, 1.06674075566E+2}
155 jpye 2301
156 hongke 2280 , {2.00E+2, 1.E+0, 7.76369865386E+0, 2.3305870312E+2, 3.61863290287E+2, 3.17259832935E-1, 2.21381924881E+0, 2.51684931154E+0, 2.48324891026E+0, 8.29472131669E+1}
157     , {2.50E+2, 1.E+0, 6.9834034936E+0, 3.49303629783E+2, 4.92500281805E+2, 5.79564344098E-1, 2.41065572421E+0, 2.70739305233E+0, 2.68185570132E+0, 4.61045431686E+1}
158     , {3.00E+2, 1.E+0, 6.35072207042E+0, 4.74998224672E+2, 6.32460634286E+2, 8.34947371563E-1, 2.59708737672E+0, 2.88948669244E+0, 2.8694618797E+0, -3.55186133963E+0}
159     , {-1.50E+2, 1.E+1, 6.20238529246E+2, -8.17481952334E+2, -8.01359122925E+2, -4.37902016713E+0, 1.48468824424E+0, 2.26844900379E+0, 1.23340615685E+0, -2.78205618752E+2}
160     , {-1.00E+2, 1.E+1, 5.65822514688E+2, -7.03703521881E+2, -6.86030135368E+2, -3.59388039975E+0, 1.44643652958E+0, 2.35618736393E+0, 1.33921915038E+0, -8.14231306646E+1}
161     , {-5.0E+1, 1.E+1, 5.06196651557E+2, -5.83880821915E+2, -5.64125653703E+2, -2.97635892656E+0, 1.48215573067E+0, 2.54336566393E+0, 1.47500607374E+0, 8.0293672548E+1}
162     , {0.E+0, 1.E+1, 4.33348869211E+2, -4.51226532377E+2, -4.28150436625E+2, -2.4279008688E+0, 1.59437303914E+0, 2.95275059134E+0, 1.64770632977E+0, 2.11954589935E+2}
163     , {5.0E+1, 1.0E+1, 3.18739131184E+2, -2.86990730429E+2, -2.55617111624E+2, -1.85077683477E+0, 1.799465619E+0, 4.26397264806E+0, 1.84756881746E+0, 3.11087803727E+2}
164     , {1.00E+2, 1.0E+1, 1.5906233424E+2, -8.70755854494E+1, -2.42071505822E+1, -1.18382173188E+0, 1.96218405294E+0, 3.83542975292E+0, 2.06055304947E+0, 3.54667493803E+2}
165     , {1.50E+2, 1.0E+1, 1.09665032419E+2, 4.91637301755E+1, 1.40350499371E+2, -7.68928903518E-1, 2.0956305579E+0, 3.00181520921E+0, 2.27492077928E+0, 3.74535995699E+2}
166     , {2.00E+2, 1.0E+1, 8.81817475642E+1, 1.73570311573E+2, 2.86972464243E+2, -4.41325831806E-1, 2.27108349018E+0, 2.90844736711E+0, 2.48324891026E+0, 3.82383628892E+2}
167     , {2.50E+2, 1.0E+1, 7.52293148011E+1, 3.0070913338E+2, 4.33636038622E+2, -1.46715400294E-1, 2.45257722454E+0, 2.97103815812E+0, 2.68185570132E+0, 3.77463295043E+2}
168     , {3.00E+2, 1.0E+1, 6.62450463563E+1, 4.33900546181E+2, 5.84855229588E+2, 1.29270572659E-1, 2.62960924803E+0, 3.08223842962E+0, 2.8694618797E+0, 3.59809117461E+2}
169     , {-1.50E+2, 1.E+2, 6.53768635184E+2, -8.38548314736E+2, -6.85589003722E+2, -4.58445419883E+0, 1.57237690886E+0, 2.20675523181E+0, 1.23340615685E+0, -2.73972780149E+2}
170     , {-1.00E+2, 1.00E+2, 6.13800496512E+2, -7.37659549393E+2, -5.74740163423E+2, -3.82924065986E+0, 1.54558612031E+0, 2.23062335496E+0, 1.33921915038E+0, -7.46265291383E+1}
171     , {-5.0E+1, 1.00E+2, 5.76094044152E+2, -6.35603588225E+2, -4.62020818163E+2, -3.2576258984E+0, 1.58069531024E+0, 2.28573891647E+0, 1.47500607374E+0, 9.13356310021E+1}
172     , {0.E+0, 1.E+2, 5.40301904559E+2, -5.30428772339E+2, -3.45347063102E+2, -2.78620206072E+0, 1.67659976407E+0, 2.38893595946E+0, 1.64770632977E+0, 2.30622320545E+2}
173     , {5.0E+1, 1.00E+2, 5.06302411823E+2, -4.19998000506E+2, -2.22487584468E+2, -2.37349258912E+0, 1.81962065801E+0, 2.53030122275E+0, 1.84756881746E+0, 3.46996129669E+2}
174     , {1.00E+2, 1.00E+2, 4.74179392245E+2, -3.02875087361E+2, -9.19844378817E+1, -1.99827753578E+0, 1.99062537476E+0, 2.69175292166E+0, 2.06055304947E+0, 4.42782175114E+2}
175     , {1.50E+2, 1.00E+2, 4.44110129148E+2, -1.78399663071E+2, 4.67697114526E+1, -1.64954091904E+0, 2.17359275649E+0, 2.85833456889E+0, 2.27492077928E+0, 5.19603576819E+2}
176     , {2.00E+2, 1.00E+2, 4.16262775983E+2, -4.64522821732E+1, 1.93780584587E+2, -1.32132968769E+0, 2.35794320739E+0, 3.02097821763E+0, 2.48324891026E+0, 5.78734859555E+2}
177     , {2.50E+2, 1.00E+2, 3.90731674044E+2, 9.2801655458E+1, 3.48731764642E+2, -1.01014492019E+0, 2.53780576762E+0, 3.17557776184E+0, 2.68185570132E+0, 6.21258970458E+2}
178     , {3.00E+2, 1.00E+2, 3.67514428978E+2, 2.39088673647E+2, 5.11186833923E+2, -7.13670499407E-1, 2.71042944184E+0, 3.32113362064E+0, 2.8694618797E+0, 6.48128920382E+2}
179     };
180    
181     const unsigned ntd = sizeof(td)/sizeof(TestData);
182    
183     #endif

john.pye@anu.edu.au
ViewVC Help
Powered by ViewVC 1.1.22