mirror of
https://github.com/TREX-CoE/qmckl.git
synced 2024-11-03 20:54:09 +01:00
Deploying to gh-pages from @ TREX-CoE/qmckl@0c5c2bed41 🚀
This commit is contained in:
parent
415bfd2474
commit
5cad427f3f
@ -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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -375,7 +375,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-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Introduction</title>
|
||||
@ -346,36 +346,36 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org03d917c">1. Installing QMCkl</a>
|
||||
<li><a href="#orgfc262f2">1. Installing QMCkl</a>
|
||||
<ul>
|
||||
<li><a href="#org96aa39a">1.1. Installing from the released tarball (for end users)</a></li>
|
||||
<li><a href="#org6259cac">1.2. Installing from the source repository (for developers)</a></li>
|
||||
<li><a href="#orgb4123c2">1.1. Installing from the released tarball (for end users)</a></li>
|
||||
<li><a href="#org152a659">1.2. Installing from the source repository (for developers)</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org8fa3678">2. Using QMCkl</a></li>
|
||||
<li><a href="#org0408fe3">3. Developing in QMCkl</a>
|
||||
<li><a href="#orgb55a318">2. Using QMCkl</a></li>
|
||||
<li><a href="#org1236d2f">3. Developing in QMCkl</a>
|
||||
<ul>
|
||||
<li><a href="#org58f808c">3.1. Literate programming</a></li>
|
||||
<li><a href="#orgd96fca5">3.2. Source code editing</a></li>
|
||||
<li><a href="#org086e34e">3.3. Choice of the programming language</a></li>
|
||||
<li><a href="#orga595e4d">3.4. Coding rules</a></li>
|
||||
<li><a href="#orge85a33c">3.5. Design of the library</a></li>
|
||||
<li><a href="#org34d4586">3.6. Naming conventions</a></li>
|
||||
<li><a href="#org7df49a9">3.7. Application programming interface</a></li>
|
||||
<li><a href="#org02d8219">3.8. Global state</a></li>
|
||||
<li><a href="#org19dba30">3.9. Headers</a></li>
|
||||
<li><a href="#orge66fd15">3.10. Low-level functions</a></li>
|
||||
<li><a href="#org9671e26">3.11. High-level functions</a></li>
|
||||
<li><a href="#org536e522">3.12. Numerical precision</a></li>
|
||||
<li><a href="#org58cbce2">3.13. Algorithms</a></li>
|
||||
<li><a href="#orgaac1331">3.1. Literate programming</a></li>
|
||||
<li><a href="#org49e13af">3.2. Source code editing</a></li>
|
||||
<li><a href="#orgd6794c9">3.3. Choice of the programming language</a></li>
|
||||
<li><a href="#org5104a87">3.4. Coding rules</a></li>
|
||||
<li><a href="#orgc5fdeb7">3.5. Design of the library</a></li>
|
||||
<li><a href="#orgc4cb243">3.6. Naming conventions</a></li>
|
||||
<li><a href="#orgafc4f60">3.7. Application programming interface</a></li>
|
||||
<li><a href="#orgdc63668">3.8. Global state</a></li>
|
||||
<li><a href="#org0aff944">3.9. Headers</a></li>
|
||||
<li><a href="#org0488cb3">3.10. Low-level functions</a></li>
|
||||
<li><a href="#org8270b24">3.11. High-level functions</a></li>
|
||||
<li><a href="#org45b3338">3.12. Numerical precision</a></li>
|
||||
<li><a href="#org318c403">3.13. Algorithms</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org03d917c" class="outline-2">
|
||||
<h2 id="org03d917c"><span class="section-number-2">1</span> Installing QMCkl</h2>
|
||||
<div id="outline-container-orgfc262f2" class="outline-2">
|
||||
<h2 id="orgfc262f2"><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
|
||||
@ -384,8 +384,8 @@ The latest version fo QMCkl can be downloaded
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org96aa39a" class="outline-3">
|
||||
<h3 id="org96aa39a"><span class="section-number-3">1.1</span> Installing from the released tarball (for end users)</h3>
|
||||
<div id="outline-container-orgb4123c2" class="outline-3">
|
||||
<h3 id="orgb4123c2"><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
|
||||
@ -400,8 +400,8 @@ options are defined using <code>CFLAGS</code> and <code>FCFLAGS</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6259cac" class="outline-3">
|
||||
<h3 id="org6259cac"><span class="section-number-3">1.2</span> Installing from the source repository (for developers)</h3>
|
||||
<div id="outline-container-org152a659" class="outline-3">
|
||||
<h3 id="org152a659"><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
|
||||
@ -422,8 +422,8 @@ to be executed first.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8fa3678" class="outline-2">
|
||||
<h2 id="org8fa3678"><span class="section-number-2">2</span> Using QMCkl</h2>
|
||||
<div id="outline-container-orgb55a318" class="outline-2">
|
||||
<h2 id="orgb55a318"><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
|
||||
@ -452,12 +452,12 @@ Both files are located in the <code>include/</code> directory.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0408fe3" class="outline-2">
|
||||
<h2 id="org0408fe3"><span class="section-number-2">3</span> Developing in QMCkl</h2>
|
||||
<div id="outline-container-org1236d2f" class="outline-2">
|
||||
<h2 id="org1236d2f"><span class="section-number-2">3</span> Developing in QMCkl</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org58f808c" class="outline-3">
|
||||
<h3 id="org58f808c"><span class="section-number-3">3.1</span> Literate programming</h3>
|
||||
<div id="outline-container-orgaac1331" class="outline-3">
|
||||
<h3 id="orgaac1331"><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
|
||||
@ -507,8 +507,8 @@ tarball contains the generated source code.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd96fca5" class="outline-3">
|
||||
<h3 id="orgd96fca5"><span class="section-number-3">3.2</span> Source code editing</h3>
|
||||
<div id="outline-container-org49e13af" class="outline-3">
|
||||
<h3 id="org49e13af"><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>.
|
||||
@ -539,8 +539,8 @@ org-mode.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org086e34e" class="outline-3">
|
||||
<h3 id="org086e34e"><span class="section-number-3">3.3</span> Choice of the programming language</h3>
|
||||
<div id="outline-container-orgd6794c9" class="outline-3">
|
||||
<h3 id="orgd6794c9"><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
|
||||
@ -604,8 +604,8 @@ For more guidelines on using Fortran to generate a C interface, see
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga595e4d" class="outline-3">
|
||||
<h3 id="orga595e4d"><span class="section-number-3">3.4</span> Coding rules</h3>
|
||||
<div id="outline-container-org5104a87" class="outline-3">
|
||||
<h3 id="org5104a87"><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
|
||||
@ -625,8 +625,8 @@ make cppcheck ; cat cppcheck.out
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge85a33c" class="outline-3">
|
||||
<h3 id="orge85a33c"><span class="section-number-3">3.5</span> Design of the library</h3>
|
||||
<div id="outline-container-orgc5fdeb7" class="outline-3">
|
||||
<h3 id="orgc5fdeb7"><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
|
||||
@ -637,8 +637,8 @@ functions (see below).
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org34d4586" class="outline-3">
|
||||
<h3 id="org34d4586"><span class="section-number-3">3.6</span> Naming conventions</h3>
|
||||
<div id="outline-container-orgc4cb243" class="outline-3">
|
||||
<h3 id="orgc4cb243"><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
|
||||
@ -659,8 +659,8 @@ form is allowed.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7df49a9" class="outline-3">
|
||||
<h3 id="org7df49a9"><span class="section-number-3">3.7</span> Application programming interface</h3>
|
||||
<div id="outline-container-orgafc4f60" class="outline-3">
|
||||
<h3 id="orgafc4f60"><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
|
||||
@ -692,15 +692,15 @@ bindings in other languages in other repositories.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org02d8219" class="outline-3">
|
||||
<h3 id="org02d8219"><span class="section-number-3">3.8</span> Global state</h3>
|
||||
<div id="outline-container-orgdc63668" class="outline-3">
|
||||
<h3 id="orgdc63668"><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="orgb761a6a">=context=</a> contains the global
|
||||
<code>qmckl_context_create</code> function. The <a id="orgeb90aa7">=context=</a> contains the global
|
||||
state of the library, and is used as the first argument of many
|
||||
QMCkl functions.
|
||||
</p>
|
||||
@ -714,8 +714,8 @@ the state is done by setters and getters, prefixed by
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org19dba30" class="outline-3">
|
||||
<h3 id="org19dba30"><span class="section-number-3">3.9</span> Headers</h3>
|
||||
<div id="outline-container-org0aff944" class="outline-3">
|
||||
<h3 id="org0aff944"><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
|
||||
@ -803,8 +803,8 @@ and the types definitions should be written in the <code>*fh_type.f90</code> fil
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge66fd15" class="outline-3">
|
||||
<h3 id="orge66fd15"><span class="section-number-3">3.10</span> Low-level functions</h3>
|
||||
<div id="outline-container-org0488cb3" class="outline-3">
|
||||
<h3 id="org0488cb3"><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
|
||||
@ -813,14 +813,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="#orgb761a6a"><code>context</code></a>. They are not allowed to allocate/deallocate memory, and
|
||||
<a href="#orgeb90aa7"><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-org9671e26" class="outline-3">
|
||||
<h3 id="org9671e26"><span class="section-number-3">3.11</span> High-level functions</h3>
|
||||
<div id="outline-container-org8270b24" class="outline-3">
|
||||
<h3 id="org8270b24"><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.
|
||||
@ -832,8 +832,8 @@ temporary storage, to simplify the use of accelerators.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org536e522" class="outline-3">
|
||||
<h3 id="org536e522"><span class="section-number-3">3.12</span> Numerical precision</h3>
|
||||
<div id="outline-container-org45b3338" class="outline-3">
|
||||
<h3 id="org45b3338"><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
|
||||
@ -841,7 +841,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="#orgb761a6a"><code>context</code></a> variable.
|
||||
specified in the <a href="#orgeb90aa7"><code>context</code></a> variable.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -909,8 +909,8 @@ following points :
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org58cbce2" class="outline-3">
|
||||
<h3 id="org58cbce2"><span class="section-number-3">3.13</span> Algorithms</h3>
|
||||
<div id="outline-container-org318c403" class="outline-3">
|
||||
<h3 id="org318c403"><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
|
||||
@ -926,7 +926,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-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -346,61 +346,61 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org49c4a9d">1. Introduction</a></li>
|
||||
<li><a href="#orga93a33a">2. Context</a>
|
||||
<li><a href="#orgd0653e3">1. Introduction</a></li>
|
||||
<li><a href="#org2bcc18c">2. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org82578dc">2.1. Constant data</a>
|
||||
<li><a href="#orga69ac90">2.1. Constant data</a>
|
||||
<ul>
|
||||
<li><a href="#org59d3f7e">2.1.1. Initialization functions</a>
|
||||
<li><a href="#org148ddb8">2.1.1. Initialization functions</a>
|
||||
<ul>
|
||||
<li><a href="#orgc4c8a3a">2.1.1.1. C interface</a></li>
|
||||
<li><a href="#org481be22">2.1.1.2. Fortran interface</a></li>
|
||||
<li><a href="#orgae278b3">2.1.1.1. C interface</a></li>
|
||||
<li><a href="#orgd1d0044">2.1.1.2. Fortran interface</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org8df6c3b">2.1.2. Access functions</a>
|
||||
<li><a href="#orgb903da9">2.1.2. Access functions</a>
|
||||
<ul>
|
||||
<li><a href="#org82a919c">2.1.2.1. C interface</a></li>
|
||||
<li><a href="#orga3f1f18">2.1.2.2. Fortran interface</a></li>
|
||||
<li><a href="#org842c171">2.1.2.1. C interface</a></li>
|
||||
<li><a href="#org7866354">2.1.2.2. Fortran interface</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org1b01ddb">2.2. Computed data</a>
|
||||
<li><a href="#orgebed363">2.2. Computed data</a>
|
||||
<ul>
|
||||
<li><a href="#org08198f2">2.2.1. After initialization</a></li>
|
||||
<li><a href="#org447d126">2.2.2. <span class="todo TODO">TODO</span> HPC-specific data structures</a></li>
|
||||
<li><a href="#org4ef7b80">2.2.3. Access functions</a></li>
|
||||
<li><a href="#orgd395734">2.2.1. After initialization</a></li>
|
||||
<li><a href="#org7a4aa5c">2.2.2. <span class="todo TODO">TODO</span> HPC-specific data structures</a></li>
|
||||
<li><a href="#org571dbf1">2.2.3. Access functions</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org866d234">3. Radial part</a>
|
||||
<li><a href="#org538c280">3. Radial part</a>
|
||||
<ul>
|
||||
<li><a href="#org753363c">3.1. General functions for Gaussian basis functions</a></li>
|
||||
<li><a href="#org966dd47">3.2. Computation of primitives</a></li>
|
||||
<li><a href="#orgdeafca6">3.3. Computation of shells</a></li>
|
||||
<li><a href="#orgecee871">3.1. General functions for Gaussian basis functions</a></li>
|
||||
<li><a href="#org5f989e6">3.2. Computation of primitives</a></li>
|
||||
<li><a href="#org732466b">3.3. Computation of shells</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgdfbb878">4. Polynomial part</a>
|
||||
<li><a href="#orgb3b13c9">4. Polynomial part</a>
|
||||
<ul>
|
||||
<li><a href="#org7092c3a">4.1. General functions for Powers of \(x-X_i\)</a></li>
|
||||
<li><a href="#org5670650">4.2. General functions for Value, Gradient and Laplacian of a polynomial</a></li>
|
||||
<li><a href="#org85ce158">4.1. General functions for Powers of \(x-X_i\)</a></li>
|
||||
<li><a href="#orge6d0b2d">4.2. General functions for Value, Gradient and Laplacian of a polynomial</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgbacc607">5. Combining radial and polynomial parts</a>
|
||||
<li><a href="#org542e03b">5. Combining radial and polynomial parts</a>
|
||||
<ul>
|
||||
<li><a href="#org1d49e79">5.1. Values only</a>
|
||||
<li><a href="#org28556ee">5.1. Values only</a>
|
||||
<ul>
|
||||
<li><a href="#org701df9e">5.1.1. Unoptimized version</a></li>
|
||||
<li><a href="#org2f0e5a7">5.1.2. HPC version</a></li>
|
||||
<li><a href="#org9864ce4">5.1.3. Interfaces</a></li>
|
||||
<li><a href="#org5e91fdb">5.1.1. Unoptimized version</a></li>
|
||||
<li><a href="#org00d5bea">5.1.2. HPC version</a></li>
|
||||
<li><a href="#org716622c">5.1.3. Interfaces</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org9962d4b">5.2. Value, gradients, Laplacian</a>
|
||||
<li><a href="#org4036dda">5.2. Value, gradients, Laplacian</a>
|
||||
<ul>
|
||||
<li><a href="#org34ffec3">5.2.1. Unoptimized version</a></li>
|
||||
<li><a href="#org6a6eda8">5.2.2. HPC version</a></li>
|
||||
<li><a href="#org0a29a3f">5.2.3. Interfaces</a></li>
|
||||
<li><a href="#org25a4367">5.2.1. Unoptimized version</a></li>
|
||||
<li><a href="#orgded8fee">5.2.2. HPC version</a></li>
|
||||
<li><a href="#orge30a3ae">5.2.3. Interfaces</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -409,8 +409,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org49c4a9d" class="outline-2">
|
||||
<h2 id="org49c4a9d"><span class="section-number-2">1</span> Introduction</h2>
|
||||
<div id="outline-container-orgd0653e3" class="outline-2">
|
||||
<h2 id="orgd0653e3"><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
|
||||
@ -463,19 +463,19 @@ gradients and Laplacian of the atomic basis functions.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga93a33a" class="outline-2">
|
||||
<h2 id="orga93a33a"><span class="section-number-2">2</span> Context</h2>
|
||||
<div id="outline-container-org2bcc18c" class="outline-2">
|
||||
<h2 id="org2bcc18c"><span class="section-number-2">2</span> Context</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org82578dc" class="outline-3">
|
||||
<h3 id="org82578dc"><span class="section-number-3">2.1</span> Constant data</h3>
|
||||
<div id="outline-container-orga69ac90" class="outline-3">
|
||||
<h3 id="orga69ac90"><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="org5316f36" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgfda6925" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -649,7 +649,7 @@ calling the functions:
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-C" id="orga448cbb"><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="orge08da73"><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>,
|
||||
@ -686,7 +686,7 @@ For array variables, use the rule:
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-C" id="orgd53dfbf"><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="org38db3be"><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>);
|
||||
|
||||
@ -724,17 +724,17 @@ For array variables, use the rule:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org59d3f7e" class="outline-4">
|
||||
<h4 id="org59d3f7e"><span class="section-number-4">2.1.1</span> Initialization functions</h4>
|
||||
<div id="outline-container-org148ddb8" class="outline-4">
|
||||
<h4 id="org148ddb8"><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="#orga93a33a">2</a>.
|
||||
equal of larger than the value given in the table of section <a href="#org2bcc18c">2</a>.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc4c8a3a" class="outline-5">
|
||||
<h5 id="orgc4c8a3a"><span class="section-number-5">2.1.1.1</span> C interface</h5>
|
||||
<div id="outline-container-orgae278b3" class="outline-5">
|
||||
<h5 id="orgae278b3"><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
|
||||
@ -858,8 +858,8 @@ called.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org481be22" class="outline-5">
|
||||
<h5 id="org481be22"><span class="section-number-5">2.1.1.2</span> Fortran interface</h5>
|
||||
<div id="outline-container-orgd1d0044" class="outline-5">
|
||||
<h5 id="orgd1d0044"><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>
|
||||
@ -1042,17 +1042,17 @@ called.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8df6c3b" class="outline-4">
|
||||
<h4 id="org8df6c3b"><span class="section-number-4">2.1.2</span> Access functions</h4>
|
||||
<div id="outline-container-orgb903da9" class="outline-4">
|
||||
<h4 id="orgb903da9"><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="#orga93a33a">2</a>.
|
||||
equal of larger than the value given in the table of section <a href="#org2bcc18c">2</a>.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org82a919c" class="outline-5">
|
||||
<h5 id="org82a919c"><span class="section-number-5">2.1.2.1</span> C interface</h5>
|
||||
<div id="outline-container-org842c171" class="outline-5">
|
||||
<h5 id="org842c171"><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>
|
||||
@ -1174,8 +1174,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga3f1f18" class="outline-5">
|
||||
<h5 id="orga3f1f18"><span class="section-number-5">2.1.2.2</span> Fortran interface</h5>
|
||||
<div id="outline-container-org7866354" class="outline-5">
|
||||
<h5 id="org7866354"><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>
|
||||
@ -1359,8 +1359,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1b01ddb" class="outline-3">
|
||||
<h3 id="org1b01ddb"><span class="section-number-3">2.2</span> Computed data</h3>
|
||||
<div id="outline-container-orgebed363" class="outline-3">
|
||||
<h3 id="orgebed363"><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:
|
||||
@ -1435,8 +1435,8 @@ The following data is computed as described in the next sections:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org08198f2" class="outline-4">
|
||||
<h4 id="org08198f2"><span class="section-number-4">2.2.1</span> After initialization</h4>
|
||||
<div id="outline-container-orgd395734" class="outline-4">
|
||||
<h4 id="orgd395734"><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
|
||||
@ -1450,8 +1450,8 @@ the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org447d126" class="outline-4">
|
||||
<h4 id="org447d126"><span class="section-number-4">2.2.2</span> <span class="todo TODO">TODO</span> HPC-specific data structures</h4>
|
||||
<div id="outline-container-org7a4aa5c" class="outline-4">
|
||||
<h4 id="org7a4aa5c"><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:
|
||||
@ -1481,8 +1481,8 @@ which is a matrix-vector product.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4ef7b80" class="outline-4">
|
||||
<h4 id="org4ef7b80"><span class="section-number-4">2.2.3</span> Access functions</h4>
|
||||
<div id="outline-container-org571dbf1" class="outline-4">
|
||||
<h4 id="org571dbf1"><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>
|
||||
@ -1495,7 +1495,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="#org966dd47">3.2</a>.
|
||||
See section <a href="#org5f989e6">3.2</a>.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
@ -1508,7 +1508,7 @@ See section <a href="#org966dd47">3.2</a>.
|
||||
|
||||
<p>
|
||||
Returns the array of values, gradients an Laplacian of contracted shells
|
||||
evaluated at the current coordinates. See section <a href="#orgdeafca6">3.3</a>.
|
||||
evaluated at the current coordinates. See section <a href="#org732466b">3.3</a>.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
@ -1522,7 +1522,7 @@ evaluated at the current coordinates. See section <a href="#orgdeafca6">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="#orgbacc607">5</a>.
|
||||
See section <a href="#org542e03b">5</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -1547,7 +1547,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="#orgbacc607">5</a>.
|
||||
the current coordinates. See section <a href="#org542e03b">5</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -1566,12 +1566,12 @@ Uses the given array to compute the value.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org866d234" class="outline-2">
|
||||
<h2 id="org866d234"><span class="section-number-2">3</span> Radial part</h2>
|
||||
<div id="outline-container-org538c280" class="outline-2">
|
||||
<h2 id="org538c280"><span class="section-number-2">3</span> Radial part</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org753363c" class="outline-3">
|
||||
<h3 id="org753363c"><span class="section-number-3">3.1</span> General functions for Gaussian basis functions</h3>
|
||||
<div id="outline-container-orgecee871" class="outline-3">
|
||||
<h3 id="orgecee871"><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
|
||||
@ -1742,10 +1742,10 @@ Requirements:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org966dd47" class="outline-3">
|
||||
<h3 id="org966dd47"><span class="section-number-3">3.2</span> Computation of primitives</h3>
|
||||
<div id="outline-container-org5f989e6" class="outline-3">
|
||||
<h3 id="org5f989e6"><span class="section-number-3">3.2</span> Computation of primitives</h3>
|
||||
<div class="outline-text-3" id="text-3-2">
|
||||
<table id="org95b9e3a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org5c85bad" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1904,10 +1904,10 @@ Requirements:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdeafca6" class="outline-3">
|
||||
<h3 id="orgdeafca6"><span class="section-number-3">3.3</span> Computation of shells</h3>
|
||||
<div id="outline-container-org732466b" class="outline-3">
|
||||
<h3 id="org732466b"><span class="section-number-3">3.3</span> Computation of shells</h3>
|
||||
<div class="outline-text-3" id="text-3-3">
|
||||
<table id="org9b811c0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org8efaab8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2159,8 +2159,8 @@ Requirements:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdfbb878" class="outline-2">
|
||||
<h2 id="orgdfbb878"><span class="section-number-2">4</span> Polynomial part</h2>
|
||||
<div id="outline-container-orgb3b13c9" class="outline-2">
|
||||
<h2 id="orgb3b13c9"><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
|
||||
@ -2180,8 +2180,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-org7092c3a" class="outline-3">
|
||||
<h3 id="org7092c3a"><span class="section-number-3">4.1</span> General functions for Powers of \(x-X_i\)</h3>
|
||||
<div id="outline-container-org85ce158" class="outline-3">
|
||||
<h3 id="org85ce158"><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>
|
||||
@ -2193,7 +2193,7 @@ the \(n\) points:
|
||||
\[ P_{ik} = X_i^k \]
|
||||
</p>
|
||||
|
||||
<table id="org8a1b688" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org6cc947d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2331,8 +2331,8 @@ Requirements:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5670650" class="outline-3">
|
||||
<h3 id="org5670650"><span class="section-number-3">4.2</span> General functions for Value, Gradient and Laplacian of a polynomial</h3>
|
||||
<div id="outline-container-orge6d0b2d" class="outline-3">
|
||||
<h3 id="orge6d0b2d"><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\)
|
||||
@ -2377,7 +2377,7 @@ Laplacians at a given point in space, of all polynomials with an
|
||||
angular momentum up to <code>lmax</code>.
|
||||
</p>
|
||||
|
||||
<table id="org14204bf" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org99d2507" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3156,18 +3156,18 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbacc607" class="outline-2">
|
||||
<h2 id="orgbacc607"><span class="section-number-2">5</span> Combining radial and polynomial parts</h2>
|
||||
<div id="outline-container-org542e03b" class="outline-2">
|
||||
<h2 id="org542e03b"><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-org1d49e79" class="outline-3">
|
||||
<h3 id="org1d49e79"><span class="section-number-3">5.1</span> Values only</h3>
|
||||
<div id="outline-container-org28556ee" class="outline-3">
|
||||
<h3 id="org28556ee"><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-org701df9e" class="outline-4">
|
||||
<h4 id="org701df9e"><span class="section-number-4">5.1.1</span> Unoptimized version</h4>
|
||||
<div id="outline-container-org5e91fdb" class="outline-4">
|
||||
<h4 id="org5e91fdb"><span class="section-number-4">5.1.1</span> Unoptimized version</h4>
|
||||
<div class="outline-text-4" id="text-5-1-1">
|
||||
<table id="org0a3549a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org4501b35" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3403,10 +3403,10 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2f0e5a7" class="outline-4">
|
||||
<h4 id="org2f0e5a7"><span class="section-number-4">5.1.2</span> HPC version</h4>
|
||||
<div id="outline-container-org00d5bea" class="outline-4">
|
||||
<h4 id="org00d5bea"><span class="section-number-4">5.1.2</span> HPC version</h4>
|
||||
<div class="outline-text-4" id="text-5-1-2">
|
||||
<table id="org4c39be3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org60858f5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3564,8 +3564,8 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9864ce4" class="outline-4">
|
||||
<h4 id="org9864ce4"><span class="section-number-4">5.1.3</span> Interfaces</h4>
|
||||
<div id="outline-container-org716622c" class="outline-4">
|
||||
<h4 id="org716622c"><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> (
|
||||
@ -3614,14 +3614,14 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9962d4b" class="outline-3">
|
||||
<h3 id="org9962d4b"><span class="section-number-3">5.2</span> Value, gradients, Laplacian</h3>
|
||||
<div id="outline-container-org4036dda" class="outline-3">
|
||||
<h3 id="org4036dda"><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-org34ffec3" class="outline-4">
|
||||
<h4 id="org34ffec3"><span class="section-number-4">5.2.1</span> Unoptimized version</h4>
|
||||
<div id="outline-container-org25a4367" class="outline-4">
|
||||
<h4 id="org25a4367"><span class="section-number-4">5.2.1</span> Unoptimized version</h4>
|
||||
<div class="outline-text-4" id="text-5-2-1">
|
||||
<table id="orgdb7cd0d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org95027b7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3886,10 +3886,10 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6a6eda8" class="outline-4">
|
||||
<h4 id="org6a6eda8"><span class="section-number-4">5.2.2</span> HPC version</h4>
|
||||
<div id="outline-container-orgded8fee" class="outline-4">
|
||||
<h4 id="orgded8fee"><span class="section-number-4">5.2.2</span> HPC version</h4>
|
||||
<div class="outline-text-4" id="text-5-2-2">
|
||||
<table id="org372f0be" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgbb1aaa9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -4048,8 +4048,8 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org0a29a3f" class="outline-4">
|
||||
<h4 id="org0a29a3f"><span class="section-number-4">5.2.3</span> Interfaces</h4>
|
||||
<div id="outline-container-orge30a3ae" class="outline-4">
|
||||
<h4 id="orge30a3ae"><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> (
|
||||
@ -4101,7 +4101,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-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -346,54 +346,54 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgad4c265">-</a></li>
|
||||
<li><a href="#orgb30d5d3">1. Data types</a>
|
||||
<li><a href="#org7ef1053">-</a></li>
|
||||
<li><a href="#org169fb8d">1. Data types</a>
|
||||
<ul>
|
||||
<li><a href="#org206c621">1.1. Vector</a></li>
|
||||
<li><a href="#org43bc6c9">1.2. Matrix</a></li>
|
||||
<li><a href="#orgad21f66">1.3. Tensor</a></li>
|
||||
<li><a href="#org04576a1">1.4. Reshaping</a>
|
||||
<li><a href="#orgef5b5b4">1.1. Vector</a></li>
|
||||
<li><a href="#org4e8b138">1.2. Matrix</a></li>
|
||||
<li><a href="#org202ae90">1.3. Tensor</a></li>
|
||||
<li><a href="#orge40c33f">1.4. Reshaping</a>
|
||||
<ul>
|
||||
<li><a href="#orga75f848">1.4.1. Vector -> Matrix</a></li>
|
||||
<li><a href="#orgdbd37b4">1.4.2. Vector -> Tensor</a></li>
|
||||
<li><a href="#org07a1a9d">1.4.3. Matrix -> Vector</a></li>
|
||||
<li><a href="#org4f14727">1.4.4. Matrix -> Tensor</a></li>
|
||||
<li><a href="#org4cfeb42">1.4.5. Tensor -> Vector</a></li>
|
||||
<li><a href="#org53eeb4a">1.4.6. Tensor -> Matrix</a></li>
|
||||
<li><a href="#org8c0b784">1.4.1. Vector -> Matrix</a></li>
|
||||
<li><a href="#org225a610">1.4.2. Vector -> Tensor</a></li>
|
||||
<li><a href="#org8c11d65">1.4.3. Matrix -> Vector</a></li>
|
||||
<li><a href="#org28cecba">1.4.4. Matrix -> Tensor</a></li>
|
||||
<li><a href="#org82664e1">1.4.5. Tensor -> Vector</a></li>
|
||||
<li><a href="#orge1eed87">1.4.6. Tensor -> Matrix</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org00c2353">1.5. Access macros</a></li>
|
||||
<li><a href="#orgb96c0ea">1.6. Set all elements</a>
|
||||
<li><a href="#org6d81ab2">1.5. Access macros</a></li>
|
||||
<li><a href="#orgab19e3e">1.6. Set all elements</a>
|
||||
<ul>
|
||||
<li><a href="#org26e9454">1.6.1. Vector</a></li>
|
||||
<li><a href="#orgf8450d5">1.6.2. Matrix</a></li>
|
||||
<li><a href="#orga66934d">1.6.3. Tensor</a></li>
|
||||
<li><a href="#org35f4436">1.6.1. Vector</a></li>
|
||||
<li><a href="#org6d2b548">1.6.2. Matrix</a></li>
|
||||
<li><a href="#org17daab0">1.6.3. Tensor</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgfa3de22">1.7. Copy to/from to <code>double*</code></a></li>
|
||||
<li><a href="#orgd39d855">1.7. Copy to/from to <code>double*</code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org5f61c7e">2. Matrix operations</a>
|
||||
<li><a href="#orgaf8bb1b">2. Matrix operations</a>
|
||||
<ul>
|
||||
<li><a href="#orga82b3ce">2.1. <code>qmckl_dgemm</code></a></li>
|
||||
<li><a href="#org8ba2615">2.2. <code>qmckl_dgemm_safe</code></a></li>
|
||||
<li><a href="#orged63be6">2.3. <code>qmckl_matmul</code></a></li>
|
||||
<li><a href="#org78796f6">2.4. <code>qmckl_adjugate</code></a></li>
|
||||
<li><a href="#org641742b">2.5. <code>qmckl_adjugate_safe</code></a>
|
||||
<li><a href="#org8fd5a32">2.1. <code>qmckl_dgemm</code></a></li>
|
||||
<li><a href="#org797748e">2.2. <code>qmckl_dgemm_safe</code></a></li>
|
||||
<li><a href="#orgcd8fc57">2.3. <code>qmckl_matmul</code></a></li>
|
||||
<li><a href="#orgea105f4">2.4. <code>qmckl_adjugate</code></a></li>
|
||||
<li><a href="#orgfb24f5f">2.5. <code>qmckl_adjugate_safe</code></a>
|
||||
<ul>
|
||||
<li><a href="#org36f3eed">2.5.1. C interface</a></li>
|
||||
<li><a href="#org85a79a6">2.5.1. C interface</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org01fbd74">2.6. <code>qmckl_transpose</code></a></li>
|
||||
<li><a href="#org704c02a">2.6. <code>qmckl_transpose</code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgad4c265" class="outline-2">
|
||||
<h2 id="orgad4c265">-</h2>
|
||||
<div class="outline-text-2" id="text-orgad4c265">
|
||||
<div id="outline-container-org7ef1053" class="outline-2">
|
||||
<h2 id="org7ef1053">-</h2>
|
||||
<div class="outline-text-2" id="text-org7ef1053">
|
||||
<p>
|
||||
Basic linear algebra data types and operations are described in this file.
|
||||
The data types are private, so that HPC implementations can use
|
||||
@ -407,12 +407,12 @@ are not intended to be passed to external codes.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb30d5d3" class="outline-2">
|
||||
<h2 id="orgb30d5d3"><span class="section-number-2">1</span> Data types</h2>
|
||||
<div id="outline-container-org169fb8d" class="outline-2">
|
||||
<h2 id="org169fb8d"><span class="section-number-2">1</span> Data types</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-org206c621" class="outline-3">
|
||||
<h3 id="org206c621"><span class="section-number-3">1.1</span> Vector</h3>
|
||||
<div id="outline-container-orgef5b5b4" class="outline-3">
|
||||
<h3 id="orgef5b5b4"><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">
|
||||
|
||||
@ -466,8 +466,8 @@ Allocates a new vector. If the allocation failed the size is zero.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org43bc6c9" class="outline-3">
|
||||
<h3 id="org43bc6c9"><span class="section-number-3">1.2</span> Matrix</h3>
|
||||
<div id="outline-container-org4e8b138" class="outline-3">
|
||||
<h3 id="org4e8b138"><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">
|
||||
|
||||
@ -527,8 +527,8 @@ Allocates a new matrix. If the allocation failed the sizes are zero.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgad21f66" class="outline-3">
|
||||
<h3 id="orgad21f66"><span class="section-number-3">1.3</span> Tensor</h3>
|
||||
<div id="outline-container-org202ae90" class="outline-3">
|
||||
<h3 id="org202ae90"><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">
|
||||
|
||||
@ -595,16 +595,16 @@ is zero.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org04576a1" class="outline-3">
|
||||
<h3 id="org04576a1"><span class="section-number-3">1.4</span> Reshaping</h3>
|
||||
<div id="outline-container-orge40c33f" class="outline-3">
|
||||
<h3 id="orge40c33f"><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-orga75f848" class="outline-4">
|
||||
<h4 id="orga75f848"><span class="section-number-4">1.4.1</span> Vector -> Matrix</h4>
|
||||
<div id="outline-container-org8c0b784" class="outline-4">
|
||||
<h4 id="org8c0b784"><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>
|
||||
@ -620,8 +620,8 @@ Reshapes a vector into a matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdbd37b4" class="outline-4">
|
||||
<h4 id="orgdbd37b4"><span class="section-number-4">1.4.2</span> Vector -> Tensor</h4>
|
||||
<div id="outline-container-org225a610" class="outline-4">
|
||||
<h4 id="org225a610"><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>
|
||||
@ -637,8 +637,8 @@ Reshapes a vector into a tensor.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org07a1a9d" class="outline-4">
|
||||
<h4 id="org07a1a9d"><span class="section-number-4">1.4.3</span> Matrix -> Vector</h4>
|
||||
<div id="outline-container-org8c11d65" class="outline-4">
|
||||
<h4 id="org8c11d65"><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>
|
||||
@ -652,8 +652,8 @@ Reshapes a matrix into a vector.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4f14727" class="outline-4">
|
||||
<h4 id="org4f14727"><span class="section-number-4">1.4.4</span> Matrix -> Tensor</h4>
|
||||
<div id="outline-container-org28cecba" class="outline-4">
|
||||
<h4 id="org28cecba"><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>
|
||||
@ -669,8 +669,8 @@ Reshapes a matrix into a tensor.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4cfeb42" class="outline-4">
|
||||
<h4 id="org4cfeb42"><span class="section-number-4">1.4.5</span> Tensor -> Vector</h4>
|
||||
<div id="outline-container-org82664e1" class="outline-4">
|
||||
<h4 id="org82664e1"><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>
|
||||
@ -684,8 +684,8 @@ Reshapes a tensor into a vector.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org53eeb4a" class="outline-4">
|
||||
<h4 id="org53eeb4a"><span class="section-number-4">1.4.6</span> Tensor -> Matrix</h4>
|
||||
<div id="outline-container-orge1eed87" class="outline-4">
|
||||
<h4 id="orge1eed87"><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>
|
||||
@ -702,8 +702,8 @@ Reshapes a tensor into a vector.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org00c2353" class="outline-3">
|
||||
<h3 id="org00c2353"><span class="section-number-3">1.5</span> Access macros</h3>
|
||||
<div id="outline-container-org6d81ab2" class="outline-3">
|
||||
<h3 id="org6d81ab2"><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
|
||||
@ -727,12 +727,12 @@ For example:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb96c0ea" class="outline-3">
|
||||
<h3 id="orgb96c0ea"><span class="section-number-3">1.6</span> Set all elements</h3>
|
||||
<div id="outline-container-orgab19e3e" class="outline-3">
|
||||
<h3 id="orgab19e3e"><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-org26e9454" class="outline-4">
|
||||
<h4 id="org26e9454"><span class="section-number-4">1.6.1</span> Vector</h4>
|
||||
<div id="outline-container-org35f4436" class="outline-4">
|
||||
<h4 id="org35f4436"><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>
|
||||
@ -742,8 +742,8 @@ For example:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf8450d5" class="outline-4">
|
||||
<h4 id="orgf8450d5"><span class="section-number-4">1.6.2</span> Matrix</h4>
|
||||
<div id="outline-container-org6d2b548" class="outline-4">
|
||||
<h4 id="org6d2b548"><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>
|
||||
@ -753,8 +753,8 @@ For example:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga66934d" class="outline-4">
|
||||
<h4 id="orga66934d"><span class="section-number-4">1.6.3</span> Tensor</h4>
|
||||
<div id="outline-container-org17daab0" class="outline-4">
|
||||
<h4 id="org17daab0"><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>
|
||||
@ -765,8 +765,8 @@ For example:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfa3de22" class="outline-3">
|
||||
<h3 id="orgfa3de22"><span class="section-number-3">1.7</span> Copy to/from to <code>double*</code></h3>
|
||||
<div id="outline-container-orgd39d855" class="outline-3">
|
||||
<h3 id="orgd39d855"><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>
|
||||
@ -849,12 +849,12 @@ Converts a <code>double*</code> to a tensor.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5f61c7e" class="outline-2">
|
||||
<h2 id="org5f61c7e"><span class="section-number-2">2</span> Matrix operations</h2>
|
||||
<div id="outline-container-orgaf8bb1b" class="outline-2">
|
||||
<h2 id="orgaf8bb1b"><span class="section-number-2">2</span> Matrix operations</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-orga82b3ce" class="outline-3">
|
||||
<h3 id="orga82b3ce"><span class="section-number-3">2.1</span> <code>qmckl_dgemm</code></h3>
|
||||
<div id="outline-container-org8fd5a32" class="outline-3">
|
||||
<h3 id="org8fd5a32"><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:
|
||||
@ -866,7 +866,7 @@ Matrix multiplication with a BLAS interface:
|
||||
\]
|
||||
</p>
|
||||
|
||||
<table id="orgb11ecaf" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org5b8d8be" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1025,8 +1025,8 @@ Requirements:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8ba2615" class="outline-3">
|
||||
<h3 id="org8ba2615"><span class="section-number-3">2.2</span> <code>qmckl_dgemm_safe</code></h3>
|
||||
<div id="outline-container-org797748e" class="outline-3">
|
||||
<h3 id="org797748e"><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>
|
||||
@ -1035,7 +1035,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="orgac3159e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org3fe45e9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1221,8 +1221,8 @@ Requirements:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orged63be6" class="outline-3">
|
||||
<h3 id="orged63be6"><span class="section-number-3">2.3</span> <code>qmckl_matmul</code></h3>
|
||||
<div id="outline-container-orgcd8fc57" class="outline-3">
|
||||
<h3 id="orgcd8fc57"><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:
|
||||
@ -1234,7 +1234,7 @@ Matrix multiplication using the <code>qmckl_matrix</code> data type:
|
||||
\]
|
||||
</p>
|
||||
|
||||
<table id="orgde498e2" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgc1d4f85" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1328,8 +1328,8 @@ Matrix multiplication using the <code>qmckl_matrix</code> data type:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org78796f6" class="outline-3">
|
||||
<h3 id="org78796f6"><span class="section-number-3">2.4</span> <code>qmckl_adjugate</code></h3>
|
||||
<div id="outline-container-orgea105f4" class="outline-3">
|
||||
<h3 id="orgea105f4"><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
|
||||
@ -1347,7 +1347,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="org9af4c52" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgf9888ac" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1543,8 +1543,8 @@ determinant with the inverse:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org641742b" class="outline-3">
|
||||
<h3 id="org641742b"><span class="section-number-3">2.5</span> <code>qmckl_adjugate_safe</code></h3>
|
||||
<div id="outline-container-orgfb24f5f" class="outline-3">
|
||||
<h3 id="orgfb24f5f"><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>
|
||||
@ -1554,7 +1554,7 @@ NumPy arrays implies that sizes of the input and output arrays are provided.
|
||||
</p>
|
||||
|
||||
|
||||
<table id="orgc6badf9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org7293bfe" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1676,13 +1676,13 @@ LAPACK library.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org36f3eed" class="outline-4">
|
||||
<h4 id="org36f3eed"><span class="section-number-4">2.5.1</span> C interface</h4>
|
||||
<div id="outline-container-org85a79a6" class="outline-4">
|
||||
<h4 id="org85a79a6"><span class="section-number-4">2.5.1</span> C interface</h4>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org01fbd74" class="outline-3">
|
||||
<h3 id="org01fbd74"><span class="section-number-3">2.6</span> <code>qmckl_transpose</code></h3>
|
||||
<div id="outline-container-org704c02a" class="outline-3">
|
||||
<h3 id="org704c02a"><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}\).
|
||||
@ -1745,7 +1745,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-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Context</title>
|
||||
@ -324,21 +324,21 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgd348b1d">1. Context handling</a>
|
||||
<li><a href="#org2e598ee">1. Context handling</a>
|
||||
<ul>
|
||||
<li><a href="#orge773f5b">1.1. Data structure</a></li>
|
||||
<li><a href="#org21a6ce3">1.2. Creation</a></li>
|
||||
<li><a href="#org6b6bfa0">1.3. Locking</a></li>
|
||||
<li><a href="#org14c67a4">1.4. <span class="todo TODO">TODO</span> Copy</a></li>
|
||||
<li><a href="#org65a2c00">1.5. Destroy</a></li>
|
||||
<li><a href="#orge88f86f">1.1. Data structure</a></li>
|
||||
<li><a href="#org9356d94">1.2. Creation</a></li>
|
||||
<li><a href="#org40ab24f">1.3. Locking</a></li>
|
||||
<li><a href="#org34a5e9e">1.4. <span class="todo TODO">TODO</span> Copy</a></li>
|
||||
<li><a href="#org46a4aa6">1.5. Destroy</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd348b1d" class="outline-2">
|
||||
<h2 id="orgd348b1d"><span class="section-number-2">1</span> Context handling</h2>
|
||||
<div id="outline-container-org2e598ee" class="outline-2">
|
||||
<h2 id="org2e598ee"><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,
|
||||
@ -351,7 +351,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="org79fcc8b"><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="org05ccec9"><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>
|
||||
@ -369,8 +369,8 @@ and <code>ctx</code> is a <code>qmckl_context_struct*</code> pointer.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge773f5b" class="outline-3">
|
||||
<h3 id="orge773f5b"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-orge88f86f" class="outline-3">
|
||||
<h3 id="orge88f86f"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<p>
|
||||
The qmckl<sub>extra</sub> pointer lets the other implementation of the library
|
||||
@ -406,7 +406,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="#org21a6ce3"><code>qmckl_context_create</code></a> <a href="#org65a2c00"><code>qmckl_context_destroy</code></a> and <a href="#org14c67a4"><code>qmckl_context_copy</code></a>
|
||||
<a href="#org9356d94"><code>qmckl_context_create</code></a> <a href="#org46a4aa6"><code>qmckl_context_destroy</code></a> and <a href="#org34a5e9e"><code>qmckl_context_copy</code></a>
|
||||
should be updated in order to make deep copies.
|
||||
</p>
|
||||
|
||||
@ -427,8 +427,8 @@ This has the effect to increment the date of the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org21a6ce3" class="outline-3">
|
||||
<h3 id="org21a6ce3"><span class="section-number-3">1.2</span> Creation</h3>
|
||||
<div id="outline-container-org9356d94" class="outline-3">
|
||||
<h3 id="org9356d94"><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.
|
||||
@ -445,8 +445,8 @@ To create a new context, <code>qmckl_context_create()</code> should be used.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org6b6bfa0" class="outline-3">
|
||||
<h3 id="org6b6bfa0"><span class="section-number-3">1.3</span> Locking</h3>
|
||||
<div id="outline-container-org40ab24f" class="outline-3">
|
||||
<h3 id="org40ab24f"><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
|
||||
@ -462,8 +462,8 @@ number of times the thread has locked it is saved in the
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org14c67a4" class="outline-3">
|
||||
<h3 id="org14c67a4"><span class="section-number-3">1.4</span> <span class="todo TODO">TODO</span> Copy</h3>
|
||||
<div id="outline-container-org34a5e9e" class="outline-3">
|
||||
<h3 id="org34a5e9e"><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
|
||||
@ -471,8 +471,8 @@ number of times the thread has locked it is saved in the
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org65a2c00" class="outline-3">
|
||||
<h3 id="org65a2c00"><span class="section-number-3">1.5</span> Destroy</h3>
|
||||
<div id="outline-container-org46a4aa6" class="outline-3">
|
||||
<h3 id="org46a4aa6"><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.
|
||||
@ -490,7 +490,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-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -324,32 +324,32 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org6639e64">1. Context</a>
|
||||
<li><a href="#orga103db9">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org66255b1">1.1. Data structure</a></li>
|
||||
<li><a href="#orgbfb52d9">1.2. Access functions</a></li>
|
||||
<li><a href="#org1492bc8">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgc23d745">1.4. Fortran Interfaces</a></li>
|
||||
<li><a href="#org1750e9c">1.5. Test</a></li>
|
||||
<li><a href="#orgf6e3af9">1.1. Data structure</a></li>
|
||||
<li><a href="#org151db21">1.2. Access functions</a></li>
|
||||
<li><a href="#orgf61ce7d">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org980aae7">1.4. Fortran Interfaces</a></li>
|
||||
<li><a href="#org9cb1fa9">1.5. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org4f55dff">2. Computation</a>
|
||||
<li><a href="#orga36f704">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#orgc9f11e0">2.1. Determinant matrix</a>
|
||||
<li><a href="#org8b1f1f8">2.1. Determinant matrix</a>
|
||||
<ul>
|
||||
<li><a href="#orgb4927dc">2.1.1. Get</a></li>
|
||||
<li><a href="#org070243c">2.1.2. Provide</a></li>
|
||||
<li><a href="#orgc163fc3">2.1.3. Compute alpha</a></li>
|
||||
<li><a href="#orgecd0f84">2.1.4. Compute beta</a></li>
|
||||
<li><a href="#org60a144c">2.1.5. Test</a></li>
|
||||
<li><a href="#org21cf488">2.1.1. Get</a></li>
|
||||
<li><a href="#org3743a11">2.1.2. Provide</a></li>
|
||||
<li><a href="#org0659c08">2.1.3. Compute alpha</a></li>
|
||||
<li><a href="#org37fb69d">2.1.4. Compute beta</a></li>
|
||||
<li><a href="#org3353c08">2.1.5. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org319131d">2.2. Inverse of Determinant matrix</a>
|
||||
<li><a href="#orgd2c8cfc">2.2. Inverse of Determinant matrix</a>
|
||||
<ul>
|
||||
<li><a href="#orgc53d912">2.2.1. Get</a></li>
|
||||
<li><a href="#org4c75379">2.2.2. Provide</a></li>
|
||||
<li><a href="#org2119107">2.2.3. Compute alpha</a></li>
|
||||
<li><a href="#orgdfb78a0">2.2.4. Compute beta</a></li>
|
||||
<li><a href="#org9b01bc0">2.2.1. Get</a></li>
|
||||
<li><a href="#org095088d">2.2.2. Provide</a></li>
|
||||
<li><a href="#org32f1ab3">2.2.3. Compute alpha</a></li>
|
||||
<li><a href="#org132fe68">2.2.4. Compute beta</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -358,8 +358,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6639e64" class="outline-2">
|
||||
<h2 id="org6639e64"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-orga103db9" class="outline-2">
|
||||
<h2 id="orga103db9"><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:
|
||||
@ -535,8 +535,8 @@ Computed data:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org66255b1" class="outline-3">
|
||||
<h3 id="org66255b1"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-orgf6e3af9" class="outline-3">
|
||||
<h3 id="orgf6e3af9"><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> {
|
||||
@ -604,8 +604,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbfb52d9" class="outline-3">
|
||||
<h3 id="orgbfb52d9"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org151db21" class="outline-3">
|
||||
<h3 id="org151db21"><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
|
||||
@ -619,8 +619,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1492bc8" class="outline-3">
|
||||
<h3 id="org1492bc8"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-orgf61ce7d" class="outline-3">
|
||||
<h3 id="orgf61ce7d"><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
|
||||
@ -643,24 +643,24 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc23d745" class="outline-3">
|
||||
<h3 id="orgc23d745"><span class="section-number-3">1.4</span> Fortran Interfaces</h3>
|
||||
<div id="outline-container-org980aae7" class="outline-3">
|
||||
<h3 id="org980aae7"><span class="section-number-3">1.4</span> Fortran Interfaces</h3>
|
||||
</div>
|
||||
<div id="outline-container-org1750e9c" class="outline-3">
|
||||
<h3 id="org1750e9c"><span class="section-number-3">1.5</span> Test</h3>
|
||||
<div id="outline-container-org9cb1fa9" class="outline-3">
|
||||
<h3 id="org9cb1fa9"><span class="section-number-3">1.5</span> Test</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org4f55dff" class="outline-2">
|
||||
<h2 id="org4f55dff"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-orga36f704" class="outline-2">
|
||||
<h2 id="orga36f704"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-orgc9f11e0" class="outline-3">
|
||||
<h3 id="orgc9f11e0"><span class="section-number-3">2.1</span> Determinant matrix</h3>
|
||||
<div id="outline-container-org8b1f1f8" class="outline-3">
|
||||
<h3 id="org8b1f1f8"><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-orgb4927dc" class="outline-4">
|
||||
<h4 id="orgb4927dc"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-org21cf488" class="outline-4">
|
||||
<h4 id="org21cf488"><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>);
|
||||
@ -670,14 +670,14 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org070243c" class="outline-4">
|
||||
<h4 id="org070243c"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
<div id="outline-container-org3743a11" class="outline-4">
|
||||
<h4 id="org3743a11"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc163fc3" class="outline-4">
|
||||
<h4 id="orgc163fc3"><span class="section-number-4">2.1.3</span> Compute alpha</h4>
|
||||
<div id="outline-container-org0659c08" class="outline-4">
|
||||
<h4 id="org0659c08"><span class="section-number-4">2.1.3</span> Compute alpha</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<table id="org0f1ccc8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org3356129" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -851,10 +851,10 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgecd0f84" class="outline-4">
|
||||
<h4 id="orgecd0f84"><span class="section-number-4">2.1.4</span> Compute beta</h4>
|
||||
<div id="outline-container-org37fb69d" class="outline-4">
|
||||
<h4 id="org37fb69d"><span class="section-number-4">2.1.4</span> Compute beta</h4>
|
||||
<div class="outline-text-4" id="text-2-1-4">
|
||||
<table id="orgbde0743" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org5466468" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1028,18 +1028,18 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org60a144c" class="outline-4">
|
||||
<h4 id="org60a144c"><span class="section-number-4">2.1.5</span> Test</h4>
|
||||
<div id="outline-container-org3353c08" class="outline-4">
|
||||
<h4 id="org3353c08"><span class="section-number-4">2.1.5</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org319131d" class="outline-3">
|
||||
<h3 id="org319131d"><span class="section-number-3">2.2</span> Inverse of Determinant matrix</h3>
|
||||
<div id="outline-container-orgd2c8cfc" class="outline-3">
|
||||
<h3 id="orgd2c8cfc"><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-orgc53d912" class="outline-4">
|
||||
<h4 id="orgc53d912"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-org9b01bc0" class="outline-4">
|
||||
<h4 id="org9b01bc0"><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>);
|
||||
@ -1053,14 +1053,14 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4c75379" class="outline-4">
|
||||
<h4 id="org4c75379"><span class="section-number-4">2.2.2</span> Provide</h4>
|
||||
<div id="outline-container-org095088d" class="outline-4">
|
||||
<h4 id="org095088d"><span class="section-number-4">2.2.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2119107" class="outline-4">
|
||||
<h4 id="org2119107"><span class="section-number-4">2.2.3</span> Compute alpha</h4>
|
||||
<div id="outline-container-org32f1ab3" class="outline-4">
|
||||
<h4 id="org32f1ab3"><span class="section-number-4">2.2.3</span> Compute alpha</h4>
|
||||
<div class="outline-text-4" id="text-2-2-3">
|
||||
<table id="org3948775" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org7f9a59a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1222,10 +1222,10 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdfb78a0" class="outline-4">
|
||||
<h4 id="orgdfb78a0"><span class="section-number-4">2.2.4</span> Compute beta</h4>
|
||||
<div id="outline-container-org132fe68" class="outline-4">
|
||||
<h4 id="org132fe68"><span class="section-number-4">2.2.4</span> Compute beta</h4>
|
||||
<div class="outline-text-4" id="text-2-2-4">
|
||||
<table id="org47615c0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org213eb06" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1392,7 +1392,7 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -346,54 +346,54 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org5968d4c">1. Squared distance</a>
|
||||
<li><a href="#org8eaffa0">1. Squared distance</a>
|
||||
<ul>
|
||||
<li><a href="#org427fffe">1.1. <code>qmckl_distance_sq</code></a>
|
||||
<li><a href="#org84935f8">1.1. <code>qmckl_distance_sq</code></a>
|
||||
<ul>
|
||||
<li><a href="#org1e2bb2a">1.1.1. Performance</a></li>
|
||||
<li><a href="#org960d1ae">1.1.1. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgaff2890">2. Distance</a>
|
||||
<li><a href="#orge23dba3">2. Distance</a>
|
||||
<ul>
|
||||
<li><a href="#orgd2f9a33">2.1. <code>qmckl_distance</code></a>
|
||||
<li><a href="#org45b259c">2.1. <code>qmckl_distance</code></a>
|
||||
<ul>
|
||||
<li><a href="#org009cb72">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org30154ec">2.1.2. C header</a></li>
|
||||
<li><a href="#orgb0a1bf1">2.1.3. Source</a></li>
|
||||
<li><a href="#org85f1db9">2.1.4. Performance</a></li>
|
||||
<li><a href="#orge1db464">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org2af5571">2.1.2. C header</a></li>
|
||||
<li><a href="#orgd718f08">2.1.3. Source</a></li>
|
||||
<li><a href="#orga565bfb">2.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org79c7536">3. Rescaled Distance</a>
|
||||
<li><a href="#org49c89e9">3. Rescaled Distance</a>
|
||||
<ul>
|
||||
<li><a href="#orgd93ff2d">3.1. <code>qmckl_distance_rescaled</code></a>
|
||||
<li><a href="#org34b7933">3.1. <code>qmckl_distance_rescaled</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgfb9bcfc">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orgfdc2830">3.1.2. C header</a></li>
|
||||
<li><a href="#org4d34fda">3.1.3. Source</a></li>
|
||||
<li><a href="#orgdf28512">3.1.4. Performance</a></li>
|
||||
<li><a href="#org33b6f8c">3.1.1. Requirements</a></li>
|
||||
<li><a href="#org109b59b">3.1.2. C header</a></li>
|
||||
<li><a href="#org9387023">3.1.3. Source</a></li>
|
||||
<li><a href="#orgad9671b">3.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org1973453">4. Rescaled Distance Derivatives</a>
|
||||
<li><a href="#orgc57c23d">4. Rescaled Distance Derivatives</a>
|
||||
<ul>
|
||||
<li><a href="#org7a292f1">4.1. <code>qmckl_distance_rescaled_deriv_e</code></a></li>
|
||||
<li><a href="#org40fa222">4.1. <code>qmckl_distance_rescaled_deriv_e</code></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5968d4c" class="outline-2">
|
||||
<h2 id="org5968d4c"><span class="section-number-2">1</span> Squared distance</h2>
|
||||
<div id="outline-container-org8eaffa0" class="outline-2">
|
||||
<h2 id="org8eaffa0"><span class="section-number-2">1</span> Squared distance</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-org427fffe" class="outline-3">
|
||||
<h3 id="org427fffe"><span class="section-number-3">1.1</span> <code>qmckl_distance_sq</code></h3>
|
||||
<div id="outline-container-org84935f8" class="outline-3">
|
||||
<h3 id="org84935f8"><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
|
||||
@ -406,7 +406,7 @@ between all pairs of points in two sets, one point within each set:
|
||||
\]
|
||||
</p>
|
||||
|
||||
<table id="orgfe1f72f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgc7f0625" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -672,8 +672,8 @@ Requirements:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1e2bb2a" class="outline-4">
|
||||
<h4 id="org1e2bb2a"><span class="section-number-4">1.1.1</span> Performance</h4>
|
||||
<div id="outline-container-org960d1ae" class="outline-4">
|
||||
<h4 id="org960d1ae"><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
|
||||
@ -683,12 +683,12 @@ transposed.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orgaff2890" class="outline-2">
|
||||
<h2 id="orgaff2890"><span class="section-number-2">2</span> Distance</h2>
|
||||
<div id="outline-container-orge23dba3" class="outline-2">
|
||||
<h2 id="orge23dba3"><span class="section-number-2">2</span> Distance</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-orgd2f9a33" class="outline-3">
|
||||
<h3 id="orgd2f9a33"><span class="section-number-3">2.1</span> <code>qmckl_distance</code></h3>
|
||||
<div id="outline-container-org45b259c" class="outline-3">
|
||||
<h3 id="org45b259c"><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
|
||||
@ -706,7 +706,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="orgec245d0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org4780bde" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -807,8 +807,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org009cb72" class="outline-4">
|
||||
<h4 id="org009cb72"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orge1db464" class="outline-4">
|
||||
<h4 id="orge1db464"><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>
|
||||
@ -826,8 +826,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org30154ec" class="outline-4">
|
||||
<h4 id="org30154ec"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div id="outline-container-org2af5571" class="outline-4">
|
||||
<h4 id="org2af5571"><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> (
|
||||
@ -847,8 +847,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb0a1bf1" class="outline-4">
|
||||
<h4 id="orgb0a1bf1"><span class="section-number-4">2.1.3</span> Source</h4>
|
||||
<div id="outline-container-orgd718f08" class="outline-4">
|
||||
<h4 id="orgd718f08"><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>
|
||||
@ -1015,8 +1015,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org85f1db9" class="outline-4">
|
||||
<h4 id="org85f1db9"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div id="outline-container-orga565bfb" class="outline-4">
|
||||
<h4 id="orga565bfb"><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.
|
||||
@ -1026,12 +1026,12 @@ This function is more efficient when <code>A</code> and <code>B</code> are trans
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org79c7536" class="outline-2">
|
||||
<h2 id="org79c7536"><span class="section-number-2">3</span> Rescaled Distance</h2>
|
||||
<div id="outline-container-org49c89e9" class="outline-2">
|
||||
<h2 id="org49c89e9"><span class="section-number-2">3</span> Rescaled Distance</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-orgd93ff2d" class="outline-3">
|
||||
<h3 id="orgd93ff2d"><span class="section-number-3">3.1</span> <code>qmckl_distance_rescaled</code></h3>
|
||||
<div id="outline-container-org34b7933" class="outline-3">
|
||||
<h3 id="org34b7933"><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
|
||||
@ -1049,7 +1049,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="orgd87bcd5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgb575ca7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1157,8 +1157,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfb9bcfc" class="outline-4">
|
||||
<h4 id="orgfb9bcfc"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org33b6f8c" class="outline-4">
|
||||
<h4 id="org33b6f8c"><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>
|
||||
@ -1176,8 +1176,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfdc2830" class="outline-4">
|
||||
<h4 id="orgfdc2830"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div id="outline-container-org109b59b" class="outline-4">
|
||||
<h4 id="org109b59b"><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> (
|
||||
@ -1198,8 +1198,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4d34fda" class="outline-4">
|
||||
<h4 id="org4d34fda"><span class="section-number-4">3.1.3</span> Source</h4>
|
||||
<div id="outline-container-org9387023" class="outline-4">
|
||||
<h4 id="org9387023"><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>
|
||||
@ -1369,8 +1369,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdf28512" class="outline-4">
|
||||
<h4 id="orgdf28512"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div id="outline-container-orgad9671b" class="outline-4">
|
||||
<h4 id="orgad9671b"><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.
|
||||
@ -1379,12 +1379,12 @@ This function is more efficient when <code>A</code> and <code>B</code> are trans
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org1973453" class="outline-2">
|
||||
<h2 id="org1973453"><span class="section-number-2">4</span> Rescaled Distance Derivatives</h2>
|
||||
<div id="outline-container-orgc57c23d" class="outline-2">
|
||||
<h2 id="orgc57c23d"><span class="section-number-2">4</span> Rescaled Distance Derivatives</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-org7a292f1" class="outline-3">
|
||||
<h3 id="org7a292f1"><span class="section-number-3">4.1</span> <code>qmckl_distance_rescaled_deriv_e</code></h3>
|
||||
<div id="outline-container-org40fa222" class="outline-3">
|
||||
<h3 id="org40fa222"><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
|
||||
@ -1451,7 +1451,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="org366c7d2" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgcadaaf0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1789,7 +1789,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-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Electrons</title>
|
||||
@ -346,59 +346,59 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgf514524">1. Context</a>
|
||||
<li><a href="#org0fa6abe">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#orgbdaf363">1.1. Data structure</a></li>
|
||||
<li><a href="#orgabd7676">1.2. Initialization functions</a></li>
|
||||
<li><a href="#orgafae1c9">1.3. Access functions</a>
|
||||
<li><a href="#org4a976d2">1.1. Data structure</a></li>
|
||||
<li><a href="#org81c5129">1.2. Initialization functions</a></li>
|
||||
<li><a href="#orga1d010f">1.3. Access functions</a>
|
||||
<ul>
|
||||
<li><a href="#orgde69845">1.3.1. Number of electrons</a></li>
|
||||
<li><a href="#org95a9815">1.3.2. Number of walkers</a></li>
|
||||
<li><a href="#org857a6be">1.3.3. Electron coordinates</a></li>
|
||||
<li><a href="#org567eb19">1.3.1. Number of electrons</a></li>
|
||||
<li><a href="#orgb01178e">1.3.2. Number of walkers</a></li>
|
||||
<li><a href="#orgb636e95">1.3.3. Electron coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org122b5fd">1.4. Test</a></li>
|
||||
<li><a href="#org64fdfb0">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org762f39f">2. Computation</a>
|
||||
<li><a href="#orga18af15">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#org73c58eb">2.1. Electron-electron distances</a>
|
||||
<li><a href="#org0e92664">2.1. Electron-electron distances</a>
|
||||
<ul>
|
||||
<li><a href="#org072daf8">2.1.1. Get</a></li>
|
||||
<li><a href="#org8c1ff88">2.1.2. Compute</a></li>
|
||||
<li><a href="#orgc9c0879">2.1.3. Test</a></li>
|
||||
<li><a href="#org96ce2b8">2.1.1. Get</a></li>
|
||||
<li><a href="#orgf8118fc">2.1.2. Compute</a></li>
|
||||
<li><a href="#org86e57be">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org655d45f">2.2. Electron-electron potential</a>
|
||||
<li><a href="#org3af3741">2.2. Electron-electron potential</a>
|
||||
<ul>
|
||||
<li><a href="#org5de2e34">2.2.1. Get</a></li>
|
||||
<li><a href="#orgbb4d524">2.2.2. Compute</a></li>
|
||||
<li><a href="#org5816366">2.2.3. Test</a></li>
|
||||
<li><a href="#org573c5ff">2.2.1. Get</a></li>
|
||||
<li><a href="#org8b7a545">2.2.2. Compute</a></li>
|
||||
<li><a href="#org1e5aa07">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgc0cae35">2.3. Electron-nucleus distances</a>
|
||||
<li><a href="#org7cea04e">2.3. Electron-nucleus distances</a>
|
||||
<ul>
|
||||
<li><a href="#orgd9d46ad">2.3.1. Get</a></li>
|
||||
<li><a href="#org95adcfa">2.3.2. Compute</a></li>
|
||||
<li><a href="#org4e8be02">2.3.3. Test</a></li>
|
||||
<li><a href="#org54ddf00">2.3.1. Get</a></li>
|
||||
<li><a href="#org2146cbd">2.3.2. Compute</a></li>
|
||||
<li><a href="#org53358d1">2.3.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org3d1e1a3">2.4. Electron-nucleus potential</a>
|
||||
<li><a href="#org3bb62f0">2.4. Electron-nucleus potential</a>
|
||||
<ul>
|
||||
<li><a href="#org203ade5">2.4.1. Get</a></li>
|
||||
<li><a href="#orgea872fe">2.4.2. Compute</a></li>
|
||||
<li><a href="#org16a82f9">2.4.3. Test</a></li>
|
||||
<li><a href="#orga1ba98f">2.4.1. Get</a></li>
|
||||
<li><a href="#orge95c907">2.4.2. Compute</a></li>
|
||||
<li><a href="#orgde3757c">2.4.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org944a0a9">2.5. Generate initial coordinates</a></li>
|
||||
<li><a href="#org9251ec1">2.5. Generate initial coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf514524" class="outline-2">
|
||||
<h2 id="orgf514524"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org0fa6abe" class="outline-2">
|
||||
<h2 id="org0fa6abe"><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:
|
||||
@ -539,8 +539,8 @@ Computed data:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbdaf363" class="outline-3">
|
||||
<h3 id="orgbdaf363"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org4a976d2" class="outline-3">
|
||||
<h3 id="org4a976d2"><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">
|
||||
@ -609,8 +609,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgabd7676" class="outline-3">
|
||||
<h3 id="orgabd7676"><span class="section-number-3">1.2</span> Initialization functions</h3>
|
||||
<div id="outline-container-org81c5129" class="outline-3">
|
||||
<h3 id="org81c5129"><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
|
||||
@ -683,8 +683,8 @@ in the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgafae1c9" class="outline-3">
|
||||
<h3 id="orgafae1c9"><span class="section-number-3">1.3</span> Access functions</h3>
|
||||
<div id="outline-container-orga1d010f" class="outline-3">
|
||||
<h3 id="orga1d010f"><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
|
||||
@ -696,12 +696,12 @@ contains the requested data. Otherwise, this variable is untouched.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgde69845" class="outline-4">
|
||||
<h4 id="orgde69845"><span class="section-number-4">1.3.1</span> Number of electrons</h4>
|
||||
<div id="outline-container-org567eb19" class="outline-4">
|
||||
<h4 id="org567eb19"><span class="section-number-4">1.3.1</span> Number of electrons</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org95a9815" class="outline-4">
|
||||
<h4 id="org95a9815"><span class="section-number-4">1.3.2</span> Number of walkers</h4>
|
||||
<div id="outline-container-orgb01178e" class="outline-4">
|
||||
<h4 id="orgb01178e"><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
|
||||
@ -710,8 +710,8 @@ the wave function. <code>walk_num</code> is the number of walkers.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org857a6be" class="outline-4">
|
||||
<h4 id="org857a6be"><span class="section-number-4">1.3.3</span> Electron coordinates</h4>
|
||||
<div id="outline-container-orgb636e95" class="outline-4">
|
||||
<h4 id="orgb636e95"><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
|
||||
@ -761,8 +761,8 @@ current points.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org122b5fd" class="outline-3">
|
||||
<h3 id="org122b5fd"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-org64fdfb0" class="outline-3">
|
||||
<h3 id="org64fdfb0"><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> */
|
||||
@ -841,8 +841,8 @@ rc = qmckl_get_electron_coord (context, <span style="color: #8b2252;">'N'</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org762f39f" class="outline-2">
|
||||
<h2 id="org762f39f"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-orga18af15" class="outline-2">
|
||||
<h2 id="orga18af15"><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
|
||||
@ -855,12 +855,12 @@ current date is stored.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org73c58eb" class="outline-3">
|
||||
<h3 id="org73c58eb"><span class="section-number-3">2.1</span> Electron-electron distances</h3>
|
||||
<div id="outline-container-org0e92664" class="outline-3">
|
||||
<h3 id="org0e92664"><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-org072daf8" class="outline-4">
|
||||
<h4 id="org072daf8"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-org96ce2b8" class="outline-4">
|
||||
<h4 id="org96ce2b8"><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>);
|
||||
@ -869,10 +869,10 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8c1ff88" class="outline-4">
|
||||
<h4 id="org8c1ff88"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-orgf8118fc" class="outline-4">
|
||||
<h4 id="orgf8118fc"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="org6a57fb9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org6b6d56f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -977,8 +977,8 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc9c0879" class="outline-4">
|
||||
<h4 id="orgc9c0879"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-org86e57be" class="outline-4">
|
||||
<h4 id="org86e57be"><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>));
|
||||
@ -1012,8 +1012,8 @@ rc = qmckl_get_electron_ee_distance(context, ee_distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org655d45f" class="outline-3">
|
||||
<h3 id="org655d45f"><span class="section-number-3">2.2</span> Electron-electron potential</h3>
|
||||
<div id="outline-container-org3af3741" class="outline-3">
|
||||
<h3 id="org3af3741"><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
|
||||
@ -1031,8 +1031,8 @@ distance.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5de2e34" class="outline-4">
|
||||
<h4 id="org5de2e34"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-org573c5ff" class="outline-4">
|
||||
<h4 id="org573c5ff"><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>);
|
||||
@ -1041,10 +1041,10 @@ distance.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbb4d524" class="outline-4">
|
||||
<h4 id="orgbb4d524"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-org8b7a545" class="outline-4">
|
||||
<h4 id="org8b7a545"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="org05dbcd9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orga0cf2f1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1160,8 +1160,8 @@ distance.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5816366" class="outline-4">
|
||||
<h4 id="org5816366"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-org1e5aa07" class="outline-4">
|
||||
<h4 id="org1e5aa07"><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];
|
||||
@ -1173,12 +1173,12 @@ rc = qmckl_get_electron_ee_potential(context, &(ee_potential[0]));
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orgc0cae35" class="outline-3">
|
||||
<h3 id="orgc0cae35"><span class="section-number-3">2.3</span> Electron-nucleus distances</h3>
|
||||
<div id="outline-container-org7cea04e" class="outline-3">
|
||||
<h3 id="org7cea04e"><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-orgd9d46ad" class="outline-4">
|
||||
<h4 id="orgd9d46ad"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-org54ddf00" class="outline-4">
|
||||
<h4 id="org54ddf00"><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>);
|
||||
@ -1187,10 +1187,10 @@ rc = qmckl_get_electron_ee_potential(context, &(ee_potential[0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org95adcfa" class="outline-4">
|
||||
<h4 id="org95adcfa"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div id="outline-container-org2146cbd" class="outline-4">
|
||||
<h4 id="org2146cbd"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-3-2">
|
||||
<table id="orgfc84b15" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org2cefbe7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1315,8 +1315,8 @@ rc = qmckl_get_electron_ee_potential(context, &(ee_potential[0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4e8be02" class="outline-4">
|
||||
<h4 id="org4e8be02"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div id="outline-container-org53358d1" class="outline-4">
|
||||
<h4 id="org53358d1"><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">
|
||||
@ -1364,8 +1364,8 @@ rc = qmckl_get_electron_en_distance(context, &(en_distance[0][0][0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3d1e1a3" class="outline-3">
|
||||
<h3 id="org3d1e1a3"><span class="section-number-3">2.4</span> Electron-nucleus potential</h3>
|
||||
<div id="outline-container-org3bb62f0" class="outline-3">
|
||||
<h3 id="org3bb62f0"><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
|
||||
@ -1383,8 +1383,8 @@ distance and \[Z_A\] is the nuclear charge.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org203ade5" class="outline-4">
|
||||
<h4 id="org203ade5"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div id="outline-container-orga1ba98f" class="outline-4">
|
||||
<h4 id="orga1ba98f"><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>);
|
||||
@ -1393,10 +1393,10 @@ distance and \[Z_A\] is the nuclear charge.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgea872fe" class="outline-4">
|
||||
<h4 id="orgea872fe"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div id="outline-container-orge95c907" class="outline-4">
|
||||
<h4 id="orge95c907"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-4-2">
|
||||
<table id="org5a18f54" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org8614b06" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1530,8 +1530,8 @@ distance and \[Z_A\] is the nuclear charge.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org16a82f9" class="outline-4">
|
||||
<h4 id="org16a82f9"><span class="section-number-4">2.4.3</span> Test</h4>
|
||||
<div id="outline-container-orgde3757c" class="outline-4">
|
||||
<h4 id="orgde3757c"><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];
|
||||
@ -1544,14 +1544,14 @@ rc = qmckl_get_electron_en_potential(context, &(en_potential[0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org944a0a9" class="outline-3">
|
||||
<h3 id="org944a0a9"><span class="section-number-3">2.5</span> Generate initial coordinates</h3>
|
||||
<div id="outline-container-org9251ec1" class="outline-3">
|
||||
<h3 id="org9251ec1"><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-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -324,29 +324,29 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org7c6719f">-</a></li>
|
||||
<li><a href="#org13682e3">1. Decoding errors</a></li>
|
||||
<li><a href="#org1463511">2. Data structure in context</a></li>
|
||||
<li><a href="#org7569e27">3. Updating errors in the context</a></li>
|
||||
<li><a href="#orgfd2b646">4. Get the error</a></li>
|
||||
<li><a href="#org520b32d">5. Failing</a></li>
|
||||
<li><a href="#org849c0d2">6. Last error</a>
|
||||
<li><a href="#orga41280b">-</a></li>
|
||||
<li><a href="#org8289ec7">1. Decoding errors</a></li>
|
||||
<li><a href="#orgcee11f2">2. Data structure in context</a></li>
|
||||
<li><a href="#org2ab7bbf">3. Updating errors in the context</a></li>
|
||||
<li><a href="#org3e84671">4. Get the error</a></li>
|
||||
<li><a href="#orgd7ae1e6">5. Failing</a></li>
|
||||
<li><a href="#org0fda383">6. Last error</a>
|
||||
<ul>
|
||||
<li><a href="#orgd4ec916">6.1. Fortran inteface</a></li>
|
||||
<li><a href="#org3e40066">6.1. Fortran inteface</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgdd3a091">7. Helper functions for debugging</a>
|
||||
<li><a href="#org36ca623">7. Helper functions for debugging</a>
|
||||
<ul>
|
||||
<li><a href="#org4ef50fc">7.1. Fortran inteface</a></li>
|
||||
<li><a href="#org93f4e75">7.1. Fortran inteface</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7c6719f" class="outline-2">
|
||||
<h2 id="org7c6719f">-</h2>
|
||||
<div class="outline-text-2" id="text-org7c6719f">
|
||||
<div id="outline-container-orga41280b" class="outline-2">
|
||||
<h2 id="orga41280b">-</h2>
|
||||
<div class="outline-text-2" id="text-orga41280b">
|
||||
<p>
|
||||
The library should never make the calling programs abort, nor
|
||||
perform any input/output operations. This decision has to be taken
|
||||
@ -357,7 +357,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="org0544984"><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="org0c3b900"><span style="color: #a020f0;">typedef</span> <span style="color: #228b22;">int32_t</span> <span style="color: #228b22;">qmckl_exit_code</span>;
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
@ -374,7 +374,7 @@ error code is returned to the program.
|
||||
Here is the complete list of exit codes.
|
||||
</p>
|
||||
|
||||
<table id="orgad8dfb4" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgd0a38f3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -582,8 +582,8 @@ string is assumed to be large enough to contain the error message
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org13682e3" class="outline-2">
|
||||
<h2 id="org13682e3"><span class="section-number-2">1</span> Decoding errors</h2>
|
||||
<div id="outline-container-org8289ec7" class="outline-2">
|
||||
<h2 id="org8289ec7"><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
|
||||
@ -601,8 +601,8 @@ The text strings are extracted from the previous table.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org1463511" class="outline-2">
|
||||
<h2 id="org1463511"><span class="section-number-2">2</span> Data structure in context</h2>
|
||||
<div id="outline-container-orgcee11f2" class="outline-2">
|
||||
<h2 id="orgcee11f2"><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
|
||||
@ -625,8 +625,8 @@ dynamic memory allocation.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7569e27" class="outline-2">
|
||||
<h2 id="org7569e27"><span class="section-number-2">3</span> Updating errors in the context</h2>
|
||||
<div id="outline-container-org2ab7bbf" class="outline-2">
|
||||
<h2 id="org2ab7bbf"><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>.
|
||||
@ -645,8 +645,8 @@ explaining the error. The exit code can't be <code>QMCKL_SUCCESS</code>.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orgfd2b646" class="outline-2">
|
||||
<h2 id="orgfd2b646"><span class="section-number-2">4</span> Get the error</h2>
|
||||
<div id="outline-container-org3e84671" class="outline-2">
|
||||
<h2 id="org3e84671"><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
|
||||
@ -665,8 +665,8 @@ function name and message is mandatory.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org520b32d" class="outline-2">
|
||||
<h2 id="org520b32d"><span class="section-number-2">5</span> Failing</h2>
|
||||
<div id="outline-container-orgd7ae1e6" class="outline-2">
|
||||
<h2 id="orgd7ae1e6"><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
|
||||
@ -703,8 +703,8 @@ For example, this function can be used as
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org849c0d2" class="outline-2">
|
||||
<h2 id="org849c0d2"><span class="section-number-2">6</span> Last error</h2>
|
||||
<div id="outline-container-org0fda383" class="outline-2">
|
||||
<h2 id="org0fda383"><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>.
|
||||
@ -716,13 +716,13 @@ Returns a string describing the last error, using <code>qmckl_get_error</code>.
|
||||
</pre>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orgd4ec916" class="outline-3">
|
||||
<h3 id="orgd4ec916"><span class="section-number-3">6.1</span> Fortran inteface</h3>
|
||||
<div id="outline-container-org3e40066" class="outline-3">
|
||||
<h3 id="org3e40066"><span class="section-number-3">6.1</span> Fortran inteface</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdd3a091" class="outline-2">
|
||||
<h2 id="orgdd3a091"><span class="section-number-2">7</span> Helper functions for debugging</h2>
|
||||
<div id="outline-container-org36ca623" class="outline-2">
|
||||
<h2 id="org36ca623"><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
|
||||
@ -748,14 +748,14 @@ It should be used as:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4ef50fc" class="outline-3">
|
||||
<h3 id="org4ef50fc"><span class="section-number-3">7.1</span> Fortran inteface</h3>
|
||||
<div id="outline-container-org93f4e75" class="outline-3">
|
||||
<h3 id="org93f4e75"><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-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:14 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -346,27 +346,27 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orge388535">1. Python</a>
|
||||
<li><a href="#orgc91e69e">1. Python</a>
|
||||
<ul>
|
||||
<li><a href="#org59af6e3">1.1. Check numerically that MOs are orthonormal</a></li>
|
||||
<li><a href="#orgeff29f5">1.1. Check numerically that MOs are orthonormal</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgc5b7612">2. Fortran</a>
|
||||
<li><a href="#orgd443962">2. Fortran</a>
|
||||
<ul>
|
||||
<li><a href="#org63706d2">2.1. Checking errors</a></li>
|
||||
<li><a href="#org41bd8e8">2.2. Computing an atomic orbital on a grid</a></li>
|
||||
<li><a href="#orge838375">2.1. Checking errors</a></li>
|
||||
<li><a href="#org15e4654">2.2. Computing an atomic orbital on a grid</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge388535" class="outline-2">
|
||||
<h2 id="orge388535"><span class="section-number-2">1</span> Python</h2>
|
||||
<div id="outline-container-orgc91e69e" class="outline-2">
|
||||
<h2 id="orgc91e69e"><span class="section-number-2">1</span> Python</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-org59af6e3" class="outline-3">
|
||||
<h3 id="org59af6e3"><span class="section-number-3">1.1</span> Check numerically that MOs are orthonormal</h3>
|
||||
<div id="outline-container-orgeff29f5" class="outline-3">
|
||||
<h3 id="orgeff29f5"><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
|
||||
@ -542,12 +542,12 @@ and finally we compute the overlap between all the MOs as
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc5b7612" class="outline-2">
|
||||
<h2 id="orgc5b7612"><span class="section-number-2">2</span> Fortran</h2>
|
||||
<div id="outline-container-orgd443962" class="outline-2">
|
||||
<h2 id="orgd443962"><span class="section-number-2">2</span> Fortran</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org63706d2" class="outline-3">
|
||||
<h3 id="org63706d2"><span class="section-number-3">2.1</span> Checking errors</h3>
|
||||
<div id="outline-container-orge838375" class="outline-3">
|
||||
<h3 id="orge838375"><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
|
||||
@ -556,7 +556,7 @@ error in text format and exits the program.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90" id="org958b679"><span style="color: #a020f0;">subroutine</span> <span style="color: #0000ff;">qmckl_check_error</span>(rc, message)
|
||||
<pre class="src src-f90" id="orga2fd403"><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>
|
||||
@ -574,8 +574,8 @@ error in text format and exits the program.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org41bd8e8" class="outline-3">
|
||||
<h3 id="org41bd8e8"><span class="section-number-3">2.2</span> Computing an atomic orbital on a grid</h3>
|
||||
<div id="outline-container-org15e4654" class="outline-3">
|
||||
<h3 id="org15e4654"><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
|
||||
@ -794,7 +794,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-12-09 Fri 10:14</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -346,44 +346,44 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org2234425">1. Context</a>
|
||||
<li><a href="#orgb1e29d7">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#orgc0363b4">1.1. Data structure</a></li>
|
||||
<li><a href="#orgc754e64">1.2. Access functions</a></li>
|
||||
<li><a href="#org9ea3b93">1.1. Data structure</a></li>
|
||||
<li><a href="#org2e27d8f">1.2. Access functions</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgb311d61">2. Computation</a>
|
||||
<li><a href="#org6d7d67d">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#org666e46a">2.1. Kinetic energy</a>
|
||||
<li><a href="#orgb0acda4">2.1. Kinetic energy</a>
|
||||
<ul>
|
||||
<li><a href="#org74c0629">2.1.1. Get</a></li>
|
||||
<li><a href="#org412ccd5">2.1.2. Provide</a></li>
|
||||
<li><a href="#org3fd7e07">2.1.3. Compute kinetic enregy</a></li>
|
||||
<li><a href="#orgf26b2cb">2.1.4. Test</a></li>
|
||||
<li><a href="#org6f3320c">2.1.1. Get</a></li>
|
||||
<li><a href="#orgd3bb666">2.1.2. Provide</a></li>
|
||||
<li><a href="#org7b6aa97">2.1.3. Compute kinetic enregy</a></li>
|
||||
<li><a href="#org9107c21">2.1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org73612e9">2.2. Potential energy</a>
|
||||
<li><a href="#orgb898b75">2.2. Potential energy</a>
|
||||
<ul>
|
||||
<li><a href="#org2352001">2.2.1. Get</a></li>
|
||||
<li><a href="#org9798764">2.2.2. Provide</a></li>
|
||||
<li><a href="#orge7d3457">2.2.3. Compute potential enregy</a></li>
|
||||
<li><a href="#orgfac7873">2.2.4. Test</a></li>
|
||||
<li><a href="#org69a91ad">2.2.1. Get</a></li>
|
||||
<li><a href="#orge573a9f">2.2.2. Provide</a></li>
|
||||
<li><a href="#org0477b91">2.2.3. Compute potential enregy</a></li>
|
||||
<li><a href="#org276d57e">2.2.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orga894a04">2.3. Local energy</a>
|
||||
<li><a href="#org78de0ec">2.3. Local energy</a>
|
||||
<ul>
|
||||
<li><a href="#org834824e">2.3.1. Get</a></li>
|
||||
<li><a href="#orge565556">2.3.2. Provide</a></li>
|
||||
<li><a href="#orgca860d4">2.3.3. Compute local enregy</a></li>
|
||||
<li><a href="#orgefef5b5">2.3.4. Test</a></li>
|
||||
<li><a href="#orgeb7b058">2.3.1. Get</a></li>
|
||||
<li><a href="#org50fcc4e">2.3.2. Provide</a></li>
|
||||
<li><a href="#org47b7d61">2.3.3. Compute local enregy</a></li>
|
||||
<li><a href="#org5126e59">2.3.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org516d801">2.4. Drift vector</a>
|
||||
<li><a href="#orgcfaddc3">2.4. Drift vector</a>
|
||||
<ul>
|
||||
<li><a href="#org46d7b28">2.4.1. Get</a></li>
|
||||
<li><a href="#org106ffe1">2.4.2. Provide</a></li>
|
||||
<li><a href="#org2744c77">2.4.3. Compute drift vector</a></li>
|
||||
<li><a href="#org9335157">2.4.4. Test</a></li>
|
||||
<li><a href="#orgc7f1c13">2.4.1. Get</a></li>
|
||||
<li><a href="#org4dcece5">2.4.2. Provide</a></li>
|
||||
<li><a href="#org20c93cc">2.4.3. Compute drift vector</a></li>
|
||||
<li><a href="#orgf1dbb86">2.4.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -392,8 +392,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2234425" class="outline-2">
|
||||
<h2 id="org2234425"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-orgb1e29d7" class="outline-2">
|
||||
<h2 id="orgb1e29d7"><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:
|
||||
@ -466,8 +466,8 @@ Computed data:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc0363b4" class="outline-3">
|
||||
<h3 id="orgc0363b4"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org9ea3b93" class="outline-3">
|
||||
<h3 id="org9ea3b93"><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> {
|
||||
@ -501,8 +501,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc754e64" class="outline-3">
|
||||
<h3 id="orgc754e64"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org2e27d8f" class="outline-3">
|
||||
<h3 id="org2e27d8f"><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
|
||||
@ -517,12 +517,12 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb311d61" class="outline-2">
|
||||
<h2 id="orgb311d61"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org6d7d67d" class="outline-2">
|
||||
<h2 id="org6d7d67d"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org666e46a" class="outline-3">
|
||||
<h3 id="org666e46a"><span class="section-number-3">2.1</span> Kinetic energy</h3>
|
||||
<div id="outline-container-orgb0acda4" class="outline-3">
|
||||
<h3 id="orgb0acda4"><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:
|
||||
@ -546,8 +546,8 @@ case is given as follows:
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org74c0629" class="outline-4">
|
||||
<h4 id="org74c0629"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-org6f3320c" class="outline-4">
|
||||
<h4 id="org6f3320c"><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>);
|
||||
@ -556,14 +556,14 @@ case is given as follows:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org412ccd5" class="outline-4">
|
||||
<h4 id="org412ccd5"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
<div id="outline-container-orgd3bb666" class="outline-4">
|
||||
<h4 id="orgd3bb666"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3fd7e07" class="outline-4">
|
||||
<h4 id="org3fd7e07"><span class="section-number-4">2.1.3</span> Compute kinetic enregy</h4>
|
||||
<div id="outline-container-org7b6aa97" class="outline-4">
|
||||
<h4 id="org7b6aa97"><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="org79957c0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgec1b923" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -792,12 +792,12 @@ case is given as follows:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf26b2cb" class="outline-4">
|
||||
<h4 id="orgf26b2cb"><span class="section-number-4">2.1.4</span> Test</h4>
|
||||
<div id="outline-container-org9107c21" class="outline-4">
|
||||
<h4 id="org9107c21"><span class="section-number-4">2.1.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org73612e9" class="outline-3">
|
||||
<h3 id="org73612e9"><span class="section-number-3">2.2</span> Potential energy</h3>
|
||||
<div id="outline-container-orgb898b75" class="outline-3">
|
||||
<h3 id="orgb898b75"><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
|
||||
@ -833,8 +833,8 @@ contributions.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2352001" class="outline-4">
|
||||
<h4 id="org2352001"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-org69a91ad" class="outline-4">
|
||||
<h4 id="org69a91ad"><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>);
|
||||
@ -843,14 +843,14 @@ contributions.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9798764" class="outline-4">
|
||||
<h4 id="org9798764"><span class="section-number-4">2.2.2</span> Provide</h4>
|
||||
<div id="outline-container-orge573a9f" class="outline-4">
|
||||
<h4 id="orge573a9f"><span class="section-number-4">2.2.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge7d3457" class="outline-4">
|
||||
<h4 id="orge7d3457"><span class="section-number-4">2.2.3</span> Compute potential enregy</h4>
|
||||
<div id="outline-container-org0477b91" class="outline-4">
|
||||
<h4 id="org0477b91"><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="orgb30c7c3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org486dfeb" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -977,12 +977,12 @@ contributions.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfac7873" class="outline-4">
|
||||
<h4 id="orgfac7873"><span class="section-number-4">2.2.4</span> Test</h4>
|
||||
<div id="outline-container-org276d57e" class="outline-4">
|
||||
<h4 id="org276d57e"><span class="section-number-4">2.2.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orga894a04" class="outline-3">
|
||||
<h3 id="orga894a04"><span class="section-number-3">2.3</span> Local energy</h3>
|
||||
<div id="outline-container-org78de0ec" class="outline-3">
|
||||
<h3 id="org78de0ec"><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.
|
||||
@ -996,8 +996,8 @@ E_L = KE + PE
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org834824e" class="outline-4">
|
||||
<h4 id="org834824e"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-orgeb7b058" class="outline-4">
|
||||
<h4 id="orgeb7b058"><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>);
|
||||
@ -1006,14 +1006,14 @@ E_L = KE + PE
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge565556" class="outline-4">
|
||||
<h4 id="orge565556"><span class="section-number-4">2.3.2</span> Provide</h4>
|
||||
<div id="outline-container-org50fcc4e" class="outline-4">
|
||||
<h4 id="org50fcc4e"><span class="section-number-4">2.3.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgca860d4" class="outline-4">
|
||||
<h4 id="orgca860d4"><span class="section-number-4">2.3.3</span> Compute local enregy</h4>
|
||||
<div id="outline-container-org47b7d61" class="outline-4">
|
||||
<h4 id="org47b7d61"><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="org1bec0a2" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org75bfba7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1109,12 +1109,12 @@ E_L = KE + PE
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgefef5b5" class="outline-4">
|
||||
<h4 id="orgefef5b5"><span class="section-number-4">2.3.4</span> Test</h4>
|
||||
<div id="outline-container-org5126e59" class="outline-4">
|
||||
<h4 id="org5126e59"><span class="section-number-4">2.3.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org516d801" class="outline-3">
|
||||
<h3 id="org516d801"><span class="section-number-3">2.4</span> Drift vector</h3>
|
||||
<div id="outline-container-orgcfaddc3" class="outline-3">
|
||||
<h3 id="orgcfaddc3"><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
|
||||
@ -1128,8 +1128,8 @@ with the determinant of the wavefunction.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org46d7b28" class="outline-4">
|
||||
<h4 id="org46d7b28"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div id="outline-container-orgc7f1c13" class="outline-4">
|
||||
<h4 id="orgc7f1c13"><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>);
|
||||
@ -1138,14 +1138,14 @@ with the determinant of the wavefunction.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org106ffe1" class="outline-4">
|
||||
<h4 id="org106ffe1"><span class="section-number-4">2.4.2</span> Provide</h4>
|
||||
<div id="outline-container-org4dcece5" class="outline-4">
|
||||
<h4 id="org4dcece5"><span class="section-number-4">2.4.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2744c77" class="outline-4">
|
||||
<h4 id="org2744c77"><span class="section-number-4">2.4.3</span> Compute drift vector</h4>
|
||||
<div id="outline-container-org20c93cc" class="outline-4">
|
||||
<h4 id="org20c93cc"><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="orgc56255d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org4c0f3db" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1366,15 +1366,15 @@ with the determinant of the wavefunction.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9335157" class="outline-4">
|
||||
<h4 id="org9335157"><span class="section-number-4">2.4.4</span> Test</h4>
|
||||
<div id="outline-container-orgf1dbb86" class="outline-4">
|
||||
<h4 id="orgf1dbb86"><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-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -324,16 +324,16 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgf0dd5b7">1. Memory data structure for the context</a></li>
|
||||
<li><a href="#org0c6051f">2. Passing info to allocation routines</a></li>
|
||||
<li><a href="#org3d0a5b7">3. Allocation/deallocation functions</a></li>
|
||||
<li><a href="#org4b7cb55">4. Get the size of a memory block</a></li>
|
||||
<li><a href="#orge3d3115">1. Memory data structure for the context</a></li>
|
||||
<li><a href="#org7c4e037">2. Passing info to allocation routines</a></li>
|
||||
<li><a href="#orgc38df47">3. Allocation/deallocation functions</a></li>
|
||||
<li><a href="#org34a0064">4. Get the size of a memory block</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf0dd5b7" class="outline-2">
|
||||
<h2 id="orgf0dd5b7"><span class="section-number-2">1</span> Memory data structure for the context</h2>
|
||||
<div id="outline-container-orge3d3115" class="outline-2">
|
||||
<h2 id="orge3d3115"><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
|
||||
@ -375,8 +375,8 @@ array, and the number of allocated blocks.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0c6051f" class="outline-2">
|
||||
<h2 id="org0c6051f"><span class="section-number-2">2</span> Passing info to allocation routines</h2>
|
||||
<div id="outline-container-org7c4e037" class="outline-2">
|
||||
<h2 id="org7c4e037"><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
|
||||
@ -385,8 +385,8 @@ passing an instance of a <code>qmckl_memory_info_struct</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3d0a5b7" class="outline-2">
|
||||
<h2 id="org3d0a5b7"><span class="section-number-2">3</span> Allocation/deallocation functions</h2>
|
||||
<div id="outline-container-orgc38df47" class="outline-2">
|
||||
<h2 id="orgc38df47"><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
|
||||
@ -550,8 +550,8 @@ allocation and needs to be updated.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org4b7cb55" class="outline-2">
|
||||
<h2 id="org4b7cb55"><span class="section-number-2">4</span> Get the size of a memory block</h2>
|
||||
<div id="outline-container-org34a0064" class="outline-2">
|
||||
<h2 id="org34a0064"><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
|
||||
@ -646,7 +646,7 @@ rc = qmckl_context_destroy(context);
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
134
qmckl_mo.html
134
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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -324,54 +324,54 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org146d841">1. Context</a>
|
||||
<li><a href="#orge076e90">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org1c6fbfa">1.1. Data structure</a></li>
|
||||
<li><a href="#org400f5a3">1.2. Initialization functions</a></li>
|
||||
<li><a href="#orge2c282e">1.3. Access functions</a>
|
||||
<li><a href="#org4e37f62">1.1. Data structure</a></li>
|
||||
<li><a href="#orgcfa010b">1.2. Initialization functions</a></li>
|
||||
<li><a href="#orgc144af9">1.3. Access functions</a>
|
||||
<ul>
|
||||
<li><a href="#orgcbec490">1.3.1. Fortran interfaces</a></li>
|
||||
<li><a href="#orgf1f11b0">1.3.1. Fortran interfaces</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgddede94">1.4. Update</a>
|
||||
<li><a href="#org74401c0">1.4. Update</a>
|
||||
<ul>
|
||||
<li><a href="#org629eaa0">1.4.1. Fortran interface</a></li>
|
||||
<li><a href="#orgff5759d">1.4.1. Fortran interface</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org6bd1707">2. Computation</a>
|
||||
<li><a href="#org41dc291">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#orgab3a529">2.1. Computation of MOs: values only</a>
|
||||
<li><a href="#org4e5e694">2.1. Computation of MOs: values only</a>
|
||||
<ul>
|
||||
<li><a href="#orgb41f4c3">2.1.1. Get</a></li>
|
||||
<li><a href="#org6fef153">2.1.2. Provide</a></li>
|
||||
<li><a href="#org083d38f">2.1.3. Compute</a></li>
|
||||
<li><a href="#orgaa7bc54">2.1.4. HPC version</a></li>
|
||||
<li><a href="#org083ab5d">2.1.1. Get</a></li>
|
||||
<li><a href="#org71a541c">2.1.2. Provide</a></li>
|
||||
<li><a href="#org53a0c7c">2.1.3. Compute</a></li>
|
||||
<li><a href="#org807fd55">2.1.4. HPC version</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org86c36ec">2.2. Computation of MOs: values, gradient, Laplacian</a>
|
||||
<li><a href="#org3ed34ce">2.2. Computation of MOs: values, gradient, Laplacian</a>
|
||||
<ul>
|
||||
<li><a href="#org00d1523">2.2.1. Get</a></li>
|
||||
<li><a href="#org46fd3a1">2.2.2. Provide</a></li>
|
||||
<li><a href="#orga21b4ec">2.2.3. Compute</a></li>
|
||||
<li><a href="#org00974b1">2.2.4. HPC version</a></li>
|
||||
<li><a href="#org125ab4c">2.2.1. Get</a></li>
|
||||
<li><a href="#org4acdd38">2.2.2. Provide</a></li>
|
||||
<li><a href="#org17e8e85">2.2.3. Compute</a></li>
|
||||
<li><a href="#orgf590af5">2.2.4. HPC version</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orga1e9750">2.3. Rescaling of MO coefficients</a>
|
||||
<li><a href="#orga4dce8f">2.3. Rescaling of MO coefficients</a>
|
||||
<ul>
|
||||
<li><a href="#org956670e">2.3.1. Fortran interface</a></li>
|
||||
<li><a href="#org0446953">2.3.1. Fortran interface</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org9db321f">2.4. Test</a></li>
|
||||
<li><a href="#orge7debd1">2.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org146d841" class="outline-2">
|
||||
<h2 id="org146d841"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-orge076e90" class="outline-2">
|
||||
<h2 id="orge076e90"><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:
|
||||
@ -451,8 +451,8 @@ Computed data:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1c6fbfa" class="outline-3">
|
||||
<h3 id="org1c6fbfa"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org4e37f62" class="outline-3">
|
||||
<h3 id="org4e37f62"><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> {
|
||||
@ -504,8 +504,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org400f5a3" class="outline-3">
|
||||
<h3 id="org400f5a3"><span class="section-number-3">1.2</span> Initialization functions</h3>
|
||||
<div id="outline-container-orgcfa010b" class="outline-3">
|
||||
<h3 id="orgcfa010b"><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
|
||||
@ -525,8 +525,8 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge2c282e" class="outline-3">
|
||||
<h3 id="orge2c282e"><span class="section-number-3">1.3</span> Access functions</h3>
|
||||
<div id="outline-container-orgc144af9" class="outline-3">
|
||||
<h3 id="orgc144af9"><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
|
||||
@ -539,13 +539,13 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcbec490" class="outline-4">
|
||||
<h4 id="orgcbec490"><span class="section-number-4">1.3.1</span> Fortran interfaces</h4>
|
||||
<div id="outline-container-orgf1f11b0" class="outline-4">
|
||||
<h4 id="orgf1f11b0"><span class="section-number-4">1.3.1</span> Fortran interfaces</h4>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgddede94" class="outline-3">
|
||||
<h3 id="orgddede94"><span class="section-number-3">1.4</span> Update</h3>
|
||||
<div id="outline-container-org74401c0" class="outline-3">
|
||||
<h3 id="org74401c0"><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
|
||||
@ -566,22 +566,22 @@ otherwise it is kept.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org629eaa0" class="outline-4">
|
||||
<h4 id="org629eaa0"><span class="section-number-4">1.4.1</span> Fortran interface</h4>
|
||||
<div id="outline-container-orgff5759d" class="outline-4">
|
||||
<h4 id="orgff5759d"><span class="section-number-4">1.4.1</span> Fortran interface</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6bd1707" class="outline-2">
|
||||
<h2 id="org6bd1707"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org41dc291" class="outline-2">
|
||||
<h2 id="org41dc291"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-orgab3a529" class="outline-3">
|
||||
<h3 id="orgab3a529"><span class="section-number-3">2.1</span> Computation of MOs: values only</h3>
|
||||
<div id="outline-container-org4e5e694" class="outline-3">
|
||||
<h3 id="org4e5e694"><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-orgb41f4c3" class="outline-4">
|
||||
<h4 id="orgb41f4c3"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-org083ab5d" class="outline-4">
|
||||
<h4 id="org083ab5d"><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>
|
||||
@ -605,8 +605,8 @@ Uses the given array to compute the values.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6fef153" class="outline-4">
|
||||
<h4 id="org6fef153"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
<div id="outline-container-org71a541c" class="outline-4">
|
||||
<h4 id="org71a541c"><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>);
|
||||
@ -691,10 +691,10 @@ Uses the given array to compute the values.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org083d38f" class="outline-4">
|
||||
<h4 id="org083d38f"><span class="section-number-4">2.1.3</span> Compute</h4>
|
||||
<div id="outline-container-org53a0c7c" class="outline-4">
|
||||
<h4 id="org53a0c7c"><span class="section-number-4">2.1.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<table id="org4d92c7c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org691dd6c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -868,8 +868,8 @@ matrix multiplication instead of a dgemm, as exposed in
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgaa7bc54" class="outline-4">
|
||||
<h4 id="orgaa7bc54"><span class="section-number-4">2.1.4</span> HPC version</h4>
|
||||
<div id="outline-container-org807fd55" class="outline-4">
|
||||
<h4 id="org807fd55"><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
|
||||
@ -962,12 +962,12 @@ matrix multiplication instead of a dgemm, as exposed in
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org86c36ec" class="outline-3">
|
||||
<h3 id="org86c36ec"><span class="section-number-3">2.2</span> Computation of MOs: values, gradient, Laplacian</h3>
|
||||
<div id="outline-container-org3ed34ce" class="outline-3">
|
||||
<h3 id="org3ed34ce"><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-org00d1523" class="outline-4">
|
||||
<h4 id="org00d1523"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-org125ab4c" class="outline-4">
|
||||
<h4 id="org125ab4c"><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>
|
||||
@ -991,8 +991,8 @@ Uses the given array to compute the VGL.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org46fd3a1" class="outline-4">
|
||||
<h4 id="org46fd3a1"><span class="section-number-4">2.2.2</span> Provide</h4>
|
||||
<div id="outline-container-org4acdd38" class="outline-4">
|
||||
<h4 id="org4acdd38"><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>);
|
||||
@ -1076,10 +1076,10 @@ Uses the given array to compute the VGL.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga21b4ec" class="outline-4">
|
||||
<h4 id="orga21b4ec"><span class="section-number-4">2.2.3</span> Compute</h4>
|
||||
<div id="outline-container-org17e8e85" class="outline-4">
|
||||
<h4 id="org17e8e85"><span class="section-number-4">2.2.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-3">
|
||||
<table id="orge0f6af3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org04f7980" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1251,8 +1251,8 @@ matrix multiplication instead of a dgemm, as exposed in
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org00974b1" class="outline-4">
|
||||
<h4 id="org00974b1"><span class="section-number-4">2.2.4</span> HPC version</h4>
|
||||
<div id="outline-container-orgf590af5" class="outline-4">
|
||||
<h4 id="orgf590af5"><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
|
||||
@ -1398,8 +1398,8 @@ matrix multiplication instead of a dgemm, as exposed in
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga1e9750" class="outline-3">
|
||||
<h3 id="orga1e9750"><span class="section-number-3">2.3</span> Rescaling of MO coefficients</h3>
|
||||
<div id="outline-container-orga4dce8f" class="outline-3">
|
||||
<h3 id="orga4dce8f"><span class="section-number-3">2.3</span> Rescaling of MO coefficients</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
When evaluating Slater determinants, the value of the determinants
|
||||
@ -1416,19 +1416,19 @@ correct range.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org956670e" class="outline-4">
|
||||
<h4 id="org956670e"><span class="section-number-4">2.3.1</span> Fortran interface</h4>
|
||||
<div id="outline-container-org0446953" class="outline-4">
|
||||
<h4 id="org0446953"><span class="section-number-4">2.3.1</span> Fortran interface</h4>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9db321f" class="outline-3">
|
||||
<h3 id="org9db321f"><span class="section-number-3">2.4</span> Test</h3>
|
||||
<div id="outline-container-orge7debd1" class="outline-3">
|
||||
<h3 id="orge7debd1"><span class="section-number-3">2.4</span> Test</h3>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Nucleus</title>
|
||||
@ -346,28 +346,28 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org2f29ceb">1. Context</a>
|
||||
<li><a href="#org89a7963">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#orge95efe0">1.1. Data structure</a></li>
|
||||
<li><a href="#org3f67bb6">1.2. Access functions</a></li>
|
||||
<li><a href="#org4894154">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org02d94a0">1.4. Test</a></li>
|
||||
<li><a href="#org9e19953">1.1. Data structure</a></li>
|
||||
<li><a href="#org4a5868f">1.2. Access functions</a></li>
|
||||
<li><a href="#org7fc2d60">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org85d8b7c">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org6e177ab">2. Computation</a>
|
||||
<li><a href="#org0a0f20e">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#orgbf51dae">2.1. Nucleus-nucleus distances</a>
|
||||
<li><a href="#orgec116b5">2.1. Nucleus-nucleus distances</a>
|
||||
<ul>
|
||||
<li><a href="#org91b3e0b">2.1.1. Get</a></li>
|
||||
<li><a href="#orgfad9898">2.1.2. Compute</a></li>
|
||||
<li><a href="#orgda17cb7">2.1.3. Test</a></li>
|
||||
<li><a href="#org705ec55">2.1.1. Get</a></li>
|
||||
<li><a href="#org06538ba">2.1.2. Compute</a></li>
|
||||
<li><a href="#org0c6e2ae">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org235a6a7">2.2. Nuclear repulsion energy</a>
|
||||
<li><a href="#orgbbab104">2.2. Nuclear repulsion energy</a>
|
||||
<ul>
|
||||
<li><a href="#org324461b">2.2.1. Get</a></li>
|
||||
<li><a href="#org0142aa6">2.2.2. Compute</a></li>
|
||||
<li><a href="#org71964b5">2.2.3. Test</a></li>
|
||||
<li><a href="#org889f2d5">2.2.1. Get</a></li>
|
||||
<li><a href="#org990c796">2.2.2. Compute</a></li>
|
||||
<li><a href="#org76f88ce">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -376,8 +376,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2f29ceb" class="outline-2">
|
||||
<h2 id="org2f29ceb"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org89a7963" class="outline-2">
|
||||
<h2 id="org89a7963"><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:
|
||||
@ -474,8 +474,8 @@ Computed data:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge95efe0" class="outline-3">
|
||||
<h3 id="orge95efe0"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org9e19953" class="outline-3">
|
||||
<h3 id="org9e19953"><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> {
|
||||
@ -529,8 +529,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3f67bb6" class="outline-3">
|
||||
<h3 id="org3f67bb6"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org4a5868f" class="outline-3">
|
||||
<h3 id="org4a5868f"><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
|
||||
@ -544,8 +544,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4894154" class="outline-3">
|
||||
<h3 id="org4894154"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org7fc2d60" class="outline-3">
|
||||
<h3 id="org7fc2d60"><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
|
||||
@ -591,8 +591,8 @@ are be given in atomic units.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org02d94a0" class="outline-3">
|
||||
<h3 id="org02d94a0"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-org85d8b7c" class="outline-3">
|
||||
<h3 id="org85d8b7c"><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;
|
||||
@ -661,8 +661,8 @@ rc = qmckl_get_nucleus_charge(context, nucl_charge2, chbrclf_nucl_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6e177ab" class="outline-2">
|
||||
<h2 id="org6e177ab"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org0a0f20e" class="outline-2">
|
||||
<h2 id="org0a0f20e"><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
|
||||
@ -675,12 +675,12 @@ current date is stored.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbf51dae" class="outline-3">
|
||||
<h3 id="orgbf51dae"><span class="section-number-3">2.1</span> Nucleus-nucleus distances</h3>
|
||||
<div id="outline-container-orgec116b5" class="outline-3">
|
||||
<h3 id="orgec116b5"><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-org91b3e0b" class="outline-4">
|
||||
<h4 id="org91b3e0b"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-org705ec55" class="outline-4">
|
||||
<h4 id="org705ec55"><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>
|
||||
@ -692,10 +692,10 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfad9898" class="outline-4">
|
||||
<h4 id="orgfad9898"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-org06538ba" class="outline-4">
|
||||
<h4 id="org06538ba"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="org4964c30" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orga7852c9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -773,8 +773,8 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgda17cb7" class="outline-4">
|
||||
<h4 id="orgda17cb7"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-org0c6e2ae" class="outline-4">
|
||||
<h4 id="org0c6e2ae"><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> */
|
||||
@ -793,8 +793,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance, chbrclf_nucl_num*chbrclf_n
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org235a6a7" class="outline-3">
|
||||
<h3 id="org235a6a7"><span class="section-number-3">2.2</span> Nuclear repulsion energy</h3>
|
||||
<div id="outline-container-orgbbab104" class="outline-3">
|
||||
<h3 id="orgbbab104"><span class="section-number-3">2.2</span> Nuclear repulsion energy</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
\[
|
||||
@ -803,8 +803,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance, chbrclf_nucl_num*chbrclf_n
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org324461b" class="outline-4">
|
||||
<h4 id="org324461b"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-org889f2d5" class="outline-4">
|
||||
<h4 id="org889f2d5"><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>);
|
||||
@ -813,10 +813,10 @@ rc = qmckl_get_nucleus_nn_distance(context, distance, chbrclf_nucl_num*chbrclf_n
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0142aa6" class="outline-4">
|
||||
<h4 id="org0142aa6"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-org990c796" class="outline-4">
|
||||
<h4 id="org990c796"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="orgf3ce65b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org866c81d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -906,8 +906,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance, chbrclf_nucl_num*chbrclf_n
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org71964b5" class="outline-4">
|
||||
<h4 id="org71964b5"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-org76f88ce" class="outline-4">
|
||||
<h4 id="org76f88ce"><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> */
|
||||
@ -927,7 +927,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-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -346,16 +346,16 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org157af40">1. Control of the numerical precision</a></li>
|
||||
<li><a href="#orgb49dba1">2. Precision</a></li>
|
||||
<li><a href="#orga7aed0b">3. Range</a></li>
|
||||
<li><a href="#org80312a6">4. Helper functions</a></li>
|
||||
<li><a href="#org86773f3">1. Control of the numerical precision</a></li>
|
||||
<li><a href="#org27404ae">2. Precision</a></li>
|
||||
<li><a href="#orgba7b83f">3. Range</a></li>
|
||||
<li><a href="#orgf02ff3b">4. Helper functions</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org157af40" class="outline-2">
|
||||
<h2 id="org157af40"><span class="section-number-2">1</span> Control of the numerical precision</h2>
|
||||
<div id="outline-container-org86773f3" class="outline-2">
|
||||
<h2 id="org86773f3"><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
|
||||
@ -366,7 +366,7 @@ Arithmetic (IEEE 754),
|
||||
refers to the number of exponent bits.
|
||||
</p>
|
||||
|
||||
<table id="org4499ef9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org8b8f69d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -410,8 +410,8 @@ integer. The update functions return <code>QMCKL_SUCCESS</code> or
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb49dba1" class="outline-2">
|
||||
<h2 id="orgb49dba1"><span class="section-number-2">2</span> Precision</h2>
|
||||
<div id="outline-container-org27404ae" class="outline-2">
|
||||
<h2 id="org27404ae"><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
|
||||
@ -498,8 +498,8 @@ numerical precision in the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga7aed0b" class="outline-2">
|
||||
<h2 id="orga7aed0b"><span class="section-number-2">3</span> Range</h2>
|
||||
<div id="outline-container-orgba7b83f" class="outline-2">
|
||||
<h2 id="orgba7b83f"><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
|
||||
@ -574,8 +574,8 @@ range in a given context.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org80312a6" class="outline-2">
|
||||
<h2 id="org80312a6"><span class="section-number-2">4</span> Helper functions</h2>
|
||||
<div id="outline-container-orgf02ff3b" class="outline-2">
|
||||
<h2 id="orgf02ff3b"><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.
|
||||
@ -594,7 +594,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-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Point</title>
|
||||
@ -346,25 +346,25 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgdba4c77">1. Context</a>
|
||||
<li><a href="#org3164f18">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#orgd3be10e">1.1. Data structure</a></li>
|
||||
<li><a href="#org96775c2">1.2. Access functions</a>
|
||||
<li><a href="#org3a7104f">1.1. Data structure</a></li>
|
||||
<li><a href="#orgb358c13">1.2. Access functions</a>
|
||||
<ul>
|
||||
<li><a href="#org92e2962">1.2.1. Number of points</a></li>
|
||||
<li><a href="#org8c3f46a">1.2.2. Point coordinates</a></li>
|
||||
<li><a href="#org16c3c23">1.2.1. Number of points</a></li>
|
||||
<li><a href="#org94aca53">1.2.2. Point coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org3eda4e1">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org8a85218">1.4. Test</a></li>
|
||||
<li><a href="#org7983030">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgfeeb974">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdba4c77" class="outline-2">
|
||||
<h2 id="orgdba4c77"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org3164f18" class="outline-2">
|
||||
<h2 id="org3164f18"><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:
|
||||
@ -414,8 +414,8 @@ corresponds to the 3 × <code>num</code> matrix.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd3be10e" class="outline-3">
|
||||
<h3 id="orgd3be10e"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org3a7104f" class="outline-3">
|
||||
<h3 id="org3a7104f"><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> {
|
||||
@ -451,8 +451,8 @@ corresponds to the 3 × <code>num</code> matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org96775c2" class="outline-3">
|
||||
<h3 id="org96775c2"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-orgb358c13" class="outline-3">
|
||||
<h3 id="orgb358c13"><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
|
||||
@ -463,8 +463,8 @@ contains the requested data. Otherwise, this variable is untouched.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org92e2962" class="outline-4">
|
||||
<h4 id="org92e2962"><span class="section-number-4">1.2.1</span> Number of points</h4>
|
||||
<div id="outline-container-org16c3c23" class="outline-4">
|
||||
<h4 id="org16c3c23"><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.
|
||||
@ -486,8 +486,8 @@ Returns the number of points stored in the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8c3f46a" class="outline-4">
|
||||
<h4 id="org8c3f46a"><span class="section-number-4">1.2.2</span> Point coordinates</h4>
|
||||
<div id="outline-container-org94aca53" class="outline-4">
|
||||
<h4 id="org94aca53"><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).
|
||||
@ -515,8 +515,8 @@ The pointer is assumed to point on a memory block of size
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org3eda4e1" class="outline-3">
|
||||
<h3 id="org3eda4e1"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org7983030" class="outline-3">
|
||||
<h3 id="org7983030"><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
|
||||
@ -655,8 +655,8 @@ Copy a sequence of <code>num</code> points \((x,y,z)\) into the context.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org8a85218" class="outline-3">
|
||||
<h3 id="org8a85218"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-orgfeeb974" class="outline-3">
|
||||
<h3 id="orgfeeb974"><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> */
|
||||
@ -715,7 +715,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-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -346,86 +346,86 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org4b01735">1. Headers</a></li>
|
||||
<li><a href="#orgcee83ce">2. Naïve Sherman-Morrison</a>
|
||||
<li><a href="#org41cbcd0">1. Headers</a></li>
|
||||
<li><a href="#org7b81594">2. Naïve Sherman-Morrison</a>
|
||||
<ul>
|
||||
<li><a href="#org441650e">2.1. <code>qmckl_sherman_morrison</code></a>
|
||||
<li><a href="#org69e8c65">2.1. <code>qmckl_sherman_morrison</code></a>
|
||||
<ul>
|
||||
<li><a href="#org659f0fc">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org62b7502">2.1.2. C header</a></li>
|
||||
<li><a href="#orge31ad35">2.1.3. C source</a></li>
|
||||
<li><a href="#org76c47ae">2.1.4. Performance</a></li>
|
||||
<li><a href="#orge753ff2">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org42a9fa7">2.1.2. C header</a></li>
|
||||
<li><a href="#org3b6c8c2">2.1.3. C source</a></li>
|
||||
<li><a href="#orgbb23aa6">2.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgc34d770">3. Woodbury 2x2</a>
|
||||
<li><a href="#org0981bc6">3. Woodbury 2x2</a>
|
||||
<ul>
|
||||
<li><a href="#org14a7844">3.1. <code>qmckl_woodbury_2</code></a>
|
||||
<li><a href="#org4a135ae">3.1. <code>qmckl_woodbury_2</code></a>
|
||||
<ul>
|
||||
<li><a href="#org66ac127">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orgb3825e4">3.1.2. C header</a></li>
|
||||
<li><a href="#org191eff6">3.1.3. C source</a></li>
|
||||
<li><a href="#orgc9d3d28">3.1.4. Performance</a></li>
|
||||
<li><a href="#org281457a">3.1.1. Requirements</a></li>
|
||||
<li><a href="#org3282c0a">3.1.2. C header</a></li>
|
||||
<li><a href="#org54f000c">3.1.3. C source</a></li>
|
||||
<li><a href="#org8242e56">3.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org5d4241c">4. Woodbury 3x3</a>
|
||||
<li><a href="#org69c7bbc">4. Woodbury 3x3</a>
|
||||
<ul>
|
||||
<li><a href="#org3a35bed">4.1. <code>qmckl_woodbury_3</code></a>
|
||||
<li><a href="#org8fae4d8">4.1. <code>qmckl_woodbury_3</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgef21fa9">4.1.1. Requirements</a></li>
|
||||
<li><a href="#org36fc6e6">4.1.2. C header</a></li>
|
||||
<li><a href="#org400bb6a">4.1.3. C source</a></li>
|
||||
<li><a href="#org3ae9748">4.1.4. Performance…</a></li>
|
||||
<li><a href="#org3ae458e">4.1.1. Requirements</a></li>
|
||||
<li><a href="#org6b1675c">4.1.2. C header</a></li>
|
||||
<li><a href="#org5099dc3">4.1.3. C source</a></li>
|
||||
<li><a href="#org4a13671">4.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org7583836">5. Sherman-Morrison with update splitting</a>
|
||||
<li><a href="#org3452ac6">5. Sherman-Morrison with update splitting</a>
|
||||
<ul>
|
||||
<li><a href="#org8707605">5.1. <code>qmckl_sherman_morrison_splitting</code></a>
|
||||
<li><a href="#orgaf9da4b">5.1. <code>qmckl_sherman_morrison_splitting</code></a>
|
||||
<ul>
|
||||
<li><a href="#org4c2300e">5.1.1. Requirements</a></li>
|
||||
<li><a href="#orgc3de130">5.1.2. C header</a></li>
|
||||
<li><a href="#orgbebb13c">5.1.3. C source</a></li>
|
||||
<li><a href="#org3a540b1">5.1.4. Performance…</a></li>
|
||||
<li><a href="#orge3da742">5.1.1. Requirements</a></li>
|
||||
<li><a href="#org57bb0e7">5.1.2. C header</a></li>
|
||||
<li><a href="#org2d013fa">5.1.3. C source</a></li>
|
||||
<li><a href="#orgd98cf95">5.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orga4128b5">6. Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</a>
|
||||
<li><a href="#org314118f">6. Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</a>
|
||||
<ul>
|
||||
<li><a href="#orgbe22c59">6.1. <code>qmckl_sherman_morrison_smw32s</code></a>
|
||||
<li><a href="#org3229e53">6.1. <code>qmckl_sherman_morrison_smw32s</code></a>
|
||||
<ul>
|
||||
<li><a href="#org4b9b63f">6.1.1. Requirements</a></li>
|
||||
<li><a href="#orgac0d5e3">6.1.2. C header</a></li>
|
||||
<li><a href="#org0310655">6.1.3. C source</a></li>
|
||||
<li><a href="#org4928be3">6.1.4. Performance…</a></li>
|
||||
<li><a href="#orgf56f6b7">6.1.1. Requirements</a></li>
|
||||
<li><a href="#org06acf21">6.1.2. C header</a></li>
|
||||
<li><a href="#orgab4f6cb">6.1.3. C source</a></li>
|
||||
<li><a href="#org63a4d0d">6.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgbd79959">7. Helper Functions</a>
|
||||
<li><a href="#orga856737">7. Helper Functions</a>
|
||||
<ul>
|
||||
<li><a href="#org1be8508">7.1. <code>qmckl_slagel_splitting</code></a>
|
||||
<li><a href="#orgeda2d35">7.1. <code>qmckl_slagel_splitting</code></a>
|
||||
<ul>
|
||||
<li><a href="#org522dc8d">7.1.1. Requirements</a></li>
|
||||
<li><a href="#orgc7aa315">7.1.2. C header</a></li>
|
||||
<li><a href="#orgd918ae5">7.1.3. C source</a></li>
|
||||
<li><a href="#org0793db5">7.1.4. Performance</a></li>
|
||||
<li><a href="#orgecb5d5c">7.1.1. Requirements</a></li>
|
||||
<li><a href="#orgda57376">7.1.2. C header</a></li>
|
||||
<li><a href="#org5345f9a">7.1.3. C source</a></li>
|
||||
<li><a href="#org9d15363">7.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org89dd1ea">8. End of files</a></li>
|
||||
<li><a href="#orgd449ad8">8. End of files</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4b01735" class="outline-2">
|
||||
<h2 id="org4b01735"><span class="section-number-2">1</span> Headers</h2>
|
||||
<div id="outline-container-org41cbcd0" class="outline-2">
|
||||
<h2 id="org41cbcd0"><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>
|
||||
@ -444,12 +444,12 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcee83ce" class="outline-2">
|
||||
<h2 id="orgcee83ce"><span class="section-number-2">2</span> Naïve Sherman-Morrison</h2>
|
||||
<div id="outline-container-org7b81594" class="outline-2">
|
||||
<h2 id="org7b81594"><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-org441650e" class="outline-3">
|
||||
<h3 id="org441650e"><span class="section-number-3">2.1</span> <code>qmckl_sherman_morrison</code></h3>
|
||||
<div id="outline-container-org69e8c65" class="outline-3">
|
||||
<h3 id="org69e8c65"><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
|
||||
@ -491,7 +491,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="org1a25445" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org26dcd99" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -570,8 +570,8 @@ from applying the updates to the original matrix.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org659f0fc" class="outline-4">
|
||||
<h4 id="org659f0fc"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orge753ff2" class="outline-4">
|
||||
<h4 id="orge753ff2"><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>
|
||||
@ -586,8 +586,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org62b7502" class="outline-4">
|
||||
<h4 id="org62b7502"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div id="outline-container-org42a9fa7" class="outline-4">
|
||||
<h4 id="org42a9fa7"><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> (
|
||||
@ -605,8 +605,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge31ad35" class="outline-4">
|
||||
<h4 id="orge31ad35"><span class="section-number-4">2.1.3</span> C source</h4>
|
||||
<div id="outline-container-org3b6c8c2" class="outline-4">
|
||||
<h4 id="org3b6c8c2"><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>
|
||||
@ -676,8 +676,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org76c47ae" class="outline-4">
|
||||
<h4 id="org76c47ae"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div id="outline-container-orgbb23aa6" class="outline-4">
|
||||
<h4 id="orgbb23aa6"><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
|
||||
@ -689,12 +689,12 @@ where applying the update causes singular behaviour.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc34d770" class="outline-2">
|
||||
<h2 id="orgc34d770"><span class="section-number-2">3</span> Woodbury 2x2</h2>
|
||||
<div id="outline-container-org0981bc6" class="outline-2">
|
||||
<h2 id="org0981bc6"><span class="section-number-2">3</span> Woodbury 2x2</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org14a7844" class="outline-3">
|
||||
<h3 id="org14a7844"><span class="section-number-3">3.1</span> <code>qmckl_woodbury_2</code></h3>
|
||||
<div id="outline-container-org4a135ae" class="outline-3">
|
||||
<h3 id="org4a135ae"><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
|
||||
@ -718,7 +718,7 @@ from applying the updates to the original matrix.
|
||||
|
||||
|
||||
|
||||
<table id="org764f5cb" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org934808f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -790,8 +790,8 @@ from applying the updates to the original matrix.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org66ac127" class="outline-4">
|
||||
<h4 id="org66ac127"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org281457a" class="outline-4">
|
||||
<h4 id="org281457a"><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>
|
||||
@ -805,8 +805,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb3825e4" class="outline-4">
|
||||
<h4 id="orgb3825e4"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div id="outline-container-org3282c0a" class="outline-4">
|
||||
<h4 id="org3282c0a"><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> (
|
||||
@ -823,8 +823,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org191eff6" class="outline-4">
|
||||
<h4 id="org191eff6"><span class="section-number-4">3.1.3</span> C source</h4>
|
||||
<div id="outline-container-org54f000c" class="outline-4">
|
||||
<h4 id="org54f000c"><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>
|
||||
@ -911,8 +911,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc9d3d28" class="outline-4">
|
||||
<h4 id="orgc9d3d28"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org8242e56" class="outline-4">
|
||||
<h4 id="org8242e56"><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
|
||||
@ -923,12 +923,12 @@ it is sure they will not result in a singular matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5d4241c" class="outline-2">
|
||||
<h2 id="org5d4241c"><span class="section-number-2">4</span> Woodbury 3x3</h2>
|
||||
<div id="outline-container-org69c7bbc" class="outline-2">
|
||||
<h2 id="org69c7bbc"><span class="section-number-2">4</span> Woodbury 3x3</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-org3a35bed" class="outline-3">
|
||||
<h3 id="org3a35bed"><span class="section-number-3">4.1</span> <code>qmckl_woodbury_3</code></h3>
|
||||
<div id="outline-container-org8fae4d8" class="outline-3">
|
||||
<h3 id="org8fae4d8"><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
|
||||
@ -949,7 +949,7 @@ from applying the updates to the original matrix.
|
||||
|
||||
|
||||
|
||||
<table id="orgb327370" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org15cf8b3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1021,8 +1021,8 @@ from applying the updates to the original matrix.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgef21fa9" class="outline-4">
|
||||
<h4 id="orgef21fa9"><span class="section-number-4">4.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org3ae458e" class="outline-4">
|
||||
<h4 id="org3ae458e"><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>
|
||||
@ -1036,8 +1036,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org36fc6e6" class="outline-4">
|
||||
<h4 id="org36fc6e6"><span class="section-number-4">4.1.2</span> C header</h4>
|
||||
<div id="outline-container-org6b1675c" class="outline-4">
|
||||
<h4 id="org6b1675c"><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> (
|
||||
@ -1054,8 +1054,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org400bb6a" class="outline-4">
|
||||
<h4 id="org400bb6a"><span class="section-number-4">4.1.3</span> C source</h4>
|
||||
<div id="outline-container-org5099dc3" class="outline-4">
|
||||
<h4 id="org5099dc3"><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>
|
||||
@ -1157,8 +1157,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3ae9748" class="outline-4">
|
||||
<h4 id="org3ae9748"><span class="section-number-4">4.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-org4a13671" class="outline-4">
|
||||
<h4 id="org4a13671"><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
|
||||
@ -1169,12 +1169,12 @@ it is sure they will not result in a singular matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7583836" class="outline-2">
|
||||
<h2 id="org7583836"><span class="section-number-2">5</span> Sherman-Morrison with update splitting</h2>
|
||||
<div id="outline-container-org3452ac6" class="outline-2">
|
||||
<h2 id="org3452ac6"><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-org8707605" class="outline-3">
|
||||
<h3 id="org8707605"><span class="section-number-3">5.1</span> <code>qmckl_sherman_morrison_splitting</code></h3>
|
||||
<div id="outline-container-orgaf9da4b" class="outline-3">
|
||||
<h3 id="orgaf9da4b"><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
|
||||
@ -1196,7 +1196,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="org90c06f3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org6038c36" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1280,8 +1280,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org4c2300e" class="outline-4">
|
||||
<h4 id="org4c2300e"><span class="section-number-4">5.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orge3da742" class="outline-4">
|
||||
<h4 id="orge3da742"><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>
|
||||
@ -1296,8 +1296,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc3de130" class="outline-4">
|
||||
<h4 id="orgc3de130"><span class="section-number-4">5.1.2</span> C header</h4>
|
||||
<div id="outline-container-org57bb0e7" class="outline-4">
|
||||
<h4 id="org57bb0e7"><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> (
|
||||
@ -1315,8 +1315,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbebb13c" class="outline-4">
|
||||
<h4 id="orgbebb13c"><span class="section-number-4">5.1.3</span> C source</h4>
|
||||
<div id="outline-container-org2d013fa" class="outline-4">
|
||||
<h4 id="org2d013fa"><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>
|
||||
@ -1356,8 +1356,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3a540b1" class="outline-4">
|
||||
<h4 id="org3a540b1"><span class="section-number-4">5.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-orgd98cf95" class="outline-4">
|
||||
<h4 id="orgd98cf95"><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.
|
||||
@ -1367,12 +1367,12 @@ This kernel performs best when there are 2 or more rank-1 update cycles and fail
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga4128b5" class="outline-2">
|
||||
<h2 id="orga4128b5"><span class="section-number-2">6</span> Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</h2>
|
||||
<div id="outline-container-org314118f" class="outline-2">
|
||||
<h2 id="org314118f"><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-orgbe22c59" class="outline-3">
|
||||
<h3 id="orgbe22c59"><span class="section-number-3">6.1</span> <code>qmckl_sherman_morrison_smw32s</code></h3>
|
||||
<div id="outline-container-org3229e53" class="outline-3">
|
||||
<h3 id="org3229e53"><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,
|
||||
@ -1387,7 +1387,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="orgaf338f6" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org502e89a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1467,8 +1467,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org4b9b63f" class="outline-4">
|
||||
<h4 id="org4b9b63f"><span class="section-number-4">6.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgf56f6b7" class="outline-4">
|
||||
<h4 id="orgf56f6b7"><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>
|
||||
@ -1483,8 +1483,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgac0d5e3" class="outline-4">
|
||||
<h4 id="orgac0d5e3"><span class="section-number-4">6.1.2</span> C header</h4>
|
||||
<div id="outline-container-org06acf21" class="outline-4">
|
||||
<h4 id="org06acf21"><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> (
|
||||
@ -1502,8 +1502,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0310655" class="outline-4">
|
||||
<h4 id="org0310655"><span class="section-number-4">6.1.3</span> C source</h4>
|
||||
<div id="outline-container-orgab4f6cb" class="outline-4">
|
||||
<h4 id="orgab4f6cb"><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>
|
||||
@ -1581,8 +1581,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4928be3" class="outline-4">
|
||||
<h4 id="org4928be3"><span class="section-number-4">6.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-org63a4d0d" class="outline-4">
|
||||
<h4 id="org63a4d0d"><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.
|
||||
@ -1592,8 +1592,8 @@ This kernel performs best for update cycles with 2 or more rank-1 updates and th
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbd79959" class="outline-2">
|
||||
<h2 id="orgbd79959"><span class="section-number-2">7</span> Helper Functions</h2>
|
||||
<div id="outline-container-orga856737" class="outline-2">
|
||||
<h2 id="orga856737"><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.
|
||||
@ -1601,8 +1601,8 @@ These functions can only be used internally by the kernels in this module.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1be8508" class="outline-3">
|
||||
<h3 id="org1be8508"><span class="section-number-3">7.1</span> <code>qmckl_slagel_splitting</code></h3>
|
||||
<div id="outline-container-orgeda2d35" class="outline-3">
|
||||
<h3 id="orgeda2d35"><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.
|
||||
@ -1622,7 +1622,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="org4bb3cc9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org042f148" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1716,8 +1716,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org522dc8d" class="outline-4">
|
||||
<h4 id="org522dc8d"><span class="section-number-4">7.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgecb5d5c" class="outline-4">
|
||||
<h4 id="orgecb5d5c"><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>
|
||||
@ -1734,8 +1734,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc7aa315" class="outline-4">
|
||||
<h4 id="orgc7aa315"><span class="section-number-4">7.1.2</span> C header</h4>
|
||||
<div id="outline-container-orgda57376" class="outline-4">
|
||||
<h4 id="orgda57376"><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> (
|
||||
@ -1755,8 +1755,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd918ae5" class="outline-4">
|
||||
<h4 id="orgd918ae5"><span class="section-number-4">7.1.3</span> C source</h4>
|
||||
<div id="outline-container-org5345f9a" class="outline-4">
|
||||
<h4 id="org5345f9a"><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>
|
||||
@ -1834,8 +1834,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0793db5" class="outline-4">
|
||||
<h4 id="org0793db5"><span class="section-number-4">7.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org9d15363" class="outline-4">
|
||||
<h4 id="org9d15363"><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
|
||||
@ -1846,8 +1846,8 @@ with Sherman-Morrison and update splitting. Please look at the performance recco
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org89dd1ea" class="outline-2">
|
||||
<h2 id="org89dd1ea"><span class="section-number-2">8</span> End of files</h2>
|
||||
<div id="outline-container-orgd449ad8" class="outline-2">
|
||||
<h2 id="orgd449ad8"><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);
|
||||
@ -1861,7 +1861,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-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -246,27 +246,27 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgd93e1a3">1. CHBrClF</a>
|
||||
<li><a href="#org3fd19a0">1. CHBrClF</a>
|
||||
<ul>
|
||||
<li><a href="#org605f344">1.1. XYZ coordinates</a></li>
|
||||
<li><a href="#org3a00476">1.2. Atomic basis set</a></li>
|
||||
<li><a href="#orgefb83b2">1.3. Molecular orbitals</a></li>
|
||||
<li><a href="#org49b3791">1.4. Electron coordinates</a></li>
|
||||
<li><a href="#org488c658">1.1. XYZ coordinates</a></li>
|
||||
<li><a href="#orgd6da16b">1.2. Atomic basis set</a></li>
|
||||
<li><a href="#org1f183fa">1.3. Molecular orbitals</a></li>
|
||||
<li><a href="#org42e1fa4">1.4. Electron coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org19f6dd1">2. N2</a>
|
||||
<li><a href="#orga3ac8b8">2. N2</a>
|
||||
<ul>
|
||||
<li><a href="#orgbefec81">2.1. XYZ coordinates</a></li>
|
||||
<li><a href="#org617b578">2.2. Electron coordinates</a></li>
|
||||
<li><a href="#org4daf386">2.3. Jastrow related data</a></li>
|
||||
<li><a href="#org87961fc">2.1. XYZ coordinates</a></li>
|
||||
<li><a href="#orgddbcd06">2.2. Electron coordinates</a></li>
|
||||
<li><a href="#org4e0727b">2.3. Jastrow related data</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd93e1a3" class="outline-2">
|
||||
<h2 id="orgd93e1a3"><span class="section-number-2">1</span> CHBrClF</h2>
|
||||
<div id="outline-container-org3fd19a0" class="outline-2">
|
||||
<h2 id="org3fd19a0"><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,
|
||||
@ -350,8 +350,8 @@ and with a high maximum angular momentum.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org605f344" class="outline-3">
|
||||
<h3 id="org605f344"><span class="section-number-3">1.1</span> XYZ coordinates</h3>
|
||||
<div id="outline-container-org488c658" class="outline-3">
|
||||
<h3 id="org488c658"><span class="section-number-3">1.1</span> XYZ coordinates</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<pre class="example">
|
||||
5
|
||||
@ -381,8 +381,8 @@ Nuclear coordinates are stored in atomic units in transposed format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3a00476" class="outline-3">
|
||||
<h3 id="org3a00476"><span class="section-number-3">1.2</span> Atomic basis set</h3>
|
||||
<div id="outline-container-orgd6da16b" class="outline-3">
|
||||
<h3 id="orgd6da16b"><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
|
||||
@ -1301,8 +1301,8 @@ F 1
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgefb83b2" class="outline-3">
|
||||
<h3 id="orgefb83b2"><span class="section-number-3">1.3</span> Molecular orbitals</h3>
|
||||
<div id="outline-container-org1f183fa" class="outline-3">
|
||||
<h3 id="org1f183fa"><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)
|
||||
@ -60226,8 +60226,8 @@ F 1
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org49b3791" class="outline-3">
|
||||
<h3 id="org49b3791"><span class="section-number-3">1.4</span> Electron coordinates</h3>
|
||||
<div id="outline-container-org42e1fa4" class="outline-3">
|
||||
<h3 id="org42e1fa4"><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.
|
||||
@ -60386,8 +60386,8 @@ Electron coordinates are stored in atomic units in normal format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org19f6dd1" class="outline-2">
|
||||
<h2 id="org19f6dd1"><span class="section-number-2">2</span> N2</h2>
|
||||
<div id="outline-container-orga3ac8b8" class="outline-2">
|
||||
<h2 id="orga3ac8b8"><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
|
||||
@ -60428,8 +60428,8 @@ treated by pseudopotentials thus excluded from the actual calculation.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbefec81" class="outline-3">
|
||||
<h3 id="orgbefec81"><span class="section-number-3">2.1</span> XYZ coordinates</h3>
|
||||
<div id="outline-container-org87961fc" class="outline-3">
|
||||
<h3 id="org87961fc"><span class="section-number-3">2.1</span> XYZ coordinates</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<pre class="example">
|
||||
2
|
||||
@ -60456,8 +60456,8 @@ Nuclear coordinates are stored in atomic units in transposed format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org617b578" class="outline-3">
|
||||
<h3 id="org617b578"><span class="section-number-3">2.2</span> Electron coordinates</h3>
|
||||
<div id="outline-container-orgddbcd06" class="outline-3">
|
||||
<h3 id="orgddbcd06"><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.
|
||||
@ -60486,8 +60486,8 @@ Electron coordinates are stored in atomic units in normal format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4daf386" class="outline-3">
|
||||
<h3 id="org4daf386"><span class="section-number-3">2.3</span> Jastrow related data</h3>
|
||||
<div id="outline-container-org4e0727b" class="outline-3">
|
||||
<h3 id="org4e0727b"><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
|
||||
@ -60586,7 +60586,7 @@ Ramon Panades Baruetta.
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="date">Created: 2022-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -324,53 +324,53 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org1589913">1. Local functions</a>
|
||||
<li><a href="#orgc2d0c52">1. Local functions</a>
|
||||
<ul>
|
||||
<li><a href="#org642066f">1.1. Open file</a></li>
|
||||
<li><a href="#org6d7da25">1.2. Electron</a></li>
|
||||
<li><a href="#orgd36c69b">1.3. Nucleus</a>
|
||||
<li><a href="#org18b25f4">1.1. Open file</a></li>
|
||||
<li><a href="#org6b91c63">1.2. Electron</a></li>
|
||||
<li><a href="#orgb520d16">1.3. Nucleus</a>
|
||||
<ul>
|
||||
<li><a href="#orgbd045c0">1.3.1. Number of nuclei</a></li>
|
||||
<li><a href="#org589387e">1.3.2. Nuclear charges</a></li>
|
||||
<li><a href="#org80a36e4">1.3.3. Nuclear coordinates</a></li>
|
||||
<li><a href="#org4345ab0">1.3.1. Number of nuclei</a></li>
|
||||
<li><a href="#org2972a0c">1.3.2. Nuclear charges</a></li>
|
||||
<li><a href="#org1132863">1.3.3. Nuclear coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org5c58992">1.4. Basis set and AOs</a>
|
||||
<li><a href="#org4f73bed">1.4. Basis set and AOs</a>
|
||||
<ul>
|
||||
<li><a href="#org058901b">1.4.1. Basis set type</a></li>
|
||||
<li><a href="#orgba09a63">1.4.2. Number of shells</a></li>
|
||||
<li><a href="#org40038ec">1.4.3. Number of primitives</a></li>
|
||||
<li><a href="#orga09e16c">1.4.4. Number of atomic orbitals</a></li>
|
||||
<li><a href="#org949ec05">1.4.5. Nucleus<sub>index</sub> array</a></li>
|
||||
<li><a href="#org99b21a9">1.4.6. Number of shells per nucleus</a></li>
|
||||
<li><a href="#orgde355da">1.4.7. Angular momentum</a></li>
|
||||
<li><a href="#orgd3174d1">1.4.8. Number of primitives per shell</a></li>
|
||||
<li><a href="#orgaaf0f73">1.4.9. Indices of the primitives</a></li>
|
||||
<li><a href="#org8c78a55">1.4.10. Normalization of the shells</a></li>
|
||||
<li><a href="#org2de98dd">1.4.11. Exponents</a></li>
|
||||
<li><a href="#org8ff078d">1.4.12. Coefficients</a></li>
|
||||
<li><a href="#orgf5bde9b">1.4.13. Normalization of the primitivies</a></li>
|
||||
<li><a href="#orgb4696e5">1.4.14. AO Normalization</a></li>
|
||||
<li><a href="#orgec85452">1.4.1. Basis set type</a></li>
|
||||
<li><a href="#org9353f8c">1.4.2. Number of shells</a></li>
|
||||
<li><a href="#org4b94db1">1.4.3. Number of primitives</a></li>
|
||||
<li><a href="#orge8cc17c">1.4.4. Number of atomic orbitals</a></li>
|
||||
<li><a href="#orga547b1d">1.4.5. Nucleus<sub>index</sub> array</a></li>
|
||||
<li><a href="#org83d4a53">1.4.6. Number of shells per nucleus</a></li>
|
||||
<li><a href="#orgbe9be5d">1.4.7. Angular momentum</a></li>
|
||||
<li><a href="#org84112ac">1.4.8. Number of primitives per shell</a></li>
|
||||
<li><a href="#org4c05c17">1.4.9. Indices of the primitives</a></li>
|
||||
<li><a href="#org8aa62be">1.4.10. Normalization of the shells</a></li>
|
||||
<li><a href="#org63e30db">1.4.11. Exponents</a></li>
|
||||
<li><a href="#orgf2c8a59">1.4.12. Coefficients</a></li>
|
||||
<li><a href="#org030fd0c">1.4.13. Normalization of the primitivies</a></li>
|
||||
<li><a href="#org2b7b219">1.4.14. AO Normalization</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org164886f">1.5. Molecular orbitals</a>
|
||||
<li><a href="#org109eed2">1.5. Molecular orbitals</a>
|
||||
<ul>
|
||||
<li><a href="#orgb7ca5d2">1.5.1. Number of MOs</a></li>
|
||||
<li><a href="#org68a8fef">1.5.2. MO coefficients</a></li>
|
||||
<li><a href="#orgb282a3d">1.5.1. Number of MOs</a></li>
|
||||
<li><a href="#org7996f7a">1.5.2. MO coefficients</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgf991a69">1.6. <span class="todo TODO">TODO</span> ECP</a></li>
|
||||
<li><a href="#orga8baf3b">1.6. <span class="todo TODO">TODO</span> ECP</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgc53d380">2. Read everything</a></li>
|
||||
<li><a href="#org9c6ae25">3. Test</a>
|
||||
<li><a href="#orgeebea51">2. Read everything</a></li>
|
||||
<li><a href="#orgcd335b7">3. Test</a>
|
||||
<ul>
|
||||
<li>
|
||||
<ul>
|
||||
<li><a href="#org063cfa5">3.0.1. Electrons</a></li>
|
||||
<li><a href="#org8fbfa3c">3.0.2. Nuclei</a></li>
|
||||
<li><a href="#org13b4252">3.0.3. Atomic basis</a></li>
|
||||
<li><a href="#orga4cd1d2">3.0.4. MO Basis</a></li>
|
||||
<li><a href="#org0c3a806">3.0.1. Electrons</a></li>
|
||||
<li><a href="#orgb7a595f">3.0.2. Nuclei</a></li>
|
||||
<li><a href="#org3153bd9">3.0.3. Atomic basis</a></li>
|
||||
<li><a href="#orgc97de21">3.0.4. MO Basis</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -379,8 +379,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1589913" class="outline-2">
|
||||
<h2 id="org1589913"><span class="section-number-2">1</span> Local functions</h2>
|
||||
<div id="outline-container-orgc2d0c52" class="outline-2">
|
||||
<h2 id="orgc2d0c52"><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
|
||||
@ -403,8 +403,8 @@ In the functions defined in this section, we use as local variables
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org642066f" class="outline-3">
|
||||
<h3 id="org642066f"><span class="section-number-3">1.1</span> Open file</h3>
|
||||
<div id="outline-container-org18b25f4" class="outline-3">
|
||||
<h3 id="org18b25f4"><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
|
||||
@ -442,8 +442,8 @@ groups of data by passing the <code>trexio_t</code> handle.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6d7da25" class="outline-3">
|
||||
<h3 id="org6d7da25"><span class="section-number-3">1.2</span> Electron</h3>
|
||||
<div id="outline-container-org6b91c63" class="outline-3">
|
||||
<h3 id="org6b91c63"><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.
|
||||
@ -494,8 +494,8 @@ We read the number of up-spin and down-spin electrons.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd36c69b" class="outline-3">
|
||||
<h3 id="orgd36c69b"><span class="section-number-3">1.3</span> Nucleus</h3>
|
||||
<div id="outline-container-orgb520d16" class="outline-3">
|
||||
<h3 id="orgb520d16"><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.
|
||||
@ -515,8 +515,8 @@ In this section we read the number of nuclei, the molecular geometry and nuclear
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbd045c0" class="outline-4">
|
||||
<h4 id="orgbd045c0"><span class="section-number-4">1.3.1</span> Number of nuclei</h4>
|
||||
<div id="outline-container-org4345ab0" class="outline-4">
|
||||
<h4 id="org4345ab0"><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;
|
||||
@ -539,8 +539,8 @@ rc = qmckl_set_nucleus_num(context, nucleus_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org589387e" class="outline-4">
|
||||
<h4 id="org589387e"><span class="section-number-4">1.3.2</span> Nuclear charges</h4>
|
||||
<div id="outline-container-org2972a0c" class="outline-4">
|
||||
<h4 id="org2972a0c"><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">{
|
||||
@ -580,8 +580,8 @@ rc = qmckl_set_nucleus_num(context, nucleus_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org80a36e4" class="outline-4">
|
||||
<h4 id="org80a36e4"><span class="section-number-4">1.3.3</span> Nuclear coordinates</h4>
|
||||
<div id="outline-container-org1132863" class="outline-4">
|
||||
<h4 id="org1132863"><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
|
||||
@ -636,8 +636,8 @@ in the TREXIO file (<code>'N'</code>), so it will be automatically transposed in
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5c58992" class="outline-3">
|
||||
<h3 id="org5c58992"><span class="section-number-3">1.4</span> Basis set and AOs</h3>
|
||||
<div id="outline-container-org4f73bed" class="outline-3">
|
||||
<h3 id="org4f73bed"><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.
|
||||
@ -663,8 +663,8 @@ In this section we read the atomic basis set and atomic orbitals.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org058901b" class="outline-4">
|
||||
<h4 id="org058901b"><span class="section-number-4">1.4.1</span> Basis set type</h4>
|
||||
<div id="outline-container-orgec85452" class="outline-4">
|
||||
<h4 id="orgec85452"><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
|
||||
@ -695,8 +695,8 @@ In this section we read the atomic basis set and atomic orbitals.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgba09a63" class="outline-4">
|
||||
<h4 id="orgba09a63"><span class="section-number-4">1.4.2</span> Number of shells</h4>
|
||||
<div id="outline-container-org9353f8c" class="outline-4">
|
||||
<h4 id="org9353f8c"><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;
|
||||
@ -720,8 +720,8 @@ rc = qmckl_set_ao_basis_shell_num(context, shell_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org40038ec" class="outline-4">
|
||||
<h4 id="org40038ec"><span class="section-number-4">1.4.3</span> Number of primitives</h4>
|
||||
<div id="outline-container-org4b94db1" class="outline-4">
|
||||
<h4 id="org4b94db1"><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;
|
||||
@ -745,8 +745,8 @@ rc = qmckl_set_ao_basis_prim_num(context, prim_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga09e16c" class="outline-4">
|
||||
<h4 id="orga09e16c"><span class="section-number-4">1.4.4</span> Number of atomic orbitals</h4>
|
||||
<div id="outline-container-orge8cc17c" class="outline-4">
|
||||
<h4 id="orge8cc17c"><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;
|
||||
@ -770,8 +770,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org949ec05" class="outline-4">
|
||||
<h4 id="org949ec05"><span class="section-number-4">1.4.5</span> Nucleus<sub>index</sub> array</h4>
|
||||
<div id="outline-container-orga547b1d" class="outline-4">
|
||||
<h4 id="orga547b1d"><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">{
|
||||
@ -851,8 +851,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org99b21a9" class="outline-4">
|
||||
<h4 id="org99b21a9"><span class="section-number-4">1.4.6</span> Number of shells per nucleus</h4>
|
||||
<div id="outline-container-org83d4a53" class="outline-4">
|
||||
<h4 id="org83d4a53"><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">{
|
||||
@ -937,8 +937,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgde355da" class="outline-4">
|
||||
<h4 id="orgde355da"><span class="section-number-4">1.4.7</span> Angular momentum</h4>
|
||||
<div id="outline-container-orgbe9be5d" class="outline-4">
|
||||
<h4 id="orgbe9be5d"><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">{
|
||||
@ -983,8 +983,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd3174d1" class="outline-4">
|
||||
<h4 id="orgd3174d1"><span class="section-number-4">1.4.8</span> Number of primitives per shell</h4>
|
||||
<div id="outline-container-org84112ac" class="outline-4">
|
||||
<h4 id="org84112ac"><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">{
|
||||
@ -1068,8 +1068,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgaaf0f73" class="outline-4">
|
||||
<h4 id="orgaaf0f73"><span class="section-number-4">1.4.9</span> Indices of the primitives</h4>
|
||||
<div id="outline-container-org4c05c17" class="outline-4">
|
||||
<h4 id="org4c05c17"><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">{
|
||||
@ -1149,8 +1149,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8c78a55" class="outline-4">
|
||||
<h4 id="org8c78a55"><span class="section-number-4">1.4.10</span> Normalization of the shells</h4>
|
||||
<div id="outline-container-org8aa62be" class="outline-4">
|
||||
<h4 id="org8aa62be"><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">{
|
||||
@ -1195,8 +1195,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2de98dd" class="outline-4">
|
||||
<h4 id="org2de98dd"><span class="section-number-4">1.4.11</span> Exponents</h4>
|
||||
<div id="outline-container-org63e30db" class="outline-4">
|
||||
<h4 id="org63e30db"><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">{
|
||||
@ -1241,8 +1241,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8ff078d" class="outline-4">
|
||||
<h4 id="org8ff078d"><span class="section-number-4">1.4.12</span> Coefficients</h4>
|
||||
<div id="outline-container-orgf2c8a59" class="outline-4">
|
||||
<h4 id="orgf2c8a59"><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">{
|
||||
@ -1287,8 +1287,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf5bde9b" class="outline-4">
|
||||
<h4 id="orgf5bde9b"><span class="section-number-4">1.4.13</span> Normalization of the primitivies</h4>
|
||||
<div id="outline-container-org030fd0c" class="outline-4">
|
||||
<h4 id="org030fd0c"><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">{
|
||||
@ -1333,8 +1333,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb4696e5" class="outline-4">
|
||||
<h4 id="orgb4696e5"><span class="section-number-4">1.4.14</span> AO Normalization</h4>
|
||||
<div id="outline-container-org2b7b219" class="outline-4">
|
||||
<h4 id="org2b7b219"><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">{
|
||||
@ -1389,8 +1389,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org164886f" class="outline-3">
|
||||
<h3 id="org164886f"><span class="section-number-3">1.5</span> Molecular orbitals</h3>
|
||||
<div id="outline-container-org109eed2" class="outline-3">
|
||||
<h3 id="org109eed2"><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.
|
||||
@ -1416,8 +1416,8 @@ In this section we read the MO coefficients.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb7ca5d2" class="outline-4">
|
||||
<h4 id="orgb7ca5d2"><span class="section-number-4">1.5.1</span> Number of MOs</h4>
|
||||
<div id="outline-container-orgb282a3d" class="outline-4">
|
||||
<h4 id="orgb282a3d"><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;
|
||||
@ -1440,8 +1440,8 @@ rc = qmckl_set_mo_basis_mo_num(context, mo_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org68a8fef" class="outline-4">
|
||||
<h4 id="org68a8fef"><span class="section-number-4">1.5.2</span> MO coefficients</h4>
|
||||
<div id="outline-container-org7996f7a" class="outline-4">
|
||||
<h4 id="org7996f7a"><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">{
|
||||
@ -1490,12 +1490,12 @@ rc = qmckl_set_mo_basis_mo_num(context, mo_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf991a69" class="outline-3">
|
||||
<h3 id="orgf991a69"><span class="section-number-3">1.6</span> <span class="todo TODO">TODO</span> ECP</h3>
|
||||
<div id="outline-container-orga8baf3b" class="outline-3">
|
||||
<h3 id="orga8baf3b"><span class="section-number-3">1.6</span> <span class="todo TODO">TODO</span> ECP</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orgc53d380" class="outline-2">
|
||||
<h2 id="orgc53d380"><span class="section-number-2">2</span> Read everything</h2>
|
||||
<div id="outline-container-orgeebea51" class="outline-2">
|
||||
<h2 id="orgeebea51"><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>
|
||||
@ -1570,8 +1570,8 @@ rc = qmckl_set_mo_basis_mo_num(context, mo_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9c6ae25" class="outline-2">
|
||||
<h2 id="org9c6ae25"><span class="section-number-2">3</span> Test</h2>
|
||||
<div id="outline-container-orgcd335b7" class="outline-2">
|
||||
<h2 id="orgcd335b7"><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
|
||||
@ -1595,8 +1595,8 @@ rc = qmckl_trexio_read(context, filename, 255);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org063cfa5" class="outline-4">
|
||||
<h4 id="org063cfa5"><span class="section-number-4">3.0.1</span> Electrons</h4>
|
||||
<div id="outline-container-org0c3a806" class="outline-4">
|
||||
<h4 id="org0c3a806"><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>);
|
||||
@ -1614,8 +1614,8 @@ rc = qmckl_get_electron_down_num(context, &dn_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8fbfa3c" class="outline-4">
|
||||
<h4 id="org8fbfa3c"><span class="section-number-4">3.0.2</span> Nuclei</h4>
|
||||
<div id="outline-container-orgb7a595f" class="outline-4">
|
||||
<h4 id="orgb7a595f"><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>);
|
||||
@ -1655,8 +1655,8 @@ coord = <span style="color: #008b8b;">NULL</span>;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org13b4252" class="outline-4">
|
||||
<h4 id="org13b4252"><span class="section-number-4">3.0.3</span> Atomic basis</h4>
|
||||
<div id="outline-container-org3153bd9" class="outline-4">
|
||||
<h4 id="org3153bd9"><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>);
|
||||
@ -1764,8 +1764,8 @@ prim_factor = <span style="color: #008b8b;">NULL</span>;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga4cd1d2" class="outline-4">
|
||||
<h4 id="orga4cd1d2"><span class="section-number-4">3.0.4</span> MO Basis</h4>
|
||||
<div id="outline-container-orgc97de21" class="outline-4">
|
||||
<h4 id="orgc97de21"><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>);
|
||||
@ -1796,7 +1796,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-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</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-12-09 Fri 10:13 -->
|
||||
<!-- 2022-12-09 Fri 10:20 -->
|
||||
<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>
|
||||
@ -324,22 +324,22 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org54ae489">1. Verificarlo probes</a>
|
||||
<li><a href="#org73ec06c">1. Verificarlo probes</a>
|
||||
<ul>
|
||||
<li><a href="#orgc6eacab">1.1. Automatically initialize the <code>vfc_probe</code> object if <code>VFC_CI</code> is defined</a></li>
|
||||
<li><a href="#org0fbd327">1.2. Standard probe, without check</a></li>
|
||||
<li><a href="#orgf4ee2c1">1.3. Probe with absolute check</a></li>
|
||||
<li><a href="#org0f727b4">1.4. Probe with relative check</a></li>
|
||||
<li><a href="#org8fa8dcb">1.5. Automatically delete and dump the vfc<sub>probe</sub> object if <code>VFC_CI</code> is defined</a></li>
|
||||
<li><a href="#org41e7791">1.1. Automatically initialize the <code>vfc_probe</code> object if <code>VFC_CI</code> is defined</a></li>
|
||||
<li><a href="#org538df68">1.2. Standard probe, without check</a></li>
|
||||
<li><a href="#orge2be360">1.3. Probe with absolute check</a></li>
|
||||
<li><a href="#org834f6e5">1.4. Probe with relative check</a></li>
|
||||
<li><a href="#org027bc7b">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="#orgc492cc0">2. Fortran wrappers</a></li>
|
||||
<li><a href="#orgf6e10d1">2. Fortran wrappers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org54ae489" class="outline-2">
|
||||
<h2 id="org54ae489"><span class="section-number-2">1</span> Verificarlo probes</h2>
|
||||
<div id="outline-container-org73ec06c" class="outline-2">
|
||||
<h2 id="org73ec06c"><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
|
||||
@ -390,8 +390,8 @@ To learn more about Verificarlo CI :
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgc6eacab" class="outline-3">
|
||||
<h3 id="orgc6eacab"><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-org41e7791" class="outline-3">
|
||||
<h3 id="org41e7791"><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>();
|
||||
@ -409,8 +409,8 @@ To learn more about Verificarlo CI :
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0fbd327" class="outline-3">
|
||||
<h3 id="org0fbd327"><span class="section-number-3">1.2</span> Standard probe, without check</h3>
|
||||
<div id="outline-container-org538df68" class="outline-3">
|
||||
<h3 id="org538df68"><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>
|
||||
@ -445,8 +445,8 @@ if <code>VFC_CI</code> is undefined, return <code>false</code> (no error)
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf4ee2c1" class="outline-3">
|
||||
<h3 id="orgf4ee2c1"><span class="section-number-3">1.3</span> Probe with absolute check</h3>
|
||||
<div id="outline-container-orge2be360" class="outline-3">
|
||||
<h3 id="orge2be360"><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>
|
||||
@ -486,8 +486,8 @@ and accuracy
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0f727b4" class="outline-3">
|
||||
<h3 id="org0f727b4"><span class="section-number-3">1.4</span> Probe with relative check</h3>
|
||||
<div id="outline-container-org834f6e5" class="outline-3">
|
||||
<h3 id="org834f6e5"><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>
|
||||
@ -527,8 +527,8 @@ and accuracy
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8fa8dcb" class="outline-3">
|
||||
<h3 id="org8fa8dcb"><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-org027bc7b" class="outline-3">
|
||||
<h3 id="org027bc7b"><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>();
|
||||
@ -547,8 +547,8 @@ and accuracy
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc492cc0" class="outline-2">
|
||||
<h2 id="orgc492cc0"><span class="section-number-2">2</span> Fortran wrappers</h2>
|
||||
<div id="outline-container-orgf6e10d1" class="outline-2">
|
||||
<h2 id="orgf6e10d1"><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>(
|
||||
@ -672,7 +672,7 @@ and accuracy
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:13</p>
|
||||
<p class="date">Created: 2022-12-09 Fri 10:20</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
Loading…
Reference in New Issue
Block a user