mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-12-21 11:03:29 +01:00
Documentation
This commit is contained in:
parent
8b22e38c9c
commit
c527a2bd29
@ -186,23 +186,28 @@ def generate_index(entities):
|
|||||||
with open(rst_file,'w') as f:
|
with open(rst_file,'w') as f:
|
||||||
rst = [ "Index of Providers",
|
rst = [ "Index of Providers",
|
||||||
"------------------",
|
"------------------",
|
||||||
"" ]
|
"",
|
||||||
|
".. hlist::",
|
||||||
|
""]
|
||||||
|
|
||||||
for e in sorted(entities.keys()):
|
for e in sorted(entities.keys()):
|
||||||
e = entities[e]
|
e = entities[e]
|
||||||
if e["type"] == 'p':
|
if e["type"] == 'p':
|
||||||
rst.append("* :c:data:`%s`" % (e["name"]))
|
rst.append(" * :c:data:`%s`" % (e["name"]))
|
||||||
|
|
||||||
rst += [ "",
|
rst += [ "","",
|
||||||
"Index of Subroutines/Functions",
|
"Index of Subroutines/Functions",
|
||||||
"------------------------------",
|
"------------------------------",
|
||||||
|
"",
|
||||||
|
".. hlist::",
|
||||||
"" ]
|
"" ]
|
||||||
|
|
||||||
for e in sorted(entities.keys()):
|
for e in sorted(entities.keys()):
|
||||||
e = entities[e]
|
e = entities[e]
|
||||||
if e["type"] == 's':
|
if e["type"] == 's':
|
||||||
rst.append("* :c:func:`%s`" % (e["name"]))
|
rst.append(" * :c:func:`%s`" % (e["name"]))
|
||||||
|
|
||||||
|
rst.append("\n")
|
||||||
f.write(" \n".join(rst))
|
f.write(" \n".join(rst))
|
||||||
|
|
||||||
|
|
||||||
|
@ -27,7 +27,6 @@
|
|||||||
users_guide/natural_orbitals
|
users_guide/natural_orbitals
|
||||||
users_guide/printing
|
users_guide/printing
|
||||||
users_guide/plugins
|
users_guide/plugins
|
||||||
users_guide/qp_plugins
|
|
||||||
users_guide/index
|
users_guide/index
|
||||||
|
|
||||||
|
|
||||||
|
@ -387,6 +387,320 @@ Providers
|
|||||||
* :c:data:`energy_x_sr_pbe`
|
* :c:data:`energy_x_sr_pbe`
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: potential_sr_c_alpha_ao_lda
|
||||||
|
|
||||||
|
|
||||||
|
File : :file:`dft_utils_one_e/sr_pot_ao_lda.irp.f`
|
||||||
|
|
||||||
|
.. code:: fortran
|
||||||
|
|
||||||
|
double precision, allocatable :: potential_sr_c_alpha_ao_lda (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_c_beta_ao_lda (ao_num,ao_num,N_states)
|
||||||
|
|
||||||
|
|
||||||
|
short range correlation alpha/beta potentials with LDA functional on the |AO| basis
|
||||||
|
|
||||||
|
Needs:
|
||||||
|
|
||||||
|
.. hlist::
|
||||||
|
:columns: 3
|
||||||
|
|
||||||
|
* :c:data:`ao_num`
|
||||||
|
* :c:data:`aos_in_r_array`
|
||||||
|
* :c:data:`aos_sr_vc_alpha_lda_w`
|
||||||
|
* :c:data:`n_points_final_grid`
|
||||||
|
* :c:data:`n_states`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: potential_sr_c_alpha_ao_pbe
|
||||||
|
|
||||||
|
|
||||||
|
File : :file:`dft_utils_one_e/sr_pot_ao_pbe.irp.f`
|
||||||
|
|
||||||
|
.. code:: fortran
|
||||||
|
|
||||||
|
double precision, allocatable :: potential_sr_x_alpha_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_x_beta_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_c_alpha_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_c_beta_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
|
||||||
|
|
||||||
|
exchange / correlation potential for alpha / beta electrons with the Perdew-Burke-Ernzerhof GGA functional
|
||||||
|
|
||||||
|
Needs:
|
||||||
|
|
||||||
|
.. hlist::
|
||||||
|
:columns: 3
|
||||||
|
|
||||||
|
* :c:data:`ao_num`
|
||||||
|
* :c:data:`n_states`
|
||||||
|
* :c:data:`pot_sr_grad_x_alpha_ao_pbe`
|
||||||
|
* :c:data:`pot_sr_scal_x_alpha_ao_pbe`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: potential_sr_c_beta_ao_lda
|
||||||
|
|
||||||
|
|
||||||
|
File : :file:`dft_utils_one_e/sr_pot_ao_lda.irp.f`
|
||||||
|
|
||||||
|
.. code:: fortran
|
||||||
|
|
||||||
|
double precision, allocatable :: potential_sr_c_alpha_ao_lda (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_c_beta_ao_lda (ao_num,ao_num,N_states)
|
||||||
|
|
||||||
|
|
||||||
|
short range correlation alpha/beta potentials with LDA functional on the |AO| basis
|
||||||
|
|
||||||
|
Needs:
|
||||||
|
|
||||||
|
.. hlist::
|
||||||
|
:columns: 3
|
||||||
|
|
||||||
|
* :c:data:`ao_num`
|
||||||
|
* :c:data:`aos_in_r_array`
|
||||||
|
* :c:data:`aos_sr_vc_alpha_lda_w`
|
||||||
|
* :c:data:`n_points_final_grid`
|
||||||
|
* :c:data:`n_states`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: potential_sr_c_beta_ao_pbe
|
||||||
|
|
||||||
|
|
||||||
|
File : :file:`dft_utils_one_e/sr_pot_ao_pbe.irp.f`
|
||||||
|
|
||||||
|
.. code:: fortran
|
||||||
|
|
||||||
|
double precision, allocatable :: potential_sr_x_alpha_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_x_beta_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_c_alpha_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_c_beta_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
|
||||||
|
|
||||||
|
exchange / correlation potential for alpha / beta electrons with the Perdew-Burke-Ernzerhof GGA functional
|
||||||
|
|
||||||
|
Needs:
|
||||||
|
|
||||||
|
.. hlist::
|
||||||
|
:columns: 3
|
||||||
|
|
||||||
|
* :c:data:`ao_num`
|
||||||
|
* :c:data:`n_states`
|
||||||
|
* :c:data:`pot_sr_grad_x_alpha_ao_pbe`
|
||||||
|
* :c:data:`pot_sr_scal_x_alpha_ao_pbe`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: potential_sr_x_alpha_ao_lda
|
||||||
|
|
||||||
|
|
||||||
|
File : :file:`dft_utils_one_e/sr_pot_ao_lda.irp.f`
|
||||||
|
|
||||||
|
.. code:: fortran
|
||||||
|
|
||||||
|
double precision, allocatable :: potential_sr_x_alpha_ao_lda (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_x_beta_ao_lda (ao_num,ao_num,N_states)
|
||||||
|
|
||||||
|
|
||||||
|
short range exchange alpha/beta potentials with LDA functional on the |AO| basis
|
||||||
|
|
||||||
|
Needs:
|
||||||
|
|
||||||
|
.. hlist::
|
||||||
|
:columns: 3
|
||||||
|
|
||||||
|
* :c:data:`ao_num`
|
||||||
|
* :c:data:`aos_in_r_array`
|
||||||
|
* :c:data:`aos_sr_vc_alpha_lda_w`
|
||||||
|
* :c:data:`n_points_final_grid`
|
||||||
|
* :c:data:`n_states`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: potential_sr_x_alpha_ao_pbe
|
||||||
|
|
||||||
|
|
||||||
|
File : :file:`dft_utils_one_e/sr_pot_ao_pbe.irp.f`
|
||||||
|
|
||||||
|
.. code:: fortran
|
||||||
|
|
||||||
|
double precision, allocatable :: potential_sr_x_alpha_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_x_beta_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_c_alpha_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_c_beta_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
|
||||||
|
|
||||||
|
exchange / correlation potential for alpha / beta electrons with the Perdew-Burke-Ernzerhof GGA functional
|
||||||
|
|
||||||
|
Needs:
|
||||||
|
|
||||||
|
.. hlist::
|
||||||
|
:columns: 3
|
||||||
|
|
||||||
|
* :c:data:`ao_num`
|
||||||
|
* :c:data:`n_states`
|
||||||
|
* :c:data:`pot_sr_grad_x_alpha_ao_pbe`
|
||||||
|
* :c:data:`pot_sr_scal_x_alpha_ao_pbe`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: potential_sr_x_beta_ao_lda
|
||||||
|
|
||||||
|
|
||||||
|
File : :file:`dft_utils_one_e/sr_pot_ao_lda.irp.f`
|
||||||
|
|
||||||
|
.. code:: fortran
|
||||||
|
|
||||||
|
double precision, allocatable :: potential_sr_x_alpha_ao_lda (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_x_beta_ao_lda (ao_num,ao_num,N_states)
|
||||||
|
|
||||||
|
|
||||||
|
short range exchange alpha/beta potentials with LDA functional on the |AO| basis
|
||||||
|
|
||||||
|
Needs:
|
||||||
|
|
||||||
|
.. hlist::
|
||||||
|
:columns: 3
|
||||||
|
|
||||||
|
* :c:data:`ao_num`
|
||||||
|
* :c:data:`aos_in_r_array`
|
||||||
|
* :c:data:`aos_sr_vc_alpha_lda_w`
|
||||||
|
* :c:data:`n_points_final_grid`
|
||||||
|
* :c:data:`n_states`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: potential_sr_x_beta_ao_pbe
|
||||||
|
|
||||||
|
|
||||||
|
File : :file:`dft_utils_one_e/sr_pot_ao_pbe.irp.f`
|
||||||
|
|
||||||
|
.. code:: fortran
|
||||||
|
|
||||||
|
double precision, allocatable :: potential_sr_x_alpha_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_x_beta_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_c_alpha_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_c_beta_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
|
||||||
|
|
||||||
|
exchange / correlation potential for alpha / beta electrons with the Perdew-Burke-Ernzerhof GGA functional
|
||||||
|
|
||||||
|
Needs:
|
||||||
|
|
||||||
|
.. hlist::
|
||||||
|
:columns: 3
|
||||||
|
|
||||||
|
* :c:data:`ao_num`
|
||||||
|
* :c:data:`n_states`
|
||||||
|
* :c:data:`pot_sr_grad_x_alpha_ao_pbe`
|
||||||
|
* :c:data:`pot_sr_scal_x_alpha_ao_pbe`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: potential_sr_xc_alpha_ao_lda
|
||||||
|
|
||||||
|
|
||||||
|
File : :file:`dft_utils_one_e/sr_pot_ao_lda_smashed.irp.f`
|
||||||
|
|
||||||
|
.. code:: fortran
|
||||||
|
|
||||||
|
double precision, allocatable :: potential_sr_xc_alpha_ao_lda (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_xc_beta_ao_lda (ao_num,ao_num,N_states)
|
||||||
|
|
||||||
|
|
||||||
|
short range exchange/correlation alpha/beta potentials with LDA functional on the AO basis
|
||||||
|
|
||||||
|
Needs:
|
||||||
|
|
||||||
|
.. hlist::
|
||||||
|
:columns: 3
|
||||||
|
|
||||||
|
* :c:data:`ao_num`
|
||||||
|
* :c:data:`aos_in_r_array`
|
||||||
|
* :c:data:`aos_sr_vxc_alpha_lda_w`
|
||||||
|
* :c:data:`n_points_final_grid`
|
||||||
|
* :c:data:`n_states`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: potential_sr_xc_alpha_ao_pbe
|
||||||
|
|
||||||
|
|
||||||
|
File : :file:`dft_utils_one_e/sr_pot_ao_pbe_smashed.irp.f`
|
||||||
|
|
||||||
|
.. code:: fortran
|
||||||
|
|
||||||
|
double precision, allocatable :: potential_sr_xc_alpha_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_xc_beta_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
|
||||||
|
|
||||||
|
exchange / correlation potential for alpha / beta electrons with the Perdew-Burke-Ernzerhof GGA functional
|
||||||
|
|
||||||
|
Needs:
|
||||||
|
|
||||||
|
.. hlist::
|
||||||
|
:columns: 3
|
||||||
|
|
||||||
|
* :c:data:`ao_num`
|
||||||
|
* :c:data:`n_states`
|
||||||
|
* :c:data:`pot_sr_grad_xc_alpha_ao_pbe`
|
||||||
|
* :c:data:`pot_sr_scal_xc_alpha_ao_pbe`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: potential_sr_xc_beta_ao_lda
|
||||||
|
|
||||||
|
|
||||||
|
File : :file:`dft_utils_one_e/sr_pot_ao_lda_smashed.irp.f`
|
||||||
|
|
||||||
|
.. code:: fortran
|
||||||
|
|
||||||
|
double precision, allocatable :: potential_sr_xc_alpha_ao_lda (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_xc_beta_ao_lda (ao_num,ao_num,N_states)
|
||||||
|
|
||||||
|
|
||||||
|
short range exchange/correlation alpha/beta potentials with LDA functional on the AO basis
|
||||||
|
|
||||||
|
Needs:
|
||||||
|
|
||||||
|
.. hlist::
|
||||||
|
:columns: 3
|
||||||
|
|
||||||
|
* :c:data:`ao_num`
|
||||||
|
* :c:data:`aos_in_r_array`
|
||||||
|
* :c:data:`aos_sr_vxc_alpha_lda_w`
|
||||||
|
* :c:data:`n_points_final_grid`
|
||||||
|
* :c:data:`n_states`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: potential_sr_xc_beta_ao_pbe
|
||||||
|
|
||||||
|
|
||||||
|
File : :file:`dft_utils_one_e/sr_pot_ao_pbe_smashed.irp.f`
|
||||||
|
|
||||||
|
.. code:: fortran
|
||||||
|
|
||||||
|
double precision, allocatable :: potential_sr_xc_alpha_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
double precision, allocatable :: potential_sr_xc_beta_ao_pbe (ao_num,ao_num,N_states)
|
||||||
|
|
||||||
|
|
||||||
|
exchange / correlation potential for alpha / beta electrons with the Perdew-Burke-Ernzerhof GGA functional
|
||||||
|
|
||||||
|
Needs:
|
||||||
|
|
||||||
|
.. hlist::
|
||||||
|
:columns: 3
|
||||||
|
|
||||||
|
* :c:data:`ao_num`
|
||||||
|
* :c:data:`n_states`
|
||||||
|
* :c:data:`pot_sr_grad_xc_alpha_ao_pbe`
|
||||||
|
* :c:data:`pot_sr_scal_xc_alpha_ao_pbe`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_dft_energy_h_core
|
.. c:var:: psi_dft_energy_h_core
|
||||||
|
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -22,7 +22,7 @@ excited states of different symmetries may enter in the calculation.
|
|||||||
Note that it is possible to make state-average calculation of states
|
Note that it is possible to make state-average calculation of states
|
||||||
with different symmetries and/or different spin multiplicities.
|
with different symmetries and/or different spin multiplicities.
|
||||||
|
|
||||||
To include excited state of all possible symmetries, a simple trick is
|
To include excited states of all possible symmetries, a simple trick is
|
||||||
to run a preliminary multi-state |CIS| calculation using the :ref:`CIS`
|
to run a preliminary multi-state |CIS| calculation using the :ref:`CIS`
|
||||||
program, and then running the selected |FCI| restarting from the |CIS|
|
program, and then running the selected |FCI| restarting from the |CIS|
|
||||||
states, setting :option:`determinants read_wf` to |true|.
|
states, setting :option:`determinants read_wf` to |true|.
|
||||||
@ -34,6 +34,6 @@ convergence of excitation energies.
|
|||||||
|
|
||||||
.. seealso::
|
.. seealso::
|
||||||
|
|
||||||
The documentation of the :c:func:`scf`, :c:func:`cis` and
|
The documentation of the :ref:`scf`, :ref:`cis` and
|
||||||
:c:func:`fci` programs.
|
:ref:`fci` programs.
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ To produce state-average natural orbitals, run ::
|
|||||||
|
|
||||||
qp_run save_natorb file.ezfio
|
qp_run save_natorb file.ezfio
|
||||||
|
|
||||||
The MOs will be replaced, so the two-electron integrals and the wave
|
The |MOs| will be replaced, so the two-electron integrals and the wave
|
||||||
function are invalidated as well.
|
function are invalidated as well.
|
||||||
|
|
||||||
|
|
||||||
@ -17,16 +17,16 @@ Extracting natural orbitals
|
|||||||
---------------------------
|
---------------------------
|
||||||
|
|
||||||
Once obtained the near |FCI| wave function, one can obtain many
|
Once obtained the near |FCI| wave function, one can obtain many
|
||||||
Onquantities related to it. e of these quantities are the natural
|
quantities related to it. One of these quantities are the natural
|
||||||
Onorbitals which have the properties of diagonalizing the one-body
|
orbitals which have the propertiy of diagonalizing the one-body
|
||||||
Ondensity matrix:
|
density matrix:
|
||||||
|
|
||||||
.. math::
|
.. math::
|
||||||
|
|
||||||
\rho_{ij} = \delta_{ij}
|
\rho_{ij} = \delta_{ij}
|
||||||
|
|
||||||
where the element of the one-body density matrix :math:`\rho_{ij}` is
|
where the element of the one-body density matrix :math:`\rho_{ij}` is
|
||||||
define as:
|
defined as:
|
||||||
|
|
||||||
|
|
||||||
.. math::
|
.. math::
|
||||||
@ -50,7 +50,7 @@ Hands on
|
|||||||
.. important::
|
.. important::
|
||||||
|
|
||||||
As the |MOs| are changed, for the sake of coherence of future
|
As the |MOs| are changed, for the sake of coherence of future
|
||||||
calculations, the save_natorb program *automatically removes the
|
calculations, the :ref:`save_natorb` program *automatically removes the
|
||||||
current wave function* stored in the |EZFIO| database and replaces
|
current wave function* stored in the |EZFIO| database and replaces
|
||||||
it by a single Slater determinant corresponding to a |HF| occupation
|
it by a single Slater determinant corresponding to a |HF| occupation
|
||||||
of the new spin orbitals. Also, all the keywords to read the one-
|
of the new spin orbitals. Also, all the keywords to read the one-
|
||||||
@ -60,5 +60,5 @@ Hands on
|
|||||||
|
|
||||||
.. seealso::
|
.. seealso::
|
||||||
|
|
||||||
The documentation of the :c:func:`save_natorb` program.
|
The documentation of the :ref:`save_natorb` program.
|
||||||
|
|
||||||
|
@ -23,20 +23,18 @@ Then, look for the word *hand* when you are in the :ref:`qp_edit`
|
|||||||
mode. If the research is negative, then it means that the wave
|
mode. If the research is negative, then it means that the wave
|
||||||
function stored in the |EZFIO| database is too large to be edited
|
function stored in the |EZFIO| database is too large to be edited
|
||||||
interactively in :ref:`qp_edit` mode. An alternative is to use the
|
interactively in :ref:`qp_edit` mode. An alternative is to use the
|
||||||
:command:`print_wf` command:
|
:ref:`print_ci_vectors` program:
|
||||||
|
|
||||||
.. code::
|
.. code::
|
||||||
|
|
||||||
qp_run print_wf file.ezfio | tee file.ezfio.fci_natorb.wf
|
qp_run print_ci_vectors file.ezfio > tee file.ezfio.wf
|
||||||
|
|
||||||
This program will, by default, print out the first :math:`10^4`
|
This program will, by default, print out the full set of determinants, whatever
|
||||||
determinants whatever the size of the wave function stored in the
|
the size of the wave function stored in the |EZFIO| directory.
|
||||||
|EZFIO| directory. If you want to change the number of printed Slater
|
|
||||||
determinants, just change the :option:`determinants n_det_print_wf`
|
|
||||||
keyword using the :ref:`qp_edit` tool.
|
|
||||||
|
|
||||||
.. seealso::
|
.. seealso::
|
||||||
|
|
||||||
The documentation of the :ref:`print_wf` program.
|
To get some additional information on the wave function, you can use
|
||||||
|
the :ref:`print_wf` program.
|
||||||
|
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@ Quick-start guide
|
|||||||
|
|
||||||
This tutorial should teach you everything you need to get started with
|
This tutorial should teach you everything you need to get started with
|
||||||
the the basics of the |qp|. As an example, we will run a frozen core
|
the the basics of the |qp|. As an example, we will run a frozen core
|
||||||
|CIPSI| calculation on the HCN molecule in the 631-G basis set.
|
|CIPSI| calculation on the HCN molecule in the 6-31G basis set.
|
||||||
|
|
||||||
|
|
||||||
Demo video
|
Demo video
|
||||||
@ -33,24 +33,24 @@ Please execute in the current shell:
|
|||||||
|
|
||||||
where :code:`${QP_ROOT}` is the path to the source files of the |QP| installed on your architecture.
|
where :code:`${QP_ROOT}` is the path to the source files of the |QP| installed on your architecture.
|
||||||
|
|
||||||
The |QPSH| mode: a bash-like experience for quantum chemistry
|
The |QPSH| mode: a Bash-like experience for quantum chemistry
|
||||||
-------------------------------------------------------------
|
-------------------------------------------------------------
|
||||||
|
|
||||||
The |QP| has been designed pretty much as an *interactive* environment for quantum-chemistry calculations,
|
The |QP| has been designed pretty much as an *interactive* environment for quantum-chemistry calculations,
|
||||||
in order to facilitate the user experience.
|
in order to facilitate the user experience.
|
||||||
|
|
||||||
Just like in bash, there are many commands in the |QP| (see for instance :ref:`qp_edit` or :ref:`qp_run`)
|
Just like in Bash, there are many commands in the |QP| (see for instance :ref:`qp_edit` or :ref:`qp_run`)
|
||||||
which help in handling useful data or running executables (see for instance :ref:`scf` or :ref:`fci`).
|
which help in handling useful data or running executables (see for instance :ref:`scf` or :ref:`fci`).
|
||||||
|
|
||||||
All commands designed within the |qp| **begins** with `qp`, and are two ways of running a **command**:
|
All commands designed within the |qp| **begin** with `qp`, and there are two ways of running a **command**:
|
||||||
|
|
||||||
* the *executable* associated to the command:
|
* running the *executable* associated with the command:
|
||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
qp_command
|
qp_command
|
||||||
|
|
||||||
or the *qp* command which calls the *executable* :code:`qp_command`:
|
or executing the *qp* shell command which calls the *executable* :code:`qp_command`:
|
||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
|
||||||
@ -58,7 +58,7 @@ or the *qp* command which calls the *executable* :code:`qp_command`:
|
|||||||
|
|
||||||
Usually, when using the :command:`qp` command, the name of the |EZFIO| database is omitted.
|
Usually, when using the :command:`qp` command, the name of the |EZFIO| database is omitted.
|
||||||
|
|
||||||
The advantage or using :code:`qp command` is that you can, just like in bash, have:
|
The advantage of using :code:`qp command` is that you can, just like in Bash, have:
|
||||||
|
|
||||||
* the :kbd:`Tab` key for the auto-completion for basically any command of the |QP|
|
* the :kbd:`Tab` key for the auto-completion for basically any command of the |QP|
|
||||||
|
|
||||||
@ -147,13 +147,14 @@ The expected energy is ``-92.827856698`` au.
|
|||||||
:ref:`scf` program.
|
:ref:`scf` program.
|
||||||
|
|
||||||
This creates the |MOs| in the |EZFIO| database that will be used to
|
This creates the |MOs| in the |EZFIO| database that will be used to
|
||||||
perform any other post-SCF method. The |qp| does not handle symmetry and
|
in any other post-SCF method. The |qp| does not handle symmetry and
|
||||||
the |MOs| are stored by increasing order of Fock energies.
|
the |MOs| are stored by increasing order of Fock energies.
|
||||||
|
|
||||||
|
|
||||||
Choose the target |MO| space
|
Choose the target |MO| space
|
||||||
----------------------------
|
----------------------------
|
||||||
|
|
||||||
Now, we will modify the |EZFIO| database to make |CIPSI| calculation only in the
|
Now, we will modify the |EZFIO| database to make a |CIPSI| calculation only in the
|
||||||
full set of valence |MOs|, keeping the core |MOs| frozen. The simple
|
full set of valence |MOs|, keeping the core |MOs| frozen. The simple
|
||||||
command :ref:`qp_set_frozen_core` does this automatically:
|
command :ref:`qp_set_frozen_core` does this automatically:
|
||||||
|
|
||||||
@ -167,7 +168,7 @@ In the case of HCN molecule in the 631G basis, one has 20 |MOs| in total and the
|
|||||||
|
|
||||||
.. code::
|
.. code::
|
||||||
|
|
||||||
qp set_mo_class --core "[1-2]" --act "[3-20]"
|
qp set_mo_class --core="[1-2]" --act="[3-20]"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -193,7 +194,7 @@ The program will start with a single determinant and will iteratively:
|
|||||||
:math:`E=E_\text{FCI} - \alpha\, E_\text{PT2}`
|
:math:`E=E_\text{FCI} - \alpha\, E_\text{PT2}`
|
||||||
|
|
||||||
By default, the program will stop when more than one million determinants have
|
By default, the program will stop when more than one million determinants have
|
||||||
entered in the internal space, or when the |PT2| energy is below :math:`10^{-4}`.
|
entered in the internal space, or when the |PT2| energy is below :math:`10^{-4}` au.
|
||||||
|
|
||||||
To have a pictural illustration of the convergence of the |CIPSI| algorithm, just run
|
To have a pictural illustration of the convergence of the |CIPSI| algorithm, just run
|
||||||
|
|
||||||
@ -201,7 +202,10 @@ To have a pictural illustration of the convergence of the |CIPSI| algorithm, jus
|
|||||||
|
|
||||||
qp_e_conv_fci
|
qp_e_conv_fci
|
||||||
|
|
||||||
This will create the files "hcn.fci.out.conv" containing the data of the convergence of the energy that can be plotted, together with the file "hcn.fci.out.conv.1.eps" which is obtained from the gnuplot plot file "hcn.fci.out.conv.plt".
|
This will create the files :file:`hcn.fci.out.conv` containing the data of the
|
||||||
|
convergence of the energy that can be plotted, together with the file
|
||||||
|
:file:`hcn.fci.out.conv.1.eps` which is obtained from the gnuplot plot file
|
||||||
|
:file:`hcn.fci.out.conv.plt`.
|
||||||
|
|
||||||
|
|
||||||
The estimated |FCI| energy of HCN is ``-93.0501`` au.
|
The estimated |FCI| energy of HCN is ``-93.0501`` au.
|
||||||
|
@ -49,7 +49,7 @@ excited states of different symmetries may enter in the calculation.
|
|||||||
Note that it is possible to make state\-average calculation of states
|
Note that it is possible to make state\-average calculation of states
|
||||||
with different symmetries and/or different spin multiplicities.
|
with different symmetries and/or different spin multiplicities.
|
||||||
.sp
|
.sp
|
||||||
To include excited state of all possible symmetries, a simple trick is
|
To include excited states of all possible symmetries, a simple trick is
|
||||||
to run a preliminary multi\-state CIS calculation using the CIS
|
to run a preliminary multi\-state CIS calculation using the CIS
|
||||||
program, and then running the selected FCI restarting from the CIS
|
program, and then running the selected FCI restarting from the CIS
|
||||||
states, setting \fBdeterminants read_wf\fP to \fBtrue\fP\&.
|
states, setting \fBdeterminants read_wf\fP to \fBtrue\fP\&.
|
||||||
@ -61,8 +61,8 @@ convergence of excitation energies.
|
|||||||
\fBSEE ALSO:\fP
|
\fBSEE ALSO:\fP
|
||||||
.INDENT 0.0
|
.INDENT 0.0
|
||||||
.INDENT 3.5
|
.INDENT 3.5
|
||||||
The documentation of the \fBscf()\fP, \fBcis()\fP and
|
The documentation of the scf, cis and
|
||||||
\fBfci()\fP programs.
|
fci programs.
|
||||||
.UNINDENT
|
.UNINDENT
|
||||||
.UNINDENT
|
.UNINDENT
|
||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
|
@ -49,9 +49,9 @@ function are invalidated as well.
|
|||||||
.SH EXTRACTING NATURAL ORBITALS
|
.SH EXTRACTING NATURAL ORBITALS
|
||||||
.sp
|
.sp
|
||||||
Once obtained the near FCI wave function, one can obtain many
|
Once obtained the near FCI wave function, one can obtain many
|
||||||
Onquantities related to it. e of these quantities are the natural
|
quantities related to it. One of these quantities are the natural
|
||||||
Onorbitals which have the properties of diagonalizing the one\-body
|
orbitals which have the propertiy of diagonalizing the one\-body
|
||||||
Ondensity matrix:
|
density matrix:
|
||||||
.INDENT 0.0
|
.INDENT 0.0
|
||||||
.INDENT 3.5
|
.INDENT 3.5
|
||||||
.sp
|
.sp
|
||||||
@ -62,7 +62,7 @@ Ondensity matrix:
|
|||||||
.UNINDENT
|
.UNINDENT
|
||||||
.sp
|
.sp
|
||||||
where the element of the one\-body density matrix \erho_{ij} is
|
where the element of the one\-body density matrix \erho_{ij} is
|
||||||
define as:
|
defined as:
|
||||||
.INDENT 0.0
|
.INDENT 0.0
|
||||||
.INDENT 3.5
|
.INDENT 3.5
|
||||||
.sp
|
.sp
|
||||||
@ -105,7 +105,7 @@ current set of MOs\&.
|
|||||||
\fBSEE ALSO:\fP
|
\fBSEE ALSO:\fP
|
||||||
.INDENT 0.0
|
.INDENT 0.0
|
||||||
.INDENT 3.5
|
.INDENT 3.5
|
||||||
The documentation of the \fBsave_natorb()\fP program.
|
The documentation of the save_natorb program.
|
||||||
.UNINDENT
|
.UNINDENT
|
||||||
.UNINDENT
|
.UNINDENT
|
||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
|
@ -60,28 +60,26 @@ Then, look for the word \fIhand\fP when you are in the qp_edit
|
|||||||
mode. If the research is negative, then it means that the wave
|
mode. If the research is negative, then it means that the wave
|
||||||
function stored in the \fI\%EZFIO\fP database is too large to be edited
|
function stored in the \fI\%EZFIO\fP database is too large to be edited
|
||||||
interactively in qp_edit mode. An alternative is to use the
|
interactively in qp_edit mode. An alternative is to use the
|
||||||
\fBprint_wf\fP command:
|
print_ci_vectors program:
|
||||||
.INDENT 0.0
|
.INDENT 0.0
|
||||||
.INDENT 3.5
|
.INDENT 3.5
|
||||||
.sp
|
.sp
|
||||||
.nf
|
.nf
|
||||||
.ft C
|
.ft C
|
||||||
qp_run print_wf file.ezfio | tee file.ezfio.fci_natorb.wf
|
qp_run print_ci_vectors file.ezfio > tee file.ezfio.wf
|
||||||
.ft P
|
.ft P
|
||||||
.fi
|
.fi
|
||||||
.UNINDENT
|
.UNINDENT
|
||||||
.UNINDENT
|
.UNINDENT
|
||||||
.sp
|
.sp
|
||||||
This program will, by default, print out the first 10^4
|
This program will, by default, print out the full set of determinants, whatever
|
||||||
determinants whatever the size of the wave function stored in the
|
the size of the wave function stored in the \fI\%EZFIO\fP directory.
|
||||||
\fI\%EZFIO\fP directory. If you want to change the number of printed Slater
|
|
||||||
determinants, just change the \fBdeterminants n_det_print_wf\fP
|
|
||||||
keyword using the qp_edit tool.
|
|
||||||
.sp
|
.sp
|
||||||
\fBSEE ALSO:\fP
|
\fBSEE ALSO:\fP
|
||||||
.INDENT 0.0
|
.INDENT 0.0
|
||||||
.INDENT 3.5
|
.INDENT 3.5
|
||||||
The documentation of the print_wf program.
|
To get some additional information on the wave function, you can use
|
||||||
|
the print_wf program.
|
||||||
.UNINDENT
|
.UNINDENT
|
||||||
.UNINDENT
|
.UNINDENT
|
||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
|
Loading…
Reference in New Issue
Block a user