mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-12-24 12:33:30 +01:00
3392 lines
65 KiB
ReStructuredText
3392 lines
65 KiB
ReStructuredText
.. _module_bitmask:
|
|
|
|
.. program:: bitmask
|
|
|
|
.. default-role:: option
|
|
|
|
==============
|
|
bitmask module
|
|
==============
|
|
|
|
The central part of this module is the :file:`bitmasks_module.f90` file. It contains
|
|
the constants that will be used to define on which kind of integer the bitmasks
|
|
will be defined.
|
|
|
|
In the program, to represent a determinant as a pair of bitstrings,
|
|
the determinant should be defined as
|
|
|
|
.. code-block:: fortran
|
|
|
|
use bitmasks
|
|
integer(bit_kind) :: determinant(N_int,2)
|
|
|
|
|
|
:file:`bitmasks_routines.irp.f` contains helper routines to manipulate bitmask, like
|
|
transforming a bit string to a list of integers for example.
|
|
|
|
|
|
`bit_kind_shift`, `bit_kind_size` and `bit_kind` are supposed to be consistent::
|
|
|
|
2**bit_kind_shift = bit_kind_size
|
|
bit_kind = bit_kind_size / 8
|
|
|
|
|
|
For an example of how to use the bitmaks, see the file :file:`example.irp.f`.
|
|
|
|
|
|
|
|
EZFIO parameters
|
|
----------------
|
|
|
|
.. option:: n_act_orb
|
|
|
|
Number of active |MOs|
|
|
|
|
|
|
.. option:: do_ormas
|
|
|
|
if |true| restrict selection based on ORMAS rules
|
|
|
|
Default: false
|
|
|
|
.. option:: ormas_n_space
|
|
|
|
Number of active spaces
|
|
|
|
Default: 1
|
|
|
|
.. option:: ormas_mstart
|
|
|
|
starting orb for each ORMAS space
|
|
|
|
|
|
.. option:: ormas_min_e
|
|
|
|
min number of electrons in each ORMAS space
|
|
|
|
|
|
.. option:: ormas_max_e
|
|
|
|
max number of electrons in each ORMAS space
|
|
|
|
|
|
|
|
Providers
|
|
---------
|
|
|
|
.. c:var:: act_bitmask
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: act_bitmask (N_int,2)
|
|
|
|
|
|
Bitmask identifying the active MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_act`
|
|
* :c:data:`n_act_orb`
|
|
* :c:data:`n_int`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`closed_shell_ref_bitmask`
|
|
* :c:data:`n_det_generators`
|
|
* :c:data:`psi_cas`
|
|
* :c:data:`psi_det_generators`
|
|
* :c:data:`reunion_of_act_virt_bitmask`
|
|
* :c:data:`reunion_of_bitmask`
|
|
* :c:data:`reunion_of_core_inact_act_bitmask`
|
|
* :c:data:`reunion_of_inact_act_bitmask`
|
|
|
|
|
|
.. c:var:: closed_shell_ref_bitmask
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: closed_shell_ref_bitmask (N_int,2)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`n_int`
|
|
* :c:data:`ref_bitmask`
|
|
|
|
|
|
|
|
.. c:var:: core_bitmask
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: core_bitmask (N_int,2)
|
|
|
|
|
|
Bitmask identifying the core MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_core`
|
|
* :c:data:`n_core_orb`
|
|
* :c:data:`n_int`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`inact_virt_bitmask`
|
|
* :c:data:`reunion_of_core_inact_bitmask`
|
|
|
|
|
|
.. c:var:: core_inact_act_bitmask_4
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: core_inact_act_bitmask_4 (N_int,4)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
* :c:data:`reunion_of_core_inact_act_bitmask`
|
|
|
|
|
|
|
|
.. c:var:: core_inact_virt_bitmask
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: inact_virt_bitmask (N_int,2)
|
|
integer(bit_kind), allocatable :: core_inact_virt_bitmask (N_int,2)
|
|
|
|
|
|
Reunion of the inactive and virtual bitmasks
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`core_bitmask`
|
|
* :c:data:`inact_bitmask`
|
|
* :c:data:`n_int`
|
|
* :c:data:`virt_bitmask`
|
|
|
|
|
|
|
|
.. c:var:: del_bitmask
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: del_bitmask (N_int,2)
|
|
|
|
|
|
Bitmask identifying the deleted MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_del`
|
|
* :c:data:`n_del_orb`
|
|
* :c:data:`n_int`
|
|
|
|
|
|
|
|
.. c:var:: dim_list_act_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: dim_list_act_orb
|
|
|
|
|
|
dimensions for the allocation of list_act.
|
|
it is at least 1
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_act_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_act`
|
|
|
|
|
|
.. c:var:: dim_list_core_inact_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: dim_list_core_inact_orb
|
|
|
|
|
|
dimensions for the allocation of list_core.
|
|
it is at least 1
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_core_inact_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_core_inact`
|
|
|
|
|
|
.. c:var:: dim_list_core_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: dim_list_core_orb
|
|
|
|
|
|
dimensions for the allocation of list_core.
|
|
it is at least 1
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_core_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_core`
|
|
|
|
|
|
.. c:var:: dim_list_del_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: dim_list_del_orb
|
|
|
|
|
|
dimensions for the allocation of list_del.
|
|
it is at least 1
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_del_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_del`
|
|
|
|
|
|
.. c:var:: dim_list_inact_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: dim_list_inact_orb
|
|
|
|
|
|
dimensions for the allocation of list_inact.
|
|
it is at least 1
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_inact_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_inact`
|
|
|
|
|
|
.. c:var:: dim_list_virt_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: dim_list_virt_orb
|
|
|
|
|
|
dimensions for the allocation of list_virt.
|
|
it is at least 1
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_virt_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_virt`
|
|
|
|
|
|
.. c:var:: full_ijkl_bitmask
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: full_ijkl_bitmask (N_int)
|
|
|
|
|
|
Bitmask to include all possible MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_int`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`fock_operator_closed_shell_ref_bitmask`
|
|
* :c:data:`fock_wee_closed_shell`
|
|
* :c:data:`full_ijkl_bitmask_4`
|
|
* :c:data:`generators_bitmask`
|
|
|
|
|
|
.. c:var:: full_ijkl_bitmask_4
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: full_ijkl_bitmask_4 (N_int,4)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`full_ijkl_bitmask`
|
|
* :c:data:`n_int`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_two_e_integrals_erf_in_map`
|
|
* :c:data:`mo_two_e_integrals_in_map`
|
|
|
|
|
|
.. c:var:: generators_bitmask
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: generators_bitmask (N_int,2,6)
|
|
|
|
|
|
Bitmasks for generator determinants.
|
|
(N_int, alpha/beta, hole/particle, generator).
|
|
|
|
3rd index is :
|
|
|
|
* 1 : hole for single exc
|
|
|
|
* 2 : particle for single exc
|
|
|
|
* 3 : hole for 1st exc of double
|
|
|
|
* 4 : particle for 1st exc of double
|
|
|
|
* 5 : hole for 2nd exc of double
|
|
|
|
* 6 : particle for 2nd exc of double
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`ezfio_filename`
|
|
* :c:data:`full_ijkl_bitmask`
|
|
* :c:data:`n_int`
|
|
* :c:data:`reunion_of_act_virt_bitmask`
|
|
* :c:data:`reunion_of_inact_act_bitmask`
|
|
|
|
|
|
|
|
.. c:var:: hf_bitmask
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: hf_bitmask (N_int,2)
|
|
|
|
|
|
Hartree Fock bit mask
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`elec_alpha_num`
|
|
* :c:data:`elec_beta_num`
|
|
* :c:data:`n_int`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`double_exc_bitmask`
|
|
* :c:data:`max_degree_exc`
|
|
* :c:data:`psi_cas`
|
|
* :c:data:`psi_det`
|
|
* :c:data:`ref_bitmask`
|
|
* :c:data:`single_exc_bitmask`
|
|
* :c:data:`unpaired_alpha_electrons`
|
|
|
|
|
|
.. c:var:: inact_bitmask
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: inact_bitmask (N_int,2)
|
|
|
|
|
|
Bitmask identifying the inactive MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_inact`
|
|
* :c:data:`n_inact_orb`
|
|
* :c:data:`n_int`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`inact_virt_bitmask`
|
|
* :c:data:`reunion_of_bitmask`
|
|
* :c:data:`reunion_of_core_inact_bitmask`
|
|
* :c:data:`reunion_of_inact_act_bitmask`
|
|
|
|
|
|
.. c:var:: inact_virt_bitmask
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: inact_virt_bitmask (N_int,2)
|
|
integer(bit_kind), allocatable :: core_inact_virt_bitmask (N_int,2)
|
|
|
|
|
|
Reunion of the inactive and virtual bitmasks
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`core_bitmask`
|
|
* :c:data:`inact_bitmask`
|
|
* :c:data:`n_int`
|
|
* :c:data:`virt_bitmask`
|
|
|
|
|
|
|
|
.. c:var:: index_holes_bitmask
|
|
|
|
|
|
File : :file:`bitmask/modify_bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: index_holes_bitmask (3)
|
|
|
|
|
|
Index of the holes in the generators_bitmasks
|
|
|
|
|
|
|
|
.. c:var:: index_particl_bitmask
|
|
|
|
|
|
File : :file:`bitmask/modify_bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: index_particl_bitmask (3)
|
|
|
|
|
|
Index of the holes in the generators_bitmasks
|
|
|
|
|
|
|
|
.. c:var:: list_act
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_act (dim_list_act_orb)
|
|
integer, allocatable :: list_act_reverse (mo_num)
|
|
|
|
|
|
List of MO indices which are in the active.
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`dim_list_act_orb`
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_act_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_2_rdm_aa_mo`
|
|
* :c:data:`act_2_rdm_ab_mo`
|
|
* :c:data:`act_2_rdm_bb_mo`
|
|
* :c:data:`act_2_rdm_spin_trace_mo`
|
|
* :c:data:`act_2_rdm_trans_spin_trace_mo`
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`bielec_pqxx_array`
|
|
* :c:data:`bielec_pqxx_no_array`
|
|
* :c:data:`bielec_pxxq_array`
|
|
* :c:data:`bielec_pxxq_no_array`
|
|
* :c:data:`bielecci`
|
|
* :c:data:`bielecci_no`
|
|
* :c:data:`cholesky_no_1_idx_transp`
|
|
* :c:data:`cholesky_no_2_idx_transp`
|
|
* :c:data:`cholesky_no_total_transp`
|
|
* :c:data:`core_fock_operator`
|
|
* :c:data:`core_fock_operator_erf`
|
|
* :c:data:`d0tu`
|
|
* :c:data:`d0tu_alpha_ao`
|
|
* :c:data:`eigenvectors_fock_matrix_mo`
|
|
* :c:data:`etwo`
|
|
* :c:data:`excit`
|
|
* :c:data:`fapq`
|
|
* :c:data:`fock_matrix_mo`
|
|
* :c:data:`full_occ_2_rdm_aa_mo`
|
|
* :c:data:`full_occ_2_rdm_ab_mo`
|
|
* :c:data:`full_occ_2_rdm_bb_mo`
|
|
* :c:data:`full_occ_2_rdm_spin_trace_mo`
|
|
* :c:data:`gradvec2`
|
|
* :c:data:`hessdiag`
|
|
* :c:data:`hessmat`
|
|
* :c:data:`hessmat_peter`
|
|
* :c:data:`lowest_super_ci_coef_mo`
|
|
* :c:data:`mat_tmp_dm_super_ci`
|
|
* :c:data:`natorbsci_mos`
|
|
* :c:data:`occnum`
|
|
* :c:data:`one_ints_no`
|
|
* :c:data:`p0tuvx_peter`
|
|
* :c:data:`state_av_act_2_rdm_aa_mo`
|
|
* :c:data:`state_av_act_2_rdm_ab_mo`
|
|
* :c:data:`state_av_act_2_rdm_bb_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_aa_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_ab_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_bb_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_spin_trace_mo`
|
|
* :c:data:`super_ci_dm`
|
|
* :c:data:`umat`
|
|
|
|
|
|
.. c:var:: list_act_reverse
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_act (dim_list_act_orb)
|
|
integer, allocatable :: list_act_reverse (mo_num)
|
|
|
|
|
|
List of MO indices which are in the active.
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`dim_list_act_orb`
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_act_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_2_rdm_aa_mo`
|
|
* :c:data:`act_2_rdm_ab_mo`
|
|
* :c:data:`act_2_rdm_bb_mo`
|
|
* :c:data:`act_2_rdm_spin_trace_mo`
|
|
* :c:data:`act_2_rdm_trans_spin_trace_mo`
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`bielec_pqxx_array`
|
|
* :c:data:`bielec_pqxx_no_array`
|
|
* :c:data:`bielec_pxxq_array`
|
|
* :c:data:`bielec_pxxq_no_array`
|
|
* :c:data:`bielecci`
|
|
* :c:data:`bielecci_no`
|
|
* :c:data:`cholesky_no_1_idx_transp`
|
|
* :c:data:`cholesky_no_2_idx_transp`
|
|
* :c:data:`cholesky_no_total_transp`
|
|
* :c:data:`core_fock_operator`
|
|
* :c:data:`core_fock_operator_erf`
|
|
* :c:data:`d0tu`
|
|
* :c:data:`d0tu_alpha_ao`
|
|
* :c:data:`eigenvectors_fock_matrix_mo`
|
|
* :c:data:`etwo`
|
|
* :c:data:`excit`
|
|
* :c:data:`fapq`
|
|
* :c:data:`fock_matrix_mo`
|
|
* :c:data:`full_occ_2_rdm_aa_mo`
|
|
* :c:data:`full_occ_2_rdm_ab_mo`
|
|
* :c:data:`full_occ_2_rdm_bb_mo`
|
|
* :c:data:`full_occ_2_rdm_spin_trace_mo`
|
|
* :c:data:`gradvec2`
|
|
* :c:data:`hessdiag`
|
|
* :c:data:`hessmat`
|
|
* :c:data:`hessmat_peter`
|
|
* :c:data:`lowest_super_ci_coef_mo`
|
|
* :c:data:`mat_tmp_dm_super_ci`
|
|
* :c:data:`natorbsci_mos`
|
|
* :c:data:`occnum`
|
|
* :c:data:`one_ints_no`
|
|
* :c:data:`p0tuvx_peter`
|
|
* :c:data:`state_av_act_2_rdm_aa_mo`
|
|
* :c:data:`state_av_act_2_rdm_ab_mo`
|
|
* :c:data:`state_av_act_2_rdm_bb_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_aa_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_ab_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_bb_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_spin_trace_mo`
|
|
* :c:data:`super_ci_dm`
|
|
* :c:data:`umat`
|
|
|
|
|
|
.. c:var:: list_all_but_del_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_all_but_del_orb (n_all_but_del_orb)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_all_but_del_orb`
|
|
|
|
|
|
|
|
.. c:var:: list_core
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_core (dim_list_core_orb)
|
|
integer, allocatable :: list_core_reverse (mo_num)
|
|
|
|
|
|
List of MO indices which are in the core.
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`dim_list_core_orb`
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_core_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`core_bitmask`
|
|
* :c:data:`core_energy`
|
|
* :c:data:`core_energy_erf`
|
|
* :c:data:`core_fock_operator`
|
|
* :c:data:`core_fock_operator_erf`
|
|
* :c:data:`eigenvectors_fock_matrix_mo`
|
|
* :c:data:`fock_matrix_mo`
|
|
* :c:data:`full_occ_2_rdm_aa_mo`
|
|
* :c:data:`full_occ_2_rdm_ab_mo`
|
|
* :c:data:`full_occ_2_rdm_bb_mo`
|
|
* :c:data:`full_occ_2_rdm_spin_trace_mo`
|
|
* :c:data:`one_e_dm_mo_alpha_for_dft`
|
|
* :c:data:`one_e_dm_mo_alpha_for_dft_no_core`
|
|
* :c:data:`one_e_dm_mo_beta_for_dft`
|
|
* :c:data:`one_e_dm_mo_beta_for_dft_no_core`
|
|
* :c:data:`state_av_full_occ_2_rdm_aa_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_ab_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_bb_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_spin_trace_mo`
|
|
|
|
|
|
.. c:var:: list_core_inact
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_core_inact (dim_list_core_inact_orb)
|
|
integer, allocatable :: list_core_inact_reverse (mo_num)
|
|
|
|
|
|
List of indices of the core and inactive MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`dim_list_core_inact_orb`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_core_inact_orb`
|
|
* :c:data:`n_int`
|
|
* :c:data:`reunion_of_core_inact_bitmask`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`bielec_pqxx_array`
|
|
* :c:data:`bielec_pxxq_array`
|
|
* :c:data:`cholesky_no_total_transp`
|
|
* :c:data:`d0tu_alpha_ao`
|
|
* :c:data:`etwo`
|
|
* :c:data:`excit`
|
|
* :c:data:`fipq`
|
|
* :c:data:`gradvec2`
|
|
* :c:data:`hessdiag`
|
|
* :c:data:`hessmat`
|
|
* :c:data:`hessmat_peter`
|
|
* :c:data:`lowest_super_ci_coef_mo`
|
|
* :c:data:`mat_tmp_dm_super_ci`
|
|
* :c:data:`occnum`
|
|
* :c:data:`super_ci_dm`
|
|
* :c:data:`umat`
|
|
|
|
|
|
.. c:var:: list_core_inact_act
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_core_inact_act (n_core_inact_act_orb)
|
|
integer, allocatable :: list_core_inact_act_reverse (mo_num)
|
|
|
|
|
|
List of indices of the core inactive and active MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_core_inact_act_orb`
|
|
* :c:data:`n_int`
|
|
* :c:data:`reunion_of_core_inact_act_bitmask`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`etwo`
|
|
* :c:data:`fapq`
|
|
* :c:data:`fipq`
|
|
* :c:data:`two_e_dm_mo`
|
|
|
|
|
|
.. c:var:: list_core_inact_act_reverse
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_core_inact_act (n_core_inact_act_orb)
|
|
integer, allocatable :: list_core_inact_act_reverse (mo_num)
|
|
|
|
|
|
List of indices of the core inactive and active MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_core_inact_act_orb`
|
|
* :c:data:`n_int`
|
|
* :c:data:`reunion_of_core_inact_act_bitmask`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`etwo`
|
|
* :c:data:`fapq`
|
|
* :c:data:`fipq`
|
|
* :c:data:`two_e_dm_mo`
|
|
|
|
|
|
.. c:var:: list_core_inact_reverse
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_core_inact (dim_list_core_inact_orb)
|
|
integer, allocatable :: list_core_inact_reverse (mo_num)
|
|
|
|
|
|
List of indices of the core and inactive MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`dim_list_core_inact_orb`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_core_inact_orb`
|
|
* :c:data:`n_int`
|
|
* :c:data:`reunion_of_core_inact_bitmask`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`bielec_pqxx_array`
|
|
* :c:data:`bielec_pxxq_array`
|
|
* :c:data:`cholesky_no_total_transp`
|
|
* :c:data:`d0tu_alpha_ao`
|
|
* :c:data:`etwo`
|
|
* :c:data:`excit`
|
|
* :c:data:`fipq`
|
|
* :c:data:`gradvec2`
|
|
* :c:data:`hessdiag`
|
|
* :c:data:`hessmat`
|
|
* :c:data:`hessmat_peter`
|
|
* :c:data:`lowest_super_ci_coef_mo`
|
|
* :c:data:`mat_tmp_dm_super_ci`
|
|
* :c:data:`occnum`
|
|
* :c:data:`super_ci_dm`
|
|
* :c:data:`umat`
|
|
|
|
|
|
.. c:var:: list_core_reverse
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_core (dim_list_core_orb)
|
|
integer, allocatable :: list_core_reverse (mo_num)
|
|
|
|
|
|
List of MO indices which are in the core.
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`dim_list_core_orb`
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_core_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`core_bitmask`
|
|
* :c:data:`core_energy`
|
|
* :c:data:`core_energy_erf`
|
|
* :c:data:`core_fock_operator`
|
|
* :c:data:`core_fock_operator_erf`
|
|
* :c:data:`eigenvectors_fock_matrix_mo`
|
|
* :c:data:`fock_matrix_mo`
|
|
* :c:data:`full_occ_2_rdm_aa_mo`
|
|
* :c:data:`full_occ_2_rdm_ab_mo`
|
|
* :c:data:`full_occ_2_rdm_bb_mo`
|
|
* :c:data:`full_occ_2_rdm_spin_trace_mo`
|
|
* :c:data:`one_e_dm_mo_alpha_for_dft`
|
|
* :c:data:`one_e_dm_mo_alpha_for_dft_no_core`
|
|
* :c:data:`one_e_dm_mo_beta_for_dft`
|
|
* :c:data:`one_e_dm_mo_beta_for_dft_no_core`
|
|
* :c:data:`state_av_full_occ_2_rdm_aa_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_ab_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_bb_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_spin_trace_mo`
|
|
|
|
|
|
.. c:var:: list_del
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_del (dim_list_del_orb)
|
|
integer, allocatable :: list_del_reverse (mo_num)
|
|
|
|
|
|
List of MO indices which are deleted.
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`dim_list_del_orb`
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_del_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`del_bitmask`
|
|
|
|
|
|
.. c:var:: list_del_reverse
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_del (dim_list_del_orb)
|
|
integer, allocatable :: list_del_reverse (mo_num)
|
|
|
|
|
|
List of MO indices which are deleted.
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`dim_list_del_orb`
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_del_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`del_bitmask`
|
|
|
|
|
|
.. c:var:: list_inact
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_inact (dim_list_inact_orb)
|
|
integer, allocatable :: list_inact_reverse (mo_num)
|
|
|
|
|
|
List of MO indices which are inactive.
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`dim_list_inact_orb`
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_inact_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`eigenvectors_fock_matrix_mo`
|
|
* :c:data:`fock_matrix_mo`
|
|
* :c:data:`full_occ_2_rdm_aa_mo`
|
|
* :c:data:`full_occ_2_rdm_ab_mo`
|
|
* :c:data:`full_occ_2_rdm_bb_mo`
|
|
* :c:data:`full_occ_2_rdm_spin_trace_mo`
|
|
* :c:data:`inact_bitmask`
|
|
* :c:data:`state_av_full_occ_2_rdm_aa_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_ab_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_bb_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_spin_trace_mo`
|
|
|
|
|
|
.. c:var:: list_inact_act
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_inact_act (n_inact_act_orb)
|
|
integer, allocatable :: list_inact_act_reverse (mo_num)
|
|
|
|
|
|
List of indices of the inactive and active MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_inact_act_orb`
|
|
* :c:data:`n_int`
|
|
* :c:data:`reunion_of_inact_act_bitmask`
|
|
|
|
|
|
|
|
.. c:var:: list_inact_act_reverse
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_inact_act (n_inact_act_orb)
|
|
integer, allocatable :: list_inact_act_reverse (mo_num)
|
|
|
|
|
|
List of indices of the inactive and active MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_inact_act_orb`
|
|
* :c:data:`n_int`
|
|
* :c:data:`reunion_of_inact_act_bitmask`
|
|
|
|
|
|
|
|
.. c:var:: list_inact_reverse
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_inact (dim_list_inact_orb)
|
|
integer, allocatable :: list_inact_reverse (mo_num)
|
|
|
|
|
|
List of MO indices which are inactive.
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`dim_list_inact_orb`
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_inact_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`eigenvectors_fock_matrix_mo`
|
|
* :c:data:`fock_matrix_mo`
|
|
* :c:data:`full_occ_2_rdm_aa_mo`
|
|
* :c:data:`full_occ_2_rdm_ab_mo`
|
|
* :c:data:`full_occ_2_rdm_bb_mo`
|
|
* :c:data:`full_occ_2_rdm_spin_trace_mo`
|
|
* :c:data:`inact_bitmask`
|
|
* :c:data:`state_av_full_occ_2_rdm_aa_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_ab_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_bb_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_spin_trace_mo`
|
|
|
|
|
|
.. c:var:: list_virt
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_virt (dim_list_virt_orb)
|
|
integer, allocatable :: list_virt_reverse (mo_num)
|
|
|
|
|
|
List of MO indices which are virtual
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`dim_list_virt_orb`
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_virt_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`cholesky_no_total_transp`
|
|
* :c:data:`eigenvectors_fock_matrix_mo`
|
|
* :c:data:`excit`
|
|
* :c:data:`fock_matrix_mo`
|
|
* :c:data:`gradvec2`
|
|
* :c:data:`hessdiag`
|
|
* :c:data:`hessmat`
|
|
* :c:data:`hessmat_peter`
|
|
* :c:data:`lowest_super_ci_coef_mo`
|
|
* :c:data:`mat_tmp_dm_super_ci`
|
|
* :c:data:`super_ci_dm`
|
|
* :c:data:`umat`
|
|
* :c:data:`virt_bitmask`
|
|
|
|
|
|
.. c:var:: list_virt_reverse
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: list_virt (dim_list_virt_orb)
|
|
integer, allocatable :: list_virt_reverse (mo_num)
|
|
|
|
|
|
List of MO indices which are virtual
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`dim_list_virt_orb`
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_virt_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`cholesky_no_total_transp`
|
|
* :c:data:`eigenvectors_fock_matrix_mo`
|
|
* :c:data:`excit`
|
|
* :c:data:`fock_matrix_mo`
|
|
* :c:data:`gradvec2`
|
|
* :c:data:`hessdiag`
|
|
* :c:data:`hessmat`
|
|
* :c:data:`hessmat_peter`
|
|
* :c:data:`lowest_super_ci_coef_mo`
|
|
* :c:data:`mat_tmp_dm_super_ci`
|
|
* :c:data:`super_ci_dm`
|
|
* :c:data:`umat`
|
|
* :c:data:`virt_bitmask`
|
|
|
|
|
|
.. c:var:: mo_coef_begin_iteration
|
|
|
|
|
|
File : :file:`bitmask/track_orb.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
double precision, allocatable :: mo_coef_begin_iteration (ao_num,mo_num)
|
|
|
|
|
|
Void provider to store the coefficients of the |MO| basis at the beginning of the SCF iteration
|
|
|
|
Useful to track some orbitals
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`ao_num`
|
|
* :c:data:`mo_num`
|
|
|
|
|
|
|
|
.. c:var:: mpi_bit_kind
|
|
|
|
|
|
File : :file:`bitmask/mpi.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: mpi_bit_kind
|
|
|
|
|
|
MPI bit kind type
|
|
|
|
|
|
|
|
.. c:var:: n_act_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: n_act_orb
|
|
|
|
|
|
Number of active MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`mpi_master`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_2_rdm_aa_mo`
|
|
* :c:data:`act_2_rdm_ab_mo`
|
|
* :c:data:`act_2_rdm_bb_mo`
|
|
* :c:data:`act_2_rdm_spin_trace_mo`
|
|
* :c:data:`act_2_rdm_trans_spin_trace_mo`
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`bielec_pqxx_array`
|
|
* :c:data:`bielec_pqxx_no_array`
|
|
* :c:data:`bielec_pxxq_array`
|
|
* :c:data:`bielec_pxxq_no_array`
|
|
* :c:data:`bielecci`
|
|
* :c:data:`bielecci_no`
|
|
* :c:data:`cholesky_no_1_idx_transp`
|
|
* :c:data:`cholesky_no_2_idx_transp`
|
|
* :c:data:`cholesky_no_total_transp`
|
|
* :c:data:`core_fock_operator`
|
|
* :c:data:`core_fock_operator_erf`
|
|
* :c:data:`d0tu`
|
|
* :c:data:`d0tu_alpha_ao`
|
|
* :c:data:`dim_list_act_orb`
|
|
* :c:data:`eigenvectors_fock_matrix_mo`
|
|
* :c:data:`etwo`
|
|
* :c:data:`excit`
|
|
* :c:data:`fapq`
|
|
* :c:data:`fock_matrix_mo`
|
|
* :c:data:`full_occ_2_rdm_aa_mo`
|
|
* :c:data:`full_occ_2_rdm_ab_mo`
|
|
* :c:data:`full_occ_2_rdm_bb_mo`
|
|
* :c:data:`full_occ_2_rdm_spin_trace_mo`
|
|
* :c:data:`gradvec2`
|
|
* :c:data:`hessdiag`
|
|
* :c:data:`hessmat`
|
|
* :c:data:`hessmat_peter`
|
|
* :c:data:`list_act`
|
|
* :c:data:`lowest_super_ci_coef_mo`
|
|
* :c:data:`mat_tmp_dm_super_ci`
|
|
* :c:data:`n_c_a_prov`
|
|
* :c:data:`n_core_inact_act_orb`
|
|
* :c:data:`n_inact_act_orb`
|
|
* :c:data:`natorbsci`
|
|
* :c:data:`natorbsci_mos`
|
|
* :c:data:`nmonoex`
|
|
* :c:data:`nsomomax`
|
|
* :c:data:`occnum`
|
|
* :c:data:`one_ints_no`
|
|
* :c:data:`p0tuvx`
|
|
* :c:data:`p0tuvx_no`
|
|
* :c:data:`p0tuvx_peter`
|
|
* :c:data:`state_av_act_2_rdm_aa_mo`
|
|
* :c:data:`state_av_act_2_rdm_ab_mo`
|
|
* :c:data:`state_av_act_2_rdm_bb_mo`
|
|
* :c:data:`state_av_act_2_rdm_spin_trace_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_aa_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_ab_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_bb_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_spin_trace_mo`
|
|
* :c:data:`super_ci_dm`
|
|
* :c:data:`umat`
|
|
|
|
|
|
.. c:var:: n_all_but_del_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: n_all_but_del_orb
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_all_but_del_orb`
|
|
|
|
|
|
.. c:var:: n_core_inact_act_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: n_core_inact_act_orb
|
|
|
|
|
|
Number of core inactive and active MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_act_orb`
|
|
* :c:data:`n_core_orb`
|
|
* :c:data:`n_inact_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`bielec_pqxx_array`
|
|
* :c:data:`bielec_pqxx_no_array`
|
|
* :c:data:`bielec_pxxq_array`
|
|
* :c:data:`bielec_pxxq_no_array`
|
|
* :c:data:`full_occ_2_rdm_aa_mo`
|
|
* :c:data:`full_occ_2_rdm_ab_mo`
|
|
* :c:data:`full_occ_2_rdm_bb_mo`
|
|
* :c:data:`full_occ_2_rdm_spin_trace_mo`
|
|
* :c:data:`list_core_inact_act`
|
|
* :c:data:`state_av_full_occ_2_rdm_aa_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_ab_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_bb_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_spin_trace_mo`
|
|
* :c:data:`two_e_dm_mo`
|
|
|
|
|
|
.. c:var:: n_core_inact_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: n_core_inact_orb
|
|
|
|
|
|
n_core + n_inact
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
* :c:data:`reunion_of_core_inact_bitmask`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`bielec_pqxx_array`
|
|
* :c:data:`bielec_pqxx_no_array`
|
|
* :c:data:`bielec_pxxq_array`
|
|
* :c:data:`bielec_pxxq_no_array`
|
|
* :c:data:`cholesky_no_total_transp`
|
|
* :c:data:`d0tu_alpha_ao`
|
|
* :c:data:`dim_list_core_inact_orb`
|
|
* :c:data:`etwo`
|
|
* :c:data:`excit`
|
|
* :c:data:`fipq`
|
|
* :c:data:`gradvec2`
|
|
* :c:data:`hessdiag`
|
|
* :c:data:`hessmat`
|
|
* :c:data:`hessmat_peter`
|
|
* :c:data:`list_core_inact`
|
|
* :c:data:`lowest_super_ci_coef_mo`
|
|
* :c:data:`mat_tmp_dm_super_ci`
|
|
* :c:data:`n_c_a_prov`
|
|
* :c:data:`nmonoex`
|
|
* :c:data:`occnum`
|
|
* :c:data:`super_ci_dm`
|
|
* :c:data:`umat`
|
|
|
|
|
|
.. c:var:: n_core_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: n_core_orb
|
|
|
|
|
|
Number of core MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`mpi_master`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`core_bitmask`
|
|
* :c:data:`core_energy`
|
|
* :c:data:`core_energy_erf`
|
|
* :c:data:`core_fock_operator`
|
|
* :c:data:`core_fock_operator_erf`
|
|
* :c:data:`dim_list_core_orb`
|
|
* :c:data:`eigenvectors_fock_matrix_mo`
|
|
* :c:data:`fock_matrix_mo`
|
|
* :c:data:`full_occ_2_rdm_aa_mo`
|
|
* :c:data:`full_occ_2_rdm_ab_mo`
|
|
* :c:data:`full_occ_2_rdm_bb_mo`
|
|
* :c:data:`full_occ_2_rdm_spin_trace_mo`
|
|
* :c:data:`list_core`
|
|
* :c:data:`n_core_inact_act_orb`
|
|
* :c:data:`one_e_dm_mo_alpha_for_dft`
|
|
* :c:data:`one_e_dm_mo_alpha_for_dft_no_core`
|
|
* :c:data:`one_e_dm_mo_beta_for_dft`
|
|
* :c:data:`one_e_dm_mo_beta_for_dft_no_core`
|
|
* :c:data:`pt2_f`
|
|
* :c:data:`state_av_full_occ_2_rdm_aa_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_ab_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_bb_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_spin_trace_mo`
|
|
|
|
|
|
.. c:var:: n_del_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: n_del_orb
|
|
|
|
|
|
Number of deleted MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`mpi_master`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`del_bitmask`
|
|
* :c:data:`dim_list_del_orb`
|
|
* :c:data:`list_del`
|
|
|
|
|
|
.. c:var:: n_inact_act_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: n_inact_act_orb
|
|
|
|
|
|
n_inact + n_act
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_act_orb`
|
|
* :c:data:`n_inact_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_inact_act`
|
|
|
|
|
|
.. c:var:: n_inact_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: n_inact_orb
|
|
|
|
|
|
Number of inactive MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`mpi_master`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`dim_list_inact_orb`
|
|
* :c:data:`eigenvectors_fock_matrix_mo`
|
|
* :c:data:`fock_matrix_mo`
|
|
* :c:data:`full_occ_2_rdm_aa_mo`
|
|
* :c:data:`full_occ_2_rdm_ab_mo`
|
|
* :c:data:`full_occ_2_rdm_bb_mo`
|
|
* :c:data:`full_occ_2_rdm_spin_trace_mo`
|
|
* :c:data:`inact_bitmask`
|
|
* :c:data:`list_inact`
|
|
* :c:data:`n_core_inact_act_orb`
|
|
* :c:data:`n_inact_act_orb`
|
|
* :c:data:`state_av_full_occ_2_rdm_aa_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_ab_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_bb_mo`
|
|
* :c:data:`state_av_full_occ_2_rdm_spin_trace_mo`
|
|
|
|
|
|
.. c:var:: n_int
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: n_int
|
|
|
|
|
|
Number of 64-bit integers needed to represent determinants as binary strings
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_num`
|
|
* :c:data:`mpi_master`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`cfg_seniority_index`
|
|
* :c:data:`ci_electronic_energy`
|
|
* :c:data:`closed_shell_ref_bitmask`
|
|
* :c:data:`coef_hf_selector`
|
|
* :c:data:`core_bitmask`
|
|
* :c:data:`core_inact_act_bitmask_4`
|
|
* :c:data:`del_bitmask`
|
|
* :c:data:`det_to_configuration`
|
|
* :c:data:`dettocsftransformationmatrix`
|
|
* :c:data:`diagonal_h_matrix_on_psi_det`
|
|
* :c:data:`dominant_dets_of_cfgs`
|
|
* :c:data:`double_exc_bitmask`
|
|
* :c:data:`exc_degree_per_selectors`
|
|
* :c:data:`fock_operator_closed_shell_ref_bitmask`
|
|
* :c:data:`fock_wee_closed_shell`
|
|
* :c:data:`full_ijkl_bitmask`
|
|
* :c:data:`full_ijkl_bitmask_4`
|
|
* :c:data:`generators_bitmask`
|
|
* :c:data:`global_selection_buffer`
|
|
* :c:data:`gradvec_old`
|
|
* :c:data:`h_apply_buffer_allocated`
|
|
* :c:data:`h_matrix_all_dets`
|
|
* :c:data:`h_matrix_cas`
|
|
* :c:data:`h_matrix_diag_all_dets`
|
|
* :c:data:`hessmat_old`
|
|
* :c:data:`hf_bitmask`
|
|
* :c:data:`inact_bitmask`
|
|
* :c:data:`inact_virt_bitmask`
|
|
* :c:data:`list_core_inact`
|
|
* :c:data:`list_core_inact_act`
|
|
* :c:data:`list_inact_act`
|
|
* :c:data:`max_degree_exc`
|
|
* :c:data:`mo_two_e_integrals_erf_in_map`
|
|
* :c:data:`mo_two_e_integrals_in_map`
|
|
* :c:data:`multi_s_dipole_moment`
|
|
* :c:data:`n_core_inact_orb`
|
|
* :c:data:`n_det_generators`
|
|
* :c:data:`n_dominant_dets_of_cfgs`
|
|
* :c:data:`n_elec_alpha_for_psi_configuration`
|
|
* :c:data:`one_e_dm_mo_alpha`
|
|
* :c:data:`one_e_tr_dm_mo`
|
|
* :c:data:`one_e_tr_dm_mo_alpha`
|
|
* :c:data:`orb_swap`
|
|
* :c:data:`ormas_bitmask`
|
|
* :c:data:`p0tuvx`
|
|
* :c:data:`p0tuvx_peter`
|
|
* :c:data:`psi_bilinear_matrix_values`
|
|
* :c:data:`psi_cas`
|
|
* :c:data:`psi_cas_sorted_bit`
|
|
* :c:data:`psi_configuration`
|
|
* :c:data:`psi_configuration_sorted`
|
|
* :c:data:`psi_configuration_to_psi_det`
|
|
* :c:data:`psi_csf_coef`
|
|
* :c:data:`psi_det`
|
|
* :c:data:`psi_det_alpha`
|
|
* :c:data:`psi_det_alpha_unique`
|
|
* :c:data:`psi_det_beta`
|
|
* :c:data:`psi_det_beta_unique`
|
|
* :c:data:`psi_det_generators`
|
|
* :c:data:`psi_det_hii`
|
|
* :c:data:`psi_det_sorted`
|
|
* :c:data:`psi_det_sorted_bit`
|
|
* :c:data:`psi_energy`
|
|
* :c:data:`psi_energy_two_e`
|
|
* :c:data:`psi_energy_two_e_trans`
|
|
* :c:data:`psi_non_cas`
|
|
* :c:data:`psi_non_cas_sorted_bit`
|
|
* :c:data:`psi_selectors`
|
|
* :c:data:`psi_selectors_diag_h_mat`
|
|
* :c:data:`ref_bitmask`
|
|
* :c:data:`ref_bitmask_energy`
|
|
* :c:data:`ref_closed_shell_bitmask`
|
|
* :c:data:`reunion_of_act_virt_bitmask`
|
|
* :c:data:`reunion_of_bitmask`
|
|
* :c:data:`reunion_of_core_inact_act_bitmask`
|
|
* :c:data:`reunion_of_core_inact_bitmask`
|
|
* :c:data:`reunion_of_inact_act_bitmask`
|
|
* :c:data:`s2_matrix_all_dets`
|
|
* :c:data:`s2_values`
|
|
* :c:data:`single_exc_bitmask`
|
|
* :c:data:`singles_alpha_csc`
|
|
* :c:data:`singles_alpha_csc_idx`
|
|
* :c:data:`singles_alpha_csc_map`
|
|
* :c:data:`singles_beta_csc`
|
|
* :c:data:`singles_beta_csc_idx`
|
|
* :c:data:`singles_beta_csc_map`
|
|
* :c:data:`unpaired_alpha_electrons`
|
|
* :c:data:`virt_bitmask`
|
|
* :c:data:`virt_bitmask_4`
|
|
|
|
|
|
.. c:var:: n_virt_orb
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer :: n_virt_orb
|
|
|
|
|
|
Number of virtual MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_class`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`mpi_master`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`cholesky_no_total_transp`
|
|
* :c:data:`dim_list_virt_orb`
|
|
* :c:data:`eigenvectors_fock_matrix_mo`
|
|
* :c:data:`excit`
|
|
* :c:data:`fock_matrix_mo`
|
|
* :c:data:`gradvec2`
|
|
* :c:data:`hessdiag`
|
|
* :c:data:`hessmat`
|
|
* :c:data:`hessmat_peter`
|
|
* :c:data:`list_virt`
|
|
* :c:data:`lowest_super_ci_coef_mo`
|
|
* :c:data:`mat_tmp_dm_super_ci`
|
|
* :c:data:`n_c_a_prov`
|
|
* :c:data:`nmonoex`
|
|
* :c:data:`super_ci_dm`
|
|
* :c:data:`umat`
|
|
* :c:data:`virt_bitmask`
|
|
|
|
|
|
.. c:var:: ormas_bitmask
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_ormas.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: ormas_bitmask (N_int,ormas_n_space)
|
|
|
|
|
|
bitmask for each ormas space
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
* :c:data:`ormas_list_orb`
|
|
* :c:data:`ormas_n_orb`
|
|
* :c:data:`ormas_n_space`
|
|
|
|
|
|
|
|
.. c:var:: ormas_list_orb
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_ormas.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: ormas_list_orb (ormas_max_n_orb,ormas_n_space)
|
|
|
|
|
|
list of orbitals in each ormas space
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`ormas_n_orb`
|
|
* :c:data:`ormas_n_space`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`ormas_bitmask`
|
|
|
|
|
|
.. c:var:: ormas_max_e
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_ormas.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: ormas_max_e (ormas_n_space)
|
|
|
|
|
|
max nelec in each active space
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`elec_num`
|
|
* :c:data:`ezfio_filename`
|
|
* :c:data:`mpi_master`
|
|
* :c:data:`ormas_n_space`
|
|
|
|
|
|
|
|
.. c:var:: ormas_max_n_orb
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_ormas.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: ormas_n_orb (ormas_n_space)
|
|
integer :: ormas_max_n_orb
|
|
|
|
|
|
number of orbitals in each ormas space
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_num`
|
|
* :c:data:`ormas_mstart`
|
|
* :c:data:`ormas_n_space`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`ormas_bitmask`
|
|
* :c:data:`ormas_list_orb`
|
|
|
|
|
|
.. c:var:: ormas_min_e
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_ormas.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: ormas_min_e (ormas_n_space)
|
|
|
|
|
|
min nelec in each active space
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`ezfio_filename`
|
|
* :c:data:`mpi_master`
|
|
* :c:data:`ormas_n_space`
|
|
|
|
|
|
|
|
.. c:var:: ormas_mstart
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_ormas.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: ormas_mstart (ormas_n_space)
|
|
|
|
|
|
first orbital idx in each active space
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`ezfio_filename`
|
|
* :c:data:`mpi_master`
|
|
* :c:data:`ormas_n_space`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`ormas_n_orb`
|
|
|
|
|
|
.. c:var:: ormas_n_orb
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_ormas.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer, allocatable :: ormas_n_orb (ormas_n_space)
|
|
integer :: ormas_max_n_orb
|
|
|
|
|
|
number of orbitals in each ormas space
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_num`
|
|
* :c:data:`ormas_mstart`
|
|
* :c:data:`ormas_n_space`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`ormas_bitmask`
|
|
* :c:data:`ormas_list_orb`
|
|
|
|
|
|
.. c:var:: ref_bitmask
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: ref_bitmask (N_int,2)
|
|
|
|
|
|
Reference bit mask, used in Slater rules, chosen as Hartree-Fock bitmask
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`hf_bitmask`
|
|
* :c:data:`n_int`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`closed_shell_ref_bitmask`
|
|
* :c:data:`coef_hf_selector`
|
|
* :c:data:`diagonal_h_matrix_on_psi_det`
|
|
* :c:data:`exc_degree_per_selectors`
|
|
* :c:data:`psi_det_hii`
|
|
* :c:data:`psi_selectors_diag_h_mat`
|
|
* :c:data:`ref_bitmask_energy`
|
|
* :c:data:`ref_closed_shell_bitmask`
|
|
|
|
|
|
.. c:var:: reunion_of_act_virt_bitmask
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: reunion_of_act_virt_bitmask (N_int,2)
|
|
|
|
|
|
Reunion of the inactive and active bitmasks
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`n_int`
|
|
* :c:data:`virt_bitmask`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`generators_bitmask`
|
|
|
|
|
|
.. c:var:: reunion_of_bitmask
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: reunion_of_bitmask (N_int,2)
|
|
|
|
|
|
Reunion of the inactive, active and virtual bitmasks
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`inact_bitmask`
|
|
* :c:data:`n_int`
|
|
* :c:data:`virt_bitmask`
|
|
|
|
|
|
|
|
.. c:var:: reunion_of_core_inact_act_bitmask
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: reunion_of_core_inact_act_bitmask (N_int,2)
|
|
|
|
|
|
Reunion of the core, inactive and active bitmasks
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`n_int`
|
|
* :c:data:`reunion_of_core_inact_bitmask`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`core_inact_act_bitmask_4`
|
|
* :c:data:`list_core_inact_act`
|
|
|
|
|
|
.. c:var:: reunion_of_core_inact_bitmask
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: reunion_of_core_inact_bitmask (N_int,2)
|
|
|
|
|
|
Reunion of the core and inactive and virtual bitmasks
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`core_bitmask`
|
|
* :c:data:`inact_bitmask`
|
|
* :c:data:`n_int`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_core_inact`
|
|
* :c:data:`n_core_inact_orb`
|
|
* :c:data:`n_det_generators`
|
|
* :c:data:`psi_det_generators`
|
|
* :c:data:`reunion_of_core_inact_act_bitmask`
|
|
|
|
|
|
.. c:var:: reunion_of_inact_act_bitmask
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: reunion_of_inact_act_bitmask (N_int,2)
|
|
|
|
|
|
Reunion of the inactive and active bitmasks
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`inact_bitmask`
|
|
* :c:data:`n_int`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`generators_bitmask`
|
|
* :c:data:`list_inact_act`
|
|
|
|
|
|
.. c:var:: unpaired_alpha_electrons
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: unpaired_alpha_electrons (N_int)
|
|
|
|
|
|
Bitmask reprenting the unpaired alpha electrons in the HF_bitmask
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`hf_bitmask`
|
|
* :c:data:`n_int`
|
|
|
|
|
|
|
|
.. c:var:: virt_bitmask
|
|
|
|
|
|
File : :file:`bitmask/core_inact_act_virt.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: virt_bitmask (N_int,2)
|
|
|
|
|
|
Bitmask identifying the virtual MOs
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_virt`
|
|
* :c:data:`n_int`
|
|
* :c:data:`n_virt_orb`
|
|
|
|
Needed by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`inact_virt_bitmask`
|
|
* :c:data:`n_det_generators`
|
|
* :c:data:`psi_det_generators`
|
|
* :c:data:`reunion_of_act_virt_bitmask`
|
|
* :c:data:`reunion_of_bitmask`
|
|
* :c:data:`virt_bitmask_4`
|
|
|
|
|
|
.. c:var:: virt_bitmask_4
|
|
|
|
|
|
File : :file:`bitmask/bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer(bit_kind), allocatable :: virt_bitmask_4 (N_int,4)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
* :c:data:`virt_bitmask`
|
|
|
|
|
|
|
|
|
|
Subroutines / functions
|
|
-----------------------
|
|
|
|
.. c:function:: bitstring_to_hexa:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine bitstring_to_hexa( output, string, Nint )
|
|
|
|
|
|
Transform a bit string to a string in hexadecimal format for printing
|
|
|
|
Called by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`debug_cfg`
|
|
* :c:func:`debug_det`
|
|
* :c:func:`debug_spindet`
|
|
|
|
|
|
.. c:function:: bitstring_to_list:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine bitstring_to_list( string, list, n_elements, Nint)
|
|
|
|
|
|
Gives the indices(+1) of the bits set to 1 in the bit string
|
|
|
|
Called by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`add_integrals_to_map`
|
|
* :c:func:`add_integrals_to_map_erf`
|
|
* :c:func:`create_microlist`
|
|
* :c:func:`example_bitmask`
|
|
* :c:func:`generate_cas_space`
|
|
* :c:func:`getmobiles`
|
|
* :c:data:`list_core_inact`
|
|
* :c:data:`list_core_inact_act`
|
|
* :c:data:`list_inact_act`
|
|
* :c:data:`ref_bitmask_energy`
|
|
* :c:func:`splash_p`
|
|
* :c:func:`spot_hasbeen`
|
|
|
|
|
|
.. c:function:: bitstring_to_str:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine bitstring_to_str( output, string, Nint )
|
|
|
|
|
|
Transform a bit string to a string for printing
|
|
|
|
Called by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`add_integrals_to_map_erf`
|
|
* :c:func:`example_bitmask`
|
|
* :c:func:`print_det`
|
|
* :c:func:`print_det_one_dimension`
|
|
* :c:func:`print_spindet`
|
|
|
|
|
|
.. c:function:: broadcast_chunks_bit_kind:
|
|
|
|
|
|
File : :file:`bitmask/mpi.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine broadcast_chunks_bit_kind(A, LDA)
|
|
|
|
|
|
Broadcast with chunks of ~2GB
|
|
|
|
|
|
.. c:function:: clear_bit_to_integer:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine clear_bit_to_integer(i_physical,key,Nint)
|
|
|
|
|
|
set to 0 the bit number i_physical in the bitstring key
|
|
|
|
Called by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`example_bitmask`
|
|
* :c:data:`ref_closed_shell_bitmask`
|
|
|
|
|
|
.. c:function:: configuration_to_str:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine configuration_to_str( output, string, Nint )
|
|
|
|
|
|
Transform the bit string of a configuration to a string for printing
|
|
|
|
Called by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`debug_cfg`
|
|
|
|
|
|
.. c:function:: debug_cfg:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine debug_cfg(string,Nint)
|
|
|
|
|
|
Subroutine to print the content of a determinant in '+-' notation and
|
|
hexadecimal representation.
|
|
|
|
Calls:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`bitstring_to_hexa`
|
|
* :c:func:`configuration_to_str`
|
|
|
|
|
|
.. c:function:: debug_det:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine debug_det(string,Nint)
|
|
|
|
|
|
Subroutine to print the content of a determinant in '+-' notation and
|
|
hexadecimal representation.
|
|
|
|
Called by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`build_fock_tmp`
|
|
* :c:func:`example_determinants`
|
|
* :c:func:`get_excitation_degree_vector_single_or_exchange_verbose`
|
|
* :c:func:`get_particles_general`
|
|
* :c:func:`number_of_holes_verbose`
|
|
* :c:func:`number_of_particles_verbose`
|
|
* :c:func:`routine_example_psi_det`
|
|
|
|
Calls:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`bitstring_to_hexa`
|
|
* :c:func:`print_det`
|
|
|
|
|
|
.. c:function:: debug_spindet:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine debug_spindet(string,Nint)
|
|
|
|
|
|
Subroutine to print the content of a determinant in '+-' notation and
|
|
hexadecimal representation.
|
|
|
|
Calls:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`bitstring_to_hexa`
|
|
* :c:func:`print_spindet`
|
|
|
|
|
|
.. c:function:: det_allowed_ormas:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_ormas.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
logical function det_allowed_ormas(key_in)
|
|
|
|
|
|
return true if det has allowable ormas occupations
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
* :c:data:`ormas_bitmask`
|
|
* :c:data:`ormas_max_e`
|
|
* :c:data:`ormas_min_e`
|
|
* :c:data:`ormas_n_space`
|
|
|
|
|
|
.. c:function:: example_bitmask:
|
|
|
|
|
|
File : :file:`bitmask/example.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine example_bitmask
|
|
|
|
|
|
subroutine that illustrates the main features available in bitmask
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`list_act`
|
|
* :c:data:`list_core`
|
|
* :c:data:`list_inact`
|
|
* :c:data:`list_virt`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_act_orb`
|
|
* :c:data:`n_core_orb`
|
|
* :c:data:`n_inact_orb`
|
|
* :c:data:`n_int`
|
|
* :c:data:`n_virt_orb`
|
|
|
|
Calls:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`bitstring_to_list`
|
|
* :c:func:`bitstring_to_str`
|
|
* :c:func:`clear_bit_to_integer`
|
|
* :c:func:`set_bit_to_integer`
|
|
|
|
|
|
.. c:function:: initialize_mo_coef_begin_iteration:
|
|
|
|
|
|
File : :file:`bitmask/track_orb.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine initialize_mo_coef_begin_iteration
|
|
|
|
|
|
|
|
Initialize :c:data:`mo_coef_begin_iteration` to the current :c:data:`mo_coef`
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`mo_coef`
|
|
* :c:data:`mo_coef_begin_iteration`
|
|
|
|
Called by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`damping_scf`
|
|
* :c:func:`roothaan_hall_scf`
|
|
|
|
|
|
.. c:function:: is_a_1h:
|
|
|
|
|
|
File : :file:`bitmask/bitmask_cas_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
logical function is_a_1h(key_in)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
|
|
|
|
.. c:function:: is_a_1h1p:
|
|
|
|
|
|
File : :file:`bitmask/bitmask_cas_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
logical function is_a_1h1p(key_in)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
|
|
|
|
.. c:function:: is_a_1h2p:
|
|
|
|
|
|
File : :file:`bitmask/bitmask_cas_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
logical function is_a_1h2p(key_in)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
|
|
|
|
.. c:function:: is_a_1p:
|
|
|
|
|
|
File : :file:`bitmask/bitmask_cas_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
logical function is_a_1p(key_in)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
|
|
|
|
.. c:function:: is_a_2h:
|
|
|
|
|
|
File : :file:`bitmask/bitmask_cas_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
logical function is_a_2h(key_in)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
|
|
|
|
.. c:function:: is_a_2h1p:
|
|
|
|
|
|
File : :file:`bitmask/bitmask_cas_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
logical function is_a_2h1p(key_in)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
|
|
|
|
.. c:function:: is_a_2p:
|
|
|
|
|
|
File : :file:`bitmask/bitmask_cas_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
logical function is_a_2p(key_in)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
|
|
|
|
.. c:function:: is_a_two_holes_two_particles:
|
|
|
|
|
|
File : :file:`bitmask/bitmask_cas_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
logical function is_a_two_holes_two_particles(key_in)
|
|
|
|
|
|
logical function that returns True if the determinant 'key_in'
|
|
belongs to the 2h-2p excitation class of the DDCI space
|
|
this is calculated using the act_bitmask that defines the active
|
|
orbital space, the inact_bitmasl that defines the inactive oribital space
|
|
and the virt_bitmask that defines the virtual orbital space
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`n_int`
|
|
* :c:data:`reunion_of_core_inact_bitmask`
|
|
* :c:data:`virt_bitmask`
|
|
|
|
|
|
.. c:function:: is_i_in_virtual:
|
|
|
|
|
|
File : :file:`bitmask/bitmask_cas_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
logical function is_i_in_virtual(i)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
* :c:data:`virt_bitmask`
|
|
|
|
|
|
.. c:function:: is_integer_in_string:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
logical function is_integer_in_string(bite,string,Nint)
|
|
|
|
|
|
|
|
Calls:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`set_bit_to_integer`
|
|
|
|
|
|
.. c:function:: is_the_hole_in_det:
|
|
|
|
|
|
File : :file:`bitmask/find_hole.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
logical function is_the_hole_in_det(key_in,ispin,i_hole)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
|
|
|
|
.. c:function:: is_the_particl_in_det:
|
|
|
|
|
|
File : :file:`bitmask/find_hole.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
logical function is_the_particl_in_det(key_in,ispin,i_particl)
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
|
|
|
|
.. c:function:: list_to_bitstring:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine list_to_bitstring( string, list, n_elements, Nint)
|
|
|
|
|
|
Returns the physical string "string(N_int,2)" from the array of
|
|
occupations "list(N_int*bit_kind_size,2)
|
|
|
|
Called by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`core_bitmask`
|
|
* :c:data:`del_bitmask`
|
|
* :c:func:`generate_cas_space`
|
|
* :c:data:`hf_bitmask`
|
|
* :c:data:`inact_bitmask`
|
|
* :c:func:`orb_range_2_rdm_openmp_work_1`
|
|
* :c:func:`orb_range_2_rdm_openmp_work_2`
|
|
* :c:func:`orb_range_2_rdm_openmp_work_3`
|
|
* :c:func:`orb_range_2_rdm_openmp_work_4`
|
|
* :c:func:`orb_range_2_rdm_openmp_work_n_int`
|
|
* :c:func:`orb_range_2_rdm_state_av_openmp_work_1`
|
|
* :c:func:`orb_range_2_rdm_state_av_openmp_work_2`
|
|
* :c:func:`orb_range_2_rdm_state_av_openmp_work_3`
|
|
* :c:func:`orb_range_2_rdm_state_av_openmp_work_4`
|
|
* :c:func:`orb_range_2_rdm_state_av_openmp_work_n_int`
|
|
* :c:func:`orb_range_2_trans_rdm_openmp_work_1`
|
|
* :c:func:`orb_range_2_trans_rdm_openmp_work_2`
|
|
* :c:func:`orb_range_2_trans_rdm_openmp_work_3`
|
|
* :c:func:`orb_range_2_trans_rdm_openmp_work_4`
|
|
* :c:func:`orb_range_2_trans_rdm_openmp_work_n_int`
|
|
* :c:data:`ormas_bitmask`
|
|
* :c:data:`virt_bitmask`
|
|
|
|
|
|
.. c:function:: modify_bitmasks_for_hole:
|
|
|
|
|
|
File : :file:`bitmask/modify_bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine modify_bitmasks_for_hole(i_hole)
|
|
|
|
|
|
modify the generators_bitmask in order that one can only excite
|
|
the electrons occupying i_hole
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`generators_bitmask`
|
|
* :c:data:`index_holes_bitmask`
|
|
* :c:data:`n_int`
|
|
|
|
|
|
.. c:function:: modify_bitmasks_for_hole_in_out:
|
|
|
|
|
|
File : :file:`bitmask/modify_bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine modify_bitmasks_for_hole_in_out(i_hole)
|
|
|
|
|
|
modify the generators_bitmask in order that one can only excite
|
|
the electrons occupying i_hole
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`generators_bitmask`
|
|
* :c:data:`index_holes_bitmask`
|
|
|
|
|
|
.. c:function:: modify_bitmasks_for_particl:
|
|
|
|
|
|
File : :file:`bitmask/modify_bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine modify_bitmasks_for_particl(i_part)
|
|
|
|
|
|
modify the generators_bitmask in order that one can only excite
|
|
the electrons to the orbital i_part
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`generators_bitmask`
|
|
* :c:data:`index_particl_bitmask`
|
|
* :c:data:`n_int`
|
|
|
|
|
|
.. c:function:: number_of_holes:
|
|
|
|
|
|
File : :file:`bitmask/bitmask_cas_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer function number_of_holes(key_in)
|
|
|
|
|
|
Function that returns the number of holes in the inact space
|
|
|
|
popcnt(
|
|
xor(
|
|
iand(
|
|
reunion_of_core_inact_bitmask(1,1),
|
|
xor(
|
|
key_in(1,1),
|
|
iand(
|
|
key_in(1,1),
|
|
act_bitmask(1,1))
|
|
)
|
|
),
|
|
reunion_of_core_inact_bitmask(1,1)) )
|
|
|
|
(key_in && act_bitmask)
|
|
+---------------------+
|
|
electrons in cas xor key_in
|
|
+---------------------------------+
|
|
electrons outside of cas && reunion_of_core_inact_bitmask
|
|
+------------------------------------------------------------------+
|
|
electrons in the core/inact space xor reunion_of_core_inact_bitmask
|
|
+---------------------------------------------------------------------------------+
|
|
holes
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`n_int`
|
|
* :c:data:`reunion_of_core_inact_bitmask`
|
|
|
|
|
|
.. c:function:: number_of_holes_verbose:
|
|
|
|
|
|
File : :file:`bitmask/bitmask_cas_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer function number_of_holes_verbose(key_in)
|
|
|
|
|
|
function that returns the number of holes in the inact space
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`n_int`
|
|
* :c:data:`reunion_of_core_inact_bitmask`
|
|
|
|
Calls:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`debug_det`
|
|
|
|
|
|
.. c:function:: number_of_particles:
|
|
|
|
|
|
File : :file:`bitmask/bitmask_cas_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer function number_of_particles(key_in)
|
|
|
|
|
|
function that returns the number of particles in the virtual space
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`n_int`
|
|
* :c:data:`virt_bitmask`
|
|
|
|
|
|
.. c:function:: number_of_particles_verbose:
|
|
|
|
|
|
File : :file:`bitmask/bitmask_cas_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
integer function number_of_particles_verbose(key_in)
|
|
|
|
|
|
function that returns the number of particles in the inact space
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`act_bitmask`
|
|
* :c:data:`n_int`
|
|
* :c:data:`virt_bitmask`
|
|
|
|
Calls:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`debug_det`
|
|
|
|
|
|
.. c:function:: ormas_occ:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_ormas.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine ormas_occ(key_in, occupancies)
|
|
|
|
|
|
number of electrons in each ormas space
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`n_int`
|
|
* :c:data:`ormas_bitmask`
|
|
* :c:data:`ormas_n_space`
|
|
|
|
|
|
.. c:function:: print_det:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine print_det(string,Nint)
|
|
|
|
|
|
Subroutine to print the content of a determinant using the '+-' notation
|
|
|
|
Called by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`debug_det`
|
|
* :c:func:`example_determinants`
|
|
* :c:func:`print_generators_bitmasks_particles`
|
|
|
|
Calls:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`bitstring_to_str`
|
|
|
|
|
|
.. c:function:: print_det_one_dimension:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine print_det_one_dimension(string,Nint)
|
|
|
|
|
|
Subroutine to print the content of a determinant using the '+-' notation
|
|
|
|
Calls:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`bitstring_to_str`
|
|
|
|
|
|
.. c:function:: print_generators_bitmasks_holes:
|
|
|
|
|
|
File : :file:`bitmask/modify_bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine print_generators_bitmasks_holes
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`generators_bitmask`
|
|
* :c:data:`index_holes_bitmask`
|
|
* :c:data:`n_int`
|
|
|
|
|
|
.. c:function:: print_generators_bitmasks_particles:
|
|
|
|
|
|
File : :file:`bitmask/modify_bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine print_generators_bitmasks_particles
|
|
|
|
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`generators_bitmask`
|
|
* :c:data:`index_particl_bitmask`
|
|
* :c:data:`n_int`
|
|
|
|
Calls:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`print_det`
|
|
|
|
|
|
.. c:function:: print_spindet:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine print_spindet(string,Nint)
|
|
|
|
|
|
Subroutine to print the content of a determinant using the '+-' notation
|
|
|
|
Called by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`debug_spindet`
|
|
|
|
Calls:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`bitstring_to_str`
|
|
|
|
|
|
.. c:function:: reorder_core_orb:
|
|
|
|
|
|
File : :file:`bitmask/track_orb.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine reorder_core_orb
|
|
|
|
|
|
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`
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`ao_num`
|
|
* :c:data:`ao_overlap`
|
|
* :c:data:`list_core`
|
|
* :c:data:`mo_coef`
|
|
* :c:data:`mo_coef_begin_iteration`
|
|
* :c:data:`mo_num`
|
|
* :c:data:`n_core_orb`
|
|
|
|
Called by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`damping_scf`
|
|
* :c:func:`roothaan_hall_scf`
|
|
|
|
Calls:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`dsort`
|
|
|
|
|
|
.. c:function:: set_bit_to_integer:
|
|
|
|
|
|
File : :file:`bitmask/bitmasks_routines.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine set_bit_to_integer(i_physical,key,Nint)
|
|
|
|
|
|
set to 1 the bit number i_physical in the bitstring key
|
|
|
|
Called by:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:func:`example_bitmask`
|
|
* :c:func:`is_integer_in_string`
|
|
* :c:data:`orb_swap`
|
|
|
|
|
|
.. c:function:: set_bitmask_hole_as_input:
|
|
|
|
|
|
File : :file:`bitmask/modify_bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine set_bitmask_hole_as_input(input_bitmask)
|
|
|
|
|
|
set the generators_bitmask for the holes
|
|
as the input_bitmask
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`generators_bitmask`
|
|
* :c:data:`index_holes_bitmask`
|
|
* :c:data:`n_int`
|
|
|
|
Touches:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`generators_bitmask`
|
|
|
|
|
|
.. c:function:: set_bitmask_particl_as_input:
|
|
|
|
|
|
File : :file:`bitmask/modify_bitmasks.irp.f`
|
|
|
|
.. code:: fortran
|
|
|
|
subroutine set_bitmask_particl_as_input(input_bitmask)
|
|
|
|
|
|
set the generators_bitmask for the particles
|
|
as the input_bitmask
|
|
|
|
Needs:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`generators_bitmask`
|
|
* :c:data:`index_particl_bitmask`
|
|
* :c:data:`n_int`
|
|
|
|
Touches:
|
|
|
|
.. hlist::
|
|
:columns: 3
|
|
|
|
* :c:data:`generators_bitmask`
|
|
|