Différences entre les versions de « The SD BOVB method »

De Workshops
Aller à la navigation Aller à la recherche
Ligne 12 : Ligne 12 :
 
=== How to proceed - HF example ===
 
=== How to proceed - HF example ===
  
To go from the L-BOVB to the S-BOVB level, one will have to start from the converged orbitals obtained at the L-BOVB level as a guess, and then modify it manually by duplicating the active doubly occupied orbitals (split them), and modify them slightly in order to differentiate them (we recommend to operate on the larger basis function coefficient, making it larger in one of the split pair orbital and smaller on the other, in order to make one of these orbital more contracted and the other more diffuse). Then, optimize this wave function by '''''freezing the inactive orbitals'''''.
+
To go from the L-BOVB to the SL-BOVB level, one has to prepare a guess, that will be obtained by transforming a former guess arising from a converged LBOVB calculation. The transformation is done manually by first duplicating each active doubly occupied orbital of the VB structure that is to be described at the SL-BOVB level. Then, for each lone pair, one of the split orbital is manually made more compact, an the other more diffuse, by playing with the coefficients of the basis functions. This does not need to be done accurately (this is only a guess). A convenient way of doing this is to play only with the coefficient of the most diffuse basis function, and leaving the other ones unchanged. Once this guess is prepared, the two electrons of each split lone pair are coupled in a singlet way in the input, and the optimizization of this wave function is launched  '''''freezing the inactive orbitals'''''.
  
In order to best understand the procedure, we recommend to look to a simple example like the HF molecule, and compare the L-BOVB definition and .orb file with the S-BOVB definition and .gus file. Corresponding files for the S-BOVB calculation could be found in the tutorial machines here :  
+
An example of SL-BOVB calculation on the HF molecule can be found in the following directory :  
 
  EXERCISES/TUTORIAL1/EXERCISE2/question2/answer/.SBOVB
 
  EXERCISES/TUTORIAL1/EXERCISE2/question2/answer/.SBOVB
 +
Thus, the input for the SL-BOVB calculation is in … answer/.SBOVB/hf-sbovb.xmi, and the guess for running the corresponding calculation is in …answer/.SBOVB/hf-sbovb.gus. This latter guess is obtained by transforming the .orb file of the converged L-BOVB calculation, which can be found in …/answer/ hf-lbovb.orb.
  
As can be seen in this example, the L-BOVB level, which will directly transfer to a ~5 kcal/mol improvement on the Bond Energy as both L-BOVB and S-BOVB dissociate to H plus F atoms calculated separately at the RHF level in gas phase.
+
It can be seen that the SL-BOVB wave function is lower than the L-BOVB one by ~5 kcal/mol. As both wave functions dissociate to the same limit (H plus F atoms calculated separately at the ROHF level), the improvement on the total energy carries over to the bonding energy, which is found greater at the SL-BOVB than at the L-BOVB level.
  
 
=== IMPORTANT WARNINGS ===
 
=== IMPORTANT WARNINGS ===

Version du 10 juillet 2012 à 17:18

<<< Back to the "general guidelines for BOVB calculations"


Definition of the S-BOVB level

"S" is the acronym for "split". At this level, in each VB structure, all the active orbitals which are doubly occupied at the L-BOVB level are "split", i.e. they are replaced by a pair of singlet-coupled electrons in two different orbitals located on the same center. Here is below a pictorial example for the F-F+ ionic structure of difluorine dimer. This allows for the inclusion of some radial correlation within the active electron pairs.

F+F-.jpg

How to proceed - HF example

To go from the L-BOVB to the SL-BOVB level, one has to prepare a guess, that will be obtained by transforming a former guess arising from a converged LBOVB calculation. The transformation is done manually by first duplicating each active doubly occupied orbital of the VB structure that is to be described at the SL-BOVB level. Then, for each lone pair, one of the split orbital is manually made more compact, an the other more diffuse, by playing with the coefficients of the basis functions. This does not need to be done accurately (this is only a guess). A convenient way of doing this is to play only with the coefficient of the most diffuse basis function, and leaving the other ones unchanged. Once this guess is prepared, the two electrons of each split lone pair are coupled in a singlet way in the input, and the optimizization of this wave function is launched freezing the inactive orbitals.

