Différences entre les versions de « General guidelines for BOVB calculations »
Ligne 1 : | Ligne 1 : | ||
= = | = = | ||
− | === | + | === Active space === |
− | + | First, choose an active system of orbitals/electrons in the molecule under study. This is the part of the molecule that will be treated in a VB way : for example the bonds that are made/broken in a reaction, or the orbitals whose occupancy varies in a series of resonating VB structures. The occupancies of the active orbitals will change from one VB structure to the other. The other orbitals, called « inactive » or « spectator », are those that keep the same occupancy in all VB structures. | |
− | + | ||
− | + | === BOVB levels === | |
− | + | Each active orbital must be defined as localized, either on a single atom or on a fragment (recommended, see next section below). The inactive orbitals may be kept localized (L-VBSCF or L-BOVB) or allowed to delocalize on the whole molecule (D-VBSCF or D-BOVB). Better accuracy is obtained in this latter case. Last, in the ionic structures the doubly occupied active orbitals may be "splitted" for a better description, leading to the S-BOVB (if inactive are kept localized) and SD-BOVB levels. | |
− | |||
− | |||
− | === | + | === Recommended definition for the orbital blocks === |
− | + | These rules leads to the definition of "orbital blocks" : | |
− | * | + | * From your active orbitals divide your molecule into fragments, such as each pair of active orbitals involved into a covalent coupling in one of the structure should belong to a different fragment ; |
− | |||
* To each fragment is associated a localization space : the orbitals belonging to a specific localization space can only span the basis functions centered onto atoms belonging to this fragment ; | * To each fragment is associated a localization space : the orbitals belonging to a specific localization space can only span the basis functions centered onto atoms belonging to this fragment ; | ||
* The different localization spaces may then be further divided according to the symmetry of the molecule (<math>\sigma</math>/<math>\pi</math> separation for instance), which provides the different orbital blocks. | * The different localization spaces may then be further divided according to the symmetry of the molecule (<math>\sigma</math>/<math>\pi</math> separation for instance), which provides the different orbital blocks. | ||
+ | |||
+ | Then it is recommended that at the VBSCF and L-BOVB levels all your orbitals, active and inactive, belongs to one of these orbital blocks according to their localization. This will lead to more stable wave functions. | ||
{| class="collapsible collapsed wikitable" | {| class="collapsible collapsed wikitable" | ||
Ligne 21 : | Ligne 20 : | ||
|- | |- | ||
| | | | ||
+ | * within this definition all orbitals will be fragment orbitals, and both active/inactives orbitals belonging to the same orbital block will share the same definition in terms of basis function expansion ; | ||
* if this definition is strictly followed, there is no common basis functions between orbital blocks ; | * if this definition is strictly followed, there is no common basis functions between orbital blocks ; | ||
* orbital blocks belonging to different localization spaces and containing only inactive orbitals can be grouped together (see example 2 below) | * orbital blocks belonging to different localization spaces and containing only inactive orbitals can be grouped together (see example 2 below) | ||
Ligne 34 : | Ligne 34 : | ||
| | | | ||
# for the F<sub>2</sub> molecule, six blocks can be defined : <math>\sigma</math>(F<sub>1</sub>), <math>\pi_{x}</math>(F<sub>1</sub>), <math>\pi_{y}</math>(F<sub>1</sub>), <math>\sigma</math>(F<sub>2</sub>), <math>\pi_{x}</math>(F<sub>2</sub>), <math>\pi_{y}</math>(F<sub>2</sub>) | # for the F<sub>2</sub> molecule, six blocks can be defined : <math>\sigma</math>(F<sub>1</sub>), <math>\pi_{x}</math>(F<sub>1</sub>), <math>\pi_{y}</math>(F<sub>1</sub>), <math>\sigma</math>(F<sub>2</sub>), <math>\pi_{x}</math>(F<sub>2</sub>), <math>\pi_{y}</math>(F<sub>2</sub>) | ||
− | # However, if the <math>\sigma</math> bond is taken as the active electron pair, four blocks could as well be used from the beginning : <math>\sigma</math>(F<sub>1</sub>), <math>\sigma</math>(F<sub>2</sub>), <math>\pi_{x}</math>(F<sub>1</sub>-F<sub>2</sub>), <math>\pi_{y}</math>(F<sub>1</sub>-F<sub>2</sub>) | + | # However, if the <math>\sigma</math> bond is taken as the active electron pair, four blocks could as well be used from the beginning : <math>\sigma</math>(F<sub>1</sub>), <math>\sigma</math>(F<sub>2</sub>), <math>\pi_{x}</math>(F<sub>1</sub>-F<sub>2</sub>), <math>\pi_{y}</math>(F<sub>1</sub>-F<sub>2</sub>). Then, you can choose to keep the <math>\sigma</math> lone pair localized all along the calculation (as its delocalization brings very minor energy lowering), this level has been referred to as π-D-VBSCF and π-D-BOVB ; |
# for the (Me<sub>3</sub>)C-Cl molecule, where we choose the C-Cl bond to be the active electron pair, the inactive orbitals are defined on the (Me<sub>3</sub>)C and Cl fragments respectively | # for the (Me<sub>3</sub>)C-Cl molecule, where we choose the C-Cl bond to be the active electron pair, the inactive orbitals are defined on the (Me<sub>3</sub>)C and Cl fragments respectively | ||
# for Cl-(Me<sub>3</sub>)C-Cl<sup>-</sup> SN2 transition state, the two Cl-C and C-Cl bonds are chosen as active pairs, which in turns define three fragments : Cl<sub>1</sub> / (Me<sub>3</sub>)C / Cl<sub>2 | # for Cl-(Me<sub>3</sub>)C-Cl<sup>-</sup> SN2 transition state, the two Cl-C and C-Cl bonds are chosen as active pairs, which in turns define three fragments : Cl<sub>1</sub> / (Me<sub>3</sub>)C / Cl<sub>2 | ||
Ligne 44 : | Ligne 44 : | ||
# Perform a ("L") VBSCF calculation together with the keyword ''boys'' in the $orb section ; | # Perform a ("L") VBSCF calculation together with the keyword ''boys'' in the $orb section ; | ||
# perform the L-BOVB calculation, '''''always''''' starting from converged VBSCF orbitals ; | # perform the L-BOVB calculation, '''''always''''' starting from converged VBSCF orbitals ; | ||
− | # then perform the D-BOVB calculation : starting from the converged L-BOVB orbital as guess, | + | # then perform the D-BOVB calculation : starting from the converged L-BOVB orbital 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). |
{| class="collapsible collapsed wikitable" | {| class="collapsible collapsed wikitable" | ||
Ligne 55 : | Ligne 55 : | ||
[[The SD_BOVB method|>> How to perform a SD-BOVB calculation (advanced user)]] | [[The SD_BOVB method|>> How to perform a SD-BOVB calculation (advanced user)]] | ||
+ | |||
+ | === General advices === | ||
+ | * Do not use diffuse functions unless you deal with an anion, and do not use larger than triple-zeta basis sets | ||
+ | * Impose a high molecular symmetry if possible (case of a distorted molecule which slightly departs from a higher symmetry point group) ; | ||
+ | * Use ''orbtyp=hao'' together with ''fragtyp=sao'' as soon as you have some <math>\sigma</math>/<math>\pi</math> symmetry in your molecule, | ||
+ | * In the $ctrl section of the XMVB input, you should use the "iscf=5" algorithm for VBSCF calculations, and change it to "iscf=2" for BOVB calculations. | ||
+ | * Use the ''boys'' keyword at the VBSCF step, as it provides more physically meaningful orbitals for the subsequent BOVB calculations (this is particularly important if you want to go up to the S- or SD-BOVB levels) | ||
+ | * Always use a set of converged orbitals from the preceding step, ex : use converged VBSCF orbitals to start a L-BOVB calculation, converged L-BOVB to start a S-BOVB or a D-BOVB calculation, and converged S-BOVB orbitals to start a SD-BOVB calculation. | ||
{| class="collapsible collapsed wikitable" | {| class="collapsible collapsed wikitable" | ||
Ligne 61 : | Ligne 69 : | ||
|- | |- | ||
| | | | ||
+ | Sometimes, BOVB calculations are subject to instabilities that it is important to detect. They may manifest as incredibly high bonding energies, generally associated with strongly negative weights of the VB structures according to the Choiirgwin-Coulson definition. Then, how I know whether or not my BOVB calculation went well ? | ||
− | |||
'''Check the following quantities : | '''Check the following quantities : | ||
* The BOVB weights should not change dramatically as compared with VBSCF weights (not more than +/- ~5%) ; | * The BOVB weights should not change dramatically as compared with VBSCF weights (not more than +/- ~5%) ; | ||
Ligne 70 : | Ligne 78 : | ||
* the orbital overlap (in the ".xdat" file) between active orbitals : corresponding active orbitals in different structures should have almost 1. overlap (~0.98/0.99x). When it is not the case : inspect the corresponding orbital to check what it has become | * the orbital overlap (in the ".xdat" file) between active orbitals : corresponding active orbitals in different structures should have almost 1. overlap (~0.98/0.99x). When it is not the case : inspect the corresponding orbital to check what it has become | ||
− | + | '''What can I do if I encounter an instability or convergence issue ?''' | |
− | + | ||
− | * Did I use a non-redundant description, and in particular did I kept my active orbitals all strictly localized | + | Check the following points : |
+ | * Did I use a non-redundant description, and in particular did I kept my active orbitals all strictly localized ? | ||
* Did I ask for boys localization at the initial VBSCF step ? | * Did I ask for boys localization at the initial VBSCF step ? | ||
* Did I start the different steps of BOVB calculations from orbital properly converged from the previous step ? | * Did I start the different steps of BOVB calculations from orbital properly converged from the previous step ? | ||
Ligne 78 : | Ligne 87 : | ||
* Did I use a basis set with diffuse functions, or a basis set larger than triple-zeta (which could cause trouble) ? | * Did I use a basis set with diffuse functions, or a basis set larger than triple-zeta (which could cause trouble) ? | ||
* Generally speaking : did I '''''precisely''''' follow the guidelines and procedure described above ? | * Generally speaking : did I '''''precisely''''' follow the guidelines and procedure described above ? | ||
− | + | ||
+ | '''How to cure the problem - if I haven't done any particular "mistake" :''' | ||
* try, if possible, to work in a higher symmetry point group for your molecule ; | * try, if possible, to work in a higher symmetry point group for your molecule ; | ||
− | |||
* try to restart from the VBSCF level with another orbital guess (localized MOs for instance) ; | * try to restart from the VBSCF level with another orbital guess (localized MOs for instance) ; | ||
+ | * try to modify slightly the definition of the wave-function, and proceed step-by-step : | ||
+ | ** in a first VBSCF step : localize further the inactive orbitals if possible, and use active orbitals localized on one atom instead of a fragment. Together with the ''boys'' option, this step should generate clean and physically meaningful orbitals ; | ||
+ | ** then, in a second VBSCF step : delocalize your active/inactive orbitals onto fragments, using as closely as possible the above recommendation for the definition of your orbital blocks. | ||
* try to work in a different basis set. | * try to work in a different basis set. | ||
− | |||
|} | |} |
Version du 1 juillet 2012 à 02:36
Active space
First, choose an active system of orbitals/electrons in the molecule under study. This is the part of the molecule that will be treated in a VB way : for example the bonds that are made/broken in a reaction, or the orbitals whose occupancy varies in a series of resonating VB structures. The occupancies of the active orbitals will change from one VB structure to the other. The other orbitals, called « inactive » or « spectator », are those that keep the same occupancy in all VB structures.
BOVB levels
Each active orbital must be defined as localized, either on a single atom or on a fragment (recommended, see next section below). The inactive orbitals may be kept localized (L-VBSCF or L-BOVB) or allowed to delocalize on the whole molecule (D-VBSCF or D-BOVB). Better accuracy is obtained in this latter case. Last, in the ionic structures the doubly occupied active orbitals may be "splitted" for a better description, leading to the S-BOVB (if inactive are kept localized) and SD-BOVB levels.
Recommended definition for the orbital blocks
These rules leads to the definition of "orbital blocks" :
- From your active orbitals divide your molecule into fragments, such as each pair of active orbitals involved into a covalent coupling in one of the structure should belong to a different fragment ;
- To each fragment is associated a localization space : the orbitals belonging to a specific localization space can only span the basis functions centered onto atoms belonging to this fragment ;
- The different localization spaces may then be further divided according to the symmetry of the molecule (<math>\sigma</math>/<math>\pi</math> separation for instance), which provides the different orbital blocks.
Then it is recommended that at the VBSCF and L-BOVB levels all your orbitals, active and inactive, belongs to one of these orbital blocks according to their localization. This will lead to more stable wave functions.
Remarks : |
---|
Of course, it is not always reasonable to strictly follow this definition for orbital blocks, as it cause in some cases some important physical interactions described by some inactive orbitals to be broken (for instance, if it leads to break a bond described by an inactive MO). In such cases, you may need to define different orbital blocks for inactive and active orbitals which will share some basis functions in common. This might lead in some cases to convergence issues or instabilities (orbital flipping for instance). |
Exemples : |
---|
|
Procedure
To perform a D-BOVB calculation :
- Perform a ("L") VBSCF calculation together with the keyword boys in the $orb section ;
- perform the L-BOVB calculation, always starting from converged VBSCF orbitals ;
- then perform the D-BOVB calculation : starting from the converged L-BOVB orbital 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).
Remark : |
---|
In the particular case where all orbital blocks contain only either active or inactive orbitals, all blocks containing inactive orbitals could be grouped into a single one, and then one works at the "D" level from the start (D-VBSCF, then D-BOVB calculation). This is the case for instance when there is a <math>\sigma</math>/<math>\pi</math> separation in your molecule with all (and only) <math>\pi</math> pairs taken as active (see tutorial 2 exercises). |
>> How to perform a SD-BOVB calculation (advanced user)
General advices
- Do not use diffuse functions unless you deal with an anion, and do not use larger than triple-zeta basis sets
- Impose a high molecular symmetry if possible (case of a distorted molecule which slightly departs from a higher symmetry point group) ;
- Use orbtyp=hao together with fragtyp=sao as soon as you have some <math>\sigma</math>/<math>\pi</math> symmetry in your molecule,
- In the $ctrl section of the XMVB input, you should use the "iscf=5" algorithm for VBSCF calculations, and change it to "iscf=2" for BOVB calculations.
- Use the boys keyword at the VBSCF step, as it provides more physically meaningful orbitals for the subsequent BOVB calculations (this is particularly important if you want to go up to the S- or SD-BOVB levels)
- Always use a set of converged orbitals from the preceding step, ex : use converged VBSCF orbitals to start a L-BOVB calculation, converged L-BOVB to start a S-BOVB or a D-BOVB calculation, and converged S-BOVB orbitals to start a SD-BOVB calculation.
Convergence issues |
---|
Sometimes, BOVB calculations are subject to instabilities that it is important to detect. They may manifest as incredibly high bonding energies, generally associated with strongly negative weights of the VB structures according to the Choiirgwin-Coulson definition. Then, how I know whether or not my BOVB calculation went well ? Check the following quantities :
What can I do if I encounter an instability or convergence issue ? Check the following points :
How to cure the problem - if I haven't done any particular "mistake" :
|