home | help
sc::StdDenFunctional(3) 	      MPQC		 sc::StdDenFunctional(3)

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.

     Public Member Functions inherited from sc::SumDenFunctional
     SumDenFunctional (const Ref< KeyVal > &)
	 This KeyVal constructor reads the following keywords:
     SumDenFunctional (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 set_spin_polarized (int)
     void set_compute_potential (int)
     int need_density_gradient ()
     void point (const PointInputData &, PointOutputData &)
     void print (std::ostream &=ExEnv::out0()) const
	 Print the object.
     double a0 () const
	 Override  the	DenFunctional::a0() member, so that a0's in contributing
	 functionals can be added in as well.

     Public Member Functions inherited from sc::DenFunctional
     DenFunctional (const Ref< KeyVal > &)
     DenFunctional (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.
     virtual void set_spin_polarized (int i)
     virtual void set_compute_potential (int i)
     virtual int need_density_gradient ()
     virtual int need_density_hessian ()
     virtual void point (const PointInputData &, PointOutputData &)=0
     void gradient (const PointInputData &, PointOutputData &, double *gradient,
	 int  acenter, GaussianBasisSet *basis, const double *dmat_a, const dou-
	 ble *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.
     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.
     virtual void save_vbase_state (StateOut &)
	 Save the virtual bases for the object.
     virtual 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.

     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.
     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.
     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.

   Protected Member Functions
     void init_arrays (int n)

     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.

     Protected Member Functions inherited from sc::RefCount
     RefCount (const RefCount &)
     RefCount & operator= (const RefCount &)

   Protected Attributes
     char * name_

     Protected Attributes inherited from sc::SumDenFunctional
     int n_
     Ref< DenFunctional > * funcs_
     double * coefs_

     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.
     static SavableState * key_restore_state (StateIn &si, const char *keyword)
	 Like  restore_state,  but  keyword  is  used  to  override values while
	 restoring.
     static SavableState * dir_restore_state (StateIn &si, const  char	*object-
	 name, const char *keyword=0)

Detailed Description
     The  StdDenFunctional class is used to construct the standard density func-
     tionals.

     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 in-
     put  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 SVWN1RPASlaterX-
     Functional +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 SlaterXFunc-
     tional +PZ81LCFunctional SPL
      SPW92 SlaterXFunctional +PW92LCFunctional slater pw91lda BP86 SlaterXFunc-
     tional +Becke88XFunctional +P86CFunctional +PZ81LCFunctional  becke88  per-
     due86 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 func-
     tional. 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 [vir-
     tual]
     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.

Version 2.3.1			 Thu Sep 3 2026 	 sc::StdDenFunctional(3)

home | help