prommis.nanofiltration.nf_brine#
Nanofiltration flowsheet for Donnan steric pore model with dielectric exclusion
- prommis.nanofiltration.nf_brine.add_objective(m)[source]#
Adds objectives to the pyomo model
- Parameters:
m – pyomo model
- prommis.nanofiltration.nf_brine.add_pressure_constraint(m, pressure_limit=7000000.0)[source]#
Adds feed pressure constraint to the pyomo model
- Parameters:
m – pyomo model
pressure_limit – upper bound on the outlet pump pressure
- prommis.nanofiltration.nf_brine.build()[source]#
Builds the NF flowsheet
- Returns:
pyomo model
- Return type:
m
- prommis.nanofiltration.nf_brine.define_feed_composition()[source]#
Defines the ion properties needed for the DSPM-DE property package
Ions include lithium, magnesium, and chloride, assuming LiCl and MgCl2 salts
diffusivity: - https://www.aqion.de/site/diffusion-coefficients - very confident
molecular weights: - very confident
Stokes radius: - average values from https://www.sciencedirect.com/science/article/pii/S138358661100637X - medium confident (averaged values from multiple studies) - reasonable orders of magnitude
ion charge: - very confident
The activity coefficient options are ideal or davies
- prommis.nanofiltration.nf_brine.fix_initial_variables(m)[source]#
Fixes the initial variables needed to create 0 DOF
- Parameters:
m – pyomo model
- prommis.nanofiltration.nf_brine.initialize(m, solver)[source]#
Initializes the flowsheet units
- Parameters:
m – pyomo model
solver – optimization solver
- prommis.nanofiltration.nf_brine.main()[source]#
Builds and solves the NF flowsheet
- Returns:
pyomo model
- Return type:
m
- prommis.nanofiltration.nf_brine.set_default_feed(m, solver)[source]#
Fixes the concentrations used to initialize the feed using the concentration of the Salar de Atacama (kg/m3 = g/L) Note: Cl- concentration will get overridden to enforce electroneutrality
- Parameters:
m – pyomo model
solver – optimization solver
- prommis.nanofiltration.nf_brine.set_nf_feed(blk, solver, flow_mass_h2o, conc_mass_phase_comp)[source]#
Calculates the concentration of the feed solution in molar flow rate
- Parameters:
blk – flowsheet block
solver – optimization solver
flow_mass_h2o – inlet water flow rate (feed)
conc_mass_phase_conc – mass concentration (feed)
- prommis.nanofiltration.nf_brine.set_nf_feed_scaling(blk)[source]#
Calculates the default scaling for the feed solution