2019-01-16 11:47:09 +01:00
.. _fci:
.. program :: fci
.. default-role :: option
2019-01-07 00:39:54 +01:00
===
fci
===
2019-01-11 19:37:06 +01:00
2019-01-07 00:39:54 +01:00
|CIPSI| algorithm in the full configuration interaction space.
2019-01-11 19:37:06 +01:00
The user point of view
----------------------
* :c:func: `fci` performs |CIPSI| calculations using a stochastic scheme for both the selection and the |PT2| contribution,
* :c:func: `pt2` computes the |PT2| contribution using the wave function stored in the |EZFIO|
2019-01-07 00:39:54 +01:00
database.
2019-01-11 19:37:06 +01:00
2019-01-16 11:47:09 +01:00
The main keywords/options for this module are:
2019-01-11 19:37:06 +01:00
2019-01-16 11:47:09 +01:00
* :option: `determinants n_det_max` : maximum number of Slater determinants in the CIPSI wave function. The :command: `fci` program will stop when the size of the CIPSI wave function will exceed :option: `determinants n_det_max` .
2019-01-11 19:37:06 +01:00
2019-01-16 11:47:09 +01:00
* :option: `perturbation pt2_max` : absolute value of the |PT2| to stop the CIPSI calculation. Once the |PT2| :math: `<` :option: `perturbation pt2_max` , the CIPSI calculation stops.
2019-01-11 19:37:06 +01:00
* :option: `determinants n_states` : number of states to consider in the CIPSI calculation.
2019-01-16 11:47:09 +01:00
* :option: `determinants read_wf` : if False, starts with a ROHF-like determinant, if True, starts with the current wave function(s) stored in the |EZFIO| folder.
2019-01-11 19:37:06 +01:00
2019-01-16 11:47:09 +01:00
.. note ::
For a multi-state calculation, it is recommended to start with :c:func: `cis` or :c:func: `cisd`
wave functions as a guess.
2019-01-11 19:37:06 +01:00
2019-01-16 11:47:09 +01:00
* :option: `determinants s2_eig` : if True, systematically add all the determinants needed to have a pure value of :math: `S^2` . Also, if True, it tracks only the states having the good :option: `determinants expected_s2` .
2019-01-11 19:37:06 +01:00
2019-01-16 11:47:09 +01:00
.. note ::
For a multi-state calculation, it is recommended to start with :c:func: `cis` or :c:func: `cisd`
wave functions as a guess.
2019-01-11 19:37:06 +01:00
* :option: `determinants expected_s2` : expected value of :math: `S^2` for the desired spin multiplicity.
The programmer point of view
----------------------------
2019-01-16 11:47:09 +01:00
This module have been created with the :ref: `cipsi` module.
2019-01-11 19:37:06 +01:00
2019-01-07 00:39:54 +01:00
.. seealso ::
The documentation of the :ref: `cipsi` module.
2019-01-16 11:47:09 +01:00
EZFIO parameters
----------------
2019-01-07 00:39:54 +01:00
.. option :: energy
2019-01-16 11:47:09 +01:00
2019-01-07 00:39:54 +01:00
Calculated Selected |FCI| energy
2019-01-16 11:47:09 +01:00
2019-01-07 00:39:54 +01:00
.. option :: energy_pt2
2019-01-16 11:47:09 +01:00
2019-01-07 00:39:54 +01:00
Calculated |FCI| energy + |PT2|
2019-01-16 11:47:09 +01:00
Programs
--------
* :ref: `fci`
* :ref: `pt2`
Providers
---------
2019-01-09 19:16:58 +01:00
.. c:var :: nthreads_pt2
.. code :: text
integer :: nthreads_pt2
File: :file: `environment.irp.f`
Number of threads for Davidson
2019-01-16 11:47:09 +01:00
Subroutines / functions
-----------------------
2019-01-07 00:39:54 +01:00
.. c:function :: save_energy
.. code :: text
subroutine save_energy(E,pt2)
File: :file: `save_energy.irp.f`
Saves the energy in |EZFIO|.