Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import glob, os, json
import numpy as np
import CoolProp.CoolProp as CP
CP.set_config_string(CP.ALTERNATIVE_REFPROP_PATH, r'C:\Users\ihb\Code\REFPROP-cmake\bld\Release')
import teqp
root = teqp.get_datapath()
for jname in glob.glob(root+'/dev/fluids/*.json'):
name = os.path.split(jname)[1].split('.')[0]
try:
model = teqp.build_multifluid_model([name], root, root+'/dev/mixtures/mixture_binary_pairs.json',{'estimate':'linear'})
Tc = model.get_Tcvec()[0]
rhoc = 1/model.get_vcvec()[0]
z = np.array([1.0])
# print(Tc, rhoc)
diff = model.get_Ar00(Tc+10, rhoc, z) - CP.PropsSI('alphar', 'T', Tc+10, 'Dmolar', rhoc, name)
if abs(diff) > 1e-13:
print(name, diff, rhoc, Tc+10, model.get_Ar00(Tc+10, rhoc, z), CP.PropsSI('alphar','T',Tc+10, 'Dmolar',rhoc,name))
def get_REFPROP_name(name):
j = json.load(open(root+f'/dev/fluids/{name}.json'))
return j['INFO']['REFPROP_NAME']
RPname = get_REFPROP_name(name)
TcRP, rhocRP = [CP.PropsSI('REFPROP::'+RPname,k) for k in ['Tcrit','rhomolar_critical']]
# If EOS is the same according to the DOI:
if abs(TcRP-Tc) > 1e-10:
print(name, TcRP, Tc, '!!!!!!!! TC(RP,teqp) !!!!!!')
if abs(rhocRP-rhoc) > 1e-10:
print(name, rhocRP, rhoc, '!!!!!!!! RHOC(RP,teqp) !!!!!!')
continue
if RPname != 'N/A':
diffRP = model.get_Ar00(Tc+10, rhoc, z) - CP.PropsSI('alphar', 'T', Tc+10, 'Dmolar', rhoc, 'REFPROP::'+RPname)
if abs(diffRP) > 1e-5:
print(TcRP, Tc)
print(rhocRP, rhoc)
print(name, diffRP, rhoc, Tc+10, model.get_Ar00(Tc+10, rhoc, z), CP.PropsSI('alphar','T',Tc+10, 'Dmolar',rhoc,'REFPROP::'+RPname))
except BaseException as BE:
print(name, BE)