mirror of
https://github.com/LCPQ/quantum_package
synced 2024-10-19 22:41:48 +02:00
Toto (#83)
* minor changes in README.rst of many src files * added ROHF_b2.gms.out * modified some scripts * modified README.rst * modifs in docs/intro
This commit is contained in:
parent
540c02c4aa
commit
062020ffdc
1
doc/.gitignore
vendored
1
doc/.gitignore
vendored
@ -1 +0,0 @@
|
|||||||
build
|
|
154
doc/Makefile
154
doc/Makefile
@ -1,154 +0,0 @@
|
|||||||
# Makefile for Sphinx documentation
|
|
||||||
#
|
|
||||||
|
|
||||||
# You can set these variables from the command line.
|
|
||||||
SPHINXOPTS =
|
|
||||||
SPHINXBUILD = sphinx-build
|
|
||||||
PAPER =
|
|
||||||
BUILDDIR = build
|
|
||||||
|
|
||||||
# Internal variables.
|
|
||||||
PAPEROPT_a4 = -D latex_paper_size=a4
|
|
||||||
PAPEROPT_letter = -D latex_paper_size=letter
|
|
||||||
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
|
|
||||||
# the i18n builder cannot share the environment and doctrees with the others
|
|
||||||
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
|
|
||||||
|
|
||||||
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext default
|
|
||||||
default: html
|
|
||||||
|
|
||||||
help:
|
|
||||||
@echo "Please use \`make <target>' where <target> is one of"
|
|
||||||
@echo " html to make standalone HTML files"
|
|
||||||
@echo " dirhtml to make HTML files named index.html in directories"
|
|
||||||
@echo " singlehtml to make a single large HTML file"
|
|
||||||
@echo " pickle to make pickle files"
|
|
||||||
@echo " json to make JSON files"
|
|
||||||
@echo " htmlhelp to make HTML files and a HTML help project"
|
|
||||||
@echo " qthelp to make HTML files and a qthelp project"
|
|
||||||
@echo " devhelp to make HTML files and a Devhelp project"
|
|
||||||
@echo " epub to make an epub"
|
|
||||||
@echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
|
|
||||||
@echo " latexpdf to make LaTeX files and run them through pdflatex"
|
|
||||||
@echo " text to make text files"
|
|
||||||
@echo " man to make manual pages"
|
|
||||||
@echo " texinfo to make Texinfo files"
|
|
||||||
@echo " info to make Texinfo files and run them through makeinfo"
|
|
||||||
@echo " gettext to make PO message catalogs"
|
|
||||||
@echo " changes to make an overview of all changed/added/deprecated items"
|
|
||||||
@echo " linkcheck to check all external links for integrity"
|
|
||||||
@echo " doctest to run all doctests embedded in the documentation (if enabled)"
|
|
||||||
|
|
||||||
clean:
|
|
||||||
-rm -rf $(BUILDDIR)/*
|
|
||||||
|
|
||||||
html:
|
|
||||||
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
|
|
||||||
|
|
||||||
dirhtml:
|
|
||||||
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
|
|
||||||
|
|
||||||
singlehtml:
|
|
||||||
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
|
|
||||||
|
|
||||||
pickle:
|
|
||||||
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
|
|
||||||
@echo
|
|
||||||
@echo "Build finished; now you can process the pickle files."
|
|
||||||
|
|
||||||
json:
|
|
||||||
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
|
|
||||||
@echo
|
|
||||||
@echo "Build finished; now you can process the JSON files."
|
|
||||||
|
|
||||||
htmlhelp:
|
|
||||||
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
|
|
||||||
@echo
|
|
||||||
@echo "Build finished; now you can run HTML Help Workshop with the" \
|
|
||||||
".hhp project file in $(BUILDDIR)/htmlhelp."
|
|
||||||
|
|
||||||
qthelp:
|
|
||||||
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
|
|
||||||
@echo
|
|
||||||
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
|
|
||||||
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
|
|
||||||
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/SelectedCI.qhcp"
|
|
||||||
@echo "To view the help file:"
|
|
||||||
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/SelectedCI.qhc"
|
|
||||||
|
|
||||||
devhelp:
|
|
||||||
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
|
|
||||||
@echo
|
|
||||||
@echo "Build finished."
|
|
||||||
@echo "To view the help file:"
|
|
||||||
@echo "# mkdir -p $$HOME/.local/share/devhelp/SelectedCI"
|
|
||||||
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/SelectedCI"
|
|
||||||
@echo "# devhelp"
|
|
||||||
|
|
||||||
epub:
|
|
||||||
$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
|
|
||||||
|
|
||||||
latex:
|
|
||||||
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
|
||||||
@echo
|
|
||||||
@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
|
|
||||||
@echo "Run \`make' in that directory to run these through (pdf)latex" \
|
|
||||||
"(use \`make latexpdf' here to do that automatically)."
|
|
||||||
|
|
||||||
latexpdf:
|
|
||||||
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
|
||||||
@echo "Running LaTeX files through pdflatex..."
|
|
||||||
$(MAKE) -C $(BUILDDIR)/latex all-pdf
|
|
||||||
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
|
|
||||||
|
|
||||||
text:
|
|
||||||
$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The text files are in $(BUILDDIR)/text."
|
|
||||||
|
|
||||||
man:
|
|
||||||
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
|
|
||||||
|
|
||||||
texinfo:
|
|
||||||
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
|
|
||||||
@echo "Run \`make' in that directory to run these through makeinfo" \
|
|
||||||
"(use \`make info' here to do that automatically)."
|
|
||||||
|
|
||||||
info:
|
|
||||||
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
|
|
||||||
@echo "Running Texinfo files through makeinfo..."
|
|
||||||
make -C $(BUILDDIR)/texinfo info
|
|
||||||
@echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
|
|
||||||
|
|
||||||
gettext:
|
|
||||||
$(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
|
|
||||||
|
|
||||||
changes:
|
|
||||||
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
|
|
||||||
@echo
|
|
||||||
@echo "The overview file is in $(BUILDDIR)/changes."
|
|
||||||
|
|
||||||
linkcheck:
|
|
||||||
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
|
|
||||||
@echo
|
|
||||||
@echo "Link check complete; look for any errors in the above output " \
|
|
||||||
"or in $(BUILDDIR)/linkcheck/output.txt."
|
|
||||||
|
|
||||||
doctest:
|
|
||||||
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
|
|
||||||
@echo "Testing of doctests in the sources finished, look at the " \
|
|
||||||
"results in $(BUILDDIR)/doctest/output.txt."
|
|
@ -1,44 +0,0 @@
|
|||||||
# `ei_handler.py`
|
|
||||||
|
|
||||||
This script in located in `$QP_ROOT/scripts/ezfio_interface/`.
|
|
||||||
It provide all the resource need to deal with the `EZFIO.cfg` files :
|
|
||||||
- The creation of `$MODULE_LOWER_ezfio_config` in `$QP_ROOT/ezfio/config`
|
|
||||||
- The `ezfio_interface.irp.f` who containt all the provider associate (in `$MODULE/`)
|
|
||||||
- The `$MODULE_LOWER_ezfio_defaults` in `$QP_ROOT/data/`
|
|
||||||
- The `Input_$MODULE_LOWER.ml` for the *qp_edit*
|
|
||||||
|
|
||||||
For more information you can type `ei_handler.py -h`
|
|
||||||
|
|
||||||
# `module_handler.py`
|
|
||||||
|
|
||||||
This script in located in `$QP_ROOT/scripts/module/`.
|
|
||||||
It provide all the resource related to the tree dependency of the modules.
|
|
||||||
If more useful as a librairy than a cli.
|
|
||||||
|
|
||||||
It have some usefull property:
|
|
||||||
- The list of module
|
|
||||||
- The dict of the descendant
|
|
||||||
- The dict of the parent
|
|
||||||
- The dict of the child
|
|
||||||
- The dict of the root
|
|
||||||
- The list reduced tree (For a list of module in input return only the root)
|
|
||||||
|
|
||||||
For tree syntax you can check http://en.wikipedia.org/wiki/Tree_%28data_structure%29#Terminologies_used_in_Trees
|
|
||||||
|
|
||||||
In the cli mode:
|
|
||||||
- From a `NEEDED_CHILDREN_MODULE` file you can have all the descendant, and a png
|
|
||||||
representation who correspond.
|
|
||||||
|
|
||||||
|
|
||||||
# `qp_install_module.py`
|
|
||||||
This script is located in `$QP_ROOT/scripts/module/`.
|
|
||||||
|
|
||||||
It is usefull when you need to install a new module. (From the soon to come repo or from scratch).
|
|
||||||
|
|
||||||
# `qp_create_ninja.py`
|
|
||||||
|
|
||||||
This script is located in `$QP_ROOT/scripts/compilation/`.
|
|
||||||
It will create the `build.ninja` file. It will use intersifly the `module_handler.py` module.
|
|
||||||
|
|
||||||
To read all the flag for the compilation the module `read_compilation_cfg.py` is used.
|
|
||||||
You only need to know, that all flag are appending.
|
|
@ -1,156 +0,0 @@
|
|||||||
============================================================
|
|
||||||
What is a selected CI caculation ? Some theoretical concepts
|
|
||||||
============================================================
|
|
||||||
|
|
||||||
Generalities
|
|
||||||
============
|
|
||||||
|
|
||||||
The selected CI algorithm can be seen as a way to compute the energies (and various properties) of a given number of eigenstates
|
|
||||||
of a given :term:`target space` (ex : CISD, CAS-CI, DDCI etc ...),
|
|
||||||
but by taking the freedom of splitting the wave function of the target space in term
|
|
||||||
of :term:`internal determinants` treated variationally and :term:`perturbers` treated perturbatively.
|
|
||||||
Why this freedom ? Because in a given :term:`target space` (except some really special cases) most of the information
|
|
||||||
is concentrated within a tiny fraction of the :term:`target wave function`, and the remaining part can be reasonabely estimated by perturbtation.
|
|
||||||
|
|
||||||
|
|
||||||
This splitting of the wave function is not done in one shot, it is done iteratively. The iterative procedure needs a :term:`stopping criterion` to end the calculation and to control the quality of the calculation.
|
|
||||||
This :term:`stopping criterion` can be for example the number of determinants in the :term:`intern space`,
|
|
||||||
or the value of the :term:`energetic perturbative correction` to estimate the importance of the perturbation, or the convergence of the :term:`estimated target energy`, or anything that can
|
|
||||||
be defined in terms of available informations during the calculation.
|
|
||||||
|
|
||||||
The heart of the selected CI algorithm is based on the CIPSI algorithm (ref Malrieu).
|
|
||||||
|
|
||||||
|
|
||||||
Selected CI in a few words
|
|
||||||
==========================
|
|
||||||
|
|
||||||
First you define a :term:`target space`. Once the target space is defined, you define the :term:`stopping criterion`.
|
|
||||||
After that, a starting wave function is chosen by the user (HF by default).
|
|
||||||
This starting wave function is the first :term:`Internal determinants` wave function.
|
|
||||||
After that, one would like to extend this :term:`Internal determinants` wave function by adding
|
|
||||||
some :term:`perturbers` determinants.
|
|
||||||
|
|
||||||
How do we select the good :term:`perturbers` ?
|
|
||||||
|
|
||||||
|
|
||||||
do while (:term:`stopping criterion` is reached)
|
|
||||||
|
|
||||||
|
|
||||||
1) Generates :term:`perturbers` determinants according to your chosen :term:`target space`.
|
|
||||||
|
|
||||||
:math:`\Rightarrow` generates a set of :term:`perturbers` :math:`\{|D_P\rangle\}`
|
|
||||||
2) The :term:`perturbers` importance are estimated by perturbation thanks to the current :term:`internal determinants`.
|
|
||||||
3) The most important of the :math:`\{|D_P\rangle\}` are chosen to enter in the :term:`internal determinants`.
|
|
||||||
4) You rediagonalize the H matrix with the previous set of :term:`internal determinants` and the chosen :term:`perturbers`.
|
|
||||||
|
|
||||||
:math:`\Rightarrow` create a new wave function and a new set of the :term:`internal determinants`
|
|
||||||
5) iterate
|
|
||||||
|
|
||||||
Once the iterative procedure is stopped, the :term:`internal determinants` wave function have a :term:`variational energy`,
|
|
||||||
and by adding the :term:`energetic perturbative correction` one have the :term:`estimated target energy`
|
|
||||||
which is an approximation of the :term:`target energy`. One should notice that if one takes
|
|
||||||
a :term:`stopping criterion` such as the all the determinants of the target space are in the :term:`intern space`,
|
|
||||||
the :term:`estimated target energy` is the :term:`target energy`.
|
|
||||||
|
|
||||||
|
|
||||||
If one is interested of how is built the selected CI wave function into more details, one can read the further section.
|
|
||||||
|
|
||||||
What is a selected CI iteration in practice (and some details)
|
|
||||||
==============================================================
|
|
||||||
|
|
||||||
From the previous section we have roughly seen how the selected CI works. Now, getting a bit more into details,
|
|
||||||
we will see what is done in practice during a selected CI iteration. To illustrate this, a simple CISD example wil be given.
|
|
||||||
|
|
||||||
The general picture
|
|
||||||
^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
The :term:`target space` defines entirely the method that is going to be approximated, and the stopping criterion will be the only approximation.
|
|
||||||
This :term:`target space` can always be defined in terms of application of an :term:`H operator`
|
|
||||||
(with some :term:`excitation restrictions`) on a given set of determinants that we shall call the :term:`generators` determinants.
|
|
||||||
We call :term:`restricted H operator` this precise H operator.
|
|
||||||
The target space intirely defines the :term:`restricted H operator`.
|
|
||||||
The only flexibility is the perturbation theory to be used to estimate the coeficients of the :term:`perturbers`.
|
|
||||||
If the target space is just defines in term of a CI matrix to diagonalize, the standard :term:`Diagonalization EN EG` perturbation will be used.
|
|
||||||
If some other constraints are imposed in addition to the CI matrix
|
|
||||||
(e.g. some physical conditions of size extensivity such as in the :term:`CISD+SC2` method),
|
|
||||||
then the perturbation must be adapted to properly respect the :term:`target space`.
|
|
||||||
|
|
||||||
CISD : the :term:`target space` is here defined intirely by all the single and double excitations acting on the HF determinant.
|
|
||||||
So the :term:`generators` subset of determinants here is only the HF determinant and will not change along the iteration.
|
|
||||||
If some occupied orbitals are chosen to be frozen (no excitations from those orbitals)
|
|
||||||
or some virtuals are chosen to be deleted (no excitations going to these virtuals orbitals),
|
|
||||||
this constraint imposes the :term:`excitation restrictions`. So here the :term:`restricted H operator` will be all the single and double excitations except those involving either a frozen core orbital or a deleted virtual orbital.
|
|
||||||
Different choices of perturbation theory can be made for the CISD, but the standard :term:`Diagonalization EN EG` can be trustly used.
|
|
||||||
|
|
||||||
Once the :term:`target space` have been defined, what does in practice a selected CI iteration.
|
|
||||||
For the sake of simplicity, here we emphasize on the ground state :math:`| \psi_0 \rangle`. At a given iteration, one have a :term:`selected wave function` :math:`|\psi_0\rangle`, and the selected CI algorithm performs :
|
|
||||||
|
|
||||||
do G = 1, N_Generators
|
|
||||||
|
|
||||||
1) Apply the :term:`restricted H operator` on the :math:`|D_G \rangle` :term:`generators` determinant belonging to :math:`| \psi_0 \rangle`
|
|
||||||
|
|
||||||
:math:`\Rightarrow` generates a set of :term:`perturbers` :math:`|D_P\rangle`
|
|
||||||
|
|
||||||
2) Estimate the perturbative importance of each perturbers
|
|
||||||
|
|
||||||
:math:`\Rightarrow` example for the :term:`EN EG` perturbation theory
|
|
||||||
|
|
||||||
.. math::
|
|
||||||
|
|
||||||
c_{D_P}^0= \frac{ \sum_{S=1,N_{\rm selectors}} c_S^0 \langle D_S|H|D_P\rangle}{ \langle \psi_0 |H|\psi_0 \rangle - \langle D_P |H|D_P\rangle } \\
|
|
||||||
e_{D_P}^0= \frac{(\sum_{S=1,N_{\rm selectors}} c_S^0 \langle D_S|H|D_P\rangle) ^2}{\langle \psi_0 |H|\psi_0 \rangle - \langle D_P |H|D_P\rangle}
|
|
||||||
|
|
||||||
3) Keep the most important :term:`perturbers` :math:`|D_P \rangle`
|
|
||||||
|
|
||||||
:math:`\Rightarrow` they enter in the :term:`intern space`
|
|
||||||
|
|
||||||
4) Rediagonalize H within this new subset of determinants
|
|
||||||
|
|
||||||
:math:`\Rightarrow` better :term:`selected wave function`
|
|
||||||
|
|
||||||
5) Iterate
|
|
||||||
|
|
||||||
An important point here is that at a given iteration, the estimation of the perturbative coefficients of the :term:`perturbers`
|
|
||||||
depends on the quality of the :term:`selected wave function` .
|
|
||||||
As the iterations go on, the :term:`selected wave function` becomes closer
|
|
||||||
and closer to the :term:`target wave function`, and so the perturbative estimation of the :term:`perturbers` coefficients or energetic contribution becomes more and more precise.
|
|
||||||
|
|
||||||
|
|
||||||
CISD : At the first iteration, starting from the HF determinant :
|
|
||||||
1) By applying H on the :term:`generators` (HF) one generates all singles and doubles
|
|
||||||
2) For each :term:`perturbers` you estimate by perturbation its coefficient of energetic contribution.
|
|
||||||
|
|
||||||
i) Here the :term:`selectors` is only the HF determinant.
|
|
||||||
|
|
||||||
ii) If the :term:`Brillouin theorem` is respected, all the singles have zero coefficients since the :term:`selectors` here is only the HF determinant.
|
|
||||||
iii) The most important double excitations entered
|
|
||||||
iv) The :term:`energetic perturbative correction` is calculated
|
|
||||||
v) The :term:`estimated target energy` is just the sum of the HF energy and the :term:`energetic perturbative correction`
|
|
||||||
|
|
||||||
3) H is rediagonlaized in the new set of determinants : HF + the selected doubles
|
|
||||||
|
|
||||||
:math:`\Rightarrow` better :term:`variational energy` and :term:`selected wave function`
|
|
||||||
|
|
||||||
4) The :term:`generators` subset does not change.
|
|
||||||
|
|
||||||
|
|
||||||
At the second iteration :
|
|
||||||
1) By applying H on the :term:`generators` (still HF) one generates all singles and doubles
|
|
||||||
2) For each :term:`perturbers` you estimate by perturbation its coefficient of energetic contribution.
|
|
||||||
|
|
||||||
i) Here the :term:`selectors` is now HF + the previously selected doubles
|
|
||||||
|
|
||||||
:math:`\Rightarrow` the :term:`perturbers` now interact with all the previously selected doubles
|
|
||||||
:math:`\Rightarrow` better estimation of the coefficients of the :term:`perturbers`
|
|
||||||
:math:`\Rightarrow` the singles have non zero coefficients
|
|
||||||
|
|
||||||
ii) The most important :term:`perturbers` enter in the :term:`intern space`
|
|
||||||
|
|
||||||
iv) The :term:`energetic perturbative correction` is re estimated
|
|
||||||
|
|
||||||
v) The :term:`estimated target energy` is now the sum of the variational energy of the :term:`selected wave function` and the :term:`energetic perturbative correction`
|
|
||||||
|
|
||||||
:math:`\Rightarrow` better estimation of the :term:`target energy`
|
|
||||||
|
|
||||||
Iterate untill you reached the desired :term:`stopping criterion`
|
|
||||||
|
|
@ -1,228 +0,0 @@
|
|||||||
=============================
|
|
||||||
The Documentation of the code
|
|
||||||
=============================
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
The heart of the problem : how do we compute the perturbation ?
|
|
||||||
===============================================================
|
|
||||||
|
|
||||||
In this section we will present the basic ideas of how do we compute any kind of perturbative quantity.
|
|
||||||
|
|
||||||
The main problem
|
|
||||||
^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
Consider a simple problem of perturbation theory in which you have a *general* multireference wave function :math:`| \psi \rangle`
|
|
||||||
(no trivial way to know the kind of relations between those determinants) :
|
|
||||||
|
|
||||||
.. math::
|
|
||||||
| \psi \rangle = \sum_{I=1,N_{det}} c_I | D_I \rangle
|
|
||||||
|
|
||||||
and you would like to compute its second order :term:`perturbative energetic correction`, which we can write like this for the sake of simplicity:
|
|
||||||
|
|
||||||
.. math::
|
|
||||||
E_{PT2} = \sum_{P \, \rm{that} \, \rm{are} \, \rm{not} \, \rm{in} \, | \psi \rangle } \frac{\langle \psi | H | D_P \rangle^2}{\Delta E_P}
|
|
||||||
|
|
||||||
and the :math:`\Delta E_P` will determine what kind of PT you use. Note that you must not double count a determinant :math:`| D_P \rangle` and that you must not count those which are in :math:`| \psi \rangle`.
|
|
||||||
|
|
||||||
What you have to do is to apply the :math:`H` operator on this :math:`| \psi \rangle` that would generate a lot of determinants :math:`|D \rangle`,
|
|
||||||
and you must find a way to see if :
|
|
||||||
|
|
||||||
#) the determinant :math:`|D \rangle` is in :math:`| \psi \rangle`
|
|
||||||
|
|
||||||
#) the determinant :math:`|D \rangle` have already been counted
|
|
||||||
|
|
||||||
How do we do in practice ? We apply :math:`H` succesively on each determinant of :math:`| \psi \rangle` and each :math:`H` application generates a lot of determinant :math:`|D \rangle`. For each determinants :math:`|D \rangle` we check with a very optimized subroutine if
|
|
||||||
|
|
||||||
#) :math:`|D\rangle` was a single or a double excitation respect to all the determinant on which we previously applyed :math:`H`
|
|
||||||
|
|
||||||
:math:`\Rightarrow` if it is the case then it have already been computed in the past and so we don't double count it.
|
|
||||||
|
|
||||||
#) :math:`|D\rangle` is already in the rest of the :math:`| \psi \rangle`
|
|
||||||
|
|
||||||
:math:`\Rightarrow` if it is the case you must not count it.
|
|
||||||
|
|
||||||
This subroutine (:samp:`connected_to_ref` ) is called a **HUGE** number of times and so it have been optimized in a proper way.
|
|
||||||
Its basis is the :samp:`popcnt` hardware instruction that figures in the :samp:`SSE4.2` releases of processors.
|
|
||||||
It allows to know how many bites are set to one in an integer within a few cycles of CPU.
|
|
||||||
By manipulation of bits masks you can easily extract the excitation degree between two determinants.
|
|
||||||
|
|
||||||
One interesting feature of this approach is that it is easily and efficiently parallelizable (which of cours have been done),
|
|
||||||
and you can easily reach an parallel efficiency of about :math:`95\%`.
|
|
||||||
|
|
||||||
|
|
||||||
The link between the perturbation and the selection
|
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
In the selected CI algorithm you have general :math:`| \psi \rangle` multi determinantal wave function and you want to make it better
|
|
||||||
by proposing some new candidates to enter in this wave function.
|
|
||||||
Those candidates must of course not be already in :math:`| \psi \rangle` and since their are selected thanks to their perturbative properties (on the energy or on the coefficient), their are generated through some application of the :math:`H` operator. So we see that we have exactly the same kind of feature than in the perturbation.
|
|
||||||
|
|
||||||
How do we select the determinant in practice ? Exactly like we do the perturbation !
|
|
||||||
|
|
||||||
do G = 1, :term:`N_{Generators}`
|
|
||||||
|
|
||||||
#) We apply :math:`H` on one :term:`generators`
|
|
||||||
|
|
||||||
:math:`\Rightarrow` :math:`H|D_G \rangle = \sum_D \langle D | H |D_G \rangle |D \rangle`
|
|
||||||
|
|
||||||
#) For each determinant :math:`|D \rangle` we check if it could have been generated from previous :term:`generators` :math:`| D_{G'} \rangle`
|
|
||||||
|
|
||||||
:math:`\Rightarrow` If it is not the case we check if it belongs to :math:`| \psi \rangle`
|
|
||||||
|
|
||||||
#) We compute its perturbative property
|
|
||||||
|
|
||||||
#) If it is important we put it in a buffer of the potential candidates to the new set of :term:`internal determinants`
|
|
||||||
|
|
||||||
#) go to 1
|
|
||||||
|
|
||||||
enddo
|
|
||||||
|
|
||||||
|
|
||||||
So once you have applyed :math:`H` on all the :term:`generators`, you sort all the buffer of the candidates by their importance,
|
|
||||||
and after you pick up the most important ones, which will enter in the wave function and be diagonalized.
|
|
||||||
|
|
||||||
|
|
||||||
Just to be more precise, what we drescribe here is the standard CIPSI algorithm (which :term:`target space` is always the FCI). In practice, if you replace the :math:`H` operator by the :term:`restricted H operator` defined by the :term:`target` space you have exactly what is emplemented.
|
|
||||||
|
|
||||||
The typical feature of an iteration
|
|
||||||
===================================
|
|
||||||
|
|
||||||
An iteration of the selected CI program is always built in the same way. This can be resumed in the following simple tasks.
|
|
||||||
|
|
||||||
Iteration :
|
|
||||||
|
|
||||||
#) :term:`restricted H operator` applyed on the :term:`generators`
|
|
||||||
|
|
||||||
:math:`\Rightarrow` :term:`perturbativ action` (*e.g* Selection of some :term:`perturbers`, calculation of the :math:`E_{PT2}^m`, etc ...)
|
|
||||||
|
|
||||||
#) Some update induced by the :term:`perturbative action` (*e.g* diagonalization of the new :math:`H` matrix, etc ...)
|
|
||||||
#) Check the :term:`stopping criterion`
|
|
||||||
#) Update the :term:`generators` subset
|
|
||||||
#) Save restart data if needed
|
|
||||||
#) Iterate
|
|
||||||
|
|
||||||
To go into details we list the various available options for each task.
|
|
||||||
|
|
||||||
The :samp:`restricted_H_apply` like subroutines
|
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
Here we enter into details on the part of the subroutines that is responsible for the :term:`restricted H operator` part of the tasks.
|
|
||||||
|
|
||||||
The general ideas
|
|
||||||
^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
This subroutine takes in input a determinant (in term of an integer key) and some bits masks
|
|
||||||
that are used to restrict the excitations (see the :term:`excitations bits masks` and :term:`excitations restrictions`).
|
|
||||||
It generates the singles and doubles excitations from the input determinant and these :term:`excitations bits masks`.
|
|
||||||
This subroutine will be applyed on the :term:`generators` determinants to generate the :term:`perturbers`.
|
|
||||||
|
|
||||||
This subroutine in itself does not exist, it is just a skeleton that generates all possible singles and doubles.
|
|
||||||
As seen in the previsous section, once you apply :math:`H` on a given determinant, you will use the generated determinants
|
|
||||||
to do a certain number of things that deal with in general a perturbative quantity, this is the :term:`perturbative action`.
|
|
||||||
|
|
||||||
A way to resume what is done in the subroutine and to make a mental representation can be explained like this :
|
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: fortran
|
|
||||||
|
|
||||||
subroutine restricted_H_apply(key_in)
|
|
||||||
|
|
||||||
do i = 1, available_holes(1)
|
|
||||||
do j = 1, available_holes(2)
|
|
||||||
do k = 1, available_particles(1)
|
|
||||||
do l = 1, available_particles(2)
|
|
||||||
! you generate some excitations on key_in that will generate some key_out
|
|
||||||
call excitation(i,j,k,l,key_in,key_out)
|
|
||||||
! you exploit key_out to do some perturbative work
|
|
||||||
call perturbative_action(key_out)
|
|
||||||
enddo
|
|
||||||
enddo
|
|
||||||
enddo
|
|
||||||
enddo
|
|
||||||
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
So we see that here once we have made an excitation on :samp:`key_in` that generates :samp:`key_out`,
|
|
||||||
we can do some work related to the :term:`perturbative action` on this :samp:`key_out`.
|
|
||||||
|
|
||||||
In this simple representation of the subroutine, there are some :samp:`available_holes` and :samp:`available_particle`.
|
|
||||||
This is due to the :term:`excitation restrictions` that are implicitly defined by the :term:`target space`,
|
|
||||||
and to the :term:`restricted orbitals` that are defined by the user.
|
|
||||||
In practice those :term:`excitation restrictions` are just the excitations that are going to be allowed to a given :term:`generator determinant`.
|
|
||||||
We do this by using some :term:`excitations bits masks`.
|
|
||||||
The :term:`excitation restrictions` and the :term:`restricted orbitals` are built thanks to the use of :term:`excitations bits masks`.
|
|
||||||
|
|
||||||
Available :term:`excitation restrictions`
|
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
The :term:`excitation restrictions` prohibits some kind of excitations because it is in the definition
|
|
||||||
of the :term:`target space` to avoid a certain class of excitation.
|
|
||||||
For instance, in the :term:`CAS+DDCI` method, you will apply all the single and double excitations on the top of the :term:`CAS wave function`.
|
|
||||||
After those :term:`excitation restrictions` defined by the :term:`target space`, there can be some kind of excitations that the user wishes to avoid.
|
|
||||||
For instance, within a :term:`CISD` or a :term:`CAS+DDCI` you can wish that all the excitations of the core electrons can be neglected,
|
|
||||||
or that there are some virtuals that are not relevant for a certain kind of correlation effects.
|
|
||||||
|
|
||||||
This restrictions are done in the program by defining some classes of orbitals that depend both on the method you would like to use,
|
|
||||||
and by the specific restrictions you would like to do on the top of that. So we see that there are classes of orbitals that depend on the method,
|
|
||||||
and other classes that can be defined for any class of method.
|
|
||||||
|
|
||||||
This classes are the the :term:`frozen occupied orbitals` and the :term:`deleted virtual orbitals` .
|
|
||||||
|
|
||||||
Available :term:`perturbative action`
|
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
From what we saw previously, when an excitation is performed on a given :term:`generator`,
|
|
||||||
depending on the method defined by the user, different actions can be performed at that point of the calculation.
|
|
||||||
|
|
||||||
Nevertheless, all this actions here deal with the perturbation, that is why we called this step the :term:`perturbative action`.
|
|
||||||
|
|
||||||
The :term:`perturbative action` is very flexible. It consists in doing (or not) a certain kind of things.
|
|
||||||
|
|
||||||
When a given determinant :samp:`key_out` is generated, you can :
|
|
||||||
|
|
||||||
#) check if this determinants have to be taken into account (see :samp:`connected_to_ref` and :samp:`is_in_ref`)
|
|
||||||
#) compute its :term:`perturbative energetic contribution` and its :term:`perturbative coefficient` (see :term:`perturbation theory`)
|
|
||||||
#) use those perturbative quantities to do something that deals with it (see :term:`perturbative possibility` )
|
|
||||||
|
|
||||||
In principle, for each of those actions one would put a :samp:`if` statement and decline all the possible actions to do.
|
|
||||||
However, because there can exist a *lot* of possible action and because this loop is really intern, putting a lot of :samp:`if` statement
|
|
||||||
is not a good idea and will slow the code.
|
|
||||||
|
|
||||||
To avoid that we generate with a python script all possible subroutines corresponding to some actions, and the program will use the one
|
|
||||||
that will be defined by the method desired by the user. In this way there is no unnecessary tests in the intern loop, it done in the input.
|
|
||||||
|
|
||||||
The :term:`perturbative possibility`
|
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
Once you have compute the :term:`perturbative energetic contribution` and the :term:`perturbative coefficient` of a given :term:`perturber`,
|
|
||||||
you must use those quantities. Here is listed what is available :
|
|
||||||
|
|
||||||
#) accumulate it :term:`perturbative energetic contribution` to compute the :term:`Energetic perturbative correction`
|
|
||||||
#) accumulate it :term:`perturbative coefficient` to compute the :term:`first order perturbative norm`
|
|
||||||
#) put or not the :samp:`key_out` determinant in a buffer to select some new :term:`intenal determinants` see :term:`selection`
|
|
||||||
#) update the arrays of the :term:`correlation energy by holes and particles` (see :term:`CISD+SC2`)
|
|
||||||
#) dress all the diagonal matrix elements of the :term:`internal determiants` (see :term:`Dressed MRCI`)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Connected to ref / is in ref
|
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
This subroutine takes in input a determinant (in term of an integer key), an array of determinants :samp:`keys` (containing :samp:`N_det` determinants)
|
|
||||||
and an integer :samp:`i_past` which is smaller or equal to :samp:`N_det`.
|
|
||||||
|
|
||||||
It checks if the input determinant is connected by the :math:`H` matrix to all the determinants in :samp:`keys` that are before :samp:`i_past`.
|
|
||||||
It also check if the input determinant is in the whole list of determinants :samp:`keys`.
|
|
||||||
|
|
||||||
In output you have an integer :samp:`c_ref` that have the following values :
|
|
||||||
|
|
||||||
#) 0 : the input determinant is not in :samp:`keys` and is not connected to any determinant
|
|
||||||
in :samp:`keys` that is before :samp:`i_past`.
|
|
||||||
|
|
||||||
#) +m : the input determinant is connected by the :math:`H` matrix to the *m* th determinant :samp:`keys`.
|
|
||||||
|
|
||||||
#) -m : the input determinant is already in :samp:`keys` and it is the *m* th determinant in :samp:`keys`
|
|
||||||
|
|
||||||
|
|
@ -1,285 +0,0 @@
|
|||||||
# -*- coding: utf-8 -*-
|
|
||||||
#
|
|
||||||
# Selected CI documentation build configuration file, created by
|
|
||||||
# sphinx-quickstart on Mon Feb 10 15:53:11 2014.
|
|
||||||
#
|
|
||||||
# This file is execfile()d with the current directory set to its containing dir.
|
|
||||||
#
|
|
||||||
# Note that not all possible configuration values are present in this
|
|
||||||
# autogenerated file.
|
|
||||||
#
|
|
||||||
# All configuration values have a default; values that are commented out
|
|
||||||
# serve to show the default.
|
|
||||||
|
|
||||||
import sys, os
|
|
||||||
|
|
||||||
# If extensions (or modules to document with autodoc) are in another directory,
|
|
||||||
# add these directories to sys.path here. If the directory is relative to the
|
|
||||||
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
|
||||||
#sys.path.insert(0, os.path.abspath('.'))
|
|
||||||
|
|
||||||
# -- General configuration -----------------------------------------------------
|
|
||||||
|
|
||||||
# If your documentation needs a minimal Sphinx version, state it here.
|
|
||||||
#needs_sphinx = '1.0'
|
|
||||||
|
|
||||||
# Add any Sphinx extension module names here, as strings. They can be extensions
|
|
||||||
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
|
|
||||||
extensions = ['sphinx.ext.autodoc', 'sphinx.ext.doctest', 'sphinx.ext.todo', 'sphinx.ext.mathjax', 'sphinx.ext.viewcode']
|
|
||||||
|
|
||||||
# Add any paths that contain templates here, relative to this directory.
|
|
||||||
templates_path = ['_templates']
|
|
||||||
|
|
||||||
# The suffix of source filenames.
|
|
||||||
source_suffix = '.rst'
|
|
||||||
|
|
||||||
# The encoding of source files.
|
|
||||||
#source_encoding = 'utf-8-sig'
|
|
||||||
|
|
||||||
# The master toctree document.
|
|
||||||
master_doc = 'index'
|
|
||||||
|
|
||||||
# General information about the project.
|
|
||||||
project = u'Selected CI'
|
|
||||||
copyright = u'2014, Giner Emmanuel , Scemama Anthony'
|
|
||||||
|
|
||||||
# The version info for the project you're documenting, acts as replacement for
|
|
||||||
# |version| and |release|, also used in various other places throughout the
|
|
||||||
# built documents.
|
|
||||||
#
|
|
||||||
# The short X.Y version.
|
|
||||||
version = '1.0'
|
|
||||||
# The full version, including alpha/beta/rc tags.
|
|
||||||
release = version+'.1'
|
|
||||||
|
|
||||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
|
||||||
# for a list of supported languages.
|
|
||||||
#language = None
|
|
||||||
|
|
||||||
# There are two options for replacing |today|: either, you set today to some
|
|
||||||
# non-false value, then it is used:
|
|
||||||
#today = ''
|
|
||||||
# Else, today_fmt is used as the format for a strftime call.
|
|
||||||
#today_fmt = '%B %d, %Y'
|
|
||||||
|
|
||||||
# List of patterns, relative to source directory, that match files and
|
|
||||||
# directories to ignore when looking for source files.
|
|
||||||
exclude_patterns = []
|
|
||||||
|
|
||||||
# The reST default role (used for this markup: `text`) to use for all documents.
|
|
||||||
#default_role = None
|
|
||||||
|
|
||||||
# If true, '()' will be appended to :func: etc. cross-reference text.
|
|
||||||
#add_function_parentheses = True
|
|
||||||
|
|
||||||
# If true, the current module name will be prepended to all description
|
|
||||||
# unit titles (such as .. function::).
|
|
||||||
#add_module_names = True
|
|
||||||
|
|
||||||
# If true, sectionauthor and moduleauthor directives will be shown in the
|
|
||||||
# output. They are ignored by default.
|
|
||||||
#show_authors = False
|
|
||||||
|
|
||||||
# The name of the Pygments (syntax highlighting) style to use.
|
|
||||||
pygments_style = 'sphinx'
|
|
||||||
|
|
||||||
# A list of ignored prefixes for module index sorting.
|
|
||||||
#modindex_common_prefix = []
|
|
||||||
|
|
||||||
|
|
||||||
# -- Options for HTML output ---------------------------------------------------
|
|
||||||
|
|
||||||
# The theme to use for HTML and HTML Help pages. See the documentation for
|
|
||||||
# a list of builtin themes.
|
|
||||||
html_theme = 'default'
|
|
||||||
|
|
||||||
# Theme options are theme-specific and customize the look and feel of a theme
|
|
||||||
# further. For a list of options available for each theme, see the
|
|
||||||
# documentation.
|
|
||||||
#html_theme_options = {}
|
|
||||||
|
|
||||||
# Add any paths that contain custom themes here, relative to this directory.
|
|
||||||
#html_theme_path = []
|
|
||||||
|
|
||||||
# The name for this set of Sphinx documents. If None, it defaults to
|
|
||||||
# "<project> v<release> documentation".
|
|
||||||
#html_title = None
|
|
||||||
|
|
||||||
# A shorter title for the navigation bar. Default is the same as html_title.
|
|
||||||
#html_short_title = None
|
|
||||||
|
|
||||||
# The name of an image file (relative to this directory) to place at the top
|
|
||||||
# of the sidebar.
|
|
||||||
#html_logo = None
|
|
||||||
|
|
||||||
# The name of an image file (within the static path) to use as favicon of the
|
|
||||||
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
|
|
||||||
# pixels large.
|
|
||||||
#html_favicon = None
|
|
||||||
|
|
||||||
# Add any paths that contain custom static files (such as style sheets) here,
|
|
||||||
# relative to this directory. They are copied after the builtin static files,
|
|
||||||
# so a file named "default.css" will overwrite the builtin "default.css".
|
|
||||||
html_static_path = ['_static']
|
|
||||||
|
|
||||||
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
|
|
||||||
# using the given strftime format.
|
|
||||||
#html_last_updated_fmt = '%b %d, %Y'
|
|
||||||
|
|
||||||
# If true, SmartyPants will be used to convert quotes and dashes to
|
|
||||||
# typographically correct entities.
|
|
||||||
#html_use_smartypants = True
|
|
||||||
|
|
||||||
# Custom sidebar templates, maps document names to template names.
|
|
||||||
#html_sidebars = {}
|
|
||||||
|
|
||||||
# Additional templates that should be rendered to pages, maps page names to
|
|
||||||
# template names.
|
|
||||||
#html_additional_pages = {}
|
|
||||||
|
|
||||||
# If false, no module index is generated.
|
|
||||||
#html_domain_indices = True
|
|
||||||
|
|
||||||
# If false, no index is generated.
|
|
||||||
#html_use_index = True
|
|
||||||
|
|
||||||
# If true, the index is split into individual pages for each letter.
|
|
||||||
#html_split_index = False
|
|
||||||
|
|
||||||
# If true, links to the reST sources are added to the pages.
|
|
||||||
#html_show_sourcelink = True
|
|
||||||
|
|
||||||
# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
|
|
||||||
#html_show_sphinx = True
|
|
||||||
|
|
||||||
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
|
|
||||||
#html_show_copyright = True
|
|
||||||
|
|
||||||
# If true, an OpenSearch description file will be output, and all pages will
|
|
||||||
# contain a <link> tag referring to it. The value of this option must be the
|
|
||||||
# base URL from which the finished HTML is served.
|
|
||||||
#html_use_opensearch = ''
|
|
||||||
|
|
||||||
# This is the file name suffix for HTML files (e.g. ".xhtml").
|
|
||||||
#html_file_suffix = None
|
|
||||||
|
|
||||||
# Output file base name for HTML help builder.
|
|
||||||
htmlhelp_basename = 'SelectedCIdoc'
|
|
||||||
|
|
||||||
|
|
||||||
# -- Options for LaTeX output --------------------------------------------------
|
|
||||||
|
|
||||||
latex_elements = {
|
|
||||||
# The paper size ('letterpaper' or 'a4paper').
|
|
||||||
#'papersize': 'letterpaper',
|
|
||||||
|
|
||||||
# The font size ('10pt', '11pt' or '12pt').
|
|
||||||
#'pointsize': '10pt',
|
|
||||||
|
|
||||||
# Additional stuff for the LaTeX preamble.
|
|
||||||
#'preamble': '',
|
|
||||||
}
|
|
||||||
|
|
||||||
# Grouping the document tree into LaTeX files. List of tuples
|
|
||||||
# (source start file, target name, title, author, documentclass [howto/manual]).
|
|
||||||
latex_documents = [
|
|
||||||
('index', 'SelectedCI.tex', u'Selected CI Documentation',
|
|
||||||
u'Giner Emmanuel ', 'manual'),
|
|
||||||
]
|
|
||||||
|
|
||||||
# The name of an image file (relative to this directory) to place at the top of
|
|
||||||
# the title page.
|
|
||||||
#latex_logo = None
|
|
||||||
|
|
||||||
# For "manual" documents, if this is true, then toplevel headings are parts,
|
|
||||||
# not chapters.
|
|
||||||
#latex_use_parts = False
|
|
||||||
|
|
||||||
# If true, show page references after internal links.
|
|
||||||
#latex_show_pagerefs = False
|
|
||||||
|
|
||||||
# If true, show URL addresses after external links.
|
|
||||||
#latex_show_urls = False
|
|
||||||
|
|
||||||
# Documents to append as an appendix to all manuals.
|
|
||||||
#latex_appendices = []
|
|
||||||
|
|
||||||
# If false, no module index is generated.
|
|
||||||
#latex_domain_indices = True
|
|
||||||
|
|
||||||
|
|
||||||
# -- Options for manual page output --------------------------------------------
|
|
||||||
|
|
||||||
# One entry per manual page. List of tuples
|
|
||||||
# (source start file, name, description, authors, manual section).
|
|
||||||
man_pages = [
|
|
||||||
('index', 'selectedci', u'Selected CI Documentation',
|
|
||||||
[u'Giner Emmanuel '], 1)
|
|
||||||
]
|
|
||||||
|
|
||||||
# If true, show URL addresses after external links.
|
|
||||||
#man_show_urls = False
|
|
||||||
|
|
||||||
|
|
||||||
# -- Options for Texinfo output ------------------------------------------------
|
|
||||||
|
|
||||||
# Grouping the document tree into Texinfo files. List of tuples
|
|
||||||
# (source start file, target name, title, author,
|
|
||||||
# dir menu entry, description, category)
|
|
||||||
texinfo_documents = [
|
|
||||||
('index', 'SelectedCI', u'Selected CI Documentation',
|
|
||||||
u'Giner Emmanuel ', 'SelectedCI', 'One line description of project.',
|
|
||||||
'Miscellaneous'),
|
|
||||||
]
|
|
||||||
|
|
||||||
# Documents to append as an appendix to all manuals.
|
|
||||||
#texinfo_appendices = []
|
|
||||||
|
|
||||||
# If false, no module index is generated.
|
|
||||||
#texinfo_domain_indices = True
|
|
||||||
|
|
||||||
# How to display URL addresses: 'footnote', 'no', or 'inline'.
|
|
||||||
#texinfo_show_urls = 'footnote'
|
|
||||||
|
|
||||||
|
|
||||||
# -- Options for Epub output ---------------------------------------------------
|
|
||||||
|
|
||||||
# Bibliographic Dublin Core info.
|
|
||||||
epub_title = u'Selected CI'
|
|
||||||
epub_author = u'Giner Emmanuel '
|
|
||||||
epub_publisher = u'Giner Emmanuel '
|
|
||||||
epub_copyright = u'2014, Giner Emmanuel '
|
|
||||||
|
|
||||||
# The language of the text. It defaults to the language option
|
|
||||||
# or en if the language is not set.
|
|
||||||
#epub_language = ''
|
|
||||||
|
|
||||||
# The scheme of the identifier. Typical schemes are ISBN or URL.
|
|
||||||
#epub_scheme = ''
|
|
||||||
|
|
||||||
# The unique identifier of the text. This can be a ISBN number
|
|
||||||
# or the project homepage.
|
|
||||||
#epub_identifier = ''
|
|
||||||
|
|
||||||
# A unique identification for the text.
|
|
||||||
#epub_uid = ''
|
|
||||||
|
|
||||||
# A tuple containing the cover image and cover page html template filenames.
|
|
||||||
#epub_cover = ()
|
|
||||||
|
|
||||||
# HTML files that should be inserted before the pages created by sphinx.
|
|
||||||
# The format is a list of tuples containing the path and title.
|
|
||||||
#epub_pre_files = []
|
|
||||||
|
|
||||||
# HTML files shat should be inserted after the pages created by sphinx.
|
|
||||||
# The format is a list of tuples containing the path and title.
|
|
||||||
#epub_post_files = []
|
|
||||||
|
|
||||||
# A list of files that should not be packed into the epub file.
|
|
||||||
#epub_exclude_files = []
|
|
||||||
|
|
||||||
# The depth of the table of contents in toc.ncx.
|
|
||||||
#epub_tocdepth = 3
|
|
||||||
|
|
||||||
# Allow duplicate toc entries.
|
|
||||||
#epub_tocdup = True
|
|
@ -1,25 +0,0 @@
|
|||||||
.. Selected CI documentation master file, created by
|
|
||||||
sphinx-quickstart on Mon Feb 10 15:53:11 2014.
|
|
||||||
You can adapt this file completely to your liking, but it should at least
|
|
||||||
contain the root `toctree` directive.
|
|
||||||
|
|
||||||
Welcome to Selected CI's documentation!
|
|
||||||
=======================================
|
|
||||||
|
|
||||||
Contents:
|
|
||||||
|
|
||||||
.. toctree::
|
|
||||||
:maxdepth: 1
|
|
||||||
|
|
||||||
install
|
|
||||||
Intro
|
|
||||||
code_doc_intro
|
|
||||||
wavefunction
|
|
||||||
|
|
||||||
Indices and tables
|
|
||||||
==================
|
|
||||||
|
|
||||||
* :ref:`genindex`
|
|
||||||
* :ref:`modindex`
|
|
||||||
* :ref:`search`
|
|
||||||
|
|
@ -1,40 +0,0 @@
|
|||||||
============
|
|
||||||
Installation
|
|
||||||
============
|
|
||||||
|
|
||||||
Requirements
|
|
||||||
------------
|
|
||||||
|
|
||||||
* `GNU make <http://www.gnu.org/software/make>`_
|
|
||||||
* `The Intel Fortran Compiler with MKL <http://software.intel.com/en-us/fortran-compilers>`_
|
|
||||||
* `IRPF90 <http://irpf90.ups-tlse.fr>`_
|
|
||||||
* `EZFIO <http://ezfio.sourceforge.net>`_
|
|
||||||
|
|
||||||
Optional Requirements
|
|
||||||
---------------------
|
|
||||||
|
|
||||||
* `Sphinx <http://sphinx-doc.org/>`_ is used to build the documentation
|
|
||||||
|
|
||||||
Setup
|
|
||||||
-----
|
|
||||||
|
|
||||||
#) Run the :file:`setup_environment.sh` script. This will create the :file:`sci.rc` file
|
|
||||||
that contains all the environment variables ::
|
|
||||||
|
|
||||||
$ ./setup_environment.sh
|
|
||||||
|
|
||||||
#) Source this file into your shell ::
|
|
||||||
|
|
||||||
$ source sci.rc
|
|
||||||
|
|
||||||
#) Go into the :file:`src` directory and create the :file:`Makefile.config` file using the
|
|
||||||
:file:`Makefile.config.example` file as a template
|
|
||||||
|
|
||||||
#) Build the program ::
|
|
||||||
|
|
||||||
$ make
|
|
||||||
|
|
||||||
#) Build the documentation ::
|
|
||||||
|
|
||||||
$ make doc
|
|
||||||
|
|
@ -1,169 +0,0 @@
|
|||||||
=====================================
|
|
||||||
Selection, perturbation ... keywords
|
|
||||||
=====================================
|
|
||||||
|
|
||||||
.. |CISD| replace:: :abbr:`CISD (Configuration Interaction with Single and Double excitations)`
|
|
||||||
.. |HF| replace:: :abbr:`HF (Hartree Fock)`
|
|
||||||
.. |CAS-CI| replace:: :abbr:`CAS-CI (Complete Active Space Configuration Interaction)`
|
|
||||||
.. |DDCI| replace:: :abbr:`DDCI (Difference Dedicated Configuration Interaction)`
|
|
||||||
|
|
||||||
.. glossary::
|
|
||||||
:sorted:
|
|
||||||
|
|
||||||
Energetic perturbative correction
|
|
||||||
Corresponds to the correction to the energy at the second order of a given perturbtation theory
|
|
||||||
to a given state m.
|
|
||||||
By convention it noted :math:`E_{PT2}^m`
|
|
||||||
|
|
||||||
Variational energy
|
|
||||||
Corresponds to the variational energy of the :term:`selected wave function` for a given state .
|
|
||||||
By convention it noted :math:`E_{Var}^m` for the mth eigenvector.
|
|
||||||
|
|
||||||
.. math::
|
|
||||||
E_{Var}^m = \langle \psi_m |H|\psi_m \rangle
|
|
||||||
|
|
||||||
Estimated target energy
|
|
||||||
Corresponds to the estimation of the target energy for a given :term:`selected wave function` and a given state.
|
|
||||||
By convention it noted :math:`E_{Target}^m`.
|
|
||||||
Its mathematical expression is :
|
|
||||||
|
|
||||||
.. math::
|
|
||||||
E_{Target}^m = E_{Var}^m + E_{PT2}^m
|
|
||||||
|
|
||||||
Selected wave function
|
|
||||||
Corresponds to the wave function that have been previously selected for a given state m at a current iteration.
|
|
||||||
This wave function is defined by the set of the :term:`internal determinants` and by their coefficients
|
|
||||||
on the state m.
|
|
||||||
By convention it is noted :math:`|\psi_m\rangle`
|
|
||||||
|
|
||||||
.. math::
|
|
||||||
| \psi_m \rangle = \sum_{I=1,N_{selected}} c_I^m | D_I \rangle
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
EN EG
|
|
||||||
Stands for Eipstein Nesbet with EigenValues zeroth order energy perturbation theory.
|
|
||||||
It is a state specific 2nd order perturbation theory. Here m is the index of the eigenstate.
|
|
||||||
The :math:`H_0` of this PT is defined as the diagonal part of the Hamiltonian such as
|
|
||||||
the :math:`E_m` is equal to the average value of the Hamiltonian on the :term:`selected wave function`
|
|
||||||
and the :math:`E_P` is equal to the average value of the Hamiltonian on the :term:`perturbers`
|
|
||||||
|
|
||||||
This perturbation have bad formal properties but some nice numerical features of convergence.
|
|
||||||
|
|
||||||
|
|
||||||
From the definition, one get the first order coefficient and its related second order energetic contribution of a a perturber :
|
|
||||||
|
|
||||||
.. math::
|
|
||||||
c_{D_P}^m= \sum_{S=1,N_{\rm selectors}} \frac{c_S^m \langle D_S|H|D_P\rangle}{ \langle \psi_m |H|\psi_m \rangle - \langle D_P|H| D_P \rangle } \\
|
|
||||||
e_{D_P}^m= \frac{(\sum_{S=1,N_{\rm selectors}} c_S^m \langle D_S|H|D_P\rangle)^2}{\langle \psi_m |H|\psi_m \rangle - \langle D_P|H| D_P \rangle }
|
|
||||||
|
|
||||||
|
|
||||||
Stopping criterion
|
|
||||||
Condition decided by the user to stop the calculation.
|
|
||||||
This criterion might be on the :term:`Energetic perturbative correction`, on the number of :term:`internal determinants` N_selected_max
|
|
||||||
or on the stability of the :term:`estimated target energy`
|
|
||||||
The user can also send a Ctrl+C to stop the calculation, and it will kill itself properly, saving the datas that need to be saved.
|
|
||||||
|
|
||||||
|
|
||||||
Target wave function
|
|
||||||
Wave function of the :term:`target space`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Target space
|
|
||||||
Target of the CI calculation. Defining a method (CISD, CAS-CI and so on) is equivalent to define the :term:`target space`.
|
|
||||||
|
|
||||||
The target space defines the rules to define the :term:`Generators` ,
|
|
||||||
the rules of the :term:`excitation restrictions`,
|
|
||||||
and the perturbation theory to be used.
|
|
||||||
|
|
||||||
There are two type of methods/:term:`target space` proposed in the code :
|
|
||||||
|
|
||||||
#) the CAS-CI type methods where you do not restrict any kind of excitation degree within a given list of orbitals.
|
|
||||||
#) the singles and doubles excitations on the top of a given reference wave function (:term:`CISD`, :term:`CISD+SC2`, :term:`CAS+SD`, :term:`CAS+DDCI`, :term:`CAS+MRPT2`)
|
|
||||||
|
|
||||||
Their is a great difference between those two types of method in the way it is implemented.
|
|
||||||
|
|
||||||
In the CAS-CI method, when you have chosen an :term:`active space` (so a list of orbitals and electrons to make a FCI within this active space),
|
|
||||||
all the :term:`Internal determinants` that have been selected and that form the :term:`selected wave function`
|
|
||||||
can potentially be part of the :term:`generators`, by mean that the :term:`restricted H operator`
|
|
||||||
could be potentially applyed on all the :term:`internal determinants` to generate some other :term:`perturbers`.
|
|
||||||
|
|
||||||
In the singles and doubles excitation on the top of a given reference wave function, the subset of :term:`generators`
|
|
||||||
and so the rules to recognize them, is fixed at the begining of the method. Those :term:`generators` are precisely
|
|
||||||
all the determinants forming the :term:`reference wave function`.
|
|
||||||
|
|
||||||
|
|
||||||
There are the different :term:`target space` that are available :
|
|
||||||
|
|
||||||
#) :term:`CISD`
|
|
||||||
#) :term:`CISD+SC2`
|
|
||||||
#) :term:`CASCI`
|
|
||||||
#) :term:`CASCI+S`
|
|
||||||
#) :term:`CASCI+SD`
|
|
||||||
#) :term:`CASCI+DDCI`
|
|
||||||
#) :term:`CASCI+DDCI+(2h-2p)PT2`
|
|
||||||
#) :term:`CAS-CI+MRPT2`
|
|
||||||
|
|
||||||
|
|
||||||
Target energy
|
|
||||||
Energy of the target space.
|
|
||||||
|
|
||||||
H operator
|
|
||||||
Hamiltonian operator defined in terms of creation and anihilation operators in the spin orbital space.
|
|
||||||
|
|
||||||
Excitation restrictions
|
|
||||||
Restriction in the :term:`H operator` that the user imposes to define the target sapce.
|
|
||||||
For example :
|
|
||||||
|
|
||||||
1) If one freeze some core orbitals or delete some virtuals, it is an :term:`excitation restrictions`
|
|
||||||
2) If one prohibits the pure inactive double excitations in a CAS+SD one get a DDCI
|
|
||||||
3) any kind of restriction in the full application of the :term:`H operator`
|
|
||||||
|
|
||||||
|
|
||||||
Restricted H operator
|
|
||||||
:term:`H operator` taking into account the :term:`Excitation restrictions`
|
|
||||||
|
|
||||||
|
|
||||||
CISD+SC2
|
|
||||||
Method developped by JP. Malrieu that can be seen as a cheap approximation of the CCSD.
|
|
||||||
It makes a CISD size consistant and separable for closed shell systems.
|
|
||||||
It is based on a CISD calculation
|
|
||||||
where the diagonal part of the H matrix is dressed by the repeatable correlation energy previsously obtained.
|
|
||||||
So it is a CISD dressed by the disconnected triples and quadruples.
|
|
||||||
|
|
||||||
Generators
|
|
||||||
Set of generator determinants.
|
|
||||||
By convention a generator is written as :math:`|D_G\rangle` .
|
|
||||||
A generator determinant is a determinant on which
|
|
||||||
the :term:`restricted H operator` is being applied for the selection and/or the perturbation.
|
|
||||||
|
|
||||||
Internal determinants
|
|
||||||
Selected determinants in terms of integers keys.
|
|
||||||
By convention an Internal determinant is written as :math:`|D_I\rangle` .
|
|
||||||
By convention, the :term:`Generators` are at the begining of the array.
|
|
||||||
|
|
||||||
Intern space
|
|
||||||
Set of all the :term:`internal determinants`.
|
|
||||||
|
|
||||||
Perturbers
|
|
||||||
Determinants within the :term:`target space` but taht are not already included in the :term:`intern space`.
|
|
||||||
They are created from the :term:`Generators` that belongs :term:`Intern space` for a given :term:`selected wave function`.
|
|
||||||
By convention a perturber is written as :math:`|D_P\rangle`.
|
|
||||||
|
|
||||||
Selectors
|
|
||||||
Determinants that are used to compute the perturbative properties of the :term:`perturbers`.
|
|
||||||
By convention a selector is written as :math:`|D_S\rangle` .
|
|
||||||
The selectors are a subset of determinant of the total wave function (that is the :term:`Internal determinants`).
|
|
||||||
This subset contains at least the :term:`Generators` determinants.
|
|
||||||
The perturbative properties (energy, coefficient or else) of the :term:`perturbers` are calculated on all the :term:`selectors` :math:`|D_S\rangle`
|
|
||||||
|
|
||||||
.. math::
|
|
||||||
|
|
||||||
c_{D_S}= \sum_{S=1,N_{\rm selectors}} \frac{c_S\langle D_S|H|D_P\rangle}{\Delta E_{P,S}} \\
|
|
||||||
e_{D_S}= \frac{(\sum_{S=1,N_{\rm selectors}} c_S \langle D_S|H|D_P\rangle) ^2}{\Delta E_{P,S}}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -68,6 +68,9 @@
|
|||||||
.. |QMC| replace:: :abbr:`QMC (Quantum Monte Carlo)`
|
.. |QMC| replace:: :abbr:`QMC (Quantum Monte Carlo)`
|
||||||
.. |rst| replace:: :abbr:`RST (ReStructured Text)`
|
.. |rst| replace:: :abbr:`RST (ReStructured Text)`
|
||||||
.. |SCF| replace:: :abbr:`SCF (Self Consistent Field)`
|
.. |SCF| replace:: :abbr:`SCF (Self Consistent Field)`
|
||||||
|
.. |RSH| replace:: :abbr:`RSH (Range-Separated-Hybrids)`
|
||||||
|
.. |KS-DFT| replace:: :abbr:`KS-DFT (Kohn-Sham Density Functional Theory)`
|
||||||
|
.. |sCI| replace:: :abbr:`sCI (Selected-CI)`
|
||||||
.. |CASSCF| replace:: |CAS| - |SCF|
|
.. |CASSCF| replace:: |CAS| - |SCF|
|
||||||
.. |FCIQMC| replace:: |FCI| - |QMC|
|
.. |FCIQMC| replace:: |FCI| - |QMC|
|
||||||
|
|
||||||
|
@ -12,13 +12,15 @@ What it is
|
|||||||
==========
|
==========
|
||||||
|
|
||||||
The |qp| is an open-source programming environment for quantum chemistry,
|
The |qp| is an open-source programming environment for quantum chemistry,
|
||||||
especially for `wave function methods <https://en.wikipedia.org/wiki/Ab_initio_quantum_chemistry_methods>`_.
|
especially for `wave function theory <https://en.wikipedia.org/wiki/Ab_initio_quantum_chemistry_methods>`_ (WFT).
|
||||||
The main goal is the development of selected configuration interaction (sCI)
|
The main goal is the development of selected configuration interaction |sCI|
|
||||||
methods and multi-reference perturbation theory (MR-PT) in the
|
methods and multi-reference perturbation theory |MRPT| in the
|
||||||
determinant-driven paradigm. The determinant-driven framework allows 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|.
|
||||||
programmer to include any arbitrary set of determinants in the variational
|
|
||||||
space, and thus gives a complete freedom in the methodological development. All
|
Regarding the The determinant-driven framework allows the programmer to include any arbitrary set of
|
||||||
the programs are developed with the `IRPF90`_ code generator, which simplifies
|
determinants in the variational space, and thus gives a complete freedom in the methodological
|
||||||
|
development. The basics of RSH together with the WFT framework also allow a simple coupling between DFT and WFT calculations (see the plugins of `<https://gitlab.com/eginer/qp_plugins_eginer>`_)
|
||||||
|
All the programs are developed with the `IRPF90`_ code generator, which simplifies
|
||||||
the collaborative development, and the development of new features.
|
the collaborative development, and the development of new features.
|
||||||
|
|
||||||
|
|
||||||
|
@ -896,7 +896,7 @@ Subroutines / functions
|
|||||||
|
|
||||||
File: :file:`spread_dipole_ao.irp.f`
|
File: :file:`spread_dipole_ao.irp.f`
|
||||||
|
|
||||||
|
Computes the following integral : int [-infty ; +infty] of [(x-A_center)^(power_A) * (x-B_center)^power_B * exp(-alpha(x-A_center)^2) * exp(-beta(x-B_center)^2) * x ] needed for the dipole and those things
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -139,44 +139,25 @@ Providers
|
|||||||
.. code:: text
|
.. code:: text
|
||||||
|
|
||||||
double precision, allocatable :: final_grid_points (3,n_points_final_grid)
|
double precision, allocatable :: final_grid_points (3,n_points_final_grid)
|
||||||
double precision, allocatable :: final_weight_functions_at_final_grid_points (n_points_final_grid)
|
double precision, allocatable :: final_weight_at_r_vector (n_points_final_grid)
|
||||||
integer, allocatable :: index_final_points (3,n_points_final_grid)
|
integer, allocatable :: index_final_points (3,n_points_final_grid)
|
||||||
integer, allocatable :: index_final_points_reverse (n_points_integration_angular,n_points_radial_grid,nucl_num)
|
integer, allocatable :: index_final_points_reverse (n_points_integration_angular,n_points_radial_grid,nucl_num)
|
||||||
|
|
||||||
File: :file:`grid_becke_vector.irp.f`
|
File: :file:`grid_becke_vector.irp.f`
|
||||||
|
|
||||||
final_grid_points(1:3,j) = (/ x, y, z /) of the jth grid point
|
final_grid_points(1:3,j) = (/ x, y, z /) of the jth grid point
|
||||||
final_weight_functions_at_final_grid_points(i) = Total weight function of the ith grid point which contains the Lebedev, Voronoi and radial weights contributions
|
final_weight_at_r_vector(i) = Total weight function of the ith grid point which contains the Lebedev, Voronoi and radial weights contributions
|
||||||
index_final_points(1:3,i) = gives the angular, radial and atomic indices associated to the ith grid point
|
index_final_points(1:3,i) = gives the angular, radial and atomic indices associated to the ith grid point
|
||||||
index_final_points_reverse(i,j,k) = index of the grid point having i as angular, j as radial and l as atomic indices
|
index_final_points_reverse(i,j,k) = index of the grid point having i as angular, j as radial and l as atomic indices
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: final_weight_functions_at_final_grid_points
|
.. c:var:: final_weight_at_r
|
||||||
|
|
||||||
.. code:: text
|
.. code:: text
|
||||||
|
|
||||||
double precision, allocatable :: final_grid_points (3,n_points_final_grid)
|
double precision, allocatable :: final_weight_at_r (n_points_integration_angular,n_points_radial_grid,nucl_num)
|
||||||
double precision, allocatable :: final_weight_functions_at_final_grid_points (n_points_final_grid)
|
|
||||||
integer, allocatable :: index_final_points (3,n_points_final_grid)
|
|
||||||
integer, allocatable :: index_final_points_reverse (n_points_integration_angular,n_points_radial_grid,nucl_num)
|
|
||||||
|
|
||||||
File: :file:`grid_becke_vector.irp.f`
|
|
||||||
|
|
||||||
final_grid_points(1:3,j) = (/ x, y, z /) of the jth grid point
|
|
||||||
final_weight_functions_at_final_grid_points(i) = Total weight function of the ith grid point which contains the Lebedev, Voronoi and radial weights contributions
|
|
||||||
index_final_points(1:3,i) = gives the angular, radial and atomic indices associated to the ith grid point
|
|
||||||
index_final_points_reverse(i,j,k) = index of the grid point having i as angular, j as radial and l as atomic indices
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: final_weight_functions_at_grid_points
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: final_weight_functions_at_grid_points (n_points_integration_angular,n_points_radial_grid,nucl_num)
|
|
||||||
|
|
||||||
File: :file:`grid_becke.irp.f`
|
File: :file:`grid_becke.irp.f`
|
||||||
|
|
||||||
@ -185,6 +166,25 @@ Providers
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: final_weight_at_r_vector
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision, allocatable :: final_grid_points (3,n_points_final_grid)
|
||||||
|
double precision, allocatable :: final_weight_at_r_vector (n_points_final_grid)
|
||||||
|
integer, allocatable :: index_final_points (3,n_points_final_grid)
|
||||||
|
integer, allocatable :: index_final_points_reverse (n_points_integration_angular,n_points_radial_grid,nucl_num)
|
||||||
|
|
||||||
|
File: :file:`grid_becke_vector.irp.f`
|
||||||
|
|
||||||
|
final_grid_points(1:3,j) = (/ x, y, z /) of the jth grid point
|
||||||
|
final_weight_at_r_vector(i) = Total weight function of the ith grid point which contains the Lebedev, Voronoi and radial weights contributions
|
||||||
|
index_final_points(1:3,i) = gives the angular, radial and atomic indices associated to the ith grid point
|
||||||
|
index_final_points_reverse(i,j,k) = index of the grid point having i as angular, j as radial and l as atomic indices
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: grid_points_per_atom
|
.. c:var:: grid_points_per_atom
|
||||||
|
|
||||||
.. code:: text
|
.. code:: text
|
||||||
@ -217,14 +217,14 @@ Providers
|
|||||||
.. code:: text
|
.. code:: text
|
||||||
|
|
||||||
double precision, allocatable :: final_grid_points (3,n_points_final_grid)
|
double precision, allocatable :: final_grid_points (3,n_points_final_grid)
|
||||||
double precision, allocatable :: final_weight_functions_at_final_grid_points (n_points_final_grid)
|
double precision, allocatable :: final_weight_at_r_vector (n_points_final_grid)
|
||||||
integer, allocatable :: index_final_points (3,n_points_final_grid)
|
integer, allocatable :: index_final_points (3,n_points_final_grid)
|
||||||
integer, allocatable :: index_final_points_reverse (n_points_integration_angular,n_points_radial_grid,nucl_num)
|
integer, allocatable :: index_final_points_reverse (n_points_integration_angular,n_points_radial_grid,nucl_num)
|
||||||
|
|
||||||
File: :file:`grid_becke_vector.irp.f`
|
File: :file:`grid_becke_vector.irp.f`
|
||||||
|
|
||||||
final_grid_points(1:3,j) = (/ x, y, z /) of the jth grid point
|
final_grid_points(1:3,j) = (/ x, y, z /) of the jth grid point
|
||||||
final_weight_functions_at_final_grid_points(i) = Total weight function of the ith grid point which contains the Lebedev, Voronoi and radial weights contributions
|
final_weight_at_r_vector(i) = Total weight function of the ith grid point which contains the Lebedev, Voronoi and radial weights contributions
|
||||||
index_final_points(1:3,i) = gives the angular, radial and atomic indices associated to the ith grid point
|
index_final_points(1:3,i) = gives the angular, radial and atomic indices associated to the ith grid point
|
||||||
index_final_points_reverse(i,j,k) = index of the grid point having i as angular, j as radial and l as atomic indices
|
index_final_points_reverse(i,j,k) = index of the grid point having i as angular, j as radial and l as atomic indices
|
||||||
|
|
||||||
@ -236,14 +236,14 @@ Providers
|
|||||||
.. code:: text
|
.. code:: text
|
||||||
|
|
||||||
double precision, allocatable :: final_grid_points (3,n_points_final_grid)
|
double precision, allocatable :: final_grid_points (3,n_points_final_grid)
|
||||||
double precision, allocatable :: final_weight_functions_at_final_grid_points (n_points_final_grid)
|
double precision, allocatable :: final_weight_at_r_vector (n_points_final_grid)
|
||||||
integer, allocatable :: index_final_points (3,n_points_final_grid)
|
integer, allocatable :: index_final_points (3,n_points_final_grid)
|
||||||
integer, allocatable :: index_final_points_reverse (n_points_integration_angular,n_points_radial_grid,nucl_num)
|
integer, allocatable :: index_final_points_reverse (n_points_integration_angular,n_points_radial_grid,nucl_num)
|
||||||
|
|
||||||
File: :file:`grid_becke_vector.irp.f`
|
File: :file:`grid_becke_vector.irp.f`
|
||||||
|
|
||||||
final_grid_points(1:3,j) = (/ x, y, z /) of the jth grid point
|
final_grid_points(1:3,j) = (/ x, y, z /) of the jth grid point
|
||||||
final_weight_functions_at_final_grid_points(i) = Total weight function of the ith grid point which contains the Lebedev, Voronoi and radial weights contributions
|
final_weight_at_r_vector(i) = Total weight function of the ith grid point which contains the Lebedev, Voronoi and radial weights contributions
|
||||||
index_final_points(1:3,i) = gives the angular, radial and atomic indices associated to the ith grid point
|
index_final_points(1:3,i) = gives the angular, radial and atomic indices associated to the ith grid point
|
||||||
index_final_points_reverse(i,j,k) = index of the grid point having i as angular, j as radial and l as atomic indices
|
index_final_points_reverse(i,j,k) = index of the grid point having i as angular, j as radial and l as atomic indices
|
||||||
|
|
||||||
@ -289,11 +289,11 @@ Providers
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: weight_functions_at_grid_points
|
.. c:var:: weight_at_r
|
||||||
|
|
||||||
.. code:: text
|
.. code:: text
|
||||||
|
|
||||||
double precision, allocatable :: weight_functions_at_grid_points (n_points_integration_angular,n_points_radial_grid,nucl_num)
|
double precision, allocatable :: weight_at_r (n_points_integration_angular,n_points_radial_grid,nucl_num)
|
||||||
|
|
||||||
File: :file:`grid_becke.irp.f`
|
File: :file:`grid_becke.irp.f`
|
||||||
|
|
||||||
|
@ -189,7 +189,7 @@ Providers
|
|||||||
|
|
||||||
File: :file:`u0_h_u0.irp.f`
|
File: :file:`u0_h_u0.irp.f`
|
||||||
|
|
||||||
Energy of the current wave function
|
Electronic energy of the current wave function
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -3149,6 +3149,20 @@ Subroutines / functions
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:function:: pouet
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
subroutine pouet
|
||||||
|
|
||||||
|
File: :file:`test.irp.f`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:function:: pull_pt2
|
.. c:function:: pull_pt2
|
||||||
|
|
||||||
.. code:: text
|
.. code:: text
|
||||||
|
@ -754,6 +754,20 @@ Subroutines / functions
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:function:: run
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
subroutine run
|
||||||
|
|
||||||
|
File: :file:`pt2.irp.f`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:function:: run_pt2_slave
|
.. c:function:: run_pt2_slave
|
||||||
|
|
||||||
.. code:: text
|
.. code:: text
|
||||||
|
@ -61,6 +61,77 @@ Providers
|
|||||||
---------
|
---------
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: ao_bi_elec_integral_alpha
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision, allocatable :: ao_bi_elec_integral_alpha (ao_num,ao_num)
|
||||||
|
double precision, allocatable :: ao_bi_elec_integral_beta (ao_num,ao_num)
|
||||||
|
|
||||||
|
File: :file:`fock_matrix_hf.irp.f`
|
||||||
|
|
||||||
|
Alpha Fock matrix in AO basis set
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: ao_bi_elec_integral_beta
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision, allocatable :: ao_bi_elec_integral_alpha (ao_num,ao_num)
|
||||||
|
double precision, allocatable :: ao_bi_elec_integral_beta (ao_num,ao_num)
|
||||||
|
|
||||||
|
File: :file:`fock_matrix_hf.irp.f`
|
||||||
|
|
||||||
|
Alpha Fock matrix in AO basis set
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: extra_e_contrib_density
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision :: extra_e_contrib_density
|
||||||
|
|
||||||
|
File: :file:`hf_energy.irp.f`
|
||||||
|
|
||||||
|
Extra contribution to the SCF energy coming from the density.
|
||||||
|
For a Hartree-Fock calculation: extra_e_contrib_density = 0
|
||||||
|
For a Kohn-Sham or Range-separated Kohn-Sham: the exchange/correlation - trace of the V_xc potential
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: fock_matrix_ao_alpha
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision, allocatable :: fock_matrix_ao_alpha (ao_num,ao_num)
|
||||||
|
double precision, allocatable :: fock_matrix_ao_beta (ao_num,ao_num)
|
||||||
|
|
||||||
|
File: :file:`fock_matrix_hf.irp.f`
|
||||||
|
|
||||||
|
Alpha Fock matrix in AO basis set
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: fock_matrix_ao_beta
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision, allocatable :: fock_matrix_ao_alpha (ao_num,ao_num)
|
||||||
|
double precision, allocatable :: fock_matrix_ao_beta (ao_num,ao_num)
|
||||||
|
|
||||||
|
File: :file:`fock_matrix_hf.irp.f`
|
||||||
|
|
||||||
|
Alpha Fock matrix in AO basis set
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: hf_energy
|
.. c:var:: hf_energy
|
||||||
|
|
||||||
.. code:: text
|
.. code:: text
|
||||||
@ -111,6 +182,20 @@ Subroutines / functions
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:function:: create_guess
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
subroutine create_guess
|
||||||
|
|
||||||
|
File: :file:`scf_old.irp.f`
|
||||||
|
|
||||||
|
Create a MO guess if no MOs are present in the EZFIO directory
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:function:: scf
|
.. c:function:: scf
|
||||||
|
|
||||||
.. code:: text
|
.. code:: text
|
||||||
|
@ -51,176 +51,6 @@ Providers
|
|||||||
---------
|
---------
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: ao_bi_elec_integral_alpha
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: ao_bi_elec_integral_alpha (ao_num,ao_num)
|
|
||||||
double precision, allocatable :: ao_bi_elec_integral_beta (ao_num,ao_num)
|
|
||||||
|
|
||||||
File: :file:`fock_matrix_ks.irp.f`
|
|
||||||
|
|
||||||
Alpha Fock matrix in ao basis set
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: ao_bi_elec_integral_beta
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: ao_bi_elec_integral_alpha (ao_num,ao_num)
|
|
||||||
double precision, allocatable :: ao_bi_elec_integral_beta (ao_num,ao_num)
|
|
||||||
|
|
||||||
File: :file:`fock_matrix_ks.irp.f`
|
|
||||||
|
|
||||||
Alpha Fock matrix in ao basis set
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: ao_potential_alpha_xc
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: ao_potential_alpha_xc (ao_num,ao_num)
|
|
||||||
double precision, allocatable :: ao_potential_beta_xc (ao_num,ao_num)
|
|
||||||
|
|
||||||
File: :file:`pot_functionals.irp.f`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: ao_potential_beta_xc
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: ao_potential_alpha_xc (ao_num,ao_num)
|
|
||||||
double precision, allocatable :: ao_potential_beta_xc (ao_num,ao_num)
|
|
||||||
|
|
||||||
File: :file:`pot_functionals.irp.f`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: e_correlation_dft
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision :: e_correlation_dft
|
|
||||||
|
|
||||||
File: :file:`pot_functionals.irp.f`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: e_exchange_dft
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision :: e_exchange_dft
|
|
||||||
|
|
||||||
File: :file:`pot_functionals.irp.f`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: extra_e_contrib_density
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision :: extra_e_contrib_density
|
|
||||||
|
|
||||||
File: :file:`ks_enery.irp.f`
|
|
||||||
|
|
||||||
Extra contribution to the SCF energy coming from the density.
|
|
||||||
For a Hartree-Fock calculation: extra_e_contrib_density = 0
|
|
||||||
For a Kohn-Sham or Range-separated Kohn-Sham: the exchange/correlation - 1/2 trace of the V_xc potential
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: fock_matrix_alpha_no_xc_ao
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: fock_matrix_alpha_no_xc_ao (ao_num,ao_num)
|
|
||||||
double precision, allocatable :: fock_matrix_beta_no_xc_ao (ao_num,ao_num)
|
|
||||||
|
|
||||||
File: :file:`fock_matrix_ks.irp.f`
|
|
||||||
|
|
||||||
Mono electronic an Coulomb matrix in ao basis set
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: fock_matrix_ao_alpha
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: fock_matrix_ao_alpha (ao_num,ao_num)
|
|
||||||
double precision, allocatable :: fock_matrix_ao_beta (ao_num,ao_num)
|
|
||||||
|
|
||||||
File: :file:`fock_matrix_ks.irp.f`
|
|
||||||
|
|
||||||
Alpha Fock matrix in ao basis set
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: fock_matrix_ao_beta
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: fock_matrix_ao_alpha (ao_num,ao_num)
|
|
||||||
double precision, allocatable :: fock_matrix_ao_beta (ao_num,ao_num)
|
|
||||||
|
|
||||||
File: :file:`fock_matrix_ks.irp.f`
|
|
||||||
|
|
||||||
Alpha Fock matrix in ao basis set
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: fock_matrix_beta_no_xc_ao
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: fock_matrix_alpha_no_xc_ao (ao_num,ao_num)
|
|
||||||
double precision, allocatable :: fock_matrix_beta_no_xc_ao (ao_num,ao_num)
|
|
||||||
|
|
||||||
File: :file:`fock_matrix_ks.irp.f`
|
|
||||||
|
|
||||||
Mono electronic an Coulomb matrix in ao basis set
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: fock_matrix_energy
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision :: ks_energy
|
|
||||||
double precision :: two_electron_energy
|
|
||||||
double precision :: one_electron_energy
|
|
||||||
double precision :: fock_matrix_energy
|
|
||||||
double precision :: trace_potential_xc
|
|
||||||
|
|
||||||
File: :file:`ks_enery.irp.f`
|
|
||||||
|
|
||||||
Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: ks_energy
|
.. c:var:: ks_energy
|
||||||
|
|
||||||
.. code:: text
|
.. code:: text
|
||||||
@ -236,114 +66,3 @@ Providers
|
|||||||
Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: one_electron_energy
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision :: ks_energy
|
|
||||||
double precision :: two_electron_energy
|
|
||||||
double precision :: one_electron_energy
|
|
||||||
double precision :: fock_matrix_energy
|
|
||||||
double precision :: trace_potential_xc
|
|
||||||
|
|
||||||
File: :file:`ks_enery.irp.f`
|
|
||||||
|
|
||||||
Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: trace_potential_xc
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision :: ks_energy
|
|
||||||
double precision :: two_electron_energy
|
|
||||||
double precision :: one_electron_energy
|
|
||||||
double precision :: fock_matrix_energy
|
|
||||||
double precision :: trace_potential_xc
|
|
||||||
|
|
||||||
File: :file:`ks_enery.irp.f`
|
|
||||||
|
|
||||||
Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: two_electron_energy
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision :: ks_energy
|
|
||||||
double precision :: two_electron_energy
|
|
||||||
double precision :: one_electron_energy
|
|
||||||
double precision :: fock_matrix_energy
|
|
||||||
double precision :: trace_potential_xc
|
|
||||||
|
|
||||||
File: :file:`ks_enery.irp.f`
|
|
||||||
|
|
||||||
Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Subroutines / functions
|
|
||||||
-----------------------
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:function:: check_coherence_functional
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
subroutine check_coherence_functional
|
|
||||||
|
|
||||||
File: :file:`ks_scf.irp.f`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:function:: create_guess
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
subroutine create_guess
|
|
||||||
|
|
||||||
File: :file:`ks_scf.irp.f`
|
|
||||||
|
|
||||||
Create a MO guess if no MOs are present in the EZFIO directory
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:function:: run
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
subroutine run
|
|
||||||
|
|
||||||
File: :file:`ks_scf.irp.f`
|
|
||||||
|
|
||||||
Run SCF calculation
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:function:: srs_ks_cf
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
subroutine srs_ks_cf
|
|
||||||
|
|
||||||
File: :file:`ks_scf.irp.f`
|
|
||||||
|
|
||||||
Produce `Kohn_Sham` MO orbital output: mo_basis.mo_tot_num mo_basis.mo_label mo_basis.ao_md5 mo_basis.mo_coef mo_basis.mo_occ output: kohn_sham.energy optional: mo_basis.mo_coef
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -51,6 +51,122 @@ Providers
|
|||||||
---------
|
---------
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: ao_potential_alpha_xc
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision, allocatable :: ao_potential_alpha_xc (ao_num,ao_num)
|
||||||
|
double precision, allocatable :: ao_potential_beta_xc (ao_num,ao_num)
|
||||||
|
|
||||||
|
File: :file:`pot_functionals.irp.f`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: ao_potential_beta_xc
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision, allocatable :: ao_potential_alpha_xc (ao_num,ao_num)
|
||||||
|
double precision, allocatable :: ao_potential_beta_xc (ao_num,ao_num)
|
||||||
|
|
||||||
|
File: :file:`pot_functionals.irp.f`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: e_correlation_dft
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision :: e_correlation_dft
|
||||||
|
|
||||||
|
File: :file:`pot_functionals.irp.f`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: e_exchange_dft
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision :: e_exchange_dft
|
||||||
|
|
||||||
|
File: :file:`pot_functionals.irp.f`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: fock_matrix_alpha_no_xc_ao
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision, allocatable :: fock_matrix_alpha_no_xc_ao (ao_num,ao_num)
|
||||||
|
double precision, allocatable :: fock_matrix_beta_no_xc_ao (ao_num,ao_num)
|
||||||
|
|
||||||
|
File: :file:`fock_matrix_rs_ks.irp.f`
|
||||||
|
|
||||||
|
Mono electronic an Coulomb matrix in AO basis set
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: fock_matrix_beta_no_xc_ao
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision, allocatable :: fock_matrix_alpha_no_xc_ao (ao_num,ao_num)
|
||||||
|
double precision, allocatable :: fock_matrix_beta_no_xc_ao (ao_num,ao_num)
|
||||||
|
|
||||||
|
File: :file:`fock_matrix_rs_ks.irp.f`
|
||||||
|
|
||||||
|
Mono electronic an Coulomb matrix in AO basis set
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: fock_matrix_energy
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision :: rs_ks_energy
|
||||||
|
double precision :: two_electron_energy
|
||||||
|
double precision :: one_electron_energy
|
||||||
|
double precision :: fock_matrix_energy
|
||||||
|
double precision :: trace_potential_xc
|
||||||
|
|
||||||
|
File: :file:`rs_ks_energy.irp.f`
|
||||||
|
|
||||||
|
Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: one_electron_energy
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision :: rs_ks_energy
|
||||||
|
double precision :: two_electron_energy
|
||||||
|
double precision :: one_electron_energy
|
||||||
|
double precision :: fock_matrix_energy
|
||||||
|
double precision :: trace_potential_xc
|
||||||
|
|
||||||
|
File: :file:`rs_ks_energy.irp.f`
|
||||||
|
|
||||||
|
Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: rs_ks_energy
|
.. c:var:: rs_ks_energy
|
||||||
|
|
||||||
.. code:: text
|
.. code:: text
|
||||||
@ -66,3 +182,69 @@ Providers
|
|||||||
Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: trace_potential_xc
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision :: rs_ks_energy
|
||||||
|
double precision :: two_electron_energy
|
||||||
|
double precision :: one_electron_energy
|
||||||
|
double precision :: fock_matrix_energy
|
||||||
|
double precision :: trace_potential_xc
|
||||||
|
|
||||||
|
File: :file:`rs_ks_energy.irp.f`
|
||||||
|
|
||||||
|
Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:var:: two_electron_energy
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
double precision :: rs_ks_energy
|
||||||
|
double precision :: two_electron_energy
|
||||||
|
double precision :: one_electron_energy
|
||||||
|
double precision :: fock_matrix_energy
|
||||||
|
double precision :: trace_potential_xc
|
||||||
|
|
||||||
|
File: :file:`rs_ks_energy.irp.f`
|
||||||
|
|
||||||
|
Range-separated Kohn-Sham energy containing the nuclear repulsion energy, and the various components of this quantity.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Subroutines / functions
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:function:: check_coherence_functional
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
subroutine check_coherence_functional
|
||||||
|
|
||||||
|
File: :file:`rs_ks_scf.irp.f`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.. c:function:: srs_ks_cf
|
||||||
|
|
||||||
|
.. code:: text
|
||||||
|
|
||||||
|
subroutine srs_ks_cf
|
||||||
|
|
||||||
|
File: :file:`rs_ks_scf.irp.f`
|
||||||
|
|
||||||
|
Produce `Range_separated_Kohn_Sham` MO orbital output: mo_basis.mo_tot_num mo_basis.mo_label mo_basis.ao_md5 mo_basis.mo_coef mo_basis.mo_occ output: kohn_sham.energy optional: mo_basis.mo_coef
|
||||||
|
|
||||||
|
|
||||||
|
@ -203,21 +203,6 @@ Subroutines / functions
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:function:: i_h_psi_pert_new_minilist
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
subroutine i_H_psi_pert_new_minilist(key,keys,idx_key,N_minilist,coef,Nint,Ndet,Ndet_max,Nstate,i_H_psi_array,coef_pert)
|
|
||||||
|
|
||||||
File: :file:`pt2_new.irp.f`
|
|
||||||
|
|
||||||
Computes <i|H|Psi> = \sum_J c_J <i|H|J>.
|
|
||||||
Uses filter_connected_i_H_psi0 to get all the |J> to which |i> is connected. The |J> are searched in short pre-computed lists.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:function:: perturb_buffer_by_mono_decontracted
|
.. c:function:: perturb_buffer_by_mono_decontracted
|
||||||
|
|
||||||
.. code:: text
|
.. code:: text
|
||||||
|
@ -12,166 +12,3 @@ Reference wave function is defined as a |CAS| wave function.
|
|||||||
This module is required for |CAS-SD|, |MRPT| or |MRCC|.
|
This module is required for |CAS-SD|, |MRPT| or |MRCC|.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Providers
|
|
||||||
---------
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: idx_ref
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_ref (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_ref_coef (psi_det_size,n_states)
|
|
||||||
integer, allocatable :: idx_ref (psi_det_size)
|
|
||||||
integer :: n_det_ref
|
|
||||||
|
|
||||||
File: :file:`psi_ref.irp.f`
|
|
||||||
|
|
||||||
CAS wave function, defined from the application of the CAS bitmask on the determinants. idx_cas gives the indice of the CAS determinant in psi_det.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: inv_norm_psi_ref
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: norm_psi_ref (N_states)
|
|
||||||
double precision, allocatable :: inv_norm_psi_ref (N_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref.irp.f`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: n_det_ref
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_ref (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_ref_coef (psi_det_size,n_states)
|
|
||||||
integer, allocatable :: idx_ref (psi_det_size)
|
|
||||||
integer :: n_det_ref
|
|
||||||
|
|
||||||
File: :file:`psi_ref.irp.f`
|
|
||||||
|
|
||||||
CAS wave function, defined from the application of the CAS bitmask on the determinants. idx_cas gives the indice of the CAS determinant in psi_det.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: norm_psi_ref
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: norm_psi_ref (N_states)
|
|
||||||
double precision, allocatable :: inv_norm_psi_ref (N_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref.irp.f`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_non_ref_coef_interm_norm
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: psi_non_ref_coef_interm_norm (N_det_non_ref,N_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref.irp.f`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_ref
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_ref (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_ref_coef (psi_det_size,n_states)
|
|
||||||
integer, allocatable :: idx_ref (psi_det_size)
|
|
||||||
integer :: n_det_ref
|
|
||||||
|
|
||||||
File: :file:`psi_ref.irp.f`
|
|
||||||
|
|
||||||
CAS wave function, defined from the application of the CAS bitmask on the determinants. idx_cas gives the indice of the CAS determinant in psi_det.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_ref_coef
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_ref (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_ref_coef (psi_det_size,n_states)
|
|
||||||
integer, allocatable :: idx_ref (psi_det_size)
|
|
||||||
integer :: n_det_ref
|
|
||||||
|
|
||||||
File: :file:`psi_ref.irp.f`
|
|
||||||
|
|
||||||
CAS wave function, defined from the application of the CAS bitmask on the determinants. idx_cas gives the indice of the CAS determinant in psi_det.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_ref_coef_interm_norm
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: psi_ref_coef_interm_norm (N_det_ref,N_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref.irp.f`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_ref_coef_inv
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: psi_ref_coef_inv (psi_det_size,n_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref.irp.f`
|
|
||||||
|
|
||||||
1/psi_ref_coef
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_ref_coef_restart
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_ref_restart (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_ref_coef_restart (psi_det_size,n_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref.irp.f`
|
|
||||||
|
|
||||||
Projection of the CAS wave function on the restart wave function.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_ref_restart
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_ref_restart (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_ref_coef_restart (psi_det_size,n_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref.irp.f`
|
|
||||||
|
|
||||||
Projection of the CAS wave function on the restart wave function.
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -14,369 +14,3 @@ needs to be loaded with any `psi_ref_*` module.
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Providers
|
|
||||||
---------
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: h_matrix_ref
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: h_matrix_ref (N_det_ref,N_det_ref)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: holes_operators
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: holes_operators (N_int,2)
|
|
||||||
integer(bit_kind), allocatable :: particles_operators (N_int,2)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_excitations_operators.irp.f`
|
|
||||||
|
|
||||||
holes_operators represents an array of integers where all the holes have been done going from psi_ref to psi_non_ref particles_operators represents an array of integers where all the particles have been done going from psi_ref to psi_non_ref
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: idx_non_ref
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_non_ref (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_non_ref_coef (psi_det_size,n_states)
|
|
||||||
integer, allocatable :: idx_non_ref (psi_det_size)
|
|
||||||
integer, allocatable :: idx_non_ref_rev (psi_det_size)
|
|
||||||
integer :: n_det_non_ref
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Set of determinants which are not part of the reference, defined from the application of the reference bitmask on the determinants. idx_non_ref gives the indice of the determinant in psi_det. idx_non_ref_rev gives the reverse.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: idx_non_ref_from_sorted
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer, allocatable :: idx_non_ref_from_sorted (N_det)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: idx_non_ref_rev
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_non_ref (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_non_ref_coef (psi_det_size,n_states)
|
|
||||||
integer, allocatable :: idx_non_ref (psi_det_size)
|
|
||||||
integer, allocatable :: idx_non_ref_rev (psi_det_size)
|
|
||||||
integer :: n_det_non_ref
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Set of determinants which are not part of the reference, defined from the application of the reference bitmask on the determinants. idx_non_ref gives the indice of the determinant in psi_det. idx_non_ref_rev gives the reverse.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: n_det_non_ref
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_non_ref (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_non_ref_coef (psi_det_size,n_states)
|
|
||||||
integer, allocatable :: idx_non_ref (psi_det_size)
|
|
||||||
integer, allocatable :: idx_non_ref_rev (psi_det_size)
|
|
||||||
integer :: n_det_non_ref
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Set of determinants which are not part of the reference, defined from the application of the reference bitmask on the determinants. idx_non_ref gives the indice of the determinant in psi_det. idx_non_ref_rev gives the reverse.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: particles_operators
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: holes_operators (N_int,2)
|
|
||||||
integer(bit_kind), allocatable :: particles_operators (N_int,2)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_excitations_operators.irp.f`
|
|
||||||
|
|
||||||
holes_operators represents an array of integers where all the holes have been done going from psi_ref to psi_non_ref particles_operators represents an array of integers where all the particles have been done going from psi_ref to psi_non_ref
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_non_ref
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_non_ref (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_non_ref_coef (psi_det_size,n_states)
|
|
||||||
integer, allocatable :: idx_non_ref (psi_det_size)
|
|
||||||
integer, allocatable :: idx_non_ref_rev (psi_det_size)
|
|
||||||
integer :: n_det_non_ref
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Set of determinants which are not part of the reference, defined from the application of the reference bitmask on the determinants. idx_non_ref gives the indice of the determinant in psi_det. idx_non_ref_rev gives the reverse.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_non_ref_coef
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_non_ref (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_non_ref_coef (psi_det_size,n_states)
|
|
||||||
integer, allocatable :: idx_non_ref (psi_det_size)
|
|
||||||
integer, allocatable :: idx_non_ref_rev (psi_det_size)
|
|
||||||
integer :: n_det_non_ref
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Set of determinants which are not part of the reference, defined from the application of the reference bitmask on the determinants. idx_non_ref gives the indice of the determinant in psi_det. idx_non_ref_rev gives the reverse.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_non_ref_coef_restart
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_non_ref_restart (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_non_ref_coef_restart (psi_det_size,n_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Set of determinants which are not part of the reference, defined from the application of the reference bitmask on the determinants. idx_non_ref gives the indice of the determinant in psi_det. But this is with respect to the restart wave function.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_non_ref_coef_sorted_bit
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_non_ref_sorted_bit (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_non_ref_coef_sorted_bit (psi_det_size,N_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Reference determinants sorted to accelerate the search of a random determinant in the wave function.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_non_ref_coef_transp
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: psi_non_ref_coef_transp (n_states,psi_det_size)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Transposed psi_non_ref_coef
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_non_ref_restart
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_non_ref_restart (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_non_ref_coef_restart (psi_det_size,n_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Set of determinants which are not part of the reference, defined from the application of the reference bitmask on the determinants. idx_non_ref gives the indice of the determinant in psi_det. But this is with respect to the restart wave function.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_non_ref_sorted_bit
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_non_ref_sorted_bit (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_non_ref_coef_sorted_bit (psi_det_size,N_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Reference determinants sorted to accelerate the search of a random determinant in the wave function.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_ref_coef_diagonalized
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: psi_ref_coef_diagonalized (N_det_ref,N_states)
|
|
||||||
double precision, allocatable :: psi_ref_energy_diagonalized (N_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_ref_coef_normalized
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: psi_ref_coef_normalized (psi_det_size,n_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Normalized coefficients of the reference
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_ref_coef_sorted_bit
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_ref_sorted_bit (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_ref_coef_sorted_bit (psi_det_size,N_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Reference determinants sorted to accelerate the search of a random determinant in the wave function.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_ref_coef_transp
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: psi_ref_coef_transp (n_states,psi_det_size)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Transposed psi_ref_coef
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_ref_energy
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: psi_ref_energy (N_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_ref_energy_diagonalized
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: psi_ref_coef_diagonalized (N_det_ref,N_states)
|
|
||||||
double precision, allocatable :: psi_ref_energy_diagonalized (N_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: psi_ref_sorted_bit
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer(bit_kind), allocatable :: psi_ref_sorted_bit (N_int,2,psi_det_size)
|
|
||||||
double precision, allocatable :: psi_ref_coef_sorted_bit (psi_det_size,N_states)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Reference determinants sorted to accelerate the search of a random determinant in the wave function.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:var:: ref_hamiltonian_matrix
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
double precision, allocatable :: ref_hamiltonian_matrix (n_det_ref,n_det_ref)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
H matrix in the Reference space
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Subroutines / functions
|
|
||||||
-----------------------
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:function:: extract_ref
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
subroutine extract_ref
|
|
||||||
|
|
||||||
File: :file:`extract_ref.irp.f`
|
|
||||||
|
|
||||||
Replaces the total wave function by the normalized projection on the reference
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:function:: get_index_in_psi_ref_sorted_bit
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
integer function get_index_in_psi_ref_sorted_bit(key,Nint)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
Returns the index of the determinant in the ``psi_ref_sorted_bit`` array
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:function:: is_in_psi_ref
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
logical function is_in_psi_ref(key,Nint)
|
|
||||||
|
|
||||||
File: :file:`psi_ref_utils.irp.f`
|
|
||||||
|
|
||||||
True if the determinant ``det`` is in the wave function
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -32,20 +32,6 @@ Subroutines / functions
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:function:: qp_ao_ints
|
|
||||||
|
|
||||||
.. code:: text
|
|
||||||
|
|
||||||
subroutine qp_ao_ints
|
|
||||||
|
|
||||||
File: :file:`slave_eri.irp.f`
|
|
||||||
|
|
||||||
Slave for electron repulsion integrals
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. c:function:: run_wf
|
.. c:function:: run_wf
|
||||||
|
|
||||||
.. code:: text
|
.. code:: text
|
||||||
|
@ -8,8 +8,10 @@ Index of Providers
|
|||||||
* :c:data:`ao_bi_elec_integral_alpha`
|
* :c:data:`ao_bi_elec_integral_alpha`
|
||||||
* :c:data:`ao_bi_elec_integral_beta`
|
* :c:data:`ao_bi_elec_integral_beta`
|
||||||
* :c:data:`ao_bielec_integral_erf_schwartz`
|
* :c:data:`ao_bielec_integral_erf_schwartz`
|
||||||
|
* :c:data:`ao_bielec_integral_ijkl_r3_schwartz`
|
||||||
* :c:data:`ao_bielec_integral_schwartz`
|
* :c:data:`ao_bielec_integral_schwartz`
|
||||||
* :c:data:`ao_bielec_integrals_erf_in_map`
|
* :c:data:`ao_bielec_integrals_erf_in_map`
|
||||||
|
* :c:data:`ao_bielec_integrals_ijkl_r3_in_map`
|
||||||
* :c:data:`ao_bielec_integrals_in_map`
|
* :c:data:`ao_bielec_integrals_in_map`
|
||||||
* :c:data:`ao_cart_to_sphe_coef`
|
* :c:data:`ao_cart_to_sphe_coef`
|
||||||
* :c:data:`ao_cart_to_sphe_inv`
|
* :c:data:`ao_cart_to_sphe_inv`
|
||||||
@ -43,6 +45,10 @@ Index of Providers
|
|||||||
* :c:data:`ao_integrals_erf_cache_max`
|
* :c:data:`ao_integrals_erf_cache_max`
|
||||||
* :c:data:`ao_integrals_erf_cache_min`
|
* :c:data:`ao_integrals_erf_cache_min`
|
||||||
* :c:data:`ao_integrals_erf_map`
|
* :c:data:`ao_integrals_erf_map`
|
||||||
|
* :c:data:`ao_integrals_ijkl_r3_cache`
|
||||||
|
* :c:data:`ao_integrals_ijkl_r3_cache_max`
|
||||||
|
* :c:data:`ao_integrals_ijkl_r3_cache_min`
|
||||||
|
* :c:data:`ao_integrals_ijkl_r3_map`
|
||||||
* :c:data:`ao_integrals_map`
|
* :c:data:`ao_integrals_map`
|
||||||
* :c:data:`ao_integrals_threshold`
|
* :c:data:`ao_integrals_threshold`
|
||||||
* :c:data:`ao_kinetic_integral`
|
* :c:data:`ao_kinetic_integral`
|
||||||
@ -112,11 +118,17 @@ Index of Providers
|
|||||||
* :c:data:`aos_vx_alpha_pbe_w`
|
* :c:data:`aos_vx_alpha_pbe_w`
|
||||||
* :c:data:`aos_vx_beta_lda_w`
|
* :c:data:`aos_vx_beta_lda_w`
|
||||||
* :c:data:`aos_vx_beta_pbe_w`
|
* :c:data:`aos_vx_beta_pbe_w`
|
||||||
* :c:data:`apply_exc_to_psi`
|
* :c:data:`approx_svd_two_dm`
|
||||||
|
* :c:data:`approx_svd_two_dm_correl`
|
||||||
|
* :c:data:`approx_two_dm_map`
|
||||||
|
* :c:data:`approx_two_dm_map_rev`
|
||||||
* :c:data:`barycentric_electronic_energy`
|
* :c:data:`barycentric_electronic_energy`
|
||||||
* :c:data:`bi_elec_ref_bitmask_energy`
|
* :c:data:`bi_elec_ref_bitmask_energy`
|
||||||
|
* :c:data:`bi_elec_ref_bitmask_energy_erf`
|
||||||
* :c:data:`big_array_coulomb_integrals`
|
* :c:data:`big_array_coulomb_integrals`
|
||||||
|
* :c:data:`big_array_coulomb_integrals_ijkl_r3`
|
||||||
* :c:data:`big_array_exchange_integrals`
|
* :c:data:`big_array_exchange_integrals`
|
||||||
|
* :c:data:`big_array_exchange_integrals_ijkl_r3`
|
||||||
* :c:data:`binom`
|
* :c:data:`binom`
|
||||||
* :c:data:`binom_int`
|
* :c:data:`binom_int`
|
||||||
* :c:data:`binom_int_transp`
|
* :c:data:`binom_int_transp`
|
||||||
@ -134,12 +146,8 @@ Index of Providers
|
|||||||
* :c:data:`cart_to_sphe_9`
|
* :c:data:`cart_to_sphe_9`
|
||||||
* :c:data:`cas_bitmask`
|
* :c:data:`cas_bitmask`
|
||||||
* :c:data:`center_of_mass`
|
* :c:data:`center_of_mass`
|
||||||
* :c:data:`ci_dressed_pt2_new_eigenvectors`
|
|
||||||
* :c:data:`ci_dressed_pt2_new_eigenvectors_s2`
|
|
||||||
* :c:data:`ci_dressed_pt2_new_energy`
|
|
||||||
* :c:data:`ci_eigenvectors`
|
* :c:data:`ci_eigenvectors`
|
||||||
* :c:data:`ci_eigenvectors_s2`
|
* :c:data:`ci_eigenvectors_s2`
|
||||||
* :c:data:`ci_electronic_dressed_pt2_new_energy`
|
|
||||||
* :c:data:`ci_electronic_energy`
|
* :c:data:`ci_electronic_energy`
|
||||||
* :c:data:`ci_energy`
|
* :c:data:`ci_energy`
|
||||||
* :c:data:`closed_shell_ref_bitmask`
|
* :c:data:`closed_shell_ref_bitmask`
|
||||||
@ -151,7 +159,6 @@ Index of Providers
|
|||||||
* :c:data:`core_fock_operator_erf`
|
* :c:data:`core_fock_operator_erf`
|
||||||
* :c:data:`core_inact_act_bitmask_4`
|
* :c:data:`core_inact_act_bitmask_4`
|
||||||
* :c:data:`core_inact_virt_bitmask`
|
* :c:data:`core_inact_virt_bitmask`
|
||||||
* :c:data:`corr_e_from_1h1p`
|
|
||||||
* :c:data:`correlation_energy_ratio_max`
|
* :c:data:`correlation_energy_ratio_max`
|
||||||
* :c:data:`correlation_functional`
|
* :c:data:`correlation_functional`
|
||||||
* :c:data:`damping_for_rs_dft`
|
* :c:data:`damping_for_rs_dft`
|
||||||
@ -164,7 +171,6 @@ Index of Providers
|
|||||||
* :c:data:`degree_max_generators`
|
* :c:data:`degree_max_generators`
|
||||||
* :c:data:`degree_max_integration_lebedev`
|
* :c:data:`degree_max_integration_lebedev`
|
||||||
* :c:data:`delta_e_per_selector`
|
* :c:data:`delta_e_per_selector`
|
||||||
* :c:data:`delta_ij_mrpt`
|
|
||||||
* :c:data:`density_for_dft`
|
* :c:data:`density_for_dft`
|
||||||
* :c:data:`det_alpha_norm`
|
* :c:data:`det_alpha_norm`
|
||||||
* :c:data:`det_beta_norm`
|
* :c:data:`det_beta_norm`
|
||||||
@ -172,9 +178,11 @@ Index of Providers
|
|||||||
* :c:data:`dft_type`
|
* :c:data:`dft_type`
|
||||||
* :c:data:`diag_algorithm`
|
* :c:data:`diag_algorithm`
|
||||||
* :c:data:`diagonal_h_matrix_on_psi_det`
|
* :c:data:`diagonal_h_matrix_on_psi_det`
|
||||||
|
* :c:data:`disk_access_ao_ijkl_r3`
|
||||||
* :c:data:`disk_access_ao_integrals`
|
* :c:data:`disk_access_ao_integrals`
|
||||||
* :c:data:`disk_access_ao_integrals_erf`
|
* :c:data:`disk_access_ao_integrals_erf`
|
||||||
* :c:data:`disk_access_ao_one_integrals`
|
* :c:data:`disk_access_ao_one_integrals`
|
||||||
|
* :c:data:`disk_access_mo_ijkl_r3`
|
||||||
* :c:data:`disk_access_mo_integrals`
|
* :c:data:`disk_access_mo_integrals`
|
||||||
* :c:data:`disk_access_mo_integrals_erf`
|
* :c:data:`disk_access_mo_integrals_erf`
|
||||||
* :c:data:`disk_access_mo_one_integrals`
|
* :c:data:`disk_access_mo_one_integrals`
|
||||||
@ -184,7 +192,6 @@ Index of Providers
|
|||||||
* :c:data:`do_direct_integrals`
|
* :c:data:`do_direct_integrals`
|
||||||
* :c:data:`do_pseudo`
|
* :c:data:`do_pseudo`
|
||||||
* :c:data:`do_pt2`
|
* :c:data:`do_pt2`
|
||||||
* :c:data:`do_third_order_1h1p`
|
|
||||||
* :c:data:`double_exc_bitmask`
|
* :c:data:`double_exc_bitmask`
|
||||||
* :c:data:`double_index_selectors`
|
* :c:data:`double_index_selectors`
|
||||||
* :c:data:`dr_radial_integral`
|
* :c:data:`dr_radial_integral`
|
||||||
@ -206,13 +213,16 @@ Index of Providers
|
|||||||
* :c:data:`elec_beta_num`
|
* :c:data:`elec_beta_num`
|
||||||
* :c:data:`elec_num`
|
* :c:data:`elec_num`
|
||||||
* :c:data:`elec_num_tab`
|
* :c:data:`elec_num_tab`
|
||||||
|
* :c:data:`electronic_energy_mr_dft`
|
||||||
* :c:data:`element_mass`
|
* :c:data:`element_mass`
|
||||||
* :c:data:`element_name`
|
* :c:data:`element_name`
|
||||||
* :c:data:`energy_c`
|
* :c:data:`energy_c`
|
||||||
* :c:data:`energy_c_lda`
|
* :c:data:`energy_c_lda`
|
||||||
|
* :c:data:`energy_c_md_lda`
|
||||||
|
* :c:data:`energy_c_md_on_top`
|
||||||
|
* :c:data:`energy_c_md_on_top_pbe_mu_ueg_vector`
|
||||||
|
* :c:data:`energy_c_md_on_top_pbe_mu_vector`
|
||||||
* :c:data:`energy_c_pbe`
|
* :c:data:`energy_c_pbe`
|
||||||
* :c:data:`energy_cas_dyall`
|
|
||||||
* :c:data:`energy_cas_dyall_no_exchange`
|
|
||||||
* :c:data:`energy_iterations`
|
* :c:data:`energy_iterations`
|
||||||
* :c:data:`energy_sr_c_lda`
|
* :c:data:`energy_sr_c_lda`
|
||||||
* :c:data:`energy_sr_c_pbe`
|
* :c:data:`energy_sr_c_pbe`
|
||||||
@ -232,12 +242,8 @@ Index of Providers
|
|||||||
* :c:data:`fact_inv`
|
* :c:data:`fact_inv`
|
||||||
* :c:data:`fill_h_apply_buffer_selection`
|
* :c:data:`fill_h_apply_buffer_selection`
|
||||||
* :c:data:`final_grid_points`
|
* :c:data:`final_grid_points`
|
||||||
* :c:data:`final_weight_functions_at_final_grid_points`
|
* :c:data:`final_weight_at_r`
|
||||||
* :c:data:`final_weight_functions_at_grid_points`
|
* :c:data:`final_weight_at_r_vector`
|
||||||
* :c:data:`fock_core_inactive`
|
|
||||||
* :c:data:`fock_core_inactive_from_act`
|
|
||||||
* :c:data:`fock_core_inactive_total`
|
|
||||||
* :c:data:`fock_core_inactive_total_spin_trace`
|
|
||||||
* :c:data:`fock_matrix_alpha_no_xc_ao`
|
* :c:data:`fock_matrix_alpha_no_xc_ao`
|
||||||
* :c:data:`fock_matrix_ao`
|
* :c:data:`fock_matrix_ao`
|
||||||
* :c:data:`fock_matrix_ao_alpha`
|
* :c:data:`fock_matrix_ao_alpha`
|
||||||
@ -248,12 +254,7 @@ Index of Providers
|
|||||||
* :c:data:`fock_matrix_mo`
|
* :c:data:`fock_matrix_mo`
|
||||||
* :c:data:`fock_matrix_mo_alpha`
|
* :c:data:`fock_matrix_mo_alpha`
|
||||||
* :c:data:`fock_matrix_mo_beta`
|
* :c:data:`fock_matrix_mo_beta`
|
||||||
* :c:data:`fock_operator_active_from_core_inact`
|
|
||||||
* :c:data:`fock_operator_closed_shell_ref_bitmask`
|
* :c:data:`fock_operator_closed_shell_ref_bitmask`
|
||||||
* :c:data:`fock_virt_from_act`
|
|
||||||
* :c:data:`fock_virt_from_core_inact`
|
|
||||||
* :c:data:`fock_virt_total`
|
|
||||||
* :c:data:`fock_virt_total_spin_trace`
|
|
||||||
* :c:data:`fock_wee_closed_shell`
|
* :c:data:`fock_wee_closed_shell`
|
||||||
* :c:data:`fps_spf_matrix_ao`
|
* :c:data:`fps_spf_matrix_ao`
|
||||||
* :c:data:`fps_spf_matrix_mo`
|
* :c:data:`fps_spf_matrix_mo`
|
||||||
@ -261,17 +262,12 @@ Index of Providers
|
|||||||
* :c:data:`full_ijkl_bitmask_4`
|
* :c:data:`full_ijkl_bitmask_4`
|
||||||
* :c:data:`gauleg_t2`
|
* :c:data:`gauleg_t2`
|
||||||
* :c:data:`gauleg_w`
|
* :c:data:`gauleg_w`
|
||||||
* :c:data:`gen_det_ref_idx`
|
|
||||||
* :c:data:`gen_det_ref_shortcut`
|
|
||||||
* :c:data:`gen_det_ref_sorted`
|
|
||||||
* :c:data:`gen_det_ref_version`
|
|
||||||
* :c:data:`general_primitive_integral`
|
* :c:data:`general_primitive_integral`
|
||||||
* :c:data:`general_primitive_integral_erf`
|
* :c:data:`general_primitive_integral_erf`
|
||||||
* :c:data:`generators_bitmask`
|
* :c:data:`generators_bitmask`
|
||||||
* :c:data:`generators_bitmask_restart`
|
* :c:data:`generators_bitmask_restart`
|
||||||
* :c:data:`gga_sr_type_functionals`
|
* :c:data:`gga_sr_type_functionals`
|
||||||
* :c:data:`gga_type_functionals`
|
* :c:data:`gga_type_functionals`
|
||||||
* :c:data:`give_holes_and_particles_in_active_space`
|
|
||||||
* :c:data:`grad_aos_dsr_vc_alpha_pbe_w`
|
* :c:data:`grad_aos_dsr_vc_alpha_pbe_w`
|
||||||
* :c:data:`grad_aos_dsr_vc_beta_pbe_w`
|
* :c:data:`grad_aos_dsr_vc_beta_pbe_w`
|
||||||
* :c:data:`grad_aos_dsr_vx_alpha_pbe_w`
|
* :c:data:`grad_aos_dsr_vx_alpha_pbe_w`
|
||||||
@ -287,15 +283,11 @@ Index of Providers
|
|||||||
* :c:data:`h_apply_buffer_lock`
|
* :c:data:`h_apply_buffer_lock`
|
||||||
* :c:data:`h_matrix_all_dets`
|
* :c:data:`h_matrix_all_dets`
|
||||||
* :c:data:`h_matrix_cas`
|
* :c:data:`h_matrix_cas`
|
||||||
* :c:data:`h_matrix_ref`
|
|
||||||
* :c:data:`hf_bitmask`
|
* :c:data:`hf_bitmask`
|
||||||
* :c:data:`hf_energy`
|
* :c:data:`hf_energy`
|
||||||
* :c:data:`hf_exchange`
|
* :c:data:`hf_exchange`
|
||||||
* :c:data:`hf_one_electron_energy`
|
* :c:data:`hf_one_electron_energy`
|
||||||
* :c:data:`hf_two_electron_energy`
|
* :c:data:`hf_two_electron_energy`
|
||||||
* :c:data:`hmatrix_dressed_pt2_new`
|
|
||||||
* :c:data:`hmatrix_dressed_pt2_new_symmetrized`
|
|
||||||
* :c:data:`holes_operators`
|
|
||||||
* :c:data:`i2radix_sort`
|
* :c:data:`i2radix_sort`
|
||||||
* :c:data:`i8radix_sort`
|
* :c:data:`i8radix_sort`
|
||||||
* :c:data:`i8radix_sort_big`
|
* :c:data:`i8radix_sort_big`
|
||||||
@ -311,10 +303,6 @@ Index of Providers
|
|||||||
* :c:data:`i_x2_pol_mult_mono_elec`
|
* :c:data:`i_x2_pol_mult_mono_elec`
|
||||||
* :c:data:`idx_cas`
|
* :c:data:`idx_cas`
|
||||||
* :c:data:`idx_non_cas`
|
* :c:data:`idx_non_cas`
|
||||||
* :c:data:`idx_non_ref`
|
|
||||||
* :c:data:`idx_non_ref_from_sorted`
|
|
||||||
* :c:data:`idx_non_ref_rev`
|
|
||||||
* :c:data:`idx_ref`
|
|
||||||
* :c:data:`inact_bitmask`
|
* :c:data:`inact_bitmask`
|
||||||
* :c:data:`inact_virt_bitmask`
|
* :c:data:`inact_virt_bitmask`
|
||||||
* :c:data:`index_final_points`
|
* :c:data:`index_final_points`
|
||||||
@ -326,13 +314,14 @@ Index of Providers
|
|||||||
* :c:data:`inertia_tensor_eigenvectors`
|
* :c:data:`inertia_tensor_eigenvectors`
|
||||||
* :c:data:`initialize_pt2_e0_denominator`
|
* :c:data:`initialize_pt2_e0_denominator`
|
||||||
* :c:data:`insert_into_mo_integrals_erf_map`
|
* :c:data:`insert_into_mo_integrals_erf_map`
|
||||||
|
* :c:data:`insert_into_mo_integrals_ijkl_r3_map`
|
||||||
* :c:data:`insert_into_mo_integrals_map`
|
* :c:data:`insert_into_mo_integrals_map`
|
||||||
* :c:data:`int_erf_3_index`
|
* :c:data:`int_erf_3_index`
|
||||||
* :c:data:`int_erf_3_index_exc`
|
* :c:data:`int_erf_3_index_exc`
|
||||||
* :c:data:`integral_density_alpha_knowles_becke_per_atom`
|
* :c:data:`int_on_top_of_r_approx_svd`
|
||||||
* :c:data:`integral_density_beta_knowles_becke_per_atom`
|
* :c:data:`int_on_top_of_r_approx_svd_correl`
|
||||||
|
* :c:data:`integral_on_top`
|
||||||
* :c:data:`inv_int`
|
* :c:data:`inv_int`
|
||||||
* :c:data:`inv_norm_psi_ref`
|
|
||||||
* :c:data:`inv_selectors_coef_hf`
|
* :c:data:`inv_selectors_coef_hf`
|
||||||
* :c:data:`inv_selectors_coef_hf_squared`
|
* :c:data:`inv_selectors_coef_hf_squared`
|
||||||
* :c:data:`iradix_sort`
|
* :c:data:`iradix_sort`
|
||||||
@ -341,6 +330,10 @@ Index of Providers
|
|||||||
* :c:data:`ks_energy`
|
* :c:data:`ks_energy`
|
||||||
* :c:data:`l3_weight`
|
* :c:data:`l3_weight`
|
||||||
* :c:data:`l_to_charater`
|
* :c:data:`l_to_charater`
|
||||||
|
* :c:data:`l_vec_approx_svd_two_dm`
|
||||||
|
* :c:data:`l_vec_approx_svd_two_dm_at_r`
|
||||||
|
* :c:data:`l_vec_approx_svd_two_dm_at_r_correl`
|
||||||
|
* :c:data:`l_vec_approx_svd_two_dm_correl`
|
||||||
* :c:data:`level_shift`
|
* :c:data:`level_shift`
|
||||||
* :c:data:`list_act`
|
* :c:data:`list_act`
|
||||||
* :c:data:`list_act_reverse`
|
* :c:data:`list_act_reverse`
|
||||||
@ -358,6 +351,12 @@ Index of Providers
|
|||||||
* :c:data:`max_degree_exc`
|
* :c:data:`max_degree_exc`
|
||||||
* :c:data:`max_dim_diis`
|
* :c:data:`max_dim_diis`
|
||||||
* :c:data:`max_exc_pert`
|
* :c:data:`max_exc_pert`
|
||||||
|
* :c:data:`mo_bielec_integral_ijkl_r3_jj`
|
||||||
|
* :c:data:`mo_bielec_integral_ijkl_r3_jj_anti`
|
||||||
|
* :c:data:`mo_bielec_integral_ijkl_r3_jj_anti_from_ao`
|
||||||
|
* :c:data:`mo_bielec_integral_ijkl_r3_jj_exchange`
|
||||||
|
* :c:data:`mo_bielec_integral_ijkl_r3_jj_exchange_from_ao`
|
||||||
|
* :c:data:`mo_bielec_integral_ijkl_r3_jj_from_ao`
|
||||||
* :c:data:`mo_bielec_integral_jj`
|
* :c:data:`mo_bielec_integral_jj`
|
||||||
* :c:data:`mo_bielec_integral_jj_anti`
|
* :c:data:`mo_bielec_integral_jj_anti`
|
||||||
* :c:data:`mo_bielec_integral_jj_anti_from_ao`
|
* :c:data:`mo_bielec_integral_jj_anti_from_ao`
|
||||||
@ -368,6 +367,7 @@ Index of Providers
|
|||||||
* :c:data:`mo_bielec_integral_vv_exchange_from_ao`
|
* :c:data:`mo_bielec_integral_vv_exchange_from_ao`
|
||||||
* :c:data:`mo_bielec_integral_vv_from_ao`
|
* :c:data:`mo_bielec_integral_vv_from_ao`
|
||||||
* :c:data:`mo_bielec_integrals_erf_in_map`
|
* :c:data:`mo_bielec_integrals_erf_in_map`
|
||||||
|
* :c:data:`mo_bielec_integrals_ijkl_r3_in_map`
|
||||||
* :c:data:`mo_bielec_integrals_in_map`
|
* :c:data:`mo_bielec_integrals_in_map`
|
||||||
* :c:data:`mo_class`
|
* :c:data:`mo_class`
|
||||||
* :c:data:`mo_coef`
|
* :c:data:`mo_coef`
|
||||||
@ -388,6 +388,10 @@ Index of Providers
|
|||||||
* :c:data:`mo_integrals_erf_cache_max`
|
* :c:data:`mo_integrals_erf_cache_max`
|
||||||
* :c:data:`mo_integrals_erf_cache_min`
|
* :c:data:`mo_integrals_erf_cache_min`
|
||||||
* :c:data:`mo_integrals_erf_map`
|
* :c:data:`mo_integrals_erf_map`
|
||||||
|
* :c:data:`mo_integrals_ijkl_r3_cache`
|
||||||
|
* :c:data:`mo_integrals_ijkl_r3_cache_max`
|
||||||
|
* :c:data:`mo_integrals_ijkl_r3_cache_min`
|
||||||
|
* :c:data:`mo_integrals_ijkl_r3_map`
|
||||||
* :c:data:`mo_integrals_map`
|
* :c:data:`mo_integrals_map`
|
||||||
* :c:data:`mo_integrals_threshold`
|
* :c:data:`mo_integrals_threshold`
|
||||||
* :c:data:`mo_kinetic_integral`
|
* :c:data:`mo_kinetic_integral`
|
||||||
@ -423,6 +427,8 @@ Index of Providers
|
|||||||
* :c:data:`mu_erf_dft`
|
* :c:data:`mu_erf_dft`
|
||||||
* :c:data:`n_act_orb`
|
* :c:data:`n_act_orb`
|
||||||
* :c:data:`n_aos_max`
|
* :c:data:`n_aos_max`
|
||||||
|
* :c:data:`n_approx_svd_two_dm`
|
||||||
|
* :c:data:`n_approx_svd_two_dm_correl`
|
||||||
* :c:data:`n_cas_bitmask`
|
* :c:data:`n_cas_bitmask`
|
||||||
* :c:data:`n_core_inact_act_orb`
|
* :c:data:`n_core_inact_act_orb`
|
||||||
* :c:data:`n_core_inact_orb`
|
* :c:data:`n_core_inact_orb`
|
||||||
@ -437,8 +443,6 @@ Index of Providers
|
|||||||
* :c:data:`n_det_max`
|
* :c:data:`n_det_max`
|
||||||
* :c:data:`n_det_max_full`
|
* :c:data:`n_det_max_full`
|
||||||
* :c:data:`n_det_non_cas`
|
* :c:data:`n_det_non_cas`
|
||||||
* :c:data:`n_det_non_ref`
|
|
||||||
* :c:data:`n_det_ref`
|
|
||||||
* :c:data:`n_det_selectors`
|
* :c:data:`n_det_selectors`
|
||||||
* :c:data:`n_double_exc_bitmasks`
|
* :c:data:`n_double_exc_bitmasks`
|
||||||
* :c:data:`n_double_selectors`
|
* :c:data:`n_double_selectors`
|
||||||
@ -449,6 +453,8 @@ Index of Providers
|
|||||||
* :c:data:`n_int`
|
* :c:data:`n_int`
|
||||||
* :c:data:`n_it_scf_max`
|
* :c:data:`n_it_scf_max`
|
||||||
* :c:data:`n_iter`
|
* :c:data:`n_iter`
|
||||||
|
* :c:data:`n_max_approx_svd_two_dm`
|
||||||
|
* :c:data:`n_max_approx_svd_two_dm_correl`
|
||||||
* :c:data:`n_occ_pattern`
|
* :c:data:`n_occ_pattern`
|
||||||
* :c:data:`n_points_final_grid`
|
* :c:data:`n_points_final_grid`
|
||||||
* :c:data:`n_points_grid_per_atom`
|
* :c:data:`n_points_grid_per_atom`
|
||||||
@ -466,7 +472,6 @@ Index of Providers
|
|||||||
* :c:data:`no_oa_or_av_opt`
|
* :c:data:`no_oa_or_av_opt`
|
||||||
* :c:data:`no_vvv_integrals`
|
* :c:data:`no_vvv_integrals`
|
||||||
* :c:data:`no_vvvv_integrals`
|
* :c:data:`no_vvvv_integrals`
|
||||||
* :c:data:`norm_psi_ref`
|
|
||||||
* :c:data:`nproc`
|
* :c:data:`nproc`
|
||||||
* :c:data:`nthreads_davidson`
|
* :c:data:`nthreads_davidson`
|
||||||
* :c:data:`nucl_aos`
|
* :c:data:`nucl_aos`
|
||||||
@ -488,31 +493,24 @@ Index of Providers
|
|||||||
* :c:data:`nucl_num`
|
* :c:data:`nucl_num`
|
||||||
* :c:data:`nucl_num_shell_aos`
|
* :c:data:`nucl_num_shell_aos`
|
||||||
* :c:data:`nuclear_repulsion`
|
* :c:data:`nuclear_repulsion`
|
||||||
* :c:data:`one_anhil`
|
* :c:data:`on_top_of_r`
|
||||||
* :c:data:`one_anhil_inact`
|
* :c:data:`on_top_of_r_approx_svd`
|
||||||
* :c:data:`one_anhil_one_creat`
|
* :c:data:`on_top_of_r_approx_svd_correl`
|
||||||
* :c:data:`one_anhil_one_creat_inact_virt`
|
* :c:data:`on_top_of_r_exact`
|
||||||
* :c:data:`one_anhil_one_creat_inact_virt_bis`
|
* :c:data:`on_top_of_r_vector`
|
||||||
* :c:data:`one_anhil_one_creat_inact_virt_norm`
|
|
||||||
* :c:data:`one_body_dm_alpha_and_grad_at_r`
|
|
||||||
* :c:data:`one_body_dm_alpha_ao_for_dft`
|
* :c:data:`one_body_dm_alpha_ao_for_dft`
|
||||||
* :c:data:`one_body_dm_alpha_at_r`
|
* :c:data:`one_body_dm_alpha_at_r`
|
||||||
* :c:data:`one_body_dm_ao_alpha`
|
* :c:data:`one_body_dm_ao_alpha`
|
||||||
* :c:data:`one_body_dm_ao_beta`
|
* :c:data:`one_body_dm_ao_beta`
|
||||||
* :c:data:`one_body_dm_average_mo_for_dft`
|
* :c:data:`one_body_dm_average_mo_for_dft`
|
||||||
* :c:data:`one_body_dm_beta_and_grad_at_r`
|
|
||||||
* :c:data:`one_body_dm_beta_ao_for_dft`
|
* :c:data:`one_body_dm_beta_ao_for_dft`
|
||||||
* :c:data:`one_body_dm_beta_at_r`
|
* :c:data:`one_body_dm_beta_at_r`
|
||||||
* :c:data:`one_body_dm_dagger_mo_spin_index`
|
* :c:data:`one_body_dm_dagger_mo_spin_index`
|
||||||
* :c:data:`one_body_dm_mo`
|
* :c:data:`one_body_dm_mo`
|
||||||
* :c:data:`one_body_dm_mo_alpha`
|
* :c:data:`one_body_dm_mo_alpha`
|
||||||
* :c:data:`one_body_dm_mo_alpha_and_grad_at_grid_points`
|
|
||||||
* :c:data:`one_body_dm_mo_alpha_at_grid_points`
|
|
||||||
* :c:data:`one_body_dm_mo_alpha_average`
|
* :c:data:`one_body_dm_mo_alpha_average`
|
||||||
* :c:data:`one_body_dm_mo_alpha_for_dft`
|
* :c:data:`one_body_dm_mo_alpha_for_dft`
|
||||||
* :c:data:`one_body_dm_mo_beta`
|
* :c:data:`one_body_dm_mo_beta`
|
||||||
* :c:data:`one_body_dm_mo_beta_and_grad_at_grid_points`
|
|
||||||
* :c:data:`one_body_dm_mo_beta_at_grid_points`
|
|
||||||
* :c:data:`one_body_dm_mo_beta_average`
|
* :c:data:`one_body_dm_mo_beta_average`
|
||||||
* :c:data:`one_body_dm_mo_beta_for_dft`
|
* :c:data:`one_body_dm_mo_beta_for_dft`
|
||||||
* :c:data:`one_body_dm_mo_diff`
|
* :c:data:`one_body_dm_mo_diff`
|
||||||
@ -524,14 +522,16 @@ Index of Providers
|
|||||||
* :c:data:`one_body_single_double_dm_mo_beta`
|
* :c:data:`one_body_single_double_dm_mo_beta`
|
||||||
* :c:data:`one_body_spin_density_ao`
|
* :c:data:`one_body_spin_density_ao`
|
||||||
* :c:data:`one_body_spin_density_mo`
|
* :c:data:`one_body_spin_density_mo`
|
||||||
* :c:data:`one_creat`
|
* :c:data:`one_dm_alpha_in_r`
|
||||||
* :c:data:`one_creat_virt`
|
* :c:data:`one_dm_and_grad_alpha_in_r`
|
||||||
|
* :c:data:`one_dm_and_grad_beta_in_r`
|
||||||
|
* :c:data:`one_dm_beta_in_r`
|
||||||
* :c:data:`one_electron_energy`
|
* :c:data:`one_electron_energy`
|
||||||
* :c:data:`only_expected_s2`
|
* :c:data:`only_expected_s2`
|
||||||
|
* :c:data:`ontop_approx`
|
||||||
* :c:data:`output_cpu_time_0`
|
* :c:data:`output_cpu_time_0`
|
||||||
* :c:data:`output_wall_time_0`
|
* :c:data:`output_wall_time_0`
|
||||||
* :c:data:`overlap_gaussian_xyz`
|
* :c:data:`overlap_gaussian_xyz`
|
||||||
* :c:data:`particles_operators`
|
|
||||||
* :c:data:`phi_angular_integration_lebedev`
|
* :c:data:`phi_angular_integration_lebedev`
|
||||||
* :c:data:`potential_c_alpha_ao`
|
* :c:data:`potential_c_alpha_ao`
|
||||||
* :c:data:`potential_c_alpha_ao_lda`
|
* :c:data:`potential_c_alpha_ao_lda`
|
||||||
@ -574,7 +574,6 @@ Index of Providers
|
|||||||
* :c:data:`pseudo_v_k_transp`
|
* :c:data:`pseudo_v_k_transp`
|
||||||
* :c:data:`pseudo_v_kl`
|
* :c:data:`pseudo_v_kl`
|
||||||
* :c:data:`pseudo_v_kl_transp`
|
* :c:data:`pseudo_v_kl_transp`
|
||||||
* :c:data:`psi_active`
|
|
||||||
* :c:data:`psi_average_norm_contrib`
|
* :c:data:`psi_average_norm_contrib`
|
||||||
* :c:data:`psi_average_norm_contrib_sorted`
|
* :c:data:`psi_average_norm_contrib_sorted`
|
||||||
* :c:data:`psi_bilinear_matrix`
|
* :c:data:`psi_bilinear_matrix`
|
||||||
@ -622,36 +621,16 @@ Index of Providers
|
|||||||
* :c:data:`psi_dft_energy_nuclear_elec`
|
* :c:data:`psi_dft_energy_nuclear_elec`
|
||||||
* :c:data:`psi_energy`
|
* :c:data:`psi_energy`
|
||||||
* :c:data:`psi_energy_bielec`
|
* :c:data:`psi_energy_bielec`
|
||||||
|
* :c:data:`psi_energy_erf`
|
||||||
* :c:data:`psi_energy_h_core`
|
* :c:data:`psi_energy_h_core`
|
||||||
|
* :c:data:`psi_energy_h_core_and_sr_hartree`
|
||||||
* :c:data:`psi_energy_with_nucl_rep`
|
* :c:data:`psi_energy_with_nucl_rep`
|
||||||
* :c:data:`psi_non_cas`
|
* :c:data:`psi_non_cas`
|
||||||
* :c:data:`psi_non_cas_coef`
|
* :c:data:`psi_non_cas_coef`
|
||||||
* :c:data:`psi_non_cas_coef_sorted_bit`
|
* :c:data:`psi_non_cas_coef_sorted_bit`
|
||||||
* :c:data:`psi_non_cas_sorted_bit`
|
* :c:data:`psi_non_cas_sorted_bit`
|
||||||
* :c:data:`psi_non_ref`
|
|
||||||
* :c:data:`psi_non_ref_coef`
|
|
||||||
* :c:data:`psi_non_ref_coef_interm_norm`
|
|
||||||
* :c:data:`psi_non_ref_coef_restart`
|
|
||||||
* :c:data:`psi_non_ref_coef_sorted_bit`
|
|
||||||
* :c:data:`psi_non_ref_coef_transp`
|
|
||||||
* :c:data:`psi_non_ref_restart`
|
|
||||||
* :c:data:`psi_non_ref_sorted_bit`
|
|
||||||
* :c:data:`psi_occ_pattern`
|
* :c:data:`psi_occ_pattern`
|
||||||
* :c:data:`psi_occ_pattern_hii`
|
* :c:data:`psi_occ_pattern_hii`
|
||||||
* :c:data:`psi_ref`
|
|
||||||
* :c:data:`psi_ref_bis_lock`
|
|
||||||
* :c:data:`psi_ref_coef`
|
|
||||||
* :c:data:`psi_ref_coef_diagonalized`
|
|
||||||
* :c:data:`psi_ref_coef_interm_norm`
|
|
||||||
* :c:data:`psi_ref_coef_inv`
|
|
||||||
* :c:data:`psi_ref_coef_normalized`
|
|
||||||
* :c:data:`psi_ref_coef_restart`
|
|
||||||
* :c:data:`psi_ref_coef_sorted_bit`
|
|
||||||
* :c:data:`psi_ref_coef_transp`
|
|
||||||
* :c:data:`psi_ref_energy`
|
|
||||||
* :c:data:`psi_ref_energy_diagonalized`
|
|
||||||
* :c:data:`psi_ref_restart`
|
|
||||||
* :c:data:`psi_ref_sorted_bit`
|
|
||||||
* :c:data:`psi_selectors`
|
* :c:data:`psi_selectors`
|
||||||
* :c:data:`psi_selectors_coef`
|
* :c:data:`psi_selectors_coef`
|
||||||
* :c:data:`psi_selectors_coef_transp`
|
* :c:data:`psi_selectors_coef_transp`
|
||||||
@ -677,11 +656,17 @@ Index of Providers
|
|||||||
* :c:data:`pt2_w_t`
|
* :c:data:`pt2_w_t`
|
||||||
* :c:data:`qp_max_mem`
|
* :c:data:`qp_max_mem`
|
||||||
* :c:data:`qp_run_address`
|
* :c:data:`qp_run_address`
|
||||||
|
* :c:data:`r_vec_approx_svd_two_dm`
|
||||||
|
* :c:data:`r_vec_approx_svd_two_dm_at_r`
|
||||||
|
* :c:data:`r_vec_approx_svd_two_dm_at_r_correl`
|
||||||
|
* :c:data:`r_vec_approx_svd_two_dm_correl`
|
||||||
* :c:data:`read_ao_integrals`
|
* :c:data:`read_ao_integrals`
|
||||||
* :c:data:`read_ao_integrals_erf`
|
* :c:data:`read_ao_integrals_erf`
|
||||||
|
* :c:data:`read_ao_integrals_ijkl_r3`
|
||||||
* :c:data:`read_ao_one_integrals`
|
* :c:data:`read_ao_one_integrals`
|
||||||
* :c:data:`read_mo_integrals`
|
* :c:data:`read_mo_integrals`
|
||||||
* :c:data:`read_mo_integrals_erf`
|
* :c:data:`read_mo_integrals_erf`
|
||||||
|
* :c:data:`read_mo_integrals_ijkl_r3`
|
||||||
* :c:data:`read_mo_one_integrals`
|
* :c:data:`read_mo_one_integrals`
|
||||||
* :c:data:`read_wf`
|
* :c:data:`read_wf`
|
||||||
* :c:data:`rec__quicksort`
|
* :c:data:`rec__quicksort`
|
||||||
@ -691,8 +676,8 @@ Index of Providers
|
|||||||
* :c:data:`rec_i_quicksort`
|
* :c:data:`rec_i_quicksort`
|
||||||
* :c:data:`ref_bitmask`
|
* :c:data:`ref_bitmask`
|
||||||
* :c:data:`ref_bitmask_energy`
|
* :c:data:`ref_bitmask_energy`
|
||||||
|
* :c:data:`ref_bitmask_energy_erf`
|
||||||
* :c:data:`ref_closed_shell_bitmask`
|
* :c:data:`ref_closed_shell_bitmask`
|
||||||
* :c:data:`ref_hamiltonian_matrix`
|
|
||||||
* :c:data:`reunion_of_bitmask`
|
* :c:data:`reunion_of_bitmask`
|
||||||
* :c:data:`reunion_of_cas_inact_bitmask`
|
* :c:data:`reunion_of_cas_inact_bitmask`
|
||||||
* :c:data:`reunion_of_core_inact_act_bitmask`
|
* :c:data:`reunion_of_core_inact_act_bitmask`
|
||||||
@ -711,15 +696,6 @@ Index of Providers
|
|||||||
* :c:data:`scf_density_matrix_ao_alpha`
|
* :c:data:`scf_density_matrix_ao_alpha`
|
||||||
* :c:data:`scf_density_matrix_ao_beta`
|
* :c:data:`scf_density_matrix_ao_beta`
|
||||||
* :c:data:`scf_energy`
|
* :c:data:`scf_energy`
|
||||||
* :c:data:`second_order_pt_new`
|
|
||||||
* :c:data:`second_order_pt_new_1h`
|
|
||||||
* :c:data:`second_order_pt_new_1h1p`
|
|
||||||
* :c:data:`second_order_pt_new_1h2p`
|
|
||||||
* :c:data:`second_order_pt_new_1p`
|
|
||||||
* :c:data:`second_order_pt_new_2h`
|
|
||||||
* :c:data:`second_order_pt_new_2h1p`
|
|
||||||
* :c:data:`second_order_pt_new_2h2p`
|
|
||||||
* :c:data:`second_order_pt_new_2p`
|
|
||||||
* :c:data:`select_max`
|
* :c:data:`select_max`
|
||||||
* :c:data:`selection_criterion`
|
* :c:data:`selection_criterion`
|
||||||
* :c:data:`selection_criterion_factor`
|
* :c:data:`selection_criterion_factor`
|
||||||
@ -743,8 +719,7 @@ Index of Providers
|
|||||||
* :c:data:`state_following`
|
* :c:data:`state_following`
|
||||||
* :c:data:`target_energy`
|
* :c:data:`target_energy`
|
||||||
* :c:data:`theta_angular_integration_lebedev`
|
* :c:data:`theta_angular_integration_lebedev`
|
||||||
* :c:data:`three_anhil`
|
* :c:data:`thr_ontop_approx`
|
||||||
* :c:data:`three_creat`
|
|
||||||
* :c:data:`thresh_scf`
|
* :c:data:`thresh_scf`
|
||||||
* :c:data:`threshold_davidson`
|
* :c:data:`threshold_davidson`
|
||||||
* :c:data:`threshold_diis`
|
* :c:data:`threshold_diis`
|
||||||
@ -756,25 +731,27 @@ Index of Providers
|
|||||||
* :c:data:`trace_v_hxc`
|
* :c:data:`trace_v_hxc`
|
||||||
* :c:data:`trace_v_xc`
|
* :c:data:`trace_v_xc`
|
||||||
* :c:data:`transpose`
|
* :c:data:`transpose`
|
||||||
* :c:data:`two_anhil`
|
* :c:data:`two_bod_alpha_beta_mo`
|
||||||
* :c:data:`two_anhil_one_creat`
|
* :c:data:`two_bod_alpha_beta_mo_physicist`
|
||||||
* :c:data:`two_creat`
|
* :c:data:`two_elec_energy_dft`
|
||||||
* :c:data:`two_creat_one_anhil`
|
|
||||||
* :c:data:`two_electron_energy`
|
* :c:data:`two_electron_energy`
|
||||||
* :c:data:`unpaired_alpha_electrons`
|
* :c:data:`unpaired_alpha_electrons`
|
||||||
* :c:data:`used_weight`
|
* :c:data:`used_weight`
|
||||||
* :c:data:`var_pt2_ratio`
|
* :c:data:`var_pt2_ratio`
|
||||||
|
* :c:data:`var_rsdft_energy`
|
||||||
* :c:data:`virt_bitmask`
|
* :c:data:`virt_bitmask`
|
||||||
* :c:data:`virt_bitmask_4`
|
* :c:data:`virt_bitmask_4`
|
||||||
* :c:data:`weight_functions_at_grid_points`
|
* :c:data:`weight_at_r`
|
||||||
* :c:data:`weight_occ_pattern`
|
* :c:data:`weight_occ_pattern`
|
||||||
* :c:data:`weights_angular_integration_lebedev`
|
* :c:data:`weights_angular_integration_lebedev`
|
||||||
* :c:data:`weights_angular_points`
|
* :c:data:`weights_angular_points`
|
||||||
* :c:data:`write_ao_integrals`
|
* :c:data:`write_ao_integrals`
|
||||||
* :c:data:`write_ao_integrals_erf`
|
* :c:data:`write_ao_integrals_erf`
|
||||||
|
* :c:data:`write_ao_integrals_ijkl_r3`
|
||||||
* :c:data:`write_ao_one_integrals`
|
* :c:data:`write_ao_one_integrals`
|
||||||
* :c:data:`write_mo_integrals`
|
* :c:data:`write_mo_integrals`
|
||||||
* :c:data:`write_mo_integrals_erf`
|
* :c:data:`write_mo_integrals_erf`
|
||||||
|
* :c:data:`write_mo_integrals_ijkl_r3`
|
||||||
* :c:data:`write_mo_one_integrals`
|
* :c:data:`write_mo_one_integrals`
|
||||||
* :c:data:`zmq_context`
|
* :c:data:`zmq_context`
|
||||||
* :c:data:`zmq_lock`
|
* :c:data:`zmq_lock`
|
||||||
@ -797,6 +774,7 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`ac_operator_bielec`
|
* :c:func:`ac_operator_bielec`
|
||||||
* :c:func:`add_integrals_to_map`
|
* :c:func:`add_integrals_to_map`
|
||||||
* :c:func:`add_integrals_to_map_erf`
|
* :c:func:`add_integrals_to_map_erf`
|
||||||
|
* :c:func:`add_integrals_to_map_ijkl_r3`
|
||||||
* :c:func:`add_integrals_to_map_no_exit_34`
|
* :c:func:`add_integrals_to_map_no_exit_34`
|
||||||
* :c:func:`add_integrals_to_map_three_indices`
|
* :c:func:`add_integrals_to_map_three_indices`
|
||||||
* :c:func:`add_poly`
|
* :c:func:`add_poly`
|
||||||
@ -805,12 +783,17 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`add_to_selection_buffer`
|
* :c:func:`add_to_selection_buffer`
|
||||||
* :c:func:`ao_bielec_integral`
|
* :c:func:`ao_bielec_integral`
|
||||||
* :c:func:`ao_bielec_integral_erf`
|
* :c:func:`ao_bielec_integral_erf`
|
||||||
|
* :c:func:`ao_bielec_integral_ijkl_r3`
|
||||||
* :c:func:`ao_bielec_integral_schwartz_accel`
|
* :c:func:`ao_bielec_integral_schwartz_accel`
|
||||||
* :c:func:`ao_bielec_integral_schwartz_accel_erf`
|
* :c:func:`ao_bielec_integral_schwartz_accel_erf`
|
||||||
* :c:func:`ao_bielec_integrals_erf_in_map_collector`
|
* :c:func:`ao_bielec_integrals_erf_in_map_collector`
|
||||||
* :c:func:`ao_bielec_integrals_erf_in_map_slave`
|
* :c:func:`ao_bielec_integrals_erf_in_map_slave`
|
||||||
* :c:func:`ao_bielec_integrals_erf_in_map_slave_inproc`
|
* :c:func:`ao_bielec_integrals_erf_in_map_slave_inproc`
|
||||||
* :c:func:`ao_bielec_integrals_erf_in_map_slave_tcp`
|
* :c:func:`ao_bielec_integrals_erf_in_map_slave_tcp`
|
||||||
|
* :c:func:`ao_bielec_integrals_ijkl_r3_in_map_collector`
|
||||||
|
* :c:func:`ao_bielec_integrals_ijkl_r3_in_map_slave`
|
||||||
|
* :c:func:`ao_bielec_integrals_ijkl_r3_in_map_slave_inproc`
|
||||||
|
* :c:func:`ao_bielec_integrals_ijkl_r3_in_map_slave_tcp`
|
||||||
* :c:func:`ao_bielec_integrals_in_map_collector`
|
* :c:func:`ao_bielec_integrals_in_map_collector`
|
||||||
* :c:func:`ao_bielec_integrals_in_map_slave`
|
* :c:func:`ao_bielec_integrals_in_map_slave`
|
||||||
* :c:func:`ao_bielec_integrals_in_map_slave_inproc`
|
* :c:func:`ao_bielec_integrals_in_map_slave_inproc`
|
||||||
@ -843,34 +826,90 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`broadcast_chunks_integer`
|
* :c:func:`broadcast_chunks_integer`
|
||||||
* :c:func:`broadcast_chunks_integer8`
|
* :c:func:`broadcast_chunks_integer8`
|
||||||
* :c:func:`build_fock_tmp`
|
* :c:func:`build_fock_tmp`
|
||||||
|
* :c:func:`c2_delta`
|
||||||
|
* :c:func:`c3t_delta`
|
||||||
|
* :c:func:`c4_delta`
|
||||||
|
* :c:func:`c5_delta`
|
||||||
|
* :c:func:`c5t_delta`
|
||||||
|
* :c:func:`capital_c4_delta`
|
||||||
* :c:func:`cell_function_becke`
|
* :c:func:`cell_function_becke`
|
||||||
* :c:func:`check_coherence_functional`
|
* :c:func:`check_coherence_functional`
|
||||||
* :c:func:`check_mem`
|
* :c:func:`check_mem`
|
||||||
* :c:func:`cis`
|
* :c:func:`cis`
|
||||||
* :c:func:`cisd`
|
* :c:func:`cisd`
|
||||||
* :c:func:`clear_ao_erf_map`
|
* :c:func:`clear_ao_erf_map`
|
||||||
|
* :c:func:`clear_ao_ijkl_r3_map`
|
||||||
* :c:func:`clear_ao_map`
|
* :c:func:`clear_ao_map`
|
||||||
* :c:func:`clear_bit_to_integer`
|
* :c:func:`clear_bit_to_integer`
|
||||||
* :c:func:`clear_mo_erf_map`
|
* :c:func:`clear_mo_erf_map`
|
||||||
|
* :c:func:`clear_mo_ijkl_r3_map`
|
||||||
* :c:func:`clear_mo_map`
|
* :c:func:`clear_mo_map`
|
||||||
* :c:func:`compute_ao_bielec_integrals`
|
* :c:func:`compute_ao_bielec_integrals`
|
||||||
* :c:func:`compute_ao_bielec_integrals_erf`
|
* :c:func:`compute_ao_bielec_integrals_erf`
|
||||||
|
* :c:func:`compute_ao_bielec_integrals_ijkl_r3`
|
||||||
* :c:func:`compute_ao_integrals_erf_jl`
|
* :c:func:`compute_ao_integrals_erf_jl`
|
||||||
|
* :c:func:`compute_ao_integrals_ijkl_r3_jl`
|
||||||
* :c:func:`compute_ao_integrals_jl`
|
* :c:func:`compute_ao_integrals_jl`
|
||||||
* :c:func:`connect_to_taskserver`
|
* :c:func:`connect_to_taskserver`
|
||||||
* :c:func:`connected_to_ref`
|
* :c:func:`connected_to_ref`
|
||||||
* :c:func:`connected_to_ref_by_mono`
|
* :c:func:`connected_to_ref_by_mono`
|
||||||
* :c:func:`contrib_1h2p_dm_based`
|
|
||||||
* :c:func:`contrib_2h1p_dm_based`
|
|
||||||
* :c:func:`copy_h_apply_buffer_to_wf`
|
* :c:func:`copy_h_apply_buffer_to_wf`
|
||||||
* :c:func:`copy_psi_bilinear_to_psi`
|
* :c:func:`copy_psi_bilinear_to_psi`
|
||||||
* :c:func:`coulomb_value_no_check`
|
* :c:func:`correction_to_on_top_from_ueg`
|
||||||
* :c:func:`create_guess`
|
* :c:func:`create_guess`
|
||||||
* :c:func:`create_microlist`
|
* :c:func:`create_microlist`
|
||||||
* :c:func:`create_minilist`
|
* :c:func:`create_minilist`
|
||||||
* :c:func:`create_minilist_find_previous`
|
* :c:func:`create_minilist_find_previous`
|
||||||
* :c:func:`create_selection_buffer`
|
* :c:func:`create_selection_buffer`
|
||||||
* :c:func:`create_wf_of_psi_bilinear_matrix`
|
* :c:func:`create_wf_of_psi_bilinear_matrix`
|
||||||
|
* :c:func:`d0delta`
|
||||||
|
* :c:func:`d2_delta`
|
||||||
|
* :c:func:`d3_delta`
|
||||||
|
* :c:func:`d_1st_deltaterm`
|
||||||
|
* :c:func:`d_2nd_deltaterm`
|
||||||
|
* :c:func:`d_3rd_deltaterm`
|
||||||
|
* :c:func:`d_4th_deltaterm`
|
||||||
|
* :c:func:`d_5th_deltaterm`
|
||||||
|
* :c:func:`d_c2_delta`
|
||||||
|
* :c:func:`d_c3t_delta`
|
||||||
|
* :c:func:`d_c4_delta`
|
||||||
|
* :c:func:`d_c5_delta`
|
||||||
|
* :c:func:`d_c5t_delta`
|
||||||
|
* :c:func:`d_capital_c4_delta`
|
||||||
|
* :c:func:`d_d0delta`
|
||||||
|
* :c:func:`d_d2_delta`
|
||||||
|
* :c:func:`d_d3_delta`
|
||||||
|
* :c:func:`d_delta_2`
|
||||||
|
* :c:func:`d_delta_3`
|
||||||
|
* :c:func:`d_delta_4`
|
||||||
|
* :c:func:`d_delta_5`
|
||||||
|
* :c:func:`d_delta_6`
|
||||||
|
* :c:func:`d_delta_barth`
|
||||||
|
* :c:func:`d_denominator_delta`
|
||||||
|
* :c:func:`d_total_deltarho_rhoa`
|
||||||
|
* :c:func:`d_total_deltarho_rhob`
|
||||||
|
* :c:func:`d_wignerseitz_radius`
|
||||||
|
* :c:func:`d_xi_1st_deltaterm`
|
||||||
|
* :c:func:`d_xi_2nd_deltaterm`
|
||||||
|
* :c:func:`d_xi_3rd_deltaterm`
|
||||||
|
* :c:func:`d_xi_4th_deltaterm`
|
||||||
|
* :c:func:`d_xi_5th_deltaterm`
|
||||||
|
* :c:func:`d_xi_c2_delta`
|
||||||
|
* :c:func:`d_xi_c3t_delta`
|
||||||
|
* :c:func:`d_xi_c4_delta`
|
||||||
|
* :c:func:`d_xi_c5_delta`
|
||||||
|
* :c:func:`d_xi_c5t_delta`
|
||||||
|
* :c:func:`d_xi_capital_c4_delta`
|
||||||
|
* :c:func:`d_xi_d0delta`
|
||||||
|
* :c:func:`d_xi_delta_3`
|
||||||
|
* :c:func:`d_xi_delta_4`
|
||||||
|
* :c:func:`d_xi_delta_5`
|
||||||
|
* :c:func:`d_xi_delta_6`
|
||||||
|
* :c:func:`d_xi_delta_barth`
|
||||||
|
* :c:func:`d_xi_denominator_delta`
|
||||||
|
* :c:func:`d_xi_phi_8_delta`
|
||||||
|
* :c:func:`d_xi_rhoa`
|
||||||
|
* :c:func:`d_xi_rhob`
|
||||||
* :c:func:`damping_scf`
|
* :c:func:`damping_scf`
|
||||||
* :c:func:`davidson_collector`
|
* :c:func:`davidson_collector`
|
||||||
* :c:func:`davidson_converged`
|
* :c:func:`davidson_converged`
|
||||||
@ -893,20 +932,31 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`decode_exc`
|
* :c:func:`decode_exc`
|
||||||
* :c:func:`decode_exc_spin`
|
* :c:func:`decode_exc_spin`
|
||||||
* :c:func:`delete_selection_buffer`
|
* :c:func:`delete_selection_buffer`
|
||||||
|
* :c:func:`delta_2`
|
||||||
|
* :c:func:`delta_3`
|
||||||
|
* :c:func:`delta_4`
|
||||||
|
* :c:func:`delta_5`
|
||||||
|
* :c:func:`delta_6`
|
||||||
|
* :c:func:`delta_barth`
|
||||||
|
* :c:func:`delta_lrsr_ldaerf`
|
||||||
|
* :c:func:`denominator_delta`
|
||||||
* :c:func:`density_and_grad_alpha_beta_and_all_aos_and_grad_aos_at_r`
|
* :c:func:`density_and_grad_alpha_beta_and_all_aos_and_grad_aos_at_r`
|
||||||
* :c:func:`derivative_knowles_function`
|
* :c:func:`derivative_knowles_function`
|
||||||
* :c:func:`det_inf`
|
* :c:func:`det_inf`
|
||||||
* :c:func:`det_search_key`
|
* :c:func:`det_search_key`
|
||||||
* :c:func:`detcmp`
|
* :c:func:`detcmp`
|
||||||
* :c:func:`deteq`
|
* :c:func:`deteq`
|
||||||
|
* :c:func:`dft_utils_ecmd`
|
||||||
|
* :c:func:`dft_utils_two_body_main`
|
||||||
* :c:func:`diag_h_mat_elem`
|
* :c:func:`diag_h_mat_elem`
|
||||||
* :c:func:`diag_h_mat_elem_au0_h_au0`
|
* :c:func:`diag_h_mat_elem_au0_h_au0`
|
||||||
|
* :c:func:`diag_h_mat_elem_erf`
|
||||||
* :c:func:`diag_h_mat_elem_fock`
|
* :c:func:`diag_h_mat_elem_fock`
|
||||||
* :c:func:`diag_h_mat_elem_monoelec`
|
* :c:func:`diag_h_mat_elem_monoelec`
|
||||||
* :c:func:`diag_h_mat_elem_no_elec_check`
|
|
||||||
* :c:func:`diag_h_mat_elem_no_elec_check_no_exchange`
|
|
||||||
* :c:func:`diag_s_mat_elem`
|
* :c:func:`diag_s_mat_elem`
|
||||||
* :c:func:`diag_wee_mat_elem`
|
* :c:func:`diag_wee_mat_elem`
|
||||||
|
* :c:func:`diagonal_contrib_to_all_two_body_dm`
|
||||||
|
* :c:func:`diagonal_contrib_to_two_body_ab_dm`
|
||||||
* :c:func:`diagonalize_ci`
|
* :c:func:`diagonalize_ci`
|
||||||
* :c:func:`diagonalize_h`
|
* :c:func:`diagonalize_h`
|
||||||
* :c:func:`disconnect_from_taskserver`
|
* :c:func:`disconnect_from_taskserver`
|
||||||
@ -922,7 +972,9 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`dsort`
|
* :c:func:`dsort`
|
||||||
* :c:func:`dump_ao_integrals`
|
* :c:func:`dump_ao_integrals`
|
||||||
* :c:func:`dump_ao_integrals_erf`
|
* :c:func:`dump_ao_integrals_erf`
|
||||||
|
* :c:func:`dump_ao_integrals_ijkl_r3`
|
||||||
* :c:func:`dump_mo_integrals`
|
* :c:func:`dump_mo_integrals`
|
||||||
|
* :c:func:`dump_mo_integrals_ijkl_r3`
|
||||||
* :c:func:`ec_lda`
|
* :c:func:`ec_lda`
|
||||||
* :c:func:`ec_lda_sr`
|
* :c:func:`ec_lda_sr`
|
||||||
* :c:func:`ec_only_lda_sr`
|
* :c:func:`ec_only_lda_sr`
|
||||||
@ -939,6 +991,8 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`erf0`
|
* :c:func:`erf0`
|
||||||
* :c:func:`eri`
|
* :c:func:`eri`
|
||||||
* :c:func:`eri_erf`
|
* :c:func:`eri_erf`
|
||||||
|
* :c:func:`esrc_md_ldaerf`
|
||||||
|
* :c:func:`esrc_md_ldaerf_barth`
|
||||||
* :c:func:`ex_lda`
|
* :c:func:`ex_lda`
|
||||||
* :c:func:`ex_lda_sr`
|
* :c:func:`ex_lda_sr`
|
||||||
* :c:func:`ex_pbe_sr`
|
* :c:func:`ex_pbe_sr`
|
||||||
@ -947,7 +1001,6 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`example_bitmask`
|
* :c:func:`example_bitmask`
|
||||||
* :c:func:`example_determinants`
|
* :c:func:`example_determinants`
|
||||||
* :c:func:`example_determinants_psi_det`
|
* :c:func:`example_determinants_psi_det`
|
||||||
* :c:func:`extract_ref`
|
|
||||||
* :c:func:`extrapolate_data`
|
* :c:func:`extrapolate_data`
|
||||||
* :c:func:`f_function_becke`
|
* :c:func:`f_function_becke`
|
||||||
* :c:func:`f_integral`
|
* :c:func:`f_integral`
|
||||||
@ -959,12 +1012,14 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`filter_connected`
|
* :c:func:`filter_connected`
|
||||||
* :c:func:`filter_connected_i_h_psi0`
|
* :c:func:`filter_connected_i_h_psi0`
|
||||||
* :c:func:`filter_not_connected`
|
* :c:func:`filter_not_connected`
|
||||||
* :c:func:`find_connections_previous`
|
|
||||||
* :c:func:`find_rotation`
|
* :c:func:`find_rotation`
|
||||||
* :c:func:`four_idx_transform`
|
* :c:func:`four_idx_transform`
|
||||||
|
* :c:func:`g0_ueg_mu`
|
||||||
|
* :c:func:`g0_ueg_mu_inf`
|
||||||
* :c:func:`g0d`
|
* :c:func:`g0d`
|
||||||
* :c:func:`g0dd`
|
* :c:func:`g0dd`
|
||||||
* :c:func:`g0f`
|
* :c:func:`g0f`
|
||||||
|
* :c:func:`g0s`
|
||||||
* :c:func:`gammln`
|
* :c:func:`gammln`
|
||||||
* :c:func:`gammp`
|
* :c:func:`gammp`
|
||||||
* :c:func:`gauleg`
|
* :c:func:`gauleg`
|
||||||
@ -992,17 +1047,19 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`get_all_spin_singles_n_int`
|
* :c:func:`get_all_spin_singles_n_int`
|
||||||
* :c:func:`get_ao_bielec_integral`
|
* :c:func:`get_ao_bielec_integral`
|
||||||
* :c:func:`get_ao_bielec_integral_erf`
|
* :c:func:`get_ao_bielec_integral_erf`
|
||||||
|
* :c:func:`get_ao_bielec_integral_ijkl_r3`
|
||||||
* :c:func:`get_ao_bielec_integrals`
|
* :c:func:`get_ao_bielec_integrals`
|
||||||
* :c:func:`get_ao_bielec_integrals_erf`
|
* :c:func:`get_ao_bielec_integrals_erf`
|
||||||
* :c:func:`get_ao_bielec_integrals_erf_non_zero`
|
* :c:func:`get_ao_bielec_integrals_erf_non_zero`
|
||||||
|
* :c:func:`get_ao_bielec_integrals_ijkl_r3`
|
||||||
|
* :c:func:`get_ao_bielec_integrals_ijkl_r3_non_zero`
|
||||||
* :c:func:`get_ao_bielec_integrals_non_zero`
|
* :c:func:`get_ao_bielec_integrals_non_zero`
|
||||||
* :c:func:`get_ao_erf_map_size`
|
* :c:func:`get_ao_erf_map_size`
|
||||||
|
* :c:func:`get_ao_ijkl_r3_map_size`
|
||||||
* :c:func:`get_ao_map_size`
|
* :c:func:`get_ao_map_size`
|
||||||
* :c:func:`get_d0`
|
* :c:func:`get_d0`
|
||||||
* :c:func:`get_d1`
|
* :c:func:`get_d1`
|
||||||
* :c:func:`get_d2`
|
* :c:func:`get_d2`
|
||||||
* :c:func:`get_delta_e_dyall`
|
|
||||||
* :c:func:`get_delta_e_dyall_general_mp`
|
|
||||||
* :c:func:`get_double_excitation`
|
* :c:func:`get_double_excitation`
|
||||||
* :c:func:`get_double_excitation_spin`
|
* :c:func:`get_double_excitation_spin`
|
||||||
* :c:func:`get_excitation`
|
* :c:func:`get_excitation`
|
||||||
@ -1017,7 +1074,6 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`get_index_in_psi_det_alpha_unique`
|
* :c:func:`get_index_in_psi_det_alpha_unique`
|
||||||
* :c:func:`get_index_in_psi_det_beta_unique`
|
* :c:func:`get_index_in_psi_det_beta_unique`
|
||||||
* :c:func:`get_index_in_psi_det_sorted_bit`
|
* :c:func:`get_index_in_psi_det_sorted_bit`
|
||||||
* :c:func:`get_index_in_psi_ref_sorted_bit`
|
|
||||||
* :c:func:`get_inverse`
|
* :c:func:`get_inverse`
|
||||||
* :c:func:`get_m0`
|
* :c:func:`get_m0`
|
||||||
* :c:func:`get_m1`
|
* :c:func:`get_m1`
|
||||||
@ -1025,6 +1081,7 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`get_mask_phase`
|
* :c:func:`get_mask_phase`
|
||||||
* :c:func:`get_mo_bielec_integral`
|
* :c:func:`get_mo_bielec_integral`
|
||||||
* :c:func:`get_mo_bielec_integral_erf`
|
* :c:func:`get_mo_bielec_integral_erf`
|
||||||
|
* :c:func:`get_mo_bielec_integral_ijkl_r3`
|
||||||
* :c:func:`get_mo_bielec_integrals`
|
* :c:func:`get_mo_bielec_integrals`
|
||||||
* :c:func:`get_mo_bielec_integrals_coulomb_ii`
|
* :c:func:`get_mo_bielec_integrals_coulomb_ii`
|
||||||
* :c:func:`get_mo_bielec_integrals_erf`
|
* :c:func:`get_mo_bielec_integrals_erf`
|
||||||
@ -1035,7 +1092,12 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`get_mo_bielec_integrals_exch_ii`
|
* :c:func:`get_mo_bielec_integrals_exch_ii`
|
||||||
* :c:func:`get_mo_bielec_integrals_i1j1`
|
* :c:func:`get_mo_bielec_integrals_i1j1`
|
||||||
* :c:func:`get_mo_bielec_integrals_ij`
|
* :c:func:`get_mo_bielec_integrals_ij`
|
||||||
|
* :c:func:`get_mo_bielec_integrals_ijkl_r3`
|
||||||
|
* :c:func:`get_mo_bielec_integrals_ijkl_r3_coulomb_ii`
|
||||||
|
* :c:func:`get_mo_bielec_integrals_ijkl_r3_exch_ii`
|
||||||
|
* :c:func:`get_mo_bielec_integrals_ijkl_r3_ij`
|
||||||
* :c:func:`get_mo_erf_map_size`
|
* :c:func:`get_mo_erf_map_size`
|
||||||
|
* :c:func:`get_mo_ijkl_r3_map_size`
|
||||||
* :c:func:`get_mo_map_size`
|
* :c:func:`get_mo_map_size`
|
||||||
* :c:func:`get_mono_excitation`
|
* :c:func:`get_mono_excitation`
|
||||||
* :c:func:`get_mono_excitation_from_fock`
|
* :c:func:`get_mono_excitation_from_fock`
|
||||||
@ -1050,19 +1112,6 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`get_uj_s2_ui`
|
* :c:func:`get_uj_s2_ui`
|
||||||
* :c:func:`getmobiles`
|
* :c:func:`getmobiles`
|
||||||
* :c:func:`getunitandopen`
|
* :c:func:`getunitandopen`
|
||||||
* :c:func:`give_1h1p_contrib`
|
|
||||||
* :c:func:`give_1h1p_only_doubles_spin_cross`
|
|
||||||
* :c:func:`give_1h1p_sec_order_singles_contrib`
|
|
||||||
* :c:func:`give_1h2p_contrib`
|
|
||||||
* :c:func:`give_1h2p_contrib_sec_order`
|
|
||||||
* :c:func:`give_1h2p_new`
|
|
||||||
* :c:func:`give_1p_sec_order_singles_contrib`
|
|
||||||
* :c:func:`give_2h1p_contrib`
|
|
||||||
* :c:func:`give_2h1p_contrib_sec_order`
|
|
||||||
* :c:func:`give_2h1p_new`
|
|
||||||
* :c:func:`give_2h2p`
|
|
||||||
* :c:func:`give_2p_new`
|
|
||||||
* :c:func:`give_active_part_determinant`
|
|
||||||
* :c:func:`give_all_aos_and_grad_and_lapl_at_r`
|
* :c:func:`give_all_aos_and_grad_and_lapl_at_r`
|
||||||
* :c:func:`give_all_aos_and_grad_at_r`
|
* :c:func:`give_all_aos_and_grad_at_r`
|
||||||
* :c:func:`give_all_aos_at_r`
|
* :c:func:`give_all_aos_at_r`
|
||||||
@ -1071,21 +1120,19 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`give_all_mos_and_grad_and_lapl_at_r`
|
* :c:func:`give_all_mos_and_grad_and_lapl_at_r`
|
||||||
* :c:func:`give_all_mos_and_grad_at_r`
|
* :c:func:`give_all_mos_and_grad_at_r`
|
||||||
* :c:func:`give_all_mos_at_r`
|
* :c:func:`give_all_mos_at_r`
|
||||||
* :c:func:`give_core_inactive_part_determinant`
|
* :c:func:`give_epsilon_c_md_on_top_pbe_mu_corrected_from_two_dm`
|
||||||
|
* :c:func:`give_epsilon_c_md_on_top_pbe_mu_corrected_ueg_from_two_dm`
|
||||||
* :c:func:`give_explicit_poly_and_gaussian`
|
* :c:func:`give_explicit_poly_and_gaussian`
|
||||||
* :c:func:`give_explicit_poly_and_gaussian_double`
|
* :c:func:`give_explicit_poly_and_gaussian_double`
|
||||||
* :c:func:`give_explicit_poly_and_gaussian_x`
|
* :c:func:`give_explicit_poly_and_gaussian_x`
|
||||||
* :c:func:`give_holes_in_inactive_space`
|
|
||||||
* :c:func:`give_particles_in_virt_space`
|
|
||||||
* :c:func:`give_polynom_mult_center_mono_elec`
|
* :c:func:`give_polynom_mult_center_mono_elec`
|
||||||
* :c:func:`give_polynom_mult_center_mono_elec_erf`
|
* :c:func:`give_polynom_mult_center_mono_elec_erf`
|
||||||
* :c:func:`give_polynom_mult_center_mono_elec_erf_opt`
|
* :c:func:`give_polynom_mult_center_mono_elec_erf_opt`
|
||||||
* :c:func:`give_polynom_mult_center_x`
|
* :c:func:`give_polynom_mult_center_x`
|
||||||
* :c:func:`give_singles_and_partial_doubles_1h1p_contrib`
|
|
||||||
* :c:func:`give_virt_part_determinant`
|
|
||||||
* :c:func:`gpw`
|
* :c:func:`gpw`
|
||||||
* :c:func:`grad_rho_ab_to_grad_rho_oc`
|
* :c:func:`grad_rho_ab_to_grad_rho_oc`
|
||||||
* :c:func:`gser`
|
* :c:func:`gser`
|
||||||
|
* :c:func:`h`
|
||||||
* :c:func:`h_apply_cis`
|
* :c:func:`h_apply_cis`
|
||||||
* :c:func:`h_apply_cis_diexc`
|
* :c:func:`h_apply_cis_diexc`
|
||||||
* :c:func:`h_apply_cis_diexcorg`
|
* :c:func:`h_apply_cis_diexcorg`
|
||||||
@ -1096,51 +1143,6 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`h_apply_cisd_diexcorg`
|
* :c:func:`h_apply_cisd_diexcorg`
|
||||||
* :c:func:`h_apply_cisd_diexcp`
|
* :c:func:`h_apply_cisd_diexcp`
|
||||||
* :c:func:`h_apply_cisd_monoexc`
|
* :c:func:`h_apply_cisd_monoexc`
|
||||||
* :c:func:`h_apply_mrpt`
|
|
||||||
* :c:func:`h_apply_mrpt_1h`
|
|
||||||
* :c:func:`h_apply_mrpt_1h1p`
|
|
||||||
* :c:func:`h_apply_mrpt_1h1p_diexc`
|
|
||||||
* :c:func:`h_apply_mrpt_1h1p_diexcorg`
|
|
||||||
* :c:func:`h_apply_mrpt_1h1p_diexcp`
|
|
||||||
* :c:func:`h_apply_mrpt_1h1p_monoexc`
|
|
||||||
* :c:func:`h_apply_mrpt_1h2p`
|
|
||||||
* :c:func:`h_apply_mrpt_1h2p_diexc`
|
|
||||||
* :c:func:`h_apply_mrpt_1h2p_diexcorg`
|
|
||||||
* :c:func:`h_apply_mrpt_1h2p_diexcp`
|
|
||||||
* :c:func:`h_apply_mrpt_1h2p_monoexc`
|
|
||||||
* :c:func:`h_apply_mrpt_1h_diexc`
|
|
||||||
* :c:func:`h_apply_mrpt_1h_diexcorg`
|
|
||||||
* :c:func:`h_apply_mrpt_1h_diexcp`
|
|
||||||
* :c:func:`h_apply_mrpt_1h_monoexc`
|
|
||||||
* :c:func:`h_apply_mrpt_1p`
|
|
||||||
* :c:func:`h_apply_mrpt_1p_diexc`
|
|
||||||
* :c:func:`h_apply_mrpt_1p_diexcorg`
|
|
||||||
* :c:func:`h_apply_mrpt_1p_diexcp`
|
|
||||||
* :c:func:`h_apply_mrpt_1p_monoexc`
|
|
||||||
* :c:func:`h_apply_mrpt_2h`
|
|
||||||
* :c:func:`h_apply_mrpt_2h1p`
|
|
||||||
* :c:func:`h_apply_mrpt_2h1p_diexc`
|
|
||||||
* :c:func:`h_apply_mrpt_2h1p_diexcorg`
|
|
||||||
* :c:func:`h_apply_mrpt_2h1p_diexcp`
|
|
||||||
* :c:func:`h_apply_mrpt_2h1p_monoexc`
|
|
||||||
* :c:func:`h_apply_mrpt_2h2p`
|
|
||||||
* :c:func:`h_apply_mrpt_2h2p_diexc`
|
|
||||||
* :c:func:`h_apply_mrpt_2h2p_diexcorg`
|
|
||||||
* :c:func:`h_apply_mrpt_2h2p_diexcp`
|
|
||||||
* :c:func:`h_apply_mrpt_2h2p_monoexc`
|
|
||||||
* :c:func:`h_apply_mrpt_2h_diexc`
|
|
||||||
* :c:func:`h_apply_mrpt_2h_diexcorg`
|
|
||||||
* :c:func:`h_apply_mrpt_2h_diexcp`
|
|
||||||
* :c:func:`h_apply_mrpt_2h_monoexc`
|
|
||||||
* :c:func:`h_apply_mrpt_2p`
|
|
||||||
* :c:func:`h_apply_mrpt_2p_diexc`
|
|
||||||
* :c:func:`h_apply_mrpt_2p_diexcorg`
|
|
||||||
* :c:func:`h_apply_mrpt_2p_diexcp`
|
|
||||||
* :c:func:`h_apply_mrpt_2p_monoexc`
|
|
||||||
* :c:func:`h_apply_mrpt_diexc`
|
|
||||||
* :c:func:`h_apply_mrpt_diexcorg`
|
|
||||||
* :c:func:`h_apply_mrpt_diexcp`
|
|
||||||
* :c:func:`h_apply_mrpt_monoexc`
|
|
||||||
* :c:func:`h_s2_u_0_bielec_nstates_openmp`
|
* :c:func:`h_s2_u_0_bielec_nstates_openmp`
|
||||||
* :c:func:`h_s2_u_0_bielec_nstates_openmp_work`
|
* :c:func:`h_s2_u_0_bielec_nstates_openmp_work`
|
||||||
* :c:func:`h_s2_u_0_bielec_nstates_openmp_work_1`
|
* :c:func:`h_s2_u_0_bielec_nstates_openmp_work_1`
|
||||||
@ -1148,6 +1150,13 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`h_s2_u_0_bielec_nstates_openmp_work_3`
|
* :c:func:`h_s2_u_0_bielec_nstates_openmp_work_3`
|
||||||
* :c:func:`h_s2_u_0_bielec_nstates_openmp_work_4`
|
* :c:func:`h_s2_u_0_bielec_nstates_openmp_work_4`
|
||||||
* :c:func:`h_s2_u_0_bielec_nstates_openmp_work_n_int`
|
* :c:func:`h_s2_u_0_bielec_nstates_openmp_work_n_int`
|
||||||
|
* :c:func:`h_s2_u_0_erf_nstates_openmp`
|
||||||
|
* :c:func:`h_s2_u_0_erf_nstates_openmp_work`
|
||||||
|
* :c:func:`h_s2_u_0_erf_nstates_openmp_work_1`
|
||||||
|
* :c:func:`h_s2_u_0_erf_nstates_openmp_work_2`
|
||||||
|
* :c:func:`h_s2_u_0_erf_nstates_openmp_work_3`
|
||||||
|
* :c:func:`h_s2_u_0_erf_nstates_openmp_work_4`
|
||||||
|
* :c:func:`h_s2_u_0_erf_nstates_openmp_work_n_int`
|
||||||
* :c:func:`h_s2_u_0_nstates_openmp`
|
* :c:func:`h_s2_u_0_nstates_openmp`
|
||||||
* :c:func:`h_s2_u_0_nstates_openmp_work`
|
* :c:func:`h_s2_u_0_nstates_openmp_work`
|
||||||
* :c:func:`h_s2_u_0_nstates_openmp_work_1`
|
* :c:func:`h_s2_u_0_nstates_openmp_work_1`
|
||||||
@ -1168,6 +1177,8 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`heap_sort`
|
* :c:func:`heap_sort`
|
||||||
* :c:func:`heap_sort_big`
|
* :c:func:`heap_sort_big`
|
||||||
* :c:func:`hermite`
|
* :c:func:`hermite`
|
||||||
|
* :c:func:`hf_two_body_dm_aa`
|
||||||
|
* :c:func:`hf_two_body_dm_aa_spherical_laplacian`
|
||||||
* :c:func:`huckel_guess`
|
* :c:func:`huckel_guess`
|
||||||
* :c:func:`i2set_order`
|
* :c:func:`i2set_order`
|
||||||
* :c:func:`i2set_order_big`
|
* :c:func:`i2set_order_big`
|
||||||
@ -1178,23 +1189,25 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`i_h_j`
|
* :c:func:`i_h_j`
|
||||||
* :c:func:`i_h_j_bielec`
|
* :c:func:`i_h_j_bielec`
|
||||||
* :c:func:`i_h_j_double_alpha_beta`
|
* :c:func:`i_h_j_double_alpha_beta`
|
||||||
|
* :c:func:`i_h_j_double_alpha_beta_erf`
|
||||||
* :c:func:`i_h_j_double_spin`
|
* :c:func:`i_h_j_double_spin`
|
||||||
* :c:func:`i_h_j_dyall`
|
* :c:func:`i_h_j_double_spin_erf`
|
||||||
* :c:func:`i_h_j_dyall_no_exchange`
|
* :c:func:`i_h_j_erf`
|
||||||
* :c:func:`i_h_j_mono_spin`
|
* :c:func:`i_h_j_mono_spin`
|
||||||
|
* :c:func:`i_h_j_mono_spin_erf`
|
||||||
* :c:func:`i_h_j_mono_spin_monoelec`
|
* :c:func:`i_h_j_mono_spin_monoelec`
|
||||||
* :c:func:`i_h_j_monoelec`
|
* :c:func:`i_h_j_monoelec`
|
||||||
* :c:func:`i_h_j_s2`
|
* :c:func:`i_h_j_s2`
|
||||||
* :c:func:`i_h_j_verbose`
|
* :c:func:`i_h_j_verbose`
|
||||||
* :c:func:`i_h_psi`
|
* :c:func:`i_h_psi`
|
||||||
* :c:func:`i_h_psi_minilist`
|
* :c:func:`i_h_psi_minilist`
|
||||||
* :c:func:`i_h_psi_pert_new_minilist`
|
|
||||||
* :c:func:`i_s2_psi_minilist`
|
* :c:func:`i_s2_psi_minilist`
|
||||||
* :c:func:`i_wee_j_mono`
|
* :c:func:`i_wee_j_mono`
|
||||||
* :c:func:`i_x1_pol_mult`
|
* :c:func:`i_x1_pol_mult`
|
||||||
* :c:func:`initialize_bitmask_to_restart_ones`
|
* :c:func:`initialize_bitmask_to_restart_ones`
|
||||||
* :c:func:`initialize_mo_coef_begin_iteration`
|
* :c:func:`initialize_mo_coef_begin_iteration`
|
||||||
* :c:func:`insert_into_ao_integrals_erf_map`
|
* :c:func:`insert_into_ao_integrals_erf_map`
|
||||||
|
* :c:func:`insert_into_ao_integrals_ijkl_r3_map`
|
||||||
* :c:func:`insert_into_ao_integrals_map`
|
* :c:func:`insert_into_ao_integrals_map`
|
||||||
* :c:func:`insertion_dsort`
|
* :c:func:`insertion_dsort`
|
||||||
* :c:func:`insertion_dsort_big`
|
* :c:func:`insertion_dsort_big`
|
||||||
@ -1207,6 +1220,7 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`insertion_sort`
|
* :c:func:`insertion_sort`
|
||||||
* :c:func:`insertion_sort_big`
|
* :c:func:`insertion_sort_big`
|
||||||
* :c:func:`int_gaus_pol`
|
* :c:func:`int_gaus_pol`
|
||||||
|
* :c:func:`integral_bourrin_mo`
|
||||||
* :c:func:`integrale_new`
|
* :c:func:`integrale_new`
|
||||||
* :c:func:`integrale_new_erf`
|
* :c:func:`integrale_new_erf`
|
||||||
* :c:func:`is_a_1h`
|
* :c:func:`is_a_1h`
|
||||||
@ -1221,7 +1235,6 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`is_connected_to_by_mono`
|
* :c:func:`is_connected_to_by_mono`
|
||||||
* :c:func:`is_generable_cassd`
|
* :c:func:`is_generable_cassd`
|
||||||
* :c:func:`is_i_in_virtual`
|
* :c:func:`is_i_in_virtual`
|
||||||
* :c:func:`is_in_psi_ref`
|
|
||||||
* :c:func:`is_in_wavefunction`
|
* :c:func:`is_in_wavefunction`
|
||||||
* :c:func:`is_spin_flip_possible`
|
* :c:func:`is_spin_flip_possible`
|
||||||
* :c:func:`is_the_hole_in_det`
|
* :c:func:`is_the_hole_in_det`
|
||||||
@ -1235,8 +1248,10 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`list_to_bitstring`
|
* :c:func:`list_to_bitstring`
|
||||||
* :c:func:`load_ao_integrals`
|
* :c:func:`load_ao_integrals`
|
||||||
* :c:func:`load_ao_integrals_erf`
|
* :c:func:`load_ao_integrals_erf`
|
||||||
|
* :c:func:`load_ao_integrals_ijkl_r3`
|
||||||
* :c:func:`load_mo_integrals`
|
* :c:func:`load_mo_integrals`
|
||||||
* :c:func:`load_mo_integrals_erf`
|
* :c:func:`load_mo_integrals_erf`
|
||||||
|
* :c:func:`load_mo_integrals_ijkl_r3`
|
||||||
* :c:func:`logfact`
|
* :c:func:`logfact`
|
||||||
* :c:func:`lowercase`
|
* :c:func:`lowercase`
|
||||||
* :c:func:`make_s2_eigenfunction`
|
* :c:func:`make_s2_eigenfunction`
|
||||||
@ -1252,7 +1267,9 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`mo_as_svd_vectors_of_mo_matrix_eig`
|
* :c:func:`mo_as_svd_vectors_of_mo_matrix_eig`
|
||||||
* :c:func:`mo_bielec_integral`
|
* :c:func:`mo_bielec_integral`
|
||||||
* :c:func:`mo_bielec_integral_erf`
|
* :c:func:`mo_bielec_integral_erf`
|
||||||
|
* :c:func:`mo_bielec_integral_ijkl_r3`
|
||||||
* :c:func:`mo_bielec_integrals_erf_index`
|
* :c:func:`mo_bielec_integrals_erf_index`
|
||||||
|
* :c:func:`mo_bielec_integrals_ijkl_r3_index`
|
||||||
* :c:func:`mo_bielec_integrals_index`
|
* :c:func:`mo_bielec_integrals_index`
|
||||||
* :c:func:`mo_to_ao`
|
* :c:func:`mo_to_ao`
|
||||||
* :c:func:`modify_bitmasks_for_hole`
|
* :c:func:`modify_bitmasks_for_hole`
|
||||||
@ -1261,7 +1278,6 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`molden`
|
* :c:func:`molden`
|
||||||
* :c:func:`mono_excitation_wee`
|
* :c:func:`mono_excitation_wee`
|
||||||
* :c:func:`mpi_print`
|
* :c:func:`mpi_print`
|
||||||
* :c:func:`mrpt_dress`
|
|
||||||
* :c:func:`multiply_poly`
|
* :c:func:`multiply_poly`
|
||||||
* :c:func:`n_pt_sup`
|
* :c:func:`n_pt_sup`
|
||||||
* :c:func:`nai_pol_mult`
|
* :c:func:`nai_pol_mult`
|
||||||
@ -1282,6 +1298,13 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`occ_pattern_search_key`
|
* :c:func:`occ_pattern_search_key`
|
||||||
* :c:func:`occ_pattern_to_dets`
|
* :c:func:`occ_pattern_to_dets`
|
||||||
* :c:func:`occ_pattern_to_dets_size`
|
* :c:func:`occ_pattern_to_dets_size`
|
||||||
|
* :c:func:`off_diagonal_double_to_two_body_ab_dm`
|
||||||
|
* :c:func:`off_diagonal_single_to_two_body_ab_dm`
|
||||||
|
* :c:func:`on_top_of_r_approx_svd_correl_function`
|
||||||
|
* :c:func:`on_top_of_r_approx_svd_function`
|
||||||
|
* :c:func:`on_top_of_r_from_provider`
|
||||||
|
* :c:func:`on_top_two_dm_in_r_mu_corrected_from_two_dm`
|
||||||
|
* :c:func:`on_top_two_dm_in_r_mu_corrected_ueg_from_two_dm`
|
||||||
* :c:func:`ortho_canonical`
|
* :c:func:`ortho_canonical`
|
||||||
* :c:func:`ortho_lowdin`
|
* :c:func:`ortho_lowdin`
|
||||||
* :c:func:`ortho_qr`
|
* :c:func:`ortho_qr`
|
||||||
@ -1313,8 +1336,11 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`perturb_buffer_moller_plesset`
|
* :c:func:`perturb_buffer_moller_plesset`
|
||||||
* :c:func:`perturb_buffer_moller_plesset_general`
|
* :c:func:`perturb_buffer_moller_plesset_general`
|
||||||
* :c:func:`perturb_buffer_qdpt`
|
* :c:func:`perturb_buffer_qdpt`
|
||||||
|
* :c:func:`phi_8_delta`
|
||||||
|
* :c:func:`pouet`
|
||||||
* :c:func:`primitive_value`
|
* :c:func:`primitive_value`
|
||||||
* :c:func:`print_det`
|
* :c:func:`print_det`
|
||||||
|
* :c:func:`print_ecmd_var_energy`
|
||||||
* :c:func:`print_extrapolated_energy`
|
* :c:func:`print_extrapolated_energy`
|
||||||
* :c:func:`print_generators_bitmasks_holes`
|
* :c:func:`print_generators_bitmasks_holes`
|
||||||
* :c:func:`print_generators_bitmasks_holes_for_one_generator`
|
* :c:func:`print_generators_bitmasks_holes_for_one_generator`
|
||||||
@ -1323,8 +1349,10 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`print_memory_usage`
|
* :c:func:`print_memory_usage`
|
||||||
* :c:func:`print_spindet`
|
* :c:func:`print_spindet`
|
||||||
* :c:func:`print_summary`
|
* :c:func:`print_summary`
|
||||||
|
* :c:func:`print_variational_energy_dft`
|
||||||
* :c:func:`print_wf`
|
* :c:func:`print_wf`
|
||||||
* :c:func:`provide_all_mo_integrals_erf`
|
* :c:func:`provide_all_mo_integrals_erf`
|
||||||
|
* :c:func:`provide_all_mo_integrals_ijkl_r3`
|
||||||
* :c:func:`provide_everything`
|
* :c:func:`provide_everything`
|
||||||
* :c:func:`pt2`
|
* :c:func:`pt2`
|
||||||
* :c:func:`pt2_collector`
|
* :c:func:`pt2_collector`
|
||||||
@ -1376,6 +1404,9 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`roothaan_hall_scf`
|
* :c:func:`roothaan_hall_scf`
|
||||||
* :c:func:`routine`
|
* :c:func:`routine`
|
||||||
* :c:func:`routine_example_psi_det`
|
* :c:func:`routine_example_psi_det`
|
||||||
|
* :c:func:`routine_print`
|
||||||
|
* :c:func:`routines_compute_energy`
|
||||||
|
* :c:func:`routines_write_int`
|
||||||
* :c:func:`run`
|
* :c:func:`run`
|
||||||
* :c:func:`run_pt2_slave`
|
* :c:func:`run_pt2_slave`
|
||||||
* :c:func:`run_selection_slave`
|
* :c:func:`run_selection_slave`
|
||||||
@ -1393,6 +1424,7 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`save_natorb`
|
* :c:func:`save_natorb`
|
||||||
* :c:func:`save_natural_mos`
|
* :c:func:`save_natural_mos`
|
||||||
* :c:func:`save_one_body_dm`
|
* :c:func:`save_one_body_dm`
|
||||||
|
* :c:func:`save_one_e_effective_potential`
|
||||||
* :c:func:`save_ortho_mos`
|
* :c:func:`save_ortho_mos`
|
||||||
* :c:func:`save_ref_determinant`
|
* :c:func:`save_ref_determinant`
|
||||||
* :c:func:`save_wavefunction`
|
* :c:func:`save_wavefunction`
|
||||||
@ -1408,7 +1440,6 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`set_bit_to_integer`
|
* :c:func:`set_bit_to_integer`
|
||||||
* :c:func:`set_bitmask_hole_as_input`
|
* :c:func:`set_bitmask_hole_as_input`
|
||||||
* :c:func:`set_bitmask_particl_as_input`
|
* :c:func:`set_bitmask_particl_as_input`
|
||||||
* :c:func:`set_generators_bitmasks_as_holes_and_particles`
|
|
||||||
* :c:func:`set_natural_mos`
|
* :c:func:`set_natural_mos`
|
||||||
* :c:func:`set_order`
|
* :c:func:`set_order`
|
||||||
* :c:func:`set_order_big`
|
* :c:func:`set_order_big`
|
||||||
@ -1424,6 +1455,8 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`sorted_i8number`
|
* :c:func:`sorted_i8number`
|
||||||
* :c:func:`sorted_inumber`
|
* :c:func:`sorted_inumber`
|
||||||
* :c:func:`sorted_number`
|
* :c:func:`sorted_number`
|
||||||
|
* :c:func:`spherical_averaged_two_dm_at_second_order`
|
||||||
|
* :c:func:`spherical_averaged_two_dm_hf_at_second_order`
|
||||||
* :c:func:`spin_det_search_key`
|
* :c:func:`spin_det_search_key`
|
||||||
* :c:func:`splash_pq`
|
* :c:func:`splash_pq`
|
||||||
* :c:func:`spot_isinwf`
|
* :c:func:`spot_isinwf`
|
||||||
@ -1436,10 +1469,17 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`tasks_done_to_taskserver`
|
* :c:func:`tasks_done_to_taskserver`
|
||||||
* :c:func:`testteethbuilding`
|
* :c:func:`testteethbuilding`
|
||||||
* :c:func:`total_memory`
|
* :c:func:`total_memory`
|
||||||
* :c:func:`u0_h_dyall_u0`
|
* :c:func:`two_body_dm_nstates_openmp`
|
||||||
* :c:func:`u0_h_dyall_u0_no_exchange`
|
* :c:func:`two_body_dm_nstates_openmp_work`
|
||||||
|
* :c:func:`two_body_dm_nstates_openmp_work_1`
|
||||||
|
* :c:func:`two_body_dm_nstates_openmp_work_2`
|
||||||
|
* :c:func:`two_body_dm_nstates_openmp_work_3`
|
||||||
|
* :c:func:`two_body_dm_nstates_openmp_work_4`
|
||||||
|
* :c:func:`two_body_dm_nstates_openmp_work_n_int`
|
||||||
|
* :c:func:`two_dm_in_r`
|
||||||
* :c:func:`u_0_h_u_0`
|
* :c:func:`u_0_h_u_0`
|
||||||
* :c:func:`u_0_h_u_0_bielec`
|
* :c:func:`u_0_h_u_0_bielec`
|
||||||
|
* :c:func:`u_0_h_u_0_erf`
|
||||||
* :c:func:`u_0_s2_u_0`
|
* :c:func:`u_0_s2_u_0`
|
||||||
* :c:func:`u_dot_u`
|
* :c:func:`u_dot_u`
|
||||||
* :c:func:`u_dot_v`
|
* :c:func:`u_dot_v`
|
||||||
@ -1457,9 +1497,13 @@ Index of Subroutines/Functions
|
|||||||
* :c:func:`wall_time`
|
* :c:func:`wall_time`
|
||||||
* :c:func:`wallis`
|
* :c:func:`wallis`
|
||||||
* :c:func:`wf_of_psi_bilinear_matrix`
|
* :c:func:`wf_of_psi_bilinear_matrix`
|
||||||
|
* :c:func:`wignerseitz_radius`
|
||||||
|
* :c:func:`write_2_body_dm_fci_dump`
|
||||||
|
* :c:func:`write_all_integrals_for_mrdft`
|
||||||
* :c:func:`write_ao_basis`
|
* :c:func:`write_ao_basis`
|
||||||
* :c:func:`write_bool`
|
* :c:func:`write_bool`
|
||||||
* :c:func:`write_double`
|
* :c:func:`write_double`
|
||||||
|
* :c:func:`write_effective_rsdft_hamiltonian`
|
||||||
* :c:func:`write_geometry`
|
* :c:func:`write_geometry`
|
||||||
* :c:func:`write_git_log`
|
* :c:func:`write_git_log`
|
||||||
* :c:func:`write_int`
|
* :c:func:`write_int`
|
||||||
|
115
src/README.rst
115
src/README.rst
@ -1,112 +1,3 @@
|
|||||||
======================
|
==========================
|
||||||
Programming guidelines
|
The core modules of the QP
|
||||||
======================
|
==========================
|
||||||
|
|
||||||
Each module (directory) contains the following:
|
|
||||||
|
|
||||||
* A ``README.rst`` file to document the current module.
|
|
||||||
* An ``ASSUMPTIONS.rst`` file. This file should document all the implicit
|
|
||||||
assumptions used in the module. For example, if the atomic orbitals are
|
|
||||||
assumed to be normalized, this should be mentioned in the
|
|
||||||
``AOs/ASSUMPTIONS.rst`` file.
|
|
||||||
* A ``NEEDED_MODULES`` file which contains the list of modules on which the
|
|
||||||
current module depends
|
|
||||||
* A set of ``.irp.f`` files containing provider, subroutines and functions
|
|
||||||
* A ``Makefile`` that should compile
|
|
||||||
* Optionally some ``*.ezfio_config`` configuration files for the EZFIO
|
|
||||||
library
|
|
||||||
|
|
||||||
A new module may be created by invoking the ``create_module.sh`` script.
|
|
||||||
|
|
||||||
Every subroutine, function or provider should be documented using the
|
|
||||||
BEGIN_DOC ... END_DOC block. The documentation should be written in
|
|
||||||
ReStructured Text format to enable the automatic generation of the Sphinx
|
|
||||||
documentation.
|
|
||||||
|
|
||||||
When the current module depends on other modules, the list of modules should
|
|
||||||
be added in the ``NEEDED_MODULES`` file.
|
|
||||||
|
|
||||||
|
|
||||||
Creating a new module
|
|
||||||
=====================
|
|
||||||
|
|
||||||
Every new module should be created using the interactive ``create_module.sh``
|
|
||||||
script located in the ``${QP_ROOT}/scripts`` directory. This will create
|
|
||||||
all the required files with correct templates.
|
|
||||||
|
|
||||||
|
|
||||||
Makefiles
|
|
||||||
=========
|
|
||||||
|
|
||||||
Use the structure of Makefiles provided by the ``create_module.sh`` script. If
|
|
||||||
you need to re-create the Makefile, you can use the ``create_Makefile.sh``
|
|
||||||
script in the current module directory.
|
|
||||||
|
|
||||||
If you need to add some Fortran or C files that should not be tracked by IRPF90,
|
|
||||||
you have to add them manually to the Makefile in the ``SRC`` variable.
|
|
||||||
You also need to add the corresponding ``*.o`` file prefixed by ``IRPF90_temp/``.
|
|
||||||
For example
|
|
||||||
|
|
||||||
.. code-block:: Makefile
|
|
||||||
|
|
||||||
SRC=map_module.f90
|
|
||||||
OBJ=IRPF90_temp/map_module.o
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Input data
|
|
||||||
==========
|
|
||||||
|
|
||||||
Every program is supposed to use an EZFIO database containing all the
|
|
||||||
persistent data. This database can be modified in using the generated Fortran
|
|
||||||
functions or the generated Python module.
|
|
||||||
|
|
||||||
The definition of the data needed by the module should be put in the
|
|
||||||
``*.ezfio_config`` file.
|
|
||||||
|
|
||||||
Input data can also be read from the standard input to enable the use of
|
|
||||||
a program with a pipe, but the read statements should be present **only** in
|
|
||||||
the main program.
|
|
||||||
|
|
||||||
|
|
||||||
Output data
|
|
||||||
===========
|
|
||||||
|
|
||||||
Print to stdout statements should only appear in programs, not in providers,
|
|
||||||
subroutines or functions. This enables the possibility easily use the programs
|
|
||||||
with pipes.
|
|
||||||
|
|
||||||
To print, you should write in an output file provided by the ``Output``
|
|
||||||
module. Every module has its own output file. Before printing something,
|
|
||||||
a timestamp should be put in the output with the ``write_time`` function.
|
|
||||||
This allows an external script to read all the pieces of the output files
|
|
||||||
and put them in a sequential order. The format of the output should be
|
|
||||||
in ReStructured Text for easy transformation of the output data to pdf,
|
|
||||||
HTML, man, etc.
|
|
||||||
|
|
||||||
|
|
||||||
Creating a shell script
|
|
||||||
=======================
|
|
||||||
|
|
||||||
Shell scripts should be located in the ``${QP_ROOT}/scripts`` directory.
|
|
||||||
Relative paths should be avoided as much as possible, and the result of commands
|
|
||||||
should be always checked. For example, when creating a directory the existence
|
|
||||||
of the directory has to be checked.
|
|
||||||
|
|
||||||
|
|
||||||
Documentation
|
|
||||||
=============
|
|
||||||
|
|
||||||
.. Do not edit this section. It was auto-generated from the
|
|
||||||
.. NEEDED_MODULES file.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Needed Modules
|
|
||||||
==============
|
|
||||||
|
|
||||||
.. Do not edit this section. It was auto-generated from the
|
|
||||||
.. NEEDED_MODULES file.
|
|
||||||
|
|
||||||
* `Utils <http://github.com/LCPQ/quantum_package/tree/master/src/Utils>`_
|
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
ao_one_e_integrals
|
ao_one_e_integrals
|
||||||
|
mo_one_e_integrals
|
||||||
ao_two_e_integrals
|
ao_two_e_integrals
|
||||||
pseudo
|
pseudo
|
||||||
bitmask
|
bitmask
|
||||||
|
Loading…
Reference in New Issue
Block a user