# generators_full

Module defining the generator determinants as all the determinants of the variational space.

This module is intended to be included in the `NEED` file to define a full set of generators.

## Providers

`degree_max_generators`

  File : `generators_full/generators.irp.f`

      integer :: degree_max_generators

  Max degree of excitation (respect to HF) of the generators

  Needs:

  `hf_bitmask` `n_det_generators` | `n_int` | `psi_det_generators`

`n_det_generators`

  File : `generators_full/generators.irp.f`

      integer :: n_det_generators

  For Single reference wave functions, the number of generators is 1 : the Hartree-Fock determinant

  Needs:

  `mpi_master` `n_det` | `output_wall_time_0` `psi_det_sorted` | `threshold_generators`

  Needed by:

  `degree_max_generators` `n_det_selectors` `pt2_f` | `pt2_j` `pt2_n_tasks` `pt2_n_teeth` | `pt2_u` `pt2_w`

`psi_coef_generators`

  File : `generators_full/generators.irp.f`

      integer(bit_kind), allocatable  :: psi_det_generators   (N_int,2,psi_det_size)
      double precision, allocatable   :: psi_coef_generators  (psi_det_size,N_states)

  For Single reference wave functions, the generator is the Hartree-Fock determinant

  Needs:

  `n_det` `n_int` | `n_states` `psi_det_size` | `psi_det_sorted`

  Needed by:

  `degree_max_generators` |  |

`psi_coef_sorted_gen`

  File : `generators_full/generators.irp.f`

      integer(bit_kind), allocatable  :: psi_det_sorted_gen   (N_int,2,psi_det_size)
      double precision, allocatable   :: psi_coef_sorted_gen  (psi_det_size,N_states)
      integer, allocatable    :: psi_det_sorted_gen_order     (psi_det_size)

  For Single reference wave functions, the generator is the Hartree-Fock determinant

  Needs:

  `n_int` `n_states` | `psi_det_size` | `psi_det_sorted`

  Needed by:

  `pt2_f` | `pt2_n_teeth` | `pt2_w`

`psi_det_generators`

  File : `generators_full/generators.irp.f`

      integer(bit_kind), allocatable  :: psi_det_generators   (N_int,2,psi_det_size)
      double precision, allocatable   :: psi_coef_generators  (psi_det_size,N_states)

  For Single reference wave functions, the generator is the Hartree-Fock determinant

  Needs:

  `n_det` `n_int` | `n_states` `psi_det_size` | `psi_det_sorted`

  Needed by:

  `degree_max_generators` |  |

`psi_det_sorted_gen`

  File : `generators_full/generators.irp.f`

      integer(bit_kind), allocatable  :: psi_det_sorted_gen   (N_int,2,psi_det_size)
      double precision, allocatable   :: psi_coef_sorted_gen  (psi_det_size,N_states)
      integer, allocatable    :: psi_det_sorted_gen_order     (psi_det_size)

  For Single reference wave functions, the generator is the Hartree-Fock determinant

  Needs:

  `n_int` `n_states` | `psi_det_size` | `psi_det_sorted`

  Needed by:

  `pt2_f` | `pt2_n_teeth` | `pt2_w`

`psi_det_sorted_gen_order`

  File : `generators_full/generators.irp.f`

      integer(bit_kind), allocatable  :: psi_det_sorted_gen   (N_int,2,psi_det_size)
      double precision, allocatable   :: psi_coef_sorted_gen  (psi_det_size,N_states)
      integer, allocatable    :: psi_det_sorted_gen_order     (psi_det_size)

  For Single reference wave functions, the generator is the Hartree-Fock determinant

  Needs:

  `n_int` `n_states` | `psi_det_size` | `psi_det_sorted`

  Needed by:

  `pt2_f` | `pt2_n_teeth` | `pt2_w`

`select_max`

  File : `generators_full/generators.irp.f`

      double precision, allocatable   :: select_max   (size_select_max)

  Memo to skip useless selectors

  Needs:

  `size_select_max` |  |

`size_select_max`

  File : `generators_full/generators.irp.f`

      integer :: size_select_max

  Size of the select_max array

  Needed by:

  `select_max` |  |