-
Notifications
You must be signed in to change notification settings - Fork 0
Calculation with IVO
- Virtual orbitals often consist of physically meaningless orbitals when you configure kramers pairs by using the DIRAC Hartree-Fock (HF) calculation.
- Therefore, we recommend that you use the IVO program if you want to do a high accuracy calculation or a calculation in which virtual orbitals are important.
- A DFPCMO file is required.
- It can be obtained by DIRAC calculation with the .PCMOUT option
- The DFPCMO file contains information such as the coefficients of atomic orbitals that constitute all kramers pair with energy eigenvalues after the HF calculation.
- An IVO input requires following additional options compared to a CASPT2 input.
- nvcut
- nocc
- We will show you a specific example of IVO calculation for H2O.
-
Do a DIRAC calculation
For example, if you want to include molecular orbitals from -21 to 10 a.u. in the dyall.cv2z basis,
you should write an input file H2O.inp and a molecular coordinate file H2O.xyz as follows.
(**GENERAL and .PCMOUT are required to obtain the files required for IVO calculation)H2O.inp
**DIRAC .TITLE H2O .WAVE FUNCTION .4INDEX **GENERAL .PCMOUT **HAMILTONIAN .X2C **WAVE FUNCTIONS .SCF **MOLTRA .ACTIVE energy -21 10 1.0 **MOLECULE *BASIS .DEFAULT dyall.cv2z *END OF
H2O.xyz
3 O 0.0000000000 0.0000000000 0.1173000000 H 0.0000000000 0.7572000000 -0.4692000000 H 0.0000000000 -0.7572000000 -0.4692000000
Then, execute DIRAC. get the required files for IVO calculation by using the --get option.
pam --inp H2O.inp --mol H2O.xyz --get "MDCIN* MRCONEE DFPCMO"
-
Calculate the number of options required for the IVO calculation
Calculate the number of options required for the IVO calculation by looking at the output of the DIRAC calculation (in this example, H2O_H2O.out) after the HF calculation and the MOLTRA section of the DIRAC input.
Output of Eigenvalues (a part of H2O_H2O.out)
Eigenvalues ----------- * Fermion symmetry E1 * Closed shell, f = 1.0000 -20.57500754273 ( 2) -1.35172922939 ( 2) -0.71498912659 ( 2) -0.58119064918 ( 2) -0.50652470586 ( 2) * Virtual eigenvalues, f = 0.0000 0.12525462441 ( 2) 0.17612481281 ( 2) 0.46977812299 ( 2) 0.49282079306 ( 2) 0.57491000440 ( 2) 0.58209044380 ( 2) 0.72423736575 ( 2) 0.97554667261 ( 2) 1.07928357170 ( 2) 1.08469378960 ( 2) 1.21156563991 ( 2) 1.40251793839 ( 2) 1.53675468132 ( 2) 1.54751376936 ( 2) 1.81141432192 ( 2) 1.90171844237 ( 2) 2.63508749104 ( 2) 2.65687044685 ( 2) 2.75223448746 ( 2) 3.20842976524 ( 2) 3.23448391408 ( 2) 3.35078432406 ( 2) 3.76427935481 ( 2) 4.19569893573 ( 2) 5.22135505596 ( 2) 6.00805748934 ( 2) 6.04778937084 ( 2) 9.21699232841 ( 2) 9.26352940970 ( 2) 9.35582919086 ( 2) 22.14166797116 ( 2) 25.90929699167 ( 2) 25.91883181292 ( 2) 33.60701904118 ( 2) 33.66971511412 ( 2) 33.74804236016 ( 2) 86.86350449127 ( 2) 151.87963183828 ( 2) 152.20644225041 ( 2) 152.25499148390 ( 2) 156.77073309599 ( 2) 156.77777968817 ( 2) 311.81506155511 ( 2) 1135.43611542724 ( 2) 4467.59310146718 ( 2) 19534.72031201707 ( 2)
You don't need to divide into gerade and ungerade because Fermion symmetry is E1 in this example. Therefore, you need to consider the values of nvcut and nocc.
-
nocc
- Set the number of closed shell eigenvalues in Eigenvalues. nocc=5
-
nvcut
- Set the number of virtual eigenvalues that are not included in the MOLTRA section of the Eigenvalues.
- The total number of virtual eigenvalues in the output is 46, but in this example, the molecular orbitals from -21 to 10 a.u. are included, so the number of molecular orbitals after 9.35582919086 a.u. is not included in nvcut.
- Therefore, if you count the number of molecular orbitals after 9.35582919086 a.u., nvcut=16.
- Set the number of virtual eigenvalues that are not included in the MOLTRA section of the Eigenvalues.
Also, options such as nact and nsec are determined as follows.
- ninact
- It is recommended to set 0 in the IVO calculation.
- nact
- Set the number of spinors included in the MOLTRA section of the closed shell eigenvalues.
- In this example, all spinors are included, so nact=10.
- Set the number of spinors included in the MOLTRA section of the closed shell eigenvalues.
- nsec
- Set the number of spinors included in the MOLTRA section of the virtual eigenvalues.
- In this example, 30 molecular orbitals up to 9.35582919086 a.u. are included in the MOLTRA section, so nsec=60.
- Set the number of spinors included in the MOLTRA section of the virtual eigenvalues.
- nelec
- It is recommended to be equal to nact in the IVO calculation.
Therefore, the IVO input file is as follows.
.ninact 0 .nact 10 .nsec 60 .nelec 10 .nocc 5 .nvcut 16 .diracver 21 end
-
-
Execute the IVO calculation
- To execute the IVO calculation, pass the --ivo option to the dcaspt2 command.
- The new DFPCMO file after the IVO calculation is output as DFPCMONEW, so use the --get option to obtain it.
dcaspt2 --ivo --inp active.ivo.inp --get "DFPCMONEW"