mirror of
https://github.com/TREX-CoE/qmckl.git
synced 2025-04-28 19:34:46 +02:00
Deploying to gh-pages from @ TREX-CoE/qmckl@90212829ee 🚀
This commit is contained in:
parent
c1f527af5c
commit
46449c8644
@ -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>
|
||||
<!-- 2021-09-14 Tue 10:11 -->
|
||||
<!-- 2021-09-14 Tue 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>
|
||||
@ -354,7 +354,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: 2021-09-14 Tue 10:11</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 10:20</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
102
qmckl.html
102
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>
|
||||
<!-- 2021-09-14 Tue 10:11 -->
|
||||
<!-- 2021-09-14 Tue 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>
|
||||
@ -333,30 +333,30 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org7271e67">1. Using QMCkl</a></li>
|
||||
<li><a href="#orgf5426d9">2. Developing in QMCkl</a>
|
||||
<li><a href="#orgeb570d5">1. Using QMCkl</a></li>
|
||||
<li><a href="#org093b3d1">2. Developing in QMCkl</a>
|
||||
<ul>
|
||||
<li><a href="#org4f513ef">2.1. Literate programming</a></li>
|
||||
<li><a href="#orgb44a1cf">2.2. Source code editing</a></li>
|
||||
<li><a href="#org9342eae">2.3. Choice of the programming language</a></li>
|
||||
<li><a href="#orgd46cef7">2.4. Coding rules</a></li>
|
||||
<li><a href="#org5a093aa">2.5. Design of the library</a></li>
|
||||
<li><a href="#orgc0a223c">2.6. Naming conventions</a></li>
|
||||
<li><a href="#org6e5a623">2.7. Application programming interface</a></li>
|
||||
<li><a href="#org16f09cb">2.8. Global state</a></li>
|
||||
<li><a href="#org6b9a1e0">2.9. Headers</a></li>
|
||||
<li><a href="#org9502bcc">2.10. Low-level functions</a></li>
|
||||
<li><a href="#org187da64">2.11. High-level functions</a></li>
|
||||
<li><a href="#org8fdd5ba">2.12. Numerical precision</a></li>
|
||||
<li><a href="#orgc863350">2.13. Algorithms</a></li>
|
||||
<li><a href="#org1c1e878">2.1. Literate programming</a></li>
|
||||
<li><a href="#org43af1f4">2.2. Source code editing</a></li>
|
||||
<li><a href="#org30ad0be">2.3. Choice of the programming language</a></li>
|
||||
<li><a href="#org35dd88b">2.4. Coding rules</a></li>
|
||||
<li><a href="#orgae23672">2.5. Design of the library</a></li>
|
||||
<li><a href="#orgb83c3ef">2.6. Naming conventions</a></li>
|
||||
<li><a href="#org4e3af4a">2.7. Application programming interface</a></li>
|
||||
<li><a href="#org69ff180">2.8. Global state</a></li>
|
||||
<li><a href="#org786b281">2.9. Headers</a></li>
|
||||
<li><a href="#org80d047e">2.10. Low-level functions</a></li>
|
||||
<li><a href="#orgfecfd97">2.11. High-level functions</a></li>
|
||||
<li><a href="#orgbe228ee">2.12. Numerical precision</a></li>
|
||||
<li><a href="#orge7257da">2.13. Algorithms</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7271e67" class="outline-2">
|
||||
<h2 id="org7271e67"><span class="section-number-2">1</span> Using QMCkl</h2>
|
||||
<div id="outline-container-orgeb570d5" class="outline-2">
|
||||
<h2 id="orgeb570d5"><span class="section-number-2">1</span> Using QMCkl</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The <code>qmckl.h</code> header file installed in the <code>${prefix}/include</code> directory
|
||||
@ -385,12 +385,12 @@ Both files are located in the <code>include/</code> directory.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf5426d9" class="outline-2">
|
||||
<h2 id="orgf5426d9"><span class="section-number-2">2</span> Developing in QMCkl</h2>
|
||||
<div id="outline-container-org093b3d1" class="outline-2">
|
||||
<h2 id="org093b3d1"><span class="section-number-2">2</span> Developing in QMCkl</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org4f513ef" class="outline-3">
|
||||
<h3 id="org4f513ef"><span class="section-number-3">2.1</span> Literate programming</h3>
|
||||
<div id="outline-container-org1c1e878" class="outline-3">
|
||||
<h3 id="org1c1e878"><span class="section-number-3">2.1</span> Literate programming</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
In a traditional source code, most of the lines of source files of a program
|
||||
@ -435,8 +435,8 @@ interactively, in the same spirit as Jupyter notebooks.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb44a1cf" class="outline-3">
|
||||
<h3 id="orgb44a1cf"><span class="section-number-3">2.2</span> Source code editing</h3>
|
||||
<div id="outline-container-org43af1f4" class="outline-3">
|
||||
<h3 id="org43af1f4"><span class="section-number-3">2.2</span> Source code editing</h3>
|
||||
<div class="outline-text-3" id="text-2-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>.
|
||||
@ -467,8 +467,8 @@ org-mode.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9342eae" class="outline-3">
|
||||
<h3 id="org9342eae"><span class="section-number-3">2.3</span> Choice of the programming language</h3>
|
||||
<div id="outline-container-org30ad0be" class="outline-3">
|
||||
<h3 id="org30ad0be"><span class="section-number-3">2.3</span> Choice of the programming language</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
Most of the codes of the <a href="https://trex-coe.eu">TREX CoE</a> are written in Fortran with some scripts in
|
||||
@ -516,8 +516,8 @@ For more guidelines on using Fortran to generate a C interface, see
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd46cef7" class="outline-3">
|
||||
<h3 id="orgd46cef7"><span class="section-number-3">2.4</span> Coding rules</h3>
|
||||
<div id="outline-container-org35dd88b" class="outline-3">
|
||||
<h3 id="org35dd88b"><span class="section-number-3">2.4</span> Coding rules</h3>
|
||||
<div class="outline-text-3" id="text-2-4">
|
||||
<p>
|
||||
The authors should follow the recommendations of the C99
|
||||
@ -535,8 +535,8 @@ Compliance can be checked with <code>cppcheck</code> as:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5a093aa" class="outline-3">
|
||||
<h3 id="org5a093aa"><span class="section-number-3">2.5</span> Design of the library</h3>
|
||||
<div id="outline-container-orgae23672" class="outline-3">
|
||||
<h3 id="orgae23672"><span class="section-number-3">2.5</span> Design of the library</h3>
|
||||
<div class="outline-text-3" id="text-2-5">
|
||||
<p>
|
||||
The proposed API should allow the library to: deal with memory transfers
|
||||
@ -547,8 +547,8 @@ functions (see below).
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc0a223c" class="outline-3">
|
||||
<h3 id="orgc0a223c"><span class="section-number-3">2.6</span> Naming conventions</h3>
|
||||
<div id="outline-container-orgb83c3ef" class="outline-3">
|
||||
<h3 id="orgb83c3ef"><span class="section-number-3">2.6</span> Naming conventions</h3>
|
||||
<div class="outline-text-3" id="text-2-6">
|
||||
<p>
|
||||
To avoid namespace collisions, we use <code>qmckl_</code> as a prefix for all exported
|
||||
@ -573,8 +573,8 @@ form is allowed.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6e5a623" class="outline-3">
|
||||
<h3 id="org6e5a623"><span class="section-number-3">2.7</span> Application programming interface</h3>
|
||||
<div id="outline-container-org4e3af4a" class="outline-3">
|
||||
<h3 id="org4e3af4a"><span class="section-number-3">2.7</span> Application programming interface</h3>
|
||||
<div class="outline-text-3" id="text-2-7">
|
||||
<p>
|
||||
In the C language, the number of bits used by the integer types can change
|
||||
@ -606,15 +606,15 @@ bindings in other languages in other repositories.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org16f09cb" class="outline-3">
|
||||
<h3 id="org16f09cb"><span class="section-number-3">2.8</span> Global state</h3>
|
||||
<div id="outline-container-org69ff180" class="outline-3">
|
||||
<h3 id="org69ff180"><span class="section-number-3">2.8</span> Global state</h3>
|
||||
<div class="outline-text-3" id="text-2-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="orgbcf2e3b">=context=</a> contains the global
|
||||
<code>qmckl_context_create</code> function. The <a id="org5a8fed2">=context=</a> contains the global
|
||||
state of the library, and is used as the first argument of many
|
||||
QMCkl functions.
|
||||
</p>
|
||||
@ -628,8 +628,8 @@ the state is done by setters and getters, prefixed by
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6b9a1e0" class="outline-3">
|
||||
<h3 id="org6b9a1e0"><span class="section-number-3">2.9</span> Headers</h3>
|
||||
<div id="outline-container-org786b281" class="outline-3">
|
||||
<h3 id="org786b281"><span class="section-number-3">2.9</span> Headers</h3>
|
||||
<div class="outline-text-3" id="text-2-9">
|
||||
<p>
|
||||
A single <code>qmckl.h</code> header to be distributed by the library
|
||||
@ -717,8 +717,8 @@ and the types definitions should be written in the <code>*fh_type.f90</code> fil
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9502bcc" class="outline-3">
|
||||
<h3 id="org9502bcc"><span class="section-number-3">2.10</span> Low-level functions</h3>
|
||||
<div id="outline-container-org80d047e" class="outline-3">
|
||||
<h3 id="org80d047e"><span class="section-number-3">2.10</span> Low-level functions</h3>
|
||||
<div class="outline-text-3" id="text-2-10">
|
||||
<p>
|
||||
Low-level functions are very simple functions which are leaves of
|
||||
@ -727,14 +727,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="#orgbcf2e3b"><code>context</code></a>. They are not allowed to allocate/deallocate memory, and
|
||||
<a href="#org5a8fed2"><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-org187da64" class="outline-3">
|
||||
<h3 id="org187da64"><span class="section-number-3">2.11</span> High-level functions</h3>
|
||||
<div id="outline-container-orgfecfd97" class="outline-3">
|
||||
<h3 id="orgfecfd97"><span class="section-number-3">2.11</span> High-level functions</h3>
|
||||
<div class="outline-text-3" id="text-2-11">
|
||||
<p>
|
||||
High-level functions are at the top of the function call tree.
|
||||
@ -747,27 +747,27 @@ temporary storage, to simplify the use of accelerators.
|
||||
<p>
|
||||
The high-level functions should be pure, unless the introduction
|
||||
of non-purity is justified. All the side effects should be made in
|
||||
the <a href="#orgbcf2e3b"><code>context</code></a> variable.
|
||||
the <a href="#org5a8fed2"><code>context</code></a> variable.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8fdd5ba" class="outline-3">
|
||||
<h3 id="org8fdd5ba"><span class="section-number-3">2.12</span> Numerical precision</h3>
|
||||
<div id="outline-container-orgbe228ee" class="outline-3">
|
||||
<h3 id="orgbe228ee"><span class="section-number-3">2.12</span> Numerical precision</h3>
|
||||
<div class="outline-text-3" id="text-2-12">
|
||||
<p>
|
||||
The number of bits of precision required for a function 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="#orgbcf2e3b"><code>context</code></a>
|
||||
functions will use the precision specified in the <a href="#org5a8fed2"><code>context</code></a>
|
||||
variable.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc863350" class="outline-3">
|
||||
<h3 id="orgc863350"><span class="section-number-3">2.13</span> Algorithms</h3>
|
||||
<div id="outline-container-orge7257da" class="outline-3">
|
||||
<h3 id="orge7257da"><span class="section-number-3">2.13</span> Algorithms</h3>
|
||||
<div class="outline-text-3" id="text-2-13">
|
||||
<p>
|
||||
Reducing the scaling of an algorithm usually implies also reducing
|
||||
@ -783,7 +783,7 @@ implemented adapted to different problem sizes.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 10:11</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 10:20</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
260
qmckl_ao.html
260
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>
|
||||
<!-- 2021-09-14 Tue 10:12 -->
|
||||
<!-- 2021-09-14 Tue 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>
|
||||
@ -333,71 +333,71 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org7abf134">1. Context</a>
|
||||
<li><a href="#org1af3628">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org95cd798">1.1. Data structure</a></li>
|
||||
<li><a href="#orgbc3fcdb">1.2. Access functions</a></li>
|
||||
<li><a href="#org0dcac02">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org39b6e33">1.4. Fortran interfaces</a></li>
|
||||
<li><a href="#org0fc470b">1.1. Data structure</a></li>
|
||||
<li><a href="#org92020ab">1.2. Access functions</a></li>
|
||||
<li><a href="#org15f2b4c">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgca694ac">1.4. Fortran interfaces</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org7cdec6f">2. Radial part</a>
|
||||
<li><a href="#orgb492669">2. Radial part</a>
|
||||
<ul>
|
||||
<li><a href="#org1f6fe0a">2.1. <span class="todo TODO">TODO</span> Helper functions to accelerate calculations</a></li>
|
||||
<li><a href="#org1e6471e">2.2. General functions for Gaussian basis functions</a></li>
|
||||
<li><a href="#org09f5826">2.3. <span class="todo TODO">TODO</span> General functions for Slater basis functions</a></li>
|
||||
<li><a href="#org7267d09">2.4. <span class="todo TODO">TODO</span> General functions for Radial functions on a grid</a></li>
|
||||
<li><a href="#orgbf8933a">2.5. Computation of primitives</a>
|
||||
<li><a href="#orgf3c3e85">2.1. <span class="todo TODO">TODO</span> Helper functions to accelerate calculations</a></li>
|
||||
<li><a href="#org9ecf1a7">2.2. General functions for Gaussian basis functions</a></li>
|
||||
<li><a href="#orgae4e231">2.3. <span class="todo TODO">TODO</span> General functions for Slater basis functions</a></li>
|
||||
<li><a href="#org5ca5720">2.4. <span class="todo TODO">TODO</span> General functions for Radial functions on a grid</a></li>
|
||||
<li><a href="#org5c6da90">2.5. Computation of primitives</a>
|
||||
<ul>
|
||||
<li><a href="#orgabe16f9">2.5.1. Get</a></li>
|
||||
<li><a href="#org7f8f604">2.5.2. Provide</a></li>
|
||||
<li><a href="#org1b49c3b">2.5.3. Compute</a></li>
|
||||
<li><a href="#org9d70cbf">2.5.4. Test</a></li>
|
||||
<li><a href="#org5cc894c">2.5.5. Ideas for improvement</a></li>
|
||||
<li><a href="#org5b3f983">2.5.1. Get</a></li>
|
||||
<li><a href="#orgcea5fd9">2.5.2. Provide</a></li>
|
||||
<li><a href="#org56bd04c">2.5.3. Compute</a></li>
|
||||
<li><a href="#org68da68a">2.5.4. Test</a></li>
|
||||
<li><a href="#orgb93ef0c">2.5.5. Ideas for improvement</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org39b822d">2.6. Computation of shells</a>
|
||||
<li><a href="#org164d6c9">2.6. Computation of shells</a>
|
||||
<ul>
|
||||
<li><a href="#org2802305">2.6.1. Get</a></li>
|
||||
<li><a href="#org2d3d7ff">2.6.2. Provide</a></li>
|
||||
<li><a href="#org582da37">2.6.3. Compute</a></li>
|
||||
<li><a href="#orgd40f77f">2.6.4. Test</a></li>
|
||||
<li><a href="#orge843f9f">2.6.1. Get</a></li>
|
||||
<li><a href="#org1c4be52">2.6.2. Provide</a></li>
|
||||
<li><a href="#org16d3cbf">2.6.3. Compute</a></li>
|
||||
<li><a href="#orgabe90e5">2.6.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgac05ed3">3. Polynomial part</a>
|
||||
<li><a href="#orgbd307dd">3. Polynomial part</a>
|
||||
<ul>
|
||||
<li><a href="#org64aa922">3.1. General functions for Powers of \(x-X_i\)</a>
|
||||
<li><a href="#orge3690ed">3.1. General functions for Powers of \(x-X_i\)</a>
|
||||
<ul>
|
||||
<li><a href="#org40a02c8">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orgd9e9042">3.1.2. C Header</a></li>
|
||||
<li><a href="#org84f1d4c">3.1.3. Source</a></li>
|
||||
<li><a href="#orge09519e">3.1.4. C interface</a></li>
|
||||
<li><a href="#org7030711">3.1.5. Fortran interface</a></li>
|
||||
<li><a href="#org1a9d9dc">3.1.6. Test</a></li>
|
||||
<li><a href="#org4eaa736">3.1.1. Requirements</a></li>
|
||||
<li><a href="#org38cd942">3.1.2. C Header</a></li>
|
||||
<li><a href="#org1551768">3.1.3. Source</a></li>
|
||||
<li><a href="#orgf66e477">3.1.4. C interface</a></li>
|
||||
<li><a href="#org47644f0">3.1.5. Fortran interface</a></li>
|
||||
<li><a href="#orga17f5e2">3.1.6. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orga553c14">3.2. General functions for Value, Gradient and Laplacian of a polynomial</a>
|
||||
<li><a href="#orgb871c38">3.2. General functions for Value, Gradient and Laplacian of a polynomial</a>
|
||||
<ul>
|
||||
<li><a href="#orgdcba311">3.2.1. Requirements</a></li>
|
||||
<li><a href="#org68d716a">3.2.2. C Header</a></li>
|
||||
<li><a href="#org3f408e4">3.2.3. Source</a></li>
|
||||
<li><a href="#orgab2c013">3.2.4. C interface</a></li>
|
||||
<li><a href="#org8dcbb0e">3.2.5. Fortran interface</a></li>
|
||||
<li><a href="#orge5f1520">3.2.6. Test</a></li>
|
||||
<li><a href="#orgb89c969">3.2.1. Requirements</a></li>
|
||||
<li><a href="#org25bce9c">3.2.2. C Header</a></li>
|
||||
<li><a href="#org677088d">3.2.3. Source</a></li>
|
||||
<li><a href="#org52259a8">3.2.4. C interface</a></li>
|
||||
<li><a href="#orgf81297c">3.2.5. Fortran interface</a></li>
|
||||
<li><a href="#org6948bae">3.2.6. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org52d0351">4. Combining radial and polynomial parts</a>
|
||||
<li><a href="#org58320f8">4. Combining radial and polynomial parts</a>
|
||||
<ul>
|
||||
<li>
|
||||
<ul>
|
||||
<li><a href="#org50623ee">4.0.1. Get</a></li>
|
||||
<li><a href="#org3912281">4.0.2. Provide</a></li>
|
||||
<li><a href="#orge23d7b5">4.0.3. Compute</a></li>
|
||||
<li><a href="#orga4c4754">4.0.4. Test</a></li>
|
||||
<li><a href="#orgfeb22ae">4.0.1. Get</a></li>
|
||||
<li><a href="#org2b9ec5a">4.0.2. Provide</a></li>
|
||||
<li><a href="#org7f99782">4.0.3. Compute</a></li>
|
||||
<li><a href="#org739c3de">4.0.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -406,8 +406,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7abf134" class="outline-2">
|
||||
<h2 id="org7abf134"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org1af3628" class="outline-2">
|
||||
<h2 id="org1af3628"><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:
|
||||
@ -679,8 +679,8 @@ prim_factor = [ 1.0006253235944540e+01, 2.4169531573445120e+00, 7.96109248497664
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org95cd798" class="outline-3">
|
||||
<h3 id="org95cd798"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org0fc470b" class="outline-3">
|
||||
<h3 id="org0fc470b"><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_ao_basis_struct</span> {
|
||||
@ -753,8 +753,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbc3fcdb" class="outline-3">
|
||||
<h3 id="orgbc3fcdb"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org92020ab" class="outline-3">
|
||||
<h3 id="org92020ab"><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 AOs have been provided, the following
|
||||
@ -768,8 +768,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0dcac02" class="outline-3">
|
||||
<h3 id="org0dcac02"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org15f2b4c" class="outline-3">
|
||||
<h3 id="org15f2b4c"><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
|
||||
@ -807,20 +807,20 @@ the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org39b6e33" class="outline-3">
|
||||
<h3 id="org39b6e33"><span class="section-number-3">1.4</span> Fortran interfaces</h3>
|
||||
<div id="outline-container-orgca694ac" class="outline-3">
|
||||
<h3 id="orgca694ac"><span class="section-number-3">1.4</span> Fortran interfaces</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7cdec6f" class="outline-2">
|
||||
<h2 id="org7cdec6f"><span class="section-number-2">2</span> Radial part</h2>
|
||||
<div id="outline-container-orgb492669" class="outline-2">
|
||||
<h2 id="orgb492669"><span class="section-number-2">2</span> Radial part</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org1f6fe0a" class="outline-3">
|
||||
<h3 id="org1f6fe0a"><span class="section-number-3">2.1</span> <span class="todo TODO">TODO</span> Helper functions to accelerate calculations</h3>
|
||||
<div id="outline-container-orgf3c3e85" class="outline-3">
|
||||
<h3 id="orgf3c3e85"><span class="section-number-3">2.1</span> <span class="todo TODO">TODO</span> Helper functions to accelerate calculations</h3>
|
||||
</div>
|
||||
<div id="outline-container-org1e6471e" class="outline-3">
|
||||
<h3 id="org1e6471e"><span class="section-number-3">2.2</span> General functions for Gaussian basis functions</h3>
|
||||
<div id="outline-container-org9ecf1a7" class="outline-3">
|
||||
<h3 id="org9ecf1a7"><span class="section-number-3">2.2</span> General functions for Gaussian basis functions</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
<code>qmckl_ao_gaussian_vgl</code> computes the values, gradients and
|
||||
@ -1052,18 +1052,18 @@ Requirements
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org09f5826" class="outline-3">
|
||||
<h3 id="org09f5826"><span class="section-number-3">2.3</span> <span class="todo TODO">TODO</span> General functions for Slater basis functions</h3>
|
||||
<div id="outline-container-orgae4e231" class="outline-3">
|
||||
<h3 id="orgae4e231"><span class="section-number-3">2.3</span> <span class="todo TODO">TODO</span> General functions for Slater basis functions</h3>
|
||||
</div>
|
||||
<div id="outline-container-org7267d09" class="outline-3">
|
||||
<h3 id="org7267d09"><span class="section-number-3">2.4</span> <span class="todo TODO">TODO</span> General functions for Radial functions on a grid</h3>
|
||||
<div id="outline-container-org5ca5720" class="outline-3">
|
||||
<h3 id="org5ca5720"><span class="section-number-3">2.4</span> <span class="todo TODO">TODO</span> General functions for Radial functions on a grid</h3>
|
||||
</div>
|
||||
<div id="outline-container-orgbf8933a" class="outline-3">
|
||||
<h3 id="orgbf8933a"><span class="section-number-3">2.5</span> Computation of primitives</h3>
|
||||
<div id="outline-container-org5c6da90" class="outline-3">
|
||||
<h3 id="org5c6da90"><span class="section-number-3">2.5</span> Computation of primitives</h3>
|
||||
<div class="outline-text-3" id="text-2-5">
|
||||
</div>
|
||||
<div id="outline-container-orgabe16f9" class="outline-4">
|
||||
<h4 id="orgabe16f9"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div id="outline-container-org5b3f983" class="outline-4">
|
||||
<h4 id="org5b3f983"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-5-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_ao_basis_primitive_vgl</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;">primitive_vgl</span>);
|
||||
@ -1072,14 +1072,14 @@ Requirements
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7f8f604" class="outline-4">
|
||||
<h4 id="org7f8f604"><span class="section-number-4">2.5.2</span> Provide</h4>
|
||||
<div id="outline-container-orgcea5fd9" class="outline-4">
|
||||
<h4 id="orgcea5fd9"><span class="section-number-4">2.5.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1b49c3b" class="outline-4">
|
||||
<h4 id="org1b49c3b"><span class="section-number-4">2.5.3</span> Compute</h4>
|
||||
<div id="outline-container-org56bd04c" class="outline-4">
|
||||
<h4 id="org56bd04c"><span class="section-number-4">2.5.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-5-3">
|
||||
<table id="org3ae3737" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org569f34d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1223,12 +1223,12 @@ Requirements
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9d70cbf" class="outline-4">
|
||||
<h4 id="org9d70cbf"><span class="section-number-4">2.5.4</span> Test</h4>
|
||||
<div id="outline-container-org68da68a" class="outline-4">
|
||||
<h4 id="org68da68a"><span class="section-number-4">2.5.4</span> Test</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5cc894c" class="outline-4">
|
||||
<h4 id="org5cc894c"><span class="section-number-4">2.5.5</span> Ideas for improvement</h4>
|
||||
<div id="outline-container-orgb93ef0c" class="outline-4">
|
||||
<h4 id="orgb93ef0c"><span class="section-number-4">2.5.5</span> Ideas for improvement</h4>
|
||||
<div class="outline-text-4" id="text-2-5-5">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">// <span style="color: #b22222;">m : walkers</span>
|
||||
@ -1265,12 +1265,12 @@ k=0;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org39b822d" class="outline-3">
|
||||
<h3 id="org39b822d"><span class="section-number-3">2.6</span> Computation of shells</h3>
|
||||
<div id="outline-container-org164d6c9" class="outline-3">
|
||||
<h3 id="org164d6c9"><span class="section-number-3">2.6</span> Computation of shells</h3>
|
||||
<div class="outline-text-3" id="text-2-6">
|
||||
</div>
|
||||
<div id="outline-container-org2802305" class="outline-4">
|
||||
<h4 id="org2802305"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div id="outline-container-orge843f9f" class="outline-4">
|
||||
<h4 id="orge843f9f"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-6-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_ao_basis_shell_vgl</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;">shell_vgl</span>);
|
||||
@ -1279,14 +1279,14 @@ k=0;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2d3d7ff" class="outline-4">
|
||||
<h4 id="org2d3d7ff"><span class="section-number-4">2.6.2</span> Provide</h4>
|
||||
<div id="outline-container-org1c4be52" class="outline-4">
|
||||
<h4 id="org1c4be52"><span class="section-number-4">2.6.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org582da37" class="outline-4">
|
||||
<h4 id="org582da37"><span class="section-number-4">2.6.3</span> Compute</h4>
|
||||
<div id="outline-container-org16d3cbf" class="outline-4">
|
||||
<h4 id="org16d3cbf"><span class="section-number-4">2.6.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-6-3">
|
||||
<table id="orge49897b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org3aa02df" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1518,14 +1518,14 @@ k=0;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd40f77f" class="outline-4">
|
||||
<h4 id="orgd40f77f"><span class="section-number-4">2.6.4</span> Test</h4>
|
||||
<div id="outline-container-orgabe90e5" class="outline-4">
|
||||
<h4 id="orgabe90e5"><span class="section-number-4">2.6.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgac05ed3" class="outline-2">
|
||||
<h2 id="orgac05ed3"><span class="section-number-2">3</span> Polynomial part</h2>
|
||||
<div id="outline-container-orgbd307dd" class="outline-2">
|
||||
<h2 id="orgbd307dd"><span class="section-number-2">3</span> Polynomial part</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
<p>
|
||||
Going from the atomic basis set to AOs implies a systematic
|
||||
@ -1545,8 +1545,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-org64aa922" class="outline-3">
|
||||
<h3 id="org64aa922"><span class="section-number-3">3.1</span> General functions for Powers of \(x-X_i\)</h3>
|
||||
<div id="outline-container-orge3690ed" class="outline-3">
|
||||
<h3 id="orge3690ed"><span class="section-number-3">3.1</span> General functions for Powers of \(x-X_i\)</h3>
|
||||
<div class="outline-text-3" id="text-3-1">
|
||||
<p>
|
||||
The <code>qmckl_ao_power</code> function computes all the powers of the <code>n</code>
|
||||
@ -1558,7 +1558,7 @@ the \(n\) points:
|
||||
\[ P_{ik} = X_i^k \]
|
||||
</p>
|
||||
|
||||
<table id="org2aafcd2" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orge8389a7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1616,8 +1616,8 @@ the \(n\) points:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org40a02c8" class="outline-4">
|
||||
<h4 id="org40a02c8"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org4eaa736" class="outline-4">
|
||||
<h4 id="org4eaa736"><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>
|
||||
@ -1630,8 +1630,8 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd9e9042" class="outline-4">
|
||||
<h4 id="orgd9e9042"><span class="section-number-4">3.1.2</span> C Header</h4>
|
||||
<div id="outline-container-org38cd942" class="outline-4">
|
||||
<h4 id="org38cd942"><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_ao_power</span> (
|
||||
@ -1646,8 +1646,8 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org84f1d4c" class="outline-4">
|
||||
<h4 id="org84f1d4c"><span class="section-number-4">3.1.3</span> Source</h4>
|
||||
<div id="outline-container-org1551768" class="outline-4">
|
||||
<h4 id="org1551768"><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: #a020f0;">function</span><span style="color: #a0522d;"> </span><span style="color: #0000ff;">qmckl_ao_power_f</span><span style="color: #000000; background-color: #ffffff;">(context, n, X, LMAX, P, ldp) result(info)</span>
|
||||
@ -1698,15 +1698,15 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge09519e" class="outline-4">
|
||||
<h4 id="orge09519e"><span class="section-number-4">3.1.4</span> C interface</h4>
|
||||
<div id="outline-container-orgf66e477" class="outline-4">
|
||||
<h4 id="orgf66e477"><span class="section-number-4">3.1.4</span> C interface</h4>
|
||||
</div>
|
||||
<div id="outline-container-org7030711" class="outline-4">
|
||||
<h4 id="org7030711"><span class="section-number-4">3.1.5</span> Fortran interface</h4>
|
||||
<div id="outline-container-org47644f0" class="outline-4">
|
||||
<h4 id="org47644f0"><span class="section-number-4">3.1.5</span> Fortran interface</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1a9d9dc" class="outline-4">
|
||||
<h4 id="org1a9d9dc"><span class="section-number-4">3.1.6</span> Test</h4>
|
||||
<div id="outline-container-orga17f5e2" class="outline-4">
|
||||
<h4 id="orga17f5e2"><span class="section-number-4">3.1.6</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-3-1-6">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span>(<span style="color: #008b8b;">c_int32_t</span>) <span style="color: #a020f0;">function</span> <span style="color: #0000ff;">test_qmckl_ao_power</span>(context) <span style="color: #a020f0;">bind</span>(C)
|
||||
@ -1757,8 +1757,8 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga553c14" class="outline-3">
|
||||
<h3 id="orga553c14"><span class="section-number-3">3.2</span> General functions for Value, Gradient and Laplacian of a polynomial</h3>
|
||||
<div id="outline-container-orgb871c38" class="outline-3">
|
||||
<h3 id="orgb871c38"><span class="section-number-3">3.2</span> General functions for Value, Gradient and Laplacian of a polynomial</h3>
|
||||
<div class="outline-text-3" id="text-3-2">
|
||||
<p>
|
||||
A polynomial is centered on a nucleus \(\mathbf{R}_i\)
|
||||
@ -1803,7 +1803,7 @@ Laplacians at a given point in space, of all polynomials with an
|
||||
angular momentum up to <code>lmax</code>.
|
||||
</p>
|
||||
|
||||
<table id="org5efc300" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org352c89c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1882,8 +1882,8 @@ angular momentum up to <code>lmax</code>.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdcba311" class="outline-4">
|
||||
<h4 id="orgdcba311"><span class="section-number-4">3.2.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgb89c969" class="outline-4">
|
||||
<h4 id="orgb89c969"><span class="section-number-4">3.2.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-3-2-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -1908,8 +1908,8 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org68d716a" class="outline-4">
|
||||
<h4 id="org68d716a"><span class="section-number-4">3.2.2</span> C Header</h4>
|
||||
<div id="outline-container-org25bce9c" class="outline-4">
|
||||
<h4 id="org25bce9c"><span class="section-number-4">3.2.2</span> C Header</h4>
|
||||
<div class="outline-text-4" id="text-3-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_ao_polynomial_vgl</span> (
|
||||
@ -1927,8 +1927,8 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3f408e4" class="outline-4">
|
||||
<h4 id="org3f408e4"><span class="section-number-4">3.2.3</span> Source</h4>
|
||||
<div id="outline-container-org677088d" class="outline-4">
|
||||
<h4 id="org677088d"><span class="section-number-4">3.2.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-3-2-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer </span><span style="color: #a020f0;">function</span><span style="color: #a0522d;"> </span><span style="color: #0000ff;">qmckl_ao_polynomial_vgl_f</span><span style="color: #000000; background-color: #ffffff;">(context, X, R, lmax, n, L, ldl, VGL, ldv) result(info)</span>
|
||||
@ -2062,16 +2062,16 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgab2c013" class="outline-4">
|
||||
<h4 id="orgab2c013"><span class="section-number-4">3.2.4</span> C interface</h4>
|
||||
<div id="outline-container-org52259a8" class="outline-4">
|
||||
<h4 id="org52259a8"><span class="section-number-4">3.2.4</span> C interface</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8dcbb0e" class="outline-4">
|
||||
<h4 id="org8dcbb0e"><span class="section-number-4">3.2.5</span> Fortran interface</h4>
|
||||
<div id="outline-container-orgf81297c" class="outline-4">
|
||||
<h4 id="orgf81297c"><span class="section-number-4">3.2.5</span> Fortran interface</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge5f1520" class="outline-4">
|
||||
<h4 id="orge5f1520"><span class="section-number-4">3.2.6</span> Test</h4>
|
||||
<div id="outline-container-org6948bae" class="outline-4">
|
||||
<h4 id="org6948bae"><span class="section-number-4">3.2.6</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-3-2-6">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span>(<span style="color: #008b8b;">c_int32_t</span>) <span style="color: #a020f0;">function</span> <span style="color: #0000ff;">test_qmckl_ao_polynomial_vgl</span>(context) <span style="color: #a020f0;">bind</span>(C)
|
||||
@ -2176,12 +2176,12 @@ assert(0 == test_qmckl_ao_polynomial_vgl(context));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org52d0351" class="outline-2">
|
||||
<h2 id="org52d0351"><span class="section-number-2">4</span> Combining radial and polynomial parts</h2>
|
||||
<div id="outline-container-org58320f8" class="outline-2">
|
||||
<h2 id="org58320f8"><span class="section-number-2">4</span> Combining radial and polynomial parts</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-org50623ee" class="outline-4">
|
||||
<h4 id="org50623ee"><span class="section-number-4">4.0.1</span> Get</h4>
|
||||
<div id="outline-container-orgfeb22ae" class="outline-4">
|
||||
<h4 id="orgfeb22ae"><span class="section-number-4">4.0.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-4-0-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_ao_vgl</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;">ao_vgl</span>);
|
||||
@ -2190,14 +2190,14 @@ assert(0 == test_qmckl_ao_polynomial_vgl(context));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3912281" class="outline-4">
|
||||
<h4 id="org3912281"><span class="section-number-4">4.0.2</span> Provide</h4>
|
||||
<div id="outline-container-org2b9ec5a" class="outline-4">
|
||||
<h4 id="org2b9ec5a"><span class="section-number-4">4.0.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge23d7b5" class="outline-4">
|
||||
<h4 id="orge23d7b5"><span class="section-number-4">4.0.3</span> Compute</h4>
|
||||
<div id="outline-container-org7f99782" class="outline-4">
|
||||
<h4 id="org7f99782"><span class="section-number-4">4.0.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-4-0-3">
|
||||
<table id="orgb59b827" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org1234495" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2473,14 +2473,14 @@ assert(0 == test_qmckl_ao_polynomial_vgl(context));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga4c4754" class="outline-4">
|
||||
<h4 id="orga4c4754"><span class="section-number-4">4.0.4</span> Test</h4>
|
||||
<div id="outline-container-org739c3de" class="outline-4">
|
||||
<h4 id="org739c3de"><span class="section-number-4">4.0.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 10:12</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 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>
|
||||
<!-- 2021-09-14 Tue 10:11 -->
|
||||
<!-- 2021-09-14 Tue 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>
|
||||
@ -311,21 +311,21 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org13c84b0">1. Context handling</a>
|
||||
<li><a href="#org5ffe74d">1. Context handling</a>
|
||||
<ul>
|
||||
<li><a href="#org4d0605d">1.1. Data structure</a></li>
|
||||
<li><a href="#org60c68f4">1.2. Creation</a></li>
|
||||
<li><a href="#org709bd64">1.3. Locking</a></li>
|
||||
<li><a href="#orgbc0b833">1.4. <span class="todo TODO">TODO</span> Copy</a></li>
|
||||
<li><a href="#org4b8a1f9">1.5. Destroy</a></li>
|
||||
<li><a href="#org89255d2">1.1. Data structure</a></li>
|
||||
<li><a href="#orge45eb87">1.2. Creation</a></li>
|
||||
<li><a href="#org065e761">1.3. Locking</a></li>
|
||||
<li><a href="#orgc319b4e">1.4. <span class="todo TODO">TODO</span> Copy</a></li>
|
||||
<li><a href="#org80fcb35">1.5. Destroy</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org13c84b0" class="outline-2">
|
||||
<h2 id="org13c84b0"><span class="section-number-2">1</span> Context handling</h2>
|
||||
<div id="outline-container-org5ffe74d" class="outline-2">
|
||||
<h2 id="org5ffe74d"><span class="section-number-2">1</span> Context handling</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The context variable is a handle for the state of the library,
|
||||
@ -338,7 +338,7 @@ A value of <code>QMCKL_NULL_CONTEXT</code> for the context is equivalent to a
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c" id="orged44342"><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="org2d31921"><span style="color: #a020f0;">typedef</span> <span style="color: #228b22;">int64_t</span> <span style="color: #228b22;">qmckl_context</span> ;
|
||||
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">QMCKL_NULL_CONTEXT</span> (qmckl_context) 0
|
||||
</pre>
|
||||
</div>
|
||||
@ -356,8 +356,8 @@ and <code>ctx</code> is a <code>qmckl_context_struct*</code> pointer.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4d0605d" class="outline-3">
|
||||
<h3 id="org4d0605d"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org89255d2" class="outline-3">
|
||||
<h3 id="org89255d2"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<p>
|
||||
The context keeps a ``date'' that allows to check which data needs
|
||||
@ -367,7 +367,7 @@ coordinates are updated.
|
||||
|
||||
<p>
|
||||
When a new element is added to the context, the functions
|
||||
<a href="#org60c68f4">qmckl<sub>context</sub><sub>create</sub></a>, <a href="#org4b8a1f9">qmckl<sub>context</sub><sub>destroy</sub></a> and <a href="#orgbc0b833">qmckl<sub>context</sub><sub>copy</sub></a>
|
||||
<a href="#orge45eb87">qmckl<sub>context</sub><sub>create</sub></a>, <a href="#org80fcb35">qmckl<sub>context</sub><sub>destroy</sub></a> and <a href="#orgc319b4e">qmckl<sub>context</sub><sub>copy</sub></a>
|
||||
should be updated inorder to make deep copies.
|
||||
</p>
|
||||
|
||||
@ -416,8 +416,8 @@ if the context is valid, <code>QMCKL_NULL_CONTEXT</code> otherwise.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org60c68f4" class="outline-3">
|
||||
<h3 id="org60c68f4"><span class="section-number-3">1.2</span> Creation</h3>
|
||||
<div id="outline-container-orge45eb87" class="outline-3">
|
||||
<h3 id="orge45eb87"><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.
|
||||
@ -502,8 +502,8 @@ To create a new context, <code>qmckl_context_create()</code> should be used.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org709bd64" class="outline-3">
|
||||
<h3 id="org709bd64"><span class="section-number-3">1.3</span> Locking</h3>
|
||||
<div id="outline-container-org065e761" class="outline-3">
|
||||
<h3 id="org065e761"><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
|
||||
@ -548,8 +548,8 @@ number of times the thread has locked it is saved in the
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbc0b833" class="outline-3">
|
||||
<h3 id="orgbc0b833"><span class="section-number-3">1.4</span> <span class="todo TODO">TODO</span> Copy</h3>
|
||||
<div id="outline-container-orgc319b4e" class="outline-3">
|
||||
<h3 id="orgc319b4e"><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
|
||||
@ -597,8 +597,8 @@ number of times the thread has locked it is saved in the
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org4b8a1f9" class="outline-3">
|
||||
<h3 id="org4b8a1f9"><span class="section-number-3">1.5</span> Destroy</h3>
|
||||
<div id="outline-container-org80fcb35" class="outline-3">
|
||||
<h3 id="org80fcb35"><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.
|
||||
@ -652,7 +652,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: 2021-09-14 Tue 10:11</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 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>
|
||||
<!-- 2021-09-14 Tue 10:12 -->
|
||||
<!-- 2021-09-14 Tue 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>
|
||||
@ -333,50 +333,50 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org672cc50">1. Squared distance</a>
|
||||
<li><a href="#org49084c4">1. Squared distance</a>
|
||||
<ul>
|
||||
<li><a href="#orgebc5afd">1.1. <code>qmckl_distance_sq</code></a>
|
||||
<li><a href="#org3b1366b">1.1. <code>qmckl_distance_sq</code></a>
|
||||
<ul>
|
||||
<li><a href="#org07bb2f0">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org8328478">1.1.2. C header</a></li>
|
||||
<li><a href="#org186b00b">1.1.3. Source</a></li>
|
||||
<li><a href="#org9560997">1.1.4. Performance</a></li>
|
||||
<li><a href="#org76a6c90">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org1793f4f">1.1.2. C header</a></li>
|
||||
<li><a href="#orge6bff6a">1.1.3. Source</a></li>
|
||||
<li><a href="#org20ca01c">1.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgedef894">2. Distance</a>
|
||||
<li><a href="#org5c52b72">2. Distance</a>
|
||||
<ul>
|
||||
<li><a href="#org33eef53">2.1. <code>qmckl_distance</code></a>
|
||||
<li><a href="#orgbdf82b6">2.1. <code>qmckl_distance</code></a>
|
||||
<ul>
|
||||
<li><a href="#orga2b9a67">2.1.1. Requirements</a></li>
|
||||
<li><a href="#orgab954c6">2.1.2. C header</a></li>
|
||||
<li><a href="#org3c7fa64">2.1.3. Source</a></li>
|
||||
<li><a href="#org73c3dab">2.1.4. Performance</a></li>
|
||||
<li><a href="#org794eba0">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org10065b1">2.1.2. C header</a></li>
|
||||
<li><a href="#orgd7f028f">2.1.3. Source</a></li>
|
||||
<li><a href="#org4ea1ebd">2.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org3b0d4d7">3. Rescaled Distance</a>
|
||||
<li><a href="#orgfaf6c03">3. Rescaled Distance</a>
|
||||
<ul>
|
||||
<li><a href="#org3c06782">3.1. <code>qmckl_distance_rescaled</code></a>
|
||||
<li><a href="#orgaf564df">3.1. <code>qmckl_distance_rescaled</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgce57cf2">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orge15f2f6">3.1.2. C header</a></li>
|
||||
<li><a href="#org13e9c27">3.1.3. Source</a></li>
|
||||
<li><a href="#orgb242f11">3.1.4. Performance</a></li>
|
||||
<li><a href="#org2559ffe">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orga87bfe2">3.1.2. C header</a></li>
|
||||
<li><a href="#orgdc30f4b">3.1.3. Source</a></li>
|
||||
<li><a href="#org1f791e2">3.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org5d67c60">4. Rescaled Distance Derivatives</a>
|
||||
<li><a href="#orgf90d659">4. Rescaled Distance Derivatives</a>
|
||||
<ul>
|
||||
<li><a href="#orgf494a09">4.1. <code>qmckl_distance_rescaled_deriv_e</code></a>
|
||||
<li><a href="#org7ebdb39">4.1. <code>qmckl_distance_rescaled_deriv_e</code></a>
|
||||
<ul>
|
||||
<li><a href="#orge352aa7">4.1.1. Requirements</a></li>
|
||||
<li><a href="#org6c9e1ce">4.1.2. C header</a></li>
|
||||
<li><a href="#orgdd320df">4.1.3. Source</a></li>
|
||||
<li><a href="#orgcc81f96">4.1.4. Performance</a></li>
|
||||
<li><a href="#org14c33ae">4.1.1. Requirements</a></li>
|
||||
<li><a href="#org0601c32">4.1.2. C header</a></li>
|
||||
<li><a href="#org69f86d2">4.1.3. Source</a></li>
|
||||
<li><a href="#org2e50f7c">4.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -385,12 +385,12 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org672cc50" class="outline-2">
|
||||
<h2 id="org672cc50"><span class="section-number-2">1</span> Squared distance</h2>
|
||||
<div id="outline-container-org49084c4" class="outline-2">
|
||||
<h2 id="org49084c4"><span class="section-number-2">1</span> Squared distance</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-orgebc5afd" class="outline-3">
|
||||
<h3 id="orgebc5afd"><span class="section-number-3">1.1</span> <code>qmckl_distance_sq</code></h3>
|
||||
<div id="outline-container-org3b1366b" class="outline-3">
|
||||
<h3 id="org3b1366b"><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
|
||||
@ -403,7 +403,7 @@ between all pairs of points in two sets, one point within each set:
|
||||
\]
|
||||
</p>
|
||||
|
||||
<table id="orgd02038a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgb7285b3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -496,8 +496,8 @@ between all pairs of points in two sets, one point within each set:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org07bb2f0" class="outline-4">
|
||||
<h4 id="org07bb2f0"><span class="section-number-4">1.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org76a6c90" class="outline-4">
|
||||
<h4 id="org76a6c90"><span class="section-number-4">1.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-1-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -515,8 +515,8 @@ between all pairs of points in two sets, one point within each set:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8328478" class="outline-4">
|
||||
<h4 id="org8328478"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div id="outline-container-org1793f4f" class="outline-4">
|
||||
<h4 id="org1793f4f"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-1-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_sq</span> (
|
||||
@ -536,8 +536,8 @@ between all pairs of points in two sets, one point within each set:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org186b00b" class="outline-4">
|
||||
<h4 id="org186b00b"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div id="outline-container-orge6bff6a" class="outline-4">
|
||||
<h4 id="orge6bff6a"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-1-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_sq_f(context, transa, transb, m, n, </span><span style="color: #a020f0;">&</span>
|
||||
@ -672,8 +672,8 @@ between all pairs of points in two sets, one point within each set:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9560997" class="outline-4">
|
||||
<h4 id="org9560997"><span class="section-number-4">1.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org20ca01c" class="outline-4">
|
||||
<h4 id="org20ca01c"><span class="section-number-4">1.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-1-1-4">
|
||||
<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-orgedef894" class="outline-2">
|
||||
<h2 id="orgedef894"><span class="section-number-2">2</span> Distance</h2>
|
||||
<div id="outline-container-org5c52b72" class="outline-2">
|
||||
<h2 id="org5c52b72"><span class="section-number-2">2</span> Distance</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org33eef53" class="outline-3">
|
||||
<h3 id="org33eef53"><span class="section-number-3">2.1</span> <code>qmckl_distance</code></h3>
|
||||
<div id="outline-container-orgbdf82b6" class="outline-3">
|
||||
<h3 id="orgbdf82b6"><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="orgb4aaa63" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgd5986a6" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -799,8 +799,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga2b9a67" class="outline-4">
|
||||
<h4 id="orga2b9a67"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org794eba0" class="outline-4">
|
||||
<h4 id="org794eba0"><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>
|
||||
@ -818,8 +818,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgab954c6" class="outline-4">
|
||||
<h4 id="orgab954c6"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div id="outline-container-org10065b1" class="outline-4">
|
||||
<h4 id="org10065b1"><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> (
|
||||
@ -839,8 +839,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3c7fa64" class="outline-4">
|
||||
<h4 id="org3c7fa64"><span class="section-number-4">2.1.3</span> Source</h4>
|
||||
<div id="outline-container-orgd7f028f" class="outline-4">
|
||||
<h4 id="orgd7f028f"><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>
|
||||
@ -1007,8 +1007,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org73c3dab" class="outline-4">
|
||||
<h4 id="org73c3dab"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org4ea1ebd" class="outline-4">
|
||||
<h4 id="org4ea1ebd"><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.
|
||||
@ -1018,12 +1018,12 @@ This function is more efficient when <code>A</code> and <code>B</code> are trans
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3b0d4d7" class="outline-2">
|
||||
<h2 id="org3b0d4d7"><span class="section-number-2">3</span> Rescaled Distance</h2>
|
||||
<div id="outline-container-orgfaf6c03" class="outline-2">
|
||||
<h2 id="orgfaf6c03"><span class="section-number-2">3</span> Rescaled Distance</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org3c06782" class="outline-3">
|
||||
<h3 id="org3c06782"><span class="section-number-3">3.1</span> <code>qmckl_distance_rescaled</code></h3>
|
||||
<div id="outline-container-orgaf564df" class="outline-3">
|
||||
<h3 id="orgaf564df"><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
|
||||
@ -1041,7 +1041,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="orgaf463c9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgb5f5d64" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1141,8 +1141,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgce57cf2" class="outline-4">
|
||||
<h4 id="orgce57cf2"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org2559ffe" class="outline-4">
|
||||
<h4 id="org2559ffe"><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>
|
||||
@ -1160,8 +1160,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge15f2f6" class="outline-4">
|
||||
<h4 id="orge15f2f6"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div id="outline-container-orga87bfe2" class="outline-4">
|
||||
<h4 id="orga87bfe2"><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> (
|
||||
@ -1182,8 +1182,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org13e9c27" class="outline-4">
|
||||
<h4 id="org13e9c27"><span class="section-number-4">3.1.3</span> Source</h4>
|
||||
<div id="outline-container-orgdc30f4b" class="outline-4">
|
||||
<h4 id="orgdc30f4b"><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>
|
||||
@ -1353,8 +1353,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb242f11" class="outline-4">
|
||||
<h4 id="orgb242f11"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org1f791e2" class="outline-4">
|
||||
<h4 id="org1f791e2"><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.
|
||||
@ -1363,12 +1363,12 @@ This function is more efficient when <code>A</code> and <code>B</code> are trans
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org5d67c60" class="outline-2">
|
||||
<h2 id="org5d67c60"><span class="section-number-2">4</span> Rescaled Distance Derivatives</h2>
|
||||
<div id="outline-container-orgf90d659" class="outline-2">
|
||||
<h2 id="orgf90d659"><span class="section-number-2">4</span> Rescaled Distance Derivatives</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-orgf494a09" class="outline-3">
|
||||
<h3 id="orgf494a09"><span class="section-number-3">4.1</span> <code>qmckl_distance_rescaled_deriv_e</code></h3>
|
||||
<div id="outline-container-org7ebdb39" class="outline-3">
|
||||
<h3 id="org7ebdb39"><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
|
||||
@ -1435,7 +1435,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="org2aaf989" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org3c598b7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1535,8 +1535,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge352aa7" class="outline-4">
|
||||
<h4 id="orge352aa7"><span class="section-number-4">4.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org14c33ae" class="outline-4">
|
||||
<h4 id="org14c33ae"><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>
|
||||
@ -1554,8 +1554,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6c9e1ce" class="outline-4">
|
||||
<h4 id="org6c9e1ce"><span class="section-number-4">4.1.2</span> C header</h4>
|
||||
<div id="outline-container-org0601c32" class="outline-4">
|
||||
<h4 id="org0601c32"><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_distance_rescaled_deriv_e</span> (
|
||||
@ -1576,8 +1576,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdd320df" class="outline-4">
|
||||
<h4 id="orgdd320df"><span class="section-number-4">4.1.3</span> Source</h4>
|
||||
<div id="outline-container-org69f86d2" class="outline-4">
|
||||
<h4 id="org69f86d2"><span class="section-number-4">4.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-4-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_deriv_e_f(context, transa, transb, m, n, </span><span style="color: #a020f0;">&</span>
|
||||
@ -1768,8 +1768,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcc81f96" class="outline-4">
|
||||
<h4 id="orgcc81f96"><span class="section-number-4">4.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org2e50f7c" class="outline-4">
|
||||
<h4 id="org2e50f7c"><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 more efficient when <code>A</code> and <code>B</code> are transposed.
|
||||
@ -1781,7 +1781,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: 2021-09-14 Tue 10:12</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 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>
|
||||
<!-- 2021-09-14 Tue 10:12 -->
|
||||
<!-- 2021-09-14 Tue 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>
|
||||
@ -333,63 +333,63 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org10f857e">1. Context</a>
|
||||
<li><a href="#org0d0366c">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#orgcfb2721">1.1. Data structure</a></li>
|
||||
<li><a href="#orgba43c50">1.2. Access functions</a>
|
||||
<li><a href="#org1c5259b">1.1. Data structure</a></li>
|
||||
<li><a href="#orgd768ab0">1.2. Access functions</a>
|
||||
<ul>
|
||||
<li><a href="#org9bae607">1.2.1. Number of electrons</a></li>
|
||||
<li><a href="#orgfbd08da">1.2.2. Number of walkers</a></li>
|
||||
<li><a href="#orgd1cc8fd">1.2.3. Scaling factors Kappa</a></li>
|
||||
<li><a href="#org042a876">1.2.4. Electron coordinates</a></li>
|
||||
<li><a href="#orga8d2b5c">1.2.1. Number of electrons</a></li>
|
||||
<li><a href="#org8097b7b">1.2.2. Number of walkers</a></li>
|
||||
<li><a href="#orgb6c146c">1.2.3. Scaling factors Kappa</a></li>
|
||||
<li><a href="#org974b520">1.2.4. Electron coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org5d33456">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgf801d09">1.4. Test</a></li>
|
||||
<li><a href="#org3579e07">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org70238fe">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org29d70ad">2. Computation</a>
|
||||
<li><a href="#orgaf034b5">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#org0438583">2.1. Electron-electron distances</a>
|
||||
<li><a href="#orgdfacf95">2.1. Electron-electron distances</a>
|
||||
<ul>
|
||||
<li><a href="#org2bd8617">2.1.1. Get</a></li>
|
||||
<li><a href="#orgf72e792">2.1.2. Compute</a></li>
|
||||
<li><a href="#org4f55ff1">2.1.3. Test</a></li>
|
||||
<li><a href="#orgbd4859c">2.1.1. Get</a></li>
|
||||
<li><a href="#org5f59b10">2.1.2. Compute</a></li>
|
||||
<li><a href="#org77be20d">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgbe33739">2.2. Electron-electron rescaled distances</a>
|
||||
<li><a href="#orgc0b1eb5">2.2. Electron-electron rescaled distances</a>
|
||||
<ul>
|
||||
<li><a href="#orgc1c8286">2.2.1. Get</a></li>
|
||||
<li><a href="#org0380428">2.2.2. Compute</a></li>
|
||||
<li><a href="#org76d470f">2.2.3. Test</a></li>
|
||||
<li><a href="#org45e38db">2.2.1. Get</a></li>
|
||||
<li><a href="#orgb866ae0">2.2.2. Compute</a></li>
|
||||
<li><a href="#org80ace88">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org4fdf1ce">2.3. Electron-electron rescaled distance gradients and laplacian with respect to electron coords</a>
|
||||
<li><a href="#org82fb805">2.3. Electron-electron rescaled distance gradients and laplacian with respect to electron coords</a>
|
||||
<ul>
|
||||
<li><a href="#orgbbfbb36">2.3.1. Get</a></li>
|
||||
<li><a href="#orgb9d8b67">2.3.2. Compute</a></li>
|
||||
<li><a href="#org496c207">2.3.3. Test</a></li>
|
||||
<li><a href="#org92b9a3c">2.3.1. Get</a></li>
|
||||
<li><a href="#org569d91e">2.3.2. Compute</a></li>
|
||||
<li><a href="#org7c09631">2.3.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgef73bb7">2.4. Electron-nucleus distances</a>
|
||||
<li><a href="#org0b46c9d">2.4. Electron-nucleus distances</a>
|
||||
<ul>
|
||||
<li><a href="#orgbb6e000">2.4.1. Get</a></li>
|
||||
<li><a href="#org08f47d8">2.4.2. Compute</a></li>
|
||||
<li><a href="#org462f590">2.4.3. Test</a></li>
|
||||
<li><a href="#org69f6f65">2.4.1. Get</a></li>
|
||||
<li><a href="#org83bf627">2.4.2. Compute</a></li>
|
||||
<li><a href="#org4ad8269">2.4.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orge0a1f57">2.5. Electron-nucleus rescaled distances</a>
|
||||
<li><a href="#orge3db38f">2.5. Electron-nucleus rescaled distances</a>
|
||||
<ul>
|
||||
<li><a href="#org86e67bd">2.5.1. Get</a></li>
|
||||
<li><a href="#orge33df30">2.5.2. Compute</a></li>
|
||||
<li><a href="#org538d8f9">2.5.3. Test</a></li>
|
||||
<li><a href="#org6c31932">2.5.1. Get</a></li>
|
||||
<li><a href="#org60d2b87">2.5.2. Compute</a></li>
|
||||
<li><a href="#orgde69879">2.5.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org5acab1f">2.6. Electron-nucleus rescaled distance gradients and laplacian with respect to electron coords</a>
|
||||
<li><a href="#orgdc98efa">2.6. Electron-nucleus rescaled distance gradients and laplacian with respect to electron coords</a>
|
||||
<ul>
|
||||
<li><a href="#orgca31cee">2.6.1. Get</a></li>
|
||||
<li><a href="#orgc84d9e0">2.6.2. Compute</a></li>
|
||||
<li><a href="#org63217bb">2.6.3. Test</a></li>
|
||||
<li><a href="#org1779bc1">2.6.1. Get</a></li>
|
||||
<li><a href="#org3c30e11">2.6.2. Compute</a></li>
|
||||
<li><a href="#org5d06711">2.6.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -398,8 +398,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org10f857e" class="outline-2">
|
||||
<h2 id="org10f857e"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org0d0366c" class="outline-2">
|
||||
<h2 id="org0d0366c"><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:
|
||||
@ -557,8 +557,8 @@ The following data stored in the context:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcfb2721" class="outline-3">
|
||||
<h3 id="orgcfb2721"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org1c5259b" class="outline-3">
|
||||
<h3 id="org1c5259b"><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_electron_struct</span> {
|
||||
@ -633,8 +633,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgba43c50" class="outline-3">
|
||||
<h3 id="orgba43c50"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-orgd768ab0" class="outline-3">
|
||||
<h3 id="orgd768ab0"><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
|
||||
@ -646,12 +646,12 @@ contains the requested data. Otherwise, this variable is untouched.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9bae607" class="outline-4">
|
||||
<h4 id="org9bae607"><span class="section-number-4">1.2.1</span> Number of electrons</h4>
|
||||
<div id="outline-container-orga8d2b5c" class="outline-4">
|
||||
<h4 id="orga8d2b5c"><span class="section-number-4">1.2.1</span> Number of electrons</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfbd08da" class="outline-4">
|
||||
<h4 id="orgfbd08da"><span class="section-number-4">1.2.2</span> Number of walkers</h4>
|
||||
<div id="outline-container-org8097b7b" class="outline-4">
|
||||
<h4 id="org8097b7b"><span class="section-number-4">1.2.2</span> Number of walkers</h4>
|
||||
<div class="outline-text-4" id="text-1-2-2">
|
||||
<p>
|
||||
A walker is a set of electron coordinates that are arguments of
|
||||
@ -660,12 +660,12 @@ the wave function. <code>walk_num</code> is the number of walkers.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd1cc8fd" class="outline-4">
|
||||
<h4 id="orgd1cc8fd"><span class="section-number-4">1.2.3</span> Scaling factors Kappa</h4>
|
||||
<div id="outline-container-orgb6c146c" class="outline-4">
|
||||
<h4 id="orgb6c146c"><span class="section-number-4">1.2.3</span> Scaling factors Kappa</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org042a876" class="outline-4">
|
||||
<h4 id="org042a876"><span class="section-number-4">1.2.4</span> Electron coordinates</h4>
|
||||
<div id="outline-container-org974b520" class="outline-4">
|
||||
<h4 id="org974b520"><span class="section-number-4">1.2.4</span> Electron coordinates</h4>
|
||||
<div class="outline-text-4" id="text-1-2-4">
|
||||
<p>
|
||||
Returns the current electron coordinates. The pointer is assumed
|
||||
@ -709,8 +709,8 @@ The order of the indices is:
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org5d33456" class="outline-3">
|
||||
<h3 id="org5d33456"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org3579e07" class="outline-3">
|
||||
<h3 id="org3579e07"><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 electrons in the context, the
|
||||
@ -797,8 +797,8 @@ in the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf801d09" class="outline-3">
|
||||
<h3 id="orgf801d09"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-org70238fe" class="outline-3">
|
||||
<h3 id="org70238fe"><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>*/
|
||||
@ -904,8 +904,8 @@ rc = qmckl_get_electron_coord (context, <span style="color: #8b2252;">'N'</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org29d70ad" class="outline-2">
|
||||
<h2 id="org29d70ad"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-orgaf034b5" class="outline-2">
|
||||
<h2 id="orgaf034b5"><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
|
||||
@ -918,12 +918,12 @@ current date is stored.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0438583" class="outline-3">
|
||||
<h3 id="org0438583"><span class="section-number-3">2.1</span> Electron-electron distances</h3>
|
||||
<div id="outline-container-orgdfacf95" class="outline-3">
|
||||
<h3 id="orgdfacf95"><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-org2bd8617" class="outline-4">
|
||||
<h4 id="org2bd8617"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-orgbd4859c" class="outline-4">
|
||||
<h4 id="orgbd4859c"><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>);
|
||||
@ -932,10 +932,10 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf72e792" class="outline-4">
|
||||
<h4 id="orgf72e792"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-org5f59b10" class="outline-4">
|
||||
<h4 id="org5f59b10"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="orgd666c77" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgce368fd" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1031,8 +1031,8 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4f55ff1" class="outline-4">
|
||||
<h4 id="org4f55ff1"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-org77be20d" class="outline-4">
|
||||
<h4 id="org77be20d"><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>));
|
||||
@ -1066,8 +1066,8 @@ rc = qmckl_get_electron_ee_distance(context, ee_distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbe33739" class="outline-3">
|
||||
<h3 id="orgbe33739"><span class="section-number-3">2.2</span> Electron-electron rescaled distances</h3>
|
||||
<div id="outline-container-orgc0b1eb5" class="outline-3">
|
||||
<h3 id="orgc0b1eb5"><span class="section-number-3">2.2</span> Electron-electron rescaled distances</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
<code>ee_distance_rescaled</code> stores the matrix of the rescaled distances between all
|
||||
@ -1085,8 +1085,8 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc1c8286" class="outline-4">
|
||||
<h4 id="orgc1c8286"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-org45e38db" class="outline-4">
|
||||
<h4 id="org45e38db"><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_distance_rescaled</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_rescaled</span>);
|
||||
@ -1095,10 +1095,10 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0380428" class="outline-4">
|
||||
<h4 id="org0380428"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-orgb866ae0" class="outline-4">
|
||||
<h4 id="orgb866ae0"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="org2f64aa5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org7bd45e5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1203,8 +1203,8 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org76d470f" class="outline-4">
|
||||
<h4 id="org76d470f"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-org80ace88" class="outline-4">
|
||||
<h4 id="org80ace88"><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: #0000ff;">assert</span>(<span style="color: #228b22;">qmckl_electron_provided</span>(<span style="color: #a0522d;">context</span>));
|
||||
@ -1238,8 +1238,8 @@ rc = qmckl_get_electron_ee_distance_rescaled(context, ee_distance_rescaled);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4fdf1ce" class="outline-3">
|
||||
<h3 id="org4fdf1ce"><span class="section-number-3">2.3</span> Electron-electron rescaled distance gradients and laplacian with respect to electron coords</h3>
|
||||
<div id="outline-container-org82fb805" class="outline-3">
|
||||
<h3 id="org82fb805"><span class="section-number-3">2.3</span> Electron-electron rescaled distance gradients and laplacian with respect to electron coords</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
The rescaled distances which is given as \(R = (1 - \exp{-\kappa r})/\kappa\)
|
||||
@ -1251,8 +1251,8 @@ gives the Laplacian \(\partial x^2 + \partial y^2 + \partial z^2\).
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbbfbb36" class="outline-4">
|
||||
<h4 id="orgbbfbb36"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-org92b9a3c" class="outline-4">
|
||||
<h4 id="org92b9a3c"><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_ee_distance_rescaled_deriv_e</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_rescaled_deriv_e</span>);
|
||||
@ -1261,10 +1261,10 @@ gives the Laplacian \(\partial x^2 + \partial y^2 + \partial z^2\).
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb9d8b67" class="outline-4">
|
||||
<h4 id="orgb9d8b67"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div id="outline-container-org569d91e" class="outline-4">
|
||||
<h4 id="org569d91e"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-3-2">
|
||||
<table id="orgc50373d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgd2a975b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1369,8 +1369,8 @@ gives the Laplacian \(\partial x^2 + \partial y^2 + \partial z^2\).
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org496c207" class="outline-4">
|
||||
<h4 id="org496c207"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div id="outline-container-org7c09631" class="outline-4">
|
||||
<h4 id="org7c09631"><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"><span style="color: #0000ff;">assert</span>(<span style="color: #228b22;">qmckl_electron_provided</span>(<span style="color: #a0522d;">context</span>));
|
||||
@ -1405,12 +1405,12 @@ rc = qmckl_get_electron_ee_distance_rescaled_deriv_e(context, ee_distance_rescal
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgef73bb7" class="outline-3">
|
||||
<h3 id="orgef73bb7"><span class="section-number-3">2.4</span> Electron-nucleus distances</h3>
|
||||
<div id="outline-container-org0b46c9d" class="outline-3">
|
||||
<h3 id="org0b46c9d"><span class="section-number-3">2.4</span> Electron-nucleus distances</h3>
|
||||
<div class="outline-text-3" id="text-2-4">
|
||||
</div>
|
||||
<div id="outline-container-orgbb6e000" class="outline-4">
|
||||
<h4 id="orgbb6e000"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div id="outline-container-org69f6f65" class="outline-4">
|
||||
<h4 id="org69f6f65"><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_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>);
|
||||
@ -1419,10 +1419,10 @@ rc = qmckl_get_electron_ee_distance_rescaled_deriv_e(context, ee_distance_rescal
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org08f47d8" class="outline-4">
|
||||
<h4 id="org08f47d8"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div id="outline-container-org83bf627" class="outline-4">
|
||||
<h4 id="org83bf627"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-4-2">
|
||||
<table id="org2618849" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org547220a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1539,8 +1539,8 @@ rc = qmckl_get_electron_ee_distance_rescaled_deriv_e(context, ee_distance_rescal
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org462f590" class="outline-4">
|
||||
<h4 id="org462f590"><span class="section-number-4">2.4.3</span> Test</h4>
|
||||
<div id="outline-container-org4ad8269" class="outline-4">
|
||||
<h4 id="org4ad8269"><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">
|
||||
@ -1588,8 +1588,8 @@ rc = qmckl_get_electron_en_distance(context, &(en_distance[0][0][0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge0a1f57" class="outline-3">
|
||||
<h3 id="orge0a1f57"><span class="section-number-3">2.5</span> Electron-nucleus rescaled distances</h3>
|
||||
<div id="outline-container-orge3db38f" class="outline-3">
|
||||
<h3 id="orge3db38f"><span class="section-number-3">2.5</span> Electron-nucleus rescaled distances</h3>
|
||||
<div class="outline-text-3" id="text-2-5">
|
||||
<p>
|
||||
<code>en_distance_rescaled</code> stores the matrix of the rescaled distances between
|
||||
@ -1607,8 +1607,8 @@ where \(C_{ij}\) is the matrix of electron-nucleus distances.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org86e67bd" class="outline-4">
|
||||
<h4 id="org86e67bd"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div id="outline-container-org6c31932" class="outline-4">
|
||||
<h4 id="org6c31932"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-5-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_rescaled</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_rescaled</span>);
|
||||
@ -1617,10 +1617,10 @@ where \(C_{ij}\) is the matrix of electron-nucleus distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge33df30" class="outline-4">
|
||||
<h4 id="orge33df30"><span class="section-number-4">2.5.2</span> Compute</h4>
|
||||
<div id="outline-container-org60d2b87" class="outline-4">
|
||||
<h4 id="org60d2b87"><span class="section-number-4">2.5.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-5-2">
|
||||
<table id="org1613924" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgb335cd3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1752,8 +1752,8 @@ where \(C_{ij}\) is the matrix of electron-nucleus distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org538d8f9" class="outline-4">
|
||||
<h4 id="org538d8f9"><span class="section-number-4">2.5.3</span> Test</h4>
|
||||
<div id="outline-container-orgde69879" class="outline-4">
|
||||
<h4 id="orgde69879"><span class="section-number-4">2.5.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-5-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">
|
||||
@ -1801,8 +1801,8 @@ rc = qmckl_get_electron_en_distance_rescaled(context, &(en_distance_rescaled
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5acab1f" class="outline-3">
|
||||
<h3 id="org5acab1f"><span class="section-number-3">2.6</span> Electron-nucleus rescaled distance gradients and laplacian with respect to electron coords</h3>
|
||||
<div id="outline-container-orgdc98efa" class="outline-3">
|
||||
<h3 id="orgdc98efa"><span class="section-number-3">2.6</span> Electron-nucleus rescaled distance gradients and laplacian with respect to electron coords</h3>
|
||||
<div class="outline-text-3" id="text-2-6">
|
||||
<p>
|
||||
The rescaled distances which is given as \(R = (1 - \exp{-\kappa r})/\kappa\)
|
||||
@ -1814,8 +1814,8 @@ gives the Laplacian \(\partial x^2 + \partial y^2 + \partial z^2\).
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgca31cee" class="outline-4">
|
||||
<h4 id="orgca31cee"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div id="outline-container-org1779bc1" class="outline-4">
|
||||
<h4 id="org1779bc1"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-6-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_rescaled_deriv_e</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_rescaled_deriv_e</span>);
|
||||
@ -1824,10 +1824,10 @@ gives the Laplacian \(\partial x^2 + \partial y^2 + \partial z^2\).
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc84d9e0" class="outline-4">
|
||||
<h4 id="orgc84d9e0"><span class="section-number-4">2.6.2</span> Compute</h4>
|
||||
<div id="outline-container-org3c30e11" class="outline-4">
|
||||
<h4 id="org3c30e11"><span class="section-number-4">2.6.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-6-2">
|
||||
<table id="orgd14c6fc" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgf994b43" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1960,8 +1960,8 @@ gives the Laplacian \(\partial x^2 + \partial y^2 + \partial z^2\).
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org63217bb" class="outline-4">
|
||||
<h4 id="org63217bb"><span class="section-number-4">2.6.3</span> Test</h4>
|
||||
<div id="outline-container-org5d06711" class="outline-4">
|
||||
<h4 id="org5d06711"><span class="section-number-4">2.6.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-6-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">
|
||||
@ -2016,7 +2016,7 @@ rc = qmckl_get_electron_en_distance_rescaled_deriv_e(context, &(en_distance_
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 10:12</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 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>
|
||||
<!-- 2021-09-14 Tue 10:11 -->
|
||||
<!-- 2021-09-14 Tue 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>
|
||||
@ -311,17 +311,17 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org2ae83cb">1. Decoding errors</a></li>
|
||||
<li><a href="#org20bb8e2">2. Data structure in context</a></li>
|
||||
<li><a href="#org257d7e1">3. Updating errors in the context</a></li>
|
||||
<li><a href="#org534e27d">4. Get the error</a></li>
|
||||
<li><a href="#orgfd5203b">5. Failing</a></li>
|
||||
<li><a href="#org8f4d859">1. Decoding errors</a></li>
|
||||
<li><a href="#org9d6d1f9">2. Data structure in context</a></li>
|
||||
<li><a href="#org23a2411">3. Updating errors in the context</a></li>
|
||||
<li><a href="#org1bb18f8">4. Get the error</a></li>
|
||||
<li><a href="#orgcd0f65e">5. Failing</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2ae83cb" class="outline-2">
|
||||
<h2 id="org2ae83cb"><span class="section-number-2">1</span> Decoding errors</h2>
|
||||
<div id="outline-container-org8f4d859" class="outline-2">
|
||||
<h2 id="org8f4d859"><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
|
||||
@ -451,8 +451,8 @@ The text strings are extracted from the previous table.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org20bb8e2" class="outline-2">
|
||||
<h2 id="org20bb8e2"><span class="section-number-2">2</span> Data structure in context</h2>
|
||||
<div id="outline-container-org9d6d1f9" class="outline-2">
|
||||
<h2 id="org9d6d1f9"><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 with a maximum fixed size to avoid
|
||||
@ -475,8 +475,8 @@ dynamic memory allocation.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org257d7e1" class="outline-2">
|
||||
<h2 id="org257d7e1"><span class="section-number-2">3</span> Updating errors in the context</h2>
|
||||
<div id="outline-container-org23a2411" class="outline-2">
|
||||
<h2 id="org23a2411"><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>.
|
||||
@ -522,8 +522,8 @@ explaining the error. The exit code can't be <code>QMCKL_SUCCESS</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org534e27d" class="outline-2">
|
||||
<h2 id="org534e27d"><span class="section-number-2">4</span> Get the error</h2>
|
||||
<div id="outline-container-org1bb18f8" class="outline-2">
|
||||
<h2 id="org1bb18f8"><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
|
||||
@ -564,8 +564,8 @@ function name and message is mandatory.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfd5203b" class="outline-2">
|
||||
<h2 id="orgfd5203b"><span class="section-number-2">5</span> Failing</h2>
|
||||
<div id="outline-container-orgcd0f65e" class="outline-2">
|
||||
<h2 id="orgcd0f65e"><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
|
||||
@ -628,7 +628,7 @@ For example, this function can be used as
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 10:11</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 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>
|
||||
<!-- 2021-09-14 Tue 10:12 -->
|
||||
<!-- 2021-09-14 Tue 10:20 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Jastrow Factor</title>
|
||||
@ -333,100 +333,100 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgc41a0f9">1. Context</a>
|
||||
<li><a href="#orga49b3b8">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org1ebc928">1.1. Data structure</a></li>
|
||||
<li><a href="#orgb1cdbc6">1.2. Access functions</a></li>
|
||||
<li><a href="#org4f86cbd">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org1ad6f37">1.4. Test</a></li>
|
||||
<li><a href="#orgf1faa63">1.1. Data structure</a></li>
|
||||
<li><a href="#org805c518">1.2. Access functions</a></li>
|
||||
<li><a href="#org99eda01">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgee32824">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgacffb97">2. Computation</a>
|
||||
<li><a href="#org44b72ab">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#orge9ccdcf">2.1. Asymptotic component for \(f_{ee}\)</a>
|
||||
<li><a href="#org96494d5">2.1. Asymptotic component for \(f_{ee}\)</a>
|
||||
<ul>
|
||||
<li><a href="#orgceee0b3">2.1.1. Get</a></li>
|
||||
<li><a href="#org3400396">2.1.2. Compute</a></li>
|
||||
<li><a href="#org6cde9c0">2.1.3. Test</a></li>
|
||||
<li><a href="#orge3b68f5">2.1.1. Get</a></li>
|
||||
<li><a href="#org1b35006">2.1.2. Compute</a></li>
|
||||
<li><a href="#org37d8b11">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org91cc48b">2.2. Electron-electron component \(f_{ee}\)</a>
|
||||
<li><a href="#org126add8">2.2. Electron-electron component \(f_{ee}\)</a>
|
||||
<ul>
|
||||
<li><a href="#org9064e4a">2.2.1. Get</a></li>
|
||||
<li><a href="#org33eba1e">2.2.2. Compute</a></li>
|
||||
<li><a href="#org3cacdae">2.2.3. Test</a></li>
|
||||
<li><a href="#org4b58743">2.2.1. Get</a></li>
|
||||
<li><a href="#org0c7b328">2.2.2. Compute</a></li>
|
||||
<li><a href="#org39eaced">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org8679e3e">2.3. Electron-electron component derivative \(f'_{ee}\)</a>
|
||||
<li><a href="#org94e6562">2.3. Electron-electron component derivative \(f'_{ee}\)</a>
|
||||
<ul>
|
||||
<li><a href="#org0bd9f36">2.3.1. Get</a></li>
|
||||
<li><a href="#org46cc2af">2.3.2. Compute</a></li>
|
||||
<li><a href="#orgef26814">2.3.3. Test</a></li>
|
||||
<li><a href="#org5d9191f">2.3.1. Get</a></li>
|
||||
<li><a href="#orgb6c2308">2.3.2. Compute</a></li>
|
||||
<li><a href="#orgc931a80">2.3.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org2b8f248">2.4. Electron-nucleus component \(f_{en}\)</a>
|
||||
<li><a href="#org9a887a2">2.4. Electron-nucleus component \(f_{en}\)</a>
|
||||
<ul>
|
||||
<li><a href="#org485efac">2.4.1. Get</a></li>
|
||||
<li><a href="#org4e13d96">2.4.2. Compute</a></li>
|
||||
<li><a href="#orgc497eed">2.4.3. Test</a></li>
|
||||
<li><a href="#org9a58ed6">2.4.1. Get</a></li>
|
||||
<li><a href="#org7020f56">2.4.2. Compute</a></li>
|
||||
<li><a href="#org7dd7068">2.4.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgc546a44">2.5. Electron-nucleus component derivative \(f'_{en}\)</a>
|
||||
<li><a href="#org329c64a">2.5. Electron-nucleus component derivative \(f'_{en}\)</a>
|
||||
<ul>
|
||||
<li><a href="#orgbc61d51">2.5.1. Get</a></li>
|
||||
<li><a href="#orgae848ba">2.5.2. Compute</a></li>
|
||||
<li><a href="#org120c715">2.5.3. Test</a></li>
|
||||
<li><a href="#orgb5275e4">2.5.1. Get</a></li>
|
||||
<li><a href="#org9f2fed4">2.5.2. Compute</a></li>
|
||||
<li><a href="#org100eb91">2.5.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orga8b50ef">2.6. Electron-electron rescaled distances for each order</a>
|
||||
<li><a href="#org8f500fa">2.6. Electron-electron rescaled distances for each order</a>
|
||||
<ul>
|
||||
<li><a href="#orgaeffe59">2.6.1. Get</a></li>
|
||||
<li><a href="#org636b6ed">2.6.2. Compute</a></li>
|
||||
<li><a href="#orgb5f370b">2.6.3. Test</a></li>
|
||||
<li><a href="#org31407d8">2.6.1. Get</a></li>
|
||||
<li><a href="#org7fe315b">2.6.2. Compute</a></li>
|
||||
<li><a href="#orgf1e8fe5">2.6.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org6418a57">2.7. Electron-electron rescaled distances for each order and derivatives</a>
|
||||
<li><a href="#org4b9224e">2.7. Electron-electron rescaled distances for each order and derivatives</a>
|
||||
<ul>
|
||||
<li><a href="#org673eb15">2.7.1. Get</a></li>
|
||||
<li><a href="#org6b0ffef">2.7.2. Compute</a></li>
|
||||
<li><a href="#org7f39c95">2.7.3. Test</a></li>
|
||||
<li><a href="#org75fb743">2.7.1. Get</a></li>
|
||||
<li><a href="#org1f5ba18">2.7.2. Compute</a></li>
|
||||
<li><a href="#org74335c6">2.7.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orga4ec0ba">2.8. Electron-nucleus rescaled distances for each order</a>
|
||||
<li><a href="#org0d0c733">2.8. Electron-nucleus rescaled distances for each order</a>
|
||||
<ul>
|
||||
<li><a href="#org0be2ba5">2.8.1. Get</a></li>
|
||||
<li><a href="#org8f6aa0c">2.8.2. Compute</a></li>
|
||||
<li><a href="#org14d1330">2.8.3. Test</a></li>
|
||||
<li><a href="#orgf9d592e">2.8.1. Get</a></li>
|
||||
<li><a href="#org94d6c6c">2.8.2. Compute</a></li>
|
||||
<li><a href="#org2cfd6b5">2.8.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org0abde17">2.9. Electron-nucleus rescaled distances for each order and derivatives</a>
|
||||
<li><a href="#org228702c">2.9. Electron-nucleus rescaled distances for each order and derivatives</a>
|
||||
<ul>
|
||||
<li><a href="#org2eb389b">2.9.1. Get</a></li>
|
||||
<li><a href="#orgf5b9a77">2.9.2. Compute</a></li>
|
||||
<li><a href="#org26d09fe">2.9.3. Test</a></li>
|
||||
<li><a href="#orgae208bc">2.9.1. Get</a></li>
|
||||
<li><a href="#orgca6f58b">2.9.2. Compute</a></li>
|
||||
<li><a href="#orgdcbac83">2.9.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org4f5e400">2.10. Prepare for electron-electron-nucleus Jastrow \(f_{een}\)</a>
|
||||
<li><a href="#org76672ac">2.10. Prepare for electron-electron-nucleus Jastrow \(f_{een}\)</a>
|
||||
<ul>
|
||||
<li><a href="#org18267cf">2.10.1. Get</a></li>
|
||||
<li><a href="#org186909f">2.10.2. Compute dim<sub>cord</sub><sub>vect</sub></a></li>
|
||||
<li><a href="#org28a9e17">2.10.3. Compute cord<sub>vect</sub><sub>full</sub></a></li>
|
||||
<li><a href="#orga3c09b7">2.10.4. Compute lkpm<sub>combined</sub><sub>index</sub></a></li>
|
||||
<li><a href="#org0e0e185">2.10.5. Test</a></li>
|
||||
<li><a href="#orgff77c12">2.10.1. Get</a></li>
|
||||
<li><a href="#orgfad59f1">2.10.2. Compute dim<sub>cord</sub><sub>vect</sub></a></li>
|
||||
<li><a href="#orgdf7d6e8">2.10.3. Compute cord<sub>vect</sub><sub>full</sub></a></li>
|
||||
<li><a href="#org3a94380">2.10.4. Compute lkpm<sub>combined</sub><sub>index</sub></a></li>
|
||||
<li><a href="#org3279eb7">2.10.5. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org9d2bb53">2.11. Electron-electron-nucleus Jastrow \(f_{een}\)</a>
|
||||
<li><a href="#orgf3ac151">2.11. Electron-electron-nucleus Jastrow \(f_{een}\)</a>
|
||||
<ul>
|
||||
<li><a href="#orgc79b4a7">2.11.1. Get</a></li>
|
||||
<li><a href="#orge33913e">2.11.2. Compute</a></li>
|
||||
<li><a href="#org5f49744">2.11.3. Test</a></li>
|
||||
<li><a href="#org2e23eab">2.11.1. Get</a></li>
|
||||
<li><a href="#org109f690">2.11.2. Compute</a></li>
|
||||
<li><a href="#org2139377">2.11.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org34ebaa3">2.12. Electron-electron-nucleus Jastrow \(f_{een}\) derivative</a>
|
||||
<li><a href="#org8ad9820">2.12. Electron-electron-nucleus Jastrow \(f_{een}\) derivative</a>
|
||||
<ul>
|
||||
<li><a href="#org15394bb">2.12.1. Get</a></li>
|
||||
<li><a href="#org4196841">2.12.2. Compute</a></li>
|
||||
<li><a href="#orgb168993">2.12.3. Test</a></li>
|
||||
<li><a href="#orgb717903">2.12.1. Get</a></li>
|
||||
<li><a href="#org2521078">2.12.2. Compute</a></li>
|
||||
<li><a href="#org2823831">2.12.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -435,14 +435,14 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc41a0f9" class="outline-2">
|
||||
<h2 id="orgc41a0f9"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-orga49b3b8" class="outline-2">
|
||||
<h2 id="orga49b3b8"><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:
|
||||
</p>
|
||||
|
||||
<table id="orgbab311f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org66734a3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -734,7 +734,7 @@ For H2O we have the following data:
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-python" id="org7c315ca"><span style="color: #a020f0;">import</span> numpy <span style="color: #a020f0;">as</span> np
|
||||
<pre class="src src-python" id="orgf28f0ed"><span style="color: #a020f0;">import</span> numpy <span style="color: #a020f0;">as</span> np
|
||||
|
||||
<span style="color: #a0522d;">elec_num</span> = 10
|
||||
<span style="color: #a0522d;">nucl_num</span> = 2
|
||||
@ -884,8 +884,8 @@ For H2O we have the following data:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1ebc928" class="outline-3">
|
||||
<h3 id="org1ebc928"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-orgf1faa63" class="outline-3">
|
||||
<h3 id="orgf1faa63"><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_jastrow_struct</span>{
|
||||
@ -972,8 +972,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb1cdbc6" class="outline-3">
|
||||
<h3 id="orgb1cdbc6"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org805c518" class="outline-3">
|
||||
<h3 id="org805c518"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
Along with these core functions, calculation of the jastrow factor
|
||||
@ -993,8 +993,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4f86cbd" class="outline-3">
|
||||
<h3 id="org4f86cbd"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org99eda01" class="outline-3">
|
||||
<h3 id="org99eda01"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
To prepare for the Jastrow and its derivative, all the following functions need to be
|
||||
@ -1020,8 +1020,8 @@ are precontracted using BLAS LEVEL 3 operations for an optimal FLOP count.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1ad6f37" class="outline-3">
|
||||
<h3 id="org1ad6f37"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-orgee32824" class="outline-3">
|
||||
<h3 id="orgee32824"><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>*/
|
||||
@ -1196,8 +1196,8 @@ rc = qmckl_get_nucleus_charge(context, nucl_charge2);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgacffb97" class="outline-2">
|
||||
<h2 id="orgacffb97"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org44b72ab" class="outline-2">
|
||||
<h2 id="org44b72ab"><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
|
||||
@ -1210,8 +1210,8 @@ current date is stored.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge9ccdcf" class="outline-3">
|
||||
<h3 id="orge9ccdcf"><span class="section-number-3">2.1</span> Asymptotic component for \(f_{ee}\)</h3>
|
||||
<div id="outline-container-org96494d5" class="outline-3">
|
||||
<h3 id="org96494d5"><span class="section-number-3">2.1</span> Asymptotic component for \(f_{ee}\)</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
Calculate the asymptotic component <code>asymp_jasb</code> to be substracted from the final
|
||||
@ -1226,8 +1226,8 @@ via the <code>bord_vector</code> and the electron-electron rescale factor <code>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgceee0b3" class="outline-4">
|
||||
<h4 id="orgceee0b3"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-orge3b68f5" class="outline-4">
|
||||
<h4 id="orge3b68f5"><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_jastrow_asymp_jasb</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;">asymp_jasb</span>);
|
||||
@ -1236,10 +1236,10 @@ via the <code>bord_vector</code> and the electron-electron rescale factor <code>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3400396" class="outline-4">
|
||||
<h4 id="org3400396"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-org1b35006" class="outline-4">
|
||||
<h4 id="org1b35006"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="org813cf72" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org84bb08f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1344,8 +1344,8 @@ via the <code>bord_vector</code> and the electron-electron rescale factor <code>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org6cde9c0" class="outline-4">
|
||||
<h4 id="org6cde9c0"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-org37d8b11" class="outline-4">
|
||||
<h4 id="org37d8b11"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<pre class="example">
|
||||
asym_one : 0.43340325572525706
|
||||
@ -1402,8 +1402,8 @@ rc = qmckl_get_jastrow_asymp_jasb(context, asymp_jasb);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org91cc48b" class="outline-3">
|
||||
<h3 id="org91cc48b"><span class="section-number-3">2.2</span> Electron-electron component \(f_{ee}\)</h3>
|
||||
<div id="outline-container-org126add8" class="outline-3">
|
||||
<h3 id="org126add8"><span class="section-number-3">2.2</span> Electron-electron component \(f_{ee}\)</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
Calculate the electron-electron jastrow component <code>factor_ee</code> using the <code>asymp_jasb</code>
|
||||
@ -1418,8 +1418,8 @@ f_{ee} = \sum_{i,j<i} \left\{ \frac{ \eta B_0 C_{ij}}{1 - B_1 C_{ij}} - J_{asym
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org9064e4a" class="outline-4">
|
||||
<h4 id="org9064e4a"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-org4b58743" class="outline-4">
|
||||
<h4 id="org4b58743"><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_jastrow_factor_ee</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;">factor_ee</span>);
|
||||
@ -1428,10 +1428,10 @@ f_{ee} = \sum_{i,j<i} \left\{ \frac{ \eta B_0 C_{ij}}{1 - B_1 C_{ij}} - J_{asym
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org33eba1e" class="outline-4">
|
||||
<h4 id="org33eba1e"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-org0c7b328" class="outline-4">
|
||||
<h4 id="org0c7b328"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="org7a01a96" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgf4328d0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1598,8 +1598,8 @@ f_{ee} = \sum_{i,j<i} \left\{ \frac{ \eta B_0 C_{ij}}{1 - B_1 C_{ij}} - J_{asym
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org3cacdae" class="outline-4">
|
||||
<h4 id="org3cacdae"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-org39eaced" class="outline-4">
|
||||
<h4 id="org39eaced"><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;">Check if Jastrow is properly initialized </span>*/
|
||||
@ -1617,8 +1617,8 @@ rc = qmckl_get_jastrow_factor_ee(context, factor_ee);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8679e3e" class="outline-3">
|
||||
<h3 id="org8679e3e"><span class="section-number-3">2.3</span> Electron-electron component derivative \(f'_{ee}\)</h3>
|
||||
<div id="outline-container-org94e6562" class="outline-3">
|
||||
<h3 id="org94e6562"><span class="section-number-3">2.3</span> Electron-electron component derivative \(f'_{ee}\)</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
Calculate the derivative of the <code>factor_ee</code> using the <code>ee_distance_rescaled</code> and
|
||||
@ -1633,8 +1633,8 @@ TODO: Add equation
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org0bd9f36" class="outline-4">
|
||||
<h4 id="org0bd9f36"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-org5d9191f" class="outline-4">
|
||||
<h4 id="org5d9191f"><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_jastrow_factor_ee_deriv_e</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;">factor_ee_deriv_e</span>);
|
||||
@ -1643,10 +1643,10 @@ TODO: Add equation
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org46cc2af" class="outline-4">
|
||||
<h4 id="org46cc2af"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div id="outline-container-orgb6c2308" class="outline-4">
|
||||
<h4 id="orgb6c2308"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-3-2">
|
||||
<table id="org2545df5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org6ca290a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1853,8 +1853,8 @@ TODO: Add equation
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgef26814" class="outline-4">
|
||||
<h4 id="orgef26814"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div id="outline-container-orgc931a80" class="outline-4">
|
||||
<h4 id="orgc931a80"><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">/* <span style="color: #b22222;">Check if Jastrow is properly initialized </span>*/
|
||||
@ -1876,8 +1876,8 @@ rc = qmckl_get_jastrow_factor_ee_deriv_e(context, &(factor_ee_deriv_e[0][0][
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2b8f248" class="outline-3">
|
||||
<h3 id="org2b8f248"><span class="section-number-3">2.4</span> Electron-nucleus component \(f_{en}\)</h3>
|
||||
<div id="outline-container-org9a887a2" class="outline-3">
|
||||
<h3 id="org9a887a2"><span class="section-number-3">2.4</span> Electron-nucleus component \(f_{en}\)</h3>
|
||||
<div class="outline-text-3" id="text-2-4">
|
||||
<p>
|
||||
Calculate the electron-electron jastrow component <code>factor_en</code> using the <code>aord_vector</code>
|
||||
@ -1892,8 +1892,8 @@ f_{en} = \sum_{i,j<i} \left\{ \frac{ A_0 C_{ij}}{1 - A_1 C_{ij}} + \sum^{nord}_{
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org485efac" class="outline-4">
|
||||
<h4 id="org485efac"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div id="outline-container-org9a58ed6" class="outline-4">
|
||||
<h4 id="org9a58ed6"><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_jastrow_factor_en</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;">factor_en</span>);
|
||||
@ -1902,10 +1902,10 @@ f_{en} = \sum_{i,j<i} \left\{ \frac{ A_0 C_{ij}}{1 - A_1 C_{ij}} + \sum^{nord}_{
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4e13d96" class="outline-4">
|
||||
<h4 id="org4e13d96"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div id="outline-container-org7020f56" class="outline-4">
|
||||
<h4 id="org7020f56"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-4-2">
|
||||
<table id="orgd42988b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org33a4a02" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2079,8 +2079,8 @@ f_{en} = \sum_{i,j<i} \left\{ \frac{ A_0 C_{ij}}{1 - A_1 C_{ij}} + \sum^{nord}_{
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgc497eed" class="outline-4">
|
||||
<h4 id="orgc497eed"><span class="section-number-4">2.4.3</span> Test</h4>
|
||||
<div id="outline-container-org7dd7068" class="outline-4">
|
||||
<h4 id="org7dd7068"><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: #b22222;">Check if Jastrow is properly initialized </span>*/
|
||||
@ -2098,8 +2098,8 @@ rc = qmckl_get_jastrow_factor_en(context, factor_en);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc546a44" class="outline-3">
|
||||
<h3 id="orgc546a44"><span class="section-number-3">2.5</span> Electron-nucleus component derivative \(f'_{en}\)</h3>
|
||||
<div id="outline-container-org329c64a" class="outline-3">
|
||||
<h3 id="org329c64a"><span class="section-number-3">2.5</span> Electron-nucleus component derivative \(f'_{en}\)</h3>
|
||||
<div class="outline-text-3" id="text-2-5">
|
||||
<p>
|
||||
Calculate the electron-electron jastrow component <code>factor_en_deriv_e</code> derivative
|
||||
@ -2112,8 +2112,8 @@ TODO: write equations.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbc61d51" class="outline-4">
|
||||
<h4 id="orgbc61d51"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div id="outline-container-orgb5275e4" class="outline-4">
|
||||
<h4 id="orgb5275e4"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-5-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_jastrow_factor_en_deriv_e</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;">factor_en_deriv_e</span>);
|
||||
@ -2122,10 +2122,10 @@ TODO: write equations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgae848ba" class="outline-4">
|
||||
<h4 id="orgae848ba"><span class="section-number-4">2.5.2</span> Compute</h4>
|
||||
<div id="outline-container-org9f2fed4" class="outline-4">
|
||||
<h4 id="org9f2fed4"><span class="section-number-4">2.5.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-5-2">
|
||||
<table id="org0d7cdc4" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org4c07be9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2338,8 +2338,8 @@ TODO: write equations.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org120c715" class="outline-4">
|
||||
<h4 id="org120c715"><span class="section-number-4">2.5.3</span> Test</h4>
|
||||
<div id="outline-container-org100eb91" class="outline-4">
|
||||
<h4 id="org100eb91"><span class="section-number-4">2.5.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-5-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Check if Jastrow is properly initialized </span>*/
|
||||
@ -2361,8 +2361,8 @@ rc = qmckl_get_jastrow_factor_en_deriv_e(context, &(factor_en_deriv_e[0][0][
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga8b50ef" class="outline-3">
|
||||
<h3 id="orga8b50ef"><span class="section-number-3">2.6</span> Electron-electron rescaled distances for each order</h3>
|
||||
<div id="outline-container-org8f500fa" class="outline-3">
|
||||
<h3 id="org8f500fa"><span class="section-number-3">2.6</span> Electron-electron rescaled distances for each order</h3>
|
||||
<div class="outline-text-3" id="text-2-6">
|
||||
<p>
|
||||
<code>een_rescaled_e</code> stores the table of the rescaled distances between all
|
||||
@ -2380,8 +2380,8 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgaeffe59" class="outline-4">
|
||||
<h4 id="orgaeffe59"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div id="outline-container-org31407d8" class="outline-4">
|
||||
<h4 id="org31407d8"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-6-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_jastrow_een_rescaled_e</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_rescaled</span>);
|
||||
@ -2390,10 +2390,10 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org636b6ed" class="outline-4">
|
||||
<h4 id="org636b6ed"><span class="section-number-4">2.6.2</span> Compute</h4>
|
||||
<div id="outline-container-org7fe315b" class="outline-4">
|
||||
<h4 id="org7fe315b"><span class="section-number-4">2.6.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-6-2">
|
||||
<table id="org191b155" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org8b9da06" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2552,8 +2552,8 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb5f370b" class="outline-4">
|
||||
<h4 id="orgb5f370b"><span class="section-number-4">2.6.3</span> Test</h4>
|
||||
<div id="outline-container-orgf1e8fe5" class="outline-4">
|
||||
<h4 id="orgf1e8fe5"><span class="section-number-4">2.6.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-6-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>));
|
||||
@ -2576,8 +2576,8 @@ rc = qmckl_get_jastrow_een_rescaled_e(context, &(een_rescaled_e[0][0][0][0])
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6418a57" class="outline-3">
|
||||
<h3 id="org6418a57"><span class="section-number-3">2.7</span> Electron-electron rescaled distances for each order and derivatives</h3>
|
||||
<div id="outline-container-org4b9224e" class="outline-3">
|
||||
<h3 id="org4b9224e"><span class="section-number-3">2.7</span> Electron-electron rescaled distances for each order and derivatives</h3>
|
||||
<div class="outline-text-3" id="text-2-7">
|
||||
<p>
|
||||
<code>een_rescaled_e</code> stores the table of the rescaled distances between all
|
||||
@ -2591,8 +2591,8 @@ TODO: write formulae
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org673eb15" class="outline-4">
|
||||
<h4 id="org673eb15"><span class="section-number-4">2.7.1</span> Get</h4>
|
||||
<div id="outline-container-org75fb743" class="outline-4">
|
||||
<h4 id="org75fb743"><span class="section-number-4">2.7.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-7-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_jastrow_een_rescaled_e_deriv_e</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_rescaled</span>);
|
||||
@ -2601,10 +2601,10 @@ TODO: write formulae
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6b0ffef" class="outline-4">
|
||||
<h4 id="org6b0ffef"><span class="section-number-4">2.7.2</span> Compute</h4>
|
||||
<div id="outline-container-org1f5ba18" class="outline-4">
|
||||
<h4 id="org1f5ba18"><span class="section-number-4">2.7.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-7-2">
|
||||
<table id="org6c1eebe" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgcb8bb35" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2783,8 +2783,8 @@ TODO: write formulae
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org7f39c95" class="outline-4">
|
||||
<h4 id="org7f39c95"><span class="section-number-4">2.7.3</span> Test</h4>
|
||||
<div id="outline-container-org74335c6" class="outline-4">
|
||||
<h4 id="org74335c6"><span class="section-number-4">2.7.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-7-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">//<span style="color: #b22222;">assert(qmckl_electron_provided(context));</span>
|
||||
@ -2795,8 +2795,8 @@ TODO: write formulae
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga4ec0ba" class="outline-3">
|
||||
<h3 id="orga4ec0ba"><span class="section-number-3">2.8</span> Electron-nucleus rescaled distances for each order</h3>
|
||||
<div id="outline-container-org0d0c733" class="outline-3">
|
||||
<h3 id="org0d0c733"><span class="section-number-3">2.8</span> Electron-nucleus rescaled distances for each order</h3>
|
||||
<div class="outline-text-3" id="text-2-8">
|
||||
<p>
|
||||
<code>een_rescaled_n</code> stores the table of the rescaled distances between
|
||||
@ -2814,8 +2814,8 @@ where \(C_{ia}\) is the matrix of electron-nucleus distances.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0be2ba5" class="outline-4">
|
||||
<h4 id="org0be2ba5"><span class="section-number-4">2.8.1</span> Get</h4>
|
||||
<div id="outline-container-orgf9d592e" class="outline-4">
|
||||
<h4 id="orgf9d592e"><span class="section-number-4">2.8.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-8-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_jastrow_een_rescaled_n</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_rescaled</span>);
|
||||
@ -2824,10 +2824,10 @@ where \(C_{ia}\) is the matrix of electron-nucleus distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8f6aa0c" class="outline-4">
|
||||
<h4 id="org8f6aa0c"><span class="section-number-4">2.8.2</span> Compute</h4>
|
||||
<div id="outline-container-org94d6c6c" class="outline-4">
|
||||
<h4 id="org94d6c6c"><span class="section-number-4">2.8.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-8-2">
|
||||
<table id="orgb489678" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org72161c9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2983,8 +2983,8 @@ where \(C_{ia}\) is the matrix of electron-nucleus distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org14d1330" class="outline-4">
|
||||
<h4 id="org14d1330"><span class="section-number-4">2.8.3</span> Test</h4>
|
||||
<div id="outline-container-org2cfd6b5" class="outline-4">
|
||||
<h4 id="org2cfd6b5"><span class="section-number-4">2.8.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-8-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>));
|
||||
@ -3006,8 +3006,8 @@ rc = qmckl_get_jastrow_een_rescaled_n(context, &(een_rescaled_n[0][0][0][0])
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0abde17" class="outline-3">
|
||||
<h3 id="org0abde17"><span class="section-number-3">2.9</span> Electron-nucleus rescaled distances for each order and derivatives</h3>
|
||||
<div id="outline-container-org228702c" class="outline-3">
|
||||
<h3 id="org228702c"><span class="section-number-3">2.9</span> Electron-nucleus rescaled distances for each order and derivatives</h3>
|
||||
<div class="outline-text-3" id="text-2-9">
|
||||
<p>
|
||||
<code>een_rescaled_n_deriv_e</code> stores the table of the rescaled distances between
|
||||
@ -3016,8 +3016,8 @@ electrons and nucleii raised to the power \(p\) defined by <code>cord_num</code>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org2eb389b" class="outline-4">
|
||||
<h4 id="org2eb389b"><span class="section-number-4">2.9.1</span> Get</h4>
|
||||
<div id="outline-container-orgae208bc" class="outline-4">
|
||||
<h4 id="orgae208bc"><span class="section-number-4">2.9.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-9-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_jastrow_een_rescaled_n_deriv_e</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_rescaled</span>);
|
||||
@ -3026,10 +3026,10 @@ electrons and nucleii raised to the power \(p\) defined by <code>cord_num</code>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf5b9a77" class="outline-4">
|
||||
<h4 id="orgf5b9a77"><span class="section-number-4">2.9.2</span> Compute</h4>
|
||||
<div id="outline-container-orgca6f58b" class="outline-4">
|
||||
<h4 id="orgca6f58b"><span class="section-number-4">2.9.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-9-2">
|
||||
<table id="orgabedd49" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org091dd6a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3231,8 +3231,8 @@ electrons and nucleii raised to the power \(p\) defined by <code>cord_num</code>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org26d09fe" class="outline-4">
|
||||
<h4 id="org26d09fe"><span class="section-number-4">2.9.3</span> Test</h4>
|
||||
<div id="outline-container-orgdcbac83" class="outline-4">
|
||||
<h4 id="orgdcbac83"><span class="section-number-4">2.9.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-9-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">//<span style="color: #b22222;">assert(qmckl_electron_provided(context));</span>
|
||||
@ -3243,8 +3243,8 @@ electrons and nucleii raised to the power \(p\) defined by <code>cord_num</code>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4f5e400" class="outline-3">
|
||||
<h3 id="org4f5e400"><span class="section-number-3">2.10</span> Prepare for electron-electron-nucleus Jastrow \(f_{een}\)</h3>
|
||||
<div id="outline-container-org76672ac" class="outline-3">
|
||||
<h3 id="org76672ac"><span class="section-number-3">2.10</span> Prepare for electron-electron-nucleus Jastrow \(f_{een}\)</h3>
|
||||
<div class="outline-text-3" id="text-2-10">
|
||||
<p>
|
||||
Prepare <code>cord_vect_full</code> and <code>lkpm_combined_index</code> tables required for the
|
||||
@ -3253,8 +3253,8 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org18267cf" class="outline-4">
|
||||
<h4 id="org18267cf"><span class="section-number-4">2.10.1</span> Get</h4>
|
||||
<div id="outline-container-orgff77c12" class="outline-4">
|
||||
<h4 id="orgff77c12"><span class="section-number-4">2.10.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-10-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_jastrow_dim_cord_vect</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">int64_t</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">dim_cord_vect</span>);
|
||||
@ -3265,10 +3265,10 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org186909f" class="outline-4">
|
||||
<h4 id="org186909f"><span class="section-number-4">2.10.2</span> Compute dim<sub>cord</sub><sub>vect</sub></h4>
|
||||
<div id="outline-container-orgfad59f1" class="outline-4">
|
||||
<h4 id="orgfad59f1"><span class="section-number-4">2.10.2</span> Compute dim<sub>cord</sub><sub>vect</sub></h4>
|
||||
<div class="outline-text-4" id="text-2-10-2">
|
||||
<table id="orgda25fcb" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org5c437a0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3358,10 +3358,10 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org28a9e17" class="outline-4">
|
||||
<h4 id="org28a9e17"><span class="section-number-4">2.10.3</span> Compute cord<sub>vect</sub><sub>full</sub></h4>
|
||||
<div id="outline-container-orgdf7d6e8" class="outline-4">
|
||||
<h4 id="orgdf7d6e8"><span class="section-number-4">2.10.3</span> Compute cord<sub>vect</sub><sub>full</sub></h4>
|
||||
<div class="outline-text-4" id="text-2-10-3">
|
||||
<table id="org0e71338" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org0645523" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3501,10 +3501,10 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orga3c09b7" class="outline-4">
|
||||
<h4 id="orga3c09b7"><span class="section-number-4">2.10.4</span> Compute lkpm<sub>combined</sub><sub>index</sub></h4>
|
||||
<div id="outline-container-org3a94380" class="outline-4">
|
||||
<h4 id="org3a94380"><span class="section-number-4">2.10.4</span> Compute lkpm<sub>combined</sub><sub>index</sub></h4>
|
||||
<div class="outline-text-4" id="text-2-10-4">
|
||||
<table id="org8f4597e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org8d6b274" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3614,8 +3614,8 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org0e0e185" class="outline-4">
|
||||
<h4 id="org0e0e185"><span class="section-number-4">2.10.5</span> Test</h4>
|
||||
<div id="outline-container-org3279eb7" class="outline-4">
|
||||
<h4 id="org3279eb7"><span class="section-number-4">2.10.5</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-10-5">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">//<span style="color: #b22222;">assert(qmckl_electron_provided(context));</span>
|
||||
@ -3627,8 +3627,8 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9d2bb53" class="outline-3">
|
||||
<h3 id="org9d2bb53"><span class="section-number-3">2.11</span> Electron-electron-nucleus Jastrow \(f_{een}\)</h3>
|
||||
<div id="outline-container-orgf3ac151" class="outline-3">
|
||||
<h3 id="orgf3ac151"><span class="section-number-3">2.11</span> Electron-electron-nucleus Jastrow \(f_{een}\)</h3>
|
||||
<div class="outline-text-3" id="text-2-11">
|
||||
<p>
|
||||
Calculate the electron-electron-nuclear three-body jastrow component <code>factor_een</code>
|
||||
@ -3640,8 +3640,8 @@ TODO: write equations.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc79b4a7" class="outline-4">
|
||||
<h4 id="orgc79b4a7"><span class="section-number-4">2.11.1</span> Get</h4>
|
||||
<div id="outline-container-org2e23eab" class="outline-4">
|
||||
<h4 id="org2e23eab"><span class="section-number-4">2.11.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-11-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_jastrow_factor_een</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;">factor_een</span>);
|
||||
@ -3650,10 +3650,10 @@ TODO: write equations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge33913e" class="outline-4">
|
||||
<h4 id="orge33913e"><span class="section-number-4">2.11.2</span> Compute</h4>
|
||||
<div id="outline-container-org109f690" class="outline-4">
|
||||
<h4 id="org109f690"><span class="section-number-4">2.11.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-11-2">
|
||||
<table id="orgbd9b779" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orga663ccc" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3838,8 +3838,8 @@ TODO: write equations.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org5f49744" class="outline-4">
|
||||
<h4 id="org5f49744"><span class="section-number-4">2.11.3</span> Test</h4>
|
||||
<div id="outline-container-org2139377" class="outline-4">
|
||||
<h4 id="org2139377"><span class="section-number-4">2.11.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-11-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Check if Jastrow is properly initialized </span>*/
|
||||
@ -3852,8 +3852,8 @@ TODO: write equations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org34ebaa3" class="outline-3">
|
||||
<h3 id="org34ebaa3"><span class="section-number-3">2.12</span> Electron-electron-nucleus Jastrow \(f_{een}\) derivative</h3>
|
||||
<div id="outline-container-org8ad9820" class="outline-3">
|
||||
<h3 id="org8ad9820"><span class="section-number-3">2.12</span> Electron-electron-nucleus Jastrow \(f_{een}\) derivative</h3>
|
||||
<div class="outline-text-3" id="text-2-12">
|
||||
<p>
|
||||
Calculate the electron-electron-nuclear three-body jastrow component <code>factor_een_deriv_e</code>
|
||||
@ -3865,8 +3865,8 @@ TODO: write equations.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org15394bb" class="outline-4">
|
||||
<h4 id="org15394bb"><span class="section-number-4">2.12.1</span> Get</h4>
|
||||
<div id="outline-container-orgb717903" class="outline-4">
|
||||
<h4 id="orgb717903"><span class="section-number-4">2.12.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-12-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_jastrow_factor_een_deriv_e</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;">factor_een_deriv_e</span>);
|
||||
@ -3875,10 +3875,10 @@ TODO: write equations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4196841" class="outline-4">
|
||||
<h4 id="org4196841"><span class="section-number-4">2.12.2</span> Compute</h4>
|
||||
<div id="outline-container-org2521078" class="outline-4">
|
||||
<h4 id="org2521078"><span class="section-number-4">2.12.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-12-2">
|
||||
<table id="org81779ba" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org046fc9b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -4103,8 +4103,8 @@ TODO: write equations.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgb168993" class="outline-4">
|
||||
<h4 id="orgb168993"><span class="section-number-4">2.12.3</span> Test</h4>
|
||||
<div id="outline-container-org2823831" class="outline-4">
|
||||
<h4 id="org2823831"><span class="section-number-4">2.12.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-12-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">///<span style="color: #b22222;">* Check if Jastrow is properly initialized */</span>
|
||||
@ -4118,7 +4118,7 @@ TODO: write equations.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 10:12</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 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>
|
||||
<!-- 2021-09-14 Tue 10:11 -->
|
||||
<!-- 2021-09-14 Tue 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>
|
||||
@ -311,15 +311,15 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org7795029">1. Memory data structure for the context</a></li>
|
||||
<li><a href="#orgcf47cc9">2. Passing info to allocation routines</a></li>
|
||||
<li><a href="#orgfd4f662">3. Allocation/deallocation functions</a></li>
|
||||
<li><a href="#org7befdb2">1. Memory data structure for the context</a></li>
|
||||
<li><a href="#org100ca44">2. Passing info to allocation routines</a></li>
|
||||
<li><a href="#org03c11f2">3. Allocation/deallocation functions</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7795029" class="outline-2">
|
||||
<h2 id="org7795029"><span class="section-number-2">1</span> Memory data structure for the context</h2>
|
||||
<div id="outline-container-org7befdb2" class="outline-2">
|
||||
<h2 id="org7befdb2"><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
|
||||
@ -361,8 +361,8 @@ array, and the number of allocated blocks.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcf47cc9" class="outline-2">
|
||||
<h2 id="orgcf47cc9"><span class="section-number-2">2</span> Passing info to allocation routines</h2>
|
||||
<div id="outline-container-org100ca44" class="outline-2">
|
||||
<h2 id="org100ca44"><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
|
||||
@ -371,8 +371,8 @@ passing an instance of a <code>qmckl_memory_info_struct</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfd4f662" class="outline-2">
|
||||
<h2 id="orgfd4f662"><span class="section-number-2">3</span> Allocation/deallocation functions</h2>
|
||||
<div id="outline-container-org03c11f2" class="outline-2">
|
||||
<h2 id="org03c11f2"><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
|
||||
@ -535,7 +535,7 @@ allocation and needs to be updated.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 10:11</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 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>
|
||||
<!-- 2021-09-14 Tue 10:12 -->
|
||||
<!-- 2021-09-14 Tue 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>
|
||||
@ -333,35 +333,35 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org6945729">1. Context</a>
|
||||
<li><a href="#org1d0aafd">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#orgb9b6e4b">1.1. Data structure</a></li>
|
||||
<li><a href="#org5b2d6e3">1.2. Access functions</a></li>
|
||||
<li><a href="#org8ec1238">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgde2d559">1.4. Test</a></li>
|
||||
<li><a href="#orgfbe6ffc">1.1. Data structure</a></li>
|
||||
<li><a href="#orgb0c3d9b">1.2. Access functions</a></li>
|
||||
<li><a href="#org9abcfb4">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgdc343e4">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org56ec711">2. Computation</a>
|
||||
<li><a href="#orgfc277f4">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#orgb7e4620">2.1. Nucleus-nucleus distances</a>
|
||||
<li><a href="#org4d97ce7">2.1. Nucleus-nucleus distances</a>
|
||||
<ul>
|
||||
<li><a href="#orgfd067d6">2.1.1. Get</a></li>
|
||||
<li><a href="#org74eaa71">2.1.2. Compute</a></li>
|
||||
<li><a href="#org8c9f3a4">2.1.3. Test</a></li>
|
||||
<li><a href="#org9855563">2.1.1. Get</a></li>
|
||||
<li><a href="#org5c48948">2.1.2. Compute</a></li>
|
||||
<li><a href="#orgb9e3283">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgceb7322">2.2. Nucleus-nucleus rescaled distances</a>
|
||||
<li><a href="#orgf5a8618">2.2. Nucleus-nucleus rescaled distances</a>
|
||||
<ul>
|
||||
<li><a href="#org7ec64cf">2.2.1. Get</a></li>
|
||||
<li><a href="#org7779182">2.2.2. Compute</a></li>
|
||||
<li><a href="#orgc6a3ed0">2.2.3. Test</a></li>
|
||||
<li><a href="#org0cc79d4">2.2.1. Get</a></li>
|
||||
<li><a href="#orgbccaeef">2.2.2. Compute</a></li>
|
||||
<li><a href="#orge8aaa97">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org87919cd">2.3. Nuclear repulsion energy</a>
|
||||
<li><a href="#orgc0065ae">2.3. Nuclear repulsion energy</a>
|
||||
<ul>
|
||||
<li><a href="#orgb4acdac">2.3.1. Get</a></li>
|
||||
<li><a href="#org170d83f">2.3.2. Compute</a></li>
|
||||
<li><a href="#orgc6c9482">2.3.3. Test</a></li>
|
||||
<li><a href="#org13b2a04">2.3.1. Get</a></li>
|
||||
<li><a href="#org7e1448f">2.3.2. Compute</a></li>
|
||||
<li><a href="#org8f72173">2.3.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -370,8 +370,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6945729" class="outline-2">
|
||||
<h2 id="org6945729"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org1d0aafd" class="outline-2">
|
||||
<h2 id="org1d0aafd"><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:
|
||||
@ -463,8 +463,8 @@ The following data stored in the context:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb9b6e4b" class="outline-3">
|
||||
<h3 id="orgb9b6e4b"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-orgfbe6ffc" class="outline-3">
|
||||
<h3 id="orgfbe6ffc"><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> {
|
||||
@ -523,8 +523,8 @@ this mechanism.
|
||||
|
||||
|
||||
|
||||
<div id="outline-container-org5b2d6e3" class="outline-3">
|
||||
<h3 id="org5b2d6e3"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-orgb0c3d9b" class="outline-3">
|
||||
<h3 id="orgb0c3d9b"><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
|
||||
@ -538,8 +538,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8ec1238" class="outline-3">
|
||||
<h3 id="org8ec1238"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org9abcfb4" class="outline-3">
|
||||
<h3 id="org9abcfb4"><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
|
||||
@ -574,8 +574,8 @@ atoms. The coordinates should be given in atomic units.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgde2d559" class="outline-3">
|
||||
<h3 id="orgde2d559"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-orgdc343e4" class="outline-3">
|
||||
<h3 id="orgdc343e4"><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;">int64_t</span> <span style="color: #a0522d;">nucl_num</span> = chbrclf_nucl_num;
|
||||
@ -659,8 +659,8 @@ rc = qmckl_get_nucleus_charge(context, nucl_charge2);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org56ec711" class="outline-2">
|
||||
<h2 id="org56ec711"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-orgfc277f4" class="outline-2">
|
||||
<h2 id="orgfc277f4"><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
|
||||
@ -673,12 +673,12 @@ current date is stored.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb7e4620" class="outline-3">
|
||||
<h3 id="orgb7e4620"><span class="section-number-3">2.1</span> Nucleus-nucleus distances</h3>
|
||||
<div id="outline-container-org4d97ce7" class="outline-3">
|
||||
<h3 id="org4d97ce7"><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-orgfd067d6" class="outline-4">
|
||||
<h4 id="orgfd067d6"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-org9855563" class="outline-4">
|
||||
<h4 id="org9855563"><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_nucleus_nn_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>);
|
||||
@ -687,10 +687,10 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org74eaa71" class="outline-4">
|
||||
<h4 id="org74eaa71"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-org5c48948" class="outline-4">
|
||||
<h4 id="org5c48948"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="orgcb09923" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org61daaa8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -768,8 +768,8 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8c9f3a4" class="outline-4">
|
||||
<h4 id="org8c9f3a4"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-orgb9e3283" class="outline-4">
|
||||
<h4 id="orgb9e3283"><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>*/
|
||||
@ -789,12 +789,12 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgceb7322" class="outline-3">
|
||||
<h3 id="orgceb7322"><span class="section-number-3">2.2</span> Nucleus-nucleus rescaled distances</h3>
|
||||
<div id="outline-container-orgf5a8618" class="outline-3">
|
||||
<h3 id="orgf5a8618"><span class="section-number-3">2.2</span> Nucleus-nucleus rescaled distances</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
</div>
|
||||
<div id="outline-container-org7ec64cf" class="outline-4">
|
||||
<h4 id="org7ec64cf"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-org0cc79d4" class="outline-4">
|
||||
<h4 id="org0cc79d4"><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_nn_distance_rescaled</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_rescaled</span>);
|
||||
@ -803,10 +803,10 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7779182" class="outline-4">
|
||||
<h4 id="org7779182"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-orgbccaeef" class="outline-4">
|
||||
<h4 id="orgbccaeef"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="org6789c2c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org55c48c2" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -885,8 +885,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc6a3ed0" class="outline-4">
|
||||
<h4 id="orgc6a3ed0"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-orge8aaa97" class="outline-4">
|
||||
<h4 id="orge8aaa97"><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>*/
|
||||
@ -906,8 +906,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org87919cd" class="outline-3">
|
||||
<h3 id="org87919cd"><span class="section-number-3">2.3</span> Nuclear repulsion energy</h3>
|
||||
<div id="outline-container-orgc0065ae" class="outline-3">
|
||||
<h3 id="orgc0065ae"><span class="section-number-3">2.3</span> Nuclear repulsion energy</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
\[
|
||||
@ -916,8 +916,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb4acdac" class="outline-4">
|
||||
<h4 id="orgb4acdac"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-org13b2a04" class="outline-4">
|
||||
<h4 id="org13b2a04"><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_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: #a0522d;">energy</span>);
|
||||
@ -926,10 +926,10 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org170d83f" class="outline-4">
|
||||
<h4 id="org170d83f"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div id="outline-container-org7e1448f" class="outline-4">
|
||||
<h4 id="org7e1448f"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-3-2">
|
||||
<table id="orgc1b13d8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org6739322" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1017,8 +1017,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc6c9482" class="outline-4">
|
||||
<h4 id="orgc6c9482"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div id="outline-container-org8f72173" class="outline-4">
|
||||
<h4 id="org8f72173"><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">/* <span style="color: #b22222;">Reference input data </span>*/
|
||||
@ -1038,7 +1038,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: 2021-09-14 Tue 10:12</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 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>
|
||||
<!-- 2021-09-14 Tue 10:12 -->
|
||||
<!-- 2021-09-14 Tue 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>
|
||||
@ -333,16 +333,16 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org8b6e35d">1. Control of the numerical precision</a></li>
|
||||
<li><a href="#org787d883">2. Precision</a></li>
|
||||
<li><a href="#org255b295">3. Range</a></li>
|
||||
<li><a href="#org4968d87">4. Helper functions</a></li>
|
||||
<li><a href="#orgaed89e3">1. Control of the numerical precision</a></li>
|
||||
<li><a href="#orgbe9f3ba">2. Precision</a></li>
|
||||
<li><a href="#org2b03115">3. Range</a></li>
|
||||
<li><a href="#orgc51f55f">4. Helper functions</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8b6e35d" class="outline-2">
|
||||
<h2 id="org8b6e35d"><span class="section-number-2">1</span> Control of the numerical precision</h2>
|
||||
<div id="outline-container-orgaed89e3" class="outline-2">
|
||||
<h2 id="orgaed89e3"><span class="section-number-2">1</span> Control of the numerical precision</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
Controlling numerical precision enables optimizations. Here, the
|
||||
@ -353,7 +353,7 @@ Arithmetic (IEEE 754),
|
||||
refers to the number of exponent bits.
|
||||
</p>
|
||||
|
||||
<table id="orgd2b6dd1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org4c42522" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -397,8 +397,8 @@ integer. The update functions return <code>QMCKL_SUCCESS</code> or
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org787d883" class="outline-2">
|
||||
<h2 id="org787d883"><span class="section-number-2">2</span> Precision</h2>
|
||||
<div id="outline-container-orgbe9f3ba" class="outline-2">
|
||||
<h2 id="orgbe9f3ba"><span class="section-number-2">2</span> Precision</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<p>
|
||||
<code>qmckl_context_set_numprec_precision</code> modifies the parameter for the
|
||||
@ -485,8 +485,8 @@ numerical precision in the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org255b295" class="outline-2">
|
||||
<h2 id="org255b295"><span class="section-number-2">3</span> Range</h2>
|
||||
<div id="outline-container-org2b03115" class="outline-2">
|
||||
<h2 id="org2b03115"><span class="section-number-2">3</span> Range</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
<p>
|
||||
<code>qmckl_set_numprec_range</code> modifies the parameter for the numerical
|
||||
@ -561,8 +561,8 @@ range in a given context.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org4968d87" class="outline-2">
|
||||
<h2 id="org4968d87"><span class="section-number-2">4</span> Helper functions</h2>
|
||||
<div id="outline-container-orgc51f55f" class="outline-2">
|
||||
<h2 id="orgc51f55f"><span class="section-number-2">4</span> Helper functions</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
<p>
|
||||
<code>qmckl_get_numprec_epsilon</code> returns \(\epsilon = 2^{1-n}\) where <code>n</code> is the precision.
|
||||
@ -581,7 +581,7 @@ We need to remove the sign bit from the precision.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 10:12</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 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>
|
||||
<!-- 2021-09-14 Tue 10:12 -->
|
||||
<!-- 2021-09-14 Tue 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>
|
||||
@ -333,86 +333,86 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org9e0b9ab">1. Headers</a></li>
|
||||
<li><a href="#orgff6db84">2. Naïve Sherman-Morrison</a>
|
||||
<li><a href="#org76cd349">1. Headers</a></li>
|
||||
<li><a href="#org1eb38d2">2. Naïve Sherman-Morrison</a>
|
||||
<ul>
|
||||
<li><a href="#orgc5b7195">2.1. <code>qmckl_sherman_morrison</code></a>
|
||||
<li><a href="#orgc434ea1">2.1. <code>qmckl_sherman_morrison</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgccecf6e">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org08df0db">2.1.2. C header</a></li>
|
||||
<li><a href="#org4be34d2">2.1.3. Source</a></li>
|
||||
<li><a href="#org697a98d">2.1.4. Performance</a></li>
|
||||
<li><a href="#org34ae83a">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org78cb275">2.1.2. C header</a></li>
|
||||
<li><a href="#org36cf130">2.1.3. Source</a></li>
|
||||
<li><a href="#orge5e06d5">2.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org6d2081f">3. Woodbury 2x2</a>
|
||||
<li><a href="#org4e60820">3. Woodbury 2x2</a>
|
||||
<ul>
|
||||
<li><a href="#org7f0a0ad">3.1. <code>qmckl_woodbury_2</code></a>
|
||||
<li><a href="#org7e4a33b">3.1. <code>qmckl_woodbury_2</code></a>
|
||||
<ul>
|
||||
<li><a href="#org7faffd0">3.1.1. Requirements</a></li>
|
||||
<li><a href="#org680b4d4">3.1.2. C header</a></li>
|
||||
<li><a href="#orge4fd10b">3.1.3. Source</a></li>
|
||||
<li><a href="#orgf4eb87a">3.1.4. Performance</a></li>
|
||||
<li><a href="#org5e0c5d6">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orge46590c">3.1.2. C header</a></li>
|
||||
<li><a href="#org9179061">3.1.3. Source</a></li>
|
||||
<li><a href="#org08a3d3c">3.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgaae20f1">4. Woodbury 3x3</a>
|
||||
<li><a href="#org7baf64d">4. Woodbury 3x3</a>
|
||||
<ul>
|
||||
<li><a href="#orgcbb3001">4.1. <code>qmckl_woodbury_3</code></a>
|
||||
<li><a href="#orgde278c3">4.1. <code>qmckl_woodbury_3</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgc4ee12e">4.1.1. Requirements</a></li>
|
||||
<li><a href="#org0eaed95">4.1.2. C header</a></li>
|
||||
<li><a href="#org455824c">4.1.3. Source</a></li>
|
||||
<li><a href="#org15ae5c1">4.1.4. Performance…</a></li>
|
||||
<li><a href="#org2bba785">4.1.1. Requirements</a></li>
|
||||
<li><a href="#orgbd77cbf">4.1.2. C header</a></li>
|
||||
<li><a href="#org1357c3b">4.1.3. Source</a></li>
|
||||
<li><a href="#org26ea1b6">4.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org9c21a79">5. Sherman-Morrison with update splitting</a>
|
||||
<li><a href="#orgd2e9821">5. Sherman-Morrison with update splitting</a>
|
||||
<ul>
|
||||
<li><a href="#org9971bfa">5.1. <code>qmckl_sherman_morrison_splitting</code></a>
|
||||
<li><a href="#orgc7bcfef">5.1. <code>qmckl_sherman_morrison_splitting</code></a>
|
||||
<ul>
|
||||
<li><a href="#org59ca996">5.1.1. Requirements</a></li>
|
||||
<li><a href="#org096896e">5.1.2. C header</a></li>
|
||||
<li><a href="#orge1022e0">5.1.3. Source</a></li>
|
||||
<li><a href="#orgf06c8f5">5.1.4. Performance…</a></li>
|
||||
<li><a href="#orgc72b3d3">5.1.1. Requirements</a></li>
|
||||
<li><a href="#org71d3e70">5.1.2. C header</a></li>
|
||||
<li><a href="#org1cfadf4">5.1.3. Source</a></li>
|
||||
<li><a href="#org66a842c">5.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org252cc39">6. Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</a>
|
||||
<li><a href="#orgd400885">6. Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</a>
|
||||
<ul>
|
||||
<li><a href="#orgf337d0b">6.1. <code>qmckl_sherman_morrison_smw32s</code></a>
|
||||
<li><a href="#orgf2d01ef">6.1. <code>qmckl_sherman_morrison_smw32s</code></a>
|
||||
<ul>
|
||||
<li><a href="#org8d786d0">6.1.1. Requirements</a></li>
|
||||
<li><a href="#org90ba5ed">6.1.2. C header</a></li>
|
||||
<li><a href="#org1917c64">6.1.3. Source</a></li>
|
||||
<li><a href="#org48a13f5">6.1.4. Performance…</a></li>
|
||||
<li><a href="#org4c8c50c">6.1.1. Requirements</a></li>
|
||||
<li><a href="#orgf0fead8">6.1.2. C header</a></li>
|
||||
<li><a href="#orgc4351c2">6.1.3. Source</a></li>
|
||||
<li><a href="#org0b2e2cd">6.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgf7bd0f1">7. Helper Functions</a>
|
||||
<li><a href="#orga6509f5">7. Helper Functions</a>
|
||||
<ul>
|
||||
<li><a href="#orge1e0a2d">7.1. <code>qmckl_slagel_splitting</code></a>
|
||||
<li><a href="#org3bca705">7.1. <code>qmckl_slagel_splitting</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgd9e6a98">7.1.1. Requirements</a></li>
|
||||
<li><a href="#org7ad68b9">7.1.2. C header</a></li>
|
||||
<li><a href="#orgce1e53a">7.1.3. Source</a></li>
|
||||
<li><a href="#org9d926f5">7.1.4. Performance</a></li>
|
||||
<li><a href="#orgf180a8f">7.1.1. Requirements</a></li>
|
||||
<li><a href="#org3c816e9">7.1.2. C header</a></li>
|
||||
<li><a href="#org77e403a">7.1.3. Source</a></li>
|
||||
<li><a href="#org7ec3732">7.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orga1f1ba3">8. End of files</a></li>
|
||||
<li><a href="#org3ad2c96">8. End of files</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9e0b9ab" class="outline-2">
|
||||
<h2 id="org9e0b9ab"><span class="section-number-2">1</span> Headers</h2>
|
||||
<div id="outline-container-org76cd349" class="outline-2">
|
||||
<h2 id="org76cd349"><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>
|
||||
@ -432,12 +432,12 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgff6db84" class="outline-2">
|
||||
<h2 id="orgff6db84"><span class="section-number-2">2</span> Naïve Sherman-Morrison</h2>
|
||||
<div id="outline-container-org1eb38d2" class="outline-2">
|
||||
<h2 id="org1eb38d2"><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-orgc5b7195" class="outline-3">
|
||||
<h3 id="orgc5b7195"><span class="section-number-3">2.1</span> <code>qmckl_sherman_morrison</code></h3>
|
||||
<div id="outline-container-orgc434ea1" class="outline-3">
|
||||
<h3 id="orgc434ea1"><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
|
||||
@ -474,7 +474,7 @@ the update is applied as usual and the kernel exits with return code \texttt{QMC
|
||||
If \(1+v_j^TS^{-1}u_j \leq \epsilon\) the update is rejected and the kernel exits with return code \texttt{QMCKL_FAILURE}.
|
||||
</p>
|
||||
|
||||
<table id="org95d89bf" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org4c34f3e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -539,8 +539,8 @@ If \(1+v_j^TS^{-1}u_j \leq \epsilon\) the update is rejected and the kernel exit
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgccecf6e" class="outline-4">
|
||||
<h4 id="orgccecf6e"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org34ae83a" class="outline-4">
|
||||
<h4 id="org34ae83a"><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>
|
||||
@ -554,8 +554,8 @@ If \(1+v_j^TS^{-1}u_j \leq \epsilon\) the update is rejected and the kernel exit
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org08df0db" class="outline-4">
|
||||
<h4 id="org08df0db"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div id="outline-container-org78cb275" class="outline-4">
|
||||
<h4 id="org78cb275"><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> (
|
||||
@ -571,8 +571,8 @@ If \(1+v_j^TS^{-1}u_j \leq \epsilon\) the update is rejected and the kernel exit
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4be34d2" class="outline-4">
|
||||
<h4 id="org4be34d2"><span class="section-number-4">2.1.3</span> Source</h4>
|
||||
<div id="outline-container-org36cf130" class="outline-4">
|
||||
<h4 id="org36cf130"><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-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -634,8 +634,8 @@ If \(1+v_j^TS^{-1}u_j \leq \epsilon\) the update is rejected and the kernel exit
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org697a98d" class="outline-4">
|
||||
<h4 id="org697a98d"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div id="outline-container-orge5e06d5" class="outline-4">
|
||||
<h4 id="orge5e06d5"><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
|
||||
@ -647,12 +647,12 @@ where applying the update causes singular behaviour.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6d2081f" class="outline-2">
|
||||
<h2 id="org6d2081f"><span class="section-number-2">3</span> Woodbury 2x2</h2>
|
||||
<div id="outline-container-org4e60820" class="outline-2">
|
||||
<h2 id="org4e60820"><span class="section-number-2">3</span> Woodbury 2x2</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org7f0a0ad" class="outline-3">
|
||||
<h3 id="org7f0a0ad"><span class="section-number-3">3.1</span> <code>qmckl_woodbury_2</code></h3>
|
||||
<div id="outline-container-org7e4a33b" class="outline-3">
|
||||
<h3 id="org7e4a33b"><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
|
||||
@ -670,7 +670,7 @@ where
|
||||
</p>
|
||||
|
||||
|
||||
<table id="orgd2a7dd7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org7151acc" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -728,8 +728,8 @@ where
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7faffd0" class="outline-4">
|
||||
<h4 id="org7faffd0"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org5e0c5d6" class="outline-4">
|
||||
<h4 id="org5e0c5d6"><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>
|
||||
@ -742,8 +742,8 @@ where
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org680b4d4" class="outline-4">
|
||||
<h4 id="org680b4d4"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div id="outline-container-orge46590c" class="outline-4">
|
||||
<h4 id="orge46590c"><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> (
|
||||
@ -758,8 +758,8 @@ where
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge4fd10b" class="outline-4">
|
||||
<h4 id="orge4fd10b"><span class="section-number-4">3.1.3</span> Source</h4>
|
||||
<div id="outline-container-org9179061" class="outline-4">
|
||||
<h4 id="org9179061"><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-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -839,8 +839,8 @@ where
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf4eb87a" class="outline-4">
|
||||
<h4 id="orgf4eb87a"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org08a3d3c" class="outline-4">
|
||||
<h4 id="org08a3d3c"><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
|
||||
@ -851,12 +851,12 @@ it is sure they will not result in a singular matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgaae20f1" class="outline-2">
|
||||
<h2 id="orgaae20f1"><span class="section-number-2">4</span> Woodbury 3x3</h2>
|
||||
<div id="outline-container-org7baf64d" class="outline-2">
|
||||
<h2 id="org7baf64d"><span class="section-number-2">4</span> Woodbury 3x3</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-orgcbb3001" class="outline-3">
|
||||
<h3 id="orgcbb3001"><span class="section-number-3">4.1</span> <code>qmckl_woodbury_3</code></h3>
|
||||
<div id="outline-container-orgde278c3" class="outline-3">
|
||||
<h3 id="orgde278c3"><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
|
||||
@ -870,7 +870,7 @@ except for the sizes of the following matrices:
|
||||
\(D := VS^{-1}\), a \(3 \times Dim\) matrix
|
||||
</p>
|
||||
|
||||
<table id="orge373527" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgd693f86" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -928,8 +928,8 @@ except for the sizes of the following matrices:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc4ee12e" class="outline-4">
|
||||
<h4 id="orgc4ee12e"><span class="section-number-4">4.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org2bba785" class="outline-4">
|
||||
<h4 id="org2bba785"><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>
|
||||
@ -942,8 +942,8 @@ except for the sizes of the following matrices:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0eaed95" class="outline-4">
|
||||
<h4 id="org0eaed95"><span class="section-number-4">4.1.2</span> C header</h4>
|
||||
<div id="outline-container-orgbd77cbf" class="outline-4">
|
||||
<h4 id="orgbd77cbf"><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> (
|
||||
@ -958,8 +958,8 @@ except for the sizes of the following matrices:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org455824c" class="outline-4">
|
||||
<h4 id="org455824c"><span class="section-number-4">4.1.3</span> Source</h4>
|
||||
<div id="outline-container-org1357c3b" class="outline-4">
|
||||
<h4 id="org1357c3b"><span class="section-number-4">4.1.3</span> 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>
|
||||
@ -1055,8 +1055,8 @@ except for the sizes of the following matrices:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org15ae5c1" class="outline-4">
|
||||
<h4 id="org15ae5c1"><span class="section-number-4">4.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-org26ea1b6" class="outline-4">
|
||||
<h4 id="org26ea1b6"><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
|
||||
@ -1067,12 +1067,12 @@ it is sure they will not result in a singular matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9c21a79" class="outline-2">
|
||||
<h2 id="org9c21a79"><span class="section-number-2">5</span> Sherman-Morrison with update splitting</h2>
|
||||
<div id="outline-container-orgd2e9821" class="outline-2">
|
||||
<h2 id="orgd2e9821"><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-org9971bfa" class="outline-3">
|
||||
<h3 id="org9971bfa"><span class="section-number-3">5.1</span> <code>qmckl_sherman_morrison_splitting</code></h3>
|
||||
<div id="outline-container-orgc7bcfef" class="outline-3">
|
||||
<h3 id="orgc7bcfef"><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
|
||||
@ -1089,7 +1089,7 @@ case the Slater-matrix that would have resulted from applying the updates is sin
|
||||
kernel exits with an exit code.
|
||||
</p>
|
||||
|
||||
<table id="org0337413" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgd127f83" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1154,8 +1154,8 @@ kernel exits with an exit code.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org59ca996" class="outline-4">
|
||||
<h4 id="org59ca996"><span class="section-number-4">5.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgc72b3d3" class="outline-4">
|
||||
<h4 id="orgc72b3d3"><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>
|
||||
@ -1169,8 +1169,8 @@ kernel exits with an exit code.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org096896e" class="outline-4">
|
||||
<h4 id="org096896e"><span class="section-number-4">5.1.2</span> C header</h4>
|
||||
<div id="outline-container-org71d3e70" class="outline-4">
|
||||
<h4 id="org71d3e70"><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> (
|
||||
@ -1186,8 +1186,8 @@ kernel exits with an exit code.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge1022e0" class="outline-4">
|
||||
<h4 id="orge1022e0"><span class="section-number-4">5.1.3</span> Source</h4>
|
||||
<div id="outline-container-org1cfadf4" class="outline-4">
|
||||
<h4 id="org1cfadf4"><span class="section-number-4">5.1.3</span> 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>
|
||||
@ -1224,8 +1224,8 @@ kernel exits with an exit code.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf06c8f5" class="outline-4">
|
||||
<h4 id="orgf06c8f5"><span class="section-number-4">5.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-org66a842c" class="outline-4">
|
||||
<h4 id="org66a842c"><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.
|
||||
@ -1235,12 +1235,12 @@ This kernel performs best when there are 2 or more rank-1 update cycles and fail
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org252cc39" class="outline-2">
|
||||
<h2 id="org252cc39"><span class="section-number-2">6</span> Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</h2>
|
||||
<div id="outline-container-orgd400885" class="outline-2">
|
||||
<h2 id="orgd400885"><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-orgf337d0b" class="outline-3">
|
||||
<h3 id="orgf337d0b"><span class="section-number-3">6.1</span> <code>qmckl_sherman_morrison_smw32s</code></h3>
|
||||
<div id="outline-container-orgf2d01ef" class="outline-3">
|
||||
<h3 id="orgf2d01ef"><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,
|
||||
@ -1250,7 +1250,7 @@ with Woodbury 2x2 instead of sending them all to Sherman-Morrison with update sp
|
||||
5 updates the updates are applied in 1 block of 3 updates end 1 block of 2 updates.
|
||||
</p>
|
||||
|
||||
<table id="org513dfc2" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org7521945" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1315,8 +1315,8 @@ with Woodbury 2x2 instead of sending them all to Sherman-Morrison with update sp
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8d786d0" class="outline-4">
|
||||
<h4 id="org8d786d0"><span class="section-number-4">6.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org4c8c50c" class="outline-4">
|
||||
<h4 id="org4c8c50c"><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>
|
||||
@ -1330,8 +1330,8 @@ with Woodbury 2x2 instead of sending them all to Sherman-Morrison with update sp
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org90ba5ed" class="outline-4">
|
||||
<h4 id="org90ba5ed"><span class="section-number-4">6.1.2</span> C header</h4>
|
||||
<div id="outline-container-orgf0fead8" class="outline-4">
|
||||
<h4 id="orgf0fead8"><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> (
|
||||
@ -1347,8 +1347,8 @@ with Woodbury 2x2 instead of sending them all to Sherman-Morrison with update sp
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1917c64" class="outline-4">
|
||||
<h4 id="org1917c64"><span class="section-number-4">6.1.3</span> Source</h4>
|
||||
<div id="outline-container-orgc4351c2" class="outline-4">
|
||||
<h4 id="orgc4351c2"><span class="section-number-4">6.1.3</span> 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>
|
||||
@ -1422,8 +1422,8 @@ with Woodbury 2x2 instead of sending them all to Sherman-Morrison with update sp
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org48a13f5" class="outline-4">
|
||||
<h4 id="org48a13f5"><span class="section-number-4">6.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-org0b2e2cd" class="outline-4">
|
||||
<h4 id="org0b2e2cd"><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.
|
||||
@ -1433,8 +1433,8 @@ This kernel performs best for update cycles with 2 or more rank-1 updates and th
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf7bd0f1" class="outline-2">
|
||||
<h2 id="orgf7bd0f1"><span class="section-number-2">7</span> Helper Functions</h2>
|
||||
<div id="outline-container-orga6509f5" class="outline-2">
|
||||
<h2 id="orga6509f5"><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.
|
||||
@ -1442,8 +1442,8 @@ These functions can only be used internally by the kernels in this module.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge1e0a2d" class="outline-3">
|
||||
<h3 id="orge1e0a2d"><span class="section-number-3">7.1</span> <code>qmckl_slagel_splitting</code></h3>
|
||||
<div id="outline-container-org3bca705" class="outline-3">
|
||||
<h3 id="org3bca705"><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.
|
||||
@ -1458,7 +1458,7 @@ as \(\frac{1}{2}u_j\). One half is applied immediately, the other half will be a
|
||||
\(u_{j'}=\frac{1}{2}u_j\) and \(v_{j'}^T=v_{j}^T\), which are stored in the array \texttt{later_updates}.
|
||||
</p>
|
||||
|
||||
<table id="org0a44137" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org3efa554" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1538,8 +1538,8 @@ as \(\frac{1}{2}u_j\). One half is applied immediately, the other half will be a
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgd9e6a98" class="outline-4">
|
||||
<h4 id="orgd9e6a98"><span class="section-number-4">7.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgf180a8f" class="outline-4">
|
||||
<h4 id="orgf180a8f"><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>Dim >= 2</code></li>
|
||||
@ -1555,8 +1555,8 @@ as \(\frac{1}{2}u_j\). One half is applied immediately, the other half will be a
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7ad68b9" class="outline-4">
|
||||
<h4 id="org7ad68b9"><span class="section-number-4">7.1.2</span> C header</h4>
|
||||
<div id="outline-container-org3c816e9" class="outline-4">
|
||||
<h4 id="org3c816e9"><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> (
|
||||
@ -1574,8 +1574,8 @@ as \(\frac{1}{2}u_j\). One half is applied immediately, the other half will be a
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgce1e53a" class="outline-4">
|
||||
<h4 id="orgce1e53a"><span class="section-number-4">7.1.3</span> Source</h4>
|
||||
<div id="outline-container-org77e403a" class="outline-4">
|
||||
<h4 id="org77e403a"><span class="section-number-4">7.1.3</span> 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>
|
||||
@ -1648,8 +1648,8 @@ as \(\frac{1}{2}u_j\). One half is applied immediately, the other half will be a
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9d926f5" class="outline-4">
|
||||
<h4 id="org9d926f5"><span class="section-number-4">7.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org7ec3732" class="outline-4">
|
||||
<h4 id="org7ec3732"><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
|
||||
@ -1660,8 +1660,8 @@ with Sherman-Morrison and update splitting. Please look at the performance recco
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga1f1ba3" class="outline-2">
|
||||
<h2 id="orga1f1ba3"><span class="section-number-2">8</span> End of files</h2>
|
||||
<div id="outline-container-org3ad2c96" class="outline-2">
|
||||
<h2 id="org3ad2c96"><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);
|
||||
@ -1675,7 +1675,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: 2021-09-14 Tue 10:12</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 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>
|
||||
<!-- 2021-09-14 Tue 10:11 -->
|
||||
<!-- 2021-09-14 Tue 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>
|
||||
@ -233,27 +233,27 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgec96bdb">1. CHBrClF</a>
|
||||
<li><a href="#org2a2ed68">1. CHBrClF</a>
|
||||
<ul>
|
||||
<li><a href="#orga04473f">1.1. XYZ coordinates</a></li>
|
||||
<li><a href="#org9c3cc82">1.2. Atomic basis set</a></li>
|
||||
<li><a href="#orgfffc84a">1.3. <span class="todo TODO">TODO</span> Molecular orbitals</a></li>
|
||||
<li><a href="#org7c909e4">1.4. Electron coordinates</a></li>
|
||||
<li><a href="#orgc1faeb1">1.1. XYZ coordinates</a></li>
|
||||
<li><a href="#org206c6a5">1.2. Atomic basis set</a></li>
|
||||
<li><a href="#org25364b7">1.3. <span class="todo TODO">TODO</span> Molecular orbitals</a></li>
|
||||
<li><a href="#org674d0ef">1.4. Electron coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orga04ba29">2. N2</a>
|
||||
<li><a href="#org42f7138">2. N2</a>
|
||||
<ul>
|
||||
<li><a href="#orgef70bc9">2.1. XYZ coordinates</a></li>
|
||||
<li><a href="#org4883c54">2.2. Electron coordinates</a></li>
|
||||
<li><a href="#orge10bba1">2.3. Jastrow related data</a></li>
|
||||
<li><a href="#orga01494f">2.1. XYZ coordinates</a></li>
|
||||
<li><a href="#orge00dd49">2.2. Electron coordinates</a></li>
|
||||
<li><a href="#org37ebfb4">2.3. Jastrow related data</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgec96bdb" class="outline-2">
|
||||
<h2 id="orgec96bdb"><span class="section-number-2">1</span> CHBrClF</h2>
|
||||
<div id="outline-container-org2a2ed68" class="outline-2">
|
||||
<h2 id="org2a2ed68"><span class="section-number-2">1</span> CHBrClF</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
This test is the all-electron Hartree-Fock wave function of CHClBr,
|
||||
@ -337,8 +337,8 @@ and with a high maximum angular momentum.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orga04473f" class="outline-3">
|
||||
<h3 id="orga04473f"><span class="section-number-3">1.1</span> XYZ coordinates</h3>
|
||||
<div id="outline-container-orgc1faeb1" class="outline-3">
|
||||
<h3 id="orgc1faeb1"><span class="section-number-3">1.1</span> XYZ coordinates</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<pre class="example">
|
||||
5
|
||||
@ -368,8 +368,8 @@ Nuclear coordinates are stored in atomic units in transposed format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9c3cc82" class="outline-3">
|
||||
<h3 id="org9c3cc82"><span class="section-number-3">1.2</span> Atomic basis set</h3>
|
||||
<div id="outline-container-org206c6a5" class="outline-3">
|
||||
<h3 id="org206c6a5"><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
|
||||
@ -1214,11 +1214,11 @@ F 1
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfffc84a" class="outline-3">
|
||||
<h3 id="orgfffc84a"><span class="section-number-3">1.3</span> <span class="todo TODO">TODO</span> Molecular orbitals</h3>
|
||||
<div id="outline-container-org25364b7" class="outline-3">
|
||||
<h3 id="org25364b7"><span class="section-number-3">1.3</span> <span class="todo TODO">TODO</span> Molecular orbitals</h3>
|
||||
</div>
|
||||
<div id="outline-container-org7c909e4" class="outline-3">
|
||||
<h3 id="org7c909e4"><span class="section-number-3">1.4</span> Electron coordinates</h3>
|
||||
<div id="outline-container-org674d0ef" class="outline-3">
|
||||
<h3 id="org674d0ef"><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.
|
||||
@ -1378,8 +1378,8 @@ Electron coordinates are stored in atomic units in normal format.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orga04ba29" class="outline-2">
|
||||
<h2 id="orga04ba29"><span class="section-number-2">2</span> N2</h2>
|
||||
<div id="outline-container-org42f7138" class="outline-2">
|
||||
<h2 id="org42f7138"><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
|
||||
@ -1420,8 +1420,8 @@ treated by pseudopotentials thus excluded from the actual calculation.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgef70bc9" class="outline-3">
|
||||
<h3 id="orgef70bc9"><span class="section-number-3">2.1</span> XYZ coordinates</h3>
|
||||
<div id="outline-container-orga01494f" class="outline-3">
|
||||
<h3 id="orga01494f"><span class="section-number-3">2.1</span> XYZ coordinates</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<pre class="example">
|
||||
2
|
||||
@ -1448,8 +1448,8 @@ Nuclear coordinates are stored in atomic units in transposed format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4883c54" class="outline-3">
|
||||
<h3 id="org4883c54"><span class="section-number-3">2.2</span> Electron coordinates</h3>
|
||||
<div id="outline-container-orge00dd49" class="outline-3">
|
||||
<h3 id="orge00dd49"><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.
|
||||
@ -1478,8 +1478,8 @@ Electron coordinates are stored in atomic units in normal format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge10bba1" class="outline-3">
|
||||
<h3 id="orge10bba1"><span class="section-number-3">2.3</span> Jastrow related data</h3>
|
||||
<div id="outline-container-org37ebfb4" class="outline-3">
|
||||
<h3 id="org37ebfb4"><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
|
||||
@ -1578,7 +1578,7 @@ Ramon Panades Baruetta.
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="date">Created: 2021-09-14 Tue 10:11</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 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>
|
||||
<!-- 2021-09-14 Tue 10:12 -->
|
||||
<!-- 2021-09-14 Tue 10:20 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Utility functions</title>
|
||||
@ -333,13 +333,13 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgf77a78d">1. Matrix operations</a>
|
||||
<li><a href="#orgf863658">1. Matrix operations</a>
|
||||
<ul>
|
||||
<li><a href="#org744a879">1.1. <code>qmckl_transpose</code></a>
|
||||
<li><a href="#org7cb7575">1.1. <code>qmckl_transpose</code></a>
|
||||
<ul>
|
||||
<li><a href="#org0e7b234">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org4e82a94">1.1.2. C header</a></li>
|
||||
<li><a href="#org2c91d48">1.1.3. Source</a></li>
|
||||
<li><a href="#org0b5598d">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org46c82a0">1.1.2. C header</a></li>
|
||||
<li><a href="#org7e8932d">1.1.3. Source</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -348,18 +348,18 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf77a78d" class="outline-2">
|
||||
<h2 id="orgf77a78d"><span class="section-number-2">1</span> Matrix operations</h2>
|
||||
<div id="outline-container-orgf863658" class="outline-2">
|
||||
<h2 id="orgf863658"><span class="section-number-2">1</span> Matrix operations</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-org744a879" class="outline-3">
|
||||
<h3 id="org744a879"><span class="section-number-3">1.1</span> <code>qmckl_transpose</code></h3>
|
||||
<div id="outline-container-org7cb7575" class="outline-3">
|
||||
<h3 id="org7cb7575"><span class="section-number-3">1.1</span> <code>qmckl_transpose</code></h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<p>
|
||||
Transposes a matrix: \(B_{ji} = A_{ij}\)
|
||||
</p>
|
||||
|
||||
<table id="org2b5fad1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org4cff1c1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -424,8 +424,8 @@ Transposes a matrix: \(B_{ji} = A_{ij}\)
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0e7b234" class="outline-4">
|
||||
<h4 id="org0e7b234"><span class="section-number-4">1.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org0b5598d" class="outline-4">
|
||||
<h4 id="org0b5598d"><span class="section-number-4">1.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-1-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -439,8 +439,8 @@ Transposes a matrix: \(B_{ji} = A_{ij}\)
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4e82a94" class="outline-4">
|
||||
<h4 id="org4e82a94"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div id="outline-container-org46c82a0" class="outline-4">
|
||||
<h4 id="org46c82a0"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-1-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_transpose</span> (
|
||||
@ -456,8 +456,8 @@ Transposes a matrix: \(B_{ji} = A_{ij}\)
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2c91d48" class="outline-4">
|
||||
<h4 id="org2c91d48"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div id="outline-container-org7e8932d" class="outline-4">
|
||||
<h4 id="org7e8932d"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-1-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer </span><span style="color: #a020f0;">function</span><span style="color: #a0522d;"> </span><span style="color: #0000ff;">qmckl_transpose_f</span><span style="color: #000000; background-color: #ffffff;">(context, m, n, A, LDA, B, LDB)</span><span style="color: #a0522d;"> </span><span style="color: #a020f0;">&</span>
|
||||
@ -516,7 +516,7 @@ Transposes a matrix: \(B_{ji} = A_{ij}\)
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 10:12</p>
|
||||
<p class="date">Created: 2021-09-14 Tue 10:20</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
Loading…
x
Reference in New Issue
Block a user