10
0
mirror of https://github.com/QuantumPackage/qp2.git synced 2024-12-22 20:34:58 +01:00
QuantumPackage/src
2024-06-28 14:53:48 +02:00
..
ao_basis working on aos debug 2024-05-07 01:56:14 +02:00
ao_one_e_ints Force MOs to be on axes. Nice for atoms 2024-04-05 17:51:48 +02:00
ao_two_e_ints mmap is now shared in cholesky 2024-06-20 13:43:46 +02:00
aux_quantities added the definition of the input density in the AO basis 2019-04-09 00:10:01 +02:00
basis Update for TREXIOv2 2021-12-07 19:30:32 +01:00
becke_numerical_grid TC SPRING CLEANING: BEGINNING 2024-05-01 20:25:01 +02:00
bitmask Fixed previous commit 2024-01-10 11:14:49 +01:00
cas_based_on_top Fixed configure problem 2023-11-07 10:40:56 +01:00
casscf_cipsi added some reference numbers in the example_casscf_multistate.sh 2024-02-18 15:25:38 +01:00
ccsd Added Nvidia module 2024-06-28 14:53:48 +02:00
cipsi Inline past_d1 and past_d2 2024-06-13 13:29:38 +02:00
cipsi_utils Add nthreads_pt2 to (T) 2024-04-03 16:59:15 +02:00
cis Fixing tests 2023-10-17 23:35:14 +02:00
cisd Fixing tests 2023-10-18 00:13:10 +02:00
csf remove print 2022-03-24 16:18:51 +01:00
dav_general_mat Trying to improve mmap performance 2024-06-06 13:53:30 +02:00
davidson Trying to improve mmap performance 2024-06-06 13:53:30 +02:00
davidson_dressed non_sym dress: comb 2023-03-15 10:23:48 +01:00
davidson_keywords Allow merge with master 2023-06-13 16:01:05 +02:00
davidson_undressed non_sym dress: comb 2023-03-15 10:23:48 +01:00
density_for_dft removed nan in density_for_dft when no beta electrons 2021-03-30 14:58:21 +02:00
determinants does not compile but working on it 2024-05-06 18:30:05 +02:00
dft_keywords added the possibility to have a mu(r) in the functionals 2021-10-07 17:37:24 +02:00
dft_one_e Fixing compilation 2023-10-16 16:37:08 +02:00
dft_utils_func implemented the f_hf_sparse for open systems in basis set correction 2024-05-27 10:21:29 +02:00
dft_utils_in_r added f_hf with cholesky by default 2024-05-16 18:03:55 +02:00
dressing Fixed tooth_width=0.0 2022-03-25 09:30:43 +01:00
dummy Merged erf modules, and moved mu_erf into hamiltonian module 2023-10-16 16:18:58 +02:00
electrons Initial commit 2019-01-25 11:39:31 +01:00
ezfio_files Disk-based cholesky 2024-06-04 19:10:29 +02:00
fci minor modif 2023-10-12 16:15:17 +02:00
functionals added the possibility to have a mu(r) in the functionals 2021-10-07 17:37:24 +02:00
generators_cas
generators_full
generators_full_tc Add NEED in generators_full_tc 2024-03-12 17:32:38 +01:00
gpu Added Nvidia module 2024-06-28 14:53:48 +02:00
gpu_nvidia Added Nvidia module 2024-06-28 14:53:48 +02:00
gpu_x86 Added Nvidia module 2024-06-28 14:53:48 +02:00
hamiltonian hamiltonian -> jastrow 2024-01-15 19:02:05 +01:00
hartree_fock Use less memory in Cholesky 2024-06-17 18:13:45 +02:00
iterations fixed n_states > 1 for TC 2024-03-12 15:30:52 +01:00
json Added JSON in FCI 2023-04-24 00:50:07 +02:00
kohn_sham fixed conf 2023-05-06 20:42:39 +02:00
kohn_sham_rs Fixing tests 2023-10-17 17:52:43 +02:00
mo_basis Fix underflow in EZFIO 2024-04-05 14:25:32 +02:00
mo_guess removed bug in subroutine of dav_general_mat 2022-01-20 20:10:50 +01:00
mo_one_e_ints added swaping between Left/Right MOs when large angles 2024-02-26 15:33:36 +01:00
mo_optimization Merge branch 'dev-stable' of github.com:AbdAmmar/qp2 into AbdAmmar-dev-stable 2024-05-06 17:32:37 +02:00
mo_two_e_ints Put mo_integrals_cache_shift in EZFIO 2024-06-13 14:54:32 +02:00
mol_properties bypass one_e_tr_dm_mo for large mo_num & n_states 2024-05-23 00:45:56 +02:00
mp2 Added MP2 program 2024-04-09 12:41:53 +02:00
mpi
mu_of_r added print in src/ao_two_e_ints/cholesky.irp.f 2024-06-02 19:16:56 +02:00
nuclei Merge branch 'macos' into dev-stable 2023-10-23 15:30:35 +02:00
perturbation Global Replacement of 'occupation pattern' with 'configuration' 2020-12-22 00:55:14 +01:00
pseudo Fix basis bugs when working on trexio 2021-12-30 14:43:14 +01:00
psiref_cas
psiref_utils
scf_utils fixed a bug in src/scf_utils/roothaan_hall_scf.irp.f 2024-05-03 11:34:30 +02:00
selectors_cassd
selectors_full
selectors_utils
single_ref_method
tools saving olympe2 modif 2024-04-07 00:29:40 +02:00
trexio Added do_mo_cholesky 2024-06-07 16:09:53 +02:00
two_body_rdm Merge branch 'dev-stable' of https://github.com/QuantumPackage/qp2 into dev-stable 2024-02-15 18:05:50 +01:00
two_rdm_routines added transition two rdm 2024-02-10 12:48:29 +01:00
utils mmap is now shared in cholesky 2024-06-20 13:43:46 +02:00
utils_cc Added stop in (T) 2024-05-27 11:38:57 +02:00
utils_periodic
utils_trust_region Fixed qp_export_as_tgz 2023-12-05 17:19:47 +01:00
zmq Changed how libraries are handled 2023-09-19 14:43:42 +02:00
.gitignore Commented out select_singles in TC 2024-03-12 17:38:30 +01:00
README.rst renaming in functionals/sr_pbe.irp.f 2020-04-02 16:24:33 +02:00

