watertap-org / watertap

The WaterTAP development repository
https://watertap.readthedocs.io/en/latest
Other
59 stars 56 forks source link

Electrical Carbon Intensity in Zero-Order costing #706

Closed arao53 closed 7 months ago

arao53 commented 2 years ago

Motivation

Electrical Carbon Intensity can be used to quantify the embedded carbon emissions from using electricity in a water treatment system and is defined on a volumetric flow basis.

specific_electrical_carbon_intensity = electrical_carbon_intensity * electricity_consumption / flowrate 

This may be useful to implement for the Zero-Order models, however it is currently only included in the detailed model costing package (watertap_costing_package.py). Zero-order models require the parameter information to be included in the .yaml files (..\data\techno_economic\*.yaml).

Current Implementation in WaterTAP costing

Electrical carbon intensity has been implemented in PR#697 after the detailed model costing parameters were reorganized into global parameters (applies to all unit models) and unit-specific parameters (e.g. build_reverse_osmosis_cost_param_block, build_uv_cost_param_block).

Example global parameter definition:

>>> self.electrical_carbon_intensity = pyo.Param(
            mutable=True,
            initialize=0.475,
            doc="Grid carbon intensity [kgCO2_eq/kWh]",
            units=pyo.units.kg / pyo.units.kWh)

Example use in RO_with_energy_recovery.py:

>>> m.fs.costing.add_LCOW(m.fs.product.properties[0].flow_vol)
>>> m.fs.costing.add_specific_energy_consumption(m.fs.product.properties[0].flow_vol)
>>> m.fs.costing.add_specific_electrical_carbon_intensity(m.fs.product.properties[0].flow_vol)
adam-a-a commented 1 year ago

Technically, we don't need to have carbon intensity set in the YAML files. Since this would represent grid carbon intensity, we can simply implement the same way we did for the WaterTAP costing package.

bknueven commented 7 months ago

Closed by #1122