mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-11-07 22:13:38 +01:00
85 lines
4.1 KiB
ReStructuredText
85 lines
4.1 KiB
ReStructuredText
|
========
|
||
|
The |qp|
|
||
|
========
|
||
|
|
||
|
.. image:: /_static/qp2.png
|
||
|
:align: center
|
||
|
:width: 200px
|
||
|
:alt: Quantum Package
|
||
|
|
||
|
|
||
|
What it is
|
||
|
==========
|
||
|
|
||
|
The |qp| is an open-source **programming environment** for quantum chemistry.
|
||
|
It has been built from the **developper** point of view in order to help
|
||
|
the design of new quantum chemistry methods,
|
||
|
especially for `wave function theory <https://en.wikipedia.org/wiki/Ab_initio_quantum_chemistry_methods>`_ (|WFT|).
|
||
|
|
||
|
From the **user** point of view, the |qp| proposes a stand-alone path
|
||
|
to use optimized selected configuration interaction |sCI| based on the
|
||
|
|CIPSI| algorithm that can efficiently reach near-full configuration interaction
|
||
|
|FCI| quality for relatively large systems (see for instance :cite:`Caffarel_2016,Caffarel_2016.2,Loos_2018,Scemama_2018,Dash_2018,Garniron_2017.2,Loos_2018,Garniron_2018,Giner2018Oct`).
|
||
|
To have a simple example of how to use the |CIPSI| program, go to the `users_guide/quickstart`.
|
||
|
|
||
|
|
||
|
The main goal is the development of selected configuration interaction |sCI|
|
||
|
methods and multi-reference perturbation theory |MRPT| in the
|
||
|
determinant-driven paradigm. It also contains the very basics of Kohn-Sham `density functional theory <https://en.wikipedia.org/wiki/Density_functional_theory>`_ |KS-DFT| and `range-separated hybrids <https://aip.scitation.org/doi/10.1063/1.1383587>`_ |RSH|.
|
||
|
|
||
|
The determinant-driven framework allows the programmer to include any arbitrary set of
|
||
|
determinants in the variational space, and thus gives a complete freedom in the methodological
|
||
|
development. The basic ingredients of |RSH| together with those of the |WFT| framework available in the |qp| library allows one to easily develop range-separated DFT (|RSDFT|) approaches (see for instance the plugins at `<https://gitlab.com/eginer/qp_plugins_eginer>`_).
|
||
|
|
||
|
All the programs are developed with the `IRPF90`_ code generator, which considerably simplifies
|
||
|
the collaborative development, and the development of new features.
|
||
|
|
||
|
|
||
|
|
||
|
What it is not
|
||
|
==============
|
||
|
|
||
|
The |qp| is *not* a general purpose quantum chemistry program.
|
||
|
First of all, it is a *library* to develop new theories and algorithms in quantum chemistry.
|
||
|
Therefore, beside the use of the programs of the core modules, the users of the |qp| should develop their own programs.
|
||
|
|
||
|
The |qp| has been designed specifically for |sCI|, so all the
|
||
|
algorithms which are programmed are not adapted to run SCF or DFT calculations
|
||
|
on thousands of atoms. Currently, the systems targeted have less than 600
|
||
|
molecular orbitals. This limit is due to the memory bottleneck induced by the storring of the two-electron integrals (see ``mo_two_e_integrals`` and ``ao_two_e_integrals``).
|
||
|
|
||
|
The |qp| is *not* a massive production code. For conventional
|
||
|
methods such as Hartree-Fock, CISD or MP2, the users are recommended to use the
|
||
|
existing standard production codes which are designed to make these methods run
|
||
|
fast. Again, the role of the |qp| is to make life simple for the
|
||
|
developer. Once a new method is developed and tested, the developer is encouraged
|
||
|
to consider re-expressing it with an integral-driven formulation, and to
|
||
|
implement the new method in open-source production codes, such as `NWChem`_
|
||
|
or |GAMESS|.
|
||
|
|
||
|
|
||
|
A few examples of applications
|
||
|
==============================
|
||
|
|
||
|
Multiple programs were developed with the |qp|, such as:
|
||
|
|
||
|
- Selected Full-CI + Epstein-Nesbet PT2 (CIPSI) :cite:`Caffarel_2016,Caffarel_2016.2,Loos_2018,Scemama_2018,Dash_2018`
|
||
|
- Hybrid stochastic/deterministic MR-PT2 :cite:`Garniron_2017.2,Loos_2018`
|
||
|
- Orbital optimization for open-shell systems :cite:`Giner2016Mar,Giner_2017.3`
|
||
|
- CIS, CISD, MP2
|
||
|
- Selected CISD
|
||
|
- Jeziorsky-Monkhorst MR-PT2 :cite:`Giner_2017`
|
||
|
- Effective Hamiltonian for variational MR wave functions :cite:`Giner_2017.2`
|
||
|
- Selected CAS+SD
|
||
|
- Selected difference-dedicated CI (DD-CI)
|
||
|
- Multi-Reference Coupled Cluster (MR-CCSD) :cite:`Giner_2016,Garniron_2017`
|
||
|
- Shifted-Bk with CIPSI :cite:`Garniron_2018`
|
||
|
- CIPSI with range-separated DFT (plugins at `<https://gitlab.com/eginer/qp_plugins_eginer>`_)
|
||
|
- DFT for basis set corrections :cite:`Giner_2018`
|
||
|
|
||
|
All these programs can generate ground and excited states, and spin pure wave
|
||
|
functions (eigenstates of |S^2|).
|
||
|
|
||
|
|
||
|
|