Skip to content

Commit

Permalink
Merge pull request #322 from kbrunik/greenheart-layout
Browse files Browse the repository at this point in the history
Syncing GreenSteel and GreenHEART features
  • Loading branch information
jaredthomas68 committed Jun 10, 2024
2 parents 7fe8a0f + 137b6ae commit aae06a0
Show file tree
Hide file tree
Showing 36 changed files with 37,776 additions and 346 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -81,9 +81,11 @@ h2_storage_compressor:
h2_transport_pipe:
outlet_pressure: 10 # bar - from example in code from Jamie #TODO check this value
h2_storage:
size_capacity_from_demand:
flag: True # If True, then storage is sized to provide steady-state storage
capacity_from_max_on_turbine_storage: False # if True, then days of storage is ignored and storage capacity is based on how much h2 storage fits on the turbines in the plant using Kottenstete 2003.
type: "lined_rock_cavern" # can be one of ["none", "pipe", "turbine", "pressure_vessel", "salt_cavern", "lined_rock_cavern"]
days: 8.57267 # from `hydrogen_storage_duration_hr` = 205.74419987482239 [days] how many days worth of production we should be able to store (this is ignored if `capacity_from_max_on_turbine_storage` is set to True)
days: 0 #8.57267 # from `hydrogen_storage_duration_hr` = 205.74419987482239 [days] how many days worth of production we should be able to store (this is ignored if `capacity_from_max_on_turbine_storage` is set to True)

policy_parameters: # these should be adjusted for inflation prior to application - order of operations: rate in 1992 $,
#then prevailing wage multiplier if applicable, then inflation
Expand All @@ -92,37 +94,44 @@ policy_parameters: # these should be adjusted for inflation prior to application
electricity_itc: 0
electricity_ptc: 0
h2_ptc: 0
h2_storage_itc: 0
option2: # base credit levels with H2
electricity_itc: 0
electricity_ptc: 0.003 # $0.003/kW (this is base, see inflation adjustment in option 3)
h2_ptc: 0.6 # $0.60/kg h2 produced - assumes net zero but not meeting prevailing wage requirements - does this need to be
# adjusted for inflation from 2022 dollars to claim date, probably constant after claim date?
h2_storage_itc: 0.06
option3: # same as option 5, but assuming prevailing wages are met --> 5x multiplier on both PTCs
electricity_itc: 0
electricity_ptc: 0.015 # $/kWh 1992 dollars
h2_ptc: 3.00 # $/kg 2022 dollars - do not adjust for inflation
h2_storage_itc: 0.3
# bonus options, option 5 and 6 but ITC equivalents
option4: # prevailing wages not met
electricity_itc: 0.06 # %/100 capex
electricity_ptc: 0.00 # $/kW 1992 dollars
h2_ptc: 0.6 # $0.60/kg produced 2022 dollars - assumes net zero but not meeting prevailing wage requirements - does this need to be
# do not adjust for inflation, probably constant after claim date?
h2_storage_itc: 0.06
option5: # prevailing wages met
electricity_itc: 0.30 # %/100 capex
electricity_ptc: 0.0 # $/kWh 1992 dollars
h2_ptc: 3.00 # $/kg of h2 produced 2022 dollars - do adjust for inflation every year applied and until application year
h2_storage_itc: 0.3
option6: # assumes prevailing wages are met, and includes 10% bonus credit of domestic content (100% of steel and iron
# and mfg. components from the US)
electricity_itc: 0.40 # %/100 capex
electricity_ptc: 0.0 # $/kWh 1992 dollars
h2_ptc: 3.00 # $/kg of h2 produced 2022 dollars - do adjust for inflation every year applied and until application year
h2_storage_itc: 0.4
option7: # assumes prevailing wages are met, and includes 10% bonus credit of domestic content (100% of steel and iron
# and mfg. components from the US)
electricity_itc: 0.0 # %/100 capex
electricity_ptc: 0.0165 # $/kWh 1992 dollars (0.015*1.1)
h2_ptc: 3.00 # $/kg of h2 produced 2022 dollars - do adjust for inflation every year applied and until application year
# you can elect itc_for_h2 in leu of the h2_ptc - this choice is independent of the other tech credit selections
# 6% or %50 for itc_for_h2
h2_storage_itc: 0.5

plant_design:
scenario0:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,4 +57,4 @@

