@@ -114,32 +114,22 @@ def Calculate(self, model: Model) -> None:
114
114
self .HeatkWhExtracted .value = np .zeros (self .plant_lifetime .value )
115
115
self .PumpingkWh .value = np .zeros (self .plant_lifetime .value )
116
116
117
+ def _integrate_slice (series , _i ):
118
+ return SurfacePlant .integrate_time_series_slice (
119
+ series , _i , model .economics .timestepsperyear .value , self .utilization_factor .value
120
+ )
121
+
117
122
for i in range (0 , self .plant_lifetime .value ):
118
- # FIXME TODO WIP adjust dx for slice size
119
- self .HeatkWhExtracted .value [i ] = np .trapz (self .HeatExtracted .value [
120
- (0 + i * model .economics .timestepsperyear .value ):((
121
- i + 1 ) * model .economics .timestepsperyear .value ) + 1 ],
122
- dx = 1. / model .economics .timestepsperyear .value * 365. * 24. ) * 1000. * self .utilization_factor .value
123
- self .PumpingkWh .value [i ] = np .trapz (model .wellbores .PumpingPower .value [
124
- (0 + i * model .economics .timestepsperyear .value ):((
125
- i + 1 ) * model .economics .timestepsperyear .value ) + 1 ],
126
- dx = 1. / model .economics .timestepsperyear .value * 365. * 24. ) * 1000. * self .utilization_factor .value
123
+ self .HeatkWhExtracted .value [i ] = _integrate_slice (self .HeatExtracted .value , i )
124
+ self .PumpingkWh .value [i ] = _integrate_slice (model .wellbores .PumpingPower .value , i )
127
125
128
126
self .HeatkWhProduced .value = np .zeros (self .plant_lifetime .value )
129
127
for i in range (0 , self .plant_lifetime .value ):
130
- # FIXME TODO WIP adjust dx for slice size
131
- self .HeatkWhProduced .value [i ] = np .trapz (self .HeatProduced .value [
132
- (0 + i * model .economics .timestepsperyear .value ):((
133
- i + 1 ) * model .economics .timestepsperyear .value ) + 1 ],
134
- dx = 1. / model .economics .timestepsperyear .value * 365. * 24. ) * 1000. * self .utilization_factor .value
128
+ self .HeatkWhProduced .value [i ] = _integrate_slice (self .HeatProduced .value , i )
135
129
136
130
self .cooling_kWh_Produced .value = np .zeros (self .plant_lifetime .value )
137
131
for i in range (0 , self .plant_lifetime .value ):
138
- # FIXME TODO WIP adjust dx for slice size
139
- self .cooling_kWh_Produced .value [i ] = np .trapz (self .cooling_produced .value [
140
- (0 + i * model .economics .timestepsperyear .value ):((
141
- i + 1 ) * model .economics .timestepsperyear .value ) + 1 ],
142
- dx = 1. / model .economics .timestepsperyear .value * 365. * 24. ) * 1000. * self .utilization_factor .value
132
+ self .cooling_kWh_Produced .value [i ] = _integrate_slice (self .cooling_produced .value , i )
143
133
144
134
# calculate reservoir heat content
145
135
self .RemainingReservoirHeatContent .value = SurfacePlant .remaining_reservoir_heat_content (
0 commit comments