watertap.costing.unit_models package
Submodules
watertap.costing.unit_models.anaerobic_digester module
watertap.costing.unit_models.clarifier module
[1] Sharma, Jwala R., Mohammad Najafi, and Syed R. Qasim. “Preliminary cost estimation models for construction, operation, and maintenance of water treatment plants.” Journal of Infrastructure Systems 19.4 (2013): 451-464.
[2] Byun, Jaewon, Maravelias, Christos. Benchmark Model for Wastewater Treatment Using an Activated Sludge Process. United States: N.p., 21 Jan, 2022. Web. doi: 10.7481/1844539.
- class watertap.costing.unit_models.clarifier.ClarifierType(value)[source]
Bases:
StrEnum
An enumeration.
- watertap.costing.unit_models.clarifier.cost_circular_clarifier(blk, cost_electricity_flow=True)[source]
Circular clarifier costing method [1]
- watertap.costing.unit_models.clarifier.cost_clarifier(blk, clarifier_type=ClarifierType.circular, **kwargs)[source]
Clarifier costing method
- Parameters:
clarifier_type – ClarifierType Enum indicating clarifier type, default = ClarifierType.circular
watertap.costing.unit_models.compressor module
watertap.costing.unit_models.crystallizer module
- class watertap.costing.unit_models.crystallizer.CrystallizerCostType(value)[source]
Bases:
StrEnum
An enumeration.
- watertap.costing.unit_models.crystallizer.cost_crystallizer(blk, cost_type=CrystallizerCostType.default)[source]
Function for costing the FC crystallizer by the mass flow of produced crystals. The operating cost model assumes that heat is supplied via condensation of saturated steam (see Dutta et al.)
- Parameters:
cost_type – Option for crystallizer cost function type - volume or mass basis
watertap.costing.unit_models.cstr module
watertap.costing.unit_models.cstr_injection module
watertap.costing.unit_models.dewatering module
- class watertap.costing.unit_models.dewatering.DewateringType(value)[source]
Bases:
StrEnum
An enumeration.
- watertap.costing.unit_models.dewatering.cost_centrifuge(blk, dewatering_type=DewateringType.centrifuge, cost_electricity_flow=True)[source]
Centrifuge costing method
watertap.costing.unit_models.electroNP module
watertap.costing.unit_models.electrodialysis module
- watertap.costing.unit_models.electrodialysis.cost_electrodialysis(blk, cost_electricity_flow=True, has_rectifier=False)[source]
Function for costing the Electrodialysis unit
- Parameters:
cost_electricity_flow (
bool
, optional) – Option for including the costing of electricity. Defaults to True.has_rectifier (
bool
, optional) – Option for including a rectifier. Defaults to False.
watertap.costing.unit_models.electrolyzer module
watertap.costing.unit_models.energy_recovery_device module
- class watertap.costing.unit_models.energy_recovery_device.EnergyRecoveryDeviceType(value)[source]
Bases:
StrEnum
An enumeration.
- watertap.costing.unit_models.energy_recovery_device.cost_energy_recovery_device(blk, energy_recovery_device_type=EnergyRecoveryDeviceType.pressure_exchanger, cost_electricity_flow=True)[source]
Energy recovery device costing method
TODO: describe equations
- Parameters:
energy_recovery_device_type – EnergyRecoveryDeviceType Enum indicating ERD type. Defaults to EnergyRecoveryDeviceType.pressure_exchanger.
cost_electricity_flow – bool, if True, the ERD’s work_mechanical will be converted to kW and costed as an electricity. Defaults to True.
- watertap.costing.unit_models.energy_recovery_device.cost_pressure_exchanger_erd(blk, cost_electricity_flow=True)[source]
ERD pressure exchanger costing method
TODO: describe equations
- Parameters:
cost_electricity_flow (
bool
) – if True, the ERD’s work_mechanical will be converted to kW and costed as an electricity. Defaults to True.
watertap.costing.unit_models.evaporator module
watertap.costing.unit_models.gac module
- watertap.costing.unit_models.gac.cost_gac(blk, contactor_type=ContactorType.pressure)[source]
3 equation capital cost estimation for GAC systems with: (i), contactor/pressure vessel cost by polynomial as a function of individual contactor volume; (ii), initial charge of GAC adsorbent cost by exponential as a function of required mass of GAC adsorbent; and (iii), other process costs (vessels, pipes, instrumentation, and controls) calculated by power law as a function of total contactor(s) volume. Operating costs calculated as the required makeup and regeneration of GAC adsorbent. Energy consumption is estimated from that required for booster, backwash, and residual pumps as a function of total contactor(s) volume.
- Parameters:
contactor_type – ContactorType Enum indicating whether to cost based on steel pressure vessels or concrete, default = ContactorType.pressure
- watertap.costing.unit_models.gac.cost_gac_gravity(blk)[source]
3 equation capital cost estimation for GAC systems with: (i), contactor/pressure vessel cost by polynomial as a function of individual contactor volume; (ii), initial charge of GAC adsorbent cost by exponential as a function of required mass of GAC adsorbent; and (iii), other process costs (vessels, pipes, instrumentation, and controls) calculated by power law as a function of total contactor(s) volume. Operating costs calculated as the required makeup and regeneration of GAC adsorbent. Energy consumption is estimated from that required for booster, backwash, and residual pumps as a function of total contactor(s) volume.
This function costs assuming concrete gravity-fed basins.
- watertap.costing.unit_models.gac.cost_gac_pressure(blk)[source]
3 equation capital cost estimation for GAC systems with: (i), contactor/pressure vessel cost by polynomial as a function of individual contactor volume; (ii), initial charge of GAC adsorbent cost by exponential as a function of required mass of GAC adsorbent; and (iii), other process costs (vessels, pipes, instrumentation, and controls) calculated by power law as a function of total contactor(s) volume. Operating costs calculated as the required makeup and regeneration of GAC adsorbent. Energy consumption is estimated from that required for booster, backwash, and residual pumps as a function of total contactor(s) volume.
This function costs assuming steel pressure-fed vessels.
watertap.costing.unit_models.heat_exchanger module
watertap.costing.unit_models.heater_chiller module
- class watertap.costing.unit_models.heater_chiller.HCType(value)[source]
Bases:
StrEnum
An enumeration.
- watertap.costing.unit_models.heater_chiller.cost_chiller(blk, cost_electricity_flow=True)[source]
chiller costing method
TODO: describe equations
- Parameters:
cost_electricity_flow (bool) – if True, the chiller’s heat_duty will be converted to kW and costed as an electricity. Defaults to True.
- watertap.costing.unit_models.heater_chiller.cost_electric_heater(blk, cost_electricity_flow=True)[source]
electric heater costing method
TODO: describe equations
- Parameters:
cost_electricity_flow (bool) – if True, the heater’s heat duty will be converted to kW and costed as an electricity. Defaults to True.
- watertap.costing.unit_models.heater_chiller.cost_heater_chiller(blk, HC_type=HCType.electric_heater, cost_electricity_flow=True)[source]
electric heater costing method
- Parameters:
HC_type – HCType Enum indicating heating or cooling type, default = HCType.electric_heater
cost_electricity_flow – bool, if True, the heater’s heat duty will be converted to kW and costed as an electricity, default = True
watertap.costing.unit_models.ion_exchange module
watertap.costing.unit_models.membrane_distillation module
watertap.costing.unit_models.mixer module
- watertap.costing.unit_models.mixer.cost_caoh2_mixer(blk, dosing_rate)[source]
CaOH2 mixer costing method
TODO: describe equations
- Parameters:
dosing_rate – An expression in [mass/time] for CaOH2 dosage
- watertap.costing.unit_models.mixer.cost_default_mixer(blk)[source]
Default mixer costing method
TODO: describe equations
- watertap.costing.unit_models.mixer.cost_mixer(blk, mixer_type=MixerType.default, **kwargs)[source]
Mixer costing method
- Parameters:
mixer_type – MixerType Enum indicating mixer type, default = MixerType.default
**kwargs – Additional keywords for the MixerType, e.g., NaOCl and CaOH2 mixers expect the dosing_rate keyword argument.
watertap.costing.unit_models.nanofiltration module
watertap.costing.unit_models.osmotically_assisted_reverse_osmosis module
- class watertap.costing.unit_models.osmotically_assisted_reverse_osmosis.OAROType(value)[source]
Bases:
StrEnum
An enumeration.
- watertap.costing.unit_models.osmotically_assisted_reverse_osmosis.build_osmotically_assisted_reverse_osmosis_cost_param_block(blk)[source]
Reference parameter values are provided from: Bartholomew, T. V., Mey, L., Arena, J. T., Siefert, N. S., & Mauter, M. S. (2017). Osmotically assisted reverse osmosis for high salinity brine treatment. Desalination, 421, 3-11.
- watertap.costing.unit_models.osmotically_assisted_reverse_osmosis.cost_osmotically_assisted_reverse_osmosis(blk, oaro_type=OAROType.standard)[source]
Osmotically assisted reverse osmosis costing method
TODO: describe equations
- Parameters:
oaro_type – ROType Enum indicating osmotically assisted reverse osmosis type, default = OAROType.standard
watertap.costing.unit_models.pressure_exchanger module
watertap.costing.unit_models.pump module
- watertap.costing.unit_models.pump.cost_high_pressure_pump(blk, cost_electricity_flow=True)[source]
High pressure pump costing method
TODO: describe equations
- Parameters:
cost_electricity_flow (bool) – if True, the Pump’s work_mechanical will be converted to kW and costed as an electricity. Defaults to True.
- watertap.costing.unit_models.pump.cost_low_pressure_pump(blk, cost_electricity_flow=True)[source]
Low pressure pump costing method
TODO: describe equations
- Parameters:
cost_electricity_flow (bool) – if True, the Pump’s work_mechanical will be converted to kW and costed as an electricity. Defaults to True.
- watertap.costing.unit_models.pump.cost_pump(blk, pump_type=PumpType.high_pressure, cost_electricity_flow=True)[source]
Pump costing method
TODO: describe equations
- Parameters:
pump_type – PumpType Enum indicating pump type, default = PumpType.high_pressure
cost_electricity_flow – bool, if True, the Pump’s work_mechanical will be converted to kW and costed as an electricity, default = True
watertap.costing.unit_models.reverse_osmosis module
watertap.costing.unit_models.stoichiometric_reactor module
watertap.costing.unit_models.thickener module
watertap.costing.unit_models.uv_aop module
- watertap.costing.unit_models.uv_aop.cost_uv_aop(blk, cost_electricity_flow=True)[source]
UV-AOP costing method
- watertap.costing.unit_models.uv_aop.cost_uv_aop_bundle(blk, reactor_cost, lamp_cost, factor_lamp_replacement)[source]
Generic function for costing a UV system.
- Parameters:
reactor_cost – The cost of UV reactor in [currency]/[volume]
lamp_cost – The costs of the lamps, sleeves, ballasts and sensors in [currency]/[kW]