h2integrate.simulation.technologies.steel.steel#
Functions
|
Calculates either the annual steel production in metric tons based on plant capacity and available hydrogen or the amount of required hydrogen based on a desired steel production. |
|
Calculates the capital expenditure (CapEx) and operating expenditure (OpEx) for a steel manufacturing plant based on the provided configuration. |
|
Executes the financial model for steel production, calculating the breakeven price of steel and other financial metrics based on the provided configuration and cost models. |
|
Runs the full steel model, including capacity, cost, and finance models. |
|
Calculates the annual steel production in metric tons based on plant capacity and capacity factor. |
Classes
|
Represents the consumption rates and costs of various feedstocks used in steel production. |
|
Configuration inputs for the steel capacity sizing model, including plant capacity and feedstock details. |
Outputs from the steel size model. |
|
|
Configuration for the steel cost model, including operational parameters and feedstock costs. |
|
Outputs of the steel cost model, extending the SteelCosts data with total cost calculations and specific cost components related to the operation and installation of a steel production plant. |
|
Base dataclass for calculated steel costs. |
|
Configuration for the steel finance model, including plant characteristics, financial assumptions, and cost inputs. |
|
Represents the outputs of the steel finance model, encapsulating the results of financial analysis for steel production. |
- class h2integrate.simulation.technologies.steel.steel.Feedstocks(natural_gas_prices, excess_oxygen=395, lime_unitcost=122.1, lime_transport_cost=0.0, carbon_unitcost=236.97, carbon_transport_cost=0.0, electricity_cost=48.92, iron_ore_pellet_unitcost=207.35, iron_ore_pellet_transport_cost=0.0, oxygen_market_price=0.03, raw_water_unitcost=0.59289, iron_ore_consumption=1.62927, raw_water_consumption=0.80367, lime_consumption=0.01812, carbon_consumption=0.0538, hydrogen_consumption=0.06596, natural_gas_consumption=0.71657, electricity_consumption=0.5502, slag_disposal_unitcost=37.63, slag_production=0.17433, maintenance_materials_unitcost=7.72)#
Represents the consumption rates and costs of various feedstocks used in steel production.
- Parameters:
natural_gas_prices (dict[str, float])
excess_oxygen (float)
lime_unitcost (float)
lime_transport_cost (float)
carbon_unitcost (float)
carbon_transport_cost (float)
electricity_cost (float)
iron_ore_pellet_unitcost (float)
iron_ore_pellet_transport_cost (float)
oxygen_market_price (float)
raw_water_unitcost (float)
iron_ore_consumption (float)
raw_water_consumption (float)
lime_consumption (float)
carbon_consumption (float)
hydrogen_consumption (float)
natural_gas_consumption (float)
electricity_consumption (float)
slag_disposal_unitcost (float)
slag_production (float)
maintenance_materials_unitcost (float)
- natural_gas_prices#
Natural gas costs, indexed by year ($/GJ).
- Type:
Dict[str, float]
- excess_oxygen#
Excess oxygen produced (kgO2), default = 395.
- Type:
float
- lime_unitcost#
Cost per metric ton of lime ($/metric ton).
- Type:
float
- lime_transport_cost#
Cost to transport lime per metric ton of lime ($/metric ton).
- Type:
float
- carbon_unitcost#
Cost per metric ton of carbon ($/metric ton).
- Type:
float
- carbon_transport_cost#
Cost to transport carbon per metric ton of carbon ($/metric ton).
- Type:
float
- electricity_cost#
Electricity cost per metric ton of steel production ($/metric ton).
- Type:
float
- iron_ore_pellet_unitcost#
Cost per metric ton of iron ore ($/metric ton).
- Type:
float
- iron_ore_pellet_transport_cost#
Cost to transport iron ore per metric ton of iron ore ($/metric ton).
- Type:
float
- oxygen_market_price#
Market price per kg of oxygen ($/kgO2).
- Type:
float
- raw_water_unitcost#
Cost per metric ton of raw water ($/metric ton).
- Type:
float
- iron_ore_consumption#
Iron ore consumption per metric ton of steel production (metric tons).
- Type:
float
- raw_water_consumption#
Raw water consumption per metric ton of steel production (metric tons).
- Type:
float
- lime_consumption#
Lime consumption per metric ton of steel production (metric tons).
- Type:
float
- carbon_consumption#
Carbon consumption per metric ton of steel production (metric tons).
- Type:
float
- hydrogen_consumption#
Hydrogen consumption per metric ton of steel production (metric tons).
- Type:
float
- natural_gas_consumption#
Natural gas consumption per metric ton of steel production (GJ-LHV).
- Type:
float
- electricity_consumption#
Electricity consumption per metric ton of steel production (MWh).
- Type:
float
- slag_disposal_unitcost#
Cost per metric ton of slag disposal ($/metric ton).
- Type:
float
- slag_production#
Slag production per metric ton of steel production (metric tons).
- Type:
float
- maintenance_materials_unitcost#
Cost per metric ton of annual steel slab production at real capacity factor ($/metric ton).
- Type:
float
- natural_gas_prices: dict[str, float]#
- excess_oxygen: float#
- lime_unitcost: float#
- lime_transport_cost: float#
- carbon_unitcost: float#
- carbon_transport_cost: float#
- electricity_cost: float#
- iron_ore_pellet_unitcost: float#
- iron_ore_pellet_transport_cost: float#
- oxygen_market_price: float#
- raw_water_unitcost: float#
- iron_ore_consumption: float#
- raw_water_consumption: float#
- lime_consumption: float#
- carbon_consumption: float#
- hydrogen_consumption: float#
- natural_gas_consumption: float#
- electricity_consumption: float#
- slag_disposal_unitcost: float#
- slag_production: float#
- maintenance_materials_unitcost: float#
- class h2integrate.simulation.technologies.steel.steel.SteelCostModelConfig(operational_year, plant_capacity_mtpy, lcoh, feedstocks, o2_heat_integration=True, co2_fuel_emissions=0.03929, co2_carbon_emissions=0.17466, surface_water_discharge=0.42113)#
Configuration for the steel cost model, including operational parameters and feedstock costs.
- Parameters:
operational_year (int)
plant_capacity_mtpy (float)
lcoh (float)
feedstocks (Feedstocks)
o2_heat_integration (bool)
co2_fuel_emissions (float)
co2_carbon_emissions (float)
surface_water_discharge (float)
- operational_year#
The year of operation for cost estimation.
- Type:
int
- plant_capacity_mtpy#
Plant capacity in metric tons per year.
- Type:
float
- lcoh#
Levelized cost of hydrogen ($/kg).
- Type:
float
- feedstocks#
An instance of the Feedstocks class containing feedstock consumption rates and costs.
- Type:
- o2_heat_integration#
Indicates whether oxygen and heat integration is used, affecting preheating CapEx, cooling CapEx, and oxygen sales. Default is True.
- Type:
bool
- co2_fuel_emissions#
CO2 emissions from fuel per metric ton of steel production.
- Type:
float
- co2_carbon_emissions#
CO2 emissions from carbon per metric ton of steel production.
- Type:
float
- surface_water_discharge#
Surface water discharge per metric ton of steel production.
- Type:
float
- operational_year: int#
- plant_capacity_mtpy: float#
- lcoh: float#
- feedstocks: Feedstocks#
- o2_heat_integration: bool#
- co2_fuel_emissions: float#
- co2_carbon_emissions: float#
- surface_water_discharge: float#
- class h2integrate.simulation.technologies.steel.steel.SteelCosts(capex_eaf_casting, capex_shaft_furnace, capex_oxygen_supply, capex_h2_preheating, capex_cooling_tower, capex_piping, capex_elec_instr, capex_buildings_storage_water, capex_misc, labor_cost_annual_operation, labor_cost_maintenance, labor_cost_admin_support, property_tax_insurance, land_cost, installation_cost)#
Base dataclass for calculated steel costs.
- Parameters:
capex_eaf_casting (float)
capex_shaft_furnace (float)
capex_oxygen_supply (float)
capex_h2_preheating (float)
capex_cooling_tower (float)
capex_piping (float)
capex_elec_instr (float)
capex_buildings_storage_water (float)
capex_misc (float)
labor_cost_annual_operation (float)
labor_cost_maintenance (float)
labor_cost_admin_support (float)
property_tax_insurance (float)
land_cost (float)
installation_cost (float)
- capex_eaf_casting#
Capital expenditure for electric arc furnace and casting.
- Type:
float
- capex_shaft_furnace#
Capital expenditure for shaft furnace.
- Type:
float
- capex_oxygen_supply#
Capital expenditure for oxygen supply.
- Type:
float
- capex_h2_preheating#
Capital expenditure for hydrogen preheating.
- Type:
float
- capex_cooling_tower#
Capital expenditure for cooling tower.
- Type:
float
- capex_piping#
Capital expenditure for piping.
- Type:
float
- capex_elec_instr#
Capital expenditure for electrical and instrumentation.
- Type:
float
- capex_buildings_storage_water#
Capital expenditure for buildings, storage, and water service.
- Type:
float
- capex_misc#
Capital expenditure for miscellaneous items.
- Type:
float
- labor_cost_annual_operation#
Annual operating labor cost.
- Type:
float
- labor_cost_maintenance#
Maintenance labor cost.
- Type:
float
- labor_cost_admin_support#
Administrative and support labor cost.
- Type:
float
- property_tax_insurance#
Cost for property tax and insurance.
- Type:
float
- land_cost#
Cost of land.
- Type:
float
- installation_cost#
Cost of installation.
- Type:
float
Note
These represent the minimum set of required cost data for run_steel_finance_model, as well as base data for SteelCostModelOutputs.
- capex_eaf_casting: float#
- capex_shaft_furnace: float#
- capex_oxygen_supply: float#
- capex_h2_preheating: float#
- capex_cooling_tower: float#
- capex_piping: float#
- capex_elec_instr: float#
- capex_buildings_storage_water: float#
- capex_misc: float#
- labor_cost_annual_operation: float#
- labor_cost_maintenance: float#
- labor_cost_admin_support: float#
- property_tax_insurance: float#
- land_cost: float#
- installation_cost: float#
- class h2integrate.simulation.technologies.steel.steel.SteelCostModelOutputs(capex_eaf_casting, capex_shaft_furnace, capex_oxygen_supply, capex_h2_preheating, capex_cooling_tower, capex_piping, capex_elec_instr, capex_buildings_storage_water, capex_misc, labor_cost_annual_operation, labor_cost_maintenance, labor_cost_admin_support, property_tax_insurance, land_cost, installation_cost, total_plant_cost, total_fixed_operating_cost, labor_cost_fivemonth, maintenance_materials_onemonth, non_fuel_consumables_onemonth, waste_disposal_onemonth, monthly_energy_cost, spare_parts_cost, misc_owners_costs)#
Outputs of the steel cost model, extending the SteelCosts data with total cost calculations and specific cost components related to the operation and installation of a steel production plant.
- Parameters:
capex_eaf_casting (float)
capex_shaft_furnace (float)
capex_oxygen_supply (float)
capex_h2_preheating (float)
capex_cooling_tower (float)
capex_piping (float)
capex_elec_instr (float)
capex_buildings_storage_water (float)
capex_misc (float)
labor_cost_annual_operation (float)
labor_cost_maintenance (float)
labor_cost_admin_support (float)
property_tax_insurance (float)
land_cost (float)
installation_cost (float)
total_plant_cost (float)
total_fixed_operating_cost (float)
labor_cost_fivemonth (float)
maintenance_materials_onemonth (float)
non_fuel_consumables_onemonth (float)
waste_disposal_onemonth (float)
monthly_energy_cost (float)
spare_parts_cost (float)
misc_owners_costs (float)
- total_plant_cost#
The total capital expenditure (CapEx) for the steel plant.
- Type:
float
- total_fixed_operating_cost#
The total annual operating expenditure (OpEx), including labor, maintenance, administrative support, and property tax/insurance.
- Type:
float
- labor_cost_fivemonth#
Cost of labor for the first five months of operation, often used in startup cost calculations.
- Type:
float
- maintenance_materials_onemonth#
Cost of maintenance materials for one month of operation.
- Type:
float
- non_fuel_consumables_onemonth#
Cost of non-fuel consumables for one month of operation.
- Type:
float
- waste_disposal_onemonth#
Cost of waste disposal for one month of operation.
- Type:
float
- monthly_energy_cost#
Cost of energy (electricity, natural gas, etc.) for one month of operation.
- Type:
float
- spare_parts_cost#
Cost of spare parts as part of the initial investment.
- Type:
float
- misc_owners_costs#
Miscellaneous costs incurred by the owner, including but not limited to, initial supply stock, safety equipment, and initial training programs.
- Type:
float
- total_plant_cost: float#
- total_fixed_operating_cost: float#
- labor_cost_fivemonth: float#
- maintenance_materials_onemonth: float#
- non_fuel_consumables_onemonth: float#
- waste_disposal_onemonth: float#
- monthly_energy_cost: float#
- spare_parts_cost: float#
- misc_owners_costs: float#
- class h2integrate.simulation.technologies.steel.steel.SteelCapacityModelConfig(input_capacity_factor_estimate, feedstocks, hydrogen_amount_kgpy=None, desired_steel_mtpy=None)#
Configuration inputs for the steel capacity sizing model, including plant capacity and feedstock details.
- Parameters:
input_capacity_factor_estimate (float)
feedstocks (Feedstocks)
hydrogen_amount_kgpy (float | None)
desired_steel_mtpy (float | None)
- hydrogen_amount_kgpy Optional
The amount of hydrogen available in kilograms per year to make steel.
- Type:
float
- desired_steel_mtpy Optional
The amount of desired steel production in metric tons per year.
- Type:
float
- input_capacity_factor_estimate#
The estimated steel plant capacity factor.
- Type:
float
- feedstocks#
An instance of the Feedstocks class detailing the costs and consumption rates of resources used in production.
- Type:
- input_capacity_factor_estimate: float#
- feedstocks: Feedstocks#
- hydrogen_amount_kgpy: float | None#
- desired_steel_mtpy: float | None#
- class h2integrate.simulation.technologies.steel.steel.SteelCapacityModelOutputs(steel_plant_capacity_mtpy, hydrogen_amount_kgpy)#
Outputs from the steel size model.
- Parameters:
steel_plant_capacity_mtpy (float)
hydrogen_amount_kgpy (float)
- steel_plant_size_mtpy#
If amount of hydrogen in kilograms per year is input, the size of the steel plant in metric tons per year is output.
- Type:
float
- hydrogen_amount_kgpy#
If amount of steel production in metric tons per year is input, the amount of necessary hydrogen feedstock in kilograms per year is output.
- Type:
float
- steel_plant_capacity_mtpy: float#
- hydrogen_amount_kgpy: float#
- h2integrate.simulation.technologies.steel.steel.run_size_steel_plant_capacity(config)#
Calculates either the annual steel production in metric tons based on plant capacity and available hydrogen or the amount of required hydrogen based on a desired steel production.
- Parameters:
config (SteelCapacityModelConfig) -- Configuration object containing all necessary parameters for the capacity sizing, including capacity factor estimate and feedstock costs.
- Returns:
SteelCapacityModelOutputs -- An object containing steel plant capacity in metric tons per year and amount of hydrogen required in kilograms per year.
- Return type:
- h2integrate.simulation.technologies.steel.steel.run_steel_model(plant_capacity_mtpy, plant_capacity_factor)#
Calculates the annual steel production in metric tons based on plant capacity and capacity factor.
- Parameters:
plant_capacity_mtpy (float) -- The plant's annual capacity in metric tons per year.
plant_capacity_factor (float) -- The capacity factor of the plant.
- Returns:
float -- The calculated annual steel production in metric tons per year.
- Return type:
float
- h2integrate.simulation.technologies.steel.steel.run_steel_cost_model(config)#
Calculates the capital expenditure (CapEx) and operating expenditure (OpEx) for a steel manufacturing plant based on the provided configuration.
- Parameters:
config (SteelCostModelConfig) -- Configuration object containing all necessary parameters for the cost model, including plant capacity, feedstock costs, and integration options for oxygen and heat.
- Returns:
SteelCostModelOutputs -- An object containing detailed breakdowns of capital and operating costs, as well as total plant cost and other financial metrics.
- Return type:
Note
The calculation includes various cost components such as electric arc furnace (EAF) casting, shaft furnace, oxygen supply, hydrogen preheating, cooling tower, and more, adjusted based on the Chemical Engineering Plant Cost Index (CEPCI).
- class h2integrate.simulation.technologies.steel.steel.SteelFinanceModelConfig(plant_life, plant_capacity_mtpy, plant_capacity_factor, steel_production_mtpy, lcoh, grid_prices, feedstocks, costs, o2_heat_integration=True, financial_assumptions=NOTHING, install_years=3, gen_inflation=0.0, save_plots=False, show_plots=False, output_dir='./output/', design_scenario_id=0)#
Configuration for the steel finance model, including plant characteristics, financial assumptions, and cost inputs.
- Parameters:
plant_life (int)
plant_capacity_mtpy (float)
plant_capacity_factor (float)
steel_production_mtpy (float)
lcoh (float)
grid_prices (dict[str, float])
feedstocks (Feedstocks)
costs (SteelCosts | SteelCostModelOutputs)
o2_heat_integration (bool)
financial_assumptions (dict[str, float])
install_years (int)
gen_inflation (float)
save_plots (bool)
show_plots (bool)
output_dir (str)
design_scenario_id (int)
- plant_life#
The operational lifetime of the plant in years.
- Type:
int
- plant_capacity_mtpy#
Plant capacity in metric tons per year.
- Type:
float
- plant_capacity_factor#
The fraction of the year the plant operates at full capacity.
- Type:
float
- steel_production_mtpy#
Annual steel production in metric tons.
- Type:
float
- lcoh#
Levelized cost of hydrogen.
- Type:
float
- grid_prices#
Electricity prices per unit.
- Type:
Dict[str, float]
- feedstocks#
The feedstocks required for steel production, including types and costs.
- Type:
- costs#
Calculated CapEx and OpEx costs.
- Type:
Union[SteelCosts, SteelCostModelOutputs]
- o2_heat_integration#
Indicates if oxygen and heat integration is used.
- Type:
bool
- financial_assumptions#
Financial assumptions for model calculations.
- Type:
Dict[str, float]
- install_years#
The number of years over which the plant is installed.
- Type:
int
- gen_inflation#
General inflation rate.
- Type:
float
- save_plots#
select whether or not to save output plots
- Type:
bool
- show_plots#
select whether or not to show output plots during run
- Type:
bool
- output_dir#
where to store any saved plots or data
- Type:
str
- design_scenario_id#
what design scenario the plots correspond to
- Type:
int
- plant_life: int#
- plant_capacity_mtpy: float#
- plant_capacity_factor: float#
- steel_production_mtpy: float#
- lcoh: float#
- grid_prices: dict[str, float]#
- feedstocks: Feedstocks#
- costs: SteelCosts | SteelCostModelOutputs#
- o2_heat_integration: bool#
- financial_assumptions: dict[str, float]#
- install_years: int#
- gen_inflation: float#
- save_plots: bool#
- show_plots: bool#
- output_dir: str#
- design_scenario_id: int#
- class h2integrate.simulation.technologies.steel.steel.SteelFinanceModelOutputs(sol, summary, price_breakdown)#
Represents the outputs of the steel finance model, encapsulating the results of financial analysis for steel production.
- Parameters:
sol (dict)
summary (dict)
price_breakdown (DataFrame)
- sol#
A dictionary containing the solution to the financial model, including key financial indicators such as NPV (Net Present Value), IRR (Internal Rate of Return), and breakeven price.
- Type:
dict
- summary#
A summary of key results from the financial analysis, providing a high-level overview of financial metrics and performance indicators.
- Type:
dict
- price_breakdown#
A Pandas DataFrame detailing the cost breakdown for producing steel, including both capital and operating expenses, as well as the impact of various cost factors on the overall price of steel.
- Type:
pd.DataFrame
- sol: dict#
- summary: dict#
- price_breakdown: DataFrame#
- h2integrate.simulation.technologies.steel.steel.run_steel_finance_model(config)#
Executes the financial model for steel production, calculating the breakeven price of steel and other financial metrics based on the provided configuration and cost models.
This function integrates various cost components, including capital expenditures (CapEx), operating expenses (OpEx), and owner's costs. It leverages the ProFAST financial analysis software framework.
- Parameters:
config (SteelFinanceModelConfig) -- Configuration object containing all necessary parameters and assumptions for the financial model, including plant characteristics, cost inputs, financial assumptions, and grid prices.
- Returns:
SteelFinanceModelOutputs -- Object containing detailed financial analysis results, including solution metrics, summary values, price breakdown, and steel price breakdown per metric ton. This output is instrumental in assessing the financial performance and breakeven price for the steel production facility.
- Return type:
- h2integrate.simulation.technologies.steel.steel.run_steel_full_model(h2integrate_config, save_plots=False, show_plots=False, output_dir='./output/', design_scenario_id=0)#
Runs the full steel model, including capacity, cost, and finance models.
- Parameters:
h2integrate_config (dict) -- The configuration for the h2integrate model.
- Returns:
Tuple[SteelCapacityModelOutputs, SteelCostModelOutputs, SteelFinanceModelOutputs] -- A tuple containing the outputs of the steel capacity, cost, and finance models.
- Return type:
tuple[SteelCapacityModelOutputs, SteelCostModelOutputs, SteelFinanceModelOutputs]