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

# sc\_StdDenFunctional(3)

The StdDenFunctional class is used to construct the standard density functionals.

## NAME

sc::StdDenFunctional - The **StdDenFunctional** class is used to construct the standard density functionals.

## SYNOPSIS

`#include <functional.h>`

Inherits **sc::SumDenFunctional**.

### Public Member Functions

**StdDenFunctional** (const **Ref**\< **KeyVal** \> &)\
 The `name` keyword is read from the input and is used to initialize the functional.  **StdDenFunctional** (**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.  void **print** (std::ostream &=**ExEnv::out0**()) const\
 Print the object.

### Protected Member Functions

void **init\_arrays** (int n)\

### Protected Attributes

char \* **name\_**\

### Additional Inherited Members

## Detailed Description

The **StdDenFunctional** class is used to construct the standard density functionals.

The table below lists the functional names and the equivalent functionals in other packages. The Name column gives the name as it is given in the input file (this is case sensitive). Functional names with non-alpha-numeric names should be given in double quotes. The description column gives the classes used to build up the functional and its coefficient, if it is other than one. The G98 column lists the equivalent functional in Gaussian 98 A.6. The NWChem column lists the equivalent functional in NWChem 3.3.1.

Name Description G98 NWChem XALPHA **XalphaFunctional** XALPHA \
\
  HFS **SlaterXFunctional** HFS slater HFB **Becke88XFunctional** HFB becke88 HFG96 **G96XFunctional** \
\
  G96LYP **G96XFunctional** \
\
  \+**LYPCFunctional** G96LYP \
\
  BLYP **SlaterXFunctional** \
\
  \+**Becke88XFunctional** \
\
  \+**LYPCFunctional** BLYP \
\
  SVWN1 **SlaterXFunctional** +**VWN1LCFunctional** slater vwn\_1 SVWN1RPA**SlaterXFunctional** +VWN1LCFunctional(1) slater vwn\_1\_rpa SVWN2 **SlaterXFunctional** +**VWN2LCFunctional** slater vwn\_2 SVWN3 **SlaterXFunctional** +**VWN2LCFunctional** slater vwn\_3 SVWN4 **SlaterXFunctional** +**VWN4LCFunctional** slater vwn\_4 SVWN5 **SlaterXFunctional** +**VWN5LCFunctional** SVWN5 slater vwn\_5 SPZ81 **SlaterXFunctional** +**PZ81LCFunctional** SPL \
\
  SPW92 **SlaterXFunctional** +**PW92LCFunctional** slater pw91lda BP86 **SlaterXFunctional** +**Becke88XFunctional** +**P86CFunctional** +**PZ81LCFunctional** becke88 perdue86 B3LYP 0.2 HF-Exchange

- •

  0\.8 **SlaterXFunctional**

- •

  0\.72 **Becke88XFunctional**

- •

  0\.19 VWN1LCFunctional(1)

- •

  0\.81 **LYPCFunctional**

B3LYP b3lyp B3PW91 0.2 HF-Exchange

- •

  0\.8 **SlaterXFunctional**

- •

  0\.72 **Becke88XFunctional**

- •

  0\.19 **PW91CFunctional**

- •

  0\.81 **PW92LCFunctional**

B3PW91 \
\
  B3P86 0.2 HF-Exchange

- •

  0\.8 **SlaterXFunctional**

- •

  0\.72 **Becke88XFunctional**

- •

  0\.19 **P86CFunctional**

- •

  0\.81 **VWN1LCFunctional** (1)

 PBE **PBEXFunctional** +**PBECFunctional** xpbe96 cpbe96 PW91 **PW91XFunctional** +**PW91CFunctional** \
\
  mPW(PW91)PW91 mPW91XFunctional(PW91) +**PW91CFunctional** PW91PW91\
\
  mPWPW91 mPW91XFunctional(mPW91) +**PW91CFunctional** \
\
  mPW1PW910.16 HF-Exchange

- •

  0\.84 mPW91XFunctional(mPW91) +**PW91CFunctional**

## Constructor & Destructor Documentation

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

The `name` keyword is read from the input and is used to initialize the functional. See the general **StdDenFunctional** description for a list of valid values for `name`.

## Member Function Documentation

### void sc::StdDenFunctional::print (std::ostream & = ExEnv::out0`()`) const` [virtual]`

Print the object.

Reimplemented from **sc::SumDenFunctional**.

### void sc::StdDenFunctional::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::SumDenFunctional**.

## Author

Generated automatically by Doxygen for MPQC from the source code.