print("LCOE: ", lcoe, "[$/MWh]")
print("LCOH: ", lcoh, "[$/kg]")
print("LCOS: ", lcos, "[$/metric-tonne]")
print("LCOS: ", lcos, "[$/metric-tonne]")
Original file line number Diff line number Diff line change
Expand Up @@ -81,9 +81,11 @@ h2_storage_compressor:
h2_transport_pipe:
outlet_pressure: 10 # bar - from example in code from Jamie #TODO check this value
h2_storage:
size_capacity_from_demand:
flag: True # If True, then storage is sized to provide steady-state storage
capacity_from_max_on_turbine_storage: False # if True, then days of storage is ignored and storage capacity is based on how much h2 storage fits on the turbines in the plant using Kottenstete 2003.
type: "none" # can be one of ["none", "pipe", "turbine", "pressure_vessel", "salt_cavern", "lined_rock_cavern"]
days: 19.783 # from `hydrogen_storage_duration_hr` = 474.7948370015298 [days] how many days worth of production we should be able to store (this is ignored if `capacity_from_max_on_turbine_storage` is set to True)
type: "salt_cavern" # can be one of ["none", "pipe", "turbine", "pressure_vessel", "salt_cavern", "lined_rock_cavern"]
days: 0 #19.783 # from `hydrogen_storage_duration_hr` = 474.7948370015298 [days] how many days worth of production we should be able to store (this is ignored if `capacity_from_max_on_turbine_storage` is set to True)

policy_parameters: # these should be adjusted for inflation prior to application - order of operations: rate in 1992 $,
#then prevailing wage multiplier if applicable, then inflation
Expand All @@ -92,37 +94,44 @@ policy_parameters: # these should be adjusted for inflation prior to application
electricity_itc: 0
electricity_ptc: 0
h2_ptc: 0
h2_storage_itc: 0
option2: # base credit levels with H2
electricity_itc: 0
electricity_ptc: 0.003 # $0.003/kW (this is base, see inflation adjustment in option 3)
h2_ptc: 0.6 # $0.60/kg h2 produced - assumes net zero but not meeting prevailing wage requirements - does this need to be
# adjusted for inflation from 2022 dollars to claim date, probably constant after claim date?
h2_storage_itc: 0.06
option3: # same as option 5, but assuming prevailing wages are met --> 5x multiplier on both PTCs
electricity_itc: 0
electricity_ptc: 0.015 # $/kWh 1992 dollars
h2_ptc: 3.00 # $/kg 2022 dollars - do not adjust for inflation
h2_storage_itc: 0.3
# bonus options, option 5 and 6 but ITC equivalents
option4: # prevailing wages not met
electricity_itc: 0.06 # %/100 capex
electricity_ptc: 0.00 # $/kW 1992 dollars
h2_ptc: 0.6 # $0.60/kg produced 2022 dollars - assumes net zero but not meeting prevailing wage requirements - does this need to be
# do not adjust for inflation, probably constant after claim date?
h2_storage_itc: 0.06
option5: # prevailing wages met
electricity_itc: 0.30 # %/100 capex
electricity_ptc: 0.0 # $/kWh 1992 dollars
h2_ptc: 3.00 # $/kg of h2 produced 2022 dollars - do adjust for inflation every year applied and until application year
h2_storage_itc: 0.3
option6: # assumes prevailing wages are met, and includes 10% bonus credit of domestic content (100% of steel and iron
# and mfg. components from the US)
electricity_itc: 0.40 # %/100 capex
electricity_ptc: 0.0 # $/kWh 1992 dollars
h2_ptc: 3.00 # $/kg of h2 produced 2022 dollars - do adjust for inflation every year applied and until application year
h2_storage_itc: 0.4
option7: # assumes prevailing wages are met, and includes 10% bonus credit of domestic content (100% of steel and iron
# and mfg. components from the US)
electricity_itc: 0.0 # %/100 capex
electricity_ptc: 0.0165 # $/kWh 1992 dollars (0.015*1.1)
h2_ptc: 3.00 # $/kg of h2 produced 2022 dollars - do adjust for inflation every year applied and until application year
# you can elect itc_for_h2 in leu of the h2_ptc - this choice is independent of the other tech credit selections
# 6% or %50 for itc_for_h2
h2_storage_itc: 0.5

plant_design:
scenario0:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,4 +57,4 @@

