Useful Stuff Programs, Scripts, and More
SPCAT/SPFITFor fitting and predictions in rotational spectroscopy, it’s hard to beat Pickett’s classic suite of programs. It’s fast, accurate, and extremely powerful. That being said, the input syntax and sheer number of parameters can often be daunting for the new user. However, the original documentation by Pickett is quite thorough, which can be found here.
In addition, if you’re looking for something slightly less dense and more annotated, Zbignew Kisiel has written a wonderful quick reference for Pickett’s suite, which can be found here.
JB95Although it’s not quite as accurate for assignment of pure rotational spectra as suites such as Kisiel’s AABS (described below), JB95 is incredibly useful when fitting one or multiple unassigned species in a single broadband spectrum. The efficiency of JB95 for fitting and exploration of broadband spectra is due to its slider tools and linearized predictions, which allow the user to adjust A / B+C / B-C in real time, or even the relative intensities between a/b/c-type transitions.
After a fairly small learning curve, JB95 can be quite intuitive and features a number of useful extras such as quadrupole and internal rotation predictions. You can find the program and relevant documentation, courtesy of Plusquellic, here. (Editor’s hint: Learn the keyboard shortcuts, and watch your spectrum fitting speed increase by an order of magnitude)
PROSPEPROSPE has something for everybody doing rotational spectroscopy and, thankfully, everything is well documented. Many of the programs are by Kisiel himself, and many of them are used daily here in lab. The database has programs for just about anything, but we’ve compiled a list below of some of our favorites:
• AABS – Kisiel’s graphical front-end to SPCAT/SPFIT. AABS’s automated Gaussian line center determination is immensely helpful for final, publication-quality fits.
• KRA / PMFIST – The dynamic duo of Kraitchman structure determination in the Pate group. KRA is perhaps the most intuitive program for Kraitchman ever written, and use of PMFIST coupled with GLE gives an easy route to high quality, scalable figures for publication. UPDATE: The new version of KRA now outputs an additional input file for use with EVAL. Very convenient!
• STRFIT – It’s got a steep learning curve, but there’s no denying it’s extremely powerful program for least-squares structure fitting. Kisiel’s great documentation and description on PROSPE is better than anything that could be written here, so we direct the reader to his page regarding this program.
• PIFORM – A simple but essential addition to SPFIT; takes SPFIT output files and makes them a lot more organized and easy to read.
• XIAM – Holger Hartwig’s internal rotation program is easy to use and very fast. A great starting point for internal rotation problems, and has served us extremely well for most three-fold rotor problems we’ve dealt with.
• QSTARK – Kisiel’s excellent and easy to use Stark effect fitting program. Ribeaud’s original STARK is great, but QSTARK can do Stark with a single quadrupole, so rejoice, fans of nitrogen and chlorine!
• EVAL – Have a set of Cartesian coordinates from a Kraitchman or least-squares fit? Want internal coordinates for a table in your paper but you don’t want to do it by hand? Kisiel’s EVAL will do it for you.
A new push in the Pate group is to move towards an easily maintainable and open-source platform for data analysis and system automation. Although FORTRAN has been a staple in scientific computing for decades, it can be quite difficult to interpret and write for newer generations of scientists raised in a world after FORTRAN's prime. Although modern software such as MATLAB, Mathcad, and Mathematica is powerful and easy to learn, the price tags for licenses can be high and the code is often not portable between platforms.
Python offers us a unique chance to move into a new era of scientific analysis: a highly portable and easy to learn language with a deep and open source library of numerical analysis code already available.
Below we offer a number of useful Python scripts and programs, ranging from essential data workup routines to helpful tools. This list will be constantly expanding as we write new things and previous versions will be updated as we fix things, so feel free to check back often!
The following programs require a recent Python distribution, as well as the following packages: Easygui; Scipy & Numpy; PyLab; Matplotlib.
1) Spectrum Cutter
This program will cut out a given set of lines in one-column format from an input spectrum. The default cut width is 350 kHz, but this can be changed in the source by modifying the width variable.
Outputs a two-column list of all lines in a spectrum with intensity above the user-defined intensity threshold.
3) Spectrum Generator from SPCAT files
Generates a predicted spectrum from an input *.cat output file from SPCAT. Settings to the point separation can be made by adjusting the step variable; frequency cutoffs can be adjusted by changing start_freq and stop_freq, and the Gaussian linewidth is set to a default of 50 KHz (can be changed in line 69 by adjusting the linewidth input in the Test_Spectrum() call).
4) Autofit Output Cutter
Outputs the first 1000 lines from a sorted_omc_cat output from Autofit. Just place the script in the same folder as the sorted_omc_cat.txt file and run!
5) SPCAT Input File Generator and Spectrum Generator
Simplifies generation of SPCAT input files with an easy-to-use input GUI. Supports file generation for simple asymmetric rotors with centrifugal distortion up to sextics and with up to one quadrupolar nucleus. With the included SPCAT executable (Windows only at the moment!), you can easily generate predictive spectra for your system of interest. Implenting new options, such as symmetric tops or multiple quadrupolar nuclei (or any kind of system SPCAT is able to handle), into the source code is fairly easy.
Update 8/11/13:All files can now be found in our Github repository, located here!
Greetings! If you are looking for Autofit then you can find it, along with a tutorial and all necessary (and in the future, most recently updated documentation at this link:
Autofit download / documentation
If you want a quick link to our github repository, you can find it at:
Any questions regarding the material can be directed towards the webmaster.