# sc_MolecularFrequencies - Man Page

The MolecularFrequencies class is used to compute the molecular frequencies and thermodynamic information.

## Synopsis

`#include <molfreq.h>`

Inherits **sc::SavableState**.

### Public Member Functions

**MolecularFrequencies** (const **Ref**< **KeyVal** > &)

The **KeyVal** constructor. **MolecularFrequencies** (**StateIn** &)

void **save_data_state** (**StateOut** &)

Save the base classes (with save_data_state) and the members in the same order that the **StateIn** CTOR initializes them. **Ref**< **Molecule** > **molecule** () const

Return the molecule.

void **compute_frequencies** (const **RefSymmSCMatrix** &xhessian)

Given a cartesian coordinate hessian, compute the frequencies.

int **nirrep** () const

Returns the number if irreps.

int **nfreq** (int irrep) const

Returns the number of modes in an irrep.

double **freq** (int irrep, int i) const

Returns the frequency, given the irrep and the index. **RefSCMatrix normal_coordinates** ()

This returns the normal coordinates generated by compute_frequencies.

void **thermochemistry** (int degeneracy, double temp=298.15, double pres=1.0)

Computes thermochemical information using information generated by calling compute_frequencies first.

void **animate** (const **Ref**< **Render** > &, const **Ref**< **MolFreqAnimate** > &)**Ref**< **SCMatrixKit** > **matrixkit** ()**Ref**< **SCMatrixKit** > **symmatrixkit** ()

### Additional Inherited Members

## Detailed Description

The **MolecularFrequencies** class is used to compute the molecular frequencies and thermodynamic information.

## Constructor & Destructor Documentation

### sc::MolecularFrequencies::MolecularFrequencies (const Ref< KeyVal > &)

The **KeyVal** constructor.

- mole
A

**MolecularEnergy**object. If this is not given then molecule must be given.- molecule
A

**Molecule**object. If this is not given then mole must be given.- point_group
A

**PointGroup**object. This is the point group used to compute the finite displacements. Since some**MolecularEnergy**objects cannot handle changes in the molecule's point group, the molecule must be given $C_1$ symmetry for frequency calculations. In this case, the point_group keyword can be given to reduce number of the displacements needed to compute the frequencies. If this is not given then the point group of the molecule is used.- debug
An integer which, if nonzero, will cause extra output.

- displacement
The amount that coordinates will be displaced. The default is 0.001.

## Member Function Documentation

### double sc::MolecularFrequencies::freq (int irrep, int i) const [inline]

Returns the frequency, given the irrep and the index. compute_frequencies must be called first.

### int sc::MolecularFrequencies::nfreq (int irrep) const [inline]

Returns the number of modes in an irrep. compute_frequencies must be called first.

### void sc::MolecularFrequencies::save_data_state (StateOut &) [virtual]

Save the base classes (with save_data_state) and the members in the same order that the **StateIn** CTOR initializes them. This must be implemented by the derived class if the class has data.

Reimplemented from **sc::SavableState**.

## Author

Generated automatically by Doxygen for MPQC from the source code.