Release Notes¶
Development Branch¶
Version 1.2.21¶
Jul. 3, 2020
- Miscellaneous bug fixes for
write_cti()
- Added preliminary support for OpenMKM YAML files.
- Fixed bug where test OUTCAR file was not present.
- Added
ads_act_method
towrite_surf()
andwrite_EA()
to allow users to specify a different method to calculate activation energies for surface versus adsorption reactions.
Version 1.2.20¶
May 12, 2020
- Added sensitivity analysis options in
write_cti()
- Added ability to arbitrarily specify pre-exponential constant and activation
energy in
SurfaceReaction
- Reduced complexity of assigning reaction IDs to
SurfaceReaction
. Before, the ID would be renamed if it had a BEP associated with it. Changed the behavior to just assign numerical values.
Version 1.2.19¶
Apr. 8, 2020
- Fixed bug where
LSR
could not be imported inread_excel()
. - Updated
io
sections to incorporate Pathlib library - Added helper functions in
omkm
to organize phases - Fixed bug where slopes and y intercepts were switched for
PiecewiseCovEffect
when writing CTI files. - Fixed bug in
write_surf()
wheren_sites
could be written as a float - Updated OpenMKM IO example
Version 1.2.17¶
Jan. 31, 2020
- Added more descriptive warning messages when incorrect temperature values are
passed to
Nasa
,Nasa9
, andShomate
. - Fixed bug where the conversion factor for Hartrees was incorrect.
- Added extra parameters for OpenMKM IO.
- Added helper functions for OpenMKM IO to assign phases easily.
- Added a helper method in
IdealGas
andStoichSolid
to only assign a reaction to the phase if all the species belong to that phase. - Fixed outdated code in Chemkin example and OpenMKM example.
- Reorganized documentation to use stubs. Shorter pages should hopefully make the documentation easier to navigate.
Version 1.2.15¶
Dec. 5, 2019
- Added
write_yaml()
to write YAML files for OpenMKM. - Added warning for
read_excel()
if the header is blank but the cells are occupied. - Fixed bug in
read_excel()
wheremodel
was not correctly initialized withStatMech()
. - Added the generic method,
set_dict_value()
to specify dictionaries inread_excel()
- Removed redundant statements involving returning dictionaries in functions to process Excel data.
- Fixed warning raised whenever CpoR = 0 when fitting empirical polynomials.
Version 1.2.14¶
Oct. 25, 2019
- Added functionality to write files (such as
write_thermdat()
) can return a string containing the file iffilename
is not specified. - Bug fix where
from_model
forNasa
andShomate
returned errors. The fix was related to incorrect datatyping formisc_models
. - Improved
Shomate
to allow users to specify the units for the polynomial coefficients. - Energies from Gaussian input functions (
gaussian
) was originally in Hartrees. Changed to allow users to specify what unit they desire (default in eV). - Added functionality to write BEP relationships to OpenMKM CTI files.
- Restructured OpenMKM CTI writer to be more robust when specifying custom IDs
- Added functionality to remove leading and trailing spaces when reading from Excel sheets since users found this error hard to pick up.
Version 1.2.13¶
Oct. 2, 2019
- Fixed bug where small non-zero rotational inertia modes were chosen preferentially over larger contributing modes.
- Fixed bug where presets had to be specified before statistical mechanical arguments. Now, the preset will not overwrite any previously set values.
- Updated
read_thermdat()
to allow the user to return theNasa
objects as a list, tuple, or dictionary. - Updated
write_thermdat()
to accept a list or a dictionary ofNasa
objects - Implemented from_model method in
Nasa
andShomate
classes so empirical objects can be created fromStatMech
objects as well as other empirical objects. Thefrom_statmech
method is deprecated. - Added more descriptive warnings and errors.
- Created
GasPressureAdj
so entropy and Gibbs energy of gas-phase empirical objects (likeShomate
andNasa
) are dependent on pressure. This object is assigned automatically tomisc_models
ifphase
is ‘g’ or ‘gas’ and theadd_gas_P_adj
can be set to False if users do not wish to assign this object automatically. - Thermodynamic quantities of individual species can also be calculated on a
per mass basis (i.e. users can calculate quantities in J/g, cal/kg, etc.).
The object must contain a dictionary of its composition in
elements
for this functionality. - Fixed broken hyperlinks.
Version 1.2.12¶
Aug. 22, 2019
- Refactored
write_thermdat
so that it is simpler to understand - Implemented
Nasa9
andSingleNasa9
polynomials - Added preliminary CTI file writer for Cantera and OpenMKM
- Added Binder notebooks to Examples page so users can try pMuTT before installing
- Fixed bug where
StatMech
was not passed when modes were specified indivudally in spreadsheets.
Version 1.2.11¶
Jun. 18, 2019
- Added xlrd dependency so spreadsheets can be read using pandas
- Updated documentation page with NAM 2019 instructions.
Version 1.2.10¶
Jun. 13, 2019
- Another hotfix to fix a bug where the version was not incremented correctly
Version 1.2.9¶
Jun. 13, 2019
- Hotfix where pypi created the folder in the old case (pMuTT) instead of lower case (pmutt)
Version 1.2.8¶
Jun. 13, 2019
- Importing from pMuTT is now all in lowercase. (i.e.
import pmutt
instead ofimport pMuTT
)
Version 1.2.7¶
Jun. 11, 2019
- Added documentation page for more verbose installation instructions.
- Updated
network
to use graph theory approach using states as nodes - Bug fix for
LSR
to handle inputs that are not pmutt model objects - Added ability to create interactive plots with Pygal
- Updated
GroundStateElec
to readpotentialenergy
from inputtedAtoms
object.
Version 1.2.6¶
Apr. 26, 2019
- Moved
references
attribute from empirical classes toStatMech
- Changed
mix_models
attribute tomisc_models
in indicating any model object can be used - Implemented
DebyeVib
andConstantMode
classes - Restructured
BEP
object to act as a transition state species inReaction
objects - Implemented
LSR
object - Added option to calculate pre-exponential factor using ratio of partition functions or entropy of activation
- Added option to use electronic energy as descriptor for
BEP
object - Added some imperial unit functionality to
pmutt.constants
module - Renamed
from_
parameter andto
parameter inpmutt.constants.convert_unit()
toinitial
andfinal
- Added ability to import individual translational, rotational, vibrational, electronic and nuclear modes to Excel
- Renamed
pmutt.statmech.trans.IdealTrans
toFreeTrans
- Renamed
pmutt.statmech.elec.IdealElec
toGroundStateElec
- Renamed
pmutt.statmech.nucl.IdealNucl
toEmptyNucl
Version 1.2.5¶
Mar. 21, 2019
- Renamed
pmutt.io_
module topmutt.io
- Renamed
pmutt.io_.jsonio
module topmutt.io.json
- Added preliminary IO support for MongoDB in module:
pmutt.io.db
- Bug fixes for Chemkin IO behavior
Version 1.2.3¶
Feb. 25, 2019
- Added
smiles
attribute toStatMech
andEmpiricalBase
classes - Added functions to write Chemkin surf.inp, gas.inp, and EAs.inp files
- Added
CovEffect
class to model coverage effects and integrated it withStatMech
andEmpiricalBase
classes - Added
include_ZPE
parameter toget_EoRT
,get_E
,get_delta_EoRT
andget_delta_E
for theStatMech
class andReaction
class to add zero-point energy in calculations - Renamed private methods
_get_delta_quantity
and_get_state_quantity
to public methodsget_delta_quantity
andget_state_quantity
inReaction
class - Added generic method
get_quantity
toStatMech
class so any method can be evaluated. It takes the parametersraise_error
andraise_warning
so the user has the ability to ignore modes if they do not have the desired properties - Added
plot_coordinate_diagram
method to theReactions
class to plot coordinate diagrams. - Added
get_EoRT
andget_E
methods toStatMech
class to calculate electronic contribution to thermodynamic properties - Added
get_EoRT_state
andget_delta_EoRT
methods toReaction
to calculate electronic contribution to reaction properties - Added an optional parameter,
activation
, toget_delta_X
methods to specify the difference between the reactants/products and the transition state. - Added
pmutt.constants.symmetry_dict
to allow easy look up of common symmetry numbers - Fixed bug where specie-specific arguments were not passed correctly for
Reaction
class
Version 1.2.2¶
Jan. 18, 2019
- Added option to extract imaginary frequencies from VASP’s OUTCAR files
- Added support for imaginary frequencies for
HarmonicVib
andQRRHOVib
classes - Restructured
HarmonicVib
andQRRHOVib
classes to calculate vibrational temperatures, scaled wavenumbers and scaled inertia when methods are called (rather than at initialization) to prevent incorrect calculations due to changes in the vibrational wavenumbers. - Fixed unit test names
- Added
get_species
toReaction
andReactions
- Fixed bug related to
References
andReference
objects not JSON-write compatible. - Fixed bug related to referencing in
Shomate
class
Version 1.2.1¶
Dec. 17, 2018
- Added
vib_outcar
special rule forread_excel()
andset_vib_wavenumbers_from_outcar()
to get vibrational frequencies directly from VASP’s OUTCAR file. - Added
get_X
methods toNasa
,Shomate
,StatMech
andReaction
to directly calculate thermodynamic properties (such as H, S, F, G) with the appropriate units - Changed symbol for Hemlholtz energy from A to F
Version 1.1.3¶
Dec. 11, 2018
- Added
BEP
class - Restructured
Reaction
class so reaction states (i.e. reactants, products, transition states) can be calculated separately - Updated
References
class to be able reference any attribute - Added
placeholder
entry topresets
dictionary to represent an empty species - Added correction factor to calculate partition coefficient, q, in
IdealElec
class
Version 1.1.2¶
Nov. 27, 2018
- Fixed bugs in
Reaction
class for calculating pre-exponential factors - Added methods in
Reaction
class to calculate rate constants and activation energy (currently, this just calculates the difference in enthalpy between the reactant/product and the transition state) - Quality of life improvements such as allowing
Reaction
class inputs to be a single pmutt object instead of expecting a list
Version 1.1.1¶
Nov. 7, 2018
- Fixed bugs in
Shomate
class forget_HoRT
andget_SoR
where one temperature would return a 1x1 vector instead of a float - Fixed bug in
Zacros
class where it expected vibrational energies instead of wavenumbers.
Version 1.1.0¶
Oct. 26, 2018
- Updated
Reaction
class to parse strings - New
Shomate
class - New equation of state classes:
IdealGasEOS
,vanDerWaalsEOS
- New
PhaseDiagram
class - New
EinsteinVib
class - New
read_reactions()
function to read species and reactions from Chemkin surf.inp and gas.inp files