Releases: kaylai/VESIcal
v1.2.9
This fixes the bug outlined in issue #188, or rather provides a workaround for the bug in thermoengine that was causing it.
Also fixed some flake8 complaints, and made some of the unit tests more robust to machine error and random thermoengine errors (see issue #197).
The testing routine passes on the ENKI server.
v1.2.8
- Fixed bug in calculate_degassing_path() where the default final_pressure() value was set to 100 bars instead of 1 bar.
- Added code to silence unhelpful "Duan Driver" warning messages from thermoengine.
- Made significant updates to the unittest testing routines.
Version 1.2.7
- Fixed bug where a cation concentration would not be returned from get_composition() if the Sample was given in oxides and vice versa.
- Added more user warnings on get_composition()
- Added unit tests for get_composition()
Version 1.2.6
User updates
- Update data frame handling to be compatible with pandas 2.0
Developer updates
- Updated manuscript supplementary Jupyter notebooks with proper titles
- Updated requirements.txt with newer versions of bumpy, spicy, simply, and setting == for pandas 1.2.3
- Fixed RunTests file to execute with double click
Version 1.2.5
- Fixed bug where different models returned different variable types. All models now should return variables, where relevant, as np.float instead of python's native float type.
- Added redirection of more stdout when making thermoengine calls, to get rid of as many unnecessary MagmaSat warnings as possible. Some duanDriver and Element error warnings remain (hope to be fixed in a future version)
Version 1.2.4
Fixed bug where a degassing path could not be calculated for some models using a numpy array as a pressure input. Now, a user can pass, for example np.arange(450, 200, -1) to calculate a degassing path from 450 to 200 bars in steps of 1 bar.
Version 1.2.3
Critical bug fix. With the update to matplotlib v3.6.0, styles were renamed. Namely, the "seaborn-colorblind" style used in VESIcal was updated to "seaborn-v0_8-colorblind". This change caused VESIcal to not import at all if matplotlib >=3.6.0 was installed. Try/Except block was added to first try "seaborn-colorblind" and then except to use "seaborn-v0_8-colorblind" in order to prevent VESIcal from breaking if older or newer versions of matplotlib are used.
Version 1.2.2
Fixed bug in MagmaSat model. To be internally consistent between MagmaSat calculations and between MagmaSat and other models, we now force “fixedvolatiles” normalization on any sample when performing MagmaSat calculations. This makes VESIcal’s behavior consistent with the behavior of the MagmaSat app, which may treat input H2O and CO2 contents as either dissolved in the melt or in the system (melt + fluid). This fixes a bug where a user might calculate the saturation pressure, then when calculating the equilibrium fluid composition at that pressure, VESIcal would say the composition is undersaturated. Results in very small differences to the equilibrium_fluid_comp() results, within error of the model (on the order of 0.01 mole fraction difference for H2O or CO2 in the fluid). The saturation pressure results are unchanged as they already performed a “fixedvolatiles” normalization. See pull request #170 for details.
Version 1.2.1
Fixed small bug in the Iacono-Marziano model. In most cases this will result in either a very small difference to the calculated results or no difference at all.
Version 1.2.0
A small but mighty update comes to VESIcal v1.2.0. VESIcal can now be used without the isntallation of the thermoengine library (which can only be built from source on a mac or run via a docker image on a PC or linux machine). MagmaSat, VESIcal’s default model, requires thermoengine to run. We chose MagmaSat as the default model for a reason (it’s usually the best model to use), but there are plenty of cases where access to the other models and not to MagmaSat is desired.
The usage of VESIcal remains unchanged in the new version. Simply install using pip (see Installation) and get to work. If you do not have thermoengine installed, remember to specify which model to use in each calculation performed.