This is the command detcas that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

**PROGRAM:**

**NAME**

detcas - Determinant Configuration Interaction / Complete Active

Space Self-Consistent-Field Program

**DESCRIPTION**

The program

**detcas**performs a complete-active-space self-consistent-field (CASSCF)

optimization of molecular orbitals via a two-step procedure in conjunction with the

determinant configuration interaction program DETCI. The program is fairly simple and

currently uses a Newton-Raphson approach to update the orbitals, employing a simple

approximate orbital Hessian. Convergence is accelerated using Pulay's direct inversion of

the iterative subspace (DIIS) procedure. The code has been written to allow more general

wavefunctions that do not necessarily feature a full CI treatment of the active space. In

particular, any restricted active space (RAS) CI wavefunction supported by DETCI can be

used, allowing MCSCF wavefunctions of the RASSCF type.

**REFERENCES**

Approximate Orbital Hessian:

1. G. Chaban, M. W. Schmidt, and M. S. Gordon, Theor. Chim. Acta 97, 88-95 (1997).

Restricted Active Space CI:

1. Determinant Based Configuration Interaction Algorithms for Complete and Restricted

Configuration Interaction Spaces, J. Olsen, B. O. Roos, P. Jorgensen, and H. J. Aa.

Jensen, J. Chem. Phys. 89, 2185 (1988).

Restricted Active Space SCF:

1. P.-A. Malmqvist, A. Rendell, and B. O. Roos, J. Phys. Chem. 94, 5477 (1990).

DETCI Program:

1. C. D. Sherrill, Computational Algorithms for Large-Scale Full and Multi-Reference

Configuration Interaction Wavefunctions, PhD thesis, University of Georgia, Athens,

GA, 1996.

2. C. D. Sherrill and H. F. Schaefer, The Configuration Interaction Method: Advances

in Highly Correlated Approaches, Adv. Quantum Chem. 34, 143-269 (1999).

**FILES** **REQUIRED**

input.dat - Input file

file78 - MO one-electron integrals (fzc operator)

file72 - MO two-electron integrals

file73 - MO one-particle density matrix

file74 - MO two-particle density matrix

file75 - MO Lagrangian

**FILES** **UPDATED**

output.dat - Output file

file14.dat - Record of energies and orbital gradients

**INPUT** **FORMAT**

The following command-line arguments are available:

__-quiet__This gives the same result as

**PRINT=0**.

__-o__

__fname__

Gives the filename for the output file. Defaults to output.dat.

Additional input for this program is read from the file input.dat. The more commonly used

keywords are:

**WFN**

**=**

__string__

The supported wave function types are CASSCF and RASSCF.

**CONVERGENCE**

**=**

__integer__

Convergence desired on the orbital gradient. Convergence is achieved when the RMS

of the error in the orbital gradient is less than 10**(-n). The default is 4 for

energy calculations and 7 for gradients.

**DOCC**

**=**

__integer_array__

This vector gives the number of doubly occupied orbitals in each irrep. There is

no default.

**SOCC**

**=**

__integer_array__

This vector gives the number of singly occupied orbitals in each irrep. There is

no default.

**ENERGY_CONVERGENCE**

**=**

__integer__

Convergence desired on the total MCSCF energy. The default is 7.

**FROZEN_DOCC**

**=**

__integer_array__

The number of lowest energy doubly occupied orbitals in each irreducible

representation which will literally be frozen (not updated in the MCSCF). The

Cotton ordering of the irredicible representations is used. The default is the

zero vector.

**FROZEN_UOCC**

**=**

__integer_vector__

The number of highest energy unoccupied orbitals in each irreducible representation

which will literally be frozen (not updated in the MCSCF). The default is the zero

vector.

**RESTRICTED_DOCC**

**=**

__integer_array__

The number of lowest energy doubly occupied orbitals in each irreducible

representation which will be optimized but kept doubly occupied in the MCSCF.

These orbitals come after the

**FROZEN_DOCC**orbitals. The default is the zero

vector.

**RESTRICTED_UOCC**

**=**

__integer_array__

The number of highest energy unoccupied orbitals in each irreducible representation

