Skip to content

Releases: ntBre/pbqff

v0.0.3

02 Dec 03:45
f22529e
Compare
Choose a tag to compare

Summary

The only user-facing change in this release is that pbqff now prints overtones and combination bands by default. These are printed in a style similar to the original SPECTRO program:

STATE NO.    ENERGY (CM-1)         ABOVE ZPT          VIBRATIONAL STATE
    1           6675.1485              0.0000       NON-DEG (Vs) :    0    0    0    0    0    0    0    0    0
    2           9458.1843           2783.0358       NON-DEG (Vs) :    1    0    0    0    0    0    0    0    0
    3           9438.4242           2763.2757       NON-DEG (Vs) :    0    1    0    0    0    0    0    0    0
    4           8451.5310           1776.3826       NON-DEG (Vs) :    0    0    1    0    0    0    0    0    0
    5           7852.9725           1177.8240       NON-DEG (Vs) :    0    0    0    1    0    0    0    0    0
    6           7716.4126           1041.2641       NON-DEG (Vs) :    0    0    0    0    1    0    0    0    0
    7           7635.1654            960.0169       NON-DEG (Vs) :    0    0    0    0    0    1    0    0    0
    8           7595.7355            920.5870       NON-DEG (Vs) :    0    0    0    0    0    0    1    0    0
    9           7602.4989            927.3504       NON-DEG (Vs) :    0    0    0    0    0    0    0    1    0
   10           7581.2337            906.0852       NON-DEG (Vs) :    0    0    0    0    0    0    0    0    1
   11          12220.3771           5545.2286       NON-DEG (Vs) :    2    0    0    0    0    0    0    0    0
   12          12180.6655           5505.5170       NON-DEG (Vs) :    0    2    0    0    0    0    0    0    0
   13          10248.0778           3572.9293       NON-DEG (Vs) :    0    0    2    0    0    0    0    0    0
   14           9025.9906           2350.8421       NON-DEG (Vs) :    0    0    0    2    0    0    0    0    0
   15           8750.2989           2075.1504       NON-DEG (Vs) :    0    0    0    0    2    0    0    0    0
   16           8593.3929           1918.2444       NON-DEG (Vs) :    0    0    0    0    0    2    0    0    0
   17           8513.7204           1838.5719       NON-DEG (Vs) :    0    0    0    0    0    0    2    0    0
   18           8528.2211           1853.0726       NON-DEG (Vs) :    0    0    0    0    0    0    0    2    0
   19           8488.2358           1813.0873       NON-DEG (Vs) :    0    0    0    0    0    0    0    0    2
   20          12180.8188           5505.6704       NON-DEG (Vs) :    1    1    0    0    0    0    0    0    0
...

All of the fundamental frequencies are printed, followed by the first overtones, and then the two-quantum combination bands, with the trailing columns corresponding to the mode numbers of the involved modes. The last line is the ν12 combination band, for example.

Internally, there were many testing and CI updates to test that the new results are printed in the output and continue to be printed in the future. Several dependencies flagged out-of-date by dependabot were also updated to their newest versions. Finally, all of the nightly features were removed from the dependency graph, so pbqff can be both built and tested on stable Rust 1.82.

What's Changed

  • Print full list of vibrational states by @ntBre in #315

Full Changelog: v0.0.2...v0.0.3

v0.0.2

16 Sep 15:23
Compare
Choose a tag to compare

This release contains one major and many minor fixes listed below, as well as a new documentation site thanks to GitHub pages. This is by far the most thorough pbqff documentation written thus far, and I intend for it to answer any question related to pbqff usage. So if you find something not covered by the page, please report it as a bug!

There is also an implementation of qffbuddy on the page that was much easier to build than the Python GUI version. I'm tentatively thinking the Python version may be deprecated in favor of the web-based version if people are happy with it.

Breaking Change

A refactor in the handling of queue templates in psqs means that every custom queue_template now needs to specify a *_CMD appropriate to the chemistry program being used. For example, a Molpro PBS queue template might look something like this:

queue_template = """
#!/bin/sh
#PBS -N {{.basename}}
#PBS -S /bin/bash
#PBS -j oe
#PBS -o {{.basename}}.out
#PBS -W umask=022
#PBS -l walltime=1000:00:00
#PBS -l ncpus=1
#PBS -l mem=8gb
#PBS -q workq

module load openpbs molpro

export WORKDIR=$PBS_O_WORKDIR
export TMPDIR=/tmp/$USER/$PBS_JOBID
cd $WORKDIR
mkdir -p $TMPDIR
trap 'rm -rf $TMPDIR' EXIT

export MOLPRO_CMD=\"molpro -t $NCPUS --no-xml-output\"    # <- New!
"""

$MOLPRO_CMD is used to invoke Molpro for each individual job. The corresponding commands for MOPAC, CFOUR, and DFTB+ are, predictably, MOPAC_CMD, CFOUR_CMD, and DFTB+_CMD. These are used for all three queue types (PBS, Slurm, and Local), so you can actual configure the locations of these programs in the pbqff input file. I export these in most of the examples, but they are only used within the same shell file, so it should be safe to use normal assignments too.

Minor changes

  • Improved support for the C2h point group in spectro
  • Improved handling of DFTB+ templates
  • Fixed a bug where running multiple normal coordinate QFFs in the same directory could introduce file conflicts
  • Fixed a bug where MOPAC geometries were truncated to 40 atoms
  • Updated built-in queue templates for MCSR users

Initial release with binaries

20 Jul 19:58
Compare
Choose a tag to compare

Because of its use of nightly features, pbqff can be difficult to compile without a very recent Rust compiler (#282). This was a good excuse to figure out more about GitHub releases and find the action-gh-release action to automate uploading binaries. This release provides binaries for the x86_64-unknown-linux-musl, aarch64-apple-darwin, and x86_64-apple-darwin targets.