A Beginner’s Guide to Pickett’s SPFIT/SPCAT Suite

Pickett’s SPFIT/SPCAT program suite, available from JPL Molecular Spectroscopy, stands as a cornerstone tool for analyzing and predicting high-resolution spectra. It is especially useful for spectroscopic databases essential in atmospheric and astrophysical research. This guide offers an introduction to SPFIT/SPCAT, focusing on key aspects for beginners.

Understanding SPFIT/SPCAT

The strength of SPFIT/SPCAT lies in its flexible molecular Hamiltonian construction and efficient internal matrix factorization. This combination allows the software to handle a wide range of molecular problems with speed and precision. However, SPFIT/SPCAT is known for having a steep learning curve.

This guide provides notes based on practical applications of Pickett’s SPFIT/SPCAT, aiming to complement the official documentation. Keep in mind that program updates may supersede some information, so always refer to the latest documentation.

SPFIT: The Fitting Program

SPFIT is designed to fit spectroscopic data to determine molecular parameters. Here’s a breakdown of its inputs and outputs:

Inputs:

  • *.par: This file contains control flags, declarations, and values of constants. It is crucial for setting up the fitting process.
  • *.lin: This file lists the transitions observed in the spectrum.

Outputs:

  • *.bak: A backup of the original *.par file, created at the beginning of each fitting run.
  • *.par: The modified *.par file, now containing the refined constants resulting from the fitting process.
  • *.var: Similar to *.par, but includes errors and the Cholesky decomposition of the correlation matrix. This is essential for use with SPCAT.
  • *.fit: The main output file, containing detailed results of the fit.
  • *.bin: A binary output file containing parameters and variances (now obsolete).

Linear Top Molecules in SPFIT

For linear molecules, the third line in the *.par file defines quadrupolar interactions. For example, with a single quadrupolar nucleus (I=3/2):

s -4 1 0 ,0 , , , , , , ,

For three quadrupolar nuclei (I1=3/2, I2=1, I3=1, F1,F2,F coupling):

s -334 1 0 ,0 , , , , , , ,

For three quadrupolar nuclei (I1=3/2, I2=1, I3=1, I,I1,F coupling):

s -334 1 0 ,0 , , -1 , , , , ,

Remember to explicitly set KNMAX to zero. Use WTPL and WTML in the case of symmetry-equivalent nuclei. Important constants include 100 B and 20000 B -30000 C (set to follow the value of B). Note that constants with identical values by symmetry must be declared in this way. For spin-rotation, for example, use:

10020000 -M.bb -10030000 -M.cc

In the *.lin file for a single quadrupolar nucleus:

J' F' J'' F'' 0 0 0 0 0 0 0 0 freq error weight

Symmetric Top Molecules with h3 Term

For symmetric tops, the third line in the *.par file uses -1 to define the symmetric top, 1 for prolate symmetry (change to -1 for oblate):

s -1 1 0 ,,,,,,,,,,,,,,,,,,

Important constants (prolate):

10000 A 20000 B -30000 C (set to follow the value of B) 60000 h3

Alternatively:

1000 A-B :prolate 3000 B-C :oblate 100 B

In the *.lin file:

J' K' J'' K'' 0 0 0 0 0 0 0 0 freq error weight

K=3 (K=6 etc.) doublets are specified as:

J+1 -3 J 3 0 0 0 0 0 0 0 0
J+1 3 J -3 0 0 0 0 0 0 0 0 etc.

Asymmetric Top Fits

For a standard asymmetric top fit, the third line in the *.par file varies based on the reduction and representation:

  • Reduction-A, prolate (representation Ir): a 1 1 0 ,,,,,,,,,,,,,,,,,,
  • Reduction-A, oblate (representation IIIl): a 1 -1 0 ,,,,,,,,,,,,,,,,,,
  • Reduction-S, prolate (representation Ir): s 1 1 0 ,,,,,,,,,,,,,,,,,,
  • Reduction-S, oblate (representation IIIl): s 1 -1 0 ,,,,,,,,,,,,,,,,,,

You can fit linear combinations of constants. For example, for prolate (B+C), (BC):

20000 value /(B+C)/2 -30000 value
40000 value1 /(B-C)/4

or:

20000 value /(B+C)/2 -30000 value
20000 value1 /(B-C)/2 -30000 -value1

In the *.lin file:

J' K-1' K+1' J'' K-1'' K+1'' 0 0 0 0 0 0 freq error weight

Coriolis Coupling Between Asymmetric Rotor Vibrational Levels

The lower level is v=0, and the upper is v=1. Constants include:

10000 A rotational constant for state v=0 etc.
10011 A rotational constant for state v=1 etc.
11 Delta E i.e. difference in vibrational energies of the two states
200001 i G.a P.a
210001 F.a (P.b P.c + P.c P.b)
400001 i G.b P.b
410001 F.b (P.c P.a + P.a P.c)
600001 i G.c P.c
610001 F.c (P.a P.b + P.b P.a)

