---
name: "sc_MolecularFrequencies"
section: "3"
platform: "linux"
package: "libsc-doc"
version: "2.3.1-22"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/sc_MolecularFrequencies"
---

# sc\_MolecularFrequencies(3)

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

## NAME

sc::MolecularFrequencies - 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.