An example of SL-BOVB calculation on the HF molecule can be found in the following directory :

EXERCISES/TUTORIAL1/EXERCISE2/question2/answer/.SBOVB

Thus, the input for the SL-BOVB calculation is in … answer/.SBOVB/hf-sbovb.xmi, and the guess for running the corresponding calculation is in …answer/.SBOVB/hf-sbovb.gus. This latter guess is obtained by transforming the .orb file of the converged L-BOVB calculation, which can be found in …/answer/ hf-lbovb.orb.

It can be seen that the SL-BOVB wave function is lower than the L-BOVB one by ~5 kcal/mol. As both wave functions dissociate to the same limit (H plus F atoms calculated separately at the ROHF level), the improvement on the total energy carries over to the bonding energy, which is found greater at the SL-BOVB than at the L-BOVB level.

IMPORTANT WARNINGS

  • The S-BOVB method is REALLY a Valence Bond expert level. You should have some significant experience with D-BOVB calculations before trying S- and SD-BOVB ones.
  • It is EXTREMELY important to start from a good orbital guess, otherwise misconvergence or, more importantly, convergence on secondary minima or unphysical solutions will happens. In particular :
    • the "boys" keyword MUST be used at the initial VBSCF level, as it will ensures that the splitted orbital really physically correspond to your active pair, and not an inactive pair sharing the same orbital definition (for instance : to distinguish between the 2s lone pair of Fluorine and the sigma active orbital in F2 or HF molecules).
    • a converged L-BOVB solution must be used as a guess for the S-BOVB level
    • you should modify the guess orbitals for the splitted pairs intelligently, as a dumb modification usually ends to an unphysical S-BOVB solution

SD-BOVB calculations

General case (low symmetry):

  1. Perform a ("L") VBSCF calculation together with the keyword boys in the $orb section ;
  2. perform the L-BOVB calculation, starting from converged VBSCF orbitals ;
  3. perform the S-BOVB calculation : starting from the converged L-BOVB orbital as guess with splitted and modified doubly occupied active pairs as explained above, run the calculation by optimizing the active orbitals, while freezing the inactive orbitals during the optimization (put "0" as coefficient in first $orb line) ;
  4. then perform the SD-BOVB calculation : starting from the converged S-BOVB orbitals as guess, run the calculation by optimizing the delocalized inactive orbitals, while freezing the active orbitals during the optimization (put "0" as coefficient in first $orb line).

As an example, see the SD-BOVB calculation on the F2 molecule in the tutorial machines here :

EXERCISES/TUTORIAL1/EXERCISE3/question3/answer/.SD-BOVB

We obtain a bonding energy of 37.1 kcal/mol at the SD-BOVB level using the 6-31G(d) basis set, already very close to the estimated exact value of 39.0 kcal/mol.

High symmetry case:

  1. Perform a π-D-VBSCF calculation together with the keyword boys in the $orb section ;
  2. perform a π-D-BOVB calculation, starting from converged VBSCF orbitals ;
  3. perform the π-SD-BOVB calculation in two steps :
    1. step1 : starting from the converged π-D-BOVB orbitals as guess with splitted and modified doubly occupied active pairs as explained above, run the calculation by optimizing the active orbitals, while freezing the inactive orbitals during the optimization (put "0" as coefficient in first $orb line) ;
    2. step2 : then restarting from the converged orbitals obtained at the previous step, optimizing all orbitals (both active and inactive) at the same time.

As an example, see the π-SD-BOVB calculation on the F2 molecule in the tutorial machines here :

EXERCISES/TUTORIAL1/EXERCISE3/question3/answer/.PI-SD-BOVB

You may compare these calculations to the previous example.