watertap.costing.units package
Submodules
watertap.costing.units.crystallizer module
- class watertap.costing.units.crystallizer.CrystallizerCostType(value)[source]
Bases:
StrEnum
An enumeration.
- watertap.costing.units.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:
basis (cost_type - Option for crystallizer cost function type - volume or mass) –
watertap.costing.units.electrodialysis module
- watertap.costing.units.electrodialysis.cost_electrodialysis(blk, cost_electricity_flow=True)[source]
Function for costing the Electrodialysis unit
- Parameters:
electricity (cost_electricity_flow - Option for including the costing of) –
- watertap.costing.units.electrodialysis.cost_electrodialysis_stack(blk, membrane_cost, spacer_cost, membrane_replacement_factor, electrode_cost, electrode_replacement_factor)[source]
Generic function for costing the stack in an electrodialysis unit. Assumes the unit_model has a cell_pair_num, cell_width, and cell_length set of variables used to size the total membrane area.
- Parameters:
area (electrode_cost - The total cost of electrodes in a given stack in currency per) –
area –
spacers (membrane_replacement_factor - Replacement factor for membranes and) – [fraction of membranes/spacers replaced/year]
area –
electrodes (electrode_replacement_factor - Replacement factor for) – [fraction of electrodes replaced/year]
watertap.costing.units.energy_recovery_device module
- class watertap.costing.units.energy_recovery_device.EnergyRecoveryDeviceType(value)[source]
Bases:
StrEnum
An enumeration.
- watertap.costing.units.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, default = EnergyRecoveryDeviceType.pressure_exchanger.
cost_electricity_flow – bool, if True, the ERD’s work_mechanical will be converted to kW and costed as an electricity default = True
- watertap.costing.units.energy_recovery_device.cost_pressure_exchanger_erd(blk, cost_electricity_flow=True)[source]
ERD pressure exchanger costing method
TODO: describe equations
- Parameters:
bool (cost_electricity_flow -) – be converted to kW and costed as an electricity default = True
True (if) – be converted to kW and costed as an electricity default = True
will (the ERD's work_mechanical) – be converted to kW and costed as an electricity default = True
watertap.costing.units.gac module
- watertap.costing.units.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.units.ion_exchange module
watertap.costing.units.mixer module
- watertap.costing.units.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.units.mixer.cost_default_mixer(blk)[source]
Default mixer costing method
TODO: describe equations
- watertap.costing.units.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.units.nanofiltration module
watertap.costing.units.osmotically_assisted_reverse_osmosis module
- class watertap.costing.units.osmotically_assisted_reverse_osmosis.OAROType(value)[source]
Bases:
StrEnum
An enumeration.
- watertap.costing.units.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.units.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.units.pressure_exchanger module
watertap.costing.units.pump module
- watertap.costing.units.pump.cost_high_pressure_pump(blk, cost_electricity_flow=True)[source]
High pressure pump costing method
TODO: describe equations
- Parameters:
bool (cost_electricity_flow -) – be converted to kW and costed as an electricity default = True
True (if) – be converted to kW and costed as an electricity default = True
will (the Pump's work_mechanical) – be converted to kW and costed as an electricity default = True
- watertap.costing.units.pump.cost_low_pressure_pump(blk, cost_electricity_flow=True)[source]
Low pressure pump costing method
TODO: describe equations
- Parameters:
bool (cost_electricity_flow -) – be converted to kW and costed as an electricity default = True
True (if) – be converted to kW and costed as an electricity default = True
will (the Pump's work_mechanical) – be converted to kW and costed as an electricity default = True
- watertap.costing.units.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.units.reverse_osmosis module
watertap.costing.units.uv_aop module
- watertap.costing.units.uv_aop.cost_uv_aop(blk, cost_electricity_flow=True)[source]
UV-AOP costing method
- watertap.costing.units.uv_aop.cost_uv_aop_bundle(blk, reactor_cost, lamp_cost, factor_lamp_replacement)[source]
Generic function for costing a UV system.
- Parameters:
[currency]/[volume] (reactor_cost - The cost of UV reactor in) –
lamps (lamp_cost - The costs of the) –
sleeves –
[currency]/[kW] (ballasts and sensors in) –