9
1
mirror of https://github.com/QuantumPackage/qp2.git synced 2024-10-04 07:05:58 +02:00
qp2/src
2023-05-31 11:01:51 +02:00
..
ao_basis Remove debug 2022-03-16 10:26:18 +01:00
ao_many_one_e_ints added thresh_cycle 2023-03-28 11:21:19 +02:00
ao_one_e_ints Merge pull request #243 from QuantumPackage/dev-stable-pt-charges 2023-02-07 13:53:38 +01:00
ao_tc_eff_map non_h_ints compiles 2023-02-06 19:00:35 +01:00
ao_two_e_erf_ints Fixed compile error in previous commit 2020-05-12 19:10:12 +02:00
ao_two_e_ints cholesky in big_array 2023-05-17 16:55:29 +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
basis_correction modified the factor two in rdm 2023-03-04 13:07:12 +01:00
becke_numerical_grid FIxed bug in CSF 2022-02-04 11:09:33 +01:00
bi_ort_ints Merge branch 'dev-stable-tc-scf' of https://github.com/QuantumPackage/qp2 into dev-stable-tc-scf 2023-03-29 15:48:11 +02:00
bi_ortho_mos added ao_many_one_e_ints/ bi_ortho_mos/ 2023-02-06 18:17:56 +01:00
bitmask moved a subroutine from determinant to bitmask 2021-12-17 18:15:47 +01:00
cas_based_on_top added some stuffs for foboscf 2021-04-08 20:37:17 +02:00
ccsd Reduced memory in CCSD 2023-05-17 17:50:35 +02:00
cipsi Merge branch 'master' into dev-stable 2023-05-04 11:56:22 +02:00
cipsi_tc_bi_ortho Added JSON to fci_tc_bi 2023-04-24 01:32:05 +02:00
cis add excitation energies in eV 2022-03-28 20:08:35 +02:00
cisd fix test cisd 2023-03-13 10:25:39 +01:00
csf remove print 2022-03-24 16:18:51 +01:00
dav_general_mat added tc_bi_ortho 2023-02-07 17:07:49 +01:00
davidson Merge branch 'master' into dev-stable 2023-05-04 11:56:22 +02:00
davidson_dressed Dressed davidson with CSF 2022-01-28 20:16:01 +01:00
davidson_undressed Initial commit 2019-01-25 11:39:31 +01:00
density_for_dft removed nan in density_for_dft when no beta electrons 2021-03-30 14:58:21 +02:00
determinants Fix call abort 2023-04-07 08:03:31 +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 Merge branch 'cleaning_dft' of https://github.com/QuantumPackage/qp2 into cleaning_dft 2021-11-09 15:48:58 +01:00
dft_utils_func minor modifs 2023-02-13 20:12:33 +01:00
dft_utils_in_r removed stupid print in dft_utils_in_r/dm_in_r.irp.f 2023-02-21 18:20:15 +01:00
dressing Fixed tooth_width=0.0 2022-03-25 09:30:43 +01:00
dummy beginning to reorganise stuffs 2020-04-07 12:19:17 +02:00
electrons Initial commit 2019-01-25 11:39:31 +01:00
ezfio_files Improve thread-safety 2023-04-17 17:03:16 +02:00
fci Added JSON in FCI 2023-04-24 00:50:07 +02:00
fci_tc_bi Added JSON to fci_tc_bi 2023-04-24 01:32:05 +02:00
functionals added the possibility to have a mu(r) in the functionals 2021-10-07 17:37:24 +02:00
generators_cas Fixed small bugs 2019-06-27 23:46:30 +02:00
generators_full Initial commit 2019-01-25 11:39:31 +01:00
hartree_fock 4idx transformation with cholesky 2023-05-04 15:50:40 +02:00
iterations Fix reversed print of minimum PT2 in extrapolations 2023-05-10 12:22:56 +02:00
json Added JSON in FCI 2023-04-24 00:50:07 +02:00
kohn_sham Cleaning useless function 2023-04-21 18:10:08 +02:00
kohn_sham_rs Fixed need for JSON 2023-04-21 18:08:54 +02:00
mo_basis allow no basis set 2023-05-10 15:05:18 +02:00
mo_guess removed bug in subroutine of dav_general_mat 2022-01-20 20:10:50 +01:00
mo_localization add mo localization 2023-04-18 13:22:46 +02:00
mo_one_e_ints Deactivated banned excitations 2021-06-18 12:47:27 +02:00
mo_optimization unecessary parameter 2023-04-21 13:44:51 +02:00
mo_two_e_erf_ints Fix sort 2023-02-16 11:00:25 +01:00
mo_two_e_ints cholesky in big_array 2023-05-17 16:55:29 +02:00
mol_properties clean 2023-03-11 23:40:52 +01:00
mpi Initial commit 2019-01-25 11:39:31 +01:00
mu_of_r modified the factor two in rdm 2023-03-04 13:07:12 +01:00
non_h_ints_mu Merge branch 'dev-stable-tc-scf' of github.com:QuantumPackage/qp2 into dev-stable-tc-scf 2023-03-28 13:18:22 +02:00
non_hermit_dav added non_hermit_dav 2023-02-06 19:03:22 +01:00
nuclei Merge branch 'io' into dev-stable 2023-04-21 15:45:32 +02:00
ortho_three_e_ints Merge branch 'dev-stable-tc-scf' of https://github.com/QuantumPackage/qp2 into dev-stable-tc-scf 2023-02-08 15:12:21 +01: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 Initial commit 2019-01-25 11:39:31 +01:00
psiref_utils Initial commit 2019-01-25 11:39:31 +01:00
scf_utils Added JSON in FCI 2023-04-24 00:50:07 +02:00
selectors_cassd Warnings in documentation 2019-01-29 17:09:08 +01:00
selectors_full Fixed previous commit 2019-07-02 23:30:36 +02:00
selectors_utils Initial commit 2019-01-25 11:39:31 +01:00
single_ref_method Initial commit 2019-01-25 11:39:31 +01:00
tc_bi_ortho Removed penalty method from TCSCF: problem with normal ordering 2023-05-11 22:45:18 +02:00
tc_keywords Merge branch 'dev-stable-tc-scf' of https://github.com/QuantumPackage/qp2 into dev-stable-tc-scf 2023-03-29 15:48:11 +02:00
tc_scf beginning to work on s2 for TC 2023-04-10 16:12:32 +02:00
tools Removed print_e_conv: should be replaced by python script 2023-04-24 01:36:49 +02:00
trexio Fix normalization factor in trexio 2023-05-31 11:01:51 +02:00
two_body_rdm Introduced TREXIO in QP 2023-05-12 16:04:45 +02:00
two_rdm_routines beginning to introduce a factor 2 in two-rdm 2023-02-27 15:27:39 +01:00
utils Inlined multiply_poly 2023-05-15 19:46:06 +02:00
utils_cc cholesky in big_array 2023-05-17 16:55:29 +02:00
utils_periodic Slowly merging periodic in dev 2020-03-18 16:35:41 +01:00
utils_trust_region create utils trust region 2023-04-18 13:01:25 +02:00
zmq Update zmq module with fortran preprocessor 2023-02-06 18:02:11 +01:00
.gitignore gitignore 2023-02-06 18:00:29 +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 ...