File size: 4,076 Bytes
ac3f130
90da2e9
ac3f130
 
 
 
 
 
 
 
 
 
 
 
 
d47d8f8
ac3f130
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
90da2e9
 
 
a42874d
 
 
90da2e9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
a42874d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
import numpy as np
import pandas as pd

def Polymers():

	# Named polymer matrices and Ap values
	nPoly = 20
	PolyData = np.zeros((nPoly,), dtype=[('name', 'a75'), ('Ap', 'f')])
	PolyData[0] = ('Silicone', 16.9)
	PolyData[1] = ('Polyethylene (density <= 0.94 g/cm3)', 11.7)
	PolyData[2] = ('Polyethylene (density > 0.94 g/cm3)', 8.2)
	PolyData[3] = ('Polyethylene terephthalate', 2.6)
	PolyData[4] = ('Polyurethane (polyether)', 11.7)
	PolyData[5] = ('Polycarbonate', 2.6)
	PolyData[6] = ('Polyoxymethylene', 8.2)
	PolyData[7] = ('Poly(methyl methacrylate)', 2.6)
	PolyData[8] = ('Acrylonitrile butadiene styrene', 8.2)
	PolyData[9] = ('Polyether block amide', 11.7)
	PolyData[10] = ('Polyamide', 2.6)
	PolyData[11] = ('Polystyrene', 2.6)
	PolyData[12] = ('Polyvinyl chloride (plasticized)', 16.9)
	PolyData[13] = ('Polytetrafluoroethylene', 8.2)
	PolyData[14] = ('Polyvinyl acetate', 11.7)
	PolyData[15] = ('Polypropylene', 8.2)
	PolyData[16] = ('Polybutylene terephthalate', 2.6)
	PolyData[17] = ('Polyetheretherketone', 2.6)
	PolyData[18] = ('Fluorinated ethylene propylene', 8.2)
	PolyData[19] = ('Other polymer', None)

	# Convert the list to a format the html likes
	polymers = np.zeros(nPoly, dtype='object')
	Ap = np.zeros(nPoly)
	for i in range(nPoly):
		polymers[i] = PolyData[i][0].decode('UTF-8')
		Ap[i] = PolyData[i][1]

	return polymers, Ap

def Polymers2():
    """
    Statistical 95% confidence level
    """
    from functions import PowerLaw, Piringer
    PolyData = pd.read_csv('polymer_names.tsv', sep='\t')
    polymers = np.array(list(PolyData['Long_Name'])+['Other polymer'])
    categories = np.array(list(PolyData['New Class'])+[None])
    params = {'G1': [50, PowerLaw, PowerLaw, [-13.243621036934327, -0.6666666666666666], [-9.14139696305177, -3.217613748314546]],
              'G2': [50, PowerLaw, PowerLaw, [-11.670431142672907, -0.6666666666666666], [-4.207370125521433, -5.167139609862643]],
              'P1': [50, Piringer, Piringer, [12.858060826417205], [12.881407288933005]],
              'P2': [50, Piringer, Piringer, [12.212344151487486], [9.873221841354686]],
              'P3': [50, Piringer, Piringer, [13.512912106353479], [8.164778517800128]],
              'P4': [50, Piringer, Piringer, [12.055689556938795], [7.22846764330788]],
              'R1': [209.3419053195988, PowerLaw, Piringer, [-8.090252515347814, -0.6], [17.3501680736803]],
              'R2': [50, Piringer, Piringer, [14.180664904418675], [14.473277531089229]],
              None: [50, PowerLaw, PowerLaw, [-8.090252515347814, -0.6], [-8.090252515347814, -0.6]]}
    # None = new correlation for D in water at 37 °C, ln(alpha) = ln(3.07e-4) ~ -8.09, beta=-0.6
    return polymers, categories, params

def Polymers3():
    """
    95th quantile bounds
    """
    from functions import PowerLaw, Piringer
    PolyData = pd.read_csv('polymer_names.tsv', sep='\t')
    polymers = np.array(list(PolyData['Long_Name'])+['Other polymer'])
    categories = np.array(list(PolyData['New Class'])+[None])
    params = {'G1': [50, PowerLaw, PowerLaw, [-13.502779929501807, -0.6666666666666666], [-10.253395603708231, -3.217613748314546]],
              'G2': [50, PowerLaw, PowerLaw, [-12.76225708905239, -0.6666666666666666], [-5.160958746539876, -5.167139469939434]],
              'P1': [50, Piringer, Piringer, [13.629303279781514], [12.079611631692895]],
              'P2': [50, Piringer, Piringer, [13.290448761749992], [9.322679065204227]],
              'P3': [50, Piringer, Piringer, [12.545823492654485], [7.933602214641137]],
              'P4': [50, Piringer, Piringer, [11.156096930175831], [5.613951368217457]],
              'R1': [96.8065922072269, PowerLaw, Piringer, [-8.12291795252817, -0.6], [16.206593376953126]],
              'R2': [50, Piringer, Piringer, [14.072482049201522], [14.281527272781695]],
              None: [50, PowerLaw, PowerLaw, [-8.12291795252817, -0.6], [-8.12291795252817, -0.6]]}
    # None = new correlation for D in water at 37 °C, ln(alpha) = ln(2.967e-4) ~ -8.12, beta=-0.6
    return polymers, categories, params