which will be optimized but kept unoccupied in the MCSCF. These orbitals come

before the

**FROZEN_UOCC**orbitals. The default is the zero vector.

**NCASITER**

**=**

__integer__

Maximum number of iterations to optimize the orbitals. This option

**should**

**be**

**specified**

**in**

**the**

**DEFAULT**

**section**

**of**

**input**, because it needs to be visible to the

control program PSI. Defaults to 1.

**=**

__integer__

This option determines the verbosity of the output. A value of 1 or 2 specifies

minimal printing, a value of 3 specifies verbose printing. Values of 4 or 5 are

used for debugging. Do not use level 5 unless the test case is very small (e.g.

STO H2O CISD).

The less commonly used keywords are:

**DIIS_FREQ**

**=**

__integer__

The DIIS extrapolation procedure will be attempted every

__n__iterations. The default

is 1.

**DIIS_MAX_VECS**

**=**

__integer__

The maximum number of subspace vectors for the DIIS procedure. After this number

of vectors are reached, older vectors will be dropped from the subspace as

necessary. The default is 8.

**DIIS_MIN_VECS**

**=**

__integer__

The minimum number of subspace vectors before a DIIS interpolation can be

performed. The default is 2. It doesn't make sense to have values less than 2.

**DIIS_START**

**=**

__integer__

The iteration number when Pulay's Direct Inversion of the Iterative Subspace (DIIS)

procedure for acceleration of convergence should be turned on. The default is 3.

Prior to this iteration, vectors are not added to the DIIS subspace. The first

DIIS step will not be taken until

**DIIS_MIN_VECS**vectors are in the DIIS subspace.

**LAG_FILE**

**=**

__integer__

File (unit number) for reading the lagrangian matrix. The default value is

currently 75.

**OPDM_FILE**

**=**

__integer__

File (unit number) for reading the one-particle density matrix. The default value

is currently 73.

**SCALE_GRAD**

**=**

__boolean__

Tells whether to scale the orbital gradient by the approximate (diagonal) orbital

Hessian. The default is TRUE.

**SCALE_STEP**

**=**

__real__

Scale factor for the orbital rotation step. Default is 1.0.

**TPDM_FILE**

**=**

__integer__

File (unit number) for reading the two-particle density matrix. The default value

is currently 74.

**LEVEL_SHIFT**

**=**

__boolean__

Tells whether to allow for level shifting of the hessian matrix. This can be used

to ensure that the hessian is positive definite for the beginning iterations. If

the hessian is not positive definite near convergence, then this may be a sign of

numerical instabilities in the MCSCF. The default is TRUE.

**SHIFT**

**=**

__real__

Tells how much the diagonal elements of the hessian should be shifted for level

shifting. Default is 0.01.

**DETERM_MIN**

**=**

__real__

Minimum allowed valued for the determinant of the hessian matrix if level shifting

is on. This is not used if LEVEL_SHIFT=FALSE. Default is 0.00001.

**STEP_MAX**

**=**

__real__

This is the maximum allowed single orbital rotation. Default is 0.30.

**FORCE_STEP**

**=**

__boolean__

This allows the user to overide the calculated step and to force a step in a

particular direction. This can be useful if trying to force the calculation away

from a saddle point. The default is FALSE.

**FORCE_PAIR**

**=**

__integer__

This is the index for the independent pair which is to be rotated if

FORCE_STEP=TRUE. This is ignored otherwise. There is no default.

**FORCE_VALUE**

**=**

__real__

This is the orbital rotation value for rotating the orbitals specified by

FORCE_PAIR. This is only used if FORCE_STEP is set to TRUE. The default value is

0.0.

**CHECK_HESSIAN**

**=**

__boolean__

Calculate the eigenvalues of the orbital hessian. This is good for checking for

saddle-point solutions. Should be used without level shifting. The default is

FALSE.

**EIGEN_VECTORS**

**=**

__boolean__

Do you want to calculate the eigenvectors of the orbital hessian as well. This is

ignored if CHECK_HESSIAN=FALSE. Default is FALSE.

8 May, 1998 detcas(1)

Use detcas online using onworks.net services