sc::mPW91XFunctional Class Reference

Implements a modified 1991 Perdew-Wang exchange functional. More...

`#include <functional.h>`

Inheritance diagram for sc::mPW91XFunctional:
[legend]
Collaboration diagram for sc::mPW91XFunctional:
[legend]

## Public Types

enum | Func { B88, PW91, mPW91 }

## Public Member Functions

| mPW91XFunctional ()
| Construct an mPW exchange functional.
| mPW91XFunctional (Func variant)
| Construct an mPW form exchange functional using the given functional variant. More...
| mPW91XFunctional (const Ref< KeyVal > &)
| Construct an mPW form exchange functional. More...
| mPW91XFunctional (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. More...
int | need_density_gradient ()
void | point (const PointInputData &, PointOutputData &)
void | init_constants (Func)
Public Member Functions inherited from sc::DenFunctional
| DenFunctional (const Ref< KeyVal > &)
| DenFunctional (StateIn &)
virtual void | set_spin_polarized (int i)
virtual void | set_compute_potential (int i)
virtual int | need_density_hessian ()
void | gradient (const PointInputData &, PointOutputData &, double *gradient, int acenter, GaussianBasisSet *basis, const double *dmat_a, const double *dmat_b, int ncontrib, const int *contrib, int ncontrib_bf, const int *contrib_bf, const double *bs_values, const double *bsg_values, const double *bsh_values)
virtual double | a0 () const
| Returns the fraction of Hartee-Fock exchange to be included.
void | fd_point (const PointInputData &, PointOutputData &)
int | test (const PointInputData &)
int | test ()
Public Member Functions inherited from sc::SavableState
SavableState & | operator= (const SavableState &)
void | save_state (StateOut &)
| Save the state of the object as specified by the StateOut object. More...
void | save_object_state (StateOut &)
| This can be used for saving state when the exact type of the object is known for both the save and the restore. More...
virtual void | save_vbase_state (StateOut &)
| Save the virtual bases for the object. More...
Public Member Functions inherited from sc::DescribedClass
| DescribedClass (const DescribedClass &)
DescribedClass & | operator= (const DescribedClass &)
ClassDesc * | class_desc () const throw ()
| This returns the unique pointer to the ClassDesc corresponding to the given type_info object. More...
const char * | class_name () const
| Return the name of the object's exact type.
int | class_version () const
| Return the version of the class.
virtual void | print (std::ostream &=ExEnv::out0()) const
| Print the object.
Public Member Functions inherited from sc::RefCount
int | lock_ptr () const
| Lock this object.
int | unlock_ptr () const
| Unlock this object.
void | use_locks (bool inVal)
| start and stop using locks on this object
refcount_t | nreference () const
| Return the reference count.
refcount_t | reference ()
| Increment the reference count and return the new count.
refcount_t | dereference ()
| Decrement the reference count and return the new count.
int | managed () const
void | unmanage ()
| Turn off the reference counting mechanism for this object. More...
int | managed () const
| Return 1 if the object is managed. Otherwise return 0.
Public Member Functions inherited from sc::Identity
Identifier | identifier ()
| Return the Identifier for this argument. More...

## Protected Member Functions

void | spin_contrib (const PointInputData::SpinData &, double &mpw, double &dmpw_dr, double &dmpw_dg)
Protected Member Functions inherited from sc::DenFunctional
void | do_fd_point (PointInputData &id, double &in, double &out, double lower_bound, double upper_bound)
Protected Member Functions inherited from sc::SavableState
| SavableState (const SavableState &)
| SavableState (StateIn &)
| Each derived class StateIn CTOR handles the restore corresponding to calling save_object_state, save_vbase_state, and save_data_state listed above. More...

## Protected Attributes

double | b
double | beta
double | c
double | d
double | a_x
double | x_d_coef
Protected Attributes inherited from sc::DenFunctional
int | spin_polarized_
int | compute_potential_
double | a0_

## Additional Inherited Members

Static Public Member Functions inherited from sc::SavableState
static void | save_state (SavableState *s, StateOut &)
static SavableState * | restore_state (StateIn &si)
| Restores objects saved with save_state. More...
static SavableState * | key_restore_state (StateIn &si, const char *keyword)
| Like restore_state, but keyword is used to override values while restoring. More...
static SavableState * | dir_restore_state (StateIn &si, const char *objectname, const char *keyword=0)

## Detailed Description

Implements a modified 1991 Perdew-Wang exchange functional.

C. Adamo and V. Barone, J. Chem. Phys., 108(2), pp. 664-674, 1998.

## Constructor & Destructor Documentation

sc::mPW91XFunctional::mPW91XFunctional | ( | Func | variant | ) |

Construct an mPW form exchange functional using the given functional variant.

The variant can be B88, PW91, or mPW91.

sc::mPW91XFunctional::mPW91XFunctional | ( | const Ref< KeyVal > & |  | ) |

Construct an mPW form exchange functional.

The following keywords are recognized:

`constants`

  This can be B88 to give the Becke88 exchange functional; PW91, to give results similar to the PW91 exchange functional; or mPW91, to give the new functional developed by Adamo and Barone.

`b`
`beta`
`c`
`d`
`x_d_coef`
  The coefficient of , where is the reduced gradient.

## Member Function Documentation

void sc::mPW91XFunctional::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::DenFunctional.

The documentation for this class was generated from the following file:

- functional.h