==========================
The core modules of the QP
==========================

*** How are handled the DFT functionals in QP2 ?
================================================
    The Exchange and Correlation energies/potentials can be accessed by the following providers 
    energy_x
    energy_c
    potential_x_alpha_ao
    potential_c_alpha_ao
    potential_x_beta_ao
    potential_c_beta_ao

    These providers are automatically linked to the providers of the actual exchange/correlation energies of a given functional 
    through the character keywords 
    "exchange_functional"
    "correlation_functional"

    All the providers for the available functionals are in the folder "functionals", with one file "my_functional.irp.f" per functional.  

    Ex : if "exchange_functional" == "sr_pbe", then energy_x will contain the exchange correlation functional defined in "functiona/sr_pbe.irp.f", which corresponds to the short-range PBE functional (at the value mu_erf for the range separation parameter) 


*** How to add a new functional in QP2 
======================================

    Creating a new functional and propagating it through the whole QP2 programs is easy as all dependencies are handled by a script. 

    To do so, let us assume that the name of your functional is "my_func". 
    Then you just have to create the file "my_func.irp.f" in the folder "functional" which shoud contain 

    +) if you're adding an exchange functional, then create the provider "energy_x_my_func" 

    +) if you're adding a correlation functional, create the provider "energy_c_my_func" 
    
    +) if you want to add the echange potentials, create the providers "potential_x_alpha_ao_my_func", "potential_x_beta_ao_my_func"  which are the exchange potentials on the AO basis for the alpha/beta electrons 

    +) if you want to add the correlation potentials, create the providers "potential_c_alpha_ao_my_func", "potential_c_beta_ao_my_func"  which are the correlation potentials on the AO basis for the alpha/beta electrons 
    
    That's all :) 
   
    Then, when running whatever DFT calculation or accessing/using the providers: 
    energy_x
    energy_c
    potential_x_alpha_ao
    potential_c_alpha_ao
    potential_x_beta_ao
    potential_c_beta_ao
 
    if exchange_functional = mu_func, then you will automatically have access to what you need, such as kohn sham orbital optimization and so on ...