Skip to content

Commit 92439d5

Browse files
committed
Add temperature correction factor to solution conductivity in REDstack.py
1 parent e5a482f commit 92439d5

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

gdplib/reverse_electrodialysis/REDstack.py

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,13 @@ def build_REDstack():
7979
mutable=True,
8080
)
8181

82+
m.temperature_coeff = pyo.Param(
83+
doc='Temperature correction factor [-] of the solution conductivity',
84+
default=0.02,
85+
initialize=0.02,
86+
) # Mehdizadeh, et al. (2019) Membranes, 9(6), 73. https://doi.org/10.3390/membranes9060073
87+
# Linear temperature dependence of the solution conductivity. The temperature coefficient of the solution conductivity is 0.02 K-1.
88+
8289
m.pump_eff = pyo.Param(doc='Pump efficiency [-]', default=0.75, initialize=0.75)
8390

8491
# =============================================================================
@@ -188,6 +195,7 @@ def iems_permsel_avg(m):
188195
m.vel_lb = pyo.Param(
189196
m.SOL, doc='Min. linear crossflow velocity [cm s-1]', initialize=0.01
190197
)
198+
191199
m.vel_init = pyo.Param(
192200
m.SOL,
193201
doc='Min. linear crossflow velocity [cm s-1]',
@@ -710,6 +718,7 @@ def _ksol_b(m, x, sol):
710718
"""
711719
This function sets the bounds of the solution conductivity based on the feed concentration in the high and low concentration compartments.
712720
The expression is derived from the linear regression of the experimental data.
721+
Tristán et al. (2020) Desalination, 496, 114699. https://doi.org/10.1016/j.desal.2020.114699
713722
714723
Parameters
715724
----------
@@ -773,10 +782,11 @@ def _ksol(m, x, sol):
773782
m.SOL,
774783
domain=pyo.NonNegativeReals,
775784
bounds=lambda _, x, sol: (
776-
m.ksol[x, sol].lb * (1 + 0.02 * (m.T - m.Tref)),
777-
m.ksol[x, sol].ub * (1 + 0.02 * (m.T - m.Tref)),
785+
m.ksol[x, sol].lb * (1 + m.temperature_coeff * (m.T - m.Tref)),
786+
m.ksol[x, sol].ub * (1 + m.temperature_coeff * (m.T - m.Tref)),
778787
),
779-
initialize=lambda _, x, sol: m.ksol[x, sol] * (1 + 0.02 * (m.T - m.Tref)),
788+
initialize=lambda _, x, sol: m.ksol[x, sol]
789+
* (1 + m.temperature_coeff * (m.T - m.Tref)),
780790
doc="Temperature corrected sol. conductivity per unit length [S m-1]",
781791
)
782792

@@ -1227,7 +1237,9 @@ def _sol_cond_T(m, x, sol):
12271237
pyomo.Constraint
12281238
The temperature corrected solution conductivity per unit length constraint
12291239
"""
1230-
return m.ksol_T[x, sol] == m.ksol[x, sol] * (1 + 0.02 * (m.T - m.Tref))
1240+
return m.ksol_T[x, sol] == m.ksol[x, sol] * (
1241+
1 + m.temperature_coeff * (m.T - m.Tref)
1242+
)
12311243

12321244
@m.Constraint(
12331245
m.length_domain,

0 commit comments

Comments
 (0)