Documentation for module almo_scf_types

Types for all ALMO-based methods

source: almo_scf_types.F
Loading...

public Types:

almo_scf_env_type
...
almo_scf_history_type
...
optimizer_options_type
...

public Subroutines/Functions:

release the almo scf envirnoment
Prints out the options of an optimizer

Parameters:

INTEGER
:: almo_mat_dim_aobasis = 1
INTEGER
:: almo_mat_dim_domains = 5
INTEGER
:: almo_mat_dim_occ = 2
INTEGER
:: almo_mat_dim_virt = 3
INTEGER
:: almo_mat_dim_virt_disc = 6
INTEGER
:: almo_mat_dim_virt_full = 4
REAL(dp)
:: almo_max_cutoff_multiplier = 2.2_dp

public Types:

TYPE :: almo_scf_env_type

...


POINTER :: para_env ...
POINTER :: blacs_env ...
INTEGER
:: nspins ...
INTEGER
:: nelectrons_total ...
INTEGER
:: naos ...
INTEGER
:: natoms ...
INTEGER
:: nmolecules ...
INTEGER,
DIMENSION(2) :: nelectrons_spin ...
INTEGER
:: ndomains ...
INTEGER,
DIMENSION(:,:), ALLOCATABLE :: nocc_of_domain ...
INTEGER,
DIMENSION(:), ALLOCATABLE :: nbasis_of_domain ...
INTEGER,
DIMENSION(:,:), ALLOCATABLE :: nvirt_full_of_domain ...
INTEGER,
DIMENSION(:,:), ALLOCATABLE :: nvirt_of_domain ...
INTEGER,
DIMENSION(:,:), ALLOCATABLE :: nvirt_disc_of_domain ...
REAL(dp),
DIMENSION(:,:), ALLOCATABLE :: mu_of_domain ...
INTEGER,
DIMENSION(:), ALLOCATABLE :: first_atom_of_domain ...
INTEGER,
DIMENSION(:), ALLOCATABLE :: last_atom_of_domain ...
INTEGER,
DIMENSION(:), ALLOCATABLE :: domain_index_of_ao ...
INTEGER,
DIMENSION(:), ALLOCATABLE :: domain_index_of_atom ...
INTEGER,
DIMENSION(:), ALLOCATABLE :: charge_of_domain ...
INTEGER,
DIMENSION(:), ALLOCATABLE :: multiplicity_of_domain ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: quench_t ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: quench_t_blk ...
DIMENSION(:), ALLOCATABLE :: domain_map ...
INTEGER
:: domain_layout_mos ...
INTEGER
:: domain_layout_aos ...
INTEGER
:: constraint_type ...
INTEGER
:: mat_distr_aos ...
INTEGER
:: mat_distr_mos ...
INTEGER,
DIMENSION(:), ALLOCATABLE :: domain_index_of_ao_block ...
INTEGER,
DIMENSION(:), ALLOCATABLE :: domain_index_of_mo_block ...
LOGICAL
:: need_previous_ks ...
LOGICAL
:: need_virtuals ...
LOGICAL
:: need_orbital_energies ...
LOGICAL
:: s_inv_done ...
LOGICAL
:: s_sqrt_done ...
REAL(dp)
:: almo_scf_energy ...
LOGICAL
:: orthogonal_basis ...
LOGICAL
:: fixed_mu ...
REAL(dp)
:: eps_filter ...
INTEGER
:: almo_scf_guess ...
REAL(dp)
:: eps_prev_guess ...
INTEGER
:: order_lanczos ...
REAL(dp)
:: eps_lanczos ...
INTEGER
:: max_iter_lanczos ...
REAL(dp)
:: mixing_fraction ...
REAL(dp)
:: mu ...
INTEGER
:: almo_update_algorithm ...
INTEGER
:: xalmo_update_algorithm ...
LOGICAL
:: perturbative_delocalization ...
INTEGER
:: quencher_radius_type ...
REAL(dp)
:: quencher_r0_factor ...
REAL(dp)
:: quencher_r1_factor ...
REAL(dp)
:: quencher_s0 ...
REAL(dp)
:: quencher_s1 ...
REAL(dp)
:: envelope_amplitude ...
:: almo_history ...
:: xalmo_history ...
INTEGER
:: almo_extrapolation_order ...
INTEGER
:: xalmo_extrapolation_order ...
LOGICAL
:: calc_forces ...
TYPE(dbcsr_type),
DIMENSION(1) :: matrix_s ...
TYPE(dbcsr_type),
DIMENSION(1) :: matrix_s_inv ...
TYPE(dbcsr_type),
DIMENSION(1) :: matrix_s_sqrt ...
TYPE(dbcsr_type),
DIMENSION(1) :: matrix_s_sqrt_inv ...
TYPE(dbcsr_type),
DIMENSION(1) :: matrix_s_blk ...
TYPE(dbcsr_type),
DIMENSION(1) :: matrix_s_blk_inv ...
TYPE(dbcsr_type),
DIMENSION(1) :: matrix_s_blk_sqrt ...
TYPE(dbcsr_type),
DIMENSION(1) :: matrix_s_blk_sqrt_inv ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_t_blk ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_t ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_t_tr ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_sigma ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_sigma_inv ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_sigma_sqrt ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_sigma_sqrt_inv ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_sigma_blk ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_sigma_inv_0deloc ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_err_blk ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_err_xx ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_sigma_vv ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_sigma_vv_blk ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_sigma_vv_sqrt ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_sigma_vv_sqrt_inv ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_vv_full_blk ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_vv_disc_blk ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_vv_disc ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_vo ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_ov ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_ov_full ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_ov_disc ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_x ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_k_blk ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_k_tr ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_k_blk_ones ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_v_blk ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_v ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_v_full_blk ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_v_disc ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_v_disc_blk ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_ks ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_ks_blk ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_ks_0deloc ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_p ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_p_blk ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_eoo ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_evv_full ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: opt_k_t_rr ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: opt_k_t_dd ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: opt_k_denom ...
DIMENSION(:,:), ALLOCATABLE :: domain_preconditioner ...
DIMENSION(:,:), ALLOCATABLE :: domain_s_inv ...
DIMENSION(:,:), ALLOCATABLE :: domain_s_sqrt ...
DIMENSION(:,:), ALLOCATABLE :: domain_s_sqrt_inv ...
DIMENSION(:,:), ALLOCATABLE :: domain_ks_xx ...
DIMENSION(:,:), ALLOCATABLE :: domain_t ...
DIMENSION(:,:), ALLOCATABLE :: domain_err ...
DIMENSION(:,:), ALLOCATABLE :: domain_r_down_up ...
INTEGER,
DIMENSION(:), ALLOCATABLE :: cpu_of_domain ...
:: almo_analysis ...
:: opt_block_diag_diis ...
:: opt_block_diag_pcg ...
:: opt_xalmo_diis ...
:: opt_xalmo_pcg ...
:: opt_k_pcg ...
INTEGER
:: deloc_method ...
LOGICAL
:: deloc_use_occ_orbs ...
LOGICAL
:: deloc_cayley_use_virt_orbs ...
INTEGER
:: deloc_cayley_tensor_type ...
LOGICAL
:: deloc_cayley_linear ...
INTEGER
:: deloc_cayley_conjugator ...
REAL(dp)
:: deloc_cayley_eps_convergence ...
INTEGER
:: deloc_cayley_max_iter ...
INTEGER
:: deloc_truncate_virt ...
INTEGER
:: deloc_virt_per_domain ...
LOGICAL
:: deloc_cayley_occ_precond ...
LOGICAL
:: deloc_cayley_vir_precond ...
INTEGER
:: opt_k_conjugator ...
REAL(dp)
:: opt_k_eps_convergence ...
REAL(dp)
:: opt_k_trial_step_size ...
INTEGER
:: opt_k_max_iter ...
INTEGER
:: opt_k_outer_max_iter ...
REAL(dp)
:: opt_k_trial_step_size_multiplier ...
INTEGER
:: opt_k_conj_iter_start ...
INTEGER
:: opt_k_prec_iter_start ...
INTEGER
:: opt_k_conj_iter_freq ...
INTEGER
:: opt_k_prec_iter_freq ...
INTEGER
:: integer01 ...
INTEGER
:: integer02 ...
INTEGER
:: integer03 ...
INTEGER
:: integer04 ...
INTEGER
:: integer05 ...
REAL(dp)
:: real01 ...
REAL(dp)
:: real02 ...
REAL(dp)
:: real03 ...
REAL(dp)
:: real04 ...
REAL(dp)
:: real05 ...
LOGICAL
:: logical01 ...
LOGICAL
:: logical02 ...
LOGICAL
:: logical03 ...
LOGICAL
:: logical04 ...
LOGICAL
:: logical05 ...

TYPE :: almo_scf_history_type

...


INTEGER
:: istore ...
INTEGER
:: nstore ...
TYPE(dbcsr_type),
DIMENSION(:,:), ALLOCATABLE :: matrix_p_up_down ...
TYPE(dbcsr_type),
DIMENSION(:), ALLOCATABLE :: matrix_t ...

TYPE :: optimizer_options_type

...


REAL(dp)
:: eps_error ...
REAL(dp)
:: lin_search_eps_error ...
REAL(dp)
:: lin_search_step_size_guess ...
INTEGER
:: optimizer_type ...
INTEGER
:: preconditioner ...
INTEGER
:: conjugator ...
INTEGER
:: max_iter ...
INTEGER
:: max_iter_outer_loop ...
INTEGER
:: ndiis ...

SUBROUTINEalmo_scf_env_release(almo_scf_env)

release the almo scf envirnoment

Arguments:
POINTER
:: almo_scf_env ...

private Parameters/Types:

private Types:

TYPE :: almo_analysis_type

...


LOGICAL
:: do_analysis ...
INTEGER
:: frozen_mo_energy_term ...