Releases: watertap-org/watertap
0.12 Release Candidate #0
0.12 Release Candidate #0
Start with our online documentation to get started with install instructions, examples, etc.
WaterTAP 0.12.0rc0 Release Highlights
What's Changed
- Add missing init.py files preventing MVC GUI from loading by @lbianchi-lbl in #1254
- added a couple of init files to make loop tools modules accessible when not installed in editable mode by @k1nshuk in #1255
- OARO 1D documentation by @luohezhiming in #1261
- Add limiting current density methods to electrodialysis_0D by @kejia6002 in #1242
- Add therm_cond_phase and visc_d_phase to water_prop_pack by @savannahsakhai in #1265
- GAC model for the UI by @hunterbarber in #1238
- Loosen idaes-pse requirement to include 2.3.x stable and 2.4 dev by @lbianchi-lbl in #1267
- Fix Binder IDAES solver configuration and Jupyter documentation by @lbianchi-lbl in #1275
- Fix DOF in IX costing function for single use resin and scale pumping power by @kurbansitterley in #1271
- BSM2 with P extension by @luohezhiming in #1276
- RO w/ERD Sweep Analysis by @MarcusHolly in #1177
- Add method for ParamterSweepTool to change lower/upper bounds, and fix/unfix variables. by @avdudchenko in #1268
- Adding stoichiometric reactor to WT by @avdudchenko in #1184
- Add functionality for input based model options by @MichaelPesce in #1270
- fix deprecation warnings in water and seawater prop packs by @savannahsakhai in #1282
- add continuous recirculation DCMD flowsheet by @ElmiraShamlou in #1260
- BSM2 Flowsheet Documentation by @MarcusHolly in #1263
- Revision of OLI Cloud Flash Calculations by @veccp in #1237
- update LCOW print in display_metrics of mvc flowsheet example by @savannahsakhai in #1281
- Unit Model Test Harness by @MarcusHolly in #1277
- Dye Desalination TEA Update by @MarcusHolly in #1278
- Use MultiChoiceCostingBlock in dye_desalination_withRO by @bknueven in #1291
- Test Harness Documentation by @MarcusHolly in #1288
- Fixing doctests for Pyomo 6.7.1 by @bknueven in #1310
- Work around for issue #1312 by @bknueven in #1316
- ASM2d/ADM1 Translator Update by @MarcusHolly in #1315
- Tinkering with BSM2 Optimization by @adam-a-a in #1244
- Make sure top-level model is not garbage collected in UnitTestHarness by @bknueven in #1317
- GAC Test Harness by @hunterbarber in #1311
- Resolve nbmake 1.5.1 errors on Windows by @lbianchi-lbl in #1322
- Clarifier, Crystallizer & RO Unit Test Harness by @MarcusHolly in #1301
- Require WaterTAP-specific kernel name for Jupyter notebooks testing by @lbianchi-lbl in #1320
- Electrolyzer Test Harness by @hunterbarber in #1321
- Changes to GAC model and GAC example flowsheet to solve when
MaterialFlowBasis.mass
by @hunterbarber in #1295 - Set
acceptable_constr_viol_tol
to1e-08
by @bknueven in #1327 - Enable solver logs in Unit Test Harness by @bknueven in #1325
- Costing Unification: reorganize classes and consistent calculation of capital annualization by @bknueven in #1299
- Update idaes-pse requirement in preparation of 2.4 IDAES release by @lbianchi-lbl in #1309
- Updating copyright year to 2024 by @ksbeattie in #1329
- Upgrade pydantic version and update corresponding fsapi code by @MichaelPesce in #1330
- Add validity ranges and clean up water_prop_pack, seawater_prop_pack, and NaCl_T_dep_prop_pack by @savannahsakhai in #1304
- OLI API Flash update by @veccp in #1296
- add missed test for aeration tank by @adam-a-a in #1333
- Delete nf_0d files by @adam-a-a in #1334
- Remove selective oil permeation by @bknueven in #1336
- Remove full treatment train by @bknueven in #1335
- Add GUI for OARO by @luohezhiming in #1290
- Adding GAC into Dye Desalination w/RO by @MarcusHolly in #1294
- Minor MVC GUI Update by @MarcusHolly in #1338
- Add more detailed pressure exchanger by @luohezhiming in #1264
- add MD1D by @ElmiraShamlou in #1323
- Update Black to 24.3.0 by @lbianchi-lbl in #1339
Full Changelog: 0.11.0...0.12.0rc0
0.11.0 Release
0.11.0 Release
Start with our online documentation to get started with install instructions, examples, etc.
WaterTAP 0.11.0 Release Highlights
- General bug fixes, documentation updates, and code maintenance
- Added more functionality in using the OLI cloud API with WaterTAP
- Added a one dimensional osmotically-assisted reverse osmosis (OARO) unit model
- Added an example flowsheet for the cost optimization of multistage OARO
- Added an option to use Spiegler Kedem Katchalsky (SKK) in the RO unit model
- Significantly revised and updated the electrocoagulation unit model
- Refined the ion exchange unit model and updated the costing to the most recent release of EPA-WBS model
- Modified the nanofiltration unit model to improve stability when ion concentrations are low
- Improved stability of the electrodialysis example flowsheet
- Refactored the WaterTAP and zero order costing packages to be more unified
- Refined the MCAS property package to be more user friendly by providing additional warnings when used incorrectly and automatically loading molecular weight and charge data
- Added how-to documentation for using the MCAS property package
- Added Binder functionality to jupyter notebooks in WaterTAP and created relevant documentation
- Added a modified ASM2d flowsheet, which includes the several completely stirred tank reactors in series, followed by a secondary clarifier, with phosphorus extension
- Added effluent/influent quality metrics to ASM1 which include chemical oxygen demand, 5-day biological oxygen demand, total nitrogen, total Kjeldahl nitrogen, and total suspended solids
- Added costing for BSM2 including: clarifiers, activated sludge reactors, anaerobic digestor, thickener, dewatering unit, and electricity
- Addressed issues and added more sampling capabilities to the parameter sweep and loop tool
- Added three new tutorials:
- Conducting a parameter estimation
- Incorporating custom relationships
- Conducting OLI Cloud API calculations
- Refined the BSM2 tutorial
- Added two WaterTAP example flowsheets to the graphical user interface (GUI):
- RO with energy recovery
- Mechanical vapor compression
- Refined the BSM2 GUI flowsheet
Full Changelog: 0.10.0...0.11.0
0.11 Release Candidate #3
0.11 Release Candidate #3
Start with our online documentation to get started with install instructions, examples, etc.
WaterTAP 0.11.0rc3 Release Highlights
Full Changelog: 0.11.0rc1...0.11.0rc3
0.11 Release Candidate #1
0.11 Release Candidate #1
Start with our online documentation to get started with install instructions, examples, etc.
WaterTAP 0.11.0rc1 Release Highlights
What's Changed
- Update nf scaling. by @avdudchenko in #1145
- Eliminate bounds relaxation in WaterTAP Ipopt by @bknueven in #1162
- Add Binder configuration and documentation by @lbianchi-lbl in #1167
- Modify tutorials section to include direct link to Binder by @adam-a-a in #1169
- BSM2 GUI Update by @MarcusHolly in #1160
- BSM2 GUI Variable Name Update by @MarcusHolly in #1171
- Updates to EC ZO model by @kurbansitterley in #1164
- Allow the parameter sweep to accept pre-sampled values by @k1nshuk in #1179
- Stakeholder demo for adding custom constraints to existing unit model by @avdudchenko in #1163
- Add GUI for RO flowsheet by @luohezhiming in #1159
- MCAS Usage Example and Raising Appropriate Exceptions by @adam-a-a in #1176
- BSM2 GUI Update by @MarcusHolly in #1188
- Skk model by @zacharybinger in #1132
- Parameter Estimation (parmest) Demo by @savannahsakhai in #1182
- Small BSM2 GUI Update by @MarcusHolly in #1194
- OARO 1D Model by @luohezhiming in #1172
- Fixes issue for saving model files with missing keys by @avdudchenko in #1151
- BSM2 tutorial - quick cleanup by @adam-a-a in #1193
- Fix binder launch and tweak BSM2 tutorial by @adam-a-a in #1199
- Correcting documentation typo for loopTool code block by @hunterbarber in #1205
- Merge in Parameter Sweep Tool Demo by @k1nshuk in #1181
- Extract Data from Molecular Formulas by @veccp in #1202
- Making sure the MultiprocessingParallelManager cleans up when done by @bknueven in #1211
- Minor update to MCAS scaling by @avdudchenko in #1149
- OLIApi Revision by @veccp in #1141
- Add Costing for Dewatering Unit by @adam-a-a in #1212
- Add build options to UI api; add example to nf_ui.py by @MichaelPesce in #1152
- multiple choice costing by @bknueven in #1183
- Separating GAC costing parameters based on type by @bknueven in #1209
- Add clarifier model and costing by @luohezhiming in #1198
- Resolve CI failures with Pyomo 6.7.0 and Linux mpiexec by @lbianchi-lbl in #1222
- ED flowsheet updates by @lbibl in #1218
- Add Thickener Costing by @adam-a-a in #1216
- Remove chemistry tests by @bknueven in #1229
- Add documentation for the Parallel Manager by @k1nshuk in #1220
- Fixes for Pyomo 6.7 by @bknueven in #1224
- BSM2 Anoxic CSTR Costing by @MarcusHolly in #1186
- Put the test assertions within a try-finally block. by @k1nshuk in #1236
- anaerobic digestor and aerobic basin costing update by @agarciadiego in #1196
- Resolve neutral charge on MCAS by @adam-a-a in #1235
- Costing Unification: move from
factor_total_investment
toTIC
by @bknueven in #1175 - Add Costing to BSM2 Flowsheet by @MarcusHolly in #1213
- Add pressure drop to electrodialysis_0D.py by @kejia6002 in #1208
- Update idaes-pse requirement in preparation of 2.3.0 release by @lbianchi-lbl in #1241
- OARO SKK config option and tests by @zacharybinger in #1214
- Add influent/effluent quality metrics for ASM1 by @adam-a-a in #1243
- OLI API login via access key by @veccp in #1207
- Update idaes-pse requirement to 2.3.0rc1 by @lbianchi-lbl in #1250
- Costing Unification: parameter consistency across costing packages by @bknueven in #1174
- Automatically load MW and charge in MCAS by @adam-a-a in #1246
- CSV-driven variable exports by @dangunter in #1232
- IonExchange0D Unit Model and Costing Improvements by @kurbansitterley in #1139
- MVC GUI by @MarcusHolly in #1185
- Modified ASM2d flowsheet with P extension by @luohezhiming in #1203
- added fixed samples to paramter sweep reader and looptool by @avdudchenko in #1247
- Fixes and updates for differential parmater sweep tool by @avdudchenko in #1240
New Contributors
- @zacharybinger made their first contribution in #1132
- @veccp made their first contribution in #1202
- @kejia6002 made their first contribution in #1208
Full Changelog: 0.10.0...0.11.0rc1
2023 Sept Release
0.10 Release
Start with our online documentation to get started with install instructions, examples, etc.
WaterTAP 0.10.0 Release Highlights
- General bug fixes and code maintenance
- Added an initial membrane distillation model and documentation
- Added an initial API for making OLI Cloud calculations (license required)
- Updated the temperature range on the NaCl property package with temperature dependence
- Significantly refined the ion exchange unit model, including overhauling the Langmuir-based model and adding Freundlich-based model
- Improved the stability of nanofiltration unit model by refining its scaling
- Refined the osmotically assisted reverse osmosis model and its multi-stage flowsheet example
- Added mass-basis as a configuration option for the multi-component aqueous solution (MCAS) property package, previously it only supported mole-basis
- Refined and reformulated the activated sludge and anaerobic digestor models that make up Benchmark Simulation Model 1 and 2 (BSM1 and BSM2), greatly improving stability
- Added a demonstration of BSM2 in a jupyter notebook and the graphical user interface (GUI)
- Added an analysis for treating water contaminated with dye with nanofiltration and reverse osmosis to the GUI
- Added an ASM2d/ADM1 translator block and documentation for an "extended BSM2"
- Updated GUI workflow to include parameter sweep capability (parameter sensitivity)
- Refactored the parameter sweep tool to improve the handling of failed solves
- Refactored the costing framework to better unify the WaterTAP costing package and the zero order costing package
Full Changelog: 0.9.0...0.10.0
0.10 Release Candidate #0
0.10 Release Candidate #0
Start with our online documentation to get started with install instructions, examples, etc.
WaterTAP 0.10.0rc0 Release Highlights
What's Changed
- Add additional comments for valid temp ranges for NaCl_T_dep_prop_pack by @savannahsakhai in #1075
- Correct units in GAC costing
energy_consumption_constraint
by @hunterbarber in #1082 - IonExchange0D Model Overhaul by @kurbansitterley in #998
- Fix ZO costing method documentation by @bknueven in #1081
- ASM2d compatibility with thickener and dewatering units by @agarciadiego in #1078
- Add sweep analysis for electroNP flowsheet by @luohezhiming in #1077
- Initial implementation of ConcurrentFuturesParallelManager by @shelman in #1059
- Remove lingering uses of MPI from parallel manager by @shelman in #1090
- Update electrodialysis costing by @lbibl in #1086
- Relax the bounds of dP_dx by @luohezhiming in #1094
- Update monte carlo flowsheet and documentation to use new parameter sweep API by @shelman in #1093
- Update parameter_sweep.py by @avdudchenko in #1097
- Fix a warning in ED costing by @lbibl in #1096
- Allow passing build_outputs=None to parameter sweep by @shelman in #1099
- ASM2d/ADM1 Translator by @MarcusHolly in #1074
- Add mapping keys between nominal and differential values for the DifferentialParameterSweep object by @k1nshuk in #1079
- Fix Pydantic 2 failures by @lbianchi-lbl in #1089
- BSM2 full flowsheet by @agarciadiego in #1038
- Changing ElectroN-P unit model to separator structure by @agarciadiego in #1091
- Make pytest the only requirement for running test suite without errors by @lbianchi-lbl in #1088
- Update IDAES requirement to 2.2.0.dev0.watertap.23.08.03 and other stability improvements by @bknueven in #930
- Address Sphinx failures by @lbianchi-lbl in #1110
- Modified ASM2D Refinement and Associated Changes by @agarciadiego in #1101
- Add async multiprocessing, rayio, and update kernel in parameter sweep by @avdudchenko in #1102
- Fix NF notebook and flowsheets for UI by @adam-a-a in #1076
- Add coverage reports from MPI tests by @bknueven in #1103
- Add support for Python 3.11 by @lbianchi-lbl in #1114
- Adding OLI API by @adam-a-a in #1056
- Add concurrency group for GHA workflows to avoid redundant runs for PRs by @lbianchi-lbl in #1115
- Update idaes-pse requirement to 2.2.0rc0 by @lbianchi-lbl in #1118
- ADM1 Documentation Update by @MarcusHolly in #1116
- Add NaCl recovery value to crystallizer model by @Zhuoran29 in #1120
- Adding loopTool to analysis tools by @avdudchenko in #1098
- Add idaes-extensions step to getting started for devs by @adam-a-a in #1129
- Eliminate suffix warnings by hot patching Pyomo's NL Writer by @bknueven in #1146
- MCAS Update by @adam-a-a in #1136
- Unify costing APIs in WaterTAP by @bknueven in #1122
- Minor updates to elecytrolyzer model by @avdudchenko in #1150
- Update CI in preparation of 0.10 release by @lbianchi-lbl in #1156
- BSM2 GUI by @MarcusHolly in #1125
- Add MD 0D by @ElmiraShamlou in #1105
- Add multi-stage OARO flowsheet and cost optimization by @luohezhiming in #897
- Add documentation for electroNP_ZO model by @luohezhiming in #1142
- bsm2 tutorial WIP by @agarciadiego in #1130
- Dye Desalination Parameter Update by @MarcusHolly in #1126
- Add documentation for using Jupyter notebooks by @lbianchi-lbl in #1155
New Contributors
- @ElmiraShamlou made their first contribution in #1105
Full Changelog: 0.9.0...0.10.0rc0
2023 Jun Release
2023 Jun Release
Start with our online documentation to get started with install instructions, examples, etc.
WaterTAP 0.9.0 Release Highlights
- General bug fixes and code maintenance
- Added a NaCl property model with temperature dependence (useful for evaporative processes)
- Refined the mechanical vapor compression flowsheet example
- Added rectifier costing method for electrochemical processes
- Added an electrolyzer model
- Refined electrodialysis costing
- Added a modified Activated Sludge Model No. 2d (ASM2d)
- Updated Anaerobic Digestion Model No. 1 (ADM1) and ASM2d translator block
- Added auxiliary unit models for Benchmark Simulation Model No. 2 (BSM2) including a dewaterer, thickener, and primary clarifier
- Added Jupyter notebook tutorial on nanofiltration with Donnan Steric Pore Model with Dielectric Exclusion (DSPM-DE)
2023 Mar Release
2023 Mar Release
Start with our online documentation to get started with install instructions, examples, etc.
WaterTAP 0.8.0 Release Highlights
- General maintenance and bug fixes
- Updated WaterTAP to be compatible with IDAES v2.0.0
- Updated and refactored property models to include pressure effects in enthalpy and have consistent indexing of variables and constraints
- Improved the parameter sweep tool to provide additional functionality
- Reorganized model diagnostic tools
- Added a new option for membrane processes - a spiral wound friction factor calculation
- Added more properties to the multicomponent aqueous solution property package - diffusivities and Laliberte correlation for densities
- Added costing for osmotically assisted reverse osmosis (OARO)
- Added a simple electrocoagulation model
- Added an example demonstration of electrodialysis desalination system with recirculation and water recovery control
- Added an example demonstration of ion exchange for calcium removal
- Added the Anaerobic Digestor Model no. 1 (ADM1), including temperature dependent expressions and a phosphorous extension
- Added translator blocks for Activated Sludge Model no. 1 (ASM1) to ADM1 and vice versa
- Added a selective oil permeation model
- Refined granular activated carbon model - improving its stability and including more details on auxiliary energy consumption and costing
- Added and refined documentation for the following: zero order models, ion exchange, mechanical vapor compression, water property package, ADM1, ASM1 and ADM1 translator blocks
Full Changelog: 0.7.0...0.8.0
2022 Dec Release
2022 Dec Release
Start with our online documentation to get started with install instructions, examples, etc.
WaterTAP 0.7.0 Release Highlights
What's Changed
- Updated getting started section and tutorials to better support users
- Added an osmotically assisted reverse osmosis (OARO) model and an example demonstrating an OARO-RO system
- Refined the nanofiltration model (Donnan Steric Pore Model with Dielectric Exclusion) - updated scaling and improved model stability and solving performance
- Refined the ion exchange model - improved the initialization of the model and addressed a bug in its test
- Refined the electrodialysis model - added pressure drop and limiting current density calculations
- Refined the granular activated carbon (GAC) model for clarity and improving performance
- Renamed and modified the property package used for the nanofiltration Donnan Steric Pore Model to multi-component aqueous solution - this change reflects how it is used for more than the nanofiltration model
- Refactored and updated the WaterTAP costing package - standardized terms, separated parameters based on unit models, added utility methods and helpers, updated the costing of material and energy flows
- Added isothermal configuration arguments to relevant unit models
- Standardized and streamlined property package constraint indexing and scaling
- Addressed issues with documentation and tutorial testing
Full Changelog: 0.6.0...0.7.0
2022 Sep Release
2022 Sep Release
Start with our online documentation to get started with install instructions, examples, etc.
WaterTAP 0.6.0 Release Highlights
- Implemented an initial graphical user interface (GUI) - application is deployed as a simple one-click install on Windows, MacOS, and Linux and includes functionality for: visualizing prebuilt flowsheets; adjusting their inputs; and saving, loading, and comparing solutions
- Created and connected flowsheets to the GUI representing the water resource recovery systems under DE-FOA0002336 portfolio
- Updated documentation for model refinements and added pages for the zero order unit models
- Updated and fixed bugs in some zero order unit models
- Added an introductory tutorial
- Added a pump model with part-load-performance and an efficiency-flow correlation
- Added an ion exchange model with costing (Cation and anion exchange demonstrations)
- Refactored membrane models to use a new base component called a membrane channel
- Refined nanofiltration DSPM-DE model and tests
- Refined the simple electrolyte property model (DSPM-DE)
- Refined and added costing for mechanical vapor compression (MVC) model
- Refined and added costing for granular activated carbon (GAC) model
- Refined and added costing for ultraviolet (UV) and UV advanced oxidation process models
- Refined electrodialysis model and added a flowsheet demonstration
- Refined ASM1 and ASM2d models and added full wastewater treatment train demonstrations for each
- Improved the WaterTAP costing package
- Enhanced the parameter sweep tool
- Updated WaterTAP to address deprecations from IDAES