mirror of
https://github.com/LCPQ/quantum_package
synced 2024-10-19 22:41:48 +02:00
changes
This commit is contained in:
parent
2425201c81
commit
9f9f7d7870
51
INSTALL.rst
51
INSTALL.rst
@ -25,9 +25,8 @@ sets all the environment variables required for the normal operation of the
|
||||
Running this script will also tell you which external dependencies are missing
|
||||
and need to be installed.
|
||||
|
||||
Then, source the :file:`quantum_package.rc` file in your current shell before
|
||||
installing the dependencies.
|
||||
|
||||
When all dependencies have been installed, ( the :command:`configure` will tell you)
|
||||
source the :file:`quantum_package.rc` in order to load all environment variables and compile the |QP|.
|
||||
|
||||
|
||||
Requirements
|
||||
@ -71,6 +70,52 @@ architecture. Modify it if needed, and run :command:`configure` with
|
||||
Help for installing external dependencies
|
||||
=========================================
|
||||
|
||||
Using the :command:`configure` executable
|
||||
-----------------------------------------
|
||||
|
||||
The :command:`configure` executable can help you in installing the minimal dependencies you will need to compile the |QP|.
|
||||
The command is to be used as follows:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
./configure --install <package>
|
||||
|
||||
The following packages are supported by the :command:`configure` installer:
|
||||
|
||||
* ninja
|
||||
* irpf90
|
||||
* zeromq
|
||||
* f77zmq ( :math:`\approx` 3 minutes)
|
||||
* ocaml
|
||||
* ezfio
|
||||
* emsl
|
||||
* docopt
|
||||
* resultsFile
|
||||
* bats
|
||||
|
||||
Example:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
./configure -i ezfio
|
||||
|
||||
.. note::
|
||||
|
||||
When installing the ocaml package, you will be asked the location of where it should be installed.
|
||||
A safe option is to enter the path proposed by the |QP|:
|
||||
|
||||
QP>> Please install it here: /your_quantum_package_directory/bin
|
||||
|
||||
So just enter the proposition of the |QP| and press enter.
|
||||
|
||||
|
||||
If the :command:`configure` executable fails to install a specific dependency
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
If the :command:`configure` executable does not succeed to install a specific dependency,
|
||||
there are some proposition of how to download and install the minimal dependencies to compile and use the |QP|
|
||||
|
||||
|
||||
Before doing anything below, try to install the packages with your package manager
|
||||
(:command:`apt`, :command:`yum`, etc)
|
||||
|
||||
|
4
TODO
4
TODO
@ -1,3 +1,7 @@
|
||||
============
|
||||
Probleme with EMSL
|
||||
|
||||
|
||||
* Mettre le fichier LIB
|
||||
* Faire que le slave de Hartree-fock est le calcul des integrales AO en parallele
|
||||
|
||||
|
@ -38,6 +38,7 @@
|
||||
programmers_guide/programming
|
||||
programmers_guide/ezfio
|
||||
programmers_guide/index
|
||||
programmers_guide/plugins
|
||||
|
||||
|
||||
.. toctree::
|
||||
|
@ -105,13 +105,25 @@ The determinants in |SetDI| will be characterized as **internal**.
|
||||
Of course, such a procedure can be applied on any state and therefore can allow to treat both ground and excited states.
|
||||
|
||||
|
||||
Approximations to accelerate the selection
|
||||
------------------------------------------
|
||||
Stochastic approximations for the selection and the computation of |EPT|
|
||||
------------------------------------------------------------------------
|
||||
|
||||
The simple algorithm would be too slow to make calculations possible. Instead,
|
||||
we use the 3-class |CIPSI| approximation to accelerate the selection,
|
||||
:cite:`Evangelisti_1983` where instead of generating all possible |kalpha|,
|
||||
we only generate a subset which are likely to be selected.
|
||||
the |QP| uses a stochastic algorithm :cite:`Garniron_2017.2` in order to compute
|
||||
efficiently the |EPT| and to select on-the-fly the best Slater determinants.
|
||||
|
||||
In such a way, the selection step introduces no extra cost with respect to the |EPT| calculation and the |EPT|
|
||||
itself is unbiased but associated with a statistical error bar rapidly converging.
|
||||
|
||||
|
||||
Deterministic approximations for the selection
|
||||
----------------------------------------------
|
||||
|
||||
The following description was used in a previous version of the |CIPSI| algorithm
|
||||
which was less efficient. Nonetheless, it introduces the notions of **generator** and **selector** determinants
|
||||
which are much more general than the |CIPSI| algorithm that targets the |FCI| and can be used to realize virtually
|
||||
**any kind of CI in a selected way**.
|
||||
|
||||
|
||||
We define **generator** determinants, as determinants of the internal space
|
||||
from which the |kalpha| are generated.
|
||||
@ -124,6 +136,11 @@ The default is to use :option:`determinants threshold_generators` = 0.99 for
|
||||
the generators, and :option:`determinants threshold_selectors` = 0.999 for the
|
||||
selectors.
|
||||
|
||||
This is nothing but the 3-class |CIPSI| approximation to accelerate the selection,
|
||||
:cite:`Evangelisti_1983` where instead of generating all possible |kalpha|,
|
||||
we only generate a subset which are likely to be selected.
|
||||
|
||||
|
||||
The computation of |EPT| using a truncated wave function is biased,
|
||||
so if an accurate estimate of the |FCI| energy is desired, it is preferable
|
||||
to recompute |EPT| with the hybrid deterministic/stochastic algorithm
|
||||
@ -147,7 +164,7 @@ a selected |CAS-SD|. And if one add the rule to prevent for doing double
|
||||
excitations with two holes and two particles outside of the active space, one
|
||||
obtains a selected |DDCI| method.
|
||||
|
||||
All such things can be done very easily when programming the the |qp|.
|
||||
All such things can be done very easily when programming the |qp|.
|
||||
|
||||
-----------------------------------
|
||||
|
||||
|
@ -755,6 +755,20 @@ Subroutines / functions
|
||||
|
||||
|
||||
|
||||
.. c:function:: remove_duplicates_in_selection_buffer
|
||||
|
||||
.. code:: text
|
||||
|
||||
subroutine remove_duplicates_in_selection_buffer(b)
|
||||
|
||||
File: :file:`selection_buffer.irp.f`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:function:: run_cipsi
|
||||
|
||||
.. code:: text
|
||||
|
@ -449,7 +449,7 @@ Subroutines / functions
|
||||
|
||||
subroutine H_S2_u_0_nstates_openmp_work_1(v_t,s_t,u_t,N_st,sze,istart,iend,ishift,istep)
|
||||
|
||||
File: :file:`u0_h_u0.irp.f_template_468`
|
||||
File: :file:`u0_h_u0.irp.f_template_477`
|
||||
|
||||
Computes :math:`v_t = H|u_t angle` and :math:`s_t = S^2 |u_t angle`
|
||||
|
||||
@ -465,7 +465,7 @@ Subroutines / functions
|
||||
|
||||
subroutine H_S2_u_0_nstates_openmp_work_2(v_t,s_t,u_t,N_st,sze,istart,iend,ishift,istep)
|
||||
|
||||
File: :file:`u0_h_u0.irp.f_template_468`
|
||||
File: :file:`u0_h_u0.irp.f_template_477`
|
||||
|
||||
Computes :math:`v_t = H|u_t angle` and :math:`s_t = S^2 |u_t angle`
|
||||
|
||||
@ -481,7 +481,7 @@ Subroutines / functions
|
||||
|
||||
subroutine H_S2_u_0_nstates_openmp_work_3(v_t,s_t,u_t,N_st,sze,istart,iend,ishift,istep)
|
||||
|
||||
File: :file:`u0_h_u0.irp.f_template_468`
|
||||
File: :file:`u0_h_u0.irp.f_template_477`
|
||||
|
||||
Computes :math:`v_t = H|u_t angle` and :math:`s_t = S^2 |u_t angle`
|
||||
|
||||
@ -497,7 +497,7 @@ Subroutines / functions
|
||||
|
||||
subroutine H_S2_u_0_nstates_openmp_work_4(v_t,s_t,u_t,N_st,sze,istart,iend,ishift,istep)
|
||||
|
||||
File: :file:`u0_h_u0.irp.f_template_468`
|
||||
File: :file:`u0_h_u0.irp.f_template_477`
|
||||
|
||||
Computes :math:`v_t = H|u_t angle` and :math:`s_t = S^2 |u_t angle`
|
||||
|
||||
@ -513,7 +513,7 @@ Subroutines / functions
|
||||
|
||||
subroutine H_S2_u_0_nstates_openmp_work_N_int(v_t,s_t,u_t,N_st,sze,istart,iend,ishift,istep)
|
||||
|
||||
File: :file:`u0_h_u0.irp.f_template_468`
|
||||
File: :file:`u0_h_u0.irp.f_template_477`
|
||||
|
||||
Computes :math:`v_t = H|u_t angle` and :math:`s_t = S^2 |u_t angle`
|
||||
|
||||
|
@ -451,7 +451,7 @@ Providers
|
||||
integer(bit_kind), allocatable :: psi_det_alpha_unique (N_int,psi_det_size)
|
||||
integer :: n_det_alpha_unique
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_141`
|
||||
File: :file:`spindeterminants.irp.f_template_143`
|
||||
|
||||
Unique :math:`\alpha` determinants
|
||||
|
||||
@ -465,7 +465,7 @@ Providers
|
||||
integer(bit_kind), allocatable :: psi_det_beta_unique (N_int,psi_det_size)
|
||||
integer :: n_det_beta_unique
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_141`
|
||||
File: :file:`spindeterminants.irp.f_template_143`
|
||||
|
||||
Unique :math:`\beta` determinants
|
||||
|
||||
@ -1215,7 +1215,7 @@ Providers
|
||||
integer(bit_kind), allocatable :: psi_det_alpha_unique (N_int,psi_det_size)
|
||||
integer :: n_det_alpha_unique
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_141`
|
||||
File: :file:`spindeterminants.irp.f_template_143`
|
||||
|
||||
Unique :math:`\alpha` determinants
|
||||
|
||||
@ -1242,7 +1242,7 @@ Providers
|
||||
integer(bit_kind), allocatable :: psi_det_beta_unique (N_int,psi_det_size)
|
||||
integer :: n_det_beta_unique
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_141`
|
||||
File: :file:`spindeterminants.irp.f_template_143`
|
||||
|
||||
Unique :math:`\beta` determinants
|
||||
|
||||
@ -2337,7 +2337,7 @@ Subroutines / functions
|
||||
|
||||
subroutine get_all_spin_doubles_2(buffer, idx, spindet, size_buffer, doubles, n_doubles)
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_1218`
|
||||
File: :file:`spindeterminants.irp.f_template_1221`
|
||||
|
||||
|
||||
|
||||
@ -2355,7 +2355,7 @@ Subroutines / functions
|
||||
|
||||
subroutine get_all_spin_doubles_3(buffer, idx, spindet, size_buffer, doubles, n_doubles)
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_1218`
|
||||
File: :file:`spindeterminants.irp.f_template_1221`
|
||||
|
||||
|
||||
|
||||
@ -2373,7 +2373,7 @@ Subroutines / functions
|
||||
|
||||
subroutine get_all_spin_doubles_4(buffer, idx, spindet, size_buffer, doubles, n_doubles)
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_1218`
|
||||
File: :file:`spindeterminants.irp.f_template_1221`
|
||||
|
||||
|
||||
|
||||
@ -2391,7 +2391,7 @@ Subroutines / functions
|
||||
|
||||
subroutine get_all_spin_doubles_N_int(buffer, idx, spindet, size_buffer, doubles, n_doubles)
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_1218`
|
||||
File: :file:`spindeterminants.irp.f_template_1221`
|
||||
|
||||
|
||||
|
||||
@ -2445,7 +2445,7 @@ Subroutines / functions
|
||||
|
||||
subroutine get_all_spin_singles_2(buffer, idx, spindet, size_buffer, singles, n_singles)
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_1218`
|
||||
File: :file:`spindeterminants.irp.f_template_1221`
|
||||
|
||||
|
||||
|
||||
@ -2463,7 +2463,7 @@ Subroutines / functions
|
||||
|
||||
subroutine get_all_spin_singles_3(buffer, idx, spindet, size_buffer, singles, n_singles)
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_1218`
|
||||
File: :file:`spindeterminants.irp.f_template_1221`
|
||||
|
||||
|
||||
|
||||
@ -2481,7 +2481,7 @@ Subroutines / functions
|
||||
|
||||
subroutine get_all_spin_singles_4(buffer, idx, spindet, size_buffer, singles, n_singles)
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_1218`
|
||||
File: :file:`spindeterminants.irp.f_template_1221`
|
||||
|
||||
|
||||
|
||||
@ -2539,7 +2539,7 @@ Subroutines / functions
|
||||
|
||||
subroutine get_all_spin_singles_and_doubles_2(buffer, idx, spindet, size_buffer, singles, doubles, n_singles, n_doubles)
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_1218`
|
||||
File: :file:`spindeterminants.irp.f_template_1221`
|
||||
|
||||
|
||||
|
||||
@ -2559,7 +2559,7 @@ Subroutines / functions
|
||||
|
||||
subroutine get_all_spin_singles_and_doubles_3(buffer, idx, spindet, size_buffer, singles, doubles, n_singles, n_doubles)
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_1218`
|
||||
File: :file:`spindeterminants.irp.f_template_1221`
|
||||
|
||||
|
||||
|
||||
@ -2579,7 +2579,7 @@ Subroutines / functions
|
||||
|
||||
subroutine get_all_spin_singles_and_doubles_4(buffer, idx, spindet, size_buffer, singles, doubles, n_singles, n_doubles)
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_1218`
|
||||
File: :file:`spindeterminants.irp.f_template_1221`
|
||||
|
||||
|
||||
|
||||
@ -2599,7 +2599,7 @@ Subroutines / functions
|
||||
|
||||
subroutine get_all_spin_singles_and_doubles_N_int(buffer, idx, spindet, size_buffer, singles, doubles, n_singles, n_doubles)
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_1218`
|
||||
File: :file:`spindeterminants.irp.f_template_1221`
|
||||
|
||||
|
||||
|
||||
@ -2619,7 +2619,7 @@ Subroutines / functions
|
||||
|
||||
subroutine get_all_spin_singles_N_int(buffer, idx, spindet, size_buffer, singles, n_singles)
|
||||
|
||||
File: :file:`spindeterminants.irp.f_template_1218`
|
||||
File: :file:`spindeterminants.irp.f_template_1221`
|
||||
|
||||
|
||||
|
||||
|
@ -1090,14 +1090,12 @@ Providers
|
||||
|
||||
.. code:: text
|
||||
|
||||
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)
|
||||
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)
|
||||
|
||||
File: :file:`sr_pot_ao.irp.f`
|
||||
|
||||
short range exchange/correlation alpha/beta potentials with LDA functional on the AO basis
|
||||
short range correlation alpha/beta potentials with LDA functional on the |AO| basis
|
||||
|
||||
|
||||
|
||||
@ -1122,14 +1120,12 @@ Providers
|
||||
|
||||
.. code:: text
|
||||
|
||||
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)
|
||||
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)
|
||||
|
||||
File: :file:`sr_pot_ao.irp.f`
|
||||
|
||||
short range exchange/correlation alpha/beta potentials with LDA functional on the AO basis
|
||||
short range correlation alpha/beta potentials with LDA functional on the |AO| basis
|
||||
|
||||
|
||||
|
||||
@ -1156,12 +1152,10 @@ Providers
|
||||
|
||||
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)
|
||||
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)
|
||||
|
||||
File: :file:`sr_pot_ao.irp.f`
|
||||
|
||||
short range exchange/correlation alpha/beta potentials with LDA functional on the AO basis
|
||||
short range exchange alpha/beta potentials with LDA functional on the |AO| basis
|
||||
|
||||
|
||||
|
||||
@ -1188,12 +1182,10 @@ Providers
|
||||
|
||||
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)
|
||||
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)
|
||||
|
||||
File: :file:`sr_pot_ao.irp.f`
|
||||
|
||||
short range exchange/correlation alpha/beta potentials with LDA functional on the AO basis
|
||||
short range exchange alpha/beta potentials with LDA functional on the |AO| basis
|
||||
|
||||
|
||||
|
||||
|
@ -36,6 +36,23 @@ EZFIO parameters
|
||||
|
||||
|
||||
|
||||
Providers
|
||||
---------
|
||||
|
||||
|
||||
.. c:var:: nthreads_pt2
|
||||
|
||||
.. code:: text
|
||||
|
||||
integer :: nthreads_pt2
|
||||
|
||||
File: :file:`environment.irp.f`
|
||||
|
||||
Number of threads for Davidson
|
||||
|
||||
|
||||
|
||||
|
||||
Subroutines / functions
|
||||
-----------------------
|
||||
|
||||
|
@ -63,6 +63,79 @@ Providers
|
||||
---------
|
||||
|
||||
|
||||
.. c:var:: ao_two_e_integral_alpha
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: ao_two_e_integral_alpha (ao_num,ao_num)
|
||||
double precision, allocatable :: ao_two_e_integral_beta (ao_num,ao_num)
|
||||
|
||||
File: :file:`fock_matrix_hf.irp.f`
|
||||
|
||||
Alpha Fock matrix in AO basis set
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: ao_two_e_integral_beta
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: ao_two_e_integral_alpha (ao_num,ao_num)
|
||||
double precision, allocatable :: ao_two_e_integral_beta (ao_num,ao_num)
|
||||
|
||||
File: :file:`fock_matrix_hf.irp.f`
|
||||
|
||||
Alpha Fock matrix in AO basis set
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: extra_e_contrib_density
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision :: extra_e_contrib_density
|
||||
|
||||
File: :file:`hf_energy.irp.f`
|
||||
|
||||
Extra contribution to the SCF energy coming from the density.
|
||||
|
||||
For a Hartree-Fock calculation: extra_e_contrib_density = 0
|
||||
|
||||
For a Kohn-Sham or Range-separated Kohn-Sham: the exchange/correlation - trace of the V_xc potential
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: fock_matrix_ao_alpha
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: fock_matrix_ao_alpha (ao_num,ao_num)
|
||||
double precision, allocatable :: fock_matrix_ao_beta (ao_num,ao_num)
|
||||
|
||||
File: :file:`fock_matrix_hf.irp.f`
|
||||
|
||||
Alpha Fock matrix in AO basis set
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: fock_matrix_ao_beta
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: fock_matrix_ao_alpha (ao_num,ao_num)
|
||||
double precision, allocatable :: fock_matrix_ao_beta (ao_num,ao_num)
|
||||
|
||||
File: :file:`fock_matrix_hf.irp.f`
|
||||
|
||||
Alpha Fock matrix in AO basis set
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: hf_energy
|
||||
|
||||
.. code:: text
|
||||
@ -113,6 +186,34 @@ Subroutines / functions
|
||||
|
||||
|
||||
|
||||
.. c:function:: create_guess
|
||||
|
||||
.. code:: text
|
||||
|
||||
subroutine create_guess
|
||||
|
||||
File: :file:`scf.irp.f`
|
||||
|
||||
Create a MO guess if no MOs are present in the EZFIO directory
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:function:: run
|
||||
|
||||
.. code:: text
|
||||
|
||||
subroutine run
|
||||
|
||||
File: :file:`scf.irp.f`
|
||||
|
||||
Run SCF calculation
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:function:: scf
|
||||
|
||||
.. code:: text
|
||||
|
@ -91,7 +91,7 @@ Subroutines / functions
|
||||
|
||||
.. code:: text
|
||||
|
||||
subroutine print_summary(e_,pt2_,error_,variance_,norm_,n_det_,n_occ_pattern_)
|
||||
subroutine print_summary(e_,pt2_,error_,variance_,norm_,n_det_,n_occ_pattern_,n_st)
|
||||
|
||||
File: :file:`print_summary.irp.f`
|
||||
|
||||
|
@ -52,178 +52,6 @@ Providers
|
||||
---------
|
||||
|
||||
|
||||
.. c:var:: ao_potential_alpha_xc
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: ao_potential_alpha_xc (ao_num,ao_num)
|
||||
double precision, allocatable :: ao_potential_beta_xc (ao_num,ao_num)
|
||||
|
||||
File: :file:`pot_functionals.irp.f`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: ao_potential_beta_xc
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: ao_potential_alpha_xc (ao_num,ao_num)
|
||||
double precision, allocatable :: ao_potential_beta_xc (ao_num,ao_num)
|
||||
|
||||
File: :file:`pot_functionals.irp.f`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: ao_two_e_integral_alpha
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: ao_two_e_integral_alpha (ao_num,ao_num)
|
||||
double precision, allocatable :: ao_two_e_integral_beta (ao_num,ao_num)
|
||||
|
||||
File: :file:`fock_matrix_ks.irp.f`
|
||||
|
||||
Alpha Fock matrix in ao basis set
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: ao_two_e_integral_beta
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: ao_two_e_integral_alpha (ao_num,ao_num)
|
||||
double precision, allocatable :: ao_two_e_integral_beta (ao_num,ao_num)
|
||||
|
||||
File: :file:`fock_matrix_ks.irp.f`
|
||||
|
||||
Alpha Fock matrix in ao basis set
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: e_correlation_dft
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision :: e_correlation_dft
|
||||
|
||||
File: :file:`pot_functionals.irp.f`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: e_exchange_dft
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision :: e_exchange_dft
|
||||
|
||||
File: :file:`pot_functionals.irp.f`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: extra_e_contrib_density
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision :: extra_e_contrib_density
|
||||
|
||||
File: :file:`ks_enery.irp.f`
|
||||
|
||||
Extra contribution to the SCF energy coming from the density.
|
||||
|
||||
For a Hartree-Fock calculation: extra_e_contrib_density = 0
|
||||
|
||||
For a Kohn-Sham or Range-separated Kohn-Sham: the exchange/correlation - 1/2 trace of the V_xc potential
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: fock_matrix_alpha_no_xc_ao
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: fock_matrix_alpha_no_xc_ao (ao_num,ao_num)
|
||||
double precision, allocatable :: fock_matrix_beta_no_xc_ao (ao_num,ao_num)
|
||||
|
||||
File: :file:`fock_matrix_ks.irp.f`
|
||||
|
||||
Mono electronic an Coulomb matrix in ao basis set
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: fock_matrix_ao_alpha
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: fock_matrix_ao_alpha (ao_num,ao_num)
|
||||
double precision, allocatable :: fock_matrix_ao_beta (ao_num,ao_num)
|
||||
|
||||
File: :file:`fock_matrix_ks.irp.f`
|
||||
|
||||
Alpha Fock matrix in ao basis set
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: fock_matrix_ao_beta
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: fock_matrix_ao_alpha (ao_num,ao_num)
|
||||
double precision, allocatable :: fock_matrix_ao_beta (ao_num,ao_num)
|
||||
|
||||
File: :file:`fock_matrix_ks.irp.f`
|
||||
|
||||
Alpha Fock matrix in ao basis set
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: fock_matrix_beta_no_xc_ao
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: fock_matrix_alpha_no_xc_ao (ao_num,ao_num)
|
||||
double precision, allocatable :: fock_matrix_beta_no_xc_ao (ao_num,ao_num)
|
||||
|
||||
File: :file:`fock_matrix_ks.irp.f`
|
||||
|
||||
Mono electronic an Coulomb matrix in ao basis set
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: fock_matrix_energy
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision :: ks_energy
|
||||
double precision :: two_electron_energy
|
||||
double precision :: one_electron_energy
|
||||
double precision :: fock_matrix_energy
|
||||
double precision :: trace_potential_xc
|
||||
|
||||
File: :file:`ks_enery.irp.f`
|
||||
|
||||
Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: ks_energy
|
||||
|
||||
.. code:: text
|
||||
@ -241,104 +69,11 @@ Providers
|
||||
|
||||
|
||||
|
||||
.. c:var:: one_electron_energy
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision :: ks_energy
|
||||
double precision :: two_electron_energy
|
||||
double precision :: one_electron_energy
|
||||
double precision :: fock_matrix_energy
|
||||
double precision :: trace_potential_xc
|
||||
|
||||
File: :file:`ks_enery.irp.f`
|
||||
|
||||
Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: trace_potential_xc
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision :: ks_energy
|
||||
double precision :: two_electron_energy
|
||||
double precision :: one_electron_energy
|
||||
double precision :: fock_matrix_energy
|
||||
double precision :: trace_potential_xc
|
||||
|
||||
File: :file:`ks_enery.irp.f`
|
||||
|
||||
Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: two_electron_energy
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision :: ks_energy
|
||||
double precision :: two_electron_energy
|
||||
double precision :: one_electron_energy
|
||||
double precision :: fock_matrix_energy
|
||||
double precision :: trace_potential_xc
|
||||
|
||||
File: :file:`ks_enery.irp.f`
|
||||
|
||||
Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
||||
|
||||
|
||||
|
||||
|
||||
Subroutines / functions
|
||||
-----------------------
|
||||
|
||||
|
||||
|
||||
.. c:function:: check_coherence_functional
|
||||
|
||||
.. code:: text
|
||||
|
||||
subroutine check_coherence_functional
|
||||
|
||||
File: :file:`ks_scf.irp.f`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:function:: create_guess
|
||||
|
||||
.. code:: text
|
||||
|
||||
subroutine create_guess
|
||||
|
||||
File: :file:`ks_scf.irp.f`
|
||||
|
||||
Create a MO guess if no MOs are present in the EZFIO directory
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:function:: run
|
||||
|
||||
.. code:: text
|
||||
|
||||
subroutine run
|
||||
|
||||
File: :file:`ks_scf.irp.f`
|
||||
|
||||
Run SCF calculation
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:function:: srs_ks_cf
|
||||
|
||||
.. code:: text
|
||||
|
@ -60,6 +60,122 @@ Providers
|
||||
---------
|
||||
|
||||
|
||||
.. c:var:: ao_potential_alpha_xc
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: ao_potential_alpha_xc (ao_num,ao_num)
|
||||
double precision, allocatable :: ao_potential_beta_xc (ao_num,ao_num)
|
||||
|
||||
File: :file:`pot_functionals.irp.f`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: ao_potential_beta_xc
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: ao_potential_alpha_xc (ao_num,ao_num)
|
||||
double precision, allocatable :: ao_potential_beta_xc (ao_num,ao_num)
|
||||
|
||||
File: :file:`pot_functionals.irp.f`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: e_correlation_dft
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision :: e_correlation_dft
|
||||
|
||||
File: :file:`pot_functionals.irp.f`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: e_exchange_dft
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision :: e_exchange_dft
|
||||
|
||||
File: :file:`pot_functionals.irp.f`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: fock_matrix_alpha_no_xc_ao
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: fock_matrix_alpha_no_xc_ao (ao_num,ao_num)
|
||||
double precision, allocatable :: fock_matrix_beta_no_xc_ao (ao_num,ao_num)
|
||||
|
||||
File: :file:`fock_matrix_rs_ks.irp.f`
|
||||
|
||||
Mono electronic an Coulomb matrix in AO basis set
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: fock_matrix_beta_no_xc_ao
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision, allocatable :: fock_matrix_alpha_no_xc_ao (ao_num,ao_num)
|
||||
double precision, allocatable :: fock_matrix_beta_no_xc_ao (ao_num,ao_num)
|
||||
|
||||
File: :file:`fock_matrix_rs_ks.irp.f`
|
||||
|
||||
Mono electronic an Coulomb matrix in AO basis set
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: fock_matrix_energy
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision :: rs_ks_energy
|
||||
double precision :: two_electron_energy
|
||||
double precision :: one_electron_energy
|
||||
double precision :: fock_matrix_energy
|
||||
double precision :: trace_potential_xc
|
||||
|
||||
File: :file:`rs_ks_energy.irp.f`
|
||||
|
||||
Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: one_electron_energy
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision :: rs_ks_energy
|
||||
double precision :: two_electron_energy
|
||||
double precision :: one_electron_energy
|
||||
double precision :: fock_matrix_energy
|
||||
double precision :: trace_potential_xc
|
||||
|
||||
File: :file:`rs_ks_energy.irp.f`
|
||||
|
||||
Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: rs_ks_energy
|
||||
|
||||
.. code:: text
|
||||
@ -77,11 +193,59 @@ Providers
|
||||
|
||||
|
||||
|
||||
.. c:var:: trace_potential_xc
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision :: rs_ks_energy
|
||||
double precision :: two_electron_energy
|
||||
double precision :: one_electron_energy
|
||||
double precision :: fock_matrix_energy
|
||||
double precision :: trace_potential_xc
|
||||
|
||||
File: :file:`rs_ks_energy.irp.f`
|
||||
|
||||
Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:var:: two_electron_energy
|
||||
|
||||
.. code:: text
|
||||
|
||||
double precision :: rs_ks_energy
|
||||
double precision :: two_electron_energy
|
||||
double precision :: one_electron_energy
|
||||
double precision :: fock_matrix_energy
|
||||
double precision :: trace_potential_xc
|
||||
|
||||
File: :file:`rs_ks_energy.irp.f`
|
||||
|
||||
Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
||||
|
||||
|
||||
|
||||
|
||||
Subroutines / functions
|
||||
-----------------------
|
||||
|
||||
|
||||
|
||||
.. c:function:: check_coherence_functional
|
||||
|
||||
.. code:: text
|
||||
|
||||
subroutine check_coherence_functional
|
||||
|
||||
File: :file:`rs_ks_scf.irp.f`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. c:function:: rs_ks_scf
|
||||
|
||||
.. code:: text
|
||||
|
@ -329,15 +329,15 @@ Subroutines / functions
|
||||
|
||||
|
||||
|
||||
.. c:function:: reorder_active_orb
|
||||
.. c:function:: reorder_core_orb
|
||||
|
||||
.. code:: text
|
||||
|
||||
subroutine reorder_active_orb
|
||||
subroutine reorder_core_orb
|
||||
|
||||
File: :file:`track_orb.irp.f`
|
||||
|
||||
routines that takes the current :c:data:`mo_coef` and reorder the active orbitals (see :c:data:`list_act` and :c:data:`n_act_orb`) according to the overlap with :c:data:`mo_coef_begin_iteration`
|
||||
routines that takes the current :c:data:`mo_coef` and reorder the core orbitals (see :c:data:`list_core` and :c:data:`n_core_orb`) according to the overlap with :c:data:`mo_coef_begin_iteration`
|
||||
|
||||
|
||||
|
||||
|
@ -97,9 +97,9 @@ EZFIO parameters
|
||||
Calculated HF energy
|
||||
|
||||
|
||||
.. option:: no_oa_or_av_opt
|
||||
.. option:: frozen_orb_scf
|
||||
|
||||
If true, leave the active orbitals untouched in the SCF procedure
|
||||
If true, leave untouched all the orbitals defined as core and optimize all the orbitals defined as active with qp_set_mo_class
|
||||
|
||||
Default: False
|
||||
|
||||
|
@ -231,6 +231,7 @@ Index of Providers
|
||||
* :c:data:`fock_wee_closed_shell`
|
||||
* :c:data:`fps_spf_matrix_ao`
|
||||
* :c:data:`fps_spf_matrix_mo`
|
||||
* :c:data:`frozen_orb_scf`
|
||||
* :c:data:`full_ijkl_bitmask`
|
||||
* :c:data:`full_ijkl_bitmask_4`
|
||||
* :c:data:`gauleg_t2`
|
||||
@ -433,11 +434,11 @@ Index of Providers
|
||||
* :c:data:`n_virt_orb`
|
||||
* :c:data:`n_virt_orb_allocate`
|
||||
* :c:data:`no_ivvv_integrals`
|
||||
* :c:data:`no_oa_or_av_opt`
|
||||
* :c:data:`no_vvv_integrals`
|
||||
* :c:data:`no_vvvv_integrals`
|
||||
* :c:data:`nproc`
|
||||
* :c:data:`nthreads_davidson`
|
||||
* :c:data:`nthreads_pt2`
|
||||
* :c:data:`nucl_aos`
|
||||
* :c:data:`nucl_aos_transposed`
|
||||
* :c:data:`nucl_charge`
|
||||
@ -1213,8 +1214,9 @@ Index of Subroutines/Functions
|
||||
* :c:func:`read_dets`
|
||||
* :c:func:`recentered_poly2`
|
||||
* :c:func:`remove_duplicates_in_psi_det`
|
||||
* :c:func:`remove_duplicates_in_selection_buffer`
|
||||
* :c:func:`remove_small_contributions`
|
||||
* :c:func:`reorder_active_orb`
|
||||
* :c:func:`reorder_core_orb`
|
||||
* :c:func:`repeat_all_e_corr`
|
||||
* :c:func:`reset_zmq_addresses`
|
||||
* :c:func:`resident_memory`
|
||||
|
@ -6,7 +6,7 @@ qp_plugins
|
||||
|
||||
.. program:: qp_plugins
|
||||
|
||||
This command deals with all external plugings of |qp|. Plugin repositories can
|
||||
This command deals with all external plugins of |qp|. Plugin repositories can
|
||||
be downloaded, and the plugins in these repositories can be
|
||||
installed/uninstalled of created.
|
||||
|
||||
@ -62,3 +62,41 @@ Usage
|
||||
Specify in which repository the new plugin will be created.
|
||||
|
||||
|
||||
|
||||
Example
|
||||
-------
|
||||
|
||||
Let us download, install and compile some specific external plugins from `<https://gitlab.com/eginer/qp_plugins_eginer>`_ .
|
||||
|
||||
|
||||
First, download the git repo associated to these plugins. To do so, first go to the `plugins` directory in the |QP| and execute:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
qp_plugins download https://gitlab.com/eginer/qp_plugins_eginer
|
||||
|
||||
|
||||
This will create in the directory `plugins` a local copy of the git repo located at the URL you indicated.
|
||||
Then, go in `qp_plugins_eginer/stable/`
|
||||
|
||||
.. code:: bash
|
||||
|
||||
cd qp_plugins_eginer/stable/
|
||||
|
||||
|
||||
In the directory `stable`, there are many directories which all correspond to a specific plugin that have been developed
|
||||
by the person in charge of the git repo. All these plugins might use some global variables and routines contained
|
||||
in the core modules of the |QP|.
|
||||
|
||||
|
||||
Now let us install the plugin `rsdft_cipsi`:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
qp_plugins install rsdft_cipsi
|
||||
|
||||
This will link this directory to the |QP| which means that when the code will be compiled, this plugin will be compiled to and therefore
|
||||
all the executables/scripts contained in this module will be available.
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user