Skip to content

Releases: kaylai/VESIcal

v1.2.9

12 Apr 18:32
3ae8de1
Compare
Choose a tag to compare

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

29 Mar 20:25
Compare
Choose a tag to compare
  • 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

21 Mar 19:39
Compare
Choose a tag to compare
  • 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

21 Mar 19:20
ecc6103
Compare
Choose a tag to compare

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

23 Oct 21:29
Compare
Choose a tag to compare
  • 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

03 Jan 19:04
Compare
Choose a tag to compare

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

22 Nov 00:08
Compare
Choose a tag to compare

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

23 Jun 19:06
Compare
Choose a tag to compare

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

20 Jun 19:24
337172d
Compare
Choose a tag to compare

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

01 Jun 21:20
Compare
Choose a tag to compare

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.