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

# sc\_DiagMolecularHessian(3)

DiagMolecularHessian is an implementation of MolecularHessian that returns a hessian that is a diagonal matrix.

## NAME

sc::DiagMolecularHessian - **DiagMolecularHessian** is an implementation of **MolecularHessian** that returns a hessian that is a diagonal matrix.

## SYNOPSIS

`#include <hess.h>`

Inherits **sc::MolecularHessian**.

### Public Member Functions

**DiagMolecularHessian** (const **Ref**\< **KeyVal** \> &)\
 The **DiagMolecularHessian** **KeyVal** constructor is used to generate a **DiagMolecularHessian** object from the input.  **DiagMolecularHessian** (**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.  **RefSymmSCMatrix** **cartesian\_hessian** ()\
 Return the hessian in cartesian coordinates.

### Protected Attributes

double **diag\_**\

### Additional Inherited Members

## Detailed Description

**DiagMolecularHessian** is an implementation of **MolecularHessian** that returns a hessian that is a diagonal matrix.

## Constructor & Destructor Documentation

### sc::DiagMolecularHessian::DiagMolecularHessian (const Ref\< KeyVal \> &)

The **DiagMolecularHessian** **KeyVal** constructor is used to generate a **DiagMolecularHessian** object from the input. It reads the keywords below.

KeywordTypeDefaultDescription `diag`double1.0Specifies the diagonal elements of the hessian.

## Member Function Documentation

### RefSymmSCMatrix sc::DiagMolecularHessian::cartesian\_hessian ()` [virtual]`

Return the hessian in cartesian coordinates.

Implements **sc::MolecularHessian**.

### void sc::DiagMolecularHessian::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::MolecularHessian**.

## Author

Generated automatically by Doxygen for MPQC from the source code.
