ProFAST 1.0.3__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.
- ProFAST/__init__.py +16 -0
- ProFAST/examples/ProFAST_example.py +98 -0
- ProFAST/examples/generic_example.py +156 -0
- ProFAST/pyc_files/ProFAST_308.pyc +0 -0
- ProFAST/pyc_files/ProFAST_309.pyc +0 -0
- ProFAST/pyc_files/ProFAST_310.pyc +0 -0
- ProFAST/pyc_files/ProFAST_311.pyc +0 -0
- ProFAST/resources/central_biomass_gasification.json +102 -0
- ProFAST/resources/central_coal_gasification_w_ccs.json +95 -0
- ProFAST/resources/central_grid_electrolysis_PEM.json +88 -0
- ProFAST/resources/central_grid_electrolysis_solid_oxide.json +95 -0
- ProFAST/resources/central_natural_gas_reforming_no_ccs.json +95 -0
- ProFAST/resources/central_natural_gas_reforming_w_ccs.json +95 -0
- ProFAST/resources/central_solar_electrolysis.json +88 -0
- ProFAST/resources/central_wind_electrolysis.json +88 -0
- ProFAST/resources/gen_h2_fueling.json +74 -0
- ProFAST/resources/h2-fast-2022-07202023-generic-fueling.xlsm +0 -0
- ProFAST/resources/h2-fast-2022-0915.xlsm +0 -0
- ProFAST/resources/only_variables.json +39 -0
- ProFAST/resources/regional_feedstock_costs.csv +101 -0
- ProFAST-1.0.3.dist-info/LICENSE +31 -0
- ProFAST-1.0.3.dist-info/METADATA +221 -0
- ProFAST-1.0.3.dist-info/NOTICE.txt +3 -0
- ProFAST-1.0.3.dist-info/RECORD +26 -0
- ProFAST-1.0.3.dist-info/WHEEL +5 -0
- ProFAST-1.0.3.dist-info/top_level.txt +1 -0
ProFAST/__init__.py
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import sys
|
|
2
|
+
|
|
3
|
+
version_info = sys.version_info
|
|
4
|
+
major_versions = [3]
|
|
5
|
+
minor_versions = [8,9,10,11]
|
|
6
|
+
if version_info.major not in major_versions and version_info.minor not in minor_versions:
|
|
7
|
+
raise (ImportError(f"ProFAST is not currenly available for your Python version ({version_info[0]}.{version_info[1]}.{version_info[2]}). ProFAST is only compatible with Python 3.8, 3.9, 3.10, 3.11"))
|
|
8
|
+
|
|
9
|
+
if version_info.minor == 8:
|
|
10
|
+
from .pyc_files.ProFAST_308 import ProFAST
|
|
11
|
+
elif version_info.minor == 9:
|
|
12
|
+
from .pyc_files.ProFAST_309 import ProFAST
|
|
13
|
+
elif version_info.minor == 10:
|
|
14
|
+
from .pyc_files.ProFAST_310 import ProFAST
|
|
15
|
+
elif version_info.minor == 11:
|
|
16
|
+
from .pyc_files.ProFAST_311 import ProFAST
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
|
|
2
|
+
def ProFAST_example():
|
|
3
|
+
"""This function gives an example file to run ProFAST
|
|
4
|
+
:param None
|
|
5
|
+
:return None
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
# ProFAST example
|
|
9
|
+
import ProFAST
|
|
10
|
+
import time
|
|
11
|
+
|
|
12
|
+
# Initialize ProFAST class
|
|
13
|
+
pf = ProFAST.ProFAST('central_wind_electrolysis')
|
|
14
|
+
# h2a = ProFAST.H2A_case('smr')
|
|
15
|
+
|
|
16
|
+
# Premade JSON input files can also be loaded using the load_json functionality
|
|
17
|
+
pf.load_json('central_wind_electrolysis')
|
|
18
|
+
|
|
19
|
+
# Add a feed stock
|
|
20
|
+
pf.add_feedstock(name='Residential electricity',usage=4,unit='kWh',cost=0.105427462,escalation=0.005)
|
|
21
|
+
# Add a capital item
|
|
22
|
+
pf.add_capital_item(name='Compressor',cost=475286.1648,depr_type='MACRS',depr_period=5,refurb=[0.4401, 0.4401, 0.1011, 0.3871, 0.4686, 0.905 , 0.4024, 0.3172, 0.926 , 0.6936, 0.271 , 0 , 0 , 0 ])
|
|
23
|
+
# Add a fixed cost
|
|
24
|
+
pf.add_fixed_cost(name='purity testing',usage=1,unit='$',cost=3483.816459,escalation=0.015246584)
|
|
25
|
+
# Add a coproduct
|
|
26
|
+
pf.add_coproduct(name='Apples',usage=0.013394611,unit='bundles',cost=0.934823018,escalation=0.007012072)
|
|
27
|
+
# Add an incentive
|
|
28
|
+
pf.add_incentive(name='LCFS',value=0.167811004,decay=0.00828,sunset_years=5,tax_credit=True)
|
|
29
|
+
|
|
30
|
+
# Remove a feedstock
|
|
31
|
+
pf.remove_feedstock(name='Residential electricity')
|
|
32
|
+
|
|
33
|
+
# Edit a coproduct
|
|
34
|
+
# pf.edit_coproduct('Apples',{'name':'Pears','usage':0.02})
|
|
35
|
+
|
|
36
|
+
# Dictionary (year,value) pairs can be used to set the usage and cost metrics
|
|
37
|
+
years = list(map(str,range(1992,2100)))
|
|
38
|
+
juice_costs = [1]*len(years)
|
|
39
|
+
juice_cost_dict = dict(zip(years,juice_costs))
|
|
40
|
+
juice_usage_dict = dict(zip(years,[10]*len(years)))
|
|
41
|
+
pf.add_feedstock(name='juice',usage=juice_usage_dict,unit='barrels',cost=juice_cost_dict,escalation=2)
|
|
42
|
+
|
|
43
|
+
# Timer
|
|
44
|
+
t1 = time.time()
|
|
45
|
+
|
|
46
|
+
# Solve for the break-price
|
|
47
|
+
sol=pf.solve_price()
|
|
48
|
+
|
|
49
|
+
# Print out break even price
|
|
50
|
+
price = sol['price']
|
|
51
|
+
irr = sol['irr']
|
|
52
|
+
ipp = sol['investor payback period']
|
|
53
|
+
lco = sol['lco']
|
|
54
|
+
print(f'First year price = {round(price,2)}')
|
|
55
|
+
print(f'Levelized cost = {round(lco,2)}')
|
|
56
|
+
print(f'IRR = {irr*100}%')
|
|
57
|
+
print(f'Investor payback period = {round(ipp,2)}')
|
|
58
|
+
|
|
59
|
+
# Timer
|
|
60
|
+
t2 = time.time()
|
|
61
|
+
print(f'Time elapsed: {t2-t1}s')
|
|
62
|
+
|
|
63
|
+
# Load defaults from json file (the default inputs are loaded by default)
|
|
64
|
+
pf.load_json('central_wind_electrolysis')
|
|
65
|
+
|
|
66
|
+
# Change sales tax
|
|
67
|
+
# pf.set_params('sales tax',0.50)
|
|
68
|
+
sol=pf.solve_price()
|
|
69
|
+
|
|
70
|
+
# Plot investor cash flow
|
|
71
|
+
pf.plot_cashflow()
|
|
72
|
+
|
|
73
|
+
# Plot cost breakdown
|
|
74
|
+
pf.plot_costs()
|
|
75
|
+
|
|
76
|
+
# Plot cost yearly breakdown
|
|
77
|
+
pf.plot_costs_yearly()
|
|
78
|
+
|
|
79
|
+
# Plot cost yearly breakdown in plotly (interactive)
|
|
80
|
+
pf.plot_costs_yearly2()
|
|
81
|
+
|
|
82
|
+
# Plot all time series in plotly (interactive)
|
|
83
|
+
pf.plot_time_series()
|
|
84
|
+
|
|
85
|
+
# Solve for the break-price
|
|
86
|
+
sol=pf.solve_price()
|
|
87
|
+
price = sol['price']
|
|
88
|
+
irr = sol['irr']
|
|
89
|
+
ipp = sol['investor payback period']
|
|
90
|
+
lco = sol['lco']
|
|
91
|
+
print(f'First year price = {round(price,2)}')
|
|
92
|
+
print(f'Levelized cost = {round(lco,2)}')
|
|
93
|
+
print(f'IRR = {irr*100}%')
|
|
94
|
+
print(f'Investor payback period = {round(ipp,2)}')
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
if __name__ == "__main__":
|
|
98
|
+
ProFAST_example()
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import numpy as np
|
|
2
|
+
import matplotlib.pyplot as plt
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
def pf_setup():
|
|
6
|
+
# Import the ProFAST module
|
|
7
|
+
import ProFAST
|
|
8
|
+
|
|
9
|
+
# Create an ProFAST instance
|
|
10
|
+
pf = ProFAST.ProFAST()
|
|
11
|
+
|
|
12
|
+
#
|
|
13
|
+
# Set the parameters
|
|
14
|
+
#
|
|
15
|
+
|
|
16
|
+
# Define general inflation rate
|
|
17
|
+
gen_inflation = 0.019
|
|
18
|
+
|
|
19
|
+
# Sales specification
|
|
20
|
+
pf.set_params('commodity',{"name":'Hydrogen',"unit":"kg","initial price":4,"escalation":gen_inflation}) # Define the primary commodity
|
|
21
|
+
pf.set_params('analysis start year',2025)
|
|
22
|
+
pf.set_params('operating life',30) # Years of production
|
|
23
|
+
pf.set_params('installation months',20) # Months of installation (no production)
|
|
24
|
+
pf.set_params('demand rampup',2) # Years of ramp up (linear)
|
|
25
|
+
pf.set_params('long term utilization',0.9) # The utilization or capacity factor of the plant, relative to the nameplate capacity
|
|
26
|
+
|
|
27
|
+
# Installation information:
|
|
28
|
+
pf.set_params('capacity',50000) #units/day # Nameplate capacity
|
|
29
|
+
pf.set_params('installation cost',{"value":0,"depr type":"Straight line","depr period":5,"depreciable":False}) # Can be separated from capital items
|
|
30
|
+
pf.set_params('non depr assets',10000) # Such as land
|
|
31
|
+
pf.set_params('end of proj sale non depr assets',10000*(1+gen_inflation)**30) # Sale of land at project end
|
|
32
|
+
pf.set_params('maintenance',{"value":5000,"escalation":gen_inflation}) # Annual maintenance cost
|
|
33
|
+
|
|
34
|
+
# Incentives specification
|
|
35
|
+
pf.set_params('one time cap inct',{"value":250000,"depr type":"MACRS","depr period":5,"depreciable":False}) # Such as a capital grant, cost share, or investment tax credit
|
|
36
|
+
pf.set_params('annual operating incentive',{"value":1000,"decay":0,"sunset years":6,"taxable":True}) # Annual incentive (treated as income)
|
|
37
|
+
pf.set_params('incidental revenue',{"value":500,"escalation":gen_inflation}) # Such as coffee sales
|
|
38
|
+
|
|
39
|
+
# Take or pay specification
|
|
40
|
+
pf.set_params('TOPC',{"unit price":1,"decay":0.01,"support utilization":0.6,"sunset years":3}) # Underutilization support
|
|
41
|
+
|
|
42
|
+
# Other operating expenses
|
|
43
|
+
pf.set_params('credit card fees',0.025) # Fraction of sales revenue
|
|
44
|
+
pf.set_params('sales tax',0.023) # Fraction of sales revenue
|
|
45
|
+
# pf.set_params('road tax',{"value":0,"escalation":0}) # Cost per unit of commodity ($/kg)
|
|
46
|
+
pf.set_params('labor',{"value":20*40*52,"rate":20,"escalation":gen_inflation}) # 20 workers at 40hrs a week for 20$/hr
|
|
47
|
+
pf.set_params('license and permit',{'value':2000,'escalation':gen_inflation}) # $/yr for licensing and permitting
|
|
48
|
+
pf.set_params('rent',{'value':50000,'escalation':gen_inflation}) # $/yr, for example for equipment
|
|
49
|
+
pf.set_params('property tax and insurance',0.009) # Fraction of plant property and equipment
|
|
50
|
+
pf.set_params('admin expense',0.005) # Fraction of sales revenue
|
|
51
|
+
|
|
52
|
+
# Financing information
|
|
53
|
+
pf.set_params('total income tax rate',0.2574) # Combined tax rate
|
|
54
|
+
pf.set_params('capital gains tax rate',0.15) # Only for any gains made on non depreciable assets
|
|
55
|
+
pf.set_params('sell undepreciated cap',True)
|
|
56
|
+
pf.set_params('tax losses monetized',True) # Offset coupled business tax liabilities
|
|
57
|
+
pf.set_params('tax loss carry forward years',0) # If tax losses are carried forward
|
|
58
|
+
pf.set_params('general inflation rate',gen_inflation)
|
|
59
|
+
pf.set_params('leverage after tax nominal discount rate',0.08) # Discount rate, and expected financial performance
|
|
60
|
+
pf.set_params('debt equity ratio of initial financing',1.5) # D2E ratio at start
|
|
61
|
+
pf.set_params('debt type','Revolving debt') # Bond/Revolving debt or one time loan
|
|
62
|
+
pf.set_params('loan period if used',0) # Only for one time loan
|
|
63
|
+
pf.set_params('debt interest rate',0.037) # Interest rate for loan
|
|
64
|
+
pf.set_params('cash onhand',1) # Number of month of monthly expenses in liquidity
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
#
|
|
68
|
+
# Set the feedstocks
|
|
69
|
+
#
|
|
70
|
+
pf.add_feedstock(name='Water',usage=3.78,unit='gal',cost=0.005,escalation=gen_inflation) #3.78gal/kg H2
|
|
71
|
+
pf.add_feedstock(name='Electricity (industrial)',usage=55.5,unit='kWh',cost=0.15,escalation=gen_inflation)
|
|
72
|
+
|
|
73
|
+
# You can also use dictionaries and list to set the usages and costs
|
|
74
|
+
years = list(map(str,range(2025-1,2025+30+2)))
|
|
75
|
+
elec_usage = np.linspace(55.5,65,len(years))
|
|
76
|
+
elec_usage_dict = dict(zip(years,elec_usage))
|
|
77
|
+
elec_cost_dict = dict(zip(years, [0.15,0.14,0.2,0.75] ))
|
|
78
|
+
pf.add_feedstock(name='Electricity (industrial) dict',usage=elec_usage_dict,unit='kWh',cost=0.15,escalation=gen_inflation)
|
|
79
|
+
pf.remove_feedstock(name='Electricity (industrial) dict')
|
|
80
|
+
|
|
81
|
+
# AEO feedstocks (Name and Cost must be valid values from AEO list)
|
|
82
|
+
pf.edit_feedstock(name='Electricity (industrial)',value={'cost':'Mountain'})
|
|
83
|
+
# AEO feedstocks can be modified for sensitivity analysis
|
|
84
|
+
pf.edit_feedstock(name='Electricity (industrial)',value={'usage':55.5,'cost':'1.1X Mountain'})
|
|
85
|
+
|
|
86
|
+
#
|
|
87
|
+
# Set the coproducts
|
|
88
|
+
#
|
|
89
|
+
pf.add_coproduct(name='Oxygen',usage=7,unit='mol',cost=0.01,escalation=gen_inflation)
|
|
90
|
+
pf.edit_coproduct(name='Oxygen',value={'usage':7})
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
#
|
|
94
|
+
# Set the capital items
|
|
95
|
+
#
|
|
96
|
+
dol_per_kw = 500
|
|
97
|
+
kW = 50000/24*55.5
|
|
98
|
+
pf.add_capital_item(name='PEM Stack',cost=kW*dol_per_kw,depr_type='MACRS',depr_period=7,refurb=[0,0,0,0,0,0,0.15]*4) # Refurb 15% every 7 years
|
|
99
|
+
pf.add_capital_item(name='BOP',cost=1000000,depr_type='MACRS',depr_period=7,refurb=[0])
|
|
100
|
+
|
|
101
|
+
#
|
|
102
|
+
# Set the fixed costs
|
|
103
|
+
#
|
|
104
|
+
pf.add_fixed_cost(name='Fixed costs',usage=1,unit='$',cost=3000000,escalation=gen_inflation)
|
|
105
|
+
|
|
106
|
+
#
|
|
107
|
+
# Set the incentives
|
|
108
|
+
#
|
|
109
|
+
pf.add_incentive(name='45V',value=3,decay=0,sunset_years=10,tax_credit=True)
|
|
110
|
+
|
|
111
|
+
return pf
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
if __name__ == '__main__':
|
|
116
|
+
pf = pf_setup()
|
|
117
|
+
|
|
118
|
+
# Price setter mode
|
|
119
|
+
NPV = pf.cash_flow()
|
|
120
|
+
print(f'IRR: {pf.irr}')
|
|
121
|
+
print(f'NPV: {NPV}')
|
|
122
|
+
print("\n")
|
|
123
|
+
|
|
124
|
+
# Price taker mode
|
|
125
|
+
sol = pf.solve_price()
|
|
126
|
+
price = sol['price']
|
|
127
|
+
irr = sol['irr']
|
|
128
|
+
ipp = sol['investor payback period']
|
|
129
|
+
lco = sol['lco']
|
|
130
|
+
print(f'First year price = {round(price,2)}')
|
|
131
|
+
print(f'Levelized cost = {round(lco,2)}')
|
|
132
|
+
print(f'IRR = {irr*100}%')
|
|
133
|
+
print(f'Investor payback period = {round(ipp,2)}')
|
|
134
|
+
|
|
135
|
+
# Plot cost breakdown
|
|
136
|
+
pf.plot_costs()
|
|
137
|
+
|
|
138
|
+
# Plot everything
|
|
139
|
+
pf.plot_time_series()
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
# What is the sensitivity to Electricity region?
|
|
144
|
+
regions = ['US Average','East North Central','East South Central','Middle Atlantic','Mountain','New England','Pacific','South Atlantic','West North Central','West South Central']
|
|
145
|
+
lcoh = []
|
|
146
|
+
|
|
147
|
+
for region in regions:
|
|
148
|
+
pf.edit_feedstock(name='Electricity (industrial)',value={'cost':region})
|
|
149
|
+
sol = pf.solve_price()
|
|
150
|
+
lcoh.append(sol['lco'])
|
|
151
|
+
|
|
152
|
+
plt.bar(regions, lcoh)
|
|
153
|
+
plt.xlabel("Regions")
|
|
154
|
+
plt.ylabel("Levelized cost of H2 ($/kg)")
|
|
155
|
+
plt.show()
|
|
156
|
+
pass
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
{
|
|
2
|
+
"description":"The systems examined are based on the Battelle/FERCO indirectly-heated biomass gasifier, conventional catalytic steam reforming, water gas shift, and pressure swing adsorption purification. The indirectly-heated biomass gasifier uses hot sand, circulating between the char combustor and the gasifier, to provide the heat necessary for gasification. Steam is used as the fluidizing gas; no oxygen (as pure oxygen or air) is fed to the gasifier. The biomass feedstock is assumed to be a woody biomass, represented as hybrid poplar.",
|
|
3
|
+
"variables":{
|
|
4
|
+
"capacity":155236,
|
|
5
|
+
"long term utilization":0.90,
|
|
6
|
+
"demand rampup":0,
|
|
7
|
+
"analysis start year":2012,
|
|
8
|
+
"operating life":40,
|
|
9
|
+
"installation months":36,
|
|
10
|
+
"TOPC":{"unit price":0,"decay":0.05084,"support utilization":0.6787,"sunset years":3},
|
|
11
|
+
"commodity": {"initial price":1.84,"name":"Hydrogen","unit":"kg","escalation":0.0},
|
|
12
|
+
"annual operating incentive":{"value":0,"decay":0.034906267,"sunset years":6,"taxable":false},
|
|
13
|
+
"incidental revenue":{"value":0,"escalation":0.025771},
|
|
14
|
+
"credit card fees":0,
|
|
15
|
+
"sales tax":0,
|
|
16
|
+
"road tax":{"value":0,"escalation":0.0261},
|
|
17
|
+
"labor":{"value":0,"rate":40,"escalation":0.0},
|
|
18
|
+
"maintenance":{"value":0,"escalation":0.019},
|
|
19
|
+
"rent":{"value":0,"escalation":0.001743845},
|
|
20
|
+
"license and permit":{"value":0,"escalation":0.010526704},
|
|
21
|
+
"non depr assets":0,
|
|
22
|
+
"end of proj sale non depr assets":0,
|
|
23
|
+
"installation cost":{"value":0,"depr type":"Straight line","depr period":4,"depreciable":false},
|
|
24
|
+
"one time cap inct":{"value":0,"depr type":"MACRS","depr period":5,"depreciable":true},
|
|
25
|
+
"property tax and insurance":0.00,
|
|
26
|
+
"admin expense":0,
|
|
27
|
+
"tax loss carry forward years":0,
|
|
28
|
+
"capital gains tax rate":0.15,
|
|
29
|
+
"tax losses monetized":true,
|
|
30
|
+
"sell undepreciated cap":true,
|
|
31
|
+
"loan period if used":0,
|
|
32
|
+
"debt equity ratio of initial financing":1.5,
|
|
33
|
+
"debt interest rate":0.037,
|
|
34
|
+
"debt type":"Revolving debt",
|
|
35
|
+
"total income tax rate":0.2574,
|
|
36
|
+
"cash onhand":1,
|
|
37
|
+
"general inflation rate":0.0,
|
|
38
|
+
"leverage after tax nominal discount rate":0.08
|
|
39
|
+
},
|
|
40
|
+
"feedstock":[
|
|
41
|
+
{
|
|
42
|
+
"name":"Electricity (commercial)",
|
|
43
|
+
"usage":0.98,
|
|
44
|
+
"unit":"kWh",
|
|
45
|
+
"cost": "US Average",
|
|
46
|
+
"escalation":0
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"name":"Natural Gas (commercial)",
|
|
50
|
+
"usage":0.0059,
|
|
51
|
+
"unit":"mmBTU",
|
|
52
|
+
"cost": "US Average",
|
|
53
|
+
"escalation":0.0
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name":"Biomass",
|
|
57
|
+
"usage": 0.014870180240032700000,
|
|
58
|
+
"unit":"s.ton",
|
|
59
|
+
"cost": "US Average",
|
|
60
|
+
"escalation":0.0
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"name":"Water",
|
|
64
|
+
"usage": 3.45093515200000000000,
|
|
65
|
+
"unit":"gal",
|
|
66
|
+
"cost": "US Average",
|
|
67
|
+
"escalation":0.00
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"name":"Var OpEX",
|
|
71
|
+
"usage":1,
|
|
72
|
+
"unit":"units",
|
|
73
|
+
"cost": 0.3267401760130160,
|
|
74
|
+
"escalation":0.0
|
|
75
|
+
}
|
|
76
|
+
],
|
|
77
|
+
"fixed cost":[
|
|
78
|
+
{
|
|
79
|
+
"name":"Annualized replacements",
|
|
80
|
+
"usage":1,
|
|
81
|
+
"unit":"$",
|
|
82
|
+
"cost": 1110377.029057310,
|
|
83
|
+
"escalation":0.00
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"name":"fixed op ex",
|
|
87
|
+
"usage":1,
|
|
88
|
+
"unit":"$",
|
|
89
|
+
"cost": 11550958.7452248,
|
|
90
|
+
"escalation":0.0
|
|
91
|
+
}
|
|
92
|
+
],
|
|
93
|
+
"capital item":[
|
|
94
|
+
{
|
|
95
|
+
"name":"Installed Capital",
|
|
96
|
+
"cost": 233678947.7851,
|
|
97
|
+
"depr type":"MACRS",
|
|
98
|
+
"depr period":20,
|
|
99
|
+
"refurb":[0]
|
|
100
|
+
}
|
|
101
|
+
]
|
|
102
|
+
}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
{
|
|
2
|
+
"description":"There are two Shell dry feed, pressurized, up-flow, entrained, slagging gasifiers, operating at 4.2 MPa (615 psia). The air separation plant supplies 95 percent O₂ to the gasifiers. Coal reacts with O₂ and steam at a temperature of 1,427°C (2,600°F) in the gasifier to produce principally H₂ and CO with little CO₂ formed. The gasifier’s refractory-lined water wall is protected by molten slag that solidifies on the cooled walls. Syngas exiting the gasifier is converted to a CO₂ and H₂-rich syngas to maximize H₂ product yield and maximize the extent of CO₂ separation that can be performed on the high-pressure syngas stream. CO is converted to CO₂ by reacting with steam over a bed of water gas shift catalyst. CO₂ and H₂S are removed via acid gas removal (AGR), which is a two-stage Selexol process. Hydrogen is further purified using a PSA system. CO₂ is transported via 100 mile pipeline and injected into a geologic saline storage site.",
|
|
3
|
+
"variables":{
|
|
4
|
+
"capacity": 660000,
|
|
5
|
+
"long term utilization":0.90,
|
|
6
|
+
"demand rampup":0,
|
|
7
|
+
"analysis start year":2012,
|
|
8
|
+
"operating life":40,
|
|
9
|
+
"installation months":36,
|
|
10
|
+
"TOPC":{"unit price":0,"decay":0.05084,"support utilization":0.6787,"sunset years":3},
|
|
11
|
+
"commodity": {"initial price":3.07,"name":"Hydrogen","unit":"kg","escalation":0.0},
|
|
12
|
+
"annual operating incentive":{"value":0,"decay":0.034906267,"sunset years":6,"taxable":false},
|
|
13
|
+
"incidental revenue":{"value":0,"escalation":0.025771},
|
|
14
|
+
"credit card fees":0,
|
|
15
|
+
"sales tax":0,
|
|
16
|
+
"road tax":{"value":0,"escalation":0.0261},
|
|
17
|
+
"labor":{"value":0,"rate":40,"escalation":0.0},
|
|
18
|
+
"maintenance":{"value":0,"escalation":0.019},
|
|
19
|
+
"rent":{"value":0,"escalation":0.001743845},
|
|
20
|
+
"license and permit":{"value":0,"escalation":0.010526704},
|
|
21
|
+
"non depr assets":0,
|
|
22
|
+
"end of proj sale non depr assets":0,
|
|
23
|
+
"installation cost":{"value":0,"depr type":"Straight line","depr period":4,"depreciable":false},
|
|
24
|
+
"one time cap inct":{"value":0,"depr type":"MACRS","depr period":5,"depreciable":true},
|
|
25
|
+
"property tax and insurance":0.00,
|
|
26
|
+
"admin expense":0,
|
|
27
|
+
"tax loss carry forward years":0,
|
|
28
|
+
"capital gains tax rate":0.15,
|
|
29
|
+
"tax losses monetized":true,
|
|
30
|
+
"sell undepreciated cap":true,
|
|
31
|
+
"loan period if used":0,
|
|
32
|
+
"debt equity ratio of initial financing":1.5,
|
|
33
|
+
"debt interest rate":0.037,
|
|
34
|
+
"debt type":"Revolving debt",
|
|
35
|
+
"total income tax rate":0.2574,
|
|
36
|
+
"cash onhand":1,
|
|
37
|
+
"general inflation rate":0.0,
|
|
38
|
+
"leverage after tax nominal discount rate":0.08
|
|
39
|
+
},
|
|
40
|
+
"feedstock":[
|
|
41
|
+
{
|
|
42
|
+
"name":"Electricity (industrial)",
|
|
43
|
+
"usage":1.044,
|
|
44
|
+
"unit":"kWh",
|
|
45
|
+
"cost": "US Average",
|
|
46
|
+
"escalation":0
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"name":"Coal",
|
|
50
|
+
"usage": 0.18804932884050000000,
|
|
51
|
+
"unit":"mmBTU",
|
|
52
|
+
"cost": "US Average",
|
|
53
|
+
"escalation":0.0
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name":"Water",
|
|
57
|
+
"usage": 7.93745454545455000000,
|
|
58
|
+
"unit":"gal",
|
|
59
|
+
"cost": "US Average",
|
|
60
|
+
"escalation":0.00
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"name":"Var OpEX",
|
|
64
|
+
"usage":1,
|
|
65
|
+
"unit":"units",
|
|
66
|
+
"cost": 0.3250457884911940,
|
|
67
|
+
"escalation":0.0
|
|
68
|
+
}
|
|
69
|
+
],
|
|
70
|
+
"fixed cost":[
|
|
71
|
+
{
|
|
72
|
+
"name":"Annualized replacements",
|
|
73
|
+
"usage":1,
|
|
74
|
+
"unit":"$",
|
|
75
|
+
"cost": 19819973.589318300,
|
|
76
|
+
"escalation":0.00
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"name":"fixed op ex",
|
|
80
|
+
"usage":1,
|
|
81
|
+
"unit":"$",
|
|
82
|
+
"cost": 177879506.696948,
|
|
83
|
+
"escalation":0.0
|
|
84
|
+
}
|
|
85
|
+
],
|
|
86
|
+
"capital item":[
|
|
87
|
+
{
|
|
88
|
+
"name":"Installed Capital",
|
|
89
|
+
"cost": 3980110311.1790600,
|
|
90
|
+
"depr type":"MACRS",
|
|
91
|
+
"depr period":20,
|
|
92
|
+
"refurb":[0]
|
|
93
|
+
}
|
|
94
|
+
]
|
|
95
|
+
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
{
|
|
2
|
+
"description": "The modeled system is a standalone grid powered PEM electrolyzer system with a total hydrogen production capacity of 50,000 kg/day. The production system is based on a generic system using input from several key industry collaborators (KIC) with commercial experience in PEM electrolysis and brief system and subsystem technoeconomic models, the electrolyzer units use process water, passed through deionizing beds, and grid electricity for electrolysis",
|
|
3
|
+
"variables":{
|
|
4
|
+
"capacity":56500,
|
|
5
|
+
"long term utilization":0.97,
|
|
6
|
+
"demand rampup":0,
|
|
7
|
+
"analysis start year":2012,
|
|
8
|
+
"operating life":40,
|
|
9
|
+
"installation months":36,
|
|
10
|
+
"TOPC":{"unit price":0,"decay":0.05084,"support utilization":0.6787,"sunset years":3},
|
|
11
|
+
"commodity": {"initial price":4.45,"name":"Hydrogen","unit":"kg","escalation":0.0},
|
|
12
|
+
"annual operating incentive":{"value":0,"decay":0.034906267,"sunset years":6,"taxable":false},
|
|
13
|
+
"incidental revenue":{"value":0,"escalation":0.025771},
|
|
14
|
+
"credit card fees":0,
|
|
15
|
+
"sales tax":0,
|
|
16
|
+
"road tax":{"value":0,"escalation":0.0261},
|
|
17
|
+
"labor":{"value":0,"rate":40,"escalation":0.0},
|
|
18
|
+
"maintenance":{"value":0,"escalation":0.019},
|
|
19
|
+
"rent":{"value":0,"escalation":0.001743845},
|
|
20
|
+
"license and permit":{"value":0,"escalation":0.010526704},
|
|
21
|
+
"non depr assets":0,
|
|
22
|
+
"end of proj sale non depr assets":0,
|
|
23
|
+
"installation cost":{"value":0,"depr type":"Straight line","depr period":4,"depreciable":false},
|
|
24
|
+
"one time cap inct":{"value":0,"depr type":"MACRS","depr period":5,"depreciable":true},
|
|
25
|
+
"property tax and insurance":0.00,
|
|
26
|
+
"admin expense":0,
|
|
27
|
+
"tax loss carry forward years":0,
|
|
28
|
+
"capital gains tax rate":0.15,
|
|
29
|
+
"tax losses monetized":true,
|
|
30
|
+
"sell undepreciated cap":true,
|
|
31
|
+
"loan period if used":0,
|
|
32
|
+
"debt equity ratio of initial financing":1.5,
|
|
33
|
+
"debt interest rate":0.037,
|
|
34
|
+
"debt type":"Revolving debt",
|
|
35
|
+
"total income tax rate":0.2574,
|
|
36
|
+
"cash onhand":1,
|
|
37
|
+
"general inflation rate":0.0,
|
|
38
|
+
"leverage after tax nominal discount rate":0.08
|
|
39
|
+
},
|
|
40
|
+
"feedstock":[
|
|
41
|
+
{
|
|
42
|
+
"name":"Electricity (industrial)",
|
|
43
|
+
"usage":55.5,
|
|
44
|
+
"unit":"kWh",
|
|
45
|
+
"cost": "US Average",
|
|
46
|
+
"escalation":0
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"name":"Water",
|
|
50
|
+
"usage":3.78,
|
|
51
|
+
"unit":"gal",
|
|
52
|
+
"cost": "US Average",
|
|
53
|
+
"escalation":0.0
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name":"Var OpEX",
|
|
57
|
+
"usage":1,
|
|
58
|
+
"unit":"units",
|
|
59
|
+
"cost": 0.0243774358475716,
|
|
60
|
+
"escalation":0.0
|
|
61
|
+
}
|
|
62
|
+
],
|
|
63
|
+
"fixed cost":[
|
|
64
|
+
{
|
|
65
|
+
"name":"Annualized replacements",
|
|
66
|
+
"usage":1,
|
|
67
|
+
"unit":"$",
|
|
68
|
+
"cost": 1545228.49759016,
|
|
69
|
+
"escalation":0.00
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"name":"fixed op ex",
|
|
73
|
+
"usage":1,
|
|
74
|
+
"unit":"$",
|
|
75
|
+
"cost": 4305058.96539462,
|
|
76
|
+
"escalation":0.0
|
|
77
|
+
}
|
|
78
|
+
],
|
|
79
|
+
"capital item":[
|
|
80
|
+
{
|
|
81
|
+
"name":"Installed Capital",
|
|
82
|
+
"cost": 86495734.2917989,
|
|
83
|
+
"depr type":"MACRS",
|
|
84
|
+
"depr period":20,
|
|
85
|
+
"refurb":[0]
|
|
86
|
+
}
|
|
87
|
+
]
|
|
88
|
+
}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
{
|
|
2
|
+
"description":"The modeled system is a standalone grid powered solid oxide electrolyzer (SOEC) with a total hydrogen production capacity of 50,000 kg/day. The process is based on a generic system using input from several key industry collaborators with commercial experience in SOEC system and subsystem technoeconomic modelling. Users can model nuclear-SOEC by changing the electricity price (cell G25) to a cost of nuclear-derived electricity and also modify the cost of thermal heat (cell G29) to that of heat derived from a high-temperature gas-cooled reactor*. * SOECs split water into hydrogen at elevated temperature, which weakens the bonds between hydrogen and oxygen and results in lower electricity requirements for water splitting. In order to achieve high temperatures, heat can be supplied through various means – e.g. burning of natural gas, resistive electric heating, or through the use of high quality nuclear reactor derived heat.",
|
|
3
|
+
"variables":{
|
|
4
|
+
"capacity":50000,
|
|
5
|
+
"long term utilization":0.8244,
|
|
6
|
+
"demand rampup":0,
|
|
7
|
+
"analysis start year":2012,
|
|
8
|
+
"operating life":40,
|
|
9
|
+
"installation months":36,
|
|
10
|
+
"TOPC":{"unit price":0,"decay":0.05084,"support utilization":0.6787,"sunset years":3},
|
|
11
|
+
"commodity": {"initial price":4.42,"name":"Hydrogen","unit":"kg","escalation":0.0},
|
|
12
|
+
"annual operating incentive":{"value":0,"decay":0.034906267,"sunset years":6,"taxable":false},
|
|
13
|
+
"incidental revenue":{"value":0,"escalation":0.025771},
|
|
14
|
+
"credit card fees":0,
|
|
15
|
+
"sales tax":0,
|
|
16
|
+
"road tax":{"value":0,"escalation":0.0261},
|
|
17
|
+
"labor":{"value":0,"rate":40,"escalation":0.0},
|
|
18
|
+
"maintenance":{"value":0,"escalation":0.019},
|
|
19
|
+
"rent":{"value":0,"escalation":0.001743845},
|
|
20
|
+
"license and permit":{"value":0,"escalation":0.010526704},
|
|
21
|
+
"non depr assets":0,
|
|
22
|
+
"end of proj sale non depr assets":0,
|
|
23
|
+
"installation cost":{"value":0,"depr type":"Straight line","depr period":4,"depreciable":false},
|
|
24
|
+
"one time cap inct":{"value":0,"depr type":"MACRS","depr period":5,"depreciable":true},
|
|
25
|
+
"property tax and insurance":0.00,
|
|
26
|
+
"admin expense":0,
|
|
27
|
+
"tax loss carry forward years":0,
|
|
28
|
+
"capital gains tax rate":0.15,
|
|
29
|
+
"tax losses monetized":true,
|
|
30
|
+
"sell undepreciated cap":true,
|
|
31
|
+
"loan period if used":0,
|
|
32
|
+
"debt equity ratio of initial financing":1.5,
|
|
33
|
+
"debt interest rate":0.037,
|
|
34
|
+
"debt type":"Revolving debt",
|
|
35
|
+
"total income tax rate":0.2574,
|
|
36
|
+
"cash onhand":1,
|
|
37
|
+
"general inflation rate":0.0,
|
|
38
|
+
"leverage after tax nominal discount rate":0.08
|
|
39
|
+
},
|
|
40
|
+
"feedstock":[
|
|
41
|
+
{
|
|
42
|
+
"name":"Electricity (industrial)",
|
|
43
|
+
"usage":36.8,
|
|
44
|
+
"unit":"kWh",
|
|
45
|
+
"cost": "US Average",
|
|
46
|
+
"escalation":0
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"name":"Natural Gas (industrial)",
|
|
50
|
+
"usage":0.05613,
|
|
51
|
+
"unit":"mmBTU",
|
|
52
|
+
"cost": "US Average",
|
|
53
|
+
"escalation":0.0
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name":"Water",
|
|
57
|
+
"usage":2.378,
|
|
58
|
+
"unit":"gal",
|
|
59
|
+
"cost": "US Average",
|
|
60
|
+
"escalation":0.0
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"name":"Var OpEX",
|
|
64
|
+
"usage":1,
|
|
65
|
+
"unit":"units",
|
|
66
|
+
"cost": 0.0900100127992611,
|
|
67
|
+
"escalation":0.0
|
|
68
|
+
}
|
|
69
|
+
],
|
|
70
|
+
"fixed cost":[
|
|
71
|
+
{
|
|
72
|
+
"name":"Annualized replacements",
|
|
73
|
+
"usage":1,
|
|
74
|
+
"unit":"$",
|
|
75
|
+
"cost": 9733921.376991140,
|
|
76
|
+
"escalation":0.0
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"name":"fixed op ex",
|
|
80
|
+
"usage":1,
|
|
81
|
+
"unit":"$",
|
|
82
|
+
"cost": 5588371.38656853000000,
|
|
83
|
+
"escalation":0.0
|
|
84
|
+
}
|
|
85
|
+
],
|
|
86
|
+
"capital item":[
|
|
87
|
+
{
|
|
88
|
+
"name":"Installed Capital",
|
|
89
|
+
"cost": 111328529.9987110,
|
|
90
|
+
"depr type":"MACRS",
|
|
91
|
+
"depr period":20,
|
|
92
|
+
"refurb":[0]
|
|
93
|
+
}
|
|
94
|
+
]
|
|
95
|
+
}
|