exerpy 0.0.3__py3-none-any.whl → 0.0.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,135 @@
1
+ {
2
+ "_metadata": {
3
+ "name": "Chemical Engineering Plant Cost Index (CEPCI)",
4
+ "source": "Chemical Engineering Magazine",
5
+ "description": "Cost index for updating equipment and plant costs for inflation",
6
+ "equation": "C_current = C_base * (CEPCI_current / CEPCI_base)",
7
+ "base_year_for_turton": 2001,
8
+ "base_cepci_for_turton": 397,
9
+ "notes": [
10
+ "CEPCI is published monthly in Chemical Engineering magazine",
11
+ "Values shown are annual averages except where noted",
12
+ "Index base: 1957-1959 = 100",
13
+ "For most recent values, consult Chemical Engineering magazine"
14
+ ],
15
+ "components": {
16
+ "equipment": 0.61,
17
+ "fabricated_equipment": 0.37,
18
+ "process_machinery": 0.14,
19
+ "pipe_valves_fittings": 0.20,
20
+ "process_instruments": 0.07,
21
+ "pumps_compressors": 0.07,
22
+ "electrical_equipment": 0.05,
23
+ "structural_supports": 0.10,
24
+ "erection_labor": 0.22,
25
+ "buildings": 0.07,
26
+ "engineering_supervision": 0.10
27
+ }
28
+ },
29
+ "annual_values": {
30
+ "1990": 357.6,
31
+ "1991": 361.3,
32
+ "1992": 358.2,
33
+ "1993": 359.2,
34
+ "1994": 368.1,
35
+ "1995": 381.1,
36
+ "1996": 381.7,
37
+ "1997": 386.5,
38
+ "1998": 389.5,
39
+ "1999": 390.6,
40
+ "2000": 394.1,
41
+ "2001": 394.3,
42
+ "2002": 395.6,
43
+ "2003": 402.0,
44
+ "2004": 444.2,
45
+ "2005": 468.2,
46
+ "2006": 499.6,
47
+ "2007": 525.4,
48
+ "2008": 575.4,
49
+ "2009": 521.9,
50
+ "2010": 550.8,
51
+ "2011": 585.7,
52
+ "2012": 584.6,
53
+ "2013": 567.3,
54
+ "2014": 576.1,
55
+ "2015": 556.8,
56
+ "2016": 541.7,
57
+ "2017": 567.5,
58
+ "2018": 603.1,
59
+ "2019": 607.5,
60
+ "2020": 596.2,
61
+ "2021": 708.0,
62
+ "2022": 816.0,
63
+ "2023": 797.9,
64
+ "2024": 800.0
65
+ },
66
+ "reference_values": {
67
+ "_description": "Key reference values used in literature",
68
+ "turton_2008_base": {
69
+ "year": 2001,
70
+ "cepci": 397,
71
+ "notes": "Base year for Turton 3rd edition cost correlations"
72
+ },
73
+ "turton_2012_base": {
74
+ "year": 2006,
75
+ "cepci": 500,
76
+ "notes": "Base year for Turton 4th edition cost correlations"
77
+ },
78
+ "peters_timmerhaus_base": {
79
+ "year": 1990,
80
+ "cepci": 358,
81
+ "notes": "Common reference in Peters & Timmerhaus"
82
+ }
83
+ },
84
+ "marshall_swift_index": {
85
+ "_description": "Marshall & Swift Equipment Cost Index (alternative index)",
86
+ "_notes": "Less commonly used than CEPCI; stopped publication in 2012",
87
+ "base_year": 1926,
88
+ "selected_values": {
89
+ "1990": 915,
90
+ "1995": 1027,
91
+ "2000": 1089,
92
+ "2005": 1244,
93
+ "2010": 1457
94
+ }
95
+ },
96
+ "regional_factors": {
97
+ "_description": "Location factors for different regions relative to US Gulf Coast",
98
+ "_notes": "Approximate factors - actual values vary significantly",
99
+ "US_Gulf_Coast": 1.00,
100
+ "US_Midwest": 1.02,
101
+ "US_West_Coast": 1.15,
102
+ "US_Northeast": 1.10,
103
+ "Canada": 1.05,
104
+ "Mexico": 0.90,
105
+ "Western_Europe": 1.20,
106
+ "Eastern_Europe": 0.85,
107
+ "Japan": 1.25,
108
+ "South_Korea": 1.00,
109
+ "China": 0.75,
110
+ "India": 0.70,
111
+ "Middle_East": 0.95,
112
+ "Australia": 1.15,
113
+ "Brazil": 0.90
114
+ },
115
+ "inflation_calculation": {
116
+ "_description": "How to update costs from base year to current year",
117
+ "formula": "C_new = C_base * (CEPCI_new / CEPCI_base)",
118
+ "example": {
119
+ "description": "Update cost from 2001 to 2023",
120
+ "C_base": 100000,
121
+ "CEPCI_base": 397,
122
+ "CEPCI_new": 798,
123
+ "C_new": 201008,
124
+ "calculation": "100000 * (798 / 397) = 201,008"
125
+ }
126
+ },
127
+ "typical_annual_inflation": {
128
+ "_description": "Approximate annual inflation rates for chemical plant costs",
129
+ "long_term_average": 0.03,
130
+ "2000_2010": 0.035,
131
+ "2010_2020": 0.025,
132
+ "2020_2023": 0.10,
133
+ "notes": "2020-2023 saw unusually high inflation due to supply chain issues"
134
+ }
135
+ }
@@ -0,0 +1,450 @@
1
+ {
2
+ "_metadata": {
3
+ "description": "Mapping between ExerPy component classes and Turton 2008 cost correlations",
4
+ "notes": [
5
+ "Each ExerPy component is mapped to one or more Turton equipment categories",
6
+ "The 'default' equipment type is used if no specific type is specified by user",
7
+ "The 'alternatives' list provides other valid equipment types for the component",
8
+ "Some components (helpers, nodes) may not have direct cost correlations",
9
+ "Parameters define which ExerPy attributes to use for sizing"
10
+ ],
11
+ "usage": [
12
+ "1. Look up the ExerPy component class name",
13
+ "2. Use 'default' equipment type or select from 'alternatives'",
14
+ "3. Extract size parameter from ExerPy component using 'parameters.size'",
15
+ "4. Extract pressure from ExerPy component using 'parameters.pressure'",
16
+ "5. Look up cost correlation in turton2008.json using the equipment type"
17
+ ]
18
+ },
19
+ "components": {
20
+ "Turbine": {
21
+ "category": "turbomachinery",
22
+ "has_cost_correlation": true,
23
+ "default": "turbines.steam_axial",
24
+ "alternatives": [
25
+ "turbines.steam_radial",
26
+ "turbines.gas_turbine"
27
+ ],
28
+ "parameters": {
29
+ "size": {
30
+ "attribute": "power_output",
31
+ "unit": "kW",
32
+ "description": "Turbine power output (E_P or power stream)",
33
+ "fallback_calculation": "Sum of power output streams"
34
+ },
35
+ "pressure": {
36
+ "attribute": "inlet_pressure",
37
+ "unit": "barg",
38
+ "description": "Inlet steam/gas pressure",
39
+ "notes": "Typically not used for pressure factor"
40
+ }
41
+ },
42
+ "selection_guidance": {
43
+ "steam_axial": "Large steam turbines (>1 MW), multi-stage",
44
+ "steam_radial": "Small steam turbines (<1.5 MW), single stage",
45
+ "gas_turbine": "Gas turbines, combustion turbines"
46
+ }
47
+ },
48
+ "Pump": {
49
+ "category": "turbomachinery",
50
+ "has_cost_correlation": true,
51
+ "default": "pumps.centrifugal_single_stage",
52
+ "alternatives": [
53
+ "pumps.centrifugal_multistage",
54
+ "pumps.reciprocating",
55
+ "pumps.positive_displacement"
56
+ ],
57
+ "parameters": {
58
+ "size": {
59
+ "attribute": "power_consumption",
60
+ "unit": "kW",
61
+ "description": "Pump shaft power (E_F or power input stream)",
62
+ "fallback_calculation": "Sum of power input streams"
63
+ },
64
+ "pressure": {
65
+ "attribute": "discharge_pressure",
66
+ "unit": "barg",
67
+ "description": "Discharge pressure for pressure factor calculation"
68
+ }
69
+ },
70
+ "selection_guidance": {
71
+ "centrifugal_single_stage": "Standard pump applications, moderate heads",
72
+ "centrifugal_multistage": "High head applications, boiler feedwater",
73
+ "reciprocating": "High pressure, low flow, metering",
74
+ "positive_displacement": "Viscous fluids, precise flow control"
75
+ },
76
+ "includes_motor": false,
77
+ "motor_notes": "Add electric motor cost separately using 'drives' category"
78
+ },
79
+ "Compressor": {
80
+ "category": "turbomachinery",
81
+ "has_cost_correlation": true,
82
+ "default": "compressors.centrifugal",
83
+ "alternatives": [
84
+ "compressors.reciprocating",
85
+ "compressors.screw",
86
+ "compressors.axial"
87
+ ],
88
+ "parameters": {
89
+ "size": {
90
+ "attribute": "power_consumption",
91
+ "unit": "kW",
92
+ "description": "Compressor shaft power (E_F or power input stream)",
93
+ "fallback_calculation": "Sum of power input streams"
94
+ },
95
+ "pressure": {
96
+ "attribute": "discharge_pressure",
97
+ "unit": "barg",
98
+ "description": "Not typically used - compressor costs include pressure effects"
99
+ }
100
+ },
101
+ "selection_guidance": {
102
+ "centrifugal": "Large flow, moderate pressure ratio (>450 kW typical)",
103
+ "reciprocating": "High pressure ratio, smaller flows (18-950 kW)",
104
+ "screw": "Medium capacity, oil-injected or oil-free",
105
+ "axial": "Very large flows, low pressure ratio"
106
+ },
107
+ "includes_driver": false,
108
+ "driver_notes": "Add electric motor or turbine driver cost separately"
109
+ },
110
+ "HeatExchanger": {
111
+ "category": "heat_exchanger",
112
+ "has_cost_correlation": true,
113
+ "default": "heat_exchangers.shell_and_tube_floating_head",
114
+ "alternatives": [
115
+ "heat_exchangers.shell_and_tube_fixed_head",
116
+ "heat_exchangers.shell_and_tube_u_tube",
117
+ "heat_exchangers.shell_and_tube_kettle_reboiler",
118
+ "heat_exchangers.double_pipe",
119
+ "heat_exchangers.plate_and_frame",
120
+ "heat_exchangers.spiral_tube",
121
+ "heat_exchangers.air_cooler"
122
+ ],
123
+ "parameters": {
124
+ "size": {
125
+ "attribute": "heat_transfer_area",
126
+ "unit": "m2",
127
+ "description": "Heat transfer surface area",
128
+ "fallback_calculation": "Q / (U * LMTD) - requires U and temperatures",
129
+ "estimation_notes": "If area not available, estimate from Q and typical U values"
130
+ },
131
+ "pressure": {
132
+ "attribute": "max_pressure",
133
+ "unit": "barg",
134
+ "description": "Maximum of shell-side or tube-side operating pressure"
135
+ }
136
+ },
137
+ "selection_guidance": {
138
+ "shell_and_tube_floating_head": "General purpose, thermal expansion accommodation",
139
+ "shell_and_tube_fixed_head": "Clean services, small temperature difference",
140
+ "shell_and_tube_u_tube": "High temperature difference, tube cleaning not required",
141
+ "shell_and_tube_kettle_reboiler": "Reboiler service with vapor disengagement",
142
+ "double_pipe": "Small duties (<10 m2), high pressure",
143
+ "plate_and_frame": "Clean fluids, close temperature approach",
144
+ "spiral_tube": "Viscous fluids, slurries",
145
+ "air_cooler": "Air as cooling medium, no cooling water available"
146
+ }
147
+ },
148
+ "Condenser": {
149
+ "category": "heat_exchanger",
150
+ "has_cost_correlation": true,
151
+ "default": "heat_exchangers.shell_and_tube_fixed_head",
152
+ "alternatives": [
153
+ "heat_exchangers.shell_and_tube_floating_head",
154
+ "heat_exchangers.air_cooler"
155
+ ],
156
+ "parameters": {
157
+ "size": {
158
+ "attribute": "heat_transfer_area",
159
+ "unit": "m2",
160
+ "description": "Condenser heat transfer area"
161
+ },
162
+ "pressure": {
163
+ "attribute": "shell_pressure",
164
+ "unit": "barg",
165
+ "description": "Condensing pressure (typically shell side)"
166
+ }
167
+ },
168
+ "selection_guidance": {
169
+ "shell_and_tube_fixed_head": "Standard condensers, clean cooling water",
170
+ "shell_and_tube_floating_head": "High temperature differentials",
171
+ "air_cooler": "Air-cooled condenser for remote locations"
172
+ }
173
+ },
174
+ "SteamGenerator": {
175
+ "category": "heat_exchanger",
176
+ "has_cost_correlation": true,
177
+ "default": "heat_exchangers.shell_and_tube_kettle_reboiler",
178
+ "alternatives": [
179
+ "heat_exchangers.shell_and_tube_u_tube",
180
+ "fired_heaters.process_heater"
181
+ ],
182
+ "parameters": {
183
+ "size": {
184
+ "attribute": "heat_transfer_area",
185
+ "unit": "m2",
186
+ "description": "Steam generator heat transfer area"
187
+ },
188
+ "pressure": {
189
+ "attribute": "steam_pressure",
190
+ "unit": "barg",
191
+ "description": "Steam generation pressure"
192
+ }
193
+ },
194
+ "selection_guidance": {
195
+ "shell_and_tube_kettle_reboiler": "Waste heat steam generation",
196
+ "shell_and_tube_u_tube": "High pressure steam generation",
197
+ "fired_heaters.process_heater": "Fired steam generator (boiler)"
198
+ }
199
+ },
200
+ "SimpleHeatExchanger": {
201
+ "category": "heat_exchanger",
202
+ "has_cost_correlation": true,
203
+ "default": "heat_exchangers.shell_and_tube_floating_head",
204
+ "alternatives": [
205
+ "heat_exchangers.shell_and_tube_fixed_head",
206
+ "heat_exchangers.plate_and_frame",
207
+ "heat_exchangers.double_pipe"
208
+ ],
209
+ "parameters": {
210
+ "size": {
211
+ "attribute": "heat_transfer_area",
212
+ "unit": "m2",
213
+ "description": "Heat transfer area"
214
+ },
215
+ "pressure": {
216
+ "attribute": "max_pressure",
217
+ "unit": "barg",
218
+ "description": "Maximum operating pressure"
219
+ }
220
+ }
221
+ },
222
+ "Generator": {
223
+ "category": "power_machines",
224
+ "has_cost_correlation": true,
225
+ "default": "generators.electric_generator",
226
+ "alternatives": [],
227
+ "parameters": {
228
+ "size": {
229
+ "attribute": "power_output",
230
+ "unit": "kW",
231
+ "description": "Generator electrical output"
232
+ },
233
+ "pressure": null
234
+ }
235
+ },
236
+ "Motor": {
237
+ "category": "power_machines",
238
+ "has_cost_correlation": true,
239
+ "default": "drives.electric_motor_totally_enclosed",
240
+ "alternatives": [
241
+ "drives.electric_motor_explosion_proof",
242
+ "drives.electric_motor_open_drip_proof"
243
+ ],
244
+ "parameters": {
245
+ "size": {
246
+ "attribute": "power_output",
247
+ "unit": "kW",
248
+ "description": "Motor shaft power output"
249
+ },
250
+ "pressure": null
251
+ },
252
+ "selection_guidance": {
253
+ "electric_motor_totally_enclosed": "Standard industrial applications",
254
+ "electric_motor_explosion_proof": "Hazardous areas, flammable atmospheres",
255
+ "electric_motor_open_drip_proof": "Clean, dry environments"
256
+ }
257
+ },
258
+ "CombustionChamber": {
259
+ "category": "fired_equipment",
260
+ "has_cost_correlation": true,
261
+ "default": "fired_heaters.process_heater",
262
+ "alternatives": [
263
+ "fired_heaters.reformer_furnace",
264
+ "fired_heaters.pyrolysis_furnace"
265
+ ],
266
+ "parameters": {
267
+ "size": {
268
+ "attribute": "heat_duty",
269
+ "unit": "kW",
270
+ "description": "Heat release / absorbed duty"
271
+ },
272
+ "pressure": {
273
+ "attribute": "operating_pressure",
274
+ "unit": "barg",
275
+ "description": "Process side operating pressure"
276
+ }
277
+ },
278
+ "selection_guidance": {
279
+ "process_heater": "General process heating, fired heaters",
280
+ "reformer_furnace": "Steam methane reforming",
281
+ "pyrolysis_furnace": "Thermal cracking, ethylene production"
282
+ }
283
+ },
284
+ "Valve": {
285
+ "category": "piping",
286
+ "has_cost_correlation": false,
287
+ "default": null,
288
+ "notes": "Valves typically included in piping costs (Lang factor or detailed estimate)",
289
+ "estimation_method": "Include in piping factor or use vendor quotes for special valves"
290
+ },
291
+ "Mixer": {
292
+ "category": "nodes",
293
+ "has_cost_correlation": false,
294
+ "default": null,
295
+ "notes": "Pipe mixers included in piping costs; mechanical mixers use reactor correlations",
296
+ "alternatives_if_mechanical": [
297
+ "reactors.stirred_tank_jacketed"
298
+ ]
299
+ },
300
+ "Splitter": {
301
+ "category": "nodes",
302
+ "has_cost_correlation": false,
303
+ "default": null,
304
+ "notes": "Pipe splitters included in piping costs"
305
+ },
306
+ "Drum": {
307
+ "category": "vessels",
308
+ "has_cost_correlation": true,
309
+ "default": "vessels.horizontal_process",
310
+ "alternatives": [
311
+ "vessels.vertical_process"
312
+ ],
313
+ "parameters": {
314
+ "size": {
315
+ "attribute": "volume",
316
+ "unit": "m3",
317
+ "description": "Vessel internal volume"
318
+ },
319
+ "pressure": {
320
+ "attribute": "operating_pressure",
321
+ "unit": "barg",
322
+ "description": "Operating pressure"
323
+ },
324
+ "diameter": {
325
+ "attribute": "diameter",
326
+ "unit": "m",
327
+ "description": "Vessel diameter (for pressure factor calculation)"
328
+ }
329
+ }
330
+ },
331
+ "Deaerator": {
332
+ "category": "vessels",
333
+ "has_cost_correlation": true,
334
+ "default": "vessels.vertical_process",
335
+ "alternatives": [
336
+ "vessels.horizontal_process"
337
+ ],
338
+ "parameters": {
339
+ "size": {
340
+ "attribute": "volume",
341
+ "unit": "m3",
342
+ "description": "Deaerator vessel volume"
343
+ },
344
+ "pressure": {
345
+ "attribute": "operating_pressure",
346
+ "unit": "barg",
347
+ "description": "Operating pressure"
348
+ }
349
+ }
350
+ },
351
+ "FlashTank": {
352
+ "category": "vessels",
353
+ "has_cost_correlation": true,
354
+ "default": "vessels.vertical_process",
355
+ "alternatives": [
356
+ "vessels.horizontal_process"
357
+ ],
358
+ "parameters": {
359
+ "size": {
360
+ "attribute": "volume",
361
+ "unit": "m3",
362
+ "description": "Flash tank volume"
363
+ },
364
+ "pressure": {
365
+ "attribute": "operating_pressure",
366
+ "unit": "barg",
367
+ "description": "Operating pressure"
368
+ }
369
+ }
370
+ },
371
+ "Storage": {
372
+ "category": "storage",
373
+ "has_cost_correlation": true,
374
+ "default": "storage_tanks.fixed_roof",
375
+ "alternatives": [
376
+ "storage_tanks.floating_roof",
377
+ "vessels.horizontal_process"
378
+ ],
379
+ "parameters": {
380
+ "size": {
381
+ "attribute": "volume",
382
+ "unit": "m3",
383
+ "description": "Storage capacity"
384
+ },
385
+ "pressure": {
386
+ "attribute": "operating_pressure",
387
+ "unit": "barg",
388
+ "description": "Operating pressure (atmospheric for most tanks)"
389
+ }
390
+ },
391
+ "selection_guidance": {
392
+ "storage_tanks.fixed_roof": "Atmospheric storage, non-volatile liquids",
393
+ "storage_tanks.floating_roof": "Volatile liquids, emission control",
394
+ "vessels.horizontal_process": "Pressure storage, LPG, refrigerants"
395
+ }
396
+ },
397
+ "CycleCloser": {
398
+ "category": "helpers",
399
+ "has_cost_correlation": false,
400
+ "default": null,
401
+ "notes": "Virtual component for simulation purposes - no physical equipment"
402
+ },
403
+ "PowerBus": {
404
+ "category": "helpers",
405
+ "has_cost_correlation": false,
406
+ "default": null,
407
+ "notes": "Virtual component for power summation - no physical equipment"
408
+ }
409
+ },
410
+ "additional_equipment": {
411
+ "_description": "Equipment types that may be needed but don't have direct ExerPy components",
412
+ "distillation_column": {
413
+ "turton_category": "towers.trayed_column",
414
+ "notes": "Use vessel + trays; not a standard ExerPy component"
415
+ },
416
+ "absorption_column": {
417
+ "turton_category": "towers.packed_column",
418
+ "notes": "Use vessel + packing; not a standard ExerPy component"
419
+ },
420
+ "reactor": {
421
+ "turton_category": "reactors.stirred_tank_jacketed",
422
+ "notes": "Use if modeling reactor separately; combustion chamber may suffice"
423
+ },
424
+ "blower": {
425
+ "turton_category": "blowers.centrifugal_blower",
426
+ "notes": "Low pressure ratio gas mover; may use Compressor component"
427
+ },
428
+ "fan": {
429
+ "turton_category": "fans.centrifugal_fan",
430
+ "notes": "Very low pressure ratio; may use Compressor component"
431
+ }
432
+ },
433
+ "unmapped_estimation": {
434
+ "_description": "How to handle components without cost correlations",
435
+ "method_1_lang_factor": {
436
+ "description": "Use Lang factor on total equipment cost",
437
+ "factor_fluid_processing": 4.74,
438
+ "factor_solid_fluid": 3.63,
439
+ "factor_solid_processing": 3.10
440
+ },
441
+ "method_2_percentage": {
442
+ "description": "Add as percentage of total bare module cost",
443
+ "piping_valves_percent": 0.15,
444
+ "instrumentation_percent": 0.10
445
+ },
446
+ "method_3_vendor_quote": {
447
+ "description": "Obtain vendor quote for special equipment"
448
+ }
449
+ }
450
+ }