Skip to content

Commit

Permalink
Add documentation for electroNP, OARO and UV-AOP (#1377)
Browse files Browse the repository at this point in the history
  • Loading branch information
luohezhiming authored May 21, 2024
1 parent d0a0b4e commit 767910c
Show file tree
Hide file tree
Showing 3 changed files with 55 additions and 48 deletions.
36 changes: 18 additions & 18 deletions docs/technical_reference/costing/electroNP.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,51 +9,51 @@ The following parameters are constructed for the unit on the FlowsheetCostingBlo
.. csv-table::
:header: "Description", "Symbol", "Parameter Name", "Default Value", "Units"

"description", ":math:`Symbol_{example}`", "parameter_name", "1", ":math:`\text{dimensionless}`"
"Hydraulic retention time", ":math:`HRT`", "HRT", "1.3333", ":math:`\text{hr}`"
"Reactor sizing cost", ":math:`C_V`", "sizing_cost", "1000", ":math:`\text{USD}_{2020}\text{/m}^3`"
"Magnesium chloride cost", ":math:`C_{MgCl2}`", "magnesium_chloride_cost", "0.0786", ":math:`\text{USD}_{2020}\text{/kg}`"
"Phosphorus recovery value*", ":math:`C_{RP}`", "phosphorus_recovery_value", "-0.07", ":math:`\text{USD}_{2020}\text{/kg}`"

\* Negative value represents revenue from recovering phosphorus

Costing Method Variables
++++++++++++++++++++++++

The following variables are constructed on the unit block (e.g., m.fs.unit.costing) when applying the `cost_electroNP` costing method in the ``watertap_costing_package``:
The following variables are used on the unit block (e.g., m.fs.unit.costing) when applying the `cost_electroNP` costing method in the ``watertap_costing_package``:

.. csv-table::
:header: "Description", "Symbol", "Variable Name", "Default Value", "Units"
:header: "Description", "Symbol", "Variable Name", "Index", "Units"

"description", ":math:`Symbol_{example}`", "variable_name", "1", ":math:`\text{dimensionless}`"
"Inlet volumetric flow rate", ":math:`Q_{in}`", "mixed_state[0].flow_vol", "[t]", ":math:`\text{m}^3\text{/hr}`"
"Byproduct phosphate mass flow rate", ":math:`Q_{byproduct, S_{PO4}}`", "byproduct_state[0].conc_mass_comp[0, S_PO4]", "[t]", ":math:`\text{kg/hr}`"
"Magnesium chloride flowrate", ":math:`Q_{MgCl2}`", "magnesium_chloride_dosage", "[t]", ":math:`\text{kg/hr}`"

Capital Cost Calculations
+++++++++++++++++++++++++

Describe capital costs..keep it concise where possible
Capital cost depends on the unit's inlet flow rate, :math:`Q_{in}`, as shown in the equation below:

.. math::
C_{cap,tot} = C_{cap,example1}+C_{cap,example2}+C_{cap,other}
.. math::
C_{cap,example1} = fill in equation for each component in total capex equation
C_{cap,tot} = HRT * Q_{in} * C_V
Operating Cost Calculations
+++++++++++++++++++++++++++

Describe operating/maintenance costs..keep it concise where possible
Operating/maintenance costs consist of magnesium chloride usage cost and phosphorus recovery revenue:

.. math::
C_{op,tot} = C_{op,example1}+C_{op,example2}+C_{op,other}
C_{op,tot} = C_{op,MgCl2}+C_{op,RP}
.. math::
C_{op,example1} = fill in equation for each component in total opex equation
C_{op,MgCl2} = Q_{MgCl2} * C_{MgCl2}
C_{op,RP} = Q_{byproduct, S_{PO4}} * C_{RP}
Code Documentation
------------------

* :mod:`watertap.costing.unit_models.electroNP`

References
----------
Aim to include at least one reference in most cases, but delete this section if no references used for cost relationships/default values
* :mod:`watertap.costing.unit_models.electroNP`
Original file line number Diff line number Diff line change
Expand Up @@ -9,44 +9,55 @@ The following parameters are constructed for the unit on the FlowsheetCostingBlo
.. csv-table::
:header: "Description", "Symbol", "Parameter Name", "Default Value", "Units"

"description", ":math:`Symbol_{example}`", "parameter_name", "1", ":math:`\text{dimensionless}`"
"Membrane replacement factor", ":math:`f`", "factor_membrane_replacement", "0.15", ":math:`\text{dimensionless}`"
"Membrane cost", ":math:`C_A`", "membrane_cost", "30", ":math:`\text{USD}_{2018}\text{/m}^2`"
"High pressure membrane cost", ":math:`C_hA`", "high_pressure_membrane_cost", "50", ":math:`\text{USD}_{2018}\text{/m}^2`"

Costing Method Variables
++++++++++++++++++++++++

The following variables are constructed on the unit block (e.g., m.fs.unit.costing) when applying the `cost_osmotically_assisted_reverse_osmosis` costing method in the ``watertap_costing_package``:
The following variables are used on the unit block (e.g., m.fs.unit.costing) when applying the `cost_osmotically_assisted_reverse_osmosis` costing method in the ``watertap_costing_package``:

.. csv-table::
:header: "Description", "Symbol", "Variable Name", "Default Value", "Units"
:header: "Description", "Symbol", "Variable Name", "Index", "Units"

"description", ":math:`Symbol_{example}`", "variable_name", "1", ":math:`\text{dimensionless}`"
"Membrane area", ":math:`A`", "area", "None", ":math:`\text{m}^2`"

Capital Cost Calculations
+++++++++++++++++++++++++

Describe capital costs..keep it concise where possible
There are two classes of OARO costing types (``standard`` and ``high_pressure``), the membrane cost is different with these two
methods and the default costing method is ``standard``.

For ``standard`` type, the capital cost is defineds as:

.. math::
C_{cap,tot} = C_{cap,example1}+C_{cap,example2}+C_{cap,other}
C_{cap,tot} = C_A * A
For ``high_pressure`` type, the capital cost is defineds as:

.. math::
C_{cap,example1} = fill in equation for each component in total capex equation
C_{cap,tot} = C_hA * A
Operating Cost Calculations
+++++++++++++++++++++++++++

Describe operating/maintenance costs..keep it concise where possible
The fixed operating cost is correlated to OARO costing types (``standard`` and ``high_pressure``) and the default is ``standard``.

For ``standard`` type, the capital cost is defineds as:

.. math::
C_{op,tot} = C_{op,example1}+C_{op,example2}+C_{op,other}
C_{op,tot} = f * C_A * A
For ``high_pressure`` type, the capital cost is defineds as:

.. math::
C_{op,example1} = fill in equation for each component in total opex equation
C_{op,example1} = f * C_A * A
Code Documentation
Expand All @@ -56,4 +67,5 @@ Code Documentation

References
----------
Aim to include at least one reference in most cases, but delete this section if no references used for cost relationships/default values
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.
33 changes: 14 additions & 19 deletions docs/technical_reference/costing/uv_aop.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,51 +9,46 @@ The following parameters are constructed for the unit on the FlowsheetCostingBlo
.. csv-table::
:header: "Description", "Symbol", "Parameter Name", "Default Value", "Units"

"description", ":math:`Symbol_{example}`", "parameter_name", "1", ":math:`\text{dimensionless}`"
"UV replacement factor", ":math:`f`", "factor_lamp_replacement", "0.33278", ":math:`\text{dimensionless}`"
"UV reactor cost", ":math:`C_F`", "reactor_cost", "202.346", ":math:`\text{USD}_{2018}\text{/m}^3\text{/hr}`"
"UV lamps, sleeves, ballasts and sensors cost", ":math:`C_l`", "lamp_cost", "235.5", ":math:`\text{USD}_{2018}\text{/kW}`"

Costing Method Variables
++++++++++++++++++++++++

The following variables are constructed on the unit block (e.g., m.fs.unit.costing) when applying the `cost_uv_aop` costing method in the ``watertap_costing_package``:
The following variables are used on the unit block (e.g., m.fs.unit.costing) when applying the `cost_uv_aop` costing method in the ``watertap_costing_package``:

.. csv-table::
:header: "Description", "Symbol", "Variable Name", "Default Value", "Units"
:header: "Description", "Symbol", "Variable Name", "Index", "Units"

"description", ":math:`Symbol_{example}`", "variable_name", "1", ":math:`\text{dimensionless}`"
"Inlet volumetric flowrate", ":math:`F_{in}`", "flow_vol", "[t]", ":math:`\text{m}^3\text{/s}`"
"Electricity demand", ":math:`E`", "electricity_demand", "[t]", ":math:`\text{W}`"

Capital Cost Calculations
+++++++++++++++++++++++++

Describe capital costs..keep it concise where possible
Capital cost is the sum of the unit reactor cost and lamp cost:

.. math::
C_{cap,tot} = C_{cap,example1}+C_{cap,example2}+C_{cap,other}
C_{cap,tot} = C_{cap,reactor}+C_{cap,lamp}
.. math::
C_{cap,example1} = fill in equation for each component in total capex equation
C_{cap,reactor} = C_F * F_{in}
C_{cap,lamp} = C_l * E
Operating Cost Calculations
+++++++++++++++++++++++++++

Describe operating/maintenance costs..keep it concise where possible
Fixed operating cost depends on the electricity demand of lamps, :math:`E`, as shown in the equation below:

.. math::
C_{op,tot} = C_{op,example1}+C_{op,example2}+C_{op,other}
C_{op,tot} = f * C_l * E
.. math::
C_{op,example1} = fill in equation for each component in total opex equation
Code Documentation
------------------

* :mod:`watertap.costing.unit_models.uv_aop`

References
----------
Aim to include at least one reference in most cases, but delete this section if no references used for cost relationships/default values
* :mod:`watertap.costing.unit_models.uv_aop`

0 comments on commit 767910c

Please sign in to comment.