9. How to Provide a More Effective Initial Guess

We now have a general understanding of valence bond theory and how to perform common valence bond calculations with XMVB. In practical calculations, in addition to defining orbitals, active spaces, and other basic information, we must also provide an initial guess. Although in many cases we may not need to pay attention to how the initial guess is generated, the default initial guess does not always meet our requirements. XMVB provides several different schemes for generating initial guesses, and users can choose an appropriate scheme depending on their actual needs. In this lecture, we will introduce these different schemes for initial guesses and give some recommendations to users.

9.1. Several Different Schemes for Initial Guess

We begin by introducing several schemes for generating initial guesses in XMVB. In XMVB, users specify the scheme for the initial guess by defining a keyword like GUESS=XXX in the $CTRL block. For convenience of reference, we have titled each section with the specific keyword syntax.

9.1.1. GUESS=AUTO

In this scheme, XMVB first performs an RHF or ROHF calculation depending on the multiplicity of the system. Then, valence bond orbitals are partitioned into blocks according to the basis functions contained in each orbital, with orbitals sharing the same basis functions assigned to the same block. Next, Fock matrices are constructed for each orbital block using the RHF/ROHF Fock matrix. By diagonalizing the Fock matrix of each orbital block, XMVB generates the initial guess for the valence bond orbitals. In most cases, this scheme yields sufficiently good initial guesses and is highly automated; therefore, it is the default scheme for generating initial guesses. If no specification is provided, XMVB will attempt to generate the initial guess using this scheme. However, this scheme may encounter difficulties if the user adopts an orbital construction like the following:

 1CH2 example
 2$CTRL
 3STR=FULL NAO=2 NAE=2 NMUL=1
 4BASIS=6-31G* ORBTYP=HAO FRGTYP=ATOM
 5$END
 6$ORB
 71 2 2 1 1
 81       # C1 1s
 91 2     # C1-H2 bond
101 3     # C1-H3 bond
111       # C1 active orbital 1
121       # C1 active orbital 2
13$END
14$GEO
15C 0.0 0.0 0.0
16H 1.0 0.0 0.0
17H 0.0 1.0 0.0
18$END

The purpose of this example is to calculate the configuration and energy of the two nonbonding electrons on the carbon atom of the CH2 radical. Thus, the user expects the final active orbitals to correspond to the \(2p\) orbital on the carbon atom. However, in the actual calculation, the user will find that the calculation crashes due to the initial guess. This is because XMVB groups orbitals 1, 4, and 5 into one block, orbital 2 into another block, and orbital 3 into another block, since the basis functions involved in each block are different. When constructing and diagonalizing the Fock matrices, because all three orbital blocks involve the carbon basis functions, the carbon’s \(1s\) orbitals consistently have the lowest energy upon diagonalization. As a result, orbitals 1, 2, and 3 all become carbon’s \(1s\) orbitals, which causes the calculation to crash.

9.1.2. GUESS=READ

This scheme reads the user-specified initial guess. After an XMVB calculation is completed, in addition to the main xmo file, the output also contains a file with the extension .orb. This file stores the valence bond orbitals obtained in the calculation and can thus be used as an initial guess. In this case, a $GUS block must be provided, with the contents of the orb file placed in the $GUS block, and GUESS=READ specified in the $CTRL block. A detailed example can be found in Section 6.2.

9.1.3. GUESS=MO/NBO

Molecular orbital (MO) theory calculations can provide delocalized orbitals that satisfy symmetry requirements, and according to the LCAO-MO concept, delocalized orbitals can be regarded as linear combinations of localized orbitals. Therefore, we can reverse this logic and use delocalized orbitals to provide initial guesses for localized orbitals. On the other hand, natural bond orbital (NBO) can transform delocalized molecular orbitals into either bonding orbitals localized between two atoms or atomic orbitals localized on a single atom. Therefore, we can use MOs or NBOs to provide initial guesses for valence bond calculations.

When adopting this scheme, the user must first perform an Hartree-Fock(HF) calculation to visualize the molecular orbitals. If NBOs are to be used as the initial guess, the XMVB tool NBOPREP must also be employed. Afterward, the user must create a $GUS block, whose contents are as follows:

1$GUS
21 1
32 2
43 4
54 3
6$END

Here, the contents of the $GUS block are divided into two columns: the first column is the index of the valence bond orbital, and the second column is the index of the MO/NBO. Each line specifies that valence bond orbital X takes the coefficients of the corresponding basis functions from MO/NBO Y as its initial guess.

9.1.4. GUESS=UNIT

This scheme is very simple: for each orbital, the coefficient of the first basis function is automatically set to 1, and all others are set to 0. If this basis function has already been assigned to a previous orbital, the next basis function is automatically selected and assigned the value 1.

9.2. How to Choose an Appropriate Initial Guess Scheme?

For simple systems, such as diatomic molecules or planar conjugated systems, GUESS=AUTO can provide sufficiently good initial guesses. More generally, if the valence bond orbitals defined by the user can be partitioned into blocks such that no basis function is shared between blocks (see the examples in Section 4 , Section 5 , Section 6 and Section 7 ), then GUESS=AUTO can provide reasonable initial guesses. Therefore, we generally recommend that users let XMVB automatically generate the initial guess.

For calculations involving scans, such as potential energy surfaces and reaction pathways, since all calculations involve the same structural features and orbital definitions, we recommend that users employ GUESS=READ, using the orbitals obtained from the previous step as the initial guess for the next step. For OEO orbital calculations, we also suggest first performing HAO calculations and then using the HAO orbitals as the initial guess for the OEO calculation. Similarly, for calculations such as VBSCD (see Section 7.3), which involve multiple sets of valence bond structures, one can first perform calculations for the reactants/products and then use the resulting orbitals as the initial guess for the calculation of the full structure.

If the molecule is more complex and the orbital definitions in the valence bond calculation do not meet the requirements of GUESS=AUTO, and there are no available valence bond orbitals to read in, we recommend that users employ GUESS=MO or GUESS=NBO. Although these schemes are more complicated to use, in principle they can be applied to all systems and all orbital definition methods.