The third line in the *.par file (A-type, prolate):

a 1 2 0 ,,,,,,,,,,,,,,,,,,

In the *.lin file:

J' K-1' K+1' v' J'' K-1'' K+1'' v'' 0 0 0 0 freq error weight

Asymmetric Rotor with a Single Quadrupolar Nucleus

Round spin quantum numbers to the nearest integer. Specify independent quadrupolar constants as:

110010000 1.5 Chi.aa :Prolate
110040000 0.25 (Chi.bb-Chi.cc)
110030000 1.5 Chi.cc :Oblate
110040000 0.25 (Chi.bb-Chi.aa)
110610000 Chi.ab :Prolate and oblate
110210000 Chi.bc
110410000 Chi.ac

The third line in the *.par file (A-type, prolate, spin 3/2):

a 4 1 0 ,,,,,,,,,,,,,,,,,,

The third line in the *.par file (S-type, oblate, spin 3/2):

s 4 -1 0 ,,,,,,,,,,,,,,,,,,

In the *.lin file:

J' K-1' K+1' F' J'' K-1'' K+1'' F'' 0 0 0 0 freq error weight

SPCAT: The Predictive Program

SPCAT uses the molecular parameters from SPFIT to predict transition frequencies and intensities.

Inputs:

  • *.var: Contains constants, errors, and the correlation matrix from SPFIT.
  • *.int: Contains information for intensity calculation, including the rotational partition function.
  • *.bin: Binary version of parameters and variances (obsolete).

Outputs:

  • *.out: The main output file with energies and transition frequencies.
  • *.cat: The catalog file, containing calculated transitions in an 80-column format. It is sorted by frequency and serves as input for merging programs.
  • *.str: Output of transition dipoles.
  • *.egy: Output of energy levels, derivatives, and eigenvectors.

Before running SPCAT, execute SPFIT, even with dummy data, to generate the required *.var file.

Partition Function and Intensities in SPCAT

The *.int file requires the rotational partition function, *Q*r, calculated by default for 300K. Specify the temperature directly (ninth parameter on the second line of the *.int file) and the *Qr value for this temperature. A preliminary SPCAT run with the desired temperature will precalculate the Qr* value.

Common approximations for *Q*r:

  • Linear top: *Q*r = kT/hB = 2.0837×10^4 T/ B ; B/MHz, T/K
  • Symmetric top (prolate): *Q*r = 5.3311×10^6 (T^3/(B^2 A))^1/2 /sigma ; A,B/MHz, T/K
  • Asymmetric top: *Q*r = 5.3311×10^6 (T^3/(A B C))^1/2 /sigma ; A,B,C/MHz, T/K

Dipole Moments in SPCAT

Specify dipole moments as:

1 x.xxx mua/D for state v=0
2 x.xxx mub/D for state v=0
3 x.xxx muc/D for state v=0
111 x.xxx mua/D for state v=1
112 x.xxx mub/D for state v=1 etc.

Common SPFIT Traps and How to Avoid Them

SPFIT, while powerful, presents several potential pitfalls. It’s important to avoid these to ensure accurate and reliable results.

  • Trap 1: Misinterpreting parameter errors.
  • Trap 2: Assuming a fit has converged prematurely. A fit is converged only when the current and predicted RMS ERROR values are identical, and the THRESH parameter is zero.
  • Trap 3: Improper use of a priori parameter uncertainties (ERPAR). While useful for reducing the search range for correlated constants, ERPAR should be reset to be at least an order of magnitude greater than the resulting errors in the fitted constants in the final fit.
  • Trap 4: Incorrect signs of quartic centrifugal distortion constants. Most quartic centrifugal distortion constants are negative relative to the usual convention.
  • Trap 5: Inappropriate use of the DIAG parameter (twelfth parameter in third line of .par). It is usually best to commence a new problem with DIAG=0.

Postprocessing Programs

Several postprocessing programs enhance SPFIT/SPCAT:

  • PIFORM: Formats the *.fit output for publications.
  • PISLIN: Checks for line duplication and sorts the *.lin file.
  • LINFIL: Filters and modifies a *.lin file.
  • CATFIL: Filters a *.cat file based on user-specified options.
  • ASCP_L: Graphics viewer of SPCAT predictions as stick diagrams.

Conclusion

Pickett’s SPFIT/SPCAT suite is an invaluable tool for high-resolution molecular spectroscopy. Understanding its structure, inputs, outputs, and potential pitfalls is crucial for accurate spectral analysis and prediction. This guide provides a foundation for beginners to start using SPFIT/SPCAT effectively. Remember to consult the official documentation and explore the postprocessing tools for advanced applications.

Comments

No comments yet. Why don’t you start the discussion?

Leave a Reply

Your email address will not be published. Required fields are marked *