# Some considerations for using SPCAT

The two files required for running SPCAT to carry out a forward calculation of a spectrum are
the intensity file and the variance file with the names file.int and file.var, respectively.
The variance file is created by SPFIT from the parameter and line files.
In the case of an initial forward calculation without any fit, you can use a parameter file instead,
but turn the large variability of the parameters into small or very small ones to obtain some
very crude estimation of the uncertainties.

You will find information on how to set up a parameter or variance file in Herb Pickett's documentation
or the the essentially equivalent section General. Additional information may be gained
through the numerous examples. There is not much to pay attention to in the variance file, except
the value of <i>K</i>_{max}. In the case of SPCAT, its value is important for the calculation
of the partition function values as you will see below.

## The basic structure of the intensity file

The intensity file consists usually of three or more lines.

* The first line is the title line. This will be written into the output file (file.out).
It could be the name or the formula of your molecule with additional information if desired.

* The second line contains a number of options to describe the forward calculation,
see also Herb Pickett's documentation or the the essentially equivalent section General.
Further details are given below.

* The third and subsequent lines contain information on the dipole moment components etc.
If you want to calculate only an energy file, partition function values etc., you may add a blank line
between the second and the third line. This causes the dipole moment informations to be ignored.

### The option line

The option line contains the following quantities:

FLAGS, TAG, QROT, FBGN, FEND, STR0, STR1, FQLIM, TEMP

* **FLAGS**: the most important ones are **0** for a short output file without energy file
and **1** for the calculation of an energy file in addition. If all of your frequencies **and**
parameter values are in units of inverse centimeters, add 1000 to FLAGS for proper calculation
of the partition function. If you use püarameter values in megahertz units, you can use units
of inverse centimeters for a transition frequency or energy value by putting a minus sign
in front of the uncertainty.

* **TAG**: The tag is used in a catalog file to identify a species. Up to six characters may be used.
The first up to three digits in the CDMS reprsent the molecular weight of the molecule in atomic mass units,
next come a 5, and two digits for counting.

* **QROT** is the value of the partition function at the desired temperature. The default temperature is 300 K.
Considerations for **Evaluating the partition function** are given separately below.

* **FBGN** is the *F* (or *J* or *N*) value at which the calculation should start.

* **FEND** is the *F* (or *J* or *N*) value at which the calculation should end.

**Please note:** While your calculation usually should start at 0, you may want to run
only a partial forward calculation if you are interested in a subset of transitions.
You want to end your calculation at values at which the uncertainties of transition frequencies
are not excessively large. But read also the considerations for **Evaluating the partition function**
below.

* **STR0** is the first cutoff value of the decadic logarithm of the intensity in the intensity units
employed in the catalog file. It is applied linearly!

* **STR1** is the second cutoff value of the decadic logarithm of the intensity in the intensity units
employed in the catalog file. Basically, the intensity **Int** has to fulfil the following:

**Int > 10 ^{STR0} + (v/300)^{2}∗10^{STR1}**,
where

*v*is the transition frequency in units of gigahertz.

Additional information is given in the section

**Considerations for the intensity cutoffs**.

* **FQLIM** is the upper frequency limit in units of gigahertz.

* **TEMP** is the temperature. The default value is 300 K. **Any** other temperature may be chosen
as long as the partition function value may be evaluated at this temperature.

### The dipole moment components

It is quite obvious that at least fairly accurate dipole moment components are required
for the calculation of reliable intensities. Such data are occasionally available from experiments
and sometimes from quantum-chemical calculations.
It is certainly useful to try to determine experimental values wherever this is possible.
Quantum-chemical calculations should always be viewed with a grain of salt as calculations
may be tough in some cases. Moreover, in some cases, the molecules are not in the principal axis system
or some axes have been interchanged.

### Evaluating the partition function

SPCAT calculates the partition function by default at the temperatures of
300, 225, 150, 75, 37.5, 18.75, and 9.275 K by direct summation of the contributions
of quantum levels as specified in the intensity and variance files.
Other temperatures will be calculated individually as specified by TEMP in the intensity file.
Therefore, it is of utmost importance to take a number of aspects into account.

* **FBGN** should be set to 0 or the lowest allowed value.

* **FEND** should be chosen high enough, such that the value of **QROT** at the highest temperature
is converged with respect to the quoted digits. Please note: while it may be fine to choose a value
higher than necessary, we recommend strongly to avoid values too high by far as peculiarities may occur
at very high *K* values, in particular at very high *J*.

* It is **very** important to take care that the energy of the lowest allowed hyperfine state is at zero energy!
This is particular important in cases of large spin-orbit splitting where the energy of the **unsplit**
*N* = 0 level will be at energy 0 without any modification! The energies will be too low as a consequence!
On the other hand, if you start your calculation of, e.g., H_{3}^{+} with
the *J* = *K* = 0 level at 0, your energies will be too high!

* If you are fitting multiple isotopologs or one isotopolog with several degrees of hyperfine splitting,
you should set the weights (WTPL and WTMN) of all unwanted “states” to zero in the variance file.

* The **maximum K** value in the variance file should be high enough, such that the value of

**QROT**at the highest temperature is converged with respect to the quoted digits. See also the respective remark for

**FEND**.

* If you need to take into consideration excited vibrational states, and you do not have sufficient accurate information on excited vibrational states, it will be best to determine only

*Q*

_{rot}analytically and apply

*Q*

_{v}from a harmonic approximation a posteriori.

### Considerations for the intensity cutoffs

It is very important to choose a reasonable temperature first. If you have more than one,
it is useful to determine the intensity cutoffs separately for each case, unless
the temperatures differ only marginally.
**STR0** should be chosen low enough that at least the *J* = 1 − 0 transitions show up in the catalog file.
In the case of molecules in cold environments or if your experimental rotatational temperature is low
and *K _{a}* = 1 is characterized well,

**STR0**may be chosen even lower such that at least the

*J*= 1 − 1 transitions show up in the catalog file.

**STR1**should be chosen high enough that not too many transitions with large uncertainties occur in the catalog file, unless you do want this.

**Please note:**If the line list is relatively small with respect to the parameter set, it may be useful to calculate to a value

**FEND**that is much smaller than the one to calculate the partition function properly. You can have multiple option lines in your intensity file after the dipole moments lines and after one blank line. Just exchange the desired line with the one that is currently in row 2. Please note also that you may have to balance

**STR0**and

**STR1**to obtain a recent catalog output, in particular in cases, in which the two values differ very much. In rarer cases, it may be useful to have

**STR1**<

**STR0**, mainly if you want to have frequencies well beyond the Boltzmann peak at the desired frequency. In most cases, you will find that it is useful to have

**STR0**<

**STR1**.