# NaCl Property Package

This package implements property relationships for an NaCl solution as provided in Bartholomew and Mauter (2019).

- This NaCl property package:
supports only H2O (solvent) and TDS (solute) components

supports only liquid phase

is formulated on a mass basis

is intended for isothermal applications at 25C

does not support dynamics

This package includes one temperature dependent property, specific enthalpy. The specific enthalpy is based on relationships developed for seawater instead of a NaCl solution, but the deviation is expected to be negligible for isothermal applications (the recommended use for this property package).

## Sets

Description |
Symbol |
Indices |
---|---|---|

Components |
\(j\) |
[‘H2O’, ‘TDS’] |

Phases |
\(p\) |
[‘Liq’] |

## State variables

Description |
Symbol |
Variable |
Index |
Units |
---|---|---|---|---|

Component mass flowrate |
\(M_j\) |
flow_mass_phase_comp |
[p, j] |
\(\text{kg/s}\) |

Temperature |
\(T\) |
temperature |
None |
\(\text{K}\) |

Pressure |
\(P\) |
pressure |
None |
\(\text{Pa}\) |

## Properties

Description |
Symbol |
Variable |
Index |
Units |
---|---|---|---|---|

Component mass fraction |
\(x_j\) |
mass_frac_phase_comp |
[p, j] |
\(\text{dimensionless}\) |

Mass density |
\(\rho\) |
dens_mass_phase |
[p] |
\(\text{kg/}\text{m}^3\) |

Phase volumetric flowrate |
\(Q_p\) |
flow_vol_phase |
[p] |
\(\text{m}^3\text{/s}\) |

Volumetric flowrate |
\(Q\) |
flow_vol |
None |
\(\text{m}^3\text{/s}\) |

Mass concentration |
\(C_j\) |
conc_mass_phase_comp |
[p, j] |
\(\text{kg/}\text{m}^3\) |

Component mole flowrate |
\(N_j\) |
flow_mol_phase_comp |
[p, j] |
\(\text{mole/s}\) |

Component mole fraction |
\(y_j\) |
mole_frac_phase_comp |
[p, j] |
\(\text{dimensionless}\) |

Molality |
\(Cm_{TDS}\) |
molality_comp |
[‘TDS’] |
\(\text{mole/kg}\) |

Dynamic viscosity |
\(\mu\) |
visc_d_phase |
[p] |
\(\text{Pa}\cdotp\text{s}\) |

Solute diffusivity |
\(D\) |
diffus |
None |
\(\text{m}^2\text{/s}\) |

Osmotic coefficient |
\(\phi\) |
osm_coeff |
None |
\(\text{dimensionless}\) |

Osmotic pressure |
\(\pi\) |
pressure_osm |
None |
\(\text{Pa}\) |

Specific enthalpy |
\(\widehat{H}\) |
enth_mass_phase |
[p] |
\(\text{J/kg}\) |

Enthalpy flow |
\(H\) |
enth_flow |
None |
\(\text{J/s}\) |

## Relationships

Description |
Equation |
---|---|

Component mass fraction |
\(X_j = \frac{M_j}{\sum_{j} M_j}\) |

Mass density |
Equation 4 in Bartholomew & Mauter (2019) |

Volumetric flowrate |
\(Q = \frac{\sum_{j} M_j}{\rho}\) |

Mass concentration |
\(C_j = X_j \cdotp \rho\) |

Component mole flowrate |
\(N_j = \frac{M_j}{MW_j}\) |

Component mole fraction |
\(y_j = \frac{N_j}{\sum_{j} N_j}\) |

Molality |
\(Cm_{TDS} = \frac{x_{TDS}}{(1-x_{TDS}) \cdotp MW_{TDS}}\) |

Dynamic viscosity |
Equation 5 in Bartholomew & Mauter (2019) |

Solute diffusivity |
Equation 6 in Bartholomew & Mauter (2019) |

Osmotic coefficient |
Equation 3b in Bartholomew & Mauter (2019) |

Osmotic pressure |
\(\pi = i \cdotp \phi \cdotp Cm_{TDS} \cdotp \rho_w \cdotp R \cdotp T\) [See note 1 below] |

Specific enthalpy |
Equation 43 and 55 in Sharqawy (2010) [See note 2 below] |

Enthalpy flow |
\(H = \sum_{j} M_j \cdotp \widehat{H}\) |

Note 1: Osmotic pressure calculation uses the van ‘t Hoff factor (\(i\text{, assumed to be 2}\)), density of water (\(\rho_w\text{, assumed to be 1000 kg/}\text{m}^3\)), gas constant (\(R\text{, 8.314 J/mol}\cdotp\text{K}\)) in addition to previously defined variables.

Note 2: Specific enthalpy calculation is based on seawater relationships in Sharqawy (2010).

## Scaling

This NaCl property package includes support for scaling, such as providing default or calculating scaling factors for almost all variables. The only variables that do not have scaling factors are the component mass flowrate and the user must set them or the user will receive a warning.

The user can specify the scaling factors for component mass flowrates with the following:

```
# relevant imports
import watertap.property_models.NaCl_prop_pack as props
from idaes.core.util.scaling import calculate_scaling_factors
# relevant assignments
m = ConcreteModel()
m.fs = FlowsheetBlock(dynamic=False)
m.fs.properties = props.NaClParameterBlock()
# set scaling for component mass flowrate
m.fs.properties.set_default_scaling('flow_mass_phase_comp', 1, index=('Liq', 'H2O'))
m.fs.properties.set_default_scaling('flow_mass_phase_comp', 1e2, index=('Liq', 'NaCl'))
# calculate scaling factors
calculate_scaling_factors(m.fs)
```

The default scaling factors are as follows:

1e-2 for temperature

1e-6 for pressure

1e-3 for mass density

1e3 for dynamic viscosity

1e9 for solute diffusivity

1 for the osmotic coefficient

1e-5 for the specific enthalpy

The scaling factors for other variables can be calculated based on their relationships with the other variables with the user supplied or default scaling factors.

## References

Timothy V. Bartholomew, Meagan S. Mauter (2019) Computational framework for modeling membrane processes without process and solution property simplifications, Journal of Membrane Science, 573, 682-693, DOI: 10.1016/j.memsci.2018.11.067

Mostafa H. Sharqawy, John H. Lienhard V & Syed M. Zubair (2010) Thermophysical properties of seawater: a review of existing correlations and data, Desalination and Water Treatment, 16:1-3, 354-380, DOI: 10.5004/dwt.2010.1079