-
Notifications
You must be signed in to change notification settings - Fork 0
/
Flowrate Laser Comp.py
102 lines (81 loc) · 2.44 KB
/
Flowrate Laser Comp.py
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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#importing functions
from Functions import *
from MainConfigurationFile import roughness, experiment, Step
from MainConfigurationFile import StartTimes, EndTimes, ReservoirHeight, EntryPressure, ExitPressure, types
# Retrieve Data from Experiment
actualpath = getExperimentPath(roughness, experiment, experiment, types)
print(actualpath)
pressure = tdms_df(actualpath)
#Retrieve Data from laser
laserpath1 = getLaserPath(roughness, experiment,'1', types)
laser1 = laser_df(laserpath1)
laserpath2 = getLaserPath(roughness, experiment, '2', types)
laser2 = laser_df(laserpath2)
#slices
First= StartTimes[Step-1]
Last = EndTimes[Step-1]
First = First
Last = Last
#pressure drop
reservoir = ReservoirHeight[Step-1]
before = EntryPressure[Step-1]
after = ExitPressure[Step-1]
Start = ((First+Last)/2)-50
End = Start+100
sliceddata = pressure.reset_index()
a = sliceddata['Flow Rate Time'] > (Start)
b = sliceddata.where(a)
d = b['Flow Rate Time'] < (End)
e = b.where(d)
f = e[['Flow Rate Time', 'Flow Rate']]
flowrate = f.dropna()
flowrate = flowrate.set_index('Flow Rate Time')
print(flowrate.mean())
flows = flowrate
flows['Speed'] = (flows['Flow Rate']/60000)/((math.pi*pow(.011,2))/4)*2
speed = flows.drop('Flow Rate', axis=1)
mov0 = pd.DataFrame()
mov0['rolling'] = speed.rolling(10).mean()
mov0 = mov0.dropna()
laser1 = laser_snr_filter(laser1, 2.0)
laser1 = laser_df_for_graph(laser1)
laser1 = laser_interpolate(laser1)
laser1 = laser_slice_df(laser1, Start, End)
mov1 = pd.DataFrame()
mov1['rolling'] = laser1.rolling(10).mean()
mov1 = mov1.dropna()
laser2 = laser_snr_filter(laser2, 2.0)
laser2 = laser_df_for_graph(laser2)
laser2 = laser_interpolate(laser2)
laser2 = laser_slice_df(laser2, Start, End)
mov2 = pd.DataFrame()
mov2['rolling'] = laser2.rolling(10).mean()
mov2 = mov2.dropna()
mov01 = pow(mov0,2)
mov02 = mov01.mean()
mov03 = pow(mov02,.5)
print(mov03)
print(mov0.mean())
mov11 = pow(mov1,2)
mov12 = mov11.mean()
mov13 = pow(mov12,.5)
print(mov13)
print(mov1.mean())
mov21 = pow(mov2,2)
mov22 = mov21.mean()
mov23 = pow(mov22,.5)
print(mov23)
print(mov2.mean())
fig, ax = plt.subplots(2,1, sharex=True)
ax[0].plot(mov1)
ax[0].plot(mov0)
ax[0].legend(["Laser1", "Flow Rate Speed"], loc='upper right')
ax[0].set_ylabel('m/sec')
ax[0].grid(True, which = 'both')
ax[0].set_title('Results')
ax[1].plot(mov2)
ax[1].plot(mov0)
ax[1].legend(["Laser2", "Flow Rate Speed"], loc='upper right')
ax[1].set_ylabel('Speed (m/sec)')
ax[1].grid(True, which = 'both')
plt.show()