print("LCOE: ", lcoe, "[$/MWh]")
print("LCOH: ", lcoh, "[$/kg]")
print("LCOA: ", lcoa, "[$/kg]")
print("LCOA: ", lcoa, "[$/kg]")
Original file line number Diff line number Diff line change
Expand Up @@ -80,10 +80,11 @@ h2_storage_compressor:
h2_transport_pipe:
outlet_pressure: 10 # bar - from example in code from Jamie #TODO check this value
h2_storage:
# capacity_kg: 18750 # kg
size_capacity_from_demand:
flag: True # If True, then storage is sized to provide steady-state storage
capacity_from_max_on_turbine_storage: False # if True, then days of storage is ignored and storage capacity is based on how much h2 storage fits on the turbines in the plant using Kottenstete 2003.
type: "none" # can be one of ["none", "pipe", "turbine", "pressure_vessel", "salt_cavern", "lined_rock_cavern"]
days: 3 # [days] how many days worth of production we should be able to store (this is ignored if `capacity_from_max_on_turbine_storage` is set to True)
type: "salt_cavern" # can be one of ["none", "pipe", "turbine", "pressure_vessel", "salt_cavern", "lined_rock_cavern"]
days: 0 # [days] how many days worth of production we should be able to store (this is ignored if `capacity_from_max_on_turbine_storage` is set to True)
# platform:
# opex_rate: 0.0111 # % of capex to determine opex (see table 5 in https://www.acm.nl/sites/default/files/documents/study-on-estimation-method-for-additional-efficient-offshore-grid-opex.pdf)
# installation_days: 14 # days
Expand Down Expand Up @@ -118,37 +119,44 @@ policy_parameters: # these should be adjusted for inflation prior to application
electricity_itc: 0
electricity_ptc: 0
h2_ptc: 0
h2_storage_itc: 0
option2: # base credit levels with H2
electricity_itc: 0
electricity_ptc: 0.003 # $0.003/kW (this is base, see inflation adjustment in option 3)
h2_ptc: 0.6 # $0.60/kg h2 produced - assumes net zero but not meeting prevailing wage requirements - does this need to be
# adjusted for inflation from 2022 dollars to claim date, probably constant after claim date?
h2_storage_itc: 0.06
option3: # same as option 5, but assuming prevailing wages are met --> 5x multiplier on both PTCs
electricity_itc: 0
electricity_ptc: 0.015 # $/kWh 1992 dollars
h2_ptc: 3.00 # $/kg 2022 dollars - do not adjust for inflation
h2_storage_itc: 0.3
# bonus options, option 5 and 6 but ITC equivalents
option4: # prevailing wages not met
electricity_itc: 0.06 # %/100 capex
electricity_ptc: 0.00 # $/kW 1992 dollars
h2_ptc: 0.6 # $0.60/kg produced 2022 dollars - assumes net zero but not meeting prevailing wage requirements - does this need to be
# do not adjust for inflation, probably constant after claim date?
h2_storage_itc: 0.06
option5: # prevailing wages met
electricity_itc: 0.30 # %/100 capex
electricity_ptc: 0.0 # $/kWh 1992 dollars
h2_ptc: 3.00 # $/kg of h2 produced 2022 dollars - do adjust for inflation every year applied and until application year
h2_storage_itc: 0.3
option6: # assumes prevailing wages are met, and includes 10% bonus credit of domestic content (100% of steel and iron
# and mfg. components from the US)
electricity_itc: 0.40 # %/100 capex
electricity_ptc: 0.0 # $/kWh 1992 dollars
h2_ptc: 3.00 # $/kg of h2 produced 2022 dollars - do adjust for inflation every year applied and until application year
h2_storage_itc: 0.4
option7: # assumes prevailing wages are met, and includes 10% bonus credit of domestic content (100% of steel and iron
# and mfg. components from the US)
electricity_itc: 0.0 # %/100 capex
electricity_ptc: 0.0165 # $/kWh 1992 dollars (0.015*1.1)
h2_ptc: 3.00 # $/kg of h2 produced 2022 dollars - do adjust for inflation every year applied and until application year
# you can elect itc_for_h2 in leu of the h2_ptc - this choice is independent of the other tech credit selections
# 6% or %50 for itc_for_h2
h2_storage_itc: 0.5

plant_design:
scenario0:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@

# ORBIT imports
from ORBIT.core.library import initialize_library

initialize_library(os.path.join(os.getcwd(), "./input/"))

# run the stuff
Expand All @@ -32,7 +33,7 @@
filename_turbine_config = "./input/turbines/" + turbine_model + ".yaml"
filename_floris_config = "./input/floris/floris_input_osw_17MW.yaml"
filename_hopp_config = "./input/plant/hopp_config_gom.yaml"
filename_orbit_config= "./input/plant/orbit-config-"+turbine_model+"-gom.yaml"
filename_orbit_config = "./input/plant/orbit-config-" + turbine_model + "-gom.yaml"
filename_greenheart_config = "./input/plant/greenheart_config_offshore_gom.yaml"

