mirror of
https://github.com/TREX-CoE/qmckl.git
synced 2025-04-28 11:24:46 +02:00
Deploying to gh-pages from @ TREX-CoE/qmckl@f15463b7aa 🚀
This commit is contained in:
parent
a593852d02
commit
c5ca121b85
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:35 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>QMCkl source code documentation</title>
|
||||
@ -362,7 +362,7 @@ and bug reports should be submitted at
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:35</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
118
qmckl.html
118
qmckl.html
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:35 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Introduction</title>
|
||||
@ -333,36 +333,36 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org10bc0fe">1. Installing QMCkl</a>
|
||||
<li><a href="#orgcb6cc4e">1. Installing QMCkl</a>
|
||||
<ul>
|
||||
<li><a href="#org21186e8">1.1. Installing from the released tarball (for end users)</a></li>
|
||||
<li><a href="#org71ccff0">1.2. Installing from the source repository (for developers)</a></li>
|
||||
<li><a href="#orgec30c7b">1.1. Installing from the released tarball (for end users)</a></li>
|
||||
<li><a href="#org00d16df">1.2. Installing from the source repository (for developers)</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org90a7cfd">2. Using QMCkl</a></li>
|
||||
<li><a href="#orgd4287cd">3. Developing in QMCkl</a>
|
||||
<li><a href="#orgf187505">2. Using QMCkl</a></li>
|
||||
<li><a href="#orgb388b00">3. Developing in QMCkl</a>
|
||||
<ul>
|
||||
<li><a href="#orgd184e91">3.1. Literate programming</a></li>
|
||||
<li><a href="#org0580b3a">3.2. Source code editing</a></li>
|
||||
<li><a href="#org14d3473">3.3. Choice of the programming language</a></li>
|
||||
<li><a href="#org5bd7954">3.4. Coding rules</a></li>
|
||||
<li><a href="#org881a9f5">3.5. Design of the library</a></li>
|
||||
<li><a href="#org80fbf82">3.6. Naming conventions</a></li>
|
||||
<li><a href="#orgbccb954">3.7. Application programming interface</a></li>
|
||||
<li><a href="#org36222f6">3.8. Global state</a></li>
|
||||
<li><a href="#org97f60b4">3.9. Headers</a></li>
|
||||
<li><a href="#org9fd65e6">3.10. Low-level functions</a></li>
|
||||
<li><a href="#org286b15b">3.11. High-level functions</a></li>
|
||||
<li><a href="#org26976cc">3.12. Numerical precision</a></li>
|
||||
<li><a href="#orgea0be53">3.13. Algorithms</a></li>
|
||||
<li><a href="#org36e9488">3.1. Literate programming</a></li>
|
||||
<li><a href="#orgd354ff4">3.2. Source code editing</a></li>
|
||||
<li><a href="#orgdaea17b">3.3. Choice of the programming language</a></li>
|
||||
<li><a href="#org9085acc">3.4. Coding rules</a></li>
|
||||
<li><a href="#orga4429b4">3.5. Design of the library</a></li>
|
||||
<li><a href="#org474cc89">3.6. Naming conventions</a></li>
|
||||
<li><a href="#org0385de1">3.7. Application programming interface</a></li>
|
||||
<li><a href="#orgcee60d3">3.8. Global state</a></li>
|
||||
<li><a href="#orge39ce2d">3.9. Headers</a></li>
|
||||
<li><a href="#org95a4d7d">3.10. Low-level functions</a></li>
|
||||
<li><a href="#org718a35e">3.11. High-level functions</a></li>
|
||||
<li><a href="#org102fb28">3.12. Numerical precision</a></li>
|
||||
<li><a href="#org33c449a">3.13. Algorithms</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org10bc0fe" class="outline-2">
|
||||
<h2 id="org10bc0fe"><span class="section-number-2">1</span> Installing QMCkl</h2>
|
||||
<div id="outline-container-orgcb6cc4e" class="outline-2">
|
||||
<h2 id="orgcb6cc4e"><span class="section-number-2">1</span> Installing QMCkl</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The latest version fo QMCkl can be downloaded
|
||||
@ -371,8 +371,8 @@ The latest version fo QMCkl can be downloaded
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org21186e8" class="outline-3">
|
||||
<h3 id="org21186e8"><span class="section-number-3">1.1</span> Installing from the released tarball (for end users)</h3>
|
||||
<div id="outline-container-orgec30c7b" class="outline-3">
|
||||
<h3 id="orgec30c7b"><span class="section-number-3">1.1</span> Installing from the released tarball (for end users)</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<p>
|
||||
QMCkl is built with GNU Autotools, so the usual
|
||||
@ -387,8 +387,8 @@ options are defined using <code>CFLAGS</code> and <code>FCFLAGS</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org71ccff0" class="outline-3">
|
||||
<h3 id="org71ccff0"><span class="section-number-3">1.2</span> Installing from the source repository (for developers)</h3>
|
||||
<div id="outline-container-org00d16df" class="outline-3">
|
||||
<h3 id="org00d16df"><span class="section-number-3">1.2</span> Installing from the source repository (for developers)</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
To compile from the source repository, additional dependencies are
|
||||
@ -409,8 +409,8 @@ to be executed first.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org90a7cfd" class="outline-2">
|
||||
<h2 id="org90a7cfd"><span class="section-number-2">2</span> Using QMCkl</h2>
|
||||
<div id="outline-container-orgf187505" class="outline-2">
|
||||
<h2 id="orgf187505"><span class="section-number-2">2</span> Using QMCkl</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<p>
|
||||
The <code>qmckl.h</code> header file installed in the <code>${prefix}/include</code> directory
|
||||
@ -439,12 +439,12 @@ Both files are located in the <code>include/</code> directory.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd4287cd" class="outline-2">
|
||||
<h2 id="orgd4287cd"><span class="section-number-2">3</span> Developing in QMCkl</h2>
|
||||
<div id="outline-container-orgb388b00" class="outline-2">
|
||||
<h2 id="orgb388b00"><span class="section-number-2">3</span> Developing in QMCkl</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-orgd184e91" class="outline-3">
|
||||
<h3 id="orgd184e91"><span class="section-number-3">3.1</span> Literate programming</h3>
|
||||
<div id="outline-container-org36e9488" class="outline-3">
|
||||
<h3 id="org36e9488"><span class="section-number-3">3.1</span> Literate programming</h3>
|
||||
<div class="outline-text-3" id="text-3-1">
|
||||
<p>
|
||||
In a traditional source code, most of the lines of source files of a program
|
||||
@ -494,8 +494,8 @@ tarball contains the generated source code.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0580b3a" class="outline-3">
|
||||
<h3 id="org0580b3a"><span class="section-number-3">3.2</span> Source code editing</h3>
|
||||
<div id="outline-container-orgd354ff4" class="outline-3">
|
||||
<h3 id="orgd354ff4"><span class="section-number-3">3.2</span> Source code editing</h3>
|
||||
<div class="outline-text-3" id="text-3-2">
|
||||
<p>
|
||||
For a tutorial on literate programming with org-mode, follow <a href="http://www.howardism.org/Technical/Emacs/literate-programming-tutorial.html">this link</a>.
|
||||
@ -526,8 +526,8 @@ org-mode.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org14d3473" class="outline-3">
|
||||
<h3 id="org14d3473"><span class="section-number-3">3.3</span> Choice of the programming language</h3>
|
||||
<div id="outline-container-orgdaea17b" class="outline-3">
|
||||
<h3 id="orgdaea17b"><span class="section-number-3">3.3</span> Choice of the programming language</h3>
|
||||
<div class="outline-text-3" id="text-3-3">
|
||||
<p>
|
||||
Most of the codes of the <a href="https://trex-coe.eu">TREX CoE</a> are written in Fortran with some
|
||||
@ -591,8 +591,8 @@ For more guidelines on using Fortran to generate a C interface, see
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5bd7954" class="outline-3">
|
||||
<h3 id="org5bd7954"><span class="section-number-3">3.4</span> Coding rules</h3>
|
||||
<div id="outline-container-org9085acc" class="outline-3">
|
||||
<h3 id="org9085acc"><span class="section-number-3">3.4</span> Coding rules</h3>
|
||||
<div class="outline-text-3" id="text-3-4">
|
||||
<p>
|
||||
The authors should follow the recommendations of the C99
|
||||
@ -612,8 +612,8 @@ make cppcheck ; cat cppcheck.out
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org881a9f5" class="outline-3">
|
||||
<h3 id="org881a9f5"><span class="section-number-3">3.5</span> Design of the library</h3>
|
||||
<div id="outline-container-orga4429b4" class="outline-3">
|
||||
<h3 id="orga4429b4"><span class="section-number-3">3.5</span> Design of the library</h3>
|
||||
<div class="outline-text-3" id="text-3-5">
|
||||
<p>
|
||||
The proposed API should allow the library to: deal with memory transfers
|
||||
@ -624,8 +624,8 @@ functions (see below).
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org80fbf82" class="outline-3">
|
||||
<h3 id="org80fbf82"><span class="section-number-3">3.6</span> Naming conventions</h3>
|
||||
<div id="outline-container-org474cc89" class="outline-3">
|
||||
<h3 id="org474cc89"><span class="section-number-3">3.6</span> Naming conventions</h3>
|
||||
<div class="outline-text-3" id="text-3-6">
|
||||
<p>
|
||||
To avoid namespace collisions, we use <code>qmckl_</code> as a prefix for all exported
|
||||
@ -646,8 +646,8 @@ form is allowed.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbccb954" class="outline-3">
|
||||
<h3 id="orgbccb954"><span class="section-number-3">3.7</span> Application programming interface</h3>
|
||||
<div id="outline-container-org0385de1" class="outline-3">
|
||||
<h3 id="org0385de1"><span class="section-number-3">3.7</span> Application programming interface</h3>
|
||||
<div class="outline-text-3" id="text-3-7">
|
||||
<p>
|
||||
In the C language, the number of bits used by the integer types can change
|
||||
@ -679,15 +679,15 @@ bindings in other languages in other repositories.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org36222f6" class="outline-3">
|
||||
<h3 id="org36222f6"><span class="section-number-3">3.8</span> Global state</h3>
|
||||
<div id="outline-container-orgcee60d3" class="outline-3">
|
||||
<h3 id="orgcee60d3"><span class="section-number-3">3.8</span> Global state</h3>
|
||||
<div class="outline-text-3" id="text-3-8">
|
||||
<p>
|
||||
Global variables should be avoided in the library, because it is
|
||||
possible that one single program needs to use multiple instances
|
||||
of the library. To solve this problem we propose to use a pointer
|
||||
to a <a href="./qmckl_context.html"><code>context</code></a> variable, built by the library with the
|
||||
<code>qmckl_context_create</code> function. The <a id="orga8dc983">=context=</a> contains the global
|
||||
<code>qmckl_context_create</code> function. The <a id="orgb8d7608">=context=</a> contains the global
|
||||
state of the library, and is used as the first argument of many
|
||||
QMCkl functions.
|
||||
</p>
|
||||
@ -701,8 +701,8 @@ the state is done by setters and getters, prefixed by
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org97f60b4" class="outline-3">
|
||||
<h3 id="org97f60b4"><span class="section-number-3">3.9</span> Headers</h3>
|
||||
<div id="outline-container-orge39ce2d" class="outline-3">
|
||||
<h3 id="orge39ce2d"><span class="section-number-3">3.9</span> Headers</h3>
|
||||
<div class="outline-text-3" id="text-3-9">
|
||||
<p>
|
||||
A single <code>qmckl.h</code> header to be distributed by the library
|
||||
@ -790,8 +790,8 @@ and the types definitions should be written in the <code>*fh_type.f90</code> fil
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9fd65e6" class="outline-3">
|
||||
<h3 id="org9fd65e6"><span class="section-number-3">3.10</span> Low-level functions</h3>
|
||||
<div id="outline-container-org95a4d7d" class="outline-3">
|
||||
<h3 id="org95a4d7d"><span class="section-number-3">3.10</span> Low-level functions</h3>
|
||||
<div class="outline-text-3" id="text-3-10">
|
||||
<p>
|
||||
Low-level functions are very simple functions which are leaves of
|
||||
@ -800,14 +800,14 @@ the function call tree (they don't call any other QMCkl function).
|
||||
|
||||
<p>
|
||||
These functions are <i>pure</i>, and unaware of the QMCkl
|
||||
<a href="#orga8dc983"><code>context</code></a>. They are not allowed to allocate/deallocate memory, and
|
||||
<a href="#orgb8d7608"><code>context</code></a>. They are not allowed to allocate/deallocate memory, and
|
||||
if they need temporary memory it should be provided in input.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org286b15b" class="outline-3">
|
||||
<h3 id="org286b15b"><span class="section-number-3">3.11</span> High-level functions</h3>
|
||||
<div id="outline-container-org718a35e" class="outline-3">
|
||||
<h3 id="org718a35e"><span class="section-number-3">3.11</span> High-level functions</h3>
|
||||
<div class="outline-text-3" id="text-3-11">
|
||||
<p>
|
||||
High-level functions are at the top of the function call tree.
|
||||
@ -819,8 +819,8 @@ temporary storage, to simplify the use of accelerators.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org26976cc" class="outline-3">
|
||||
<h3 id="org26976cc"><span class="section-number-3">3.12</span> Numerical precision</h3>
|
||||
<div id="outline-container-org102fb28" class="outline-3">
|
||||
<h3 id="org102fb28"><span class="section-number-3">3.12</span> Numerical precision</h3>
|
||||
<div class="outline-text-3" id="text-3-12">
|
||||
<p>
|
||||
The minimal number of bits of precision required for a function
|
||||
@ -828,7 +828,7 @@ should be given as an input of low-level computational
|
||||
functions. This input will be used to define the values of the
|
||||
different thresholds that might be used to avoid computing
|
||||
unnecessary noise. High-level functions will use the precision
|
||||
specified in the <a href="#orga8dc983"><code>context</code></a> variable.
|
||||
specified in the <a href="#orgb8d7608"><code>context</code></a> variable.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -896,8 +896,8 @@ following points :
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgea0be53" class="outline-3">
|
||||
<h3 id="orgea0be53"><span class="section-number-3">3.13</span> Algorithms</h3>
|
||||
<div id="outline-container-org33c449a" class="outline-3">
|
||||
<h3 id="org33c449a"><span class="section-number-3">3.13</span> Algorithms</h3>
|
||||
<div class="outline-text-3" id="text-3-13">
|
||||
<p>
|
||||
Reducing the scaling of an algorithm usually implies also reducing
|
||||
@ -913,7 +913,7 @@ implemented adapted to different problem sizes.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:35</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
212
qmckl_ao.html
212
qmckl_ao.html
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:35 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Atomic Orbitals</title>
|
||||
@ -333,61 +333,61 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org9453ef7">1. Introduction</a></li>
|
||||
<li><a href="#org6aeeb0f">2. Context</a>
|
||||
<li><a href="#org2423a5e">1. Introduction</a></li>
|
||||
<li><a href="#org04a7bb2">2. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org06fa5ce">2.1. Constant data</a>
|
||||
<li><a href="#org042411d">2.1. Constant data</a>
|
||||
<ul>
|
||||
<li><a href="#orgb6f760d">2.1.1. Initialization functions</a>
|
||||
<li><a href="#org91bf01b">2.1.1. Initialization functions</a>
|
||||
<ul>
|
||||
<li><a href="#org0002c00">2.1.1.1. C interface</a></li>
|
||||
<li><a href="#org26283de">2.1.1.2. Fortran interface</a></li>
|
||||
<li><a href="#org1963126">2.1.1.1. C interface</a></li>
|
||||
<li><a href="#orgbd735b0">2.1.1.2. Fortran interface</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org91fe356">2.1.2. Access functions</a>
|
||||
<li><a href="#org200dfa9">2.1.2. Access functions</a>
|
||||
<ul>
|
||||
<li><a href="#orgb8ff8dd">2.1.2.1. C interface</a></li>
|
||||
<li><a href="#orgd623383">2.1.2.2. Fortran interface</a></li>
|
||||
<li><a href="#org03d13b5">2.1.2.1. C interface</a></li>
|
||||
<li><a href="#org1985c6d">2.1.2.2. Fortran interface</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgafd5f3c">2.2. Computed data</a>
|
||||
<li><a href="#orge1f96e9">2.2. Computed data</a>
|
||||
<ul>
|
||||
<li><a href="#orge9618cf">2.2.1. After initialization</a></li>
|
||||
<li><a href="#org56c6e4f">2.2.2. <span class="todo TODO">TODO</span> HPC-specific data structures</a></li>
|
||||
<li><a href="#org8af0522">2.2.3. Access functions</a></li>
|
||||
<li><a href="#org6a6ffe1">2.2.1. After initialization</a></li>
|
||||
<li><a href="#org54206bb">2.2.2. <span class="todo TODO">TODO</span> HPC-specific data structures</a></li>
|
||||
<li><a href="#org99d2fa1">2.2.3. Access functions</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orged7721a">3. Radial part</a>
|
||||
<li><a href="#org463f266">3. Radial part</a>
|
||||
<ul>
|
||||
<li><a href="#org0123e14">3.1. General functions for Gaussian basis functions</a></li>
|
||||
<li><a href="#org38abbfd">3.2. Computation of primitives</a></li>
|
||||
<li><a href="#org6e1a31e">3.3. Computation of shells</a></li>
|
||||
<li><a href="#org31777ff">3.1. General functions for Gaussian basis functions</a></li>
|
||||
<li><a href="#org828bd85">3.2. Computation of primitives</a></li>
|
||||
<li><a href="#org9f2c291">3.3. Computation of shells</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgce93b6f">4. Polynomial part</a>
|
||||
<li><a href="#org3d8ada2">4. Polynomial part</a>
|
||||
<ul>
|
||||
<li><a href="#org28ea178">4.1. General functions for Powers of \(x-X_i\)</a></li>
|
||||
<li><a href="#org471606a">4.2. General functions for Value, Gradient and Laplacian of a polynomial</a></li>
|
||||
<li><a href="#org296bf29">4.1. General functions for Powers of \(x-X_i\)</a></li>
|
||||
<li><a href="#orgcabee99">4.2. General functions for Value, Gradient and Laplacian of a polynomial</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org6e705a0">5. Combining radial and polynomial parts</a>
|
||||
<li><a href="#orga803c04">5. Combining radial and polynomial parts</a>
|
||||
<ul>
|
||||
<li><a href="#org6bfbadb">5.1. Values only</a>
|
||||
<li><a href="#org806ea0c">5.1. Values only</a>
|
||||
<ul>
|
||||
<li><a href="#org883e298">5.1.1. Unoptimized version</a></li>
|
||||
<li><a href="#org8690bc9">5.1.2. HPC version</a></li>
|
||||
<li><a href="#orgaec2465">5.1.3. Interfaces</a></li>
|
||||
<li><a href="#org606ca16">5.1.1. Unoptimized version</a></li>
|
||||
<li><a href="#orga9c8b22">5.1.2. HPC version</a></li>
|
||||
<li><a href="#org5c15ff5">5.1.3. Interfaces</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgf486d2a">5.2. Value, gradients, Laplacian</a>
|
||||
<li><a href="#orgcd94545">5.2. Value, gradients, Laplacian</a>
|
||||
<ul>
|
||||
<li><a href="#org501f128">5.2.1. Unoptimized version</a></li>
|
||||
<li><a href="#org7867324">5.2.2. HPC version</a></li>
|
||||
<li><a href="#orgf11487a">5.2.3. Interfaces</a></li>
|
||||
<li><a href="#org00a551b">5.2.1. Unoptimized version</a></li>
|
||||
<li><a href="#org0f9c71d">5.2.2. HPC version</a></li>
|
||||
<li><a href="#org43520c7">5.2.3. Interfaces</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -396,8 +396,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9453ef7" class="outline-2">
|
||||
<h2 id="org9453ef7"><span class="section-number-2">1</span> Introduction</h2>
|
||||
<div id="outline-container-org2423a5e" class="outline-2">
|
||||
<h2 id="org2423a5e"><span class="section-number-2">1</span> Introduction</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The atomic basis set is defined as a list of shells. Each shell \(s\) is
|
||||
@ -450,19 +450,19 @@ gradients and Laplacian of the atomic basis functions.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6aeeb0f" class="outline-2">
|
||||
<h2 id="org6aeeb0f"><span class="section-number-2">2</span> Context</h2>
|
||||
<div id="outline-container-org04a7bb2" class="outline-2">
|
||||
<h2 id="org04a7bb2"><span class="section-number-2">2</span> Context</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org06fa5ce" class="outline-3">
|
||||
<h3 id="org06fa5ce"><span class="section-number-3">2.1</span> Constant data</h3>
|
||||
<div id="outline-container-org042411d" class="outline-3">
|
||||
<h3 id="org042411d"><span class="section-number-3">2.1</span> Constant data</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
The following arrays are stored in the context, and need to be set
|
||||
when initializing the library:
|
||||
</p>
|
||||
|
||||
<table id="org52c83a3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org7a210c2" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -636,7 +636,7 @@ calling the functions:
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-C" id="orgfd30906"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_$V$</span> ( <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>,
|
||||
<pre class="src src-C" id="org9eb40b6"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_$V$</span> ( <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>,
|
||||
<span style="color: #a020f0;">const</span> $type_of_V$ $V$);
|
||||
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_ao_basis_$V$</span> ( <span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>,
|
||||
@ -673,7 +673,7 @@ For array variables, use the rule:
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-C" id="org12336ee"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_$V$</span> ( <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>,
|
||||
<pre class="src src-C" id="orgf7fb17a"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_$V$</span> ( <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>,
|
||||
<span style="color: #a020f0;">const</span> $type_of_V$ $V$,
|
||||
<span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">size_max</span>);
|
||||
|
||||
@ -711,17 +711,17 @@ For array variables, use the rule:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb6f760d" class="outline-4">
|
||||
<h4 id="orgb6f760d"><span class="section-number-4">2.1.1</span> Initialization functions</h4>
|
||||
<div id="outline-container-org91bf01b" class="outline-4">
|
||||
<h4 id="org91bf01b"><span class="section-number-4">2.1.1</span> Initialization functions</h4>
|
||||
<div class="outline-text-4" id="text-2-1-1">
|
||||
<p>
|
||||
<code>size_max</code> is the dimension of the input array, which should be
|
||||
equal of larger than the value given in the table of section <a href="#org6aeeb0f">2</a>.
|
||||
equal of larger than the value given in the table of section <a href="#org04a7bb2">2</a>.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0002c00" class="outline-5">
|
||||
<h5 id="org0002c00"><span class="section-number-5">2.1.1.1</span> C interface</h5>
|
||||
<div id="outline-container-org1963126" class="outline-5">
|
||||
<h5 id="org1963126"><span class="section-number-5">2.1.1.1</span> C interface</h5>
|
||||
<div class="outline-text-5" id="text-2-1-1-1">
|
||||
<p>
|
||||
To set the basis set, all the following functions need to be
|
||||
@ -845,8 +845,8 @@ called.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org26283de" class="outline-5">
|
||||
<h5 id="org26283de"><span class="section-number-5">2.1.1.2</span> Fortran interface</h5>
|
||||
<div id="outline-container-orgbd735b0" class="outline-5">
|
||||
<h5 id="orgbd735b0"><span class="section-number-5">2.1.1.2</span> Fortran interface</h5>
|
||||
<div class="outline-text-5" id="text-2-1-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #a020f0;">interface</span>
|
||||
@ -1029,17 +1029,17 @@ called.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org91fe356" class="outline-4">
|
||||
<h4 id="org91fe356"><span class="section-number-4">2.1.2</span> Access functions</h4>
|
||||
<div id="outline-container-org200dfa9" class="outline-4">
|
||||
<h4 id="org200dfa9"><span class="section-number-4">2.1.2</span> Access functions</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<p>
|
||||
<code>size_max</code> is the dimension of the input array, which should be
|
||||
equal of larger than the value given in the table of section <a href="#org6aeeb0f">2</a>.
|
||||
equal of larger than the value given in the table of section <a href="#org04a7bb2">2</a>.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb8ff8dd" class="outline-5">
|
||||
<h5 id="orgb8ff8dd"><span class="section-number-5">2.1.2.1</span> C interface</h5>
|
||||
<div id="outline-container-org03d13b5" class="outline-5">
|
||||
<h5 id="org03d13b5"><span class="section-number-5">2.1.2.1</span> C interface</h5>
|
||||
<div class="outline-text-5" id="text-2-1-2-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span>
|
||||
@ -1161,8 +1161,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd623383" class="outline-5">
|
||||
<h5 id="orgd623383"><span class="section-number-5">2.1.2.2</span> Fortran interface</h5>
|
||||
<div id="outline-container-org1985c6d" class="outline-5">
|
||||
<h5 id="org1985c6d"><span class="section-number-5">2.1.2.2</span> Fortran interface</h5>
|
||||
<div class="outline-text-5" id="text-2-1-2-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #a020f0;">interface</span>
|
||||
@ -1346,8 +1346,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgafd5f3c" class="outline-3">
|
||||
<h3 id="orgafd5f3c"><span class="section-number-3">2.2</span> Computed data</h3>
|
||||
<div id="outline-container-orge1f96e9" class="outline-3">
|
||||
<h3 id="orge1f96e9"><span class="section-number-3">2.2</span> Computed data</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
The following data is computed as described in the next sections:
|
||||
@ -1422,8 +1422,8 @@ The following data is computed as described in the next sections:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge9618cf" class="outline-4">
|
||||
<h4 id="orge9618cf"><span class="section-number-4">2.2.1</span> After initialization</h4>
|
||||
<div id="outline-container-org6a6ffe1" class="outline-4">
|
||||
<h4 id="org6a6ffe1"><span class="section-number-4">2.2.1</span> After initialization</h4>
|
||||
<div class="outline-text-4" id="text-2-2-1">
|
||||
<p>
|
||||
When the basis set is completely entered, extra data structures may be
|
||||
@ -1437,8 +1437,8 @@ the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org56c6e4f" class="outline-4">
|
||||
<h4 id="org56c6e4f"><span class="section-number-4">2.2.2</span> <span class="todo TODO">TODO</span> HPC-specific data structures</h4>
|
||||
<div id="outline-container-org54206bb" class="outline-4">
|
||||
<h4 id="org54206bb"><span class="section-number-4">2.2.2</span> <span class="todo TODO">TODO</span> HPC-specific data structures</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<p>
|
||||
For faster access, we provide extra arrays for the shell information as:
|
||||
@ -1468,8 +1468,8 @@ which is a matrix-vector product.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8af0522" class="outline-4">
|
||||
<h4 id="org8af0522"><span class="section-number-4">2.2.3</span> Access functions</h4>
|
||||
<div id="outline-container-org99d2fa1" class="outline-4">
|
||||
<h4 id="org99d2fa1"><span class="section-number-4">2.2.3</span> Access functions</h4>
|
||||
<div class="outline-text-4" id="text-2-2-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span>
|
||||
@ -1482,7 +1482,7 @@ which is a matrix-vector product.
|
||||
<p>
|
||||
Returns the array of values, gradients an Laplacian of primitive
|
||||
basis functions evaluated at the current coordinates.
|
||||
See section <a href="#org38abbfd">3.2</a>.
|
||||
See section <a href="#org828bd85">3.2</a>.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
@ -1495,7 +1495,7 @@ See section <a href="#org38abbfd">3.2</a>.
|
||||
|
||||
<p>
|
||||
Returns the array of values, gradients an Laplacian of contracted shells
|
||||
evaluated at the current coordinates. See section <a href="#org6e1a31e">3.3</a>.
|
||||
evaluated at the current coordinates. See section <a href="#org9f2c291">3.3</a>.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
@ -1509,7 +1509,7 @@ evaluated at the current coordinates. See section <a href="#org6e1a31e">3.3</a>.
|
||||
<p>
|
||||
Returns the array of values, gradients an Laplacian of the atomic orbitals
|
||||
evaluated at the current coordinates.
|
||||
See section <a href="#org6e705a0">5</a>.
|
||||
See section <a href="#orga803c04">5</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -1534,7 +1534,7 @@ Uses the given array to compute the VGL.
|
||||
|
||||
<p>
|
||||
Returns the array of values of the atomic orbitals evaluated at
|
||||
the current coordinates. See section <a href="#org6e705a0">5</a>.
|
||||
the current coordinates. See section <a href="#orga803c04">5</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -1553,12 +1553,12 @@ Uses the given array to compute the value.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orged7721a" class="outline-2">
|
||||
<h2 id="orged7721a"><span class="section-number-2">3</span> Radial part</h2>
|
||||
<div id="outline-container-org463f266" class="outline-2">
|
||||
<h2 id="org463f266"><span class="section-number-2">3</span> Radial part</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org0123e14" class="outline-3">
|
||||
<h3 id="org0123e14"><span class="section-number-3">3.1</span> General functions for Gaussian basis functions</h3>
|
||||
<div id="outline-container-org31777ff" class="outline-3">
|
||||
<h3 id="org31777ff"><span class="section-number-3">3.1</span> General functions for Gaussian basis functions</h3>
|
||||
<div class="outline-text-3" id="text-3-1">
|
||||
<p>
|
||||
<code>qmckl_ao_gaussian_vgl</code> computes the values, gradients and
|
||||
@ -1729,10 +1729,10 @@ Requirements:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org38abbfd" class="outline-3">
|
||||
<h3 id="org38abbfd"><span class="section-number-3">3.2</span> Computation of primitives</h3>
|
||||
<div id="outline-container-org828bd85" class="outline-3">
|
||||
<h3 id="org828bd85"><span class="section-number-3">3.2</span> Computation of primitives</h3>
|
||||
<div class="outline-text-3" id="text-3-2">
|
||||
<table id="org7f4de42" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org75fcc73" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1891,10 +1891,10 @@ Requirements:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6e1a31e" class="outline-3">
|
||||
<h3 id="org6e1a31e"><span class="section-number-3">3.3</span> Computation of shells</h3>
|
||||
<div id="outline-container-org9f2c291" class="outline-3">
|
||||
<h3 id="org9f2c291"><span class="section-number-3">3.3</span> Computation of shells</h3>
|
||||
<div class="outline-text-3" id="text-3-3">
|
||||
<table id="org49a62af" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgea92364" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2146,8 +2146,8 @@ Requirements:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgce93b6f" class="outline-2">
|
||||
<h2 id="orgce93b6f"><span class="section-number-2">4</span> Polynomial part</h2>
|
||||
<div id="outline-container-org3d8ada2" class="outline-2">
|
||||
<h2 id="org3d8ada2"><span class="section-number-2">4</span> Polynomial part</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
<p>
|
||||
Going from the atomic basis set to AOs implies a systematic
|
||||
@ -2167,8 +2167,8 @@ f & : & f_{xxx}, f_{xxy}, f_{xxz}, f_{xyy}, f_{xyz}, f_{xzz}, f_{yyy}, f_{yyz},
|
||||
\end{eqnarray}
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org28ea178" class="outline-3">
|
||||
<h3 id="org28ea178"><span class="section-number-3">4.1</span> General functions for Powers of \(x-X_i\)</h3>
|
||||
<div id="outline-container-org296bf29" class="outline-3">
|
||||
<h3 id="org296bf29"><span class="section-number-3">4.1</span> General functions for Powers of \(x-X_i\)</h3>
|
||||
<div class="outline-text-3" id="text-4-1">
|
||||
<p>
|
||||
The <code>qmckl_ao_power</code> function computes all the powers of the <code>n</code>
|
||||
@ -2180,7 +2180,7 @@ the \(n\) points:
|
||||
\[ P_{ik} = X_i^k \]
|
||||
</p>
|
||||
|
||||
<table id="orgfdd5c00" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org96347ed" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2318,8 +2318,8 @@ Requirements:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org471606a" class="outline-3">
|
||||
<h3 id="org471606a"><span class="section-number-3">4.2</span> General functions for Value, Gradient and Laplacian of a polynomial</h3>
|
||||
<div id="outline-container-orgcabee99" class="outline-3">
|
||||
<h3 id="orgcabee99"><span class="section-number-3">4.2</span> General functions for Value, Gradient and Laplacian of a polynomial</h3>
|
||||
<div class="outline-text-3" id="text-4-2">
|
||||
<p>
|
||||
A polynomial is centered on a nucleus \(\mathbf{R}_i\)
|
||||
@ -2364,7 +2364,7 @@ Laplacians at a given point in space, of all polynomials with an
|
||||
angular momentum up to <code>lmax</code>.
|
||||
</p>
|
||||
|
||||
<table id="orga78f106" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org98059b5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3128,18 +3128,18 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6e705a0" class="outline-2">
|
||||
<h2 id="org6e705a0"><span class="section-number-2">5</span> Combining radial and polynomial parts</h2>
|
||||
<div id="outline-container-orga803c04" class="outline-2">
|
||||
<h2 id="orga803c04"><span class="section-number-2">5</span> Combining radial and polynomial parts</h2>
|
||||
<div class="outline-text-2" id="text-5">
|
||||
</div>
|
||||
<div id="outline-container-org6bfbadb" class="outline-3">
|
||||
<h3 id="org6bfbadb"><span class="section-number-3">5.1</span> Values only</h3>
|
||||
<div id="outline-container-org806ea0c" class="outline-3">
|
||||
<h3 id="org806ea0c"><span class="section-number-3">5.1</span> Values only</h3>
|
||||
<div class="outline-text-3" id="text-5-1">
|
||||
</div>
|
||||
<div id="outline-container-org883e298" class="outline-4">
|
||||
<h4 id="org883e298"><span class="section-number-4">5.1.1</span> Unoptimized version</h4>
|
||||
<div id="outline-container-org606ca16" class="outline-4">
|
||||
<h4 id="org606ca16"><span class="section-number-4">5.1.1</span> Unoptimized version</h4>
|
||||
<div class="outline-text-4" id="text-5-1-1">
|
||||
<table id="org0e300e6" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org4a1244d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3375,10 +3375,10 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8690bc9" class="outline-4">
|
||||
<h4 id="org8690bc9"><span class="section-number-4">5.1.2</span> HPC version</h4>
|
||||
<div id="outline-container-orga9c8b22" class="outline-4">
|
||||
<h4 id="orga9c8b22"><span class="section-number-4">5.1.2</span> HPC version</h4>
|
||||
<div class="outline-text-4" id="text-5-1-2">
|
||||
<table id="org886aaa9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgeeffe4f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3536,8 +3536,8 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgaec2465" class="outline-4">
|
||||
<h4 id="orgaec2465"><span class="section-number-4">5.1.3</span> Interfaces</h4>
|
||||
<div id="outline-container-org5c15ff5" class="outline-4">
|
||||
<h4 id="org5c15ff5"><span class="section-number-4">5.1.3</span> Interfaces</h4>
|
||||
<div class="outline-text-4" id="text-5-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_compute_ao_value_doc</span> (
|
||||
@ -3586,14 +3586,14 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf486d2a" class="outline-3">
|
||||
<h3 id="orgf486d2a"><span class="section-number-3">5.2</span> Value, gradients, Laplacian</h3>
|
||||
<div id="outline-container-orgcd94545" class="outline-3">
|
||||
<h3 id="orgcd94545"><span class="section-number-3">5.2</span> Value, gradients, Laplacian</h3>
|
||||
<div class="outline-text-3" id="text-5-2">
|
||||
</div>
|
||||
<div id="outline-container-org501f128" class="outline-4">
|
||||
<h4 id="org501f128"><span class="section-number-4">5.2.1</span> Unoptimized version</h4>
|
||||
<div id="outline-container-org00a551b" class="outline-4">
|
||||
<h4 id="org00a551b"><span class="section-number-4">5.2.1</span> Unoptimized version</h4>
|
||||
<div class="outline-text-4" id="text-5-2-1">
|
||||
<table id="orgbca587f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org45a391a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3858,10 +3858,10 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7867324" class="outline-4">
|
||||
<h4 id="org7867324"><span class="section-number-4">5.2.2</span> HPC version</h4>
|
||||
<div id="outline-container-org0f9c71d" class="outline-4">
|
||||
<h4 id="org0f9c71d"><span class="section-number-4">5.2.2</span> HPC version</h4>
|
||||
<div class="outline-text-4" id="text-5-2-2">
|
||||
<table id="org6697343" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgef1083d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -4020,8 +4020,8 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgf11487a" class="outline-4">
|
||||
<h4 id="orgf11487a"><span class="section-number-4">5.2.3</span> Interfaces</h4>
|
||||
<div id="outline-container-org43520c7" class="outline-4">
|
||||
<h4 id="org43520c7"><span class="section-number-4">5.2.3</span> Interfaces</h4>
|
||||
<div class="outline-text-4" id="text-5-2-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_compute_ao_vgl_doc</span> (
|
||||
@ -4073,7 +4073,7 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:35</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
172
qmckl_blas.html
172
qmckl_blas.html
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:34 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>BLAS functions</title>
|
||||
@ -333,54 +333,54 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orga407ab9">-</a></li>
|
||||
<li><a href="#org2e8d7d4">1. Data types</a>
|
||||
<li><a href="#org1218cf0">-</a></li>
|
||||
<li><a href="#orgb5d9f60">1. Data types</a>
|
||||
<ul>
|
||||
<li><a href="#org5deeab4">1.1. Vector</a></li>
|
||||
<li><a href="#orge3938fd">1.2. Matrix</a></li>
|
||||
<li><a href="#org96e5198">1.3. Tensor</a></li>
|
||||
<li><a href="#org0388006">1.4. Reshaping</a>
|
||||
<li><a href="#org43d9b19">1.1. Vector</a></li>
|
||||
<li><a href="#org7919187">1.2. Matrix</a></li>
|
||||
<li><a href="#org08664aa">1.3. Tensor</a></li>
|
||||
<li><a href="#org25ba3bd">1.4. Reshaping</a>
|
||||
<ul>
|
||||
<li><a href="#org030b5f5">1.4.1. Vector -> Matrix</a></li>
|
||||
<li><a href="#org983a5a0">1.4.2. Vector -> Tensor</a></li>
|
||||
<li><a href="#orgb316da3">1.4.3. Matrix -> Vector</a></li>
|
||||
<li><a href="#org58119a8">1.4.4. Matrix -> Tensor</a></li>
|
||||
<li><a href="#orgadce7bc">1.4.5. Tensor -> Vector</a></li>
|
||||
<li><a href="#orgdd48d0d">1.4.6. Tensor -> Matrix</a></li>
|
||||
<li><a href="#org1a698b6">1.4.1. Vector -> Matrix</a></li>
|
||||
<li><a href="#orgdeec439">1.4.2. Vector -> Tensor</a></li>
|
||||
<li><a href="#orgce944e6">1.4.3. Matrix -> Vector</a></li>
|
||||
<li><a href="#orgfea75d7">1.4.4. Matrix -> Tensor</a></li>
|
||||
<li><a href="#org602aa15">1.4.5. Tensor -> Vector</a></li>
|
||||
<li><a href="#orgc80524d">1.4.6. Tensor -> Matrix</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org6a91c10">1.5. Access macros</a></li>
|
||||
<li><a href="#orgf0993ed">1.6. Set all elements</a>
|
||||
<li><a href="#orgd9462f2">1.5. Access macros</a></li>
|
||||
<li><a href="#org50e7c90">1.6. Set all elements</a>
|
||||
<ul>
|
||||
<li><a href="#orge7030b3">1.6.1. Vector</a></li>
|
||||
<li><a href="#org50bc55c">1.6.2. Matrix</a></li>
|
||||
<li><a href="#org173aeec">1.6.3. Tensor</a></li>
|
||||
<li><a href="#orgdefa61a">1.6.1. Vector</a></li>
|
||||
<li><a href="#org75d0bce">1.6.2. Matrix</a></li>
|
||||
<li><a href="#org597318d">1.6.3. Tensor</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgcc99d47">1.7. Copy to/from to <code>double*</code></a></li>
|
||||
<li><a href="#org9a893ef">1.7. Copy to/from to <code>double*</code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org81b03d9">2. Matrix operations</a>
|
||||
<li><a href="#org45a7f7b">2. Matrix operations</a>
|
||||
<ul>
|
||||
<li><a href="#orgc05a69a">2.1. <code>qmckl_dgemm</code></a></li>
|
||||
<li><a href="#org4e37fda">2.2. <code>qmckl_dgemm_safe</code></a></li>
|
||||
<li><a href="#org5f04ada">2.3. <code>qmckl_matmul</code></a></li>
|
||||
<li><a href="#org9c18b9c">2.4. <code>qmckl_adjugate</code></a></li>
|
||||
<li><a href="#orgac96d80">2.5. <code>qmckl_adjugate_safe</code></a>
|
||||
<li><a href="#org93032d0">2.1. <code>qmckl_dgemm</code></a></li>
|
||||
<li><a href="#org55a9086">2.2. <code>qmckl_dgemm_safe</code></a></li>
|
||||
<li><a href="#org4f3cd9c">2.3. <code>qmckl_matmul</code></a></li>
|
||||
<li><a href="#orgc9f3c85">2.4. <code>qmckl_adjugate</code></a></li>
|
||||
<li><a href="#org351d5c6">2.5. <code>qmckl_adjugate_safe</code></a>
|
||||
<ul>
|
||||
<li><a href="#org32bd9e6">2.5.1. C interface</a></li>
|
||||
<li><a href="#orgb6a4586">2.5.1. C interface</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org574030d">2.6. <code>qmckl_transpose</code></a></li>
|
||||
<li><a href="#org07838e9">2.6. <code>qmckl_transpose</code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga407ab9" class="outline-2">
|
||||
<h2 id="orga407ab9">-</h2>
|
||||
<div class="outline-text-2" id="text-orga407ab9">
|
||||
<div id="outline-container-org1218cf0" class="outline-2">
|
||||
<h2 id="org1218cf0">-</h2>
|
||||
<div class="outline-text-2" id="text-org1218cf0">
|
||||
<p>
|
||||
Basic linear algebra data types and operations are described in this file.
|
||||
The data types are private, so that HPC implementations can use
|
||||
@ -394,12 +394,12 @@ are not intended to be passed to external codes.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2e8d7d4" class="outline-2">
|
||||
<h2 id="org2e8d7d4"><span class="section-number-2">1</span> Data types</h2>
|
||||
<div id="outline-container-orgb5d9f60" class="outline-2">
|
||||
<h2 id="orgb5d9f60"><span class="section-number-2">1</span> Data types</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-org5deeab4" class="outline-3">
|
||||
<h3 id="org5deeab4"><span class="section-number-3">1.1</span> Vector</h3>
|
||||
<div id="outline-container-org43d9b19" class="outline-3">
|
||||
<h3 id="org43d9b19"><span class="section-number-3">1.1</span> Vector</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
@ -453,8 +453,8 @@ Allocates a new vector. If the allocation failed the size is zero.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge3938fd" class="outline-3">
|
||||
<h3 id="orge3938fd"><span class="section-number-3">1.2</span> Matrix</h3>
|
||||
<div id="outline-container-org7919187" class="outline-3">
|
||||
<h3 id="org7919187"><span class="section-number-3">1.2</span> Matrix</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
@ -514,8 +514,8 @@ Allocates a new matrix. If the allocation failed the sizes are zero.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org96e5198" class="outline-3">
|
||||
<h3 id="org96e5198"><span class="section-number-3">1.3</span> Tensor</h3>
|
||||
<div id="outline-container-org08664aa" class="outline-3">
|
||||
<h3 id="org08664aa"><span class="section-number-3">1.3</span> Tensor</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
@ -582,16 +582,16 @@ is zero.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0388006" class="outline-3">
|
||||
<h3 id="org0388006"><span class="section-number-3">1.4</span> Reshaping</h3>
|
||||
<div id="outline-container-org25ba3bd" class="outline-3">
|
||||
<h3 id="org25ba3bd"><span class="section-number-3">1.4</span> Reshaping</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<p>
|
||||
Reshaping occurs in-place and the pointer to the data is copied.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org030b5f5" class="outline-4">
|
||||
<h4 id="org030b5f5"><span class="section-number-4">1.4.1</span> Vector -> Matrix</h4>
|
||||
<div id="outline-container-org1a698b6" class="outline-4">
|
||||
<h4 id="org1a698b6"><span class="section-number-4">1.4.1</span> Vector -> Matrix</h4>
|
||||
<div class="outline-text-4" id="text-1-4-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_matrix</span>
|
||||
@ -607,8 +607,8 @@ Reshapes a vector into a matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org983a5a0" class="outline-4">
|
||||
<h4 id="org983a5a0"><span class="section-number-4">1.4.2</span> Vector -> Tensor</h4>
|
||||
<div id="outline-container-orgdeec439" class="outline-4">
|
||||
<h4 id="orgdeec439"><span class="section-number-4">1.4.2</span> Vector -> Tensor</h4>
|
||||
<div class="outline-text-4" id="text-1-4-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_tensor</span>
|
||||
@ -624,8 +624,8 @@ Reshapes a vector into a tensor.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb316da3" class="outline-4">
|
||||
<h4 id="orgb316da3"><span class="section-number-4">1.4.3</span> Matrix -> Vector</h4>
|
||||
<div id="outline-container-orgce944e6" class="outline-4">
|
||||
<h4 id="orgce944e6"><span class="section-number-4">1.4.3</span> Matrix -> Vector</h4>
|
||||
<div class="outline-text-4" id="text-1-4-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_vector</span>
|
||||
@ -639,8 +639,8 @@ Reshapes a matrix into a vector.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org58119a8" class="outline-4">
|
||||
<h4 id="org58119a8"><span class="section-number-4">1.4.4</span> Matrix -> Tensor</h4>
|
||||
<div id="outline-container-orgfea75d7" class="outline-4">
|
||||
<h4 id="orgfea75d7"><span class="section-number-4">1.4.4</span> Matrix -> Tensor</h4>
|
||||
<div class="outline-text-4" id="text-1-4-4">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_tensor</span>
|
||||
@ -656,8 +656,8 @@ Reshapes a matrix into a tensor.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgadce7bc" class="outline-4">
|
||||
<h4 id="orgadce7bc"><span class="section-number-4">1.4.5</span> Tensor -> Vector</h4>
|
||||
<div id="outline-container-org602aa15" class="outline-4">
|
||||
<h4 id="org602aa15"><span class="section-number-4">1.4.5</span> Tensor -> Vector</h4>
|
||||
<div class="outline-text-4" id="text-1-4-5">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_vector</span>
|
||||
@ -671,8 +671,8 @@ Reshapes a tensor into a vector.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdd48d0d" class="outline-4">
|
||||
<h4 id="orgdd48d0d"><span class="section-number-4">1.4.6</span> Tensor -> Matrix</h4>
|
||||
<div id="outline-container-orgc80524d" class="outline-4">
|
||||
<h4 id="orgc80524d"><span class="section-number-4">1.4.6</span> Tensor -> Matrix</h4>
|
||||
<div class="outline-text-4" id="text-1-4-6">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_matrix</span>
|
||||
@ -689,8 +689,8 @@ Reshapes a tensor into a vector.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6a91c10" class="outline-3">
|
||||
<h3 id="org6a91c10"><span class="section-number-3">1.5</span> Access macros</h3>
|
||||
<div id="outline-container-orgd9462f2" class="outline-3">
|
||||
<h3 id="orgd9462f2"><span class="section-number-3">1.5</span> Access macros</h3>
|
||||
<div class="outline-text-3" id="text-1-5">
|
||||
<p>
|
||||
Macros are provided to ease the access to vectors, matrices and
|
||||
@ -714,12 +714,12 @@ For example:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf0993ed" class="outline-3">
|
||||
<h3 id="orgf0993ed"><span class="section-number-3">1.6</span> Set all elements</h3>
|
||||
<div id="outline-container-org50e7c90" class="outline-3">
|
||||
<h3 id="org50e7c90"><span class="section-number-3">1.6</span> Set all elements</h3>
|
||||
<div class="outline-text-3" id="text-1-6">
|
||||
</div>
|
||||
<div id="outline-container-orge7030b3" class="outline-4">
|
||||
<h4 id="orge7030b3"><span class="section-number-4">1.6.1</span> Vector</h4>
|
||||
<div id="outline-container-orgdefa61a" class="outline-4">
|
||||
<h4 id="orgdefa61a"><span class="section-number-4">1.6.1</span> Vector</h4>
|
||||
<div class="outline-text-4" id="text-1-6-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_vector</span>
|
||||
@ -729,8 +729,8 @@ For example:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org50bc55c" class="outline-4">
|
||||
<h4 id="org50bc55c"><span class="section-number-4">1.6.2</span> Matrix</h4>
|
||||
<div id="outline-container-org75d0bce" class="outline-4">
|
||||
<h4 id="org75d0bce"><span class="section-number-4">1.6.2</span> Matrix</h4>
|
||||
<div class="outline-text-4" id="text-1-6-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_matrix</span>
|
||||
@ -740,8 +740,8 @@ For example:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org173aeec" class="outline-4">
|
||||
<h4 id="org173aeec"><span class="section-number-4">1.6.3</span> Tensor</h4>
|
||||
<div id="outline-container-org597318d" class="outline-4">
|
||||
<h4 id="org597318d"><span class="section-number-4">1.6.3</span> Tensor</h4>
|
||||
<div class="outline-text-4" id="text-1-6-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_tensor</span>
|
||||
@ -752,8 +752,8 @@ For example:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcc99d47" class="outline-3">
|
||||
<h3 id="orgcc99d47"><span class="section-number-3">1.7</span> Copy to/from to <code>double*</code></h3>
|
||||
<div id="outline-container-org9a893ef" class="outline-3">
|
||||
<h3 id="org9a893ef"><span class="section-number-3">1.7</span> Copy to/from to <code>double*</code></h3>
|
||||
<div class="outline-text-3" id="text-1-7">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span>
|
||||
@ -836,12 +836,12 @@ Converts a <code>double*</code> to a tensor.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org81b03d9" class="outline-2">
|
||||
<h2 id="org81b03d9"><span class="section-number-2">2</span> Matrix operations</h2>
|
||||
<div id="outline-container-org45a7f7b" class="outline-2">
|
||||
<h2 id="org45a7f7b"><span class="section-number-2">2</span> Matrix operations</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-orgc05a69a" class="outline-3">
|
||||
<h3 id="orgc05a69a"><span class="section-number-3">2.1</span> <code>qmckl_dgemm</code></h3>
|
||||
<div id="outline-container-org93032d0" class="outline-3">
|
||||
<h3 id="org93032d0"><span class="section-number-3">2.1</span> <code>qmckl_dgemm</code></h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
Matrix multiplication with a BLAS interface:
|
||||
@ -853,7 +853,7 @@ Matrix multiplication with a BLAS interface:
|
||||
\]
|
||||
</p>
|
||||
|
||||
<table id="orga56eaed" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgca6cda8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1012,8 +1012,8 @@ Requirements:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4e37fda" class="outline-3">
|
||||
<h3 id="org4e37fda"><span class="section-number-3">2.2</span> <code>qmckl_dgemm_safe</code></h3>
|
||||
<div id="outline-container-org55a9086" class="outline-3">
|
||||
<h3 id="org55a9086"><span class="section-number-3">2.2</span> <code>qmckl_dgemm_safe</code></h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
"Size-safe" proxy function with the same functionality as <code>qmckl_dgemm</code>
|
||||
@ -1022,7 +1022,7 @@ are required primarily for the Python API, where compatibility with
|
||||
NumPy arrays implies that sizes of the input and output arrays are provided.
|
||||
</p>
|
||||
|
||||
<table id="orgfd7a11b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org65952a3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1208,8 +1208,8 @@ Requirements:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5f04ada" class="outline-3">
|
||||
<h3 id="org5f04ada"><span class="section-number-3">2.3</span> <code>qmckl_matmul</code></h3>
|
||||
<div id="outline-container-org4f3cd9c" class="outline-3">
|
||||
<h3 id="org4f3cd9c"><span class="section-number-3">2.3</span> <code>qmckl_matmul</code></h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
Matrix multiplication using the <code>qmckl_matrix</code> data type:
|
||||
@ -1221,7 +1221,7 @@ Matrix multiplication using the <code>qmckl_matrix</code> data type:
|
||||
\]
|
||||
</p>
|
||||
|
||||
<table id="org5e02589" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org9e19ca9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1315,8 +1315,8 @@ Matrix multiplication using the <code>qmckl_matrix</code> data type:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9c18b9c" class="outline-3">
|
||||
<h3 id="org9c18b9c"><span class="section-number-3">2.4</span> <code>qmckl_adjugate</code></h3>
|
||||
<div id="outline-container-orgc9f3c85" class="outline-3">
|
||||
<h3 id="orgc9f3c85"><span class="section-number-3">2.4</span> <code>qmckl_adjugate</code></h3>
|
||||
<div class="outline-text-3" id="text-2-4">
|
||||
<p>
|
||||
Given a matrix \(\mathbf{A}\), the adjugate matrix
|
||||
@ -1334,7 +1334,7 @@ of \(\mathbf{A}\).
|
||||
See also: <a href="https://en.wikipedia.org/wiki/Adjugate_matrix">https://en.wikipedia.org/wiki/Adjugate_matrix</a>
|
||||
</p>
|
||||
|
||||
<table id="orgf8af2b0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org174bce6" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1530,8 +1530,8 @@ determinant with the inverse:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgac96d80" class="outline-3">
|
||||
<h3 id="orgac96d80"><span class="section-number-3">2.5</span> <code>qmckl_adjugate_safe</code></h3>
|
||||
<div id="outline-container-org351d5c6" class="outline-3">
|
||||
<h3 id="org351d5c6"><span class="section-number-3">2.5</span> <code>qmckl_adjugate_safe</code></h3>
|
||||
<div class="outline-text-3" id="text-2-5">
|
||||
<p>
|
||||
"Size-safe" proxy function with the same functionality as <code>qmckl_adjugate</code>
|
||||
@ -1541,7 +1541,7 @@ NumPy arrays implies that sizes of the input and output arrays are provided.
|
||||
</p>
|
||||
|
||||
|
||||
<table id="org0a46613" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orga7aa00c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1663,13 +1663,13 @@ LAPACK library.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org32bd9e6" class="outline-4">
|
||||
<h4 id="org32bd9e6"><span class="section-number-4">2.5.1</span> C interface</h4>
|
||||
<div id="outline-container-orgb6a4586" class="outline-4">
|
||||
<h4 id="orgb6a4586"><span class="section-number-4">2.5.1</span> C interface</h4>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org574030d" class="outline-3">
|
||||
<h3 id="org574030d"><span class="section-number-3">2.6</span> <code>qmckl_transpose</code></h3>
|
||||
<div id="outline-container-org07838e9" class="outline-3">
|
||||
<h3 id="org07838e9"><span class="section-number-3">2.6</span> <code>qmckl_transpose</code></h3>
|
||||
<div class="outline-text-3" id="text-2-6">
|
||||
<p>
|
||||
Transposes a matrix: \(A^\dagger_{ji} = A_{ij}\).
|
||||
@ -1732,7 +1732,7 @@ Transposes a matrix: \(A^\dagger_{ji} = A_{ij}\).
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:34</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:35 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Context</title>
|
||||
@ -311,21 +311,21 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org0aefce6">1. Context handling</a>
|
||||
<li><a href="#org20d2485">1. Context handling</a>
|
||||
<ul>
|
||||
<li><a href="#orgcc39f7f">1.1. Data structure</a></li>
|
||||
<li><a href="#orgbddd1ad">1.2. Creation</a></li>
|
||||
<li><a href="#org9d84fd3">1.3. Locking</a></li>
|
||||
<li><a href="#orga9add0f">1.4. <span class="todo TODO">TODO</span> Copy</a></li>
|
||||
<li><a href="#org873aa6c">1.5. Destroy</a></li>
|
||||
<li><a href="#org36ef433">1.1. Data structure</a></li>
|
||||
<li><a href="#org852f597">1.2. Creation</a></li>
|
||||
<li><a href="#orgc07acb1">1.3. Locking</a></li>
|
||||
<li><a href="#org744ac0a">1.4. <span class="todo TODO">TODO</span> Copy</a></li>
|
||||
<li><a href="#org0590bc4">1.5. Destroy</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0aefce6" class="outline-2">
|
||||
<h2 id="org0aefce6"><span class="section-number-2">1</span> Context handling</h2>
|
||||
<div id="outline-container-org20d2485" class="outline-2">
|
||||
<h2 id="org20d2485"><span class="section-number-2">1</span> Context handling</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The context variable is a handle for the state of the library,
|
||||
@ -338,7 +338,7 @@ A value of <code>QMCKL_NULL_CONTEXT</code> for the context is equivalent to a
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c" id="orgb773ae9"><span style="color: #a020f0;">typedef</span> <span style="color: #228b22;">int64_t</span> <span style="color: #228b22;">qmckl_context</span> ;
|
||||
<pre class="src src-c" id="orgdae8f23"><span style="color: #a020f0;">typedef</span> <span style="color: #228b22;">int64_t</span> <span style="color: #228b22;">qmckl_context</span> ;
|
||||
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">QMCKL_NULL_CONTEXT</span> (qmckl_context) 0
|
||||
</pre>
|
||||
</div>
|
||||
@ -356,8 +356,8 @@ and <code>ctx</code> is a <code>qmckl_context_struct*</code> pointer.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcc39f7f" class="outline-3">
|
||||
<h3 id="orgcc39f7f"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org36ef433" class="outline-3">
|
||||
<h3 id="org36ef433"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<p>
|
||||
A tag is used internally to check if the memory domain pointed
|
||||
@ -385,7 +385,7 @@ to be recomputed. The date is incremented when the context is touched.
|
||||
|
||||
<p>
|
||||
When a new element is added to the context, the functions
|
||||
<a href="#orgbddd1ad"><code>qmckl_context_create</code></a> <a href="#org873aa6c"><code>qmckl_context_destroy</code></a> and <a href="#orga9add0f"><code>qmckl_context_copy</code></a>
|
||||
<a href="#org852f597"><code>qmckl_context_create</code></a> <a href="#org0590bc4"><code>qmckl_context_destroy</code></a> and <a href="#org744ac0a"><code>qmckl_context_copy</code></a>
|
||||
should be updated in order to make deep copies.
|
||||
</p>
|
||||
|
||||
@ -406,8 +406,8 @@ This has the effect to increment the date of the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbddd1ad" class="outline-3">
|
||||
<h3 id="orgbddd1ad"><span class="section-number-3">1.2</span> Creation</h3>
|
||||
<div id="outline-container-org852f597" class="outline-3">
|
||||
<h3 id="org852f597"><span class="section-number-3">1.2</span> Creation</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
To create a new context, <code>qmckl_context_create()</code> should be used.
|
||||
@ -424,8 +424,8 @@ To create a new context, <code>qmckl_context_create()</code> should be used.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org9d84fd3" class="outline-3">
|
||||
<h3 id="org9d84fd3"><span class="section-number-3">1.3</span> Locking</h3>
|
||||
<div id="outline-container-orgc07acb1" class="outline-3">
|
||||
<h3 id="orgc07acb1"><span class="section-number-3">1.3</span> Locking</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
For thread safety, the context may be locked/unlocked. The lock is
|
||||
@ -441,8 +441,8 @@ number of times the thread has locked it is saved in the
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orga9add0f" class="outline-3">
|
||||
<h3 id="orga9add0f"><span class="section-number-3">1.4</span> <span class="todo TODO">TODO</span> Copy</h3>
|
||||
<div id="outline-container-org744ac0a" class="outline-3">
|
||||
<h3 id="org744ac0a"><span class="section-number-3">1.4</span> <span class="todo TODO">TODO</span> Copy</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<p>
|
||||
<code>qmckl_context_copy</code> makes a deep copy of a context. It returns
|
||||
@ -450,8 +450,8 @@ number of times the thread has locked it is saved in the
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org873aa6c" class="outline-3">
|
||||
<h3 id="org873aa6c"><span class="section-number-3">1.5</span> Destroy</h3>
|
||||
<div id="outline-container-org0590bc4" class="outline-3">
|
||||
<h3 id="org0590bc4"><span class="section-number-3">1.5</span> Destroy</h3>
|
||||
<div class="outline-text-3" id="text-1-5">
|
||||
<p>
|
||||
The context is destroyed with <code>qmckl_context_destroy</code>, leaving the ancestors untouched.
|
||||
@ -469,7 +469,7 @@ It frees the context, and returns the previous context.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:35</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:35 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Slater Determinant</title>
|
||||
@ -311,32 +311,32 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgd5ddc96">1. Context</a>
|
||||
<li><a href="#orgc078955">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#orgbda24e8">1.1. Data structure</a></li>
|
||||
<li><a href="#org9542995">1.2. Access functions</a></li>
|
||||
<li><a href="#org3a92057">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org3c7b1a8">1.4. Fortran Interfaces</a></li>
|
||||
<li><a href="#org997ac63">1.5. Test</a></li>
|
||||
<li><a href="#orgeb06abd">1.1. Data structure</a></li>
|
||||
<li><a href="#orgf5f2bd4">1.2. Access functions</a></li>
|
||||
<li><a href="#org8c86b61">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org85ab1ee">1.4. Fortran Interfaces</a></li>
|
||||
<li><a href="#org372bda3">1.5. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org17fd7aa">2. Computation</a>
|
||||
<li><a href="#org7f763db">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#org66f91b9">2.1. Determinant matrix</a>
|
||||
<li><a href="#org568d454">2.1. Determinant matrix</a>
|
||||
<ul>
|
||||
<li><a href="#orgef8794c">2.1.1. Get</a></li>
|
||||
<li><a href="#org97b59b2">2.1.2. Provide</a></li>
|
||||
<li><a href="#org261cb90">2.1.3. Compute alpha</a></li>
|
||||
<li><a href="#org908273d">2.1.4. Compute beta</a></li>
|
||||
<li><a href="#orgcb5967e">2.1.5. Test</a></li>
|
||||
<li><a href="#org605fef4">2.1.1. Get</a></li>
|
||||
<li><a href="#orgaaca7f5">2.1.2. Provide</a></li>
|
||||
<li><a href="#orgd16c7c3">2.1.3. Compute alpha</a></li>
|
||||
<li><a href="#org158a2f4">2.1.4. Compute beta</a></li>
|
||||
<li><a href="#org4622ddf">2.1.5. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orge726745">2.2. Inverse of Determinant matrix</a>
|
||||
<li><a href="#org84b019e">2.2. Inverse of Determinant matrix</a>
|
||||
<ul>
|
||||
<li><a href="#org1d44b4d">2.2.1. Get</a></li>
|
||||
<li><a href="#org07914e3">2.2.2. Provide</a></li>
|
||||
<li><a href="#orgb3b1653">2.2.3. Compute alpha</a></li>
|
||||
<li><a href="#org51534c8">2.2.4. Compute beta</a></li>
|
||||
<li><a href="#orge3517e4">2.2.1. Get</a></li>
|
||||
<li><a href="#org83ec566">2.2.2. Provide</a></li>
|
||||
<li><a href="#org80da135">2.2.3. Compute alpha</a></li>
|
||||
<li><a href="#org4b6f304">2.2.4. Compute beta</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -345,8 +345,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd5ddc96" class="outline-2">
|
||||
<h2 id="orgd5ddc96"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-orgc078955" class="outline-2">
|
||||
<h2 id="orgc078955"><span class="section-number-2">1</span> Context</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The following arrays are stored in the context:
|
||||
@ -522,8 +522,8 @@ Computed data:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbda24e8" class="outline-3">
|
||||
<h3 id="orgbda24e8"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-orgeb06abd" class="outline-3">
|
||||
<h3 id="orgeb06abd"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> <span style="color: #228b22;">qmckl_determinant_struct</span> {
|
||||
@ -591,8 +591,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9542995" class="outline-3">
|
||||
<h3 id="org9542995"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-orgf5f2bd4" class="outline-3">
|
||||
<h3 id="orgf5f2bd4"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
When all the data for the slater determinants have been provided, the following
|
||||
@ -606,8 +606,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3a92057" class="outline-3">
|
||||
<h3 id="org3a92057"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org8c86b61" class="outline-3">
|
||||
<h3 id="org8c86b61"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
To set the basis set, all the following functions need to be
|
||||
@ -618,8 +618,8 @@ called.
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_determinant_type</span> (<span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">char</span> <span style="color: #a0522d;">t</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_determinant_det_num_alpha</span> (<span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">det_num_alpha</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_determinant_det_num_beta</span> (<span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">det_num_beta</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_determinant_mo_index_alpha</span> (<span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span>* <span style="color: #a0522d;">mo_index_alpha</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_determinant_mo_index_beta</span> (<span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span>* <span style="color: #a0522d;">mo_index_beta</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_determinant_mo_index_alpha</span> (<span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span>* <span style="color: #a0522d;">mo_index_alpha</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">size_max</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_determinant_mo_index_beta</span> (<span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span>* <span style="color: #a0522d;">mo_index_beta</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">size_max</span>);
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
@ -630,24 +630,24 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3c7b1a8" class="outline-3">
|
||||
<h3 id="org3c7b1a8"><span class="section-number-3">1.4</span> Fortran Interfaces</h3>
|
||||
<div id="outline-container-org85ab1ee" class="outline-3">
|
||||
<h3 id="org85ab1ee"><span class="section-number-3">1.4</span> Fortran Interfaces</h3>
|
||||
</div>
|
||||
<div id="outline-container-org997ac63" class="outline-3">
|
||||
<h3 id="org997ac63"><span class="section-number-3">1.5</span> Test</h3>
|
||||
<div id="outline-container-org372bda3" class="outline-3">
|
||||
<h3 id="org372bda3"><span class="section-number-3">1.5</span> Test</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org17fd7aa" class="outline-2">
|
||||
<h2 id="org17fd7aa"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org7f763db" class="outline-2">
|
||||
<h2 id="org7f763db"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org66f91b9" class="outline-3">
|
||||
<h3 id="org66f91b9"><span class="section-number-3">2.1</span> Determinant matrix</h3>
|
||||
<div id="outline-container-org568d454" class="outline-3">
|
||||
<h3 id="org568d454"><span class="section-number-3">2.1</span> Determinant matrix</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgef8794c" class="outline-4">
|
||||
<h4 id="orgef8794c"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-org605fef4" class="outline-4">
|
||||
<h4 id="org605fef4"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_det_vgl_alpha</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">det_vgl_alpha</span>);
|
||||
@ -657,14 +657,14 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org97b59b2" class="outline-4">
|
||||
<h4 id="org97b59b2"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
<div id="outline-container-orgaaca7f5" class="outline-4">
|
||||
<h4 id="orgaaca7f5"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org261cb90" class="outline-4">
|
||||
<h4 id="org261cb90"><span class="section-number-4">2.1.3</span> Compute alpha</h4>
|
||||
<div id="outline-container-orgd16c7c3" class="outline-4">
|
||||
<h4 id="orgd16c7c3"><span class="section-number-4">2.1.3</span> Compute alpha</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<table id="orga954939" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org6009c1d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -838,10 +838,10 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org908273d" class="outline-4">
|
||||
<h4 id="org908273d"><span class="section-number-4">2.1.4</span> Compute beta</h4>
|
||||
<div id="outline-container-org158a2f4" class="outline-4">
|
||||
<h4 id="org158a2f4"><span class="section-number-4">2.1.4</span> Compute beta</h4>
|
||||
<div class="outline-text-4" id="text-2-1-4">
|
||||
<table id="org09987da" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgfd04407" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1015,18 +1015,18 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcb5967e" class="outline-4">
|
||||
<h4 id="orgcb5967e"><span class="section-number-4">2.1.5</span> Test</h4>
|
||||
<div id="outline-container-org4622ddf" class="outline-4">
|
||||
<h4 id="org4622ddf"><span class="section-number-4">2.1.5</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge726745" class="outline-3">
|
||||
<h3 id="orge726745"><span class="section-number-3">2.2</span> Inverse of Determinant matrix</h3>
|
||||
<div id="outline-container-org84b019e" class="outline-3">
|
||||
<h3 id="org84b019e"><span class="section-number-3">2.2</span> Inverse of Determinant matrix</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1d44b4d" class="outline-4">
|
||||
<h4 id="org1d44b4d"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-orge3517e4" class="outline-4">
|
||||
<h4 id="orge3517e4"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-2-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_det_inv_matrix_alpha</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">det_inv_matrix_alpha</span>);
|
||||
@ -1040,14 +1040,14 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org07914e3" class="outline-4">
|
||||
<h4 id="org07914e3"><span class="section-number-4">2.2.2</span> Provide</h4>
|
||||
<div id="outline-container-org83ec566" class="outline-4">
|
||||
<h4 id="org83ec566"><span class="section-number-4">2.2.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb3b1653" class="outline-4">
|
||||
<h4 id="orgb3b1653"><span class="section-number-4">2.2.3</span> Compute alpha</h4>
|
||||
<div id="outline-container-org80da135" class="outline-4">
|
||||
<h4 id="org80da135"><span class="section-number-4">2.2.3</span> Compute alpha</h4>
|
||||
<div class="outline-text-4" id="text-2-2-3">
|
||||
<table id="org00540c8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org0ecabb5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1209,10 +1209,10 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org51534c8" class="outline-4">
|
||||
<h4 id="org51534c8"><span class="section-number-4">2.2.4</span> Compute beta</h4>
|
||||
<div id="outline-container-org4b6f304" class="outline-4">
|
||||
<h4 id="org4b6f304"><span class="section-number-4">2.2.4</span> Compute beta</h4>
|
||||
<div class="outline-text-4" id="text-2-2-4">
|
||||
<table id="orgd807efb" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org020173e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1379,7 +1379,7 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:35</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:35 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Inter-particle distances</title>
|
||||
@ -333,54 +333,54 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org22b76e8">1. Squared distance</a>
|
||||
<li><a href="#org96903a8">1. Squared distance</a>
|
||||
<ul>
|
||||
<li><a href="#orgbab47e2">1.1. <code>qmckl_distance_sq</code></a>
|
||||
<li><a href="#org0a721f7">1.1. <code>qmckl_distance_sq</code></a>
|
||||
<ul>
|
||||
<li><a href="#org2ef98c5">1.1.1. Performance</a></li>
|
||||
<li><a href="#org929b889">1.1.1. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org6bda441">2. Distance</a>
|
||||
<li><a href="#org1b58233">2. Distance</a>
|
||||
<ul>
|
||||
<li><a href="#org64d9af7">2.1. <code>qmckl_distance</code></a>
|
||||
<li><a href="#orgf7b8222">2.1. <code>qmckl_distance</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgad4063e">2.1.1. Requirements</a></li>
|
||||
<li><a href="#orgcbf6f66">2.1.2. C header</a></li>
|
||||
<li><a href="#org2ccacd3">2.1.3. Source</a></li>
|
||||
<li><a href="#org31b56d6">2.1.4. Performance</a></li>
|
||||
<li><a href="#orgbc7b6ce">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org536323f">2.1.2. C header</a></li>
|
||||
<li><a href="#org0da9475">2.1.3. Source</a></li>
|
||||
<li><a href="#org33714ec">2.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org0261239">3. Rescaled Distance</a>
|
||||
<li><a href="#org0bddb56">3. Rescaled Distance</a>
|
||||
<ul>
|
||||
<li><a href="#org28bf5da">3.1. <code>qmckl_distance_rescaled</code></a>
|
||||
<li><a href="#org8a9c0c8">3.1. <code>qmckl_distance_rescaled</code></a>
|
||||
<ul>
|
||||
<li><a href="#org1f2d6ff">3.1.1. Requirements</a></li>
|
||||
<li><a href="#org5f9423f">3.1.2. C header</a></li>
|
||||
<li><a href="#org5cba328">3.1.3. Source</a></li>
|
||||
<li><a href="#org259322d">3.1.4. Performance</a></li>
|
||||
<li><a href="#orga13d4cd">3.1.1. Requirements</a></li>
|
||||
<li><a href="#org576283b">3.1.2. C header</a></li>
|
||||
<li><a href="#orged1adaa">3.1.3. Source</a></li>
|
||||
<li><a href="#org20ca406">3.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org0c7f250">4. Rescaled Distance Derivatives</a>
|
||||
<li><a href="#org3c161e1">4. Rescaled Distance Derivatives</a>
|
||||
<ul>
|
||||
<li><a href="#orgc96457f">4.1. <code>qmckl_distance_rescaled_deriv_e</code></a></li>
|
||||
<li><a href="#orgfa661b5">4.1. <code>qmckl_distance_rescaled_deriv_e</code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org22b76e8" class="outline-2">
|
||||
<h2 id="org22b76e8"><span class="section-number-2">1</span> Squared distance</h2>
|
||||
<div id="outline-container-org96903a8" class="outline-2">
|
||||
<h2 id="org96903a8"><span class="section-number-2">1</span> Squared distance</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-orgbab47e2" class="outline-3">
|
||||
<h3 id="orgbab47e2"><span class="section-number-3">1.1</span> <code>qmckl_distance_sq</code></h3>
|
||||
<div id="outline-container-org0a721f7" class="outline-3">
|
||||
<h3 id="org0a721f7"><span class="section-number-3">1.1</span> <code>qmckl_distance_sq</code></h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<p>
|
||||
<code>qmckl_distance_sq</code> computes the matrix of the squared distances
|
||||
@ -393,7 +393,7 @@ between all pairs of points in two sets, one point within each set:
|
||||
\]
|
||||
</p>
|
||||
|
||||
<table id="orgc855fb7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org4d8f7e4" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -659,8 +659,8 @@ Requirements:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2ef98c5" class="outline-4">
|
||||
<h4 id="org2ef98c5"><span class="section-number-4">1.1.1</span> Performance</h4>
|
||||
<div id="outline-container-org929b889" class="outline-4">
|
||||
<h4 id="org929b889"><span class="section-number-4">1.1.1</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-1-1-1">
|
||||
<p>
|
||||
This function is more efficient when <code>A</code> and <code>B</code> are
|
||||
@ -670,12 +670,12 @@ transposed.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org6bda441" class="outline-2">
|
||||
<h2 id="org6bda441"><span class="section-number-2">2</span> Distance</h2>
|
||||
<div id="outline-container-org1b58233" class="outline-2">
|
||||
<h2 id="org1b58233"><span class="section-number-2">2</span> Distance</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org64d9af7" class="outline-3">
|
||||
<h3 id="org64d9af7"><span class="section-number-3">2.1</span> <code>qmckl_distance</code></h3>
|
||||
<div id="outline-container-orgf7b8222" class="outline-3">
|
||||
<h3 id="orgf7b8222"><span class="section-number-3">2.1</span> <code>qmckl_distance</code></h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
<code>qmckl_distance</code> computes the matrix of the distances between all
|
||||
@ -693,7 +693,7 @@ If the input array is normal (<code>'N'</code>), the xyz coordinates are in
|
||||
the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortran.
|
||||
</p>
|
||||
|
||||
<table id="org8b74f7b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org28e3259" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -794,8 +794,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgad4063e" class="outline-4">
|
||||
<h4 id="orgad4063e"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgbc7b6ce" class="outline-4">
|
||||
<h4 id="orgbc7b6ce"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-2-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -813,8 +813,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcbf6f66" class="outline-4">
|
||||
<h4 id="orgcbf6f66"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div id="outline-container-org536323f" class="outline-4">
|
||||
<h4 id="org536323f"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_distance</span> (
|
||||
@ -834,8 +834,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2ccacd3" class="outline-4">
|
||||
<h4 id="org2ccacd3"><span class="section-number-4">2.1.3</span> Source</h4>
|
||||
<div id="outline-container-org0da9475" class="outline-4">
|
||||
<h4 id="org0da9475"><span class="section-number-4">2.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span><span style="color: #a0522d;"> function qmckl_distance_f(context, transa, transb, m, n, </span><span style="color: #a020f0;">&</span>
|
||||
@ -1002,8 +1002,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org31b56d6" class="outline-4">
|
||||
<h4 id="org31b56d6"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org33714ec" class="outline-4">
|
||||
<h4 id="org33714ec"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-2-1-4">
|
||||
<p>
|
||||
This function is more efficient when <code>A</code> and <code>B</code> are transposed.
|
||||
@ -1013,12 +1013,12 @@ This function is more efficient when <code>A</code> and <code>B</code> are trans
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0261239" class="outline-2">
|
||||
<h2 id="org0261239"><span class="section-number-2">3</span> Rescaled Distance</h2>
|
||||
<div id="outline-container-org0bddb56" class="outline-2">
|
||||
<h2 id="org0bddb56"><span class="section-number-2">3</span> Rescaled Distance</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org28bf5da" class="outline-3">
|
||||
<h3 id="org28bf5da"><span class="section-number-3">3.1</span> <code>qmckl_distance_rescaled</code></h3>
|
||||
<div id="outline-container-org8a9c0c8" class="outline-3">
|
||||
<h3 id="org8a9c0c8"><span class="section-number-3">3.1</span> <code>qmckl_distance_rescaled</code></h3>
|
||||
<div class="outline-text-3" id="text-3-1">
|
||||
<p>
|
||||
<code>qmckl_distance_rescaled</code> computes the matrix of the rescaled distances between all
|
||||
@ -1036,7 +1036,7 @@ If the input array is normal (<code>'N'</code>), the xyz coordinates are in
|
||||
the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortran.
|
||||
</p>
|
||||
|
||||
<table id="org7c580d1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgede6caa" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1144,8 +1144,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1f2d6ff" class="outline-4">
|
||||
<h4 id="org1f2d6ff"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orga13d4cd" class="outline-4">
|
||||
<h4 id="orga13d4cd"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-3-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -1163,8 +1163,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5f9423f" class="outline-4">
|
||||
<h4 id="org5f9423f"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div id="outline-container-org576283b" class="outline-4">
|
||||
<h4 id="org576283b"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-3-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_distance_rescaled</span> (
|
||||
@ -1185,8 +1185,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5cba328" class="outline-4">
|
||||
<h4 id="org5cba328"><span class="section-number-4">3.1.3</span> Source</h4>
|
||||
<div id="outline-container-orged1adaa" class="outline-4">
|
||||
<h4 id="orged1adaa"><span class="section-number-4">3.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-3-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span><span style="color: #a0522d;"> function qmckl_distance_rescaled_f(context, transa, transb, m, n, </span><span style="color: #a020f0;">&</span>
|
||||
@ -1356,8 +1356,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org259322d" class="outline-4">
|
||||
<h4 id="org259322d"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org20ca406" class="outline-4">
|
||||
<h4 id="org20ca406"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-3-1-4">
|
||||
<p>
|
||||
This function is more efficient when <code>A</code> and <code>B</code> are transposed.
|
||||
@ -1366,12 +1366,12 @@ This function is more efficient when <code>A</code> and <code>B</code> are trans
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org0c7f250" class="outline-2">
|
||||
<h2 id="org0c7f250"><span class="section-number-2">4</span> Rescaled Distance Derivatives</h2>
|
||||
<div id="outline-container-org3c161e1" class="outline-2">
|
||||
<h2 id="org3c161e1"><span class="section-number-2">4</span> Rescaled Distance Derivatives</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-orgc96457f" class="outline-3">
|
||||
<h3 id="orgc96457f"><span class="section-number-3">4.1</span> <code>qmckl_distance_rescaled_deriv_e</code></h3>
|
||||
<div id="outline-container-orgfa661b5" class="outline-3">
|
||||
<h3 id="orgfa661b5"><span class="section-number-3">4.1</span> <code>qmckl_distance_rescaled_deriv_e</code></h3>
|
||||
<div class="outline-text-3" id="text-4-1">
|
||||
<p>
|
||||
<code>qmckl_distance_rescaled_deriv_e</code> computes the matrix of the gradient and laplacian of the
|
||||
@ -1438,7 +1438,7 @@ If the input array is normal (<code>'N'</code>), the xyz coordinates are in
|
||||
the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortran.
|
||||
</p>
|
||||
|
||||
<table id="orgeb14d37" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org717f327" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1776,7 +1776,7 @@ This function is more efficient when <code>A</code> and <code>B</code> are trans
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:35</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:34 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Electrons</title>
|
||||
@ -333,59 +333,59 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org796b09c">1. Context</a>
|
||||
<li><a href="#orgca341de">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org652f418">1.1. Data structure</a></li>
|
||||
<li><a href="#orgebcdecd">1.2. Initialization functions</a></li>
|
||||
<li><a href="#org3597fc1">1.3. Access functions</a>
|
||||
<li><a href="#org5dd36da">1.1. Data structure</a></li>
|
||||
<li><a href="#org7780afd">1.2. Initialization functions</a></li>
|
||||
<li><a href="#orge0a11a3">1.3. Access functions</a>
|
||||
<ul>
|
||||
<li><a href="#org082cab3">1.3.1. Number of electrons</a></li>
|
||||
<li><a href="#org67788ff">1.3.2. Number of walkers</a></li>
|
||||
<li><a href="#org0c1dfa8">1.3.3. Electron coordinates</a></li>
|
||||
<li><a href="#orgf93a2ab">1.3.1. Number of electrons</a></li>
|
||||
<li><a href="#org95f35c6">1.3.2. Number of walkers</a></li>
|
||||
<li><a href="#org4eec628">1.3.3. Electron coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org0d9be2e">1.4. Test</a></li>
|
||||
<li><a href="#org173331c">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org932d7e5">2. Computation</a>
|
||||
<li><a href="#org5b7affe">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#org645deac">2.1. Electron-electron distances</a>
|
||||
<li><a href="#org9727f39">2.1. Electron-electron distances</a>
|
||||
<ul>
|
||||
<li><a href="#orgef77202">2.1.1. Get</a></li>
|
||||
<li><a href="#orge2d359a">2.1.2. Compute</a></li>
|
||||
<li><a href="#org7020d9b">2.1.3. Test</a></li>
|
||||
<li><a href="#org96813ce">2.1.1. Get</a></li>
|
||||
<li><a href="#orgdf70006">2.1.2. Compute</a></li>
|
||||
<li><a href="#org72efd11">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org51c53fb">2.2. Electron-electron potential</a>
|
||||
<li><a href="#orge66f8cd">2.2. Electron-electron potential</a>
|
||||
<ul>
|
||||
<li><a href="#org6453587">2.2.1. Get</a></li>
|
||||
<li><a href="#org1e232f8">2.2.2. Compute</a></li>
|
||||
<li><a href="#org4269c98">2.2.3. Test</a></li>
|
||||
<li><a href="#orgec80544">2.2.1. Get</a></li>
|
||||
<li><a href="#org2e6e4ac">2.2.2. Compute</a></li>
|
||||
<li><a href="#org8a977fa">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgaba0c4a">2.3. Electron-nucleus distances</a>
|
||||
<li><a href="#orgccc6361">2.3. Electron-nucleus distances</a>
|
||||
<ul>
|
||||
<li><a href="#org2c84f83">2.3.1. Get</a></li>
|
||||
<li><a href="#org7372d34">2.3.2. Compute</a></li>
|
||||
<li><a href="#org2f47d15">2.3.3. Test</a></li>
|
||||
<li><a href="#orge6f1530">2.3.1. Get</a></li>
|
||||
<li><a href="#orge4f9550">2.3.2. Compute</a></li>
|
||||
<li><a href="#org4839eb6">2.3.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org100adfa">2.4. Electron-nucleus potential</a>
|
||||
<li><a href="#org1360428">2.4. Electron-nucleus potential</a>
|
||||
<ul>
|
||||
<li><a href="#org51038ed">2.4.1. Get</a></li>
|
||||
<li><a href="#orgd77b200">2.4.2. Compute</a></li>
|
||||
<li><a href="#orgb83a4a1">2.4.3. Test</a></li>
|
||||
<li><a href="#org3b4ebc4">2.4.1. Get</a></li>
|
||||
<li><a href="#orga19fa2f">2.4.2. Compute</a></li>
|
||||
<li><a href="#org32da3cb">2.4.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgf8f747c">2.5. Generate initial coordinates</a></li>
|
||||
<li><a href="#org0dc9d5b">2.5. Generate initial coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org796b09c" class="outline-2">
|
||||
<h2 id="org796b09c"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-orgca341de" class="outline-2">
|
||||
<h2 id="orgca341de"><span class="section-number-2">1</span> Context</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The following data stored in the context:
|
||||
@ -526,8 +526,8 @@ Computed data:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org652f418" class="outline-3">
|
||||
<h3 id="org652f418"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org5dd36da" class="outline-3">
|
||||
<h3 id="org5dd36da"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">
|
||||
@ -596,8 +596,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgebcdecd" class="outline-3">
|
||||
<h3 id="orgebcdecd"><span class="section-number-3">1.2</span> Initialization functions</h3>
|
||||
<div id="outline-container-org7780afd" class="outline-3">
|
||||
<h3 id="org7780afd"><span class="section-number-3">1.2</span> Initialization functions</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
To set the data relative to the electrons in the context, the
|
||||
@ -670,8 +670,8 @@ in the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3597fc1" class="outline-3">
|
||||
<h3 id="org3597fc1"><span class="section-number-3">1.3</span> Access functions</h3>
|
||||
<div id="outline-container-orge0a11a3" class="outline-3">
|
||||
<h3 id="orge0a11a3"><span class="section-number-3">1.3</span> Access functions</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
Access functions return <code>QMCKL_SUCCESS</code> when the data has been
|
||||
@ -683,12 +683,12 @@ contains the requested data. Otherwise, this variable is untouched.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org082cab3" class="outline-4">
|
||||
<h4 id="org082cab3"><span class="section-number-4">1.3.1</span> Number of electrons</h4>
|
||||
<div id="outline-container-orgf93a2ab" class="outline-4">
|
||||
<h4 id="orgf93a2ab"><span class="section-number-4">1.3.1</span> Number of electrons</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org67788ff" class="outline-4">
|
||||
<h4 id="org67788ff"><span class="section-number-4">1.3.2</span> Number of walkers</h4>
|
||||
<div id="outline-container-org95f35c6" class="outline-4">
|
||||
<h4 id="org95f35c6"><span class="section-number-4">1.3.2</span> Number of walkers</h4>
|
||||
<div class="outline-text-4" id="text-1-3-2">
|
||||
<p>
|
||||
A walker is a set of electron coordinates that are arguments of
|
||||
@ -697,8 +697,8 @@ the wave function. <code>walk_num</code> is the number of walkers.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0c1dfa8" class="outline-4">
|
||||
<h4 id="org0c1dfa8"><span class="section-number-4">1.3.3</span> Electron coordinates</h4>
|
||||
<div id="outline-container-org4eec628" class="outline-4">
|
||||
<h4 id="org4eec628"><span class="section-number-4">1.3.3</span> Electron coordinates</h4>
|
||||
<div class="outline-text-4" id="text-1-3-3">
|
||||
<p>
|
||||
Returns the current electron coordinates. The pointer is assumed
|
||||
@ -748,8 +748,8 @@ current points.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0d9be2e" class="outline-3">
|
||||
<h3 id="org0d9be2e"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-org173331c" class="outline-3">
|
||||
<h3 id="org173331c"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Reference input data </span>*/
|
||||
@ -828,8 +828,8 @@ rc = qmckl_get_electron_coord (context, <span style="color: #8b2252;">'N'</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org932d7e5" class="outline-2">
|
||||
<h2 id="org932d7e5"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org5b7affe" class="outline-2">
|
||||
<h2 id="org5b7affe"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<p>
|
||||
The computed data is stored in the context so that it can be reused
|
||||
@ -842,12 +842,12 @@ current date is stored.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org645deac" class="outline-3">
|
||||
<h3 id="org645deac"><span class="section-number-3">2.1</span> Electron-electron distances</h3>
|
||||
<div id="outline-container-org9727f39" class="outline-3">
|
||||
<h3 id="org9727f39"><span class="section-number-3">2.1</span> Electron-electron distances</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
</div>
|
||||
<div id="outline-container-orgef77202" class="outline-4">
|
||||
<h4 id="orgef77202"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-org96813ce" class="outline-4">
|
||||
<h4 id="org96813ce"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_electron_ee_distance</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">distance</span>);
|
||||
@ -856,10 +856,10 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge2d359a" class="outline-4">
|
||||
<h4 id="orge2d359a"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-orgdf70006" class="outline-4">
|
||||
<h4 id="orgdf70006"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="org58f4404" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org3f12365" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -964,8 +964,8 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7020d9b" class="outline-4">
|
||||
<h4 id="org7020d9b"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-org72efd11" class="outline-4">
|
||||
<h4 id="org72efd11"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #0000ff;">assert</span>(<span style="color: #228b22;">qmckl_electron_provided</span>(<span style="color: #a0522d;">context</span>));
|
||||
@ -999,8 +999,8 @@ rc = qmckl_get_electron_ee_distance(context, ee_distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org51c53fb" class="outline-3">
|
||||
<h3 id="org51c53fb"><span class="section-number-3">2.2</span> Electron-electron potential</h3>
|
||||
<div id="outline-container-orge66f8cd" class="outline-3">
|
||||
<h3 id="orge66f8cd"><span class="section-number-3">2.2</span> Electron-electron potential</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
<code>ee_potential</code> is given by
|
||||
@ -1018,8 +1018,8 @@ distance.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6453587" class="outline-4">
|
||||
<h4 id="org6453587"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-orgec80544" class="outline-4">
|
||||
<h4 id="orgec80544"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-2-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_electron_ee_potential</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">ee_potential</span>);
|
||||
@ -1028,10 +1028,10 @@ distance.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1e232f8" class="outline-4">
|
||||
<h4 id="org1e232f8"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-org2e6e4ac" class="outline-4">
|
||||
<h4 id="org2e6e4ac"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="orgb872ccb" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org276d32d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1147,8 +1147,8 @@ distance.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4269c98" class="outline-4">
|
||||
<h4 id="org4269c98"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-org8a977fa" class="outline-4">
|
||||
<h4 id="org8a977fa"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-2-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">double</span> <span style="color: #a0522d;">ee_potential</span>[walk_num];
|
||||
@ -1160,12 +1160,12 @@ rc = qmckl_get_electron_ee_potential(context, &(ee_potential[0]));
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orgaba0c4a" class="outline-3">
|
||||
<h3 id="orgaba0c4a"><span class="section-number-3">2.3</span> Electron-nucleus distances</h3>
|
||||
<div id="outline-container-orgccc6361" class="outline-3">
|
||||
<h3 id="orgccc6361"><span class="section-number-3">2.3</span> Electron-nucleus distances</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
</div>
|
||||
<div id="outline-container-org2c84f83" class="outline-4">
|
||||
<h4 id="org2c84f83"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-orge6f1530" class="outline-4">
|
||||
<h4 id="orge6f1530"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-3-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_electron_en_distance</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a0522d;">distance</span>);
|
||||
@ -1174,10 +1174,10 @@ rc = qmckl_get_electron_ee_potential(context, &(ee_potential[0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7372d34" class="outline-4">
|
||||
<h4 id="org7372d34"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div id="outline-container-orge4f9550" class="outline-4">
|
||||
<h4 id="orge4f9550"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-3-2">
|
||||
<table id="org427c0b1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org54ad4de" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1302,8 +1302,8 @@ rc = qmckl_get_electron_ee_potential(context, &(ee_potential[0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2f47d15" class="outline-4">
|
||||
<h4 id="org2f47d15"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div id="outline-container-org4839eb6" class="outline-4">
|
||||
<h4 id="org4839eb6"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-3-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">
|
||||
@ -1351,8 +1351,8 @@ rc = qmckl_get_electron_en_distance(context, &(en_distance[0][0][0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org100adfa" class="outline-3">
|
||||
<h3 id="org100adfa"><span class="section-number-3">2.4</span> Electron-nucleus potential</h3>
|
||||
<div id="outline-container-org1360428" class="outline-3">
|
||||
<h3 id="org1360428"><span class="section-number-3">2.4</span> Electron-nucleus potential</h3>
|
||||
<div class="outline-text-3" id="text-2-4">
|
||||
<p>
|
||||
<code>en_potential</code> stores the <code>en</code> potential energy
|
||||
@ -1370,8 +1370,8 @@ distance and \[Z_A\] is the nuclear charge.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org51038ed" class="outline-4">
|
||||
<h4 id="org51038ed"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div id="outline-container-org3b4ebc4" class="outline-4">
|
||||
<h4 id="org3b4ebc4"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-4-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_electron_en_potential</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">en_potential</span>);
|
||||
@ -1380,10 +1380,10 @@ distance and \[Z_A\] is the nuclear charge.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd77b200" class="outline-4">
|
||||
<h4 id="orgd77b200"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div id="outline-container-orga19fa2f" class="outline-4">
|
||||
<h4 id="orga19fa2f"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-4-2">
|
||||
<table id="orga2c72d9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgf4be10e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1517,8 +1517,8 @@ distance and \[Z_A\] is the nuclear charge.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb83a4a1" class="outline-4">
|
||||
<h4 id="orgb83a4a1"><span class="section-number-4">2.4.3</span> Test</h4>
|
||||
<div id="outline-container-org32da3cb" class="outline-4">
|
||||
<h4 id="org32da3cb"><span class="section-number-4">2.4.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-4-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">double</span> <span style="color: #a0522d;">en_potential</span>[walk_num];
|
||||
@ -1531,14 +1531,14 @@ rc = qmckl_get_electron_en_potential(context, &(en_potential[0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf8f747c" class="outline-3">
|
||||
<h3 id="orgf8f747c"><span class="section-number-3">2.5</span> Generate initial coordinates</h3>
|
||||
<div id="outline-container-org0dc9d5b" class="outline-3">
|
||||
<h3 id="org0dc9d5b"><span class="section-number-3">2.5</span> Generate initial coordinates</h3>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:34</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:34 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Error handling</title>
|
||||
@ -311,29 +311,29 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgf5e693a">-</a></li>
|
||||
<li><a href="#org3b75707">1. Decoding errors</a></li>
|
||||
<li><a href="#orgfc5f673">2. Data structure in context</a></li>
|
||||
<li><a href="#org04b88a7">3. Updating errors in the context</a></li>
|
||||
<li><a href="#org02f3b3a">4. Get the error</a></li>
|
||||
<li><a href="#org2993242">5. Failing</a></li>
|
||||
<li><a href="#orgb6c52e8">6. Last error</a>
|
||||
<li><a href="#org8c1724a">-</a></li>
|
||||
<li><a href="#orgc196955">1. Decoding errors</a></li>
|
||||
<li><a href="#orgcbd4788">2. Data structure in context</a></li>
|
||||
<li><a href="#orge3969cf">3. Updating errors in the context</a></li>
|
||||
<li><a href="#org4ec2abb">4. Get the error</a></li>
|
||||
<li><a href="#org740fa5e">5. Failing</a></li>
|
||||
<li><a href="#orgb0f5767">6. Last error</a>
|
||||
<ul>
|
||||
<li><a href="#org38a2fd5">6.1. Fortran inteface</a></li>
|
||||
<li><a href="#orgc761121">6.1. Fortran inteface</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orge7ce0fd">7. Helper functions for debugging</a>
|
||||
<li><a href="#org8291220">7. Helper functions for debugging</a>
|
||||
<ul>
|
||||
<li><a href="#org769a50f">7.1. Fortran inteface</a></li>
|
||||
<li><a href="#org9fe269a">7.1. Fortran inteface</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf5e693a" class="outline-2">
|
||||
<h2 id="orgf5e693a">-</h2>
|
||||
<div class="outline-text-2" id="text-orgf5e693a">
|
||||
<div id="outline-container-org8c1724a" class="outline-2">
|
||||
<h2 id="org8c1724a">-</h2>
|
||||
<div class="outline-text-2" id="text-org8c1724a">
|
||||
<p>
|
||||
The library should never make the calling programs abort, nor
|
||||
perform any input/output operations. This decision has to be taken
|
||||
@ -344,7 +344,7 @@ by the developer of the code calling the library.
|
||||
All the functions return with an exit code, defined as
|
||||
</p>
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c" id="org4d7d2f7"><span style="color: #a020f0;">typedef</span> <span style="color: #228b22;">int32_t</span> <span style="color: #228b22;">qmckl_exit_code</span>;
|
||||
<pre class="src src-c" id="orgfc7848e"><span style="color: #a020f0;">typedef</span> <span style="color: #228b22;">int32_t</span> <span style="color: #228b22;">qmckl_exit_code</span>;
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
@ -361,7 +361,7 @@ error code is returned to the program.
|
||||
Here is the complete list of exit codes.
|
||||
</p>
|
||||
|
||||
<table id="org0d7fe82" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org97e2006" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -569,8 +569,8 @@ string is assumed to be large enough to contain the error message
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3b75707" class="outline-2">
|
||||
<h2 id="org3b75707"><span class="section-number-2">1</span> Decoding errors</h2>
|
||||
<div id="outline-container-orgc196955" class="outline-2">
|
||||
<h2 id="orgc196955"><span class="section-number-2">1</span> Decoding errors</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
To decode the error messages, <code>qmckl_string_of_error</code> converts an
|
||||
@ -588,8 +588,8 @@ The text strings are extracted from the previous table.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orgfc5f673" class="outline-2">
|
||||
<h2 id="orgfc5f673"><span class="section-number-2">2</span> Data structure in context</h2>
|
||||
<div id="outline-container-orgcbd4788" class="outline-2">
|
||||
<h2 id="orgcbd4788"><span class="section-number-2">2</span> Data structure in context</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<p>
|
||||
The strings are declared internally with a maximum fixed size to avoid
|
||||
@ -612,8 +612,8 @@ dynamic memory allocation.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org04b88a7" class="outline-2">
|
||||
<h2 id="org04b88a7"><span class="section-number-2">3</span> Updating errors in the context</h2>
|
||||
<div id="outline-container-orge3969cf" class="outline-2">
|
||||
<h2 id="orge3969cf"><span class="section-number-2">3</span> Updating errors in the context</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
<p>
|
||||
The error is updated in the context using <code>qmckl_set_error</code>.
|
||||
@ -632,8 +632,8 @@ explaining the error. The exit code can't be <code>QMCKL_SUCCESS</code>.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org02f3b3a" class="outline-2">
|
||||
<h2 id="org02f3b3a"><span class="section-number-2">4</span> Get the error</h2>
|
||||
<div id="outline-container-org4ec2abb" class="outline-2">
|
||||
<h2 id="org4ec2abb"><span class="section-number-2">4</span> Get the error</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
<p>
|
||||
Upon error, the error type and message can be obtained from the
|
||||
@ -652,8 +652,8 @@ function name and message is mandatory.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org2993242" class="outline-2">
|
||||
<h2 id="org2993242"><span class="section-number-2">5</span> Failing</h2>
|
||||
<div id="outline-container-org740fa5e" class="outline-2">
|
||||
<h2 id="org740fa5e"><span class="section-number-2">5</span> Failing</h2>
|
||||
<div class="outline-text-2" id="text-5">
|
||||
<p>
|
||||
To make a function fail, the <code>qmckl_failwith</code> function should be
|
||||
@ -690,8 +690,8 @@ For example, this function can be used as
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb6c52e8" class="outline-2">
|
||||
<h2 id="orgb6c52e8"><span class="section-number-2">6</span> Last error</h2>
|
||||
<div id="outline-container-orgb0f5767" class="outline-2">
|
||||
<h2 id="orgb0f5767"><span class="section-number-2">6</span> Last error</h2>
|
||||
<div class="outline-text-2" id="text-6">
|
||||
<p>
|
||||
Returns a string describing the last error, using <code>qmckl_get_error</code>.
|
||||
@ -703,13 +703,13 @@ Returns a string describing the last error, using <code>qmckl_get_error</code>.
|
||||
</pre>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org38a2fd5" class="outline-3">
|
||||
<h3 id="org38a2fd5"><span class="section-number-3">6.1</span> Fortran inteface</h3>
|
||||
<div id="outline-container-orgc761121" class="outline-3">
|
||||
<h3 id="orgc761121"><span class="section-number-3">6.1</span> Fortran inteface</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge7ce0fd" class="outline-2">
|
||||
<h2 id="orge7ce0fd"><span class="section-number-2">7</span> Helper functions for debugging</h2>
|
||||
<div id="outline-container-org8291220" class="outline-2">
|
||||
<h2 id="org8291220"><span class="section-number-2">7</span> Helper functions for debugging</h2>
|
||||
<div class="outline-text-2" id="text-7">
|
||||
<p>
|
||||
The following function prints to <code>stderr</code> an error message is the return code is
|
||||
@ -735,14 +735,14 @@ It should be used as:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org769a50f" class="outline-3">
|
||||
<h3 id="org769a50f"><span class="section-number-3">7.1</span> Fortran inteface</h3>
|
||||
<div id="outline-container-org9fe269a" class="outline-3">
|
||||
<h3 id="org9fe269a"><span class="section-number-3">7.1</span> Fortran inteface</h3>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:34</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:35 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Code examples</title>
|
||||
@ -333,27 +333,27 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org70cd031">1. Python</a>
|
||||
<li><a href="#orgdee3810">1. Python</a>
|
||||
<ul>
|
||||
<li><a href="#org64ffbf5">1.1. Check numerically that MOs are orthonormal</a></li>
|
||||
<li><a href="#org2e8e9f4">1.1. Check numerically that MOs are orthonormal</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgeb1b667">2. Fortran</a>
|
||||
<li><a href="#orgf13fe4d">2. Fortran</a>
|
||||
<ul>
|
||||
<li><a href="#org27a8768">2.1. Checking errors</a></li>
|
||||
<li><a href="#org8b5e1e7">2.2. Computing an atomic orbital on a grid</a></li>
|
||||
<li><a href="#org00ae274">2.1. Checking errors</a></li>
|
||||
<li><a href="#org5085d6b">2.2. Computing an atomic orbital on a grid</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org70cd031" class="outline-2">
|
||||
<h2 id="org70cd031"><span class="section-number-2">1</span> Python</h2>
|
||||
<div id="outline-container-orgdee3810" class="outline-2">
|
||||
<h2 id="orgdee3810"><span class="section-number-2">1</span> Python</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-org64ffbf5" class="outline-3">
|
||||
<h3 id="org64ffbf5"><span class="section-number-3">1.1</span> Check numerically that MOs are orthonormal</h3>
|
||||
<div id="outline-container-org2e8e9f4" class="outline-3">
|
||||
<h3 id="org2e8e9f4"><span class="section-number-3">1.1</span> Check numerically that MOs are orthonormal</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<p>
|
||||
In this example, we will compute numerically the overlap
|
||||
@ -529,12 +529,12 @@ and finally we compute the overlap between all the MOs as
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgeb1b667" class="outline-2">
|
||||
<h2 id="orgeb1b667"><span class="section-number-2">2</span> Fortran</h2>
|
||||
<div id="outline-container-orgf13fe4d" class="outline-2">
|
||||
<h2 id="orgf13fe4d"><span class="section-number-2">2</span> Fortran</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org27a8768" class="outline-3">
|
||||
<h3 id="org27a8768"><span class="section-number-3">2.1</span> Checking errors</h3>
|
||||
<div id="outline-container-org00ae274" class="outline-3">
|
||||
<h3 id="org00ae274"><span class="section-number-3">2.1</span> Checking errors</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
All QMCkl functions return an error code. A convenient way to handle
|
||||
@ -543,7 +543,7 @@ error in text format and exits the program.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90" id="org3560ec1"><span style="color: #a020f0;">subroutine</span> <span style="color: #0000ff;">qmckl_check_error</span>(rc, message)
|
||||
<pre class="src src-f90" id="org92296ec"><span style="color: #a020f0;">subroutine</span> <span style="color: #0000ff;">qmckl_check_error</span>(rc, message)
|
||||
<span style="color: #a020f0;">use</span> <span style="color: #0000ff;">qmckl</span>
|
||||
<span style="color: #a020f0;">implicit</span> <span style="color: #228b22;">none</span>
|
||||
<span style="color: #228b22;">integer</span>(qmckl_exit_code), <span style="color: #a020f0;">intent</span>(in) ::<span style="color: #a0522d;"> rc</span>
|
||||
@ -561,8 +561,8 @@ error in text format and exits the program.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8b5e1e7" class="outline-3">
|
||||
<h3 id="org8b5e1e7"><span class="section-number-3">2.2</span> Computing an atomic orbital on a grid</h3>
|
||||
<div id="outline-container-org5085d6b" class="outline-3">
|
||||
<h3 id="org5085d6b"><span class="section-number-3">2.2</span> Computing an atomic orbital on a grid</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
The following program, in Fortran, computes the values of an atomic
|
||||
@ -781,7 +781,7 @@ We finally print the value and Laplacian of the AO:
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:35</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:34 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Local Energy</title>
|
||||
@ -333,43 +333,44 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orga5e526a">1. Context</a>
|
||||
<li><a href="#orgdefb174">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#orgfb5fe9d">1.1. Data structure</a></li>
|
||||
<li><a href="#org3a2740f">1.1. Data structure</a></li>
|
||||
<li><a href="#orgb61d648">1.2. Access functions</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org04d5b8d">2. Computation</a>
|
||||
<li><a href="#org5621677">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#org2be2325">2.1. Kinetic energy</a>
|
||||
<li><a href="#org9e7b8e9">2.1. Kinetic energy</a>
|
||||
<ul>
|
||||
<li><a href="#orgefb9387">2.1.1. Get</a></li>
|
||||
<li><a href="#org47e9441">2.1.2. Provide</a></li>
|
||||
<li><a href="#org033cfc5">2.1.3. Compute kinetic enregy</a></li>
|
||||
<li><a href="#org6659fdb">2.1.4. Test</a></li>
|
||||
<li><a href="#orga8e5ac6">2.1.1. Get</a></li>
|
||||
<li><a href="#org29fe0e8">2.1.2. Provide</a></li>
|
||||
<li><a href="#org8209bf4">2.1.3. Compute kinetic enregy</a></li>
|
||||
<li><a href="#orgf86d569">2.1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orge16937a">2.2. Potential energy</a>
|
||||
<li><a href="#org4f784d0">2.2. Potential energy</a>
|
||||
<ul>
|
||||
<li><a href="#orgf55e0a8">2.2.1. Get</a></li>
|
||||
<li><a href="#orgcf05727">2.2.2. Provide</a></li>
|
||||
<li><a href="#orgc951458">2.2.3. Compute potential enregy</a></li>
|
||||
<li><a href="#orgc3e2c37">2.2.4. Test</a></li>
|
||||
<li><a href="#org536e2e0">2.2.1. Get</a></li>
|
||||
<li><a href="#org9f426a8">2.2.2. Provide</a></li>
|
||||
<li><a href="#orgbe3952d">2.2.3. Compute potential enregy</a></li>
|
||||
<li><a href="#orgb71e91e">2.2.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org4af704c">2.3. Local energy</a>
|
||||
<li><a href="#orgae15219">2.3. Local energy</a>
|
||||
<ul>
|
||||
<li><a href="#org9120e4b">2.3.1. Get</a></li>
|
||||
<li><a href="#orgf9c4d83">2.3.2. Provide</a></li>
|
||||
<li><a href="#org42220dc">2.3.3. Compute local enregy</a></li>
|
||||
<li><a href="#orge02acec">2.3.4. Test</a></li>
|
||||
<li><a href="#org0e11297">2.3.1. Get</a></li>
|
||||
<li><a href="#org18d62da">2.3.2. Provide</a></li>
|
||||
<li><a href="#org1b95d5a">2.3.3. Compute local enregy</a></li>
|
||||
<li><a href="#org1c93b02">2.3.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org2377acf">2.4. Drift vector</a>
|
||||
<li><a href="#org8088e01">2.4. Drift vector</a>
|
||||
<ul>
|
||||
<li><a href="#org9b3417f">2.4.1. Get</a></li>
|
||||
<li><a href="#orga42a657">2.4.2. Provide</a></li>
|
||||
<li><a href="#org6862a4d">2.4.3. Compute drift vector</a></li>
|
||||
<li><a href="#org1d93222">2.4.4. Test</a></li>
|
||||
<li><a href="#org7aec2c1">2.4.1. Get</a></li>
|
||||
<li><a href="#orgda82302">2.4.2. Provide</a></li>
|
||||
<li><a href="#orge7d5d66">2.4.3. Compute drift vector</a></li>
|
||||
<li><a href="#orge1da51b">2.4.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -378,8 +379,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga5e526a" class="outline-2">
|
||||
<h2 id="orga5e526a"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-orgdefb174" class="outline-2">
|
||||
<h2 id="orgdefb174"><span class="section-number-2">1</span> Context</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The following arrays are stored in the context:
|
||||
@ -452,8 +453,8 @@ Computed data:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfb5fe9d" class="outline-3">
|
||||
<h3 id="orgfb5fe9d"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org3a2740f" class="outline-3">
|
||||
<h3 id="org3a2740f"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> <span style="color: #228b22;">qmckl_local_energy_struct</span> {
|
||||
@ -486,14 +487,29 @@ this mechanism.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb61d648" class="outline-3">
|
||||
<h3 id="orgb61d648"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
When all the data for the local energy have been provided, the following
|
||||
function returns <code>true</code>.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_local_energy_provided</span> (<span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>);
|
||||
</pre>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org04d5b8d" class="outline-2">
|
||||
<h2 id="org04d5b8d"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org5621677" class="outline-2">
|
||||
<h2 id="org5621677"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org2be2325" class="outline-3">
|
||||
<h3 id="org2be2325"><span class="section-number-3">2.1</span> Kinetic energy</h3>
|
||||
<div id="outline-container-org9e7b8e9" class="outline-3">
|
||||
<h3 id="org9e7b8e9"><span class="section-number-3">2.1</span> Kinetic energy</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
Where the kinetic energy is given as:
|
||||
@ -517,8 +533,8 @@ case is given as follows:
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgefb9387" class="outline-4">
|
||||
<h4 id="orgefb9387"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-orga8e5ac6" class="outline-4">
|
||||
<h4 id="orga8e5ac6"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_kinetic_energy</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">kinetic_energy</span>);
|
||||
@ -527,14 +543,14 @@ case is given as follows:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org47e9441" class="outline-4">
|
||||
<h4 id="org47e9441"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
<div id="outline-container-org29fe0e8" class="outline-4">
|
||||
<h4 id="org29fe0e8"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org033cfc5" class="outline-4">
|
||||
<h4 id="org033cfc5"><span class="section-number-4">2.1.3</span> Compute kinetic enregy</h4>
|
||||
<div id="outline-container-org8209bf4" class="outline-4">
|
||||
<h4 id="org8209bf4"><span class="section-number-4">2.1.3</span> Compute kinetic enregy</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<table id="org1480a41" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org3a9bb93" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -763,12 +779,12 @@ case is given as follows:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6659fdb" class="outline-4">
|
||||
<h4 id="org6659fdb"><span class="section-number-4">2.1.4</span> Test</h4>
|
||||
<div id="outline-container-orgf86d569" class="outline-4">
|
||||
<h4 id="orgf86d569"><span class="section-number-4">2.1.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orge16937a" class="outline-3">
|
||||
<h3 id="orge16937a"><span class="section-number-3">2.2</span> Potential energy</h3>
|
||||
<div id="outline-container-org4f784d0" class="outline-3">
|
||||
<h3 id="org4f784d0"><span class="section-number-3">2.2</span> Potential energy</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
The potential energy is the sum of all the following terms
|
||||
@ -804,8 +820,8 @@ contributions.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf55e0a8" class="outline-4">
|
||||
<h4 id="orgf55e0a8"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-org536e2e0" class="outline-4">
|
||||
<h4 id="org536e2e0"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-2-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_potential_energy</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">potential_energy</span>);
|
||||
@ -814,14 +830,14 @@ contributions.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcf05727" class="outline-4">
|
||||
<h4 id="orgcf05727"><span class="section-number-4">2.2.2</span> Provide</h4>
|
||||
<div id="outline-container-org9f426a8" class="outline-4">
|
||||
<h4 id="org9f426a8"><span class="section-number-4">2.2.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc951458" class="outline-4">
|
||||
<h4 id="orgc951458"><span class="section-number-4">2.2.3</span> Compute potential enregy</h4>
|
||||
<div id="outline-container-orgbe3952d" class="outline-4">
|
||||
<h4 id="orgbe3952d"><span class="section-number-4">2.2.3</span> Compute potential enregy</h4>
|
||||
<div class="outline-text-4" id="text-2-2-3">
|
||||
<table id="org0867883" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org788283f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -948,12 +964,12 @@ contributions.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc3e2c37" class="outline-4">
|
||||
<h4 id="orgc3e2c37"><span class="section-number-4">2.2.4</span> Test</h4>
|
||||
<div id="outline-container-orgb71e91e" class="outline-4">
|
||||
<h4 id="orgb71e91e"><span class="section-number-4">2.2.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org4af704c" class="outline-3">
|
||||
<h3 id="org4af704c"><span class="section-number-3">2.3</span> Local energy</h3>
|
||||
<div id="outline-container-orgae15219" class="outline-3">
|
||||
<h3 id="orgae15219"><span class="section-number-3">2.3</span> Local energy</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
The local energy is the sum of kinetic and potential energies.
|
||||
@ -967,8 +983,8 @@ E_L = KE + PE
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org9120e4b" class="outline-4">
|
||||
<h4 id="org9120e4b"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-org0e11297" class="outline-4">
|
||||
<h4 id="org0e11297"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-3-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_local_energy</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">local_energy</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">size_max</span>);
|
||||
@ -977,14 +993,14 @@ E_L = KE + PE
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf9c4d83" class="outline-4">
|
||||
<h4 id="orgf9c4d83"><span class="section-number-4">2.3.2</span> Provide</h4>
|
||||
<div id="outline-container-org18d62da" class="outline-4">
|
||||
<h4 id="org18d62da"><span class="section-number-4">2.3.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org42220dc" class="outline-4">
|
||||
<h4 id="org42220dc"><span class="section-number-4">2.3.3</span> Compute local enregy</h4>
|
||||
<div id="outline-container-org1b95d5a" class="outline-4">
|
||||
<h4 id="org1b95d5a"><span class="section-number-4">2.3.3</span> Compute local enregy</h4>
|
||||
<div class="outline-text-4" id="text-2-3-3">
|
||||
<table id="org97c7b88" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org5ba5d46" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1080,12 +1096,12 @@ E_L = KE + PE
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge02acec" class="outline-4">
|
||||
<h4 id="orge02acec"><span class="section-number-4">2.3.4</span> Test</h4>
|
||||
<div id="outline-container-org1c93b02" class="outline-4">
|
||||
<h4 id="org1c93b02"><span class="section-number-4">2.3.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org2377acf" class="outline-3">
|
||||
<h3 id="org2377acf"><span class="section-number-3">2.4</span> Drift vector</h3>
|
||||
<div id="outline-container-org8088e01" class="outline-3">
|
||||
<h3 id="org8088e01"><span class="section-number-3">2.4</span> Drift vector</h3>
|
||||
<div class="outline-text-3" id="text-2-4">
|
||||
<p>
|
||||
The drift vector is calculated as the ration of the gradient
|
||||
@ -1099,8 +1115,8 @@ with the determinant of the wavefunction.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9b3417f" class="outline-4">
|
||||
<h4 id="org9b3417f"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div id="outline-container-org7aec2c1" class="outline-4">
|
||||
<h4 id="org7aec2c1"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-4-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_drift_vector</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">drift_vector</span>);
|
||||
@ -1109,14 +1125,14 @@ with the determinant of the wavefunction.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga42a657" class="outline-4">
|
||||
<h4 id="orga42a657"><span class="section-number-4">2.4.2</span> Provide</h4>
|
||||
<div id="outline-container-orgda82302" class="outline-4">
|
||||
<h4 id="orgda82302"><span class="section-number-4">2.4.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6862a4d" class="outline-4">
|
||||
<h4 id="org6862a4d"><span class="section-number-4">2.4.3</span> Compute drift vector</h4>
|
||||
<div id="outline-container-orge7d5d66" class="outline-4">
|
||||
<h4 id="orge7d5d66"><span class="section-number-4">2.4.3</span> Compute drift vector</h4>
|
||||
<div class="outline-text-4" id="text-2-4-3">
|
||||
<table id="org6ebc05f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgcb3c5cf" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1337,15 +1353,15 @@ with the determinant of the wavefunction.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1d93222" class="outline-4">
|
||||
<h4 id="org1d93222"><span class="section-number-4">2.4.4</span> Test</h4>
|
||||
<div id="outline-container-orge1da51b" class="outline-4">
|
||||
<h4 id="orge1da51b"><span class="section-number-4">2.4.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:34</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:34 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Memory management</title>
|
||||
@ -311,16 +311,16 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org14ee41c">1. Memory data structure for the context</a></li>
|
||||
<li><a href="#org4857dfa">2. Passing info to allocation routines</a></li>
|
||||
<li><a href="#org7d7202a">3. Allocation/deallocation functions</a></li>
|
||||
<li><a href="#org268e4f8">4. Get the size of a memory block</a></li>
|
||||
<li><a href="#org055b47f">1. Memory data structure for the context</a></li>
|
||||
<li><a href="#org1f89b50">2. Passing info to allocation routines</a></li>
|
||||
<li><a href="#org07be39a">3. Allocation/deallocation functions</a></li>
|
||||
<li><a href="#orgd81ae1a">4. Get the size of a memory block</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org14ee41c" class="outline-2">
|
||||
<h2 id="org14ee41c"><span class="section-number-2">1</span> Memory data structure for the context</h2>
|
||||
<div id="outline-container-org055b47f" class="outline-2">
|
||||
<h2 id="org055b47f"><span class="section-number-2">1</span> Memory data structure for the context</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
Every time a new block of memory is allocated, the information
|
||||
@ -362,8 +362,8 @@ array, and the number of allocated blocks.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4857dfa" class="outline-2">
|
||||
<h2 id="org4857dfa"><span class="section-number-2">2</span> Passing info to allocation routines</h2>
|
||||
<div id="outline-container-org1f89b50" class="outline-2">
|
||||
<h2 id="org1f89b50"><span class="section-number-2">2</span> Passing info to allocation routines</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<p>
|
||||
Passing information to the allocation routine should be done by
|
||||
@ -372,8 +372,8 @@ passing an instance of a <code>qmckl_memory_info_struct</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7d7202a" class="outline-2">
|
||||
<h2 id="org7d7202a"><span class="section-number-2">3</span> Allocation/deallocation functions</h2>
|
||||
<div id="outline-container-org07be39a" class="outline-2">
|
||||
<h2 id="org07be39a"><span class="section-number-2">3</span> Allocation/deallocation functions</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
<p>
|
||||
Memory allocation inside the library should be done with
|
||||
@ -537,8 +537,8 @@ allocation and needs to be updated.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org268e4f8" class="outline-2">
|
||||
<h2 id="org268e4f8"><span class="section-number-2">4</span> Get the size of a memory block</h2>
|
||||
<div id="outline-container-orgd81ae1a" class="outline-2">
|
||||
<h2 id="orgd81ae1a"><span class="section-number-2">4</span> Get the size of a memory block</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
<p>
|
||||
All the blocks allocated with <code>qmckl_malloc</code> keep track of how many
|
||||
@ -633,7 +633,7 @@ rc = qmckl_context_destroy(context);
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:34</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
122
qmckl_mo.html
122
qmckl_mo.html
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:35 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Molecular Orbitals</title>
|
||||
@ -311,49 +311,49 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org912cb12">1. Context</a>
|
||||
<li><a href="#orgdf950d0">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#orgc448be8">1.1. Data structure</a></li>
|
||||
<li><a href="#orgc5ee3db">1.2. Initialization functions</a></li>
|
||||
<li><a href="#orgc68b83e">1.3. Access functions</a>
|
||||
<li><a href="#orgfe404af">1.1. Data structure</a></li>
|
||||
<li><a href="#orgbbf80b5">1.2. Initialization functions</a></li>
|
||||
<li><a href="#org8a984ee">1.3. Access functions</a>
|
||||
<ul>
|
||||
<li><a href="#orgf46eec8">1.3.1. Fortran interfaces</a></li>
|
||||
<li><a href="#org83f5537">1.3.1. Fortran interfaces</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org9abc8f2">1.4. Update</a>
|
||||
<li><a href="#org0455ec5">1.4. Update</a>
|
||||
<ul>
|
||||
<li><a href="#orgc4c0851">1.4.1. Fortran interface</a></li>
|
||||
<li><a href="#org4084507">1.4.1. Fortran interface</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org807b827">2. Computation</a>
|
||||
<li><a href="#org65a556c">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#org2960f88">2.1. Computation of MOs: values only</a>
|
||||
<li><a href="#org3fa043f">2.1. Computation of MOs: values only</a>
|
||||
<ul>
|
||||
<li><a href="#org679cc77">2.1.1. Get</a></li>
|
||||
<li><a href="#orgbd9b516">2.1.2. Provide</a></li>
|
||||
<li><a href="#orga34d447">2.1.3. Compute</a></li>
|
||||
<li><a href="#org2433be6">2.1.4. HPC version</a></li>
|
||||
<li><a href="#orgcd581b4">2.1.1. Get</a></li>
|
||||
<li><a href="#orgdc476e4">2.1.2. Provide</a></li>
|
||||
<li><a href="#orgbf468d4">2.1.3. Compute</a></li>
|
||||
<li><a href="#org1779827">2.1.4. HPC version</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org9803388">2.2. Computation of MOs: values, gradient, Laplacian</a>
|
||||
<li><a href="#org1de30ce">2.2. Computation of MOs: values, gradient, Laplacian</a>
|
||||
<ul>
|
||||
<li><a href="#org7a1afab">2.2.1. Get</a></li>
|
||||
<li><a href="#org2eb78d1">2.2.2. Provide</a></li>
|
||||
<li><a href="#org5a276e3">2.2.3. Compute</a></li>
|
||||
<li><a href="#org02946d6">2.2.4. HPC version</a></li>
|
||||
<li><a href="#orgd649be3">2.2.1. Get</a></li>
|
||||
<li><a href="#org3a732aa">2.2.2. Provide</a></li>
|
||||
<li><a href="#orga972b91">2.2.3. Compute</a></li>
|
||||
<li><a href="#orga8c794f">2.2.4. HPC version</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org793d2bf">2.3. Test</a></li>
|
||||
<li><a href="#orgc953c1b">2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org912cb12" class="outline-2">
|
||||
<h2 id="org912cb12"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-orgdf950d0" class="outline-2">
|
||||
<h2 id="orgdf950d0"><span class="section-number-2">1</span> Context</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The following arrays are stored in the context:
|
||||
@ -433,8 +433,8 @@ Computed data:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc448be8" class="outline-3">
|
||||
<h3 id="orgc448be8"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-orgfe404af" class="outline-3">
|
||||
<h3 id="orgfe404af"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> <span style="color: #228b22;">qmckl_mo_basis_struct</span> {
|
||||
@ -486,8 +486,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc5ee3db" class="outline-3">
|
||||
<h3 id="orgc5ee3db"><span class="section-number-3">1.2</span> Initialization functions</h3>
|
||||
<div id="outline-container-orgbbf80b5" class="outline-3">
|
||||
<h3 id="orgbbf80b5"><span class="section-number-3">1.2</span> Initialization functions</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
To set the basis set, all the following functions need to be
|
||||
@ -507,8 +507,8 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc68b83e" class="outline-3">
|
||||
<h3 id="orgc68b83e"><span class="section-number-3">1.3</span> Access functions</h3>
|
||||
<div id="outline-container-org8a984ee" class="outline-3">
|
||||
<h3 id="org8a984ee"><span class="section-number-3">1.3</span> Access functions</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
When all the data for the AOs have been provided, the following
|
||||
@ -521,13 +521,13 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf46eec8" class="outline-4">
|
||||
<h4 id="orgf46eec8"><span class="section-number-4">1.3.1</span> Fortran interfaces</h4>
|
||||
<div id="outline-container-org83f5537" class="outline-4">
|
||||
<h4 id="org83f5537"><span class="section-number-4">1.3.1</span> Fortran interfaces</h4>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9abc8f2" class="outline-3">
|
||||
<h3 id="org9abc8f2"><span class="section-number-3">1.4</span> Update</h3>
|
||||
<div id="outline-container-org0455ec5" class="outline-3">
|
||||
<h3 id="org0455ec5"><span class="section-number-3">1.4</span> Update</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<p>
|
||||
Useless MOs can be removed, for instance virtual MOs in a single
|
||||
@ -548,22 +548,22 @@ otherwise it is kept.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc4c0851" class="outline-4">
|
||||
<h4 id="orgc4c0851"><span class="section-number-4">1.4.1</span> Fortran interface</h4>
|
||||
<div id="outline-container-org4084507" class="outline-4">
|
||||
<h4 id="org4084507"><span class="section-number-4">1.4.1</span> Fortran interface</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org807b827" class="outline-2">
|
||||
<h2 id="org807b827"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org65a556c" class="outline-2">
|
||||
<h2 id="org65a556c"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org2960f88" class="outline-3">
|
||||
<h3 id="org2960f88"><span class="section-number-3">2.1</span> Computation of MOs: values only</h3>
|
||||
<div id="outline-container-org3fa043f" class="outline-3">
|
||||
<h3 id="org3fa043f"><span class="section-number-3">2.1</span> Computation of MOs: values only</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
</div>
|
||||
<div id="outline-container-org679cc77" class="outline-4">
|
||||
<h4 id="org679cc77"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-orgcd581b4" class="outline-4">
|
||||
<h4 id="orgcd581b4"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span>
|
||||
@ -587,8 +587,8 @@ Uses the given array to compute the values.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbd9b516" class="outline-4">
|
||||
<h4 id="orgbd9b516"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
<div id="outline-container-orgdc476e4" class="outline-4">
|
||||
<h4 id="orgdc476e4"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_provide_mo_basis_mo_value</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>);
|
||||
@ -673,10 +673,10 @@ Uses the given array to compute the values.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga34d447" class="outline-4">
|
||||
<h4 id="orga34d447"><span class="section-number-4">2.1.3</span> Compute</h4>
|
||||
<div id="outline-container-orgbf468d4" class="outline-4">
|
||||
<h4 id="orgbf468d4"><span class="section-number-4">2.1.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<table id="org3f6744b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgc9839dc" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -850,8 +850,8 @@ matrix multiplication instead of a dgemm, as exposed in
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2433be6" class="outline-4">
|
||||
<h4 id="org2433be6"><span class="section-number-4">2.1.4</span> HPC version</h4>
|
||||
<div id="outline-container-org1779827" class="outline-4">
|
||||
<h4 id="org1779827"><span class="section-number-4">2.1.4</span> HPC version</h4>
|
||||
<div class="outline-text-4" id="text-2-1-4">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#ifdef</span> HAVE_HPC
|
||||
@ -944,12 +944,12 @@ matrix multiplication instead of a dgemm, as exposed in
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9803388" class="outline-3">
|
||||
<h3 id="org9803388"><span class="section-number-3">2.2</span> Computation of MOs: values, gradient, Laplacian</h3>
|
||||
<div id="outline-container-org1de30ce" class="outline-3">
|
||||
<h3 id="org1de30ce"><span class="section-number-3">2.2</span> Computation of MOs: values, gradient, Laplacian</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
</div>
|
||||
<div id="outline-container-org7a1afab" class="outline-4">
|
||||
<h4 id="org7a1afab"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-orgd649be3" class="outline-4">
|
||||
<h4 id="orgd649be3"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-2-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span>
|
||||
@ -973,8 +973,8 @@ Uses the given array to compute the VGL.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2eb78d1" class="outline-4">
|
||||
<h4 id="org2eb78d1"><span class="section-number-4">2.2.2</span> Provide</h4>
|
||||
<div id="outline-container-org3a732aa" class="outline-4">
|
||||
<h4 id="org3a732aa"><span class="section-number-4">2.2.2</span> Provide</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_provide_mo_basis_mo_vgl</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>);
|
||||
@ -1058,10 +1058,10 @@ Uses the given array to compute the VGL.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5a276e3" class="outline-4">
|
||||
<h4 id="org5a276e3"><span class="section-number-4">2.2.3</span> Compute</h4>
|
||||
<div id="outline-container-orga972b91" class="outline-4">
|
||||
<h4 id="orga972b91"><span class="section-number-4">2.2.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-3">
|
||||
<table id="org4c82bd7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orga5830b1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1233,8 +1233,8 @@ matrix multiplication instead of a dgemm, as exposed in
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org02946d6" class="outline-4">
|
||||
<h4 id="org02946d6"><span class="section-number-4">2.2.4</span> HPC version</h4>
|
||||
<div id="outline-container-orga8c794f" class="outline-4">
|
||||
<h4 id="orga8c794f"><span class="section-number-4">2.2.4</span> HPC version</h4>
|
||||
<div class="outline-text-4" id="text-2-2-4">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#ifdef</span> HAVE_HPC
|
||||
@ -1380,14 +1380,14 @@ matrix multiplication instead of a dgemm, as exposed in
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org793d2bf" class="outline-3">
|
||||
<h3 id="org793d2bf"><span class="section-number-3">2.3</span> Test</h3>
|
||||
<div id="outline-container-orgc953c1b" class="outline-3">
|
||||
<h3 id="orgc953c1b"><span class="section-number-3">2.3</span> Test</h3>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:35</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:35 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Nucleus</title>
|
||||
@ -333,28 +333,28 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org17523ae">1. Context</a>
|
||||
<li><a href="#org55f7e27">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org7a4f35d">1.1. Data structure</a></li>
|
||||
<li><a href="#orgb9408b0">1.2. Access functions</a></li>
|
||||
<li><a href="#org2371429">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgc3b4f7c">1.4. Test</a></li>
|
||||
<li><a href="#orga57b8b9">1.1. Data structure</a></li>
|
||||
<li><a href="#org5f9cfde">1.2. Access functions</a></li>
|
||||
<li><a href="#orgd3fbee7">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org42a246c">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org04d0bc5">2. Computation</a>
|
||||
<li><a href="#org2b7ffc7">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#org06c8b68">2.1. Nucleus-nucleus distances</a>
|
||||
<li><a href="#orgf5b2399">2.1. Nucleus-nucleus distances</a>
|
||||
<ul>
|
||||
<li><a href="#orgd614a3d">2.1.1. Get</a></li>
|
||||
<li><a href="#org9d5cb16">2.1.2. Compute</a></li>
|
||||
<li><a href="#orga6cef05">2.1.3. Test</a></li>
|
||||
<li><a href="#orgdb283c2">2.1.1. Get</a></li>
|
||||
<li><a href="#orgeca70db">2.1.2. Compute</a></li>
|
||||
<li><a href="#org4c86617">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org7170996">2.2. Nuclear repulsion energy</a>
|
||||
<li><a href="#orgf187ca7">2.2. Nuclear repulsion energy</a>
|
||||
<ul>
|
||||
<li><a href="#orgaaec2af">2.2.1. Get</a></li>
|
||||
<li><a href="#org8e64db8">2.2.2. Compute</a></li>
|
||||
<li><a href="#orgb82ccde">2.2.3. Test</a></li>
|
||||
<li><a href="#orgb49466e">2.2.1. Get</a></li>
|
||||
<li><a href="#org12d63ef">2.2.2. Compute</a></li>
|
||||
<li><a href="#org398c324">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -363,8 +363,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org17523ae" class="outline-2">
|
||||
<h2 id="org17523ae"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org55f7e27" class="outline-2">
|
||||
<h2 id="org55f7e27"><span class="section-number-2">1</span> Context</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The following data stored in the context:
|
||||
@ -461,8 +461,8 @@ Computed data:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7a4f35d" class="outline-3">
|
||||
<h3 id="org7a4f35d"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-orga57b8b9" class="outline-3">
|
||||
<h3 id="orga57b8b9"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> <span style="color: #228b22;">qmckl_nucleus_struct</span> {
|
||||
@ -516,8 +516,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb9408b0" class="outline-3">
|
||||
<h3 id="orgb9408b0"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org5f9cfde" class="outline-3">
|
||||
<h3 id="org5f9cfde"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
When all the data relative to nuclei have been set, the following
|
||||
@ -531,8 +531,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2371429" class="outline-3">
|
||||
<h3 id="org2371429"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-orgd3fbee7" class="outline-3">
|
||||
<h3 id="orgd3fbee7"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
To set the data relative to the nuclei in the context, the
|
||||
@ -578,8 +578,8 @@ are be given in atomic units.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc3b4f7c" class="outline-3">
|
||||
<h3 id="orgc3b4f7c"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-org42a246c" class="outline-3">
|
||||
<h3 id="org42a246c"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #a020f0;">const</span> <span style="color: #228b22;">double</span>* <span style="color: #a0522d;">nucl_charge</span> = chbrclf_charge;
|
||||
@ -648,8 +648,8 @@ rc = qmckl_get_nucleus_charge(context, nucl_charge2, chbrclf_nucl_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org04d0bc5" class="outline-2">
|
||||
<h2 id="org04d0bc5"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org2b7ffc7" class="outline-2">
|
||||
<h2 id="org2b7ffc7"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<p>
|
||||
The computed data is stored in the context so that it can be reused
|
||||
@ -662,12 +662,12 @@ current date is stored.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org06c8b68" class="outline-3">
|
||||
<h3 id="org06c8b68"><span class="section-number-3">2.1</span> Nucleus-nucleus distances</h3>
|
||||
<div id="outline-container-orgf5b2399" class="outline-3">
|
||||
<h3 id="orgf5b2399"><span class="section-number-3">2.1</span> Nucleus-nucleus distances</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
</div>
|
||||
<div id="outline-container-orgd614a3d" class="outline-4">
|
||||
<h4 id="orgd614a3d"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-orgdb283c2" class="outline-4">
|
||||
<h4 id="orgdb283c2"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span>
|
||||
@ -679,10 +679,10 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9d5cb16" class="outline-4">
|
||||
<h4 id="org9d5cb16"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-orgeca70db" class="outline-4">
|
||||
<h4 id="orgeca70db"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="org17068e8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org125ab20" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -760,8 +760,8 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga6cef05" class="outline-4">
|
||||
<h4 id="orga6cef05"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-org4c86617" class="outline-4">
|
||||
<h4 id="org4c86617"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Reference input data </span>*/
|
||||
@ -780,8 +780,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance, chbrclf_nucl_num*chbrclf_n
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7170996" class="outline-3">
|
||||
<h3 id="org7170996"><span class="section-number-3">2.2</span> Nuclear repulsion energy</h3>
|
||||
<div id="outline-container-orgf187ca7" class="outline-3">
|
||||
<h3 id="orgf187ca7"><span class="section-number-3">2.2</span> Nuclear repulsion energy</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
\[
|
||||
@ -790,8 +790,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance, chbrclf_nucl_num*chbrclf_n
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgaaec2af" class="outline-4">
|
||||
<h4 id="orgaaec2af"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-orgb49466e" class="outline-4">
|
||||
<h4 id="orgb49466e"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-2-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_nucleus_repulsion</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">energy</span>);
|
||||
@ -800,10 +800,10 @@ rc = qmckl_get_nucleus_nn_distance(context, distance, chbrclf_nucl_num*chbrclf_n
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8e64db8" class="outline-4">
|
||||
<h4 id="org8e64db8"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-org12d63ef" class="outline-4">
|
||||
<h4 id="org12d63ef"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="org3b19a3a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org7357850" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -893,8 +893,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance, chbrclf_nucl_num*chbrclf_n
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb82ccde" class="outline-4">
|
||||
<h4 id="orgb82ccde"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-org398c324" class="outline-4">
|
||||
<h4 id="org398c324"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-2-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Reference input data </span>*/
|
||||
@ -914,7 +914,7 @@ rc = qmckl_get_nucleus_repulsion(context, &rep);
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:35</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:34 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Numerical precision</title>
|
||||
@ -333,16 +333,16 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orga7f5a6b">1. Control of the numerical precision</a></li>
|
||||
<li><a href="#org8ee7e54">2. Precision</a></li>
|
||||
<li><a href="#org96b6d8a">3. Range</a></li>
|
||||
<li><a href="#orgddea0c8">4. Helper functions</a></li>
|
||||
<li><a href="#org735982e">1. Control of the numerical precision</a></li>
|
||||
<li><a href="#org0834827">2. Precision</a></li>
|
||||
<li><a href="#org6534008">3. Range</a></li>
|
||||
<li><a href="#org3a1eae7">4. Helper functions</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga7f5a6b" class="outline-2">
|
||||
<h2 id="orga7f5a6b"><span class="section-number-2">1</span> Control of the numerical precision</h2>
|
||||
<div id="outline-container-org735982e" class="outline-2">
|
||||
<h2 id="org735982e"><span class="section-number-2">1</span> Control of the numerical precision</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
Controlling numerical precision enables optimizations. Here, the
|
||||
@ -353,7 +353,7 @@ Arithmetic (IEEE 754),
|
||||
refers to the number of exponent bits.
|
||||
</p>
|
||||
|
||||
<table id="orgc34e061" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org27320f5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -397,8 +397,8 @@ integer. The update functions return <code>QMCKL_SUCCESS</code> or
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8ee7e54" class="outline-2">
|
||||
<h2 id="org8ee7e54"><span class="section-number-2">2</span> Precision</h2>
|
||||
<div id="outline-container-org0834827" class="outline-2">
|
||||
<h2 id="org0834827"><span class="section-number-2">2</span> Precision</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<p>
|
||||
<code>qmckl_context_set_numprec_precision</code> modifies the parameter for the
|
||||
@ -485,8 +485,8 @@ numerical precision in the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org96b6d8a" class="outline-2">
|
||||
<h2 id="org96b6d8a"><span class="section-number-2">3</span> Range</h2>
|
||||
<div id="outline-container-org6534008" class="outline-2">
|
||||
<h2 id="org6534008"><span class="section-number-2">3</span> Range</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
<p>
|
||||
<code>qmckl_set_numprec_range</code> modifies the parameter for the numerical
|
||||
@ -561,8 +561,8 @@ range in a given context.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orgddea0c8" class="outline-2">
|
||||
<h2 id="orgddea0c8"><span class="section-number-2">4</span> Helper functions</h2>
|
||||
<div id="outline-container-org3a1eae7" class="outline-2">
|
||||
<h2 id="org3a1eae7"><span class="section-number-2">4</span> Helper functions</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
<p>
|
||||
<code>qmckl_get_numprec_epsilon</code> returns \(\epsilon = 2^{1-n}\) where <code>n</code> is the precision.
|
||||
@ -581,7 +581,7 @@ We need to remove the sign bit from the precision.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:34</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:35 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Point</title>
|
||||
@ -333,25 +333,25 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org9107263">1. Context</a>
|
||||
<li><a href="#org03f4daa">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#orgd9a12c7">1.1. Data structure</a></li>
|
||||
<li><a href="#org16baf2f">1.2. Access functions</a>
|
||||
<li><a href="#org6b9430d">1.1. Data structure</a></li>
|
||||
<li><a href="#org274639b">1.2. Access functions</a>
|
||||
<ul>
|
||||
<li><a href="#orgf2b9c58">1.2.1. Number of points</a></li>
|
||||
<li><a href="#orgc21ebb4">1.2.2. Point coordinates</a></li>
|
||||
<li><a href="#orgeb29085">1.2.1. Number of points</a></li>
|
||||
<li><a href="#org72e1564">1.2.2. Point coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org37ecadc">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org6665bd4">1.4. Test</a></li>
|
||||
<li><a href="#org68aba3c">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgc3185a7">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9107263" class="outline-2">
|
||||
<h2 id="org9107263"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org03f4daa" class="outline-2">
|
||||
<h2 id="org03f4daa"><span class="section-number-2">1</span> Context</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The following data stored in the context:
|
||||
@ -401,8 +401,8 @@ corresponds to the 3 × <code>num</code> matrix.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd9a12c7" class="outline-3">
|
||||
<h3 id="orgd9a12c7"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org6b9430d" class="outline-3">
|
||||
<h3 id="org6b9430d"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> <span style="color: #228b22;">qmckl_point_struct</span> {
|
||||
@ -438,8 +438,8 @@ corresponds to the 3 × <code>num</code> matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org16baf2f" class="outline-3">
|
||||
<h3 id="org16baf2f"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org274639b" class="outline-3">
|
||||
<h3 id="org274639b"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
Access functions return <code>QMCKL_SUCCESS</code> when the data has been
|
||||
@ -450,8 +450,8 @@ contains the requested data. Otherwise, this variable is untouched.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf2b9c58" class="outline-4">
|
||||
<h4 id="orgf2b9c58"><span class="section-number-4">1.2.1</span> Number of points</h4>
|
||||
<div id="outline-container-orgeb29085" class="outline-4">
|
||||
<h4 id="orgeb29085"><span class="section-number-4">1.2.1</span> Number of points</h4>
|
||||
<div class="outline-text-4" id="text-1-2-1">
|
||||
<p>
|
||||
Returns the number of points stored in the context.
|
||||
@ -473,8 +473,8 @@ Returns the number of points stored in the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc21ebb4" class="outline-4">
|
||||
<h4 id="orgc21ebb4"><span class="section-number-4">1.2.2</span> Point coordinates</h4>
|
||||
<div id="outline-container-org72e1564" class="outline-4">
|
||||
<h4 id="org72e1564"><span class="section-number-4">1.2.2</span> Point coordinates</h4>
|
||||
<div class="outline-text-4" id="text-1-2-2">
|
||||
<p>
|
||||
Returns the point coordinates as sequences of (x,y,z).
|
||||
@ -502,8 +502,8 @@ The pointer is assumed to point on a memory block of size
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org37ecadc" class="outline-3">
|
||||
<h3 id="org37ecadc"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org68aba3c" class="outline-3">
|
||||
<h3 id="org68aba3c"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
When the data is set in the context, if the arrays are large
|
||||
@ -635,8 +635,8 @@ Copy a sequence of <code>num</code> points \((x,y,z)\) into the context.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org6665bd4" class="outline-3">
|
||||
<h3 id="org6665bd4"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-orgc3185a7" class="outline-3">
|
||||
<h3 id="orgc3185a7"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Reference input data </span>*/
|
||||
@ -695,7 +695,7 @@ rc = qmckl_get_point (context, <span style="color: #8b2252;">'N'</span>, coord3,
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:35</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:35 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Sherman-Morrison-Woodbury</title>
|
||||
@ -333,86 +333,86 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org9c3e12a">1. Headers</a></li>
|
||||
<li><a href="#org32970e6">2. Naïve Sherman-Morrison</a>
|
||||
<li><a href="#orgc304a83">1. Headers</a></li>
|
||||
<li><a href="#org1136c3b">2. Naïve Sherman-Morrison</a>
|
||||
<ul>
|
||||
<li><a href="#orge0166a6">2.1. <code>qmckl_sherman_morrison</code></a>
|
||||
<li><a href="#org3ebd707">2.1. <code>qmckl_sherman_morrison</code></a>
|
||||
<ul>
|
||||
<li><a href="#org6f97b9c">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org2dcbe0a">2.1.2. C header</a></li>
|
||||
<li><a href="#org8f33daf">2.1.3. C source</a></li>
|
||||
<li><a href="#orgff9b5bd">2.1.4. Performance</a></li>
|
||||
<li><a href="#org42c7002">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org73c97b4">2.1.2. C header</a></li>
|
||||
<li><a href="#orgbac0e26">2.1.3. C source</a></li>
|
||||
<li><a href="#org6ef7ccb">2.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org9a7d0ad">3. Woodbury 2x2</a>
|
||||
<li><a href="#orgd9f3b40">3. Woodbury 2x2</a>
|
||||
<ul>
|
||||
<li><a href="#org5da0c1e">3.1. <code>qmckl_woodbury_2</code></a>
|
||||
<li><a href="#orgc4dca8c">3.1. <code>qmckl_woodbury_2</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgbfc4c0f">3.1.1. Requirements</a></li>
|
||||
<li><a href="#org9a0ac53">3.1.2. C header</a></li>
|
||||
<li><a href="#orga8c59bd">3.1.3. C source</a></li>
|
||||
<li><a href="#org83ef4db">3.1.4. Performance</a></li>
|
||||
<li><a href="#org5f5793c">3.1.1. Requirements</a></li>
|
||||
<li><a href="#org65eb51a">3.1.2. C header</a></li>
|
||||
<li><a href="#orgf99fbe9">3.1.3. C source</a></li>
|
||||
<li><a href="#orga3c9782">3.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org631fb5a">4. Woodbury 3x3</a>
|
||||
<li><a href="#org13bc6de">4. Woodbury 3x3</a>
|
||||
<ul>
|
||||
<li><a href="#orgab5b40e">4.1. <code>qmckl_woodbury_3</code></a>
|
||||
<li><a href="#orgd278e60">4.1. <code>qmckl_woodbury_3</code></a>
|
||||
<ul>
|
||||
<li><a href="#org76c7997">4.1.1. Requirements</a></li>
|
||||
<li><a href="#org7547f1d">4.1.2. C header</a></li>
|
||||
<li><a href="#org2c1bc57">4.1.3. C source</a></li>
|
||||
<li><a href="#org7e19c23">4.1.4. Performance…</a></li>
|
||||
<li><a href="#org40b97d3">4.1.1. Requirements</a></li>
|
||||
<li><a href="#orga0fc0a4">4.1.2. C header</a></li>
|
||||
<li><a href="#orgd19ecb3">4.1.3. C source</a></li>
|
||||
<li><a href="#org5d6fc0e">4.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orge03f34a">5. Sherman-Morrison with update splitting</a>
|
||||
<li><a href="#org08041a3">5. Sherman-Morrison with update splitting</a>
|
||||
<ul>
|
||||
<li><a href="#org16cef54">5.1. <code>qmckl_sherman_morrison_splitting</code></a>
|
||||
<li><a href="#orgd01d699">5.1. <code>qmckl_sherman_morrison_splitting</code></a>
|
||||
<ul>
|
||||
<li><a href="#org4445bfe">5.1.1. Requirements</a></li>
|
||||
<li><a href="#org233a0e4">5.1.2. C header</a></li>
|
||||
<li><a href="#org14b7e12">5.1.3. C source</a></li>
|
||||
<li><a href="#org7021738">5.1.4. Performance…</a></li>
|
||||
<li><a href="#orgd1ad239">5.1.1. Requirements</a></li>
|
||||
<li><a href="#orgfb202d0">5.1.2. C header</a></li>
|
||||
<li><a href="#orgc3eef80">5.1.3. C source</a></li>
|
||||
<li><a href="#orgd66fed9">5.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org42bcf18">6. Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</a>
|
||||
<li><a href="#org4c581c6">6. Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</a>
|
||||
<ul>
|
||||
<li><a href="#org474088a">6.1. <code>qmckl_sherman_morrison_smw32s</code></a>
|
||||
<li><a href="#orgd47079e">6.1. <code>qmckl_sherman_morrison_smw32s</code></a>
|
||||
<ul>
|
||||
<li><a href="#orge614815">6.1.1. Requirements</a></li>
|
||||
<li><a href="#orgd0030ba">6.1.2. C header</a></li>
|
||||
<li><a href="#org8f8cf27">6.1.3. C source</a></li>
|
||||
<li><a href="#org610f6f7">6.1.4. Performance…</a></li>
|
||||
<li><a href="#org74df38b">6.1.1. Requirements</a></li>
|
||||
<li><a href="#orge5a3e62">6.1.2. C header</a></li>
|
||||
<li><a href="#org9594c05">6.1.3. C source</a></li>
|
||||
<li><a href="#orged6bf26">6.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org9a5fcfd">7. Helper Functions</a>
|
||||
<li><a href="#orge74ab19">7. Helper Functions</a>
|
||||
<ul>
|
||||
<li><a href="#org5ac1134">7.1. <code>qmckl_slagel_splitting</code></a>
|
||||
<li><a href="#org512c91d">7.1. <code>qmckl_slagel_splitting</code></a>
|
||||
<ul>
|
||||
<li><a href="#org3dcc20a">7.1.1. Requirements</a></li>
|
||||
<li><a href="#org1769d4b">7.1.2. C header</a></li>
|
||||
<li><a href="#orgde260e4">7.1.3. C source</a></li>
|
||||
<li><a href="#org4c098b5">7.1.4. Performance</a></li>
|
||||
<li><a href="#org6bad2c4">7.1.1. Requirements</a></li>
|
||||
<li><a href="#org2bde0dd">7.1.2. C header</a></li>
|
||||
<li><a href="#orgce88931">7.1.3. C source</a></li>
|
||||
<li><a href="#org973c203">7.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org7d37f67">8. End of files</a></li>
|
||||
<li><a href="#org8602b34">8. End of files</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9c3e12a" class="outline-2">
|
||||
<h2 id="org9c3e12a"><span class="section-number-2">1</span> Headers</h2>
|
||||
<div id="outline-container-orgc304a83" class="outline-2">
|
||||
<h2 id="orgc304a83"><span class="section-number-2">1</span> Headers</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;">"qmckl.h"</span>
|
||||
@ -431,12 +431,12 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org32970e6" class="outline-2">
|
||||
<h2 id="org32970e6"><span class="section-number-2">2</span> Naïve Sherman-Morrison</h2>
|
||||
<div id="outline-container-org1136c3b" class="outline-2">
|
||||
<h2 id="org1136c3b"><span class="section-number-2">2</span> Naïve Sherman-Morrison</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-orge0166a6" class="outline-3">
|
||||
<h3 id="orge0166a6"><span class="section-number-3">2.1</span> <code>qmckl_sherman_morrison</code></h3>
|
||||
<div id="outline-container-org3ebd707" class="outline-3">
|
||||
<h3 id="org3ebd707"><span class="section-number-3">2.1</span> <code>qmckl_sherman_morrison</code></h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
This is the simplest of the available Sherman-Morrison-Woodbury kernels. It applies rank-1 updates one by one in
|
||||
@ -478,7 +478,7 @@ If the determinant of the Slater-matrix is passed, it will be updated to the det
|
||||
from applying the updates to the original matrix.
|
||||
</p>
|
||||
|
||||
<table id="org9af9be4" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org92ea991" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -557,8 +557,8 @@ from applying the updates to the original matrix.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6f97b9c" class="outline-4">
|
||||
<h4 id="org6f97b9c"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org42c7002" class="outline-4">
|
||||
<h4 id="org42c7002"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-2-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -573,8 +573,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2dcbe0a" class="outline-4">
|
||||
<h4 id="org2dcbe0a"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div id="outline-container-org73c97b4" class="outline-4">
|
||||
<h4 id="org73c97b4"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_sherman_morrison</span> (
|
||||
@ -592,8 +592,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8f33daf" class="outline-4">
|
||||
<h4 id="org8f33daf"><span class="section-number-4">2.1.3</span> C source</h4>
|
||||
<div id="outline-container-orgbac0e26" class="outline-4">
|
||||
<h4 id="orgbac0e26"><span class="section-number-4">2.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -663,8 +663,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgff9b5bd" class="outline-4">
|
||||
<h4 id="orgff9b5bd"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org6ef7ccb" class="outline-4">
|
||||
<h4 id="org6ef7ccb"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-2-1-4">
|
||||
<p>
|
||||
This function performs best when there is only 1 rank-1 update in the update cycle. It is not useful to
|
||||
@ -676,12 +676,12 @@ where applying the update causes singular behaviour.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9a7d0ad" class="outline-2">
|
||||
<h2 id="org9a7d0ad"><span class="section-number-2">3</span> Woodbury 2x2</h2>
|
||||
<div id="outline-container-orgd9f3b40" class="outline-2">
|
||||
<h2 id="orgd9f3b40"><span class="section-number-2">3</span> Woodbury 2x2</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org5da0c1e" class="outline-3">
|
||||
<h3 id="org5da0c1e"><span class="section-number-3">3.1</span> <code>qmckl_woodbury_2</code></h3>
|
||||
<div id="outline-container-orgc4dca8c" class="outline-3">
|
||||
<h3 id="orgc4dca8c"><span class="section-number-3">3.1</span> <code>qmckl_woodbury_2</code></h3>
|
||||
<div class="outline-text-3" id="text-3-1">
|
||||
<p>
|
||||
The Woodbury 2x2 kernel. It is used to apply two rank-1 updates at once. The formula used in
|
||||
@ -705,7 +705,7 @@ from applying the updates to the original matrix.
|
||||
|
||||
|
||||
|
||||
<table id="orge9187d4" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org67bc229" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -777,8 +777,8 @@ from applying the updates to the original matrix.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbfc4c0f" class="outline-4">
|
||||
<h4 id="orgbfc4c0f"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org5f5793c" class="outline-4">
|
||||
<h4 id="org5f5793c"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-3-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>qmckl_null_context</code></li>
|
||||
@ -792,8 +792,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9a0ac53" class="outline-4">
|
||||
<h4 id="org9a0ac53"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div id="outline-container-org65eb51a" class="outline-4">
|
||||
<h4 id="org65eb51a"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-3-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_woodbury_2</span> (
|
||||
@ -810,8 +810,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga8c59bd" class="outline-4">
|
||||
<h4 id="orga8c59bd"><span class="section-number-4">3.1.3</span> C source</h4>
|
||||
<div id="outline-container-orgf99fbe9" class="outline-4">
|
||||
<h4 id="orgf99fbe9"><span class="section-number-4">3.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-3-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -898,8 +898,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org83ef4db" class="outline-4">
|
||||
<h4 id="org83ef4db"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div id="outline-container-orga3c9782" class="outline-4">
|
||||
<h4 id="orga3c9782"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-3-1-4">
|
||||
<p>
|
||||
This function is most efficient when used in cases where there are only 2 rank-1 updates and
|
||||
@ -910,12 +910,12 @@ it is sure they will not result in a singular matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org631fb5a" class="outline-2">
|
||||
<h2 id="org631fb5a"><span class="section-number-2">4</span> Woodbury 3x3</h2>
|
||||
<div id="outline-container-org13bc6de" class="outline-2">
|
||||
<h2 id="org13bc6de"><span class="section-number-2">4</span> Woodbury 3x3</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-orgab5b40e" class="outline-3">
|
||||
<h3 id="orgab5b40e"><span class="section-number-3">4.1</span> <code>qmckl_woodbury_3</code></h3>
|
||||
<div id="outline-container-orgd278e60" class="outline-3">
|
||||
<h3 id="orgd278e60"><span class="section-number-3">4.1</span> <code>qmckl_woodbury_3</code></h3>
|
||||
<div class="outline-text-3" id="text-4-1">
|
||||
<p>
|
||||
The 3x3 version of the Woodbury 2x2 kernel. It is used to apply three
|
||||
@ -936,7 +936,7 @@ from applying the updates to the original matrix.
|
||||
|
||||
|
||||
|
||||
<table id="org5ac5ced" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org9c69278" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1008,8 +1008,8 @@ from applying the updates to the original matrix.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org76c7997" class="outline-4">
|
||||
<h4 id="org76c7997"><span class="section-number-4">4.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org40b97d3" class="outline-4">
|
||||
<h4 id="org40b97d3"><span class="section-number-4">4.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-4-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>qmckl_null_context</code></li>
|
||||
@ -1023,8 +1023,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7547f1d" class="outline-4">
|
||||
<h4 id="org7547f1d"><span class="section-number-4">4.1.2</span> C header</h4>
|
||||
<div id="outline-container-orga0fc0a4" class="outline-4">
|
||||
<h4 id="orga0fc0a4"><span class="section-number-4">4.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-4-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_woodbury_3</span> (
|
||||
@ -1041,8 +1041,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2c1bc57" class="outline-4">
|
||||
<h4 id="org2c1bc57"><span class="section-number-4">4.1.3</span> C source</h4>
|
||||
<div id="outline-container-orgd19ecb3" class="outline-4">
|
||||
<h4 id="orgd19ecb3"><span class="section-number-4">4.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-4-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -1144,8 +1144,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7e19c23" class="outline-4">
|
||||
<h4 id="org7e19c23"><span class="section-number-4">4.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-org5d6fc0e" class="outline-4">
|
||||
<h4 id="org5d6fc0e"><span class="section-number-4">4.1.4</span> Performance…</h4>
|
||||
<div class="outline-text-4" id="text-4-1-4">
|
||||
<p>
|
||||
This function is most efficient when used in cases where there are only 3 rank-1 updates and
|
||||
@ -1156,12 +1156,12 @@ it is sure they will not result in a singular matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge03f34a" class="outline-2">
|
||||
<h2 id="orge03f34a"><span class="section-number-2">5</span> Sherman-Morrison with update splitting</h2>
|
||||
<div id="outline-container-org08041a3" class="outline-2">
|
||||
<h2 id="org08041a3"><span class="section-number-2">5</span> Sherman-Morrison with update splitting</h2>
|
||||
<div class="outline-text-2" id="text-5">
|
||||
</div>
|
||||
<div id="outline-container-org16cef54" class="outline-3">
|
||||
<h3 id="org16cef54"><span class="section-number-3">5.1</span> <code>qmckl_sherman_morrison_splitting</code></h3>
|
||||
<div id="outline-container-orgd01d699" class="outline-3">
|
||||
<h3 id="orgd01d699"><span class="section-number-3">5.1</span> <code>qmckl_sherman_morrison_splitting</code></h3>
|
||||
<div class="outline-text-3" id="text-5-1">
|
||||
<p>
|
||||
This is a variation on the 'Naive' Sherman-Morrison kernel. Whenever the denominator \(1+v_j^T S^{-1} u_j\) in
|
||||
@ -1183,7 +1183,7 @@ If the determinant of the Slater-matrix is passed, it will be updated to the det
|
||||
from applying the updates to the original matrix.
|
||||
</p>
|
||||
|
||||
<table id="org82c97c8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org903b0aa" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1267,8 +1267,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org4445bfe" class="outline-4">
|
||||
<h4 id="org4445bfe"><span class="section-number-4">5.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgd1ad239" class="outline-4">
|
||||
<h4 id="orgd1ad239"><span class="section-number-4">5.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-5-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -1283,8 +1283,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org233a0e4" class="outline-4">
|
||||
<h4 id="org233a0e4"><span class="section-number-4">5.1.2</span> C header</h4>
|
||||
<div id="outline-container-orgfb202d0" class="outline-4">
|
||||
<h4 id="orgfb202d0"><span class="section-number-4">5.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-5-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_sherman_morrison_splitting</span> (
|
||||
@ -1302,8 +1302,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org14b7e12" class="outline-4">
|
||||
<h4 id="org14b7e12"><span class="section-number-4">5.1.3</span> C source</h4>
|
||||
<div id="outline-container-orgc3eef80" class="outline-4">
|
||||
<h4 id="orgc3eef80"><span class="section-number-4">5.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-5-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -1343,8 +1343,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7021738" class="outline-4">
|
||||
<h4 id="org7021738"><span class="section-number-4">5.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-orgd66fed9" class="outline-4">
|
||||
<h4 id="orgd66fed9"><span class="section-number-4">5.1.4</span> Performance…</h4>
|
||||
<div class="outline-text-4" id="text-5-1-4">
|
||||
<p>
|
||||
This kernel performs best when there are 2 or more rank-1 update cycles and fail-rate is high.
|
||||
@ -1354,12 +1354,12 @@ This kernel performs best when there are 2 or more rank-1 update cycles and fail
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org42bcf18" class="outline-2">
|
||||
<h2 id="org42bcf18"><span class="section-number-2">6</span> Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</h2>
|
||||
<div id="outline-container-org4c581c6" class="outline-2">
|
||||
<h2 id="org4c581c6"><span class="section-number-2">6</span> Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</h2>
|
||||
<div class="outline-text-2" id="text-6">
|
||||
</div>
|
||||
<div id="outline-container-org474088a" class="outline-3">
|
||||
<h3 id="org474088a"><span class="section-number-3">6.1</span> <code>qmckl_sherman_morrison_smw32s</code></h3>
|
||||
<div id="outline-container-orgd47079e" class="outline-3">
|
||||
<h3 id="orgd47079e"><span class="section-number-3">6.1</span> <code>qmckl_sherman_morrison_smw32s</code></h3>
|
||||
<div class="outline-text-3" id="text-6-1">
|
||||
<p>
|
||||
The Woodbury 3x3 and 2x2 kernel with Sherman-Morrison and update splitting combines the low-level Woodbury 3x3 kernel,
|
||||
@ -1374,7 +1374,7 @@ If the determinant of the Slater-matrix is passed, it will be updated to the det
|
||||
from applying the updates to the original matrix.
|
||||
</p>
|
||||
|
||||
<table id="orgaa62219" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org090c043" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1454,8 +1454,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orge614815" class="outline-4">
|
||||
<h4 id="orge614815"><span class="section-number-4">6.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org74df38b" class="outline-4">
|
||||
<h4 id="org74df38b"><span class="section-number-4">6.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-6-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -1470,8 +1470,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd0030ba" class="outline-4">
|
||||
<h4 id="orgd0030ba"><span class="section-number-4">6.1.2</span> C header</h4>
|
||||
<div id="outline-container-orge5a3e62" class="outline-4">
|
||||
<h4 id="orge5a3e62"><span class="section-number-4">6.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-6-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_sherman_morrison_smw32s</span> (
|
||||
@ -1489,8 +1489,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8f8cf27" class="outline-4">
|
||||
<h4 id="org8f8cf27"><span class="section-number-4">6.1.3</span> C source</h4>
|
||||
<div id="outline-container-org9594c05" class="outline-4">
|
||||
<h4 id="org9594c05"><span class="section-number-4">6.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-6-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -1568,8 +1568,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org610f6f7" class="outline-4">
|
||||
<h4 id="org610f6f7"><span class="section-number-4">6.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-orged6bf26" class="outline-4">
|
||||
<h4 id="orged6bf26"><span class="section-number-4">6.1.4</span> Performance…</h4>
|
||||
<div class="outline-text-4" id="text-6-1-4">
|
||||
<p>
|
||||
This kernel performs best for update cycles with 2 or more rank-1 updates and the fail-rate is low.
|
||||
@ -1579,8 +1579,8 @@ This kernel performs best for update cycles with 2 or more rank-1 updates and th
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9a5fcfd" class="outline-2">
|
||||
<h2 id="org9a5fcfd"><span class="section-number-2">7</span> Helper Functions</h2>
|
||||
<div id="outline-container-orge74ab19" class="outline-2">
|
||||
<h2 id="orge74ab19"><span class="section-number-2">7</span> Helper Functions</h2>
|
||||
<div class="outline-text-2" id="text-7">
|
||||
<p>
|
||||
Private helper-functions that are used by the Sherman-Morrison-Woodbury kernels.
|
||||
@ -1588,8 +1588,8 @@ These functions can only be used internally by the kernels in this module.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5ac1134" class="outline-3">
|
||||
<h3 id="org5ac1134"><span class="section-number-3">7.1</span> <code>qmckl_slagel_splitting</code></h3>
|
||||
<div id="outline-container-org512c91d" class="outline-3">
|
||||
<h3 id="org512c91d"><span class="section-number-3">7.1</span> <code>qmckl_slagel_splitting</code></h3>
|
||||
<div class="outline-text-3" id="text-7-1">
|
||||
<p>
|
||||
<code>qmckl_slagel_splitting</code> is the non-recursive, inner part of the 'Sherman-Morrison with update splitting'-kernel.
|
||||
@ -1609,7 +1609,7 @@ If the determinant of the Slater-matrix is passed, it will be updated to the det
|
||||
from applying the updates to the original matrix.
|
||||
</p>
|
||||
|
||||
<table id="org6191723" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgd4abeee" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1703,8 +1703,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org3dcc20a" class="outline-4">
|
||||
<h4 id="org3dcc20a"><span class="section-number-4">7.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org6bad2c4" class="outline-4">
|
||||
<h4 id="org6bad2c4"><span class="section-number-4">7.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-7-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>LDS >= 2</code></li>
|
||||
@ -1721,8 +1721,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1769d4b" class="outline-4">
|
||||
<h4 id="org1769d4b"><span class="section-number-4">7.1.2</span> C header</h4>
|
||||
<div id="outline-container-org2bde0dd" class="outline-4">
|
||||
<h4 id="org2bde0dd"><span class="section-number-4">7.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-7-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">double</span> <span style="color: #0000ff;">qmckl_slagel_splitting</span> (
|
||||
@ -1742,8 +1742,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgde260e4" class="outline-4">
|
||||
<h4 id="orgde260e4"><span class="section-number-4">7.1.3</span> C source</h4>
|
||||
<div id="outline-container-orgce88931" class="outline-4">
|
||||
<h4 id="orgce88931"><span class="section-number-4">7.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-7-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -1821,8 +1821,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4c098b5" class="outline-4">
|
||||
<h4 id="org4c098b5"><span class="section-number-4">7.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org973c203" class="outline-4">
|
||||
<h4 id="org973c203"><span class="section-number-4">7.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-7-1-4">
|
||||
<p>
|
||||
This function cannot be used by itself and is used in Sherman-Morrison with update splitting and Woodbury 3x3 and 2x2
|
||||
@ -1833,8 +1833,8 @@ with Sherman-Morrison and update splitting. Please look at the performance recco
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7d37f67" class="outline-2">
|
||||
<h2 id="org7d37f67"><span class="section-number-2">8</span> End of files</h2>
|
||||
<div id="outline-container-org8602b34" class="outline-2">
|
||||
<h2 id="org8602b34"><span class="section-number-2">8</span> End of files</h2>
|
||||
<div class="outline-text-2" id="text-8">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"> <span style="color: #0000ff;">assert</span> (<span style="color: #228b22;">qmckl_context_destroy</span>(<span style="color: #a0522d;">context</span>) == QMCKL_SUCCESS);
|
||||
@ -1848,7 +1848,7 @@ with Sherman-Morrison and update splitting. Please look at the performance recco
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:35</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:35 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Data for Tests</title>
|
||||
@ -233,27 +233,27 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgf94d676">1. CHBrClF</a>
|
||||
<li><a href="#org7c883b9">1. CHBrClF</a>
|
||||
<ul>
|
||||
<li><a href="#org705a695">1.1. XYZ coordinates</a></li>
|
||||
<li><a href="#orga080633">1.2. Atomic basis set</a></li>
|
||||
<li><a href="#org4b73388">1.3. Molecular orbitals</a></li>
|
||||
<li><a href="#org4148cbd">1.4. Electron coordinates</a></li>
|
||||
<li><a href="#org3c94cc7">1.1. XYZ coordinates</a></li>
|
||||
<li><a href="#orgaf4eb11">1.2. Atomic basis set</a></li>
|
||||
<li><a href="#org9e10b28">1.3. Molecular orbitals</a></li>
|
||||
<li><a href="#org870816a">1.4. Electron coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orga5633b8">2. N2</a>
|
||||
<li><a href="#orgaf9ac3e">2. N2</a>
|
||||
<ul>
|
||||
<li><a href="#org08063db">2.1. XYZ coordinates</a></li>
|
||||
<li><a href="#org3896370">2.2. Electron coordinates</a></li>
|
||||
<li><a href="#org5c001d0">2.3. Jastrow related data</a></li>
|
||||
<li><a href="#orgf9bca07">2.1. XYZ coordinates</a></li>
|
||||
<li><a href="#org9bffeca">2.2. Electron coordinates</a></li>
|
||||
<li><a href="#orga77251c">2.3. Jastrow related data</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf94d676" class="outline-2">
|
||||
<h2 id="orgf94d676"><span class="section-number-2">1</span> CHBrClF</h2>
|
||||
<div id="outline-container-org7c883b9" class="outline-2">
|
||||
<h2 id="org7c883b9"><span class="section-number-2">1</span> CHBrClF</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
This test is the all-electron Hartree-Fock wave function of CHClBr,
|
||||
@ -337,8 +337,8 @@ and with a high maximum angular momentum.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org705a695" class="outline-3">
|
||||
<h3 id="org705a695"><span class="section-number-3">1.1</span> XYZ coordinates</h3>
|
||||
<div id="outline-container-org3c94cc7" class="outline-3">
|
||||
<h3 id="org3c94cc7"><span class="section-number-3">1.1</span> XYZ coordinates</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<pre class="example">
|
||||
5
|
||||
@ -368,8 +368,8 @@ Nuclear coordinates are stored in atomic units in transposed format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga080633" class="outline-3">
|
||||
<h3 id="orga080633"><span class="section-number-3">1.2</span> Atomic basis set</h3>
|
||||
<div id="outline-container-orgaf4eb11" class="outline-3">
|
||||
<h3 id="orgaf4eb11"><span class="section-number-3">1.2</span> Atomic basis set</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<pre class="example">
|
||||
HYDROGEN
|
||||
@ -1288,8 +1288,8 @@ F 1
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4b73388" class="outline-3">
|
||||
<h3 id="org4b73388"><span class="section-number-3">1.3</span> Molecular orbitals</h3>
|
||||
<div id="outline-container-org9e10b28" class="outline-3">
|
||||
<h3 id="org9e10b28"><span class="section-number-3">1.3</span> Molecular orbitals</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">chbrclf_mo_num</span> ((<span style="color: #228b22;">int64_t</span>) 224)
|
||||
@ -60213,8 +60213,8 @@ F 1
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4148cbd" class="outline-3">
|
||||
<h3 id="org4148cbd"><span class="section-number-3">1.4</span> Electron coordinates</h3>
|
||||
<div id="outline-container-org870816a" class="outline-3">
|
||||
<h3 id="org870816a"><span class="section-number-3">1.4</span> Electron coordinates</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<p>
|
||||
Electron coordinates are stored in atomic units in normal format.
|
||||
@ -60373,8 +60373,8 @@ Electron coordinates are stored in atomic units in normal format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga5633b8" class="outline-2">
|
||||
<h2 id="orga5633b8"><span class="section-number-2">2</span> N2</h2>
|
||||
<div id="outline-container-orgaf9ac3e" class="outline-2">
|
||||
<h2 id="orgaf9ac3e"><span class="section-number-2">2</span> N2</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<p>
|
||||
This test is mainly for the Jastrow factor and was supplied by
|
||||
@ -60415,8 +60415,8 @@ treated by pseudopotentials thus excluded from the actual calculation.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org08063db" class="outline-3">
|
||||
<h3 id="org08063db"><span class="section-number-3">2.1</span> XYZ coordinates</h3>
|
||||
<div id="outline-container-orgf9bca07" class="outline-3">
|
||||
<h3 id="orgf9bca07"><span class="section-number-3">2.1</span> XYZ coordinates</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<pre class="example">
|
||||
2
|
||||
@ -60443,8 +60443,8 @@ Nuclear coordinates are stored in atomic units in transposed format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3896370" class="outline-3">
|
||||
<h3 id="org3896370"><span class="section-number-3">2.2</span> Electron coordinates</h3>
|
||||
<div id="outline-container-org9bffeca" class="outline-3">
|
||||
<h3 id="org9bffeca"><span class="section-number-3">2.2</span> Electron coordinates</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
Electron coordinates are stored in atomic units in normal format.
|
||||
@ -60473,8 +60473,8 @@ Electron coordinates are stored in atomic units in normal format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5c001d0" class="outline-3">
|
||||
<h3 id="org5c001d0"><span class="section-number-3">2.3</span> Jastrow related data</h3>
|
||||
<div id="outline-container-orga77251c" class="outline-3">
|
||||
<h3 id="orga77251c"><span class="section-number-3">2.3</span> Jastrow related data</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
This test is mainly for the Jastrow factor and was supplied by
|
||||
@ -60573,7 +60573,7 @@ Ramon Panades Baruetta.
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="date">Created: 2022-10-07 Fri 12:35</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:35 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>TREXIO I/O library</title>
|
||||
@ -311,53 +311,53 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org5caf314">1. Local functions</a>
|
||||
<li><a href="#orgb278063">1. Local functions</a>
|
||||
<ul>
|
||||
<li><a href="#org5b6fff7">1.1. Open file</a></li>
|
||||
<li><a href="#org5374108">1.2. Electron</a></li>
|
||||
<li><a href="#org676a6e2">1.3. Nucleus</a>
|
||||
<li><a href="#org544148e">1.1. Open file</a></li>
|
||||
<li><a href="#org54a3a81">1.2. Electron</a></li>
|
||||
<li><a href="#org1da4783">1.3. Nucleus</a>
|
||||
<ul>
|
||||
<li><a href="#org45779dd">1.3.1. Number of nuclei</a></li>
|
||||
<li><a href="#orgcc4f0f1">1.3.2. Nuclear charges</a></li>
|
||||
<li><a href="#orgff6a072">1.3.3. Nuclear coordinates</a></li>
|
||||
<li><a href="#org2886d4a">1.3.1. Number of nuclei</a></li>
|
||||
<li><a href="#org68c94ef">1.3.2. Nuclear charges</a></li>
|
||||
<li><a href="#org440f957">1.3.3. Nuclear coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org79fa5b5">1.4. Basis set and AOs</a>
|
||||
<li><a href="#org4ff20d4">1.4. Basis set and AOs</a>
|
||||
<ul>
|
||||
<li><a href="#org210c24d">1.4.1. Basis set type</a></li>
|
||||
<li><a href="#org5de1b95">1.4.2. Number of shells</a></li>
|
||||
<li><a href="#org60d4ac9">1.4.3. Number of primitives</a></li>
|
||||
<li><a href="#org6ee3ee0">1.4.4. Number of atomic orbitals</a></li>
|
||||
<li><a href="#org7e8d496">1.4.5. Nucleus<sub>index</sub> array</a></li>
|
||||
<li><a href="#orgc07d0c9">1.4.6. Number of shells per nucleus</a></li>
|
||||
<li><a href="#org1a8a62d">1.4.7. Angular momentum</a></li>
|
||||
<li><a href="#org0e6fda6">1.4.8. Number of primitives per shell</a></li>
|
||||
<li><a href="#org238007c">1.4.9. Indices of the primitives</a></li>
|
||||
<li><a href="#org8987059">1.4.10. Normalization of the shells</a></li>
|
||||
<li><a href="#org2d80106">1.4.11. Exponents</a></li>
|
||||
<li><a href="#orge2b930e">1.4.12. Coefficients</a></li>
|
||||
<li><a href="#org1fd2651">1.4.13. Normalization of the primitivies</a></li>
|
||||
<li><a href="#orgf51cb4a">1.4.14. AO Normalization</a></li>
|
||||
<li><a href="#orgbead91d">1.4.1. Basis set type</a></li>
|
||||
<li><a href="#org7903b86">1.4.2. Number of shells</a></li>
|
||||
<li><a href="#orgec01ca2">1.4.3. Number of primitives</a></li>
|
||||
<li><a href="#orgfa0f1c9">1.4.4. Number of atomic orbitals</a></li>
|
||||
<li><a href="#org8e2e42e">1.4.5. Nucleus<sub>index</sub> array</a></li>
|
||||
<li><a href="#org04abf1a">1.4.6. Number of shells per nucleus</a></li>
|
||||
<li><a href="#orgc92744e">1.4.7. Angular momentum</a></li>
|
||||
<li><a href="#org4e9fcb4">1.4.8. Number of primitives per shell</a></li>
|
||||
<li><a href="#org56a6320">1.4.9. Indices of the primitives</a></li>
|
||||
<li><a href="#orgf7dcbf5">1.4.10. Normalization of the shells</a></li>
|
||||
<li><a href="#org0042c51">1.4.11. Exponents</a></li>
|
||||
<li><a href="#org4101978">1.4.12. Coefficients</a></li>
|
||||
<li><a href="#orgdfb4487">1.4.13. Normalization of the primitivies</a></li>
|
||||
<li><a href="#org75f8cb3">1.4.14. AO Normalization</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org39ec4f5">1.5. Molecular orbitals</a>
|
||||
<li><a href="#org7f98735">1.5. Molecular orbitals</a>
|
||||
<ul>
|
||||
<li><a href="#orgddf764e">1.5.1. Number of MOs</a></li>
|
||||
<li><a href="#org12fa361">1.5.2. MO coefficients</a></li>
|
||||
<li><a href="#org9554254">1.5.1. Number of MOs</a></li>
|
||||
<li><a href="#orga1a6e37">1.5.2. MO coefficients</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgde39aef">1.6. <span class="todo TODO">TODO</span> ECP</a></li>
|
||||
<li><a href="#org4387730">1.6. <span class="todo TODO">TODO</span> ECP</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org014a36e">2. Read everything</a></li>
|
||||
<li><a href="#org1a84c2f">3. Test</a>
|
||||
<li><a href="#org59381b2">2. Read everything</a></li>
|
||||
<li><a href="#orgd2dd4b5">3. Test</a>
|
||||
<ul>
|
||||
<li>
|
||||
<ul>
|
||||
<li><a href="#org0bc0009">3.0.1. Electrons</a></li>
|
||||
<li><a href="#orgecf562f">3.0.2. Nuclei</a></li>
|
||||
<li><a href="#orgf12f988">3.0.3. Atomic basis</a></li>
|
||||
<li><a href="#org974553b">3.0.4. MO Basis</a></li>
|
||||
<li><a href="#org6f33cfb">3.0.1. Electrons</a></li>
|
||||
<li><a href="#org19f724f">3.0.2. Nuclei</a></li>
|
||||
<li><a href="#orgf558a8c">3.0.3. Atomic basis</a></li>
|
||||
<li><a href="#org9fe4372">3.0.4. MO Basis</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -366,8 +366,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5caf314" class="outline-2">
|
||||
<h2 id="org5caf314"><span class="section-number-2">1</span> Local functions</h2>
|
||||
<div id="outline-container-orgb278063" class="outline-2">
|
||||
<h2 id="orgb278063"><span class="section-number-2">1</span> Local functions</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
Functions defined in this section are all local: they should not be
|
||||
@ -390,8 +390,8 @@ In the functions defined in this section, we use as local variables
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5b6fff7" class="outline-3">
|
||||
<h3 id="org5b6fff7"><span class="section-number-3">1.1</span> Open file</h3>
|
||||
<div id="outline-container-org544148e" class="outline-3">
|
||||
<h3 id="org544148e"><span class="section-number-3">1.1</span> Open file</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<p>
|
||||
We first define a helper function to open a file by first trying to
|
||||
@ -423,8 +423,8 @@ groups of data by passing the <code>trexio_t</code> handle.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5374108" class="outline-3">
|
||||
<h3 id="org5374108"><span class="section-number-3">1.2</span> Electron</h3>
|
||||
<div id="outline-container-org54a3a81" class="outline-3">
|
||||
<h3 id="org54a3a81"><span class="section-number-3">1.2</span> Electron</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
In this section we read all the data into the electron data structure.
|
||||
@ -475,8 +475,8 @@ We read the number of up-spin and down-spin electrons.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org676a6e2" class="outline-3">
|
||||
<h3 id="org676a6e2"><span class="section-number-3">1.3</span> Nucleus</h3>
|
||||
<div id="outline-container-org1da4783" class="outline-3">
|
||||
<h3 id="org1da4783"><span class="section-number-3">1.3</span> Nucleus</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
In this section we read the number of nuclei, the molecular geometry and nuclear charges.
|
||||
@ -496,8 +496,8 @@ In this section we read the number of nuclei, the molecular geometry and nuclear
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org45779dd" class="outline-4">
|
||||
<h4 id="org45779dd"><span class="section-number-4">1.3.1</span> Number of nuclei</h4>
|
||||
<div id="outline-container-org2886d4a" class="outline-4">
|
||||
<h4 id="org2886d4a"><span class="section-number-4">1.3.1</span> Number of nuclei</h4>
|
||||
<div class="outline-text-4" id="text-1-3-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">nucleus_num</span> = 0L;
|
||||
@ -520,8 +520,8 @@ rc = qmckl_set_nucleus_num(context, nucleus_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcc4f0f1" class="outline-4">
|
||||
<h4 id="orgcc4f0f1"><span class="section-number-4">1.3.2</span> Nuclear charges</h4>
|
||||
<div id="outline-container-org68c94ef" class="outline-4">
|
||||
<h4 id="org68c94ef"><span class="section-number-4">1.3.2</span> Nuclear charges</h4>
|
||||
<div class="outline-text-4" id="text-1-3-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -561,8 +561,8 @@ rc = qmckl_set_nucleus_num(context, nucleus_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgff6a072" class="outline-4">
|
||||
<h4 id="orgff6a072"><span class="section-number-4">1.3.3</span> Nuclear coordinates</h4>
|
||||
<div id="outline-container-org440f957" class="outline-4">
|
||||
<h4 id="org440f957"><span class="section-number-4">1.3.3</span> Nuclear coordinates</h4>
|
||||
<div class="outline-text-4" id="text-1-3-3">
|
||||
<p>
|
||||
Now, we read the molecular geometry. It is stored in normal format
|
||||
@ -617,8 +617,8 @@ in the TREXIO file (<code>'N'</code>), so it will be automatically transposed in
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org79fa5b5" class="outline-3">
|
||||
<h3 id="org79fa5b5"><span class="section-number-3">1.4</span> Basis set and AOs</h3>
|
||||
<div id="outline-container-org4ff20d4" class="outline-3">
|
||||
<h3 id="org4ff20d4"><span class="section-number-3">1.4</span> Basis set and AOs</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<p>
|
||||
In this section we read the atomic basis set and atomic orbitals.
|
||||
@ -644,8 +644,8 @@ In this section we read the atomic basis set and atomic orbitals.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org210c24d" class="outline-4">
|
||||
<h4 id="org210c24d"><span class="section-number-4">1.4.1</span> Basis set type</h4>
|
||||
<div id="outline-container-orgbead91d" class="outline-4">
|
||||
<h4 id="orgbead91d"><span class="section-number-4">1.4.1</span> Basis set type</h4>
|
||||
<div class="outline-text-4" id="text-1-4-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">MAX_STR_LEN</span> 1024
|
||||
@ -676,8 +676,8 @@ In this section we read the atomic basis set and atomic orbitals.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5de1b95" class="outline-4">
|
||||
<h4 id="org5de1b95"><span class="section-number-4">1.4.2</span> Number of shells</h4>
|
||||
<div id="outline-container-org7903b86" class="outline-4">
|
||||
<h4 id="org7903b86"><span class="section-number-4">1.4.2</span> Number of shells</h4>
|
||||
<div class="outline-text-4" id="text-1-4-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">shell_num</span> = 0L;
|
||||
@ -701,8 +701,8 @@ rc = qmckl_set_ao_basis_shell_num(context, shell_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org60d4ac9" class="outline-4">
|
||||
<h4 id="org60d4ac9"><span class="section-number-4">1.4.3</span> Number of primitives</h4>
|
||||
<div id="outline-container-orgec01ca2" class="outline-4">
|
||||
<h4 id="orgec01ca2"><span class="section-number-4">1.4.3</span> Number of primitives</h4>
|
||||
<div class="outline-text-4" id="text-1-4-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">prim_num</span> = 0L;
|
||||
@ -726,8 +726,8 @@ rc = qmckl_set_ao_basis_prim_num(context, prim_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6ee3ee0" class="outline-4">
|
||||
<h4 id="org6ee3ee0"><span class="section-number-4">1.4.4</span> Number of atomic orbitals</h4>
|
||||
<div id="outline-container-orgfa0f1c9" class="outline-4">
|
||||
<h4 id="orgfa0f1c9"><span class="section-number-4">1.4.4</span> Number of atomic orbitals</h4>
|
||||
<div class="outline-text-4" id="text-1-4-4">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">ao_num</span> = 0LL;
|
||||
@ -751,8 +751,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7e8d496" class="outline-4">
|
||||
<h4 id="org7e8d496"><span class="section-number-4">1.4.5</span> Nucleus<sub>index</sub> array</h4>
|
||||
<div id="outline-container-org8e2e42e" class="outline-4">
|
||||
<h4 id="org8e2e42e"><span class="section-number-4">1.4.5</span> Nucleus<sub>index</sub> array</h4>
|
||||
<div class="outline-text-4" id="text-1-4-5">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -832,8 +832,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc07d0c9" class="outline-4">
|
||||
<h4 id="orgc07d0c9"><span class="section-number-4">1.4.6</span> Number of shells per nucleus</h4>
|
||||
<div id="outline-container-org04abf1a" class="outline-4">
|
||||
<h4 id="org04abf1a"><span class="section-number-4">1.4.6</span> Number of shells per nucleus</h4>
|
||||
<div class="outline-text-4" id="text-1-4-6">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -918,8 +918,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1a8a62d" class="outline-4">
|
||||
<h4 id="org1a8a62d"><span class="section-number-4">1.4.7</span> Angular momentum</h4>
|
||||
<div id="outline-container-orgc92744e" class="outline-4">
|
||||
<h4 id="orgc92744e"><span class="section-number-4">1.4.7</span> Angular momentum</h4>
|
||||
<div class="outline-text-4" id="text-1-4-7">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -964,8 +964,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0e6fda6" class="outline-4">
|
||||
<h4 id="org0e6fda6"><span class="section-number-4">1.4.8</span> Number of primitives per shell</h4>
|
||||
<div id="outline-container-org4e9fcb4" class="outline-4">
|
||||
<h4 id="org4e9fcb4"><span class="section-number-4">1.4.8</span> Number of primitives per shell</h4>
|
||||
<div class="outline-text-4" id="text-1-4-8">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -1049,8 +1049,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org238007c" class="outline-4">
|
||||
<h4 id="org238007c"><span class="section-number-4">1.4.9</span> Indices of the primitives</h4>
|
||||
<div id="outline-container-org56a6320" class="outline-4">
|
||||
<h4 id="org56a6320"><span class="section-number-4">1.4.9</span> Indices of the primitives</h4>
|
||||
<div class="outline-text-4" id="text-1-4-9">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -1130,8 +1130,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8987059" class="outline-4">
|
||||
<h4 id="org8987059"><span class="section-number-4">1.4.10</span> Normalization of the shells</h4>
|
||||
<div id="outline-container-orgf7dcbf5" class="outline-4">
|
||||
<h4 id="orgf7dcbf5"><span class="section-number-4">1.4.10</span> Normalization of the shells</h4>
|
||||
<div class="outline-text-4" id="text-1-4-10">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -1176,8 +1176,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2d80106" class="outline-4">
|
||||
<h4 id="org2d80106"><span class="section-number-4">1.4.11</span> Exponents</h4>
|
||||
<div id="outline-container-org0042c51" class="outline-4">
|
||||
<h4 id="org0042c51"><span class="section-number-4">1.4.11</span> Exponents</h4>
|
||||
<div class="outline-text-4" id="text-1-4-11">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -1222,8 +1222,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge2b930e" class="outline-4">
|
||||
<h4 id="orge2b930e"><span class="section-number-4">1.4.12</span> Coefficients</h4>
|
||||
<div id="outline-container-org4101978" class="outline-4">
|
||||
<h4 id="org4101978"><span class="section-number-4">1.4.12</span> Coefficients</h4>
|
||||
<div class="outline-text-4" id="text-1-4-12">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -1268,8 +1268,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1fd2651" class="outline-4">
|
||||
<h4 id="org1fd2651"><span class="section-number-4">1.4.13</span> Normalization of the primitivies</h4>
|
||||
<div id="outline-container-orgdfb4487" class="outline-4">
|
||||
<h4 id="orgdfb4487"><span class="section-number-4">1.4.13</span> Normalization of the primitivies</h4>
|
||||
<div class="outline-text-4" id="text-1-4-13">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -1314,8 +1314,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf51cb4a" class="outline-4">
|
||||
<h4 id="orgf51cb4a"><span class="section-number-4">1.4.14</span> AO Normalization</h4>
|
||||
<div id="outline-container-org75f8cb3" class="outline-4">
|
||||
<h4 id="org75f8cb3"><span class="section-number-4">1.4.14</span> AO Normalization</h4>
|
||||
<div class="outline-text-4" id="text-1-4-14">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -1370,8 +1370,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org39ec4f5" class="outline-3">
|
||||
<h3 id="org39ec4f5"><span class="section-number-3">1.5</span> Molecular orbitals</h3>
|
||||
<div id="outline-container-org7f98735" class="outline-3">
|
||||
<h3 id="org7f98735"><span class="section-number-3">1.5</span> Molecular orbitals</h3>
|
||||
<div class="outline-text-3" id="text-1-5">
|
||||
<p>
|
||||
In this section we read the MO coefficients.
|
||||
@ -1397,8 +1397,8 @@ In this section we read the MO coefficients.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgddf764e" class="outline-4">
|
||||
<h4 id="orgddf764e"><span class="section-number-4">1.5.1</span> Number of MOs</h4>
|
||||
<div id="outline-container-org9554254" class="outline-4">
|
||||
<h4 id="org9554254"><span class="section-number-4">1.5.1</span> Number of MOs</h4>
|
||||
<div class="outline-text-4" id="text-1-5-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">mo_num</span> = 0L;
|
||||
@ -1421,8 +1421,8 @@ rc = qmckl_set_mo_basis_mo_num(context, mo_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org12fa361" class="outline-4">
|
||||
<h4 id="org12fa361"><span class="section-number-4">1.5.2</span> MO coefficients</h4>
|
||||
<div id="outline-container-orga1a6e37" class="outline-4">
|
||||
<h4 id="orga1a6e37"><span class="section-number-4">1.5.2</span> MO coefficients</h4>
|
||||
<div class="outline-text-4" id="text-1-5-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -1471,12 +1471,12 @@ rc = qmckl_set_mo_basis_mo_num(context, mo_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgde39aef" class="outline-3">
|
||||
<h3 id="orgde39aef"><span class="section-number-3">1.6</span> <span class="todo TODO">TODO</span> ECP</h3>
|
||||
<div id="outline-container-org4387730" class="outline-3">
|
||||
<h3 id="org4387730"><span class="section-number-3">1.6</span> <span class="todo TODO">TODO</span> ECP</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org014a36e" class="outline-2">
|
||||
<h2 id="org014a36e"><span class="section-number-2">2</span> Read everything</h2>
|
||||
<div id="outline-container-org59381b2" class="outline-2">
|
||||
<h2 id="org59381b2"><span class="section-number-2">2</span> Read everything</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span>
|
||||
@ -1551,8 +1551,8 @@ rc = qmckl_set_mo_basis_mo_num(context, mo_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1a84c2f" class="outline-2">
|
||||
<h2 id="org1a84c2f"><span class="section-number-2">3</span> Test</h2>
|
||||
<div id="outline-container-orgd2dd4b5" class="outline-2">
|
||||
<h2 id="orgd2dd4b5"><span class="section-number-2">3</span> Test</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#ifdef</span> HAVE_TREXIO
|
||||
@ -1576,8 +1576,8 @@ rc = qmckl_trexio_read(context, filename, 255);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0bc0009" class="outline-4">
|
||||
<h4 id="org0bc0009"><span class="section-number-4">3.0.1</span> Electrons</h4>
|
||||
<div id="outline-container-org6f33cfb" class="outline-4">
|
||||
<h4 id="org6f33cfb"><span class="section-number-4">3.0.1</span> Electrons</h4>
|
||||
<div class="outline-text-4" id="text-3-0-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">printf(<span style="color: #8b2252;">"Electrons\n"</span>);
|
||||
@ -1595,8 +1595,8 @@ rc = qmckl_get_electron_down_num(context, &dn_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgecf562f" class="outline-4">
|
||||
<h4 id="orgecf562f"><span class="section-number-4">3.0.2</span> Nuclei</h4>
|
||||
<div id="outline-container-org19f724f" class="outline-4">
|
||||
<h4 id="org19f724f"><span class="section-number-4">3.0.2</span> Nuclei</h4>
|
||||
<div class="outline-text-4" id="text-3-0-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">printf(<span style="color: #8b2252;">"Nuclei\n"</span>);
|
||||
@ -1636,8 +1636,8 @@ coord = <span style="color: #008b8b;">NULL</span>;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf12f988" class="outline-4">
|
||||
<h4 id="orgf12f988"><span class="section-number-4">3.0.3</span> Atomic basis</h4>
|
||||
<div id="outline-container-orgf558a8c" class="outline-4">
|
||||
<h4 id="orgf558a8c"><span class="section-number-4">3.0.3</span> Atomic basis</h4>
|
||||
<div class="outline-text-4" id="text-3-0-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">printf(<span style="color: #8b2252;">"Atomic basis\n"</span>);
|
||||
@ -1745,8 +1745,8 @@ prim_factor = <span style="color: #008b8b;">NULL</span>;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org974553b" class="outline-4">
|
||||
<h4 id="org974553b"><span class="section-number-4">3.0.4</span> MO Basis</h4>
|
||||
<div id="outline-container-org9fe4372" class="outline-4">
|
||||
<h4 id="org9fe4372"><span class="section-number-4">3.0.4</span> MO Basis</h4>
|
||||
<div class="outline-text-4" id="text-3-0-4">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">printf(<span style="color: #8b2252;">"MOs\n"</span>);
|
||||
@ -1777,7 +1777,7 @@ charge = <span style="color: #008b8b;">NULL</span>;
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:35</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2022-10-07 Fri 12:34 -->
|
||||
<!-- 2022-10-11 Tue 07:41 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Verificarlo CI</title>
|
||||
@ -311,22 +311,22 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orga93a3bd">1. Verificarlo probes</a>
|
||||
<li><a href="#orgaeef314">1. Verificarlo probes</a>
|
||||
<ul>
|
||||
<li><a href="#org5c9b8f9">1.1. Automatically initialize the <code>vfc_probe</code> object if <code>VFC_CI</code> is defined</a></li>
|
||||
<li><a href="#orge1f6c5a">1.2. Standard probe, without check</a></li>
|
||||
<li><a href="#orgd9716fb">1.3. Probe with absolute check</a></li>
|
||||
<li><a href="#org422eab4">1.4. Probe with relative check</a></li>
|
||||
<li><a href="#org9e94a8d">1.5. Automatically delete and dump the vfc<sub>probe</sub> object if <code>VFC_CI</code> is defined</a></li>
|
||||
<li><a href="#orgd35e379">1.1. Automatically initialize the <code>vfc_probe</code> object if <code>VFC_CI</code> is defined</a></li>
|
||||
<li><a href="#orgd3adea9">1.2. Standard probe, without check</a></li>
|
||||
<li><a href="#org1c18b8e">1.3. Probe with absolute check</a></li>
|
||||
<li><a href="#org4aad3c3">1.4. Probe with relative check</a></li>
|
||||
<li><a href="#org538b40a">1.5. Automatically delete and dump the vfc<sub>probe</sub> object if <code>VFC_CI</code> is defined</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgd02a447">2. Fortran wrappers</a></li>
|
||||
<li><a href="#org0919ad2">2. Fortran wrappers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga93a3bd" class="outline-2">
|
||||
<h2 id="orga93a3bd"><span class="section-number-2">1</span> Verificarlo probes</h2>
|
||||
<div id="outline-container-orgaeef314" class="outline-2">
|
||||
<h2 id="orgaeef314"><span class="section-number-2">1</span> Verificarlo probes</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
This file contains utility functions to enable the Verificarlo
|
||||
@ -377,8 +377,8 @@ To learn more about Verificarlo CI :
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org5c9b8f9" class="outline-3">
|
||||
<h3 id="org5c9b8f9"><span class="section-number-3">1.1</span> Automatically initialize the <code>vfc_probe</code> object if <code>VFC_CI</code> is defined</h3>
|
||||
<div id="outline-container-orgd35e379" class="outline-3">
|
||||
<h3 id="orgd35e379"><span class="section-number-3">1.1</span> Automatically initialize the <code>vfc_probe</code> object if <code>VFC_CI</code> is defined</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">void</span> <span style="color: #0000ff;">qmckl_init_probes</span>();
|
||||
@ -396,8 +396,8 @@ To learn more about Verificarlo CI :
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge1f6c5a" class="outline-3">
|
||||
<h3 id="orge1f6c5a"><span class="section-number-3">1.2</span> Standard probe, without check</h3>
|
||||
<div id="outline-container-orgd3adea9" class="outline-3">
|
||||
<h3 id="orgd3adea9"><span class="section-number-3">1.2</span> Standard probe, without check</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<ul class="org-ul">
|
||||
<li>if <code>VFC_CI</code> is defined, place a standard probe</li>
|
||||
@ -432,8 +432,8 @@ if <code>VFC_CI</code> is undefined, return <code>false</code> (no error)
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd9716fb" class="outline-3">
|
||||
<h3 id="orgd9716fb"><span class="section-number-3">1.3</span> Probe with absolute check</h3>
|
||||
<div id="outline-container-org1c18b8e" class="outline-3">
|
||||
<h3 id="org1c18b8e"><span class="section-number-3">1.3</span> Probe with absolute check</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<ul class="org-ul">
|
||||
<li>if <code>VFC_CI</code> is defined, place a probe with an absolute check</li>
|
||||
@ -473,8 +473,8 @@ and accuracy
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org422eab4" class="outline-3">
|
||||
<h3 id="org422eab4"><span class="section-number-3">1.4</span> Probe with relative check</h3>
|
||||
<div id="outline-container-org4aad3c3" class="outline-3">
|
||||
<h3 id="org4aad3c3"><span class="section-number-3">1.4</span> Probe with relative check</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<ul class="org-ul">
|
||||
<li>if <code>VFC_CI</code> is defined, place a probe with a relative check</li>
|
||||
@ -514,8 +514,8 @@ and accuracy
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9e94a8d" class="outline-3">
|
||||
<h3 id="org9e94a8d"><span class="section-number-3">1.5</span> Automatically delete and dump the vfc<sub>probe</sub> object if <code>VFC_CI</code> is defined</h3>
|
||||
<div id="outline-container-org538b40a" class="outline-3">
|
||||
<h3 id="org538b40a"><span class="section-number-3">1.5</span> Automatically delete and dump the vfc<sub>probe</sub> object if <code>VFC_CI</code> is defined</h3>
|
||||
<div class="outline-text-3" id="text-1-5">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">void</span> <span style="color: #0000ff;">qmckl_dump_probes</span>();
|
||||
@ -534,8 +534,8 @@ and accuracy
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd02a447" class="outline-2">
|
||||
<h2 id="orgd02a447"><span class="section-number-2">2</span> Fortran wrappers</h2>
|
||||
<div id="outline-container-org0919ad2" class="outline-2">
|
||||
<h2 id="org0919ad2"><span class="section-number-2">2</span> Fortran wrappers</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_probe_f</span>(
|
||||
@ -659,7 +659,7 @@ and accuracy
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-10-07 Fri 12:34</p>
|
||||
<p class="date">Created: 2022-10-11 Tue 07:41</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
Loading…
x
Reference in New Issue
Block a user