h2integrate.converters.nitrogen.simple_ASU#
Functions
|
Returns a conversion multiplier and a unit type based on the provided unit string. |
Classes
|
|
|
|
|
Configuration for ASU model. |
|
Simple linear converter to model nitrogen production from an Air Separation Unit. |
- class h2integrate.converters.nitrogen.simple_ASU.SimpleASUPerformanceConfig(*, size_from_N2_demand, rated_N2_kg_pr_hr=None, ASU_rated_power_kW=None, N2_fraction_in_air=0.7811, O2_fraction_in_air=0.2096, Ar_fraction_in_air=0.0093, efficiency_kWh_pr_kg_N2=0.29)#
Configuration for ASU model. To represent a cryogenic ASU, it is recommended to set the parameter efficiency_kWh_pr_kg_N2 to 0.119. To represent a pressure swing absorption ASU, it is recommended to set the parameter efficiency_kWh_pr_kg_N2 to 0.29.
- Parameters:
size_from_N2_demand (bool)
rated_N2_kg_pr_hr (float | None)
ASU_rated_power_kW (float | None)
N2_fraction_in_air (float)
O2_fraction_in_air (float)
Ar_fraction_in_air (float)
efficiency_kWh_pr_kg_N2 (float)
- size_from_N2_demand#
if True, size the system based on some input demand. If False, size the system from user input (rated_N2_kg_pr_hr or ASU_rated_power_kW).
- Type:
bool
- rated_N2_kg_pr_hr#
Rated capacity of ASU in kg-N2/hour. Only required if size_from_N2_demand is False and ASU_rated_power_kW is not input.
- Type:
float | None
- ASU_rated_power_kW#
Rated capacity of ASU in kg-N2/hour. Only required if size_from_N2_demand is False and rated_N2_kg_pr_hr is not input.
- Type:
float | None
- efficiency_kWh_pr_kg_N2#
efficiency of the ASU in kWh/kg-N2, defaults to 0.29. Should be between 0.1 and 0.5. Some reference efficiencies are:
- 0.29 for pressure swing absorption - 0.119 for cryogenic
- Type:
float
- N2_fraction_in_air#
nitrogen content of input air stream as mole fraction. Defaults to 0.7811.
- Type:
float, optional
- O2_fraction_in_air#
oxygen content of input air stream as mole fraction. Defaults to 0.2096.
- Type:
float, optional
- Ar_fraction_in_air#
argon content of input air stream as mole fraction. Defaults to 0.0093.
- Type:
float, optional
- size_from_N2_demand: bool#
- rated_N2_kg_pr_hr: float | None#
- ASU_rated_power_kW: float | None#
- N2_fraction_in_air: float#
- O2_fraction_in_air: float#
- Ar_fraction_in_air: float#
- efficiency_kWh_pr_kg_N2: float#
- class h2integrate.converters.nitrogen.simple_ASU.SimpleASUPerformanceModel(**kwargs)#
Simple linear converter to model nitrogen production from an Air Separation Unit.
- initialize()#
Perform any one-time initialization run at instantiation.
- setup()#
Declare inputs and outputs.
- Available attributes:
name pathname comm options
- compute(inputs, outputs)#
Calculate the amount of N2 that can be produced and the amount of feedstocks required given the input parameters and values.
- Parameters:
inputs (dict) -- input variables/parameters
(dict (outputs) -- output variables/parameters
- Raises:
ValueError -- if user provided ASU capacities in kg-N2/hour and kW and these values do not result in the same efficiency as efficiency_kWh_pr_kg_N2.
- h2integrate.converters.nitrogen.simple_ASU.make_cost_unit_multiplier(unit_str)#
Returns a conversion multiplier and a unit type based on the provided unit string. The conversion multiplier converts the given unit to the base unit used in the model (kW for power, kg/hour for mass).
- Parameters:
unit_str (str) -- The unit string, e.g., "kw", "mw", "kg/hour", "tonne/day", etc.
- Returns:
tuple --
- (conversion_multiplier, unit_type)
- conversion_multiplier (float): Multiplier to convert the input unit to
the model's base unit.
unit_type (str): "power" if the unit is power-based, "mass" if mass-based.
Notes
For "mw", the multiplier converts MW to kW.
For daily units, the multiplier converts per day to per hour.
For "tonne" units, the multiplier converts tonnes to kg.
If unit_str is "none", returns (0.0, "power").
- class h2integrate.converters.nitrogen.simple_ASU.SimpleASUCostConfig(*, cost_year, capex_usd_per_unit, capex_unit, opex_usd_per_unit_per_year=0.0, opex_unit='none')#
- Parameters:
cost_year (int)
capex_usd_per_unit (float)
capex_unit (str)
opex_usd_per_unit_per_year (float)
opex_unit (str)
- capex_usd_per_unit: float#
- capex_unit: str#
- opex_usd_per_unit_per_year: float#
- opex_unit: str#
- class h2integrate.converters.nitrogen.simple_ASU.SimpleASUCostModel(**kwargs)#
- initialize()#
Perform any one-time initialization run at instantiation.
- setup()#
Declare inputs and outputs.
- Available attributes:
name pathname comm options
- compute(inputs, outputs, discrete_inputs, discrete_outputs)#
Computation for the OM component.
For a template class this is not implement and raises an error.