config = GreenHeartSimulationConfig(
Expand Down Expand Up @@ -61,4 +62,4 @@
lcoh = prob.get_val("lcoh", units="USD/kg")

print("LCOE: ", lcoe, "[$/MWh]")
print("LCOH: ", lcoh, "[$/kg]")
print("LCOH: ", lcoh, "[$/kg]")
Original file line number Diff line number Diff line change
Expand Up @@ -80,10 +80,11 @@ h2_storage_compressor:
h2_transport_pipe:
outlet_pressure: 10 # bar - from example in code from Jamie #TODO check this value
h2_storage:
# capacity_kg: 18750 # kg
size_capacity_from_demand:
flag: True # If True, then storage is sized to provide steady-state storage
capacity_from_max_on_turbine_storage: False # if True, then days of storage is ignored and storage capacity is based on how much h2 storage fits on the turbines in the plant using Kottenstete 2003.
type: "none" # can be one of ["none", "pipe", "turbine", "pressure_vessel", "salt_cavern", "lined_rock_cavern"]
days: 3 # [days] how many days worth of production we should be able to store (this is ignored if `capacity_from_max_on_turbine_storage` is set to True)
type: "lined_rock_cavern" # can be one of ["none", "pipe", "turbine", "pressure_vessel", "salt_cavern", "lined_rock_cavern"]
days: 0 # [days] how many days worth of production we should be able to store (this is ignored if `capacity_from_max_on_turbine_storage` is set to True)
# platform:
# opex_rate: 0.0111 # % of capex to determine opex (see table 5 in https://www.acm.nl/sites/default/files/documents/study-on-estimation-method-for-additional-efficient-offshore-grid-opex.pdf)
# installation_days: 14 # days
Expand Down Expand Up @@ -118,37 +119,44 @@ policy_parameters: # these should be adjusted for inflation prior to application
electricity_itc: 0
electricity_ptc: 0
h2_ptc: 0
h2_storage_itc: 0
option2: # base credit levels with H2
electricity_itc: 0
electricity_ptc: 0.003 # $0.003/kW (this is base, see inflation adjustment in option 3)
h2_ptc: 0.6 # $0.60/kg h2 produced - assumes net zero but not meeting prevailing wage requirements - does this need to be
# adjusted for inflation from 2022 dollars to claim date, probably constant after claim date?
h2_storage_itc: 0.06
option3: # same as option 5, but assuming prevailing wages are met --> 5x multiplier on both PTCs
electricity_itc: 0
electricity_ptc: 0.015 # $/kWh 1992 dollars
h2_ptc: 3.00 # $/kg 2022 dollars - do not adjust for inflation
h2_storage_itc: 0.3
# bonus options, option 5 and 6 but ITC equivalents
option4: # prevailing wages not met
electricity_itc: 0.06 # %/100 capex
electricity_ptc: 0.00 # $/kW 1992 dollars
h2_ptc: 0.6 # $0.60/kg produced 2022 dollars - assumes net zero but not meeting prevailing wage requirements - does this need to be
# do not adjust for inflation, probably constant after claim date?
h2_storage_itc: 0.06
option5: # prevailing wages met
electricity_itc: 0.30 # %/100 capex
electricity_ptc: 0.0 # $/kWh 1992 dollars
h2_ptc: 3.00 # $/kg of h2 produced 2022 dollars - do adjust for inflation every year applied and until application year
h2_storage_itc: 0.3
option6: # assumes prevailing wages are met, and includes 10% bonus credit of domestic content (100% of steel and iron
# and mfg. components from the US)
electricity_itc: 0.40 # %/100 capex
electricity_ptc: 0.0 # $/kWh 1992 dollars
h2_ptc: 3.00 # $/kg of h2 produced 2022 dollars - do adjust for inflation every year applied and until application year
h2_storage_itc: 0.4
option7: # assumes prevailing wages are met, and includes 10% bonus credit of domestic content (100% of steel and iron
# and mfg. components from the US)
electricity_itc: 0.0 # %/100 capex
electricity_ptc: 0.0165 # $/kWh 1992 dollars (0.015*1.1)
h2_ptc: 3.00 # $/kg of h2 produced 2022 dollars - do adjust for inflation every year applied and until application year
# you can elect itc_for_h2 in leu of the h2_ptc - this choice is independent of the other tech credit selections
# 6% or %50 for itc_for_h2
h2_storage_itc: 0.5

plant_design:
scenario0:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@

# ORBIT imports
from ORBIT.core.library import initialize_library

initialize_library(os.path.join(os.getcwd(), "./input/"))

# run the stuff
Expand All @@ -32,7 +33,7 @@
filename_turbine_config = "./input/turbines/" + turbine_model + ".yaml"
filename_floris_config = "./input/floris/floris_input_osw_15MW.yaml"
filename_hopp_config = "./input/plant/hopp_config_ny.yaml"
filename_orbit_config= "./input/plant/orbit-config-"+turbine_model+"-ny.yaml"
filename_orbit_config = "./input/plant/orbit-config-" + turbine_model + "-ny.yaml"
filename_greenheart_config = "./input/plant/greenheart_config_offshore_ny.yaml"

config = GreenHeartSimulationConfig(
Expand Down Expand Up @@ -61,4 +62,4 @@
lcoh = prob.get_val("lcoh", units="USD/kg")

print("LCOE: ", lcoe, "[$/MWh]")
print("LCOH: ", lcoh, "[$/kg]")
print("LCOH: ", lcoh, "[$/kg]")
Loading

0 comments on commit aae06a0

Please sign in to comment.