1
0
mirror of https://github.com/TREX-CoE/qmckl.git synced 2024-07-22 18:57:40 +02:00

Deploying to gh-pages from @ TREX-CoE/qmckl@fba34e4982 🚀

This commit is contained in:
scemama 2021-07-08 22:47:01 +00:00
parent 41eab9c06b
commit 6ca43cf03a
13 changed files with 799 additions and 743 deletions

View File

@ -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-07-08 Thu 17:26 -->
<!-- 2021-07-08 Thu 22:46 -->
<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>
@ -353,7 +353,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-07-08 Thu 17:26</p>
<p class="date">Created: 2021-07-08 Thu 22:46</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -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-07-08 Thu 17:26 -->
<!-- 2021-07-08 Thu 22:46 -->
<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="#org163d543">1. Using QMCkl</a></li>
<li><a href="#org17168cc">2. Developing in QMCkl</a>
<li><a href="#org925c6ec">1. Using QMCkl</a></li>
<li><a href="#org73b7b25">2. Developing in QMCkl</a>
<ul>
<li><a href="#org704d2af">2.1. Literate programming</a></li>
<li><a href="#orgef028e0">2.2. Source code editing</a></li>
<li><a href="#orgebd5c12">2.3. Choice of the programming language</a></li>
<li><a href="#org0006a97">2.4. Coding rules</a></li>
<li><a href="#orgdf5c8aa">2.5. Design of the library</a></li>
<li><a href="#orgc875864">2.6. Naming conventions</a></li>
<li><a href="#org8f8bc00">2.7. Application programming interface</a></li>
<li><a href="#orgb561f13">2.8. Global state</a></li>
<li><a href="#org30c69ea">2.9. Headers</a></li>
<li><a href="#orgb8ec566">2.10. Low-level functions</a></li>
<li><a href="#org791c824">2.11. High-level functions</a></li>
<li><a href="#org3dacef4">2.12. Numerical precision</a></li>
<li><a href="#org4a8e20d">2.13. Algorithms</a></li>
<li><a href="#org7fcbdb0">2.1. Literate programming</a></li>
<li><a href="#orgd382b89">2.2. Source code editing</a></li>
<li><a href="#org4e4e385">2.3. Choice of the programming language</a></li>
<li><a href="#org7a50660">2.4. Coding rules</a></li>
<li><a href="#org526b963">2.5. Design of the library</a></li>
<li><a href="#org8850b56">2.6. Naming conventions</a></li>
<li><a href="#org85533df">2.7. Application programming interface</a></li>
<li><a href="#orgf8090d7">2.8. Global state</a></li>
<li><a href="#orgd2a7e49">2.9. Headers</a></li>
<li><a href="#orgc2c0ca1">2.10. Low-level functions</a></li>
<li><a href="#org8f6fcb8">2.11. High-level functions</a></li>
<li><a href="#orgd3e7b78">2.12. Numerical precision</a></li>
<li><a href="#orge38cbe5">2.13. Algorithms</a></li>
</ul>
</li>
</ul>
</div>
</div>
<div id="outline-container-org163d543" class="outline-2">
<h2 id="org163d543"><span class="section-number-2">1</span> Using QMCkl</h2>
<div id="outline-container-org925c6ec" class="outline-2">
<h2 id="org925c6ec"><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-org17168cc" class="outline-2">
<h2 id="org17168cc"><span class="section-number-2">2</span> Developing in QMCkl</h2>
<div id="outline-container-org73b7b25" class="outline-2">
<h2 id="org73b7b25"><span class="section-number-2">2</span> Developing in QMCkl</h2>
<div class="outline-text-2" id="text-2">
</div>
<div id="outline-container-org704d2af" class="outline-3">
<h3 id="org704d2af"><span class="section-number-3">2.1</span> Literate programming</h3>
<div id="outline-container-org7fcbdb0" class="outline-3">
<h3 id="org7fcbdb0"><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-orgef028e0" class="outline-3">
<h3 id="orgef028e0"><span class="section-number-3">2.2</span> Source code editing</h3>
<div id="outline-container-orgd382b89" class="outline-3">
<h3 id="orgd382b89"><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-orgebd5c12" class="outline-3">
<h3 id="orgebd5c12"><span class="section-number-3">2.3</span> Choice of the programming language</h3>
<div id="outline-container-org4e4e385" class="outline-3">
<h3 id="org4e4e385"><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-org0006a97" class="outline-3">
<h3 id="org0006a97"><span class="section-number-3">2.4</span> Coding rules</h3>
<div id="outline-container-org7a50660" class="outline-3">
<h3 id="org7a50660"><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-orgdf5c8aa" class="outline-3">
<h3 id="orgdf5c8aa"><span class="section-number-3">2.5</span> Design of the library</h3>
<div id="outline-container-org526b963" class="outline-3">
<h3 id="org526b963"><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-orgc875864" class="outline-3">
<h3 id="orgc875864"><span class="section-number-3">2.6</span> Naming conventions</h3>
<div id="outline-container-org8850b56" class="outline-3">
<h3 id="org8850b56"><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-org8f8bc00" class="outline-3">
<h3 id="org8f8bc00"><span class="section-number-3">2.7</span> Application programming interface</h3>
<div id="outline-container-org85533df" class="outline-3">
<h3 id="org85533df"><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-orgb561f13" class="outline-3">
<h3 id="orgb561f13"><span class="section-number-3">2.8</span> Global state</h3>
<div id="outline-container-orgf8090d7" class="outline-3">
<h3 id="orgf8090d7"><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="org659d238">=context=</a> contains the global
<code>qmckl_context_create</code> function. The <a id="orgc0d8fc6">=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-org30c69ea" class="outline-3">
<h3 id="org30c69ea"><span class="section-number-3">2.9</span> Headers</h3>
<div id="outline-container-orgd2a7e49" class="outline-3">
<h3 id="orgd2a7e49"><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-orgb8ec566" class="outline-3">
<h3 id="orgb8ec566"><span class="section-number-3">2.10</span> Low-level functions</h3>
<div id="outline-container-orgc2c0ca1" class="outline-3">
<h3 id="orgc2c0ca1"><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="#org659d238"><code>context</code></a>. They are not allowed to allocate/deallocate memory, and
<a href="#orgc0d8fc6"><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-org791c824" class="outline-3">
<h3 id="org791c824"><span class="section-number-3">2.11</span> High-level functions</h3>
<div id="outline-container-org8f6fcb8" class="outline-3">
<h3 id="org8f6fcb8"><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="#org659d238"><code>context</code></a> variable.
the <a href="#orgc0d8fc6"><code>context</code></a> variable.
</p>
</div>
</div>
<div id="outline-container-org3dacef4" class="outline-3">
<h3 id="org3dacef4"><span class="section-number-3">2.12</span> Numerical precision</h3>
<div id="outline-container-orgd3e7b78" class="outline-3">
<h3 id="orgd3e7b78"><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="#org659d238"><code>context</code></a>
functions will use the precision specified in the <a href="#orgc0d8fc6"><code>context</code></a>
variable.
</p>
</div>
</div>
<div id="outline-container-org4a8e20d" class="outline-3">
<h3 id="org4a8e20d"><span class="section-number-3">2.13</span> Algorithms</h3>
<div id="outline-container-orge38cbe5" class="outline-3">
<h3 id="orge38cbe5"><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-07-08 Thu 17:26</p>
<p class="date">Created: 2021-07-08 Thu 22:46</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -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-07-08 Thu 17:26 -->
<!-- 2021-07-08 Thu 22:46 -->
<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,70 +333,70 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#orgfa7ccdd">1. Context</a>
<li><a href="#org27aa46a">1. Context</a>
<ul>
<li><a href="#orga269d4c">1.1. Data structure</a></li>
<li><a href="#orgda1de55">1.2. Access functions</a></li>
<li><a href="#orgc68915b">1.3. Initialization functions</a></li>
<li><a href="#org181db11">1.4. Fortran interfaces</a></li>
<li><a href="#orga66b851">1.1. Data structure</a></li>
<li><a href="#org2da8834">1.2. Access functions</a></li>
<li><a href="#org7884edb">1.3. Initialization functions</a></li>
<li><a href="#org04f6ddc">1.4. Fortran interfaces</a></li>
</ul>
</li>
<li><a href="#org8b6d829">2. Radial part</a>
<li><a href="#orge51e5ef">2. Radial part</a>
<ul>
<li><a href="#orge520705">2.1. <span class="todo TODO">TODO</span> Helper functions to accelerate calculations</a></li>
<li><a href="#orgc2e4676">2.2. General functions for Gaussian basis functions</a></li>
<li><a href="#org9d69dce">2.3. <span class="todo TODO">TODO</span> General functions for Slater basis functions</a></li>
<li><a href="#org3e8b244">2.4. <span class="todo TODO">TODO</span> General functions for Radial functions on a grid</a></li>
<li><a href="#org97c62da">2.5. Computation of primitives</a>
<li><a href="#org56ff778">2.1. <span class="todo TODO">TODO</span> Helper functions to accelerate calculations</a></li>
<li><a href="#org9be9443">2.2. General functions for Gaussian basis functions</a></li>
<li><a href="#orgdb94ba4">2.3. <span class="todo TODO">TODO</span> General functions for Slater basis functions</a></li>
<li><a href="#org9659a42">2.4. <span class="todo TODO">TODO</span> General functions for Radial functions on a grid</a></li>
<li><a href="#orgfabbd50">2.5. Computation of primitives</a>
<ul>
<li><a href="#org3ded848">2.5.1. Get</a></li>
<li><a href="#org0b11f06">2.5.2. Provide</a></li>
<li><a href="#org0b43f01">2.5.3. Compute</a></li>
<li><a href="#orgcd01cd4">2.5.4. Test</a></li>
<li><a href="#orgbef53b0">2.5.5. Ideas for improvement</a></li>
<li><a href="#orgc69c978">2.5.1. Get</a></li>
<li><a href="#org48cf1b7">2.5.2. Provide</a></li>
<li><a href="#org79270b7">2.5.3. Compute</a></li>
<li><a href="#org31a8e58">2.5.4. Test</a></li>
<li><a href="#org83804a3">2.5.5. Ideas for improvement</a></li>
</ul>
</li>
<li><a href="#orga26f94c">2.6. Computation of shells</a>
<li><a href="#orgdac5dec">2.6. Computation of shells</a>
<ul>
<li><a href="#org988869f">2.6.1. Get</a></li>
<li><a href="#org6927409">2.6.2. Provide</a></li>
<li><a href="#org29cfda8">2.6.3. Compute</a></li>
<li><a href="#orgf622339">2.6.4. Test</a></li>
<li><a href="#orgc4604f0">2.6.1. Get</a></li>
<li><a href="#org5b891ca">2.6.2. Provide</a></li>
<li><a href="#orgf7e3007">2.6.3. Compute</a></li>
<li><a href="#org1f932a7">2.6.4. Test</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#orgc6e84a4">3. Polynomial part</a>
<li><a href="#org7e841b0">3. Polynomial part</a>
<ul>
<li><a href="#org160f0c0">3.1. General functions for Powers of \(x-X_i\)</a>
<li><a href="#org6d98bdf">3.1. General functions for Powers of \(x-X_i\)</a>
<ul>
<li><a href="#org3a27f10">3.1.1. Requirements</a></li>
<li><a href="#orgf2a64ed">3.1.2. C Header</a></li>
<li><a href="#orgc1d1b68">3.1.3. Source</a></li>
<li><a href="#org0f33078">3.1.4. C interface</a></li>
<li><a href="#orgc26fa01">3.1.5. Fortran interface</a></li>
<li><a href="#orgf826299">3.1.6. Test</a></li>
<li><a href="#orgf835ff3">3.1.1. Requirements</a></li>
<li><a href="#orgbdf624f">3.1.2. C Header</a></li>
<li><a href="#org8ea93f8">3.1.3. Source</a></li>
<li><a href="#org0e8fd15">3.1.4. C interface</a></li>
<li><a href="#org4b5fedc">3.1.5. Fortran interface</a></li>
<li><a href="#orge833109">3.1.6. Test</a></li>
</ul>
</li>
<li><a href="#orgd1cb589">3.2. General functions for Value, Gradient and Laplacian of a polynomial</a>
<li><a href="#org8be0f6a">3.2. General functions for Value, Gradient and Laplacian of a polynomial</a>
<ul>
<li><a href="#orgb2d51c0">3.2.1. Requirements</a></li>
<li><a href="#orgc6fa445">3.2.2. C Header</a></li>
<li><a href="#org55dd59c">3.2.3. Source</a></li>
<li><a href="#org82a4746">3.2.4. C interface</a></li>
<li><a href="#org723ae0f">3.2.5. Fortran interface</a></li>
<li><a href="#org669ec1a">3.2.6. Test</a></li>
<li><a href="#org30e639c">3.2.1. Requirements</a></li>
<li><a href="#org17b3153">3.2.2. C Header</a></li>
<li><a href="#org13c0291">3.2.3. Source</a></li>
<li><a href="#orgb1b24fb">3.2.4. C interface</a></li>
<li><a href="#org9f32dc9">3.2.5. Fortran interface</a></li>
<li><a href="#org7fd3237">3.2.6. Test</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#orgd839e85">4. Combining radial and polynomial parts</a></li>
<li><a href="#org8325012">4. Combining radial and polynomial parts</a></li>
</ul>
</div>
</div>
<div id="outline-container-orgfa7ccdd" class="outline-2">
<h2 id="orgfa7ccdd"><span class="section-number-2">1</span> Context</h2>
<div id="outline-container-org27aa46a" class="outline-2">
<h2 id="org27aa46a"><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:
@ -484,6 +484,24 @@ The following arrays are stored in the context:
<td class="org-left"><code>[prim_num]</code></td>
<td class="org-left">Normalization factors of the primtives</td>
</tr>
<tr>
<td class="org-left"><code>ao_num</code></td>
<td class="org-left">&#xa0;</td>
<td class="org-left">Number of AOs</td>
</tr>
<tr>
<td class="org-left"><code>ao_factor</code></td>
<td class="org-left"><code>[ao_num]</code></td>
<td class="org-left">Normalization factor of the AO</td>
</tr>
<tr>
<td class="org-left"><code>ao_cartesian</code></td>
<td class="org-left">&#xa0;</td>
<td class="org-left">If true, use polynomials. Otherwise, use spherical harmonics</td>
</tr>
</tbody>
</table>
@ -631,23 +649,24 @@ prim_factor = [ 1.0006253235944540e+01, 2.4169531573445120e+00, 7.96109248497664
</pre>
</div>
<div id="outline-container-orga269d4c" class="outline-3">
<h3 id="orga269d4c"><span class="section-number-3">1.1</span> Data structure</h3>
<div id="outline-container-orga66b851" class="outline-3">
<h3 id="orga66b851"><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> {
<span style="color: #228b22;">int32_t</span> <span style="color: #a0522d;">uninitialized</span>;
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">shell_num</span>;
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">prim_num</span>;
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">ao_num</span>;
<span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">nucleus_index</span>;
<span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">nucleus_shell_num</span>;
<span style="color: #228b22;">int32_t</span> * <span style="color: #a0522d;">shell_ang_mom</span>;
<span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">shell_prim_num</span>;
<span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">shell_prim_index</span>;
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">shell_factor</span>;
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">exponent</span> ;
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">coefficient</span> ;
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">prim_factor</span> ;
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">exponent</span>;
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">coefficient</span>;
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">prim_factor</span>;
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">ao_factor</span>;
<span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">nucleus_prim_index</span>;
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">coefficient_normalized</span>;
@ -657,7 +676,10 @@ prim_factor = [ 1.0006253235944540e+01, 2.4169531573445120e+00, 7.96109248497664
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">primitive_vgl_date</span>;
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">shell_vgl</span>;
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">shell_vgl_date</span>;
<span style="color: #228b22;">int32_t</span> <span style="color: #a0522d;">uninitialized</span>;
<span style="color: #228b22;">bool</span> <span style="color: #a0522d;">provided</span>;
<span style="color: #228b22;">bool</span> <span style="color: #a0522d;">ao_cartesian</span>;
<span style="color: #228b22;">char</span> <span style="color: #a0522d;">type</span>;
} <span style="color: #228b22;">qmckl_ao_basis_struct</span>;
</pre>
@ -687,11 +709,10 @@ this mechanism.
<span style="color: #228b22;">qmckl_context_struct</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">ctx</span> = (<span style="color: #228b22;">qmckl_context_struct</span>* <span style="color: #a020f0;">const</span>) context;
assert (ctx != <span style="color: #008b8b;">NULL</span>);
ctx-&gt;ao_basis.uninitialized = (1 &lt;&lt; 12) - 1;
ctx-&gt;ao_basis.uninitialized = (1 &lt;&lt; 14) - 1;
/* <span style="color: #b22222;">Default values </span>*/
/* <span style="color: #b22222;">ctx-&gt;ao_basis.</span>
<span style="color: #b22222;"> </span>*/
ctx-&gt;ao_basis.ao_cartesian = <span style="color: #008b8b;">true</span>;
<span style="color: #a020f0;">return</span> QMCKL_SUCCESS;
}
@ -700,8 +721,8 @@ this mechanism.
</div>
</div>
<div id="outline-container-orgda1de55" class="outline-3">
<h3 id="orgda1de55"><span class="section-number-3">1.2</span> Access functions</h3>
<div id="outline-container-org2da8834" class="outline-3">
<h3 id="org2da8834"><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
@ -715,8 +736,8 @@ function returns <code>true</code>.
</div>
</div>
<div id="outline-container-orgc68915b" class="outline-3">
<h3 id="orgc68915b"><span class="section-number-3">1.3</span> Initialization functions</h3>
<div id="outline-container-org7884edb" class="outline-3">
<h3 id="org7884edb"><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
@ -727,6 +748,7 @@ called.
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_type</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">char</span> <span style="color: #a0522d;">t</span>);
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_shell_num</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">shell_num</span>);
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_prim_num</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">prim_num</span>);
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_ao_num</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">ao_num</span>);
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_nucleus_index</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">nucleus_index</span>);
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_nucleus_shell_num</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">nucleus_shell_num</span>);
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_shell_ang_mom</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int32_t</span> * <span style="color: #a0522d;">shell_ang_mom</span>);
@ -736,6 +758,8 @@ called.
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_exponent</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">double</span> * <span style="color: #a0522d;">exponent</span>);
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_coefficient</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">double</span> * <span style="color: #a0522d;">coefficient</span>);
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_prim_factor</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">double</span> * <span style="color: #a0522d;">prim_factor</span>);
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_ao_factor</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">double</span> * <span style="color: #a0522d;">ao_factor</span>);
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_cartesian</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">bool</span> <span style="color: #a0522d;">cartesian</span>);
</pre>
</div>
@ -751,20 +775,20 @@ the context.
</div>
</div>
<div id="outline-container-org181db11" class="outline-3">
<h3 id="org181db11"><span class="section-number-3">1.4</span> Fortran interfaces</h3>
<div id="outline-container-org04f6ddc" class="outline-3">
<h3 id="org04f6ddc"><span class="section-number-3">1.4</span> Fortran interfaces</h3>
</div>
</div>
<div id="outline-container-org8b6d829" class="outline-2">
<h2 id="org8b6d829"><span class="section-number-2">2</span> Radial part</h2>
<div id="outline-container-orge51e5ef" class="outline-2">
<h2 id="orge51e5ef"><span class="section-number-2">2</span> Radial part</h2>
<div class="outline-text-2" id="text-2">
</div>
<div id="outline-container-orge520705" class="outline-3">
<h3 id="orge520705"><span class="section-number-3">2.1</span> <span class="todo TODO">TODO</span> Helper functions to accelerate calculations</h3>
<div id="outline-container-org56ff778" class="outline-3">
<h3 id="org56ff778"><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-orgc2e4676" class="outline-3">
<h3 id="orgc2e4676"><span class="section-number-3">2.2</span> General functions for Gaussian basis functions</h3>
<div id="outline-container-org9be9443" class="outline-3">
<h3 id="org9be9443"><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
@ -996,18 +1020,18 @@ Requirements
</div>
</div>
<div id="outline-container-org9d69dce" class="outline-3">
<h3 id="org9d69dce"><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-orgdb94ba4" class="outline-3">
<h3 id="orgdb94ba4"><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-org3e8b244" class="outline-3">
<h3 id="org3e8b244"><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-org9659a42" class="outline-3">
<h3 id="org9659a42"><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-org97c62da" class="outline-3">
<h3 id="org97c62da"><span class="section-number-3">2.5</span> Computation of primitives</h3>
<div id="outline-container-orgfabbd50" class="outline-3">
<h3 id="orgfabbd50"><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-org3ded848" class="outline-4">
<h4 id="org3ded848"><span class="section-number-4">2.5.1</span> Get</h4>
<div id="outline-container-orgc69c978" class="outline-4">
<h4 id="orgc69c978"><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>);
@ -1016,14 +1040,14 @@ Requirements
</div>
</div>
<div id="outline-container-org0b11f06" class="outline-4">
<h4 id="org0b11f06"><span class="section-number-4">2.5.2</span> Provide</h4>
<div id="outline-container-org48cf1b7" class="outline-4">
<h4 id="org48cf1b7"><span class="section-number-4">2.5.2</span> Provide</h4>
</div>
<div id="outline-container-org0b43f01" class="outline-4">
<h4 id="org0b43f01"><span class="section-number-4">2.5.3</span> Compute</h4>
<div id="outline-container-org79270b7" class="outline-4">
<h4 id="org79270b7"><span class="section-number-4">2.5.3</span> Compute</h4>
<div class="outline-text-4" id="text-2-5-3">
<table id="org2375ea8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org819682e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1167,12 +1191,12 @@ Requirements
</div>
</div>
<div id="outline-container-orgcd01cd4" class="outline-4">
<h4 id="orgcd01cd4"><span class="section-number-4">2.5.4</span> Test</h4>
<div id="outline-container-org31a8e58" class="outline-4">
<h4 id="org31a8e58"><span class="section-number-4">2.5.4</span> Test</h4>
</div>
<div id="outline-container-orgbef53b0" class="outline-4">
<h4 id="orgbef53b0"><span class="section-number-4">2.5.5</span> Ideas for improvement</h4>
<div id="outline-container-org83804a3" class="outline-4">
<h4 id="org83804a3"><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>
@ -1209,12 +1233,12 @@ k=0;
</div>
</div>
<div id="outline-container-orga26f94c" class="outline-3">
<h3 id="orga26f94c"><span class="section-number-3">2.6</span> Computation of shells</h3>
<div id="outline-container-orgdac5dec" class="outline-3">
<h3 id="orgdac5dec"><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-org988869f" class="outline-4">
<h4 id="org988869f"><span class="section-number-4">2.6.1</span> Get</h4>
<div id="outline-container-orgc4604f0" class="outline-4">
<h4 id="orgc4604f0"><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>);
@ -1223,14 +1247,14 @@ k=0;
</div>
</div>
<div id="outline-container-org6927409" class="outline-4">
<h4 id="org6927409"><span class="section-number-4">2.6.2</span> Provide</h4>
<div id="outline-container-org5b891ca" class="outline-4">
<h4 id="org5b891ca"><span class="section-number-4">2.6.2</span> Provide</h4>
</div>
<div id="outline-container-org29cfda8" class="outline-4">
<h4 id="org29cfda8"><span class="section-number-4">2.6.3</span> Compute</h4>
<div id="outline-container-orgf7e3007" class="outline-4">
<h4 id="orgf7e3007"><span class="section-number-4">2.6.3</span> Compute</h4>
<div class="outline-text-4" id="text-2-6-3">
<table id="orga57e7fa" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org50bf130" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1443,18 +1467,18 @@ k=0;
</div>
<div id="outline-container-orgf622339" class="outline-4">
<h4 id="orgf622339"><span class="section-number-4">2.6.4</span> Test</h4>
<div id="outline-container-org1f932a7" class="outline-4">
<h4 id="org1f932a7"><span class="section-number-4">2.6.4</span> Test</h4>
</div>
</div>
</div>
<div id="outline-container-orgc6e84a4" class="outline-2">
<h2 id="orgc6e84a4"><span class="section-number-2">3</span> Polynomial part</h2>
<div id="outline-container-org7e841b0" class="outline-2">
<h2 id="org7e841b0"><span class="section-number-2">3</span> Polynomial part</h2>
<div class="outline-text-2" id="text-3">
</div>
<div id="outline-container-org160f0c0" class="outline-3">
<h3 id="org160f0c0"><span class="section-number-3">3.1</span> General functions for Powers of \(x-X_i\)</h3>
<div id="outline-container-org6d98bdf" class="outline-3">
<h3 id="org6d98bdf"><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>
@ -1466,7 +1490,7 @@ the \(n\) points:
\[ P_{ik} = X_i^k \]
</p>
<table id="org55d756b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org4c135b5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1524,8 +1548,8 @@ the \(n\) points:
</table>
</div>
<div id="outline-container-org3a27f10" class="outline-4">
<h4 id="org3a27f10"><span class="section-number-4">3.1.1</span> Requirements</h4>
<div id="outline-container-orgf835ff3" class="outline-4">
<h4 id="orgf835ff3"><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>
@ -1538,8 +1562,8 @@ the \(n\) points:
</div>
</div>
<div id="outline-container-orgf2a64ed" class="outline-4">
<h4 id="orgf2a64ed"><span class="section-number-4">3.1.2</span> C Header</h4>
<div id="outline-container-orgbdf624f" class="outline-4">
<h4 id="orgbdf624f"><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> (
@ -1554,8 +1578,8 @@ the \(n\) points:
</div>
</div>
<div id="outline-container-orgc1d1b68" class="outline-4">
<h4 id="orgc1d1b68"><span class="section-number-4">3.1.3</span> Source</h4>
<div id="outline-container-org8ea93f8" class="outline-4">
<h4 id="org8ea93f8"><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>
@ -1606,15 +1630,15 @@ the \(n\) points:
</div>
</div>
<div id="outline-container-org0f33078" class="outline-4">
<h4 id="org0f33078"><span class="section-number-4">3.1.4</span> C interface</h4>
<div id="outline-container-org0e8fd15" class="outline-4">
<h4 id="org0e8fd15"><span class="section-number-4">3.1.4</span> C interface</h4>
</div>
<div id="outline-container-orgc26fa01" class="outline-4">
<h4 id="orgc26fa01"><span class="section-number-4">3.1.5</span> Fortran interface</h4>
<div id="outline-container-org4b5fedc" class="outline-4">
<h4 id="org4b5fedc"><span class="section-number-4">3.1.5</span> Fortran interface</h4>
</div>
<div id="outline-container-orgf826299" class="outline-4">
<h4 id="orgf826299"><span class="section-number-4">3.1.6</span> Test</h4>
<div id="outline-container-orge833109" class="outline-4">
<h4 id="orge833109"><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)
@ -1665,8 +1689,8 @@ the \(n\) points:
</div>
</div>
<div id="outline-container-orgd1cb589" class="outline-3">
<h3 id="orgd1cb589"><span class="section-number-3">3.2</span> General functions for Value, Gradient and Laplacian of a polynomial</h3>
<div id="outline-container-org8be0f6a" class="outline-3">
<h3 id="org8be0f6a"><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\)
@ -1711,7 +1735,7 @@ Laplacians at a given point in space, of all polynomials with an
angular momentum up to <code>lmax</code>.
</p>
<table id="org9a90aa5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orga260a77" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1790,8 +1814,8 @@ angular momentum up to <code>lmax</code>.
</table>
</div>
<div id="outline-container-orgb2d51c0" class="outline-4">
<h4 id="orgb2d51c0"><span class="section-number-4">3.2.1</span> Requirements</h4>
<div id="outline-container-org30e639c" class="outline-4">
<h4 id="org30e639c"><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>
@ -1816,8 +1840,8 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
</div>
</div>
<div id="outline-container-orgc6fa445" class="outline-4">
<h4 id="orgc6fa445"><span class="section-number-4">3.2.2</span> C Header</h4>
<div id="outline-container-org17b3153" class="outline-4">
<h4 id="org17b3153"><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> (
@ -1835,8 +1859,8 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
</div>
</div>
<div id="outline-container-org55dd59c" class="outline-4">
<h4 id="org55dd59c"><span class="section-number-4">3.2.3</span> Source</h4>
<div id="outline-container-org13c0291" class="outline-4">
<h4 id="org13c0291"><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>
@ -1971,16 +1995,16 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
</div>
</div>
<div id="outline-container-org82a4746" class="outline-4">
<h4 id="org82a4746"><span class="section-number-4">3.2.4</span> C interface</h4>
<div id="outline-container-orgb1b24fb" class="outline-4">
<h4 id="orgb1b24fb"><span class="section-number-4">3.2.4</span> C interface</h4>
</div>
<div id="outline-container-org723ae0f" class="outline-4">
<h4 id="org723ae0f"><span class="section-number-4">3.2.5</span> Fortran interface</h4>
<div id="outline-container-org9f32dc9" class="outline-4">
<h4 id="org9f32dc9"><span class="section-number-4">3.2.5</span> Fortran interface</h4>
</div>
<div id="outline-container-org669ec1a" class="outline-4">
<h4 id="org669ec1a"><span class="section-number-4">3.2.6</span> Test</h4>
<div id="outline-container-org7fd3237" class="outline-4">
<h4 id="org7fd3237"><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)
@ -2085,13 +2109,13 @@ assert(0 == test_qmckl_ao_polynomial_vgl(context));
</div>
</div>
<div id="outline-container-orgd839e85" class="outline-2">
<h2 id="orgd839e85"><span class="section-number-2">4</span> Combining radial and polynomial parts</h2>
<div id="outline-container-org8325012" class="outline-2">
<h2 id="org8325012"><span class="section-number-2">4</span> Combining radial and polynomial parts</h2>
</div>
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX CoE</p>
<p class="date">Created: 2021-07-08 Thu 17:26</p>
<p class="date">Created: 2021-07-08 Thu 22:46</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -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-07-08 Thu 17:26 -->
<!-- 2021-07-08 Thu 22:46 -->
<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="#org4b3b5ce">1. Context handling</a>
<li><a href="#org356bfd6">1. Context handling</a>
<ul>
<li><a href="#org021a204">1.1. Data structure</a></li>
<li><a href="#orgceb3171">1.2. Creation</a></li>
<li><a href="#orga4a1202">1.3. Locking</a></li>
<li><a href="#orgd3070f8">1.4. <span class="todo TODO">TODO</span> Copy</a></li>
<li><a href="#org5116ee3">1.5. Destroy</a></li>
<li><a href="#orga280a26">1.1. Data structure</a></li>
<li><a href="#orgc8e744b">1.2. Creation</a></li>
<li><a href="#org8695a12">1.3. Locking</a></li>
<li><a href="#org29c8e1b">1.4. <span class="todo TODO">TODO</span> Copy</a></li>
<li><a href="#orgaabdb0a">1.5. Destroy</a></li>
</ul>
</li>
</ul>
</div>
</div>
<div id="outline-container-org4b3b5ce" class="outline-2">
<h2 id="org4b3b5ce"><span class="section-number-2">1</span> Context handling</h2>
<div id="outline-container-org356bfd6" class="outline-2">
<h2 id="org356bfd6"><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="org55a4a2a"><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="orgfacb560"><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-org021a204" class="outline-3">
<h3 id="org021a204"><span class="section-number-3">1.1</span> Data structure</h3>
<div id="outline-container-orga280a26" class="outline-3">
<h3 id="orga280a26"><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="#orgceb3171">qmckl<sub>context</sub><sub>create</sub></a>, <a href="#org5116ee3">qmckl<sub>context</sub><sub>destroy</sub></a> and <a href="#orgd3070f8">qmckl<sub>context</sub><sub>copy</sub></a>
<a href="#orgc8e744b">qmckl<sub>context</sub><sub>create</sub></a>, <a href="#orgaabdb0a">qmckl<sub>context</sub><sub>destroy</sub></a> and <a href="#org29c8e1b">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-orgceb3171" class="outline-3">
<h3 id="orgceb3171"><span class="section-number-3">1.2</span> Creation</h3>
<div id="outline-container-orgc8e744b" class="outline-3">
<h3 id="orgc8e744b"><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-orga4a1202" class="outline-3">
<h3 id="orga4a1202"><span class="section-number-3">1.3</span> Locking</h3>
<div id="outline-container-org8695a12" class="outline-3">
<h3 id="org8695a12"><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-orgd3070f8" class="outline-3">
<h3 id="orgd3070f8"><span class="section-number-3">1.4</span> <span class="todo TODO">TODO</span> Copy</h3>
<div id="outline-container-org29c8e1b" class="outline-3">
<h3 id="org29c8e1b"><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-org5116ee3" class="outline-3">
<h3 id="org5116ee3"><span class="section-number-3">1.5</span> Destroy</h3>
<div id="outline-container-orgaabdb0a" class="outline-3">
<h3 id="orgaabdb0a"><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-07-08 Thu 17:26</p>
<p class="date">Created: 2021-07-08 Thu 22:46</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -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-07-08 Thu 17:26 -->
<!-- 2021-07-08 Thu 22:46 -->
<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="#org520644c">1. Squared distance</a>
<li><a href="#org5d2e4b7">1. Squared distance</a>
<ul>
<li><a href="#orgd94f060">1.1. <code>qmckl_distance_sq</code></a>
<li><a href="#org816fbf5">1.1. <code>qmckl_distance_sq</code></a>
<ul>
<li><a href="#orgdde86c8">1.1.1. Requirements</a></li>
<li><a href="#org72f50ee">1.1.2. C header</a></li>
<li><a href="#org38c7e59">1.1.3. Source</a></li>
<li><a href="#orgd11924b">1.1.4. Performance</a></li>
<li><a href="#org21fca1e">1.1.1. Requirements</a></li>
<li><a href="#org20b61ad">1.1.2. C header</a></li>
<li><a href="#org5b21334">1.1.3. Source</a></li>
<li><a href="#org36bf0c2">1.1.4. Performance</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#org00c8852">2. Distance</a>
<li><a href="#org4a87fb2">2. Distance</a>
<ul>
<li><a href="#org23824a5">2.1. <code>qmckl_distance</code></a>
<li><a href="#org86de2de">2.1. <code>qmckl_distance</code></a>
<ul>
<li><a href="#org919ac53">2.1.1. Requirements</a></li>
<li><a href="#org16f30ef">2.1.2. C header</a></li>
<li><a href="#orgf5353d1">2.1.3. Source</a></li>
<li><a href="#org6aada56">2.1.4. Performance</a></li>
<li><a href="#org6ce4b8d">2.1.1. Requirements</a></li>
<li><a href="#org78314b7">2.1.2. C header</a></li>
<li><a href="#orga78cfcc">2.1.3. Source</a></li>
<li><a href="#orgc54812e">2.1.4. Performance</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#org62d671d">3. Rescaled Distance</a>
<li><a href="#org92307b7">3. Rescaled Distance</a>
<ul>
<li><a href="#org8cce669">3.1. <code>qmckl_distance_rescaled</code></a>
<li><a href="#org975f3a7">3.1. <code>qmckl_distance_rescaled</code></a>
<ul>
<li><a href="#org2b7ea98">3.1.1. Requirements</a></li>
<li><a href="#org880b2d6">3.1.2. C header</a></li>
<li><a href="#org80bbb36">3.1.3. Source</a></li>
<li><a href="#org88ce027">3.1.4. Performance</a></li>
<li><a href="#org8b11083">3.1.1. Requirements</a></li>
<li><a href="#orgbc5f1ab">3.1.2. C header</a></li>
<li><a href="#orgbbded4a">3.1.3. Source</a></li>
<li><a href="#org62f5b75">3.1.4. Performance</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#org0c52ca9">4. Rescaled Distance Derivatives</a>
<li><a href="#orgb9b2761">4. Rescaled Distance Derivatives</a>
<ul>
<li><a href="#orgda7ec53">4.1. <code>qmckl_distance_rescaled_deriv_e</code></a>
<li><a href="#org0fc7cc1">4.1. <code>qmckl_distance_rescaled_deriv_e</code></a>
<ul>
<li><a href="#orgfcce2aa">4.1.1. Requirements</a></li>
<li><a href="#orge42e450">4.1.2. C header</a></li>
<li><a href="#orgb121807">4.1.3. Source</a></li>
<li><a href="#org69372b7">4.1.4. Performance</a></li>
<li><a href="#org8eeacea">4.1.1. Requirements</a></li>
<li><a href="#org5973620">4.1.2. C header</a></li>
<li><a href="#orgeb37e79">4.1.3. Source</a></li>
<li><a href="#orgf7eeac9">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-org520644c" class="outline-2">
<h2 id="org520644c"><span class="section-number-2">1</span> Squared distance</h2>
<div id="outline-container-org5d2e4b7" class="outline-2">
<h2 id="org5d2e4b7"><span class="section-number-2">1</span> Squared distance</h2>
<div class="outline-text-2" id="text-1">
</div>
<div id="outline-container-orgd94f060" class="outline-3">
<h3 id="orgd94f060"><span class="section-number-3">1.1</span> <code>qmckl_distance_sq</code></h3>
<div id="outline-container-org816fbf5" class="outline-3">
<h3 id="org816fbf5"><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="orgfd657c1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org917f5bb" 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-orgdde86c8" class="outline-4">
<h4 id="orgdde86c8"><span class="section-number-4">1.1.1</span> Requirements</h4>
<div id="outline-container-org21fca1e" class="outline-4">
<h4 id="org21fca1e"><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-org72f50ee" class="outline-4">
<h4 id="org72f50ee"><span class="section-number-4">1.1.2</span> C header</h4>
<div id="outline-container-org20b61ad" class="outline-4">
<h4 id="org20b61ad"><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_rescaled_deriv_e</span> (
@ -536,8 +536,8 @@ between all pairs of points in two sets, one point within each set:
</div>
</div>
<div id="outline-container-org38c7e59" class="outline-4">
<h4 id="org38c7e59"><span class="section-number-4">1.1.3</span> Source</h4>
<div id="outline-container-org5b21334" class="outline-4">
<h4 id="org5b21334"><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;">&amp;</span>
@ -672,8 +672,8 @@ between all pairs of points in two sets, one point within each set:
</div>
</div>
<div id="outline-container-orgd11924b" class="outline-4">
<h4 id="orgd11924b"><span class="section-number-4">1.1.4</span> Performance</h4>
<div id="outline-container-org36bf0c2" class="outline-4">
<h4 id="org36bf0c2"><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-org00c8852" class="outline-2">
<h2 id="org00c8852"><span class="section-number-2">2</span> Distance</h2>
<div id="outline-container-org4a87fb2" class="outline-2">
<h2 id="org4a87fb2"><span class="section-number-2">2</span> Distance</h2>
<div class="outline-text-2" id="text-2">
</div>
<div id="outline-container-org23824a5" class="outline-3">
<h3 id="org23824a5"><span class="section-number-3">2.1</span> <code>qmckl_distance</code></h3>
<div id="outline-container-org86de2de" class="outline-3">
<h3 id="org86de2de"><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="orgaa53d01" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org0af85a1" 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-org919ac53" class="outline-4">
<h4 id="org919ac53"><span class="section-number-4">2.1.1</span> Requirements</h4>
<div id="outline-container-org6ce4b8d" class="outline-4">
<h4 id="org6ce4b8d"><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-org16f30ef" class="outline-4">
<h4 id="org16f30ef"><span class="section-number-4">2.1.2</span> C header</h4>
<div id="outline-container-org78314b7" class="outline-4">
<h4 id="org78314b7"><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_rescaled_deriv_e</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-orgf5353d1" class="outline-4">
<h4 id="orgf5353d1"><span class="section-number-4">2.1.3</span> Source</h4>
<div id="outline-container-orga78cfcc" class="outline-4">
<h4 id="orga78cfcc"><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;">&amp;</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-org6aada56" class="outline-4">
<h4 id="org6aada56"><span class="section-number-4">2.1.4</span> Performance</h4>
<div id="outline-container-orgc54812e" class="outline-4">
<h4 id="orgc54812e"><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-org62d671d" class="outline-2">
<h2 id="org62d671d"><span class="section-number-2">3</span> Rescaled Distance</h2>
<div id="outline-container-org92307b7" class="outline-2">
<h2 id="org92307b7"><span class="section-number-2">3</span> Rescaled Distance</h2>
<div class="outline-text-2" id="text-3">
</div>
<div id="outline-container-org8cce669" class="outline-3">
<h3 id="org8cce669"><span class="section-number-3">3.1</span> <code>qmckl_distance_rescaled</code></h3>
<div id="outline-container-org975f3a7" class="outline-3">
<h3 id="org975f3a7"><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="orgde1f257" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orga83810a" 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-org2b7ea98" class="outline-4">
<h4 id="org2b7ea98"><span class="section-number-4">3.1.1</span> Requirements</h4>
<div id="outline-container-org8b11083" class="outline-4">
<h4 id="org8b11083"><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-org880b2d6" class="outline-4">
<h4 id="org880b2d6"><span class="section-number-4">3.1.2</span> C header</h4>
<div id="outline-container-orgbc5f1ab" class="outline-4">
<h4 id="orgbc5f1ab"><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_deriv_e</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-org80bbb36" class="outline-4">
<h4 id="org80bbb36"><span class="section-number-4">3.1.3</span> Source</h4>
<div id="outline-container-orgbbded4a" class="outline-4">
<h4 id="orgbbded4a"><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;">&amp;</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-org88ce027" class="outline-4">
<h4 id="org88ce027"><span class="section-number-4">3.1.4</span> Performance</h4>
<div id="outline-container-org62f5b75" class="outline-4">
<h4 id="org62f5b75"><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-org0c52ca9" class="outline-2">
<h2 id="org0c52ca9"><span class="section-number-2">4</span> Rescaled Distance Derivatives</h2>
<div id="outline-container-orgb9b2761" class="outline-2">
<h2 id="orgb9b2761"><span class="section-number-2">4</span> Rescaled Distance Derivatives</h2>
<div class="outline-text-2" id="text-4">
</div>
<div id="outline-container-orgda7ec53" class="outline-3">
<h3 id="orgda7ec53"><span class="section-number-3">4.1</span> <code>qmckl_distance_rescaled_deriv_e</code></h3>
<div id="outline-container-org0fc7cc1" class="outline-3">
<h3 id="org0fc7cc1"><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="org333af8c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgc4b7593" 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-orgfcce2aa" class="outline-4">
<h4 id="orgfcce2aa"><span class="section-number-4">4.1.1</span> Requirements</h4>
<div id="outline-container-org8eeacea" class="outline-4">
<h4 id="org8eeacea"><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-orge42e450" class="outline-4">
<h4 id="orge42e450"><span class="section-number-4">4.1.2</span> C header</h4>
<div id="outline-container-org5973620" class="outline-4">
<h4 id="org5973620"><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-orgb121807" class="outline-4">
<h4 id="orgb121807"><span class="section-number-4">4.1.3</span> Source</h4>
<div id="outline-container-orgeb37e79" class="outline-4">
<h4 id="orgeb37e79"><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;">&amp;</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-org69372b7" class="outline-4">
<h4 id="org69372b7"><span class="section-number-4">4.1.4</span> Performance</h4>
<div id="outline-container-orgf7eeac9" class="outline-4">
<h4 id="orgf7eeac9"><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-07-08 Thu 17:26</p>
<p class="date">Created: 2021-07-08 Thu 22:46</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -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-07-08 Thu 17:26 -->
<!-- 2021-07-08 Thu 22:46 -->
<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="#org97f9ae8">1. Context</a>
<li><a href="#orge14630e">1. Context</a>
<ul>
<li><a href="#orgee7a10a">1.1. Data structure</a></li>
<li><a href="#orgb12fe56">1.2. Access functions</a>
<li><a href="#org33e714d">1.1. Data structure</a></li>
<li><a href="#org39ba150">1.2. Access functions</a>
<ul>
<li><a href="#org0df9b18">1.2.1. Number of electrons</a></li>
<li><a href="#org51bf3af">1.2.2. Number of walkers</a></li>
<li><a href="#orgabc2b69">1.2.3. Scaling factors Kappa</a></li>
<li><a href="#org68beaf5">1.2.4. Electron coordinates</a></li>
<li><a href="#org211b1eb">1.2.1. Number of electrons</a></li>
<li><a href="#org2d58ba8">1.2.2. Number of walkers</a></li>
<li><a href="#org11585fc">1.2.3. Scaling factors Kappa</a></li>
<li><a href="#org001c423">1.2.4. Electron coordinates</a></li>
</ul>
</li>
<li><a href="#orgf637077">1.3. Initialization functions</a></li>
<li><a href="#orgbd901ce">1.4. Test</a></li>
<li><a href="#org96d3833">1.3. Initialization functions</a></li>
<li><a href="#org7af7727">1.4. Test</a></li>
</ul>
</li>
<li><a href="#org196a3c5">2. Computation</a>
<li><a href="#orgc2f6a96">2. Computation</a>
<ul>
<li><a href="#org3f01565">2.1. Electron-electron distances</a>
<li><a href="#orgd1eb6c1">2.1. Electron-electron distances</a>
<ul>
<li><a href="#org4cbabf6">2.1.1. Get</a></li>
<li><a href="#org33aa2c4">2.1.2. Compute</a></li>
<li><a href="#orgdebeb1f">2.1.3. Test</a></li>
<li><a href="#orgb986c00">2.1.1. Get</a></li>
<li><a href="#org91763b5">2.1.2. Compute</a></li>
<li><a href="#org1e92f9f">2.1.3. Test</a></li>
</ul>
</li>
<li><a href="#org14887b8">2.2. Electron-electron rescaled distances</a>
<li><a href="#org3ff55d6">2.2. Electron-electron rescaled distances</a>
<ul>
<li><a href="#orgd77e23a">2.2.1. Get</a></li>
<li><a href="#org3240e73">2.2.2. Compute</a></li>
<li><a href="#org402b61b">2.2.3. Test</a></li>
<li><a href="#orge9bb0b1">2.2.1. Get</a></li>
<li><a href="#org27d6da6">2.2.2. Compute</a></li>
<li><a href="#org439ce3e">2.2.3. Test</a></li>
</ul>
</li>
<li><a href="#orgbce2fe8">2.3. Electron-electron rescaled distance gradients and laplacian with respect to electron coords</a>
<li><a href="#org1481c43">2.3. Electron-electron rescaled distance gradients and laplacian with respect to electron coords</a>
<ul>
<li><a href="#org4367734">2.3.1. Get</a></li>
<li><a href="#org9b6cc63">2.3.2. Compute</a></li>
<li><a href="#orgfb60d01">2.3.3. Test</a></li>
<li><a href="#org1fc3024">2.3.1. Get</a></li>
<li><a href="#orgf77812f">2.3.2. Compute</a></li>
<li><a href="#orgb05afb2">2.3.3. Test</a></li>
</ul>
</li>
<li><a href="#org05bb850">2.4. Electron-nucleus distances</a>
<li><a href="#org0da6fbd">2.4. Electron-nucleus distances</a>
<ul>
<li><a href="#orgf20074d">2.4.1. Get</a></li>
<li><a href="#org46b70f5">2.4.2. Compute</a></li>
<li><a href="#org3c5046a">2.4.3. Test</a></li>
<li><a href="#org0418174">2.4.1. Get</a></li>
<li><a href="#org0b672c9">2.4.2. Compute</a></li>
<li><a href="#orgb3f8825">2.4.3. Test</a></li>
</ul>
</li>
<li><a href="#org09f1bb7">2.5. Electron-nucleus rescaled distances</a>
<li><a href="#org30f1a63">2.5. Electron-nucleus rescaled distances</a>
<ul>
<li><a href="#orga40806a">2.5.1. Get</a></li>
<li><a href="#orgc5c052e">2.5.2. Compute</a></li>
<li><a href="#org5d2ccc6">2.5.3. Test</a></li>
<li><a href="#org6074190">2.5.1. Get</a></li>
<li><a href="#org91d77c8">2.5.2. Compute</a></li>
<li><a href="#orgaf15513">2.5.3. Test</a></li>
</ul>
</li>
<li><a href="#org90e980f">2.6. Electron-nucleus rescaled distance gradients and laplacian with respect to electron coords</a>
<li><a href="#org5b40cb3">2.6. Electron-nucleus rescaled distance gradients and laplacian with respect to electron coords</a>
<ul>
<li><a href="#orge25ac7a">2.6.1. Get</a></li>
<li><a href="#org275157d">2.6.2. Compute</a></li>
<li><a href="#orga25bdab">2.6.3. Test</a></li>
<li><a href="#orge001c7b">2.6.1. Get</a></li>
<li><a href="#org8ee5a89">2.6.2. Compute</a></li>
<li><a href="#org08fe80b">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-org97f9ae8" class="outline-2">
<h2 id="org97f9ae8"><span class="section-number-2">1</span> Context</h2>
<div id="outline-container-orge14630e" class="outline-2">
<h2 id="orge14630e"><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-orgee7a10a" class="outline-3">
<h3 id="orgee7a10a"><span class="section-number-3">1.1</span> Data structure</h3>
<div id="outline-container-org33e714d" class="outline-3">
<h3 id="org33e714d"><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-orgb12fe56" class="outline-3">
<h3 id="orgb12fe56"><span class="section-number-3">1.2</span> Access functions</h3>
<div id="outline-container-org39ba150" class="outline-3">
<h3 id="org39ba150"><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-org0df9b18" class="outline-4">
<h4 id="org0df9b18"><span class="section-number-4">1.2.1</span> Number of electrons</h4>
<div id="outline-container-org211b1eb" class="outline-4">
<h4 id="org211b1eb"><span class="section-number-4">1.2.1</span> Number of electrons</h4>
</div>
<div id="outline-container-org51bf3af" class="outline-4">
<h4 id="org51bf3af"><span class="section-number-4">1.2.2</span> Number of walkers</h4>
<div id="outline-container-org2d58ba8" class="outline-4">
<h4 id="org2d58ba8"><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-orgabc2b69" class="outline-4">
<h4 id="orgabc2b69"><span class="section-number-4">1.2.3</span> Scaling factors Kappa</h4>
<div id="outline-container-org11585fc" class="outline-4">
<h4 id="org11585fc"><span class="section-number-4">1.2.3</span> Scaling factors Kappa</h4>
</div>
<div id="outline-container-org68beaf5" class="outline-4">
<h4 id="org68beaf5"><span class="section-number-4">1.2.4</span> Electron coordinates</h4>
<div id="outline-container-org001c423" class="outline-4">
<h4 id="org001c423"><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-orgf637077" class="outline-3">
<h3 id="orgf637077"><span class="section-number-3">1.3</span> Initialization functions</h3>
<div id="outline-container-org96d3833" class="outline-3">
<h3 id="org96d3833"><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-orgbd901ce" class="outline-3">
<h3 id="orgbd901ce"><span class="section-number-3">1.4</span> Test</h3>
<div id="outline-container-org7af7727" class="outline-3">
<h3 id="org7af7727"><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-org196a3c5" class="outline-2">
<h2 id="org196a3c5"><span class="section-number-2">2</span> Computation</h2>
<div id="outline-container-orgc2f6a96" class="outline-2">
<h2 id="orgc2f6a96"><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-org3f01565" class="outline-3">
<h3 id="org3f01565"><span class="section-number-3">2.1</span> Electron-electron distances</h3>
<div id="outline-container-orgd1eb6c1" class="outline-3">
<h3 id="orgd1eb6c1"><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-org4cbabf6" class="outline-4">
<h4 id="org4cbabf6"><span class="section-number-4">2.1.1</span> Get</h4>
<div id="outline-container-orgb986c00" class="outline-4">
<h4 id="orgb986c00"><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-org33aa2c4" class="outline-4">
<h4 id="org33aa2c4"><span class="section-number-4">2.1.2</span> Compute</h4>
<div id="outline-container-org91763b5" class="outline-4">
<h4 id="org91763b5"><span class="section-number-4">2.1.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-1-2">
<table id="org95b94b1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org5808412" 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-orgdebeb1f" class="outline-4">
<h4 id="orgdebeb1f"><span class="section-number-4">2.1.3</span> Test</h4>
<div id="outline-container-org1e92f9f" class="outline-4">
<h4 id="org1e92f9f"><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-org14887b8" class="outline-3">
<h3 id="org14887b8"><span class="section-number-3">2.2</span> Electron-electron rescaled distances</h3>
<div id="outline-container-org3ff55d6" class="outline-3">
<h3 id="org3ff55d6"><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-orgd77e23a" class="outline-4">
<h4 id="orgd77e23a"><span class="section-number-4">2.2.1</span> Get</h4>
<div id="outline-container-orge9bb0b1" class="outline-4">
<h4 id="orge9bb0b1"><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-org3240e73" class="outline-4">
<h4 id="org3240e73"><span class="section-number-4">2.2.2</span> Compute</h4>
<div id="outline-container-org27d6da6" class="outline-4">
<h4 id="org27d6da6"><span class="section-number-4">2.2.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-2-2">
<table id="orgfaca5f6" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgf67d35f" 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-org402b61b" class="outline-4">
<h4 id="org402b61b"><span class="section-number-4">2.2.3</span> Test</h4>
<div id="outline-container-org439ce3e" class="outline-4">
<h4 id="org439ce3e"><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-orgbce2fe8" class="outline-3">
<h3 id="orgbce2fe8"><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-org1481c43" class="outline-3">
<h3 id="org1481c43"><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-org4367734" class="outline-4">
<h4 id="org4367734"><span class="section-number-4">2.3.1</span> Get</h4>
<div id="outline-container-org1fc3024" class="outline-4">
<h4 id="org1fc3024"><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-org9b6cc63" class="outline-4">
<h4 id="org9b6cc63"><span class="section-number-4">2.3.2</span> Compute</h4>
<div id="outline-container-orgf77812f" class="outline-4">
<h4 id="orgf77812f"><span class="section-number-4">2.3.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-3-2">
<table id="org9b1bfab" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orge9c3209" 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-orgfb60d01" class="outline-4">
<h4 id="orgfb60d01"><span class="section-number-4">2.3.3</span> Test</h4>
<div id="outline-container-orgb05afb2" class="outline-4">
<h4 id="orgb05afb2"><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-org05bb850" class="outline-3">
<h3 id="org05bb850"><span class="section-number-3">2.4</span> Electron-nucleus distances</h3>
<div id="outline-container-org0da6fbd" class="outline-3">
<h3 id="org0da6fbd"><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-orgf20074d" class="outline-4">
<h4 id="orgf20074d"><span class="section-number-4">2.4.1</span> Get</h4>
<div id="outline-container-org0418174" class="outline-4">
<h4 id="org0418174"><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-org46b70f5" class="outline-4">
<h4 id="org46b70f5"><span class="section-number-4">2.4.2</span> Compute</h4>
<div id="outline-container-org0b672c9" class="outline-4">
<h4 id="org0b672c9"><span class="section-number-4">2.4.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-4-2">
<table id="orgd4f4624" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org1b13086" 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-org3c5046a" class="outline-4">
<h4 id="org3c5046a"><span class="section-number-4">2.4.3</span> Test</h4>
<div id="outline-container-orgb3f8825" class="outline-4">
<h4 id="orgb3f8825"><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, &amp;(en_distance[0][0][0]));
</div>
</div>
<div id="outline-container-org09f1bb7" class="outline-3">
<h3 id="org09f1bb7"><span class="section-number-3">2.5</span> Electron-nucleus rescaled distances</h3>
<div id="outline-container-org30f1a63" class="outline-3">
<h3 id="org30f1a63"><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-orga40806a" class="outline-4">
<h4 id="orga40806a"><span class="section-number-4">2.5.1</span> Get</h4>
<div id="outline-container-org6074190" class="outline-4">
<h4 id="org6074190"><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-orgc5c052e" class="outline-4">
<h4 id="orgc5c052e"><span class="section-number-4">2.5.2</span> Compute</h4>
<div id="outline-container-org91d77c8" class="outline-4">
<h4 id="org91d77c8"><span class="section-number-4">2.5.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-5-2">
<table id="orgb69c19f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org0322a87" 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-org5d2ccc6" class="outline-4">
<h4 id="org5d2ccc6"><span class="section-number-4">2.5.3</span> Test</h4>
<div id="outline-container-orgaf15513" class="outline-4">
<h4 id="orgaf15513"><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, &amp;(en_distance_rescaled
</div>
</div>
<div id="outline-container-org90e980f" class="outline-3">
<h3 id="org90e980f"><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-org5b40cb3" class="outline-3">
<h3 id="org5b40cb3"><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-orge25ac7a" class="outline-4">
<h4 id="orge25ac7a"><span class="section-number-4">2.6.1</span> Get</h4>
<div id="outline-container-orge001c7b" class="outline-4">
<h4 id="orge001c7b"><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-org275157d" class="outline-4">
<h4 id="org275157d"><span class="section-number-4">2.6.2</span> Compute</h4>
<div id="outline-container-org8ee5a89" class="outline-4">
<h4 id="org8ee5a89"><span class="section-number-4">2.6.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-6-2">
<table id="org1ba2307" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org2e1d99b" 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-orga25bdab" class="outline-4">
<h4 id="orga25bdab"><span class="section-number-4">2.6.3</span> Test</h4>
<div id="outline-container-org08fe80b" class="outline-4">
<h4 id="org08fe80b"><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, &amp;(en_distance_
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX CoE</p>
<p class="date">Created: 2021-07-08 Thu 17:26</p>
<p class="date">Created: 2021-07-08 Thu 22:46</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -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-07-08 Thu 17:26 -->
<!-- 2021-07-08 Thu 22:46 -->
<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="#org402bdd3">1. Decoding errors</a></li>
<li><a href="#orga042802">2. Data structure in context</a></li>
<li><a href="#orgb43021f">3. Updating errors in the context</a></li>
<li><a href="#org7e7717e">4. Get the error</a></li>
<li><a href="#orgdaacd63">5. Failing</a></li>
<li><a href="#org0d6df87">1. Decoding errors</a></li>
<li><a href="#org6510dc1">2. Data structure in context</a></li>
<li><a href="#org978f817">3. Updating errors in the context</a></li>
<li><a href="#org47acaaa">4. Get the error</a></li>
<li><a href="#org17a4cb9">5. Failing</a></li>
</ul>
</div>
</div>
<div id="outline-container-org402bdd3" class="outline-2">
<h2 id="org402bdd3"><span class="section-number-2">1</span> Decoding errors</h2>
<div id="outline-container-org0d6df87" class="outline-2">
<h2 id="org0d6df87"><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-orga042802" class="outline-2">
<h2 id="orga042802"><span class="section-number-2">2</span> Data structure in context</h2>
<div id="outline-container-org6510dc1" class="outline-2">
<h2 id="org6510dc1"><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-orgb43021f" class="outline-2">
<h2 id="orgb43021f"><span class="section-number-2">3</span> Updating errors in the context</h2>
<div id="outline-container-org978f817" class="outline-2">
<h2 id="org978f817"><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-org7e7717e" class="outline-2">
<h2 id="org7e7717e"><span class="section-number-2">4</span> Get the error</h2>
<div id="outline-container-org47acaaa" class="outline-2">
<h2 id="org47acaaa"><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-orgdaacd63" class="outline-2">
<h2 id="orgdaacd63"><span class="section-number-2">5</span> Failing</h2>
<div id="outline-container-org17a4cb9" class="outline-2">
<h2 id="org17a4cb9"><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-07-08 Thu 17:26</p>
<p class="date">Created: 2021-07-08 Thu 22:46</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -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-07-08 Thu 17:26 -->
<!-- 2021-07-08 Thu 22:46 -->
<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="#orgd25eef6">1. Context</a>
<li><a href="#org37796f6">1. Context</a>
<ul>
<li><a href="#orgdac9928">1.1. Data structure</a></li>
<li><a href="#org3ec6592">1.2. Access functions</a></li>
<li><a href="#org5013ba9">1.3. Initialization functions</a></li>
<li><a href="#orgad92b9f">1.4. Test</a></li>
<li><a href="#org8587f47">1.1. Data structure</a></li>
<li><a href="#orgfd67e10">1.2. Access functions</a></li>
<li><a href="#org7b941af">1.3. Initialization functions</a></li>
<li><a href="#org52c93e3">1.4. Test</a></li>
</ul>
</li>
<li><a href="#org7fe52de">2. Computation</a>
<li><a href="#org337af31">2. Computation</a>
<ul>
<li><a href="#org4fbf2b5">2.1. Asymptotic component for \(f_{ee}\)</a>
<li><a href="#org01d2c87">2.1. Asymptotic component for \(f_{ee}\)</a>
<ul>
<li><a href="#org3c0b304">2.1.1. Get</a></li>
<li><a href="#orgf4daa54">2.1.2. Compute</a></li>
<li><a href="#org0110411">2.1.3. Test</a></li>
<li><a href="#orgef3aadf">2.1.1. Get</a></li>
<li><a href="#orgcdab857">2.1.2. Compute</a></li>
<li><a href="#org23dfd27">2.1.3. Test</a></li>
</ul>
</li>
<li><a href="#orge9a9c9a">2.2. Electron-electron component \(f_{ee}\)</a>
<li><a href="#orgdebeb35">2.2. Electron-electron component \(f_{ee}\)</a>
<ul>
<li><a href="#orgc0e8160">2.2.1. Get</a></li>
<li><a href="#org5fb9aa7">2.2.2. Compute</a></li>
<li><a href="#org2bb582f">2.2.3. Test</a></li>
<li><a href="#orgfd8ba6c">2.2.1. Get</a></li>
<li><a href="#org8cbf4ec">2.2.2. Compute</a></li>
<li><a href="#org98ea3a3">2.2.3. Test</a></li>
</ul>
</li>
<li><a href="#org3cc15b5">2.3. Electron-electron component derivative \(f'_{ee}\)</a>
<li><a href="#org6eb68aa">2.3. Electron-electron component derivative \(f'_{ee}\)</a>
<ul>
<li><a href="#orgc31b44c">2.3.1. Get</a></li>
<li><a href="#orga85eedd">2.3.2. Compute</a></li>
<li><a href="#org78bb654">2.3.3. Test</a></li>
<li><a href="#orgaec66dd">2.3.1. Get</a></li>
<li><a href="#orgfd9b428">2.3.2. Compute</a></li>
<li><a href="#orgf862d5a">2.3.3. Test</a></li>
</ul>
</li>
<li><a href="#org3fbc8ba">2.4. Electron-nucleus component \(f_{en}\)</a>
<li><a href="#org1ca2c18">2.4. Electron-nucleus component \(f_{en}\)</a>
<ul>
<li><a href="#org38b4daf">2.4.1. Get</a></li>
<li><a href="#orga20ba06">2.4.2. Compute</a></li>
<li><a href="#orgd637fcb">2.4.3. Test</a></li>
<li><a href="#org009ecee">2.4.1. Get</a></li>
<li><a href="#org606e6cc">2.4.2. Compute</a></li>
<li><a href="#org5de399b">2.4.3. Test</a></li>
</ul>
</li>
<li><a href="#org51a8777">2.5. Electron-nucleus component derivative \(f'_{en}\)</a>
<li><a href="#org91856aa">2.5. Electron-nucleus component derivative \(f'_{en}\)</a>
<ul>
<li><a href="#org9fcf938">2.5.1. Get</a></li>
<li><a href="#org8e523a0">2.5.2. Compute</a></li>
<li><a href="#orgfd19bad">2.5.3. Test</a></li>
<li><a href="#orgedf1434">2.5.1. Get</a></li>
<li><a href="#org6dc309c">2.5.2. Compute</a></li>
<li><a href="#org4434096">2.5.3. Test</a></li>
</ul>
</li>
<li><a href="#orgb08ea65">2.6. Electron-electron rescaled distances for each order</a>
<li><a href="#org48f4b0a">2.6. Electron-electron rescaled distances for each order</a>
<ul>
<li><a href="#orgcdf2a72">2.6.1. Get</a></li>
<li><a href="#org6f39dbd">2.6.2. Compute</a></li>
<li><a href="#orgb554725">2.6.3. Test</a></li>
<li><a href="#orgfaa7c5c">2.6.1. Get</a></li>
<li><a href="#orgf6faa54">2.6.2. Compute</a></li>
<li><a href="#orgaff6adb">2.6.3. Test</a></li>
</ul>
</li>
<li><a href="#orga24a513">2.7. Electron-electron rescaled distances for each order and derivatives</a>
<li><a href="#orgcf3b0c1">2.7. Electron-electron rescaled distances for each order and derivatives</a>
<ul>
<li><a href="#org88271f6">2.7.1. Get</a></li>
<li><a href="#orgc7088b6">2.7.2. Compute</a></li>
<li><a href="#org45fd747">2.7.3. Test</a></li>
<li><a href="#org49b11f3">2.7.1. Get</a></li>
<li><a href="#orgdfd44e0">2.7.2. Compute</a></li>
<li><a href="#orge31d432">2.7.3. Test</a></li>
</ul>
</li>
<li><a href="#orge5db37e">2.8. Electron-nucleus rescaled distances for each order</a>
<li><a href="#org9fae256">2.8. Electron-nucleus rescaled distances for each order</a>
<ul>
<li><a href="#org7597ff9">2.8.1. Get</a></li>
<li><a href="#org4089f83">2.8.2. Compute</a></li>
<li><a href="#org954bce4">2.8.3. Test</a></li>
<li><a href="#orgb6442d5">2.8.1. Get</a></li>
<li><a href="#org1d700ab">2.8.2. Compute</a></li>
<li><a href="#orgcf73438">2.8.3. Test</a></li>
</ul>
</li>
<li><a href="#org4caaac3">2.9. Electron-nucleus rescaled distances for each order and derivatives</a>
<li><a href="#orgbeadc61">2.9. Electron-nucleus rescaled distances for each order and derivatives</a>
<ul>
<li><a href="#org73067cd">2.9.1. Get</a></li>
<li><a href="#org271f47d">2.9.2. Compute</a></li>
<li><a href="#org41c7ad2">2.9.3. Test</a></li>
<li><a href="#org2e8e624">2.9.1. Get</a></li>
<li><a href="#orgbc18b80">2.9.2. Compute</a></li>
<li><a href="#orgdcf8dc1">2.9.3. Test</a></li>
</ul>
</li>
<li><a href="#orgbff6e37">2.10. Prepare for electron-electron-nucleus Jastrow \(f_{een}\)</a>
<li><a href="#orga7828c7">2.10. Prepare for electron-electron-nucleus Jastrow \(f_{een}\)</a>
<ul>
<li><a href="#org015eec2">2.10.1. Get</a></li>
<li><a href="#orgaf7a3a8">2.10.2. Compute dim<sub>cord</sub><sub>vect</sub></a></li>
<li><a href="#orgcfeb1cf">2.10.3. Compute cord<sub>vect</sub><sub>full</sub></a></li>
<li><a href="#orge4cff1d">2.10.4. Compute lkpm<sub>combined</sub><sub>index</sub></a></li>
<li><a href="#org73880a2">2.10.5. Test</a></li>
<li><a href="#orgafe2044">2.10.1. Get</a></li>
<li><a href="#orgbfa90ba">2.10.2. Compute dim<sub>cord</sub><sub>vect</sub></a></li>
<li><a href="#org9920767">2.10.3. Compute cord<sub>vect</sub><sub>full</sub></a></li>
<li><a href="#org8260dbf">2.10.4. Compute lkpm<sub>combined</sub><sub>index</sub></a></li>
<li><a href="#orgdf9c8aa">2.10.5. Test</a></li>
</ul>
</li>
<li><a href="#org64b60c8">2.11. Electron-electron-nucleus Jastrow \(f_{een}\)</a>
<li><a href="#orge5c65e6">2.11. Electron-electron-nucleus Jastrow \(f_{een}\)</a>
<ul>
<li><a href="#orgc26d2f4">2.11.1. Get</a></li>
<li><a href="#orga5322a7">2.11.2. Compute</a></li>
<li><a href="#org23e2638">2.11.3. Test</a></li>
<li><a href="#orgf0ac7ff">2.11.1. Get</a></li>
<li><a href="#org88d4031">2.11.2. Compute</a></li>
<li><a href="#org0890b9e">2.11.3. Test</a></li>
</ul>
</li>
<li><a href="#org81ada8f">2.12. Electron-electron-nucleus Jastrow \(f_{een}\) derivative</a>
<li><a href="#org445b75d">2.12. Electron-electron-nucleus Jastrow \(f_{een}\) derivative</a>
<ul>
<li><a href="#org00557d1">2.12.1. Get</a></li>
<li><a href="#org44f2e5b">2.12.2. Compute</a></li>
<li><a href="#orga34905e">2.12.3. Test</a></li>
<li><a href="#org3f664aa">2.12.1. Get</a></li>
<li><a href="#org81034fc">2.12.2. Compute</a></li>
<li><a href="#org01e9524">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-orgd25eef6" class="outline-2">
<h2 id="orgd25eef6"><span class="section-number-2">1</span> Context</h2>
<div id="outline-container-org37796f6" class="outline-2">
<h2 id="org37796f6"><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="org164fdde" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org4967b07" 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="org1a27f39"><span style="color: #a020f0;">import</span> numpy <span style="color: #a020f0;">as</span> np
<pre class="src src-python" id="orgceb728e"><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-orgdac9928" class="outline-3">
<h3 id="orgdac9928"><span class="section-number-3">1.1</span> Data structure</h3>
<div id="outline-container-org8587f47" class="outline-3">
<h3 id="org8587f47"><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-org3ec6592" class="outline-3">
<h3 id="org3ec6592"><span class="section-number-3">1.2</span> Access functions</h3>
<div id="outline-container-orgfd67e10" class="outline-3">
<h3 id="orgfd67e10"><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-org5013ba9" class="outline-3">
<h3 id="org5013ba9"><span class="section-number-3">1.3</span> Initialization functions</h3>
<div id="outline-container-org7b941af" class="outline-3">
<h3 id="org7b941af"><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-orgad92b9f" class="outline-3">
<h3 id="orgad92b9f"><span class="section-number-3">1.4</span> Test</h3>
<div id="outline-container-org52c93e3" class="outline-3">
<h3 id="org52c93e3"><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-org7fe52de" class="outline-2">
<h2 id="org7fe52de"><span class="section-number-2">2</span> Computation</h2>
<div id="outline-container-org337af31" class="outline-2">
<h2 id="org337af31"><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-org4fbf2b5" class="outline-3">
<h3 id="org4fbf2b5"><span class="section-number-3">2.1</span> Asymptotic component for \(f_{ee}\)</h3>
<div id="outline-container-org01d2c87" class="outline-3">
<h3 id="org01d2c87"><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-org3c0b304" class="outline-4">
<h4 id="org3c0b304"><span class="section-number-4">2.1.1</span> Get</h4>
<div id="outline-container-orgef3aadf" class="outline-4">
<h4 id="orgef3aadf"><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-orgf4daa54" class="outline-4">
<h4 id="orgf4daa54"><span class="section-number-4">2.1.2</span> Compute</h4>
<div id="outline-container-orgcdab857" class="outline-4">
<h4 id="orgcdab857"><span class="section-number-4">2.1.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-1-2">
<table id="orgfd46bad" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org2a74c1e" 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-org0110411" class="outline-4">
<h4 id="org0110411"><span class="section-number-4">2.1.3</span> Test</h4>
<div id="outline-container-org23dfd27" class="outline-4">
<h4 id="org23dfd27"><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-orge9a9c9a" class="outline-3">
<h3 id="orge9a9c9a"><span class="section-number-3">2.2</span> Electron-electron component \(f_{ee}\)</h3>
<div id="outline-container-orgdebeb35" class="outline-3">
<h3 id="orgdebeb35"><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-orgc0e8160" class="outline-4">
<h4 id="orgc0e8160"><span class="section-number-4">2.2.1</span> Get</h4>
<div id="outline-container-orgfd8ba6c" class="outline-4">
<h4 id="orgfd8ba6c"><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-org5fb9aa7" class="outline-4">
<h4 id="org5fb9aa7"><span class="section-number-4">2.2.2</span> Compute</h4>
<div id="outline-container-org8cbf4ec" class="outline-4">
<h4 id="org8cbf4ec"><span class="section-number-4">2.2.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-2-2">
<table id="org1d718e3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org74ab9d1" 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-org2bb582f" class="outline-4">
<h4 id="org2bb582f"><span class="section-number-4">2.2.3</span> Test</h4>
<div id="outline-container-org98ea3a3" class="outline-4">
<h4 id="org98ea3a3"><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-org3cc15b5" class="outline-3">
<h3 id="org3cc15b5"><span class="section-number-3">2.3</span> Electron-electron component derivative \(f'_{ee}\)</h3>
<div id="outline-container-org6eb68aa" class="outline-3">
<h3 id="org6eb68aa"><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-orgc31b44c" class="outline-4">
<h4 id="orgc31b44c"><span class="section-number-4">2.3.1</span> Get</h4>
<div id="outline-container-orgaec66dd" class="outline-4">
<h4 id="orgaec66dd"><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-orga85eedd" class="outline-4">
<h4 id="orga85eedd"><span class="section-number-4">2.3.2</span> Compute</h4>
<div id="outline-container-orgfd9b428" class="outline-4">
<h4 id="orgfd9b428"><span class="section-number-4">2.3.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-3-2">
<table id="orgd908cf6" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org9622d47" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1853,8 +1853,8 @@ TODO: Add equation
</div>
<div id="outline-container-org78bb654" class="outline-4">
<h4 id="org78bb654"><span class="section-number-4">2.3.3</span> Test</h4>
<div id="outline-container-orgf862d5a" class="outline-4">
<h4 id="orgf862d5a"><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, &amp;(factor_ee_deriv_e[0][0][
</div>
</div>
<div id="outline-container-org3fbc8ba" class="outline-3">
<h3 id="org3fbc8ba"><span class="section-number-3">2.4</span> Electron-nucleus component \(f_{en}\)</h3>
<div id="outline-container-org1ca2c18" class="outline-3">
<h3 id="org1ca2c18"><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-org38b4daf" class="outline-4">
<h4 id="org38b4daf"><span class="section-number-4">2.4.1</span> Get</h4>
<div id="outline-container-org009ecee" class="outline-4">
<h4 id="org009ecee"><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-orga20ba06" class="outline-4">
<h4 id="orga20ba06"><span class="section-number-4">2.4.2</span> Compute</h4>
<div id="outline-container-org606e6cc" class="outline-4">
<h4 id="org606e6cc"><span class="section-number-4">2.4.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-4-2">
<table id="org999e4d3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org98602c8" 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-orgd637fcb" class="outline-4">
<h4 id="orgd637fcb"><span class="section-number-4">2.4.3</span> Test</h4>
<div id="outline-container-org5de399b" class="outline-4">
<h4 id="org5de399b"><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-org51a8777" class="outline-3">
<h3 id="org51a8777"><span class="section-number-3">2.5</span> Electron-nucleus component derivative \(f'_{en}\)</h3>
<div id="outline-container-org91856aa" class="outline-3">
<h3 id="org91856aa"><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-org9fcf938" class="outline-4">
<h4 id="org9fcf938"><span class="section-number-4">2.5.1</span> Get</h4>
<div id="outline-container-orgedf1434" class="outline-4">
<h4 id="orgedf1434"><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-org8e523a0" class="outline-4">
<h4 id="org8e523a0"><span class="section-number-4">2.5.2</span> Compute</h4>
<div id="outline-container-org6dc309c" class="outline-4">
<h4 id="org6dc309c"><span class="section-number-4">2.5.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-5-2">
<table id="org7fa8929" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org52ec177" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -2338,8 +2338,8 @@ TODO: write equations.
</div>
<div id="outline-container-orgfd19bad" class="outline-4">
<h4 id="orgfd19bad"><span class="section-number-4">2.5.3</span> Test</h4>
<div id="outline-container-org4434096" class="outline-4">
<h4 id="org4434096"><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, &amp;(factor_en_deriv_e[0][0][
</div>
</div>
<div id="outline-container-orgb08ea65" class="outline-3">
<h3 id="orgb08ea65"><span class="section-number-3">2.6</span> Electron-electron rescaled distances for each order</h3>
<div id="outline-container-org48f4b0a" class="outline-3">
<h3 id="org48f4b0a"><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-orgcdf2a72" class="outline-4">
<h4 id="orgcdf2a72"><span class="section-number-4">2.6.1</span> Get</h4>
<div id="outline-container-orgfaa7c5c" class="outline-4">
<h4 id="orgfaa7c5c"><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-org6f39dbd" class="outline-4">
<h4 id="org6f39dbd"><span class="section-number-4">2.6.2</span> Compute</h4>
<div id="outline-container-orgf6faa54" class="outline-4">
<h4 id="orgf6faa54"><span class="section-number-4">2.6.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-6-2">
<table id="org0dbf9e1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgf5217eb" 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-orgb554725" class="outline-4">
<h4 id="orgb554725"><span class="section-number-4">2.6.3</span> Test</h4>
<div id="outline-container-orgaff6adb" class="outline-4">
<h4 id="orgaff6adb"><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, &amp;(een_rescaled_e[0][0][0][0])
</div>
</div>
<div id="outline-container-orga24a513" class="outline-3">
<h3 id="orga24a513"><span class="section-number-3">2.7</span> Electron-electron rescaled distances for each order and derivatives</h3>
<div id="outline-container-orgcf3b0c1" class="outline-3">
<h3 id="orgcf3b0c1"><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-org88271f6" class="outline-4">
<h4 id="org88271f6"><span class="section-number-4">2.7.1</span> Get</h4>
<div id="outline-container-org49b11f3" class="outline-4">
<h4 id="org49b11f3"><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-orgc7088b6" class="outline-4">
<h4 id="orgc7088b6"><span class="section-number-4">2.7.2</span> Compute</h4>
<div id="outline-container-orgdfd44e0" class="outline-4">
<h4 id="orgdfd44e0"><span class="section-number-4">2.7.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-7-2">
<table id="orge749f1d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org1c41156" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -2783,8 +2783,8 @@ TODO: write formulae
</div>
<div id="outline-container-org45fd747" class="outline-4">
<h4 id="org45fd747"><span class="section-number-4">2.7.3</span> Test</h4>
<div id="outline-container-orge31d432" class="outline-4">
<h4 id="orge31d432"><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-orge5db37e" class="outline-3">
<h3 id="orge5db37e"><span class="section-number-3">2.8</span> Electron-nucleus rescaled distances for each order</h3>
<div id="outline-container-org9fae256" class="outline-3">
<h3 id="org9fae256"><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-org7597ff9" class="outline-4">
<h4 id="org7597ff9"><span class="section-number-4">2.8.1</span> Get</h4>
<div id="outline-container-orgb6442d5" class="outline-4">
<h4 id="orgb6442d5"><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-org4089f83" class="outline-4">
<h4 id="org4089f83"><span class="section-number-4">2.8.2</span> Compute</h4>
<div id="outline-container-org1d700ab" class="outline-4">
<h4 id="org1d700ab"><span class="section-number-4">2.8.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-8-2">
<table id="org254c012" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org5e4e66d" 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-org954bce4" class="outline-4">
<h4 id="org954bce4"><span class="section-number-4">2.8.3</span> Test</h4>
<div id="outline-container-orgcf73438" class="outline-4">
<h4 id="orgcf73438"><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, &amp;(een_rescaled_n[0][0][0][0])
</div>
</div>
<div id="outline-container-org4caaac3" class="outline-3">
<h3 id="org4caaac3"><span class="section-number-3">2.9</span> Electron-nucleus rescaled distances for each order and derivatives</h3>
<div id="outline-container-orgbeadc61" class="outline-3">
<h3 id="orgbeadc61"><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-org73067cd" class="outline-4">
<h4 id="org73067cd"><span class="section-number-4">2.9.1</span> Get</h4>
<div id="outline-container-org2e8e624" class="outline-4">
<h4 id="org2e8e624"><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-org271f47d" class="outline-4">
<h4 id="org271f47d"><span class="section-number-4">2.9.2</span> Compute</h4>
<div id="outline-container-orgbc18b80" class="outline-4">
<h4 id="orgbc18b80"><span class="section-number-4">2.9.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-9-2">
<table id="orgf3ed65e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org83c9f80" 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-org41c7ad2" class="outline-4">
<h4 id="org41c7ad2"><span class="section-number-4">2.9.3</span> Test</h4>
<div id="outline-container-orgdcf8dc1" class="outline-4">
<h4 id="orgdcf8dc1"><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-orgbff6e37" class="outline-3">
<h3 id="orgbff6e37"><span class="section-number-3">2.10</span> Prepare for electron-electron-nucleus Jastrow \(f_{een}\)</h3>
<div id="outline-container-orga7828c7" class="outline-3">
<h3 id="orga7828c7"><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-org015eec2" class="outline-4">
<h4 id="org015eec2"><span class="section-number-4">2.10.1</span> Get</h4>
<div id="outline-container-orgafe2044" class="outline-4">
<h4 id="orgafe2044"><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-orgaf7a3a8" class="outline-4">
<h4 id="orgaf7a3a8"><span class="section-number-4">2.10.2</span> Compute dim<sub>cord</sub><sub>vect</sub></h4>
<div id="outline-container-orgbfa90ba" class="outline-4">
<h4 id="orgbfa90ba"><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="org896df6f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org47b973b" 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-orgcfeb1cf" class="outline-4">
<h4 id="orgcfeb1cf"><span class="section-number-4">2.10.3</span> Compute cord<sub>vect</sub><sub>full</sub></h4>
<div id="outline-container-org9920767" class="outline-4">
<h4 id="org9920767"><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="orga1a8648" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgf4ceb25" 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-orge4cff1d" class="outline-4">
<h4 id="orge4cff1d"><span class="section-number-4">2.10.4</span> Compute lkpm<sub>combined</sub><sub>index</sub></h4>
<div id="outline-container-org8260dbf" class="outline-4">
<h4 id="org8260dbf"><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="org1b448b3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org1150c94" 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-org73880a2" class="outline-4">
<h4 id="org73880a2"><span class="section-number-4">2.10.5</span> Test</h4>
<div id="outline-container-orgdf9c8aa" class="outline-4">
<h4 id="orgdf9c8aa"><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-org64b60c8" class="outline-3">
<h3 id="org64b60c8"><span class="section-number-3">2.11</span> Electron-electron-nucleus Jastrow \(f_{een}\)</h3>
<div id="outline-container-orge5c65e6" class="outline-3">
<h3 id="orge5c65e6"><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-orgc26d2f4" class="outline-4">
<h4 id="orgc26d2f4"><span class="section-number-4">2.11.1</span> Get</h4>
<div id="outline-container-orgf0ac7ff" class="outline-4">
<h4 id="orgf0ac7ff"><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-orga5322a7" class="outline-4">
<h4 id="orga5322a7"><span class="section-number-4">2.11.2</span> Compute</h4>
<div id="outline-container-org88d4031" class="outline-4">
<h4 id="org88d4031"><span class="section-number-4">2.11.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-11-2">
<table id="orgff9c9c9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org572e210" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -3838,8 +3838,8 @@ TODO: write equations.
</div>
<div id="outline-container-org23e2638" class="outline-4">
<h4 id="org23e2638"><span class="section-number-4">2.11.3</span> Test</h4>
<div id="outline-container-org0890b9e" class="outline-4">
<h4 id="org0890b9e"><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-org81ada8f" class="outline-3">
<h3 id="org81ada8f"><span class="section-number-3">2.12</span> Electron-electron-nucleus Jastrow \(f_{een}\) derivative</h3>
<div id="outline-container-org445b75d" class="outline-3">
<h3 id="org445b75d"><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-org00557d1" class="outline-4">
<h4 id="org00557d1"><span class="section-number-4">2.12.1</span> Get</h4>
<div id="outline-container-org3f664aa" class="outline-4">
<h4 id="org3f664aa"><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-org44f2e5b" class="outline-4">
<h4 id="org44f2e5b"><span class="section-number-4">2.12.2</span> Compute</h4>
<div id="outline-container-org81034fc" class="outline-4">
<h4 id="org81034fc"><span class="section-number-4">2.12.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-12-2">
<table id="org32e578a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org2bf6417" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -4103,8 +4103,8 @@ TODO: write equations.
</div>
<div id="outline-container-orga34905e" class="outline-4">
<h4 id="orga34905e"><span class="section-number-4">2.12.3</span> Test</h4>
<div id="outline-container-org01e9524" class="outline-4">
<h4 id="org01e9524"><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-07-08 Thu 17:26</p>
<p class="date">Created: 2021-07-08 Thu 22:46</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -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-07-08 Thu 17:26 -->
<!-- 2021-07-08 Thu 22:46 -->
<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="#org4a38104">1. Memory data structure for the context</a></li>
<li><a href="#orgf8cf8e6">2. Passing info to allocation routines</a></li>
<li><a href="#org7f4fe91">3. Allocation/deallocation functions</a></li>
<li><a href="#org35d6604">1. Memory data structure for the context</a></li>
<li><a href="#orga7c4d8d">2. Passing info to allocation routines</a></li>
<li><a href="#orgb1d50d2">3. Allocation/deallocation functions</a></li>
</ul>
</div>
</div>
<div id="outline-container-org4a38104" class="outline-2">
<h2 id="org4a38104"><span class="section-number-2">1</span> Memory data structure for the context</h2>
<div id="outline-container-org35d6604" class="outline-2">
<h2 id="org35d6604"><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-orgf8cf8e6" class="outline-2">
<h2 id="orgf8cf8e6"><span class="section-number-2">2</span> Passing info to allocation routines</h2>
<div id="outline-container-orga7c4d8d" class="outline-2">
<h2 id="orga7c4d8d"><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-org7f4fe91" class="outline-2">
<h2 id="org7f4fe91"><span class="section-number-2">3</span> Allocation/deallocation functions</h2>
<div id="outline-container-orgb1d50d2" class="outline-2">
<h2 id="orgb1d50d2"><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-07-08 Thu 17:26</p>
<p class="date">Created: 2021-07-08 Thu 22:46</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -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-07-08 Thu 17:26 -->
<!-- 2021-07-08 Thu 22:46 -->
<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="#org84cd167">1. Context</a>
<li><a href="#orgdcd6100">1. Context</a>
<ul>
<li><a href="#orge9d2378">1.1. Data structure</a></li>
<li><a href="#orga8ef59a">1.2. Access functions</a></li>
<li><a href="#org6ae76e6">1.3. Initialization functions</a></li>
<li><a href="#org6837def">1.4. Test</a></li>
<li><a href="#orgb41b23c">1.1. Data structure</a></li>
<li><a href="#orgba317f5">1.2. Access functions</a></li>
<li><a href="#org62e7455">1.3. Initialization functions</a></li>
<li><a href="#orgf817046">1.4. Test</a></li>
</ul>
</li>
<li><a href="#org6f2f2a0">2. Computation</a>
<li><a href="#orga63cd7e">2. Computation</a>
<ul>
<li><a href="#org7dc418c">2.1. Nucleus-nucleus distances</a>
<li><a href="#org838eb93">2.1. Nucleus-nucleus distances</a>
<ul>
<li><a href="#org2a7add8">2.1.1. Get</a></li>
<li><a href="#orgf03eb29">2.1.2. Compute</a></li>
<li><a href="#orgb88d877">2.1.3. Test</a></li>
<li><a href="#org7ae1498">2.1.1. Get</a></li>
<li><a href="#org1f26585">2.1.2. Compute</a></li>
<li><a href="#orgd025136">2.1.3. Test</a></li>
</ul>
</li>
<li><a href="#org4c40bdd">2.2. Nucleus-nucleus rescaled distances</a>
<li><a href="#orge767766">2.2. Nucleus-nucleus rescaled distances</a>
<ul>
<li><a href="#org0dc01a2">2.2.1. Get</a></li>
<li><a href="#org02ebb84">2.2.2. Compute</a></li>
<li><a href="#org134b6f1">2.2.3. Test</a></li>
<li><a href="#org0863630">2.2.1. Get</a></li>
<li><a href="#org84a0ac7">2.2.2. Compute</a></li>
<li><a href="#org2de492c">2.2.3. Test</a></li>
</ul>
</li>
<li><a href="#orge51fc2f">2.3. Nuclear repulsion energy</a>
<li><a href="#org059d241">2.3. Nuclear repulsion energy</a>
<ul>
<li><a href="#org64daa8d">2.3.1. Get</a></li>
<li><a href="#org9fa677d">2.3.2. Compute</a></li>
<li><a href="#orgd706138">2.3.3. Test</a></li>
<li><a href="#orgea319e6">2.3.1. Get</a></li>
<li><a href="#orgc14130e">2.3.2. Compute</a></li>
<li><a href="#org837874b">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-org84cd167" class="outline-2">
<h2 id="org84cd167"><span class="section-number-2">1</span> Context</h2>
<div id="outline-container-orgdcd6100" class="outline-2">
<h2 id="orgdcd6100"><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-orge9d2378" class="outline-3">
<h3 id="orge9d2378"><span class="section-number-3">1.1</span> Data structure</h3>
<div id="outline-container-orgb41b23c" class="outline-3">
<h3 id="orgb41b23c"><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-orga8ef59a" class="outline-3">
<h3 id="orga8ef59a"><span class="section-number-3">1.2</span> Access functions</h3>
<div id="outline-container-orgba317f5" class="outline-3">
<h3 id="orgba317f5"><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-org6ae76e6" class="outline-3">
<h3 id="org6ae76e6"><span class="section-number-3">1.3</span> Initialization functions</h3>
<div id="outline-container-org62e7455" class="outline-3">
<h3 id="org62e7455"><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-org6837def" class="outline-3">
<h3 id="org6837def"><span class="section-number-3">1.4</span> Test</h3>
<div id="outline-container-orgf817046" class="outline-3">
<h3 id="orgf817046"><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-org6f2f2a0" class="outline-2">
<h2 id="org6f2f2a0"><span class="section-number-2">2</span> Computation</h2>
<div id="outline-container-orga63cd7e" class="outline-2">
<h2 id="orga63cd7e"><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-org7dc418c" class="outline-3">
<h3 id="org7dc418c"><span class="section-number-3">2.1</span> Nucleus-nucleus distances</h3>
<div id="outline-container-org838eb93" class="outline-3">
<h3 id="org838eb93"><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-org2a7add8" class="outline-4">
<h4 id="org2a7add8"><span class="section-number-4">2.1.1</span> Get</h4>
<div id="outline-container-org7ae1498" class="outline-4">
<h4 id="org7ae1498"><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-orgf03eb29" class="outline-4">
<h4 id="orgf03eb29"><span class="section-number-4">2.1.2</span> Compute</h4>
<div id="outline-container-org1f26585" class="outline-4">
<h4 id="org1f26585"><span class="section-number-4">2.1.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-1-2">
<table id="orgaf6eeed" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org5eeb8c9" 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-orgb88d877" class="outline-4">
<h4 id="orgb88d877"><span class="section-number-4">2.1.3</span> Test</h4>
<div id="outline-container-orgd025136" class="outline-4">
<h4 id="orgd025136"><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-org4c40bdd" class="outline-3">
<h3 id="org4c40bdd"><span class="section-number-3">2.2</span> Nucleus-nucleus rescaled distances</h3>
<div id="outline-container-orge767766" class="outline-3">
<h3 id="orge767766"><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-org0dc01a2" class="outline-4">
<h4 id="org0dc01a2"><span class="section-number-4">2.2.1</span> Get</h4>
<div id="outline-container-org0863630" class="outline-4">
<h4 id="org0863630"><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-org02ebb84" class="outline-4">
<h4 id="org02ebb84"><span class="section-number-4">2.2.2</span> Compute</h4>
<div id="outline-container-org84a0ac7" class="outline-4">
<h4 id="org84a0ac7"><span class="section-number-4">2.2.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-2-2">
<table id="org6a08494" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org47469f3" 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-org134b6f1" class="outline-4">
<h4 id="org134b6f1"><span class="section-number-4">2.2.3</span> Test</h4>
<div id="outline-container-org2de492c" class="outline-4">
<h4 id="org2de492c"><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-orge51fc2f" class="outline-3">
<h3 id="orge51fc2f"><span class="section-number-3">2.3</span> Nuclear repulsion energy</h3>
<div id="outline-container-org059d241" class="outline-3">
<h3 id="org059d241"><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-org64daa8d" class="outline-4">
<h4 id="org64daa8d"><span class="section-number-4">2.3.1</span> Get</h4>
<div id="outline-container-orgea319e6" class="outline-4">
<h4 id="orgea319e6"><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-org9fa677d" class="outline-4">
<h4 id="org9fa677d"><span class="section-number-4">2.3.2</span> Compute</h4>
<div id="outline-container-orgc14130e" class="outline-4">
<h4 id="orgc14130e"><span class="section-number-4">2.3.2</span> Compute</h4>
<div class="outline-text-4" id="text-2-3-2">
<table id="org5ba22c6" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org54bd11e" 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-orgd706138" class="outline-4">
<h4 id="orgd706138"><span class="section-number-4">2.3.3</span> Test</h4>
<div id="outline-container-org837874b" class="outline-4">
<h4 id="org837874b"><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, &amp;rep);
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX CoE</p>
<p class="date">Created: 2021-07-08 Thu 17:26</p>
<p class="date">Created: 2021-07-08 Thu 22:46</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -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-07-08 Thu 17:26 -->
<!-- 2021-07-08 Thu 22:46 -->
<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="#orgb61a1ae">1. Control of the numerical precision</a></li>
<li><a href="#orgd9f612e">2. Precision</a></li>
<li><a href="#org9885d1d">3. Range</a></li>
<li><a href="#org71733bd">4. Helper functions</a></li>
<li><a href="#orgf7df0c1">1. Control of the numerical precision</a></li>
<li><a href="#orgf84a2ae">2. Precision</a></li>
<li><a href="#org4ad2cfc">3. Range</a></li>
<li><a href="#orgab89199">4. Helper functions</a></li>
</ul>
</div>
</div>
<div id="outline-container-orgb61a1ae" class="outline-2">
<h2 id="orgb61a1ae"><span class="section-number-2">1</span> Control of the numerical precision</h2>
<div id="outline-container-orgf7df0c1" class="outline-2">
<h2 id="orgf7df0c1"><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="orgf1e45fc" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org3cd4df3" 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-orgd9f612e" class="outline-2">
<h2 id="orgd9f612e"><span class="section-number-2">2</span> Precision</h2>
<div id="outline-container-orgf84a2ae" class="outline-2">
<h2 id="orgf84a2ae"><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-org9885d1d" class="outline-2">
<h2 id="org9885d1d"><span class="section-number-2">3</span> Range</h2>
<div id="outline-container-org4ad2cfc" class="outline-2">
<h2 id="org4ad2cfc"><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-org71733bd" class="outline-2">
<h2 id="org71733bd"><span class="section-number-2">4</span> Helper functions</h2>
<div id="outline-container-orgab89199" class="outline-2">
<h2 id="orgab89199"><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-07-08 Thu 17:26</p>
<p class="date">Created: 2021-07-08 Thu 22:46</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -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-07-08 Thu 17:26 -->
<!-- 2021-07-08 Thu 22:46 -->
<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="#org0dcab17">1. CHBrClF</a>
<li><a href="#org3cafc26">1. CHBrClF</a>
<ul>
<li><a href="#orgbe7ad04">1.1. XYZ coordinates</a></li>
<li><a href="#org03af043">1.2. Atomic basis set</a></li>
<li><a href="#org459f90a">1.3. <span class="todo TODO">TODO</span> Molecular orbitals</a></li>
<li><a href="#org01ba46f">1.4. Electron coordinates</a></li>
<li><a href="#org7433ba5">1.1. XYZ coordinates</a></li>
<li><a href="#orgd562a71">1.2. Atomic basis set</a></li>
<li><a href="#org973849e">1.3. <span class="todo TODO">TODO</span> Molecular orbitals</a></li>
<li><a href="#org73b67a0">1.4. Electron coordinates</a></li>
</ul>
</li>
<li><a href="#orgd63da40">2. N2</a>
<li><a href="#org4ee161c">2. N2</a>
<ul>
<li><a href="#orgedd7e2e">2.1. XYZ coordinates</a></li>
<li><a href="#org9c881de">2.2. Electron coordinates</a></li>
<li><a href="#orgb41a754">2.3. Jastrow related data</a></li>
<li><a href="#orgb0a4fa4">2.1. XYZ coordinates</a></li>
<li><a href="#orge76d27f">2.2. Electron coordinates</a></li>
<li><a href="#org8687c56">2.3. Jastrow related data</a></li>
</ul>
</li>
</ul>
</div>
</div>
<div id="outline-container-org0dcab17" class="outline-2">
<h2 id="org0dcab17"><span class="section-number-2">1</span> CHBrClF</h2>
<div id="outline-container-org3cafc26" class="outline-2">
<h2 id="org3cafc26"><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-orgbe7ad04" class="outline-3">
<h3 id="orgbe7ad04"><span class="section-number-3">1.1</span> XYZ coordinates</h3>
<div id="outline-container-org7433ba5" class="outline-3">
<h3 id="org7433ba5"><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-org03af043" class="outline-3">
<h3 id="org03af043"><span class="section-number-3">1.2</span> Atomic basis set</h3>
<div id="outline-container-orgd562a71" class="outline-3">
<h3 id="orgd562a71"><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
@ -845,15 +845,16 @@ F 1
<div class="org-src-container">
<pre class="src src-c"><span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">chbrclf_shell_num</span> 72
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">chbrclf_prim_num</span> 297
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">chbrclf_ao_num</span> 263
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">chbrclf_basis_nucleus_index</span>[chbrclf_nucl_num] = {0, 14, 23, 27, 53};
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">chbrclf_basis_nucleus_shell_num</span>[chbrclf_nucl_num] = {14, 9, 14, 16, 19};
<span style="color: #228b22;">int32_t</span> <span style="color: #a0522d;">chbrclf_basis_shell_ang_mom</span>[chbrclf_shell_num] =
{0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 3, 3, 0, 0, 0, 0, 1, 1, 1, 2, 2, 0,
{0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 3, 3, 0, 0, 0, 0, 1, 1, 1, 2, 2, 0,
0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 3, 3, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1,
2, 2, 2, 3, 3, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3};
2, 2, 2, 3, 3, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3};
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">chbrclf_basis_shell_prim_num</span>[chbrclf_shell_num] =
{10, 10, 1, 1, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 5, 1, 1, 1, 1, 1, 1, 1, 1, 10,
@ -872,7 +873,38 @@ F 1
{1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.};
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.};
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">chbrclf_basis_ao_factor</span>[chbrclf_ao_num] =
{1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1.};
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">chbrclf_basis_ao_shell</span>[chbrclf_ao_num] =
{0, 1, 2, 3, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9, 10, 10, 10,
10, 10, 10, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 15, 16, 17, 18, 18, 18, 19, 19, 19, 20,
20, 20, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 23, 24, 25, 26, 27, 28,
28, 28, 29, 29, 29, 30, 30, 30, 31, 31, 31, 32, 32, 32, 32, 32, 32, 33, 33, 33,
33, 33, 33, 34, 34, 34, 34, 34, 34, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 36,
36, 36, 36, 36, 36, 36, 36, 36, 36, 37, 38, 39, 40, 41, 42, 43, 43, 43, 44, 44,
44, 45, 45, 45, 46, 46, 46, 47, 47, 47, 48, 48, 48, 48, 48, 48, 49, 49, 49, 49,
49, 49, 50, 50, 50, 50, 50, 50, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 52, 52,
52, 52, 52, 52, 52, 52, 52, 52, 53, 54, 55, 56, 57, 58, 59, 60, 60, 60, 61, 61,
61, 62, 62, 62, 63, 63, 63, 64, 64, 64, 65, 65, 65, 66, 66, 66, 66, 66, 66, 67,
67, 67, 67, 67, 67, 68, 68, 68, 68, 68, 68, 69, 69, 69, 69, 69, 69, 70, 70, 70,
70, 70, 70, 70, 70, 70, 70, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71};
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">chbrclf_basis_exponent</span>[chbrclf_prim_num] =
{8.2360000000000000e+03, 1.2350000000000000e+03, 2.8080000000000001e+02,
@ -1182,11 +1214,11 @@ F 1
</div>
</div>
<div id="outline-container-org459f90a" class="outline-3">
<h3 id="org459f90a"><span class="section-number-3">1.3</span> <span class="todo TODO">TODO</span> Molecular orbitals</h3>
<div id="outline-container-org973849e" class="outline-3">
<h3 id="org973849e"><span class="section-number-3">1.3</span> <span class="todo TODO">TODO</span> Molecular orbitals</h3>
</div>
<div id="outline-container-org01ba46f" class="outline-3">
<h3 id="org01ba46f"><span class="section-number-3">1.4</span> Electron coordinates</h3>
<div id="outline-container-org73b67a0" class="outline-3">
<h3 id="org73b67a0"><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.
@ -1346,11 +1378,11 @@ Electron coordinates are stored in atomic units in normal format.
</div>
<div id="outline-container-orgd63da40" class="outline-2">
<h2 id="orgd63da40"><span class="section-number-2">2</span> N2</h2>
<div id="outline-container-org4ee161c" class="outline-2">
<h2 id="org4ee161c"><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
This test is mainly for the Jastrow factor and was supplied by
Ramon Panades Baruetta. The coordinates and Jastrow coefficients
have been taken from his fork of IRPJast. The core electrons are
treated by pseudopotentials thus excluded from the actual calculation.
@ -1388,8 +1420,8 @@ treated by pseudopotentials thus excluded from the actual calculation.
</table>
</div>
<div id="outline-container-orgedd7e2e" class="outline-3">
<h3 id="orgedd7e2e"><span class="section-number-3">2.1</span> XYZ coordinates</h3>
<div id="outline-container-orgb0a4fa4" class="outline-3">
<h3 id="orgb0a4fa4"><span class="section-number-3">2.1</span> XYZ coordinates</h3>
<div class="outline-text-3" id="text-2-1">
<pre class="example">
2
@ -1416,8 +1448,8 @@ Nuclear coordinates are stored in atomic units in transposed format.
</div>
</div>
<div id="outline-container-org9c881de" class="outline-3">
<h3 id="org9c881de"><span class="section-number-3">2.2</span> Electron coordinates</h3>
<div id="outline-container-orge76d27f" class="outline-3">
<h3 id="orge76d27f"><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.
@ -1430,11 +1462,11 @@ Electron coordinates are stored in atomic units in normal format.
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">n2_walk_num</span> ((<span style="color: #228b22;">int64_t</span>) 1)
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">n2_elec_coord</span>[n2_walk_num][n2_elec_num][3] = { {
{-0.250655104764153 , 0.503070975550133 , -0.166554344502303},
{-0.587812193472177 , -0.128751981129274 , 0.187773606533075},
{ 1.61335569047166 , -0.615556732874863 , -1.43165470979934 },
{-4.901239896295210E-003 , -1.120440036458986E-002 , 1.99761909330422 },
{ 0.766647499681200 , -0.293515395797937 , 3.66454589201239 },
{-0.250655104764153 , 0.503070975550133 , -0.166554344502303},
{-0.587812193472177 , -0.128751981129274 , 0.187773606533075},
{ 1.61335569047166 , -0.615556732874863 , -1.43165470979934 },
{-4.901239896295210E-003 , -1.120440036458986E-002 , 1.99761909330422 },
{ 0.766647499681200 , -0.293515395797937 , 3.66454589201239 },
{-0.127732483187947 , -0.138975497694196 , -8.669850480215846E-002},
{-0.232271834949124 , -1.059321673434182E-002 , -0.504862241464867},
{ 1.09360863531826 , -2.036103063808752E-003 , -2.702796910818986E-002},
@ -1446,29 +1478,29 @@ Electron coordinates are stored in atomic units in normal format.
</div>
</div>
<div id="outline-container-orgb41a754" class="outline-3">
<h3 id="orgb41a754"><span class="section-number-3">2.3</span> Jastrow related data</h3>
<div id="outline-container-org8687c56" class="outline-3">
<h3 id="org8687c56"><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
This test is mainly for the Jastrow factor and was supplied by
Ramon Panades Baruetta.
</p>
<div class="org-src-container">
<pre class="src src-c">/* <span style="color: #b22222;">Jastrow related </span>*/
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">n2_type_nucl_num</span> ((<span style="color: #228b22;">int64_t</span>) 1)
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">n2_aord_num</span> ((<span style="color: #228b22;">int64_t</span>) 5)
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">n2_bord_num</span> ((<span style="color: #228b22;">int64_t</span>) 5)
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">n2_cord_num</span> ((<span style="color: #228b22;">int64_t</span>) 23)
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">n2_type_nucl_num</span> ((<span style="color: #228b22;">int64_t</span>) 1)
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">n2_aord_num</span> ((<span style="color: #228b22;">int64_t</span>) 5)
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">n2_bord_num</span> ((<span style="color: #228b22;">int64_t</span>) 5)
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">n2_cord_num</span> ((<span style="color: #228b22;">int64_t</span>) 23)
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">n2_dim_cord_vec</span> ((<span style="color: #228b22;">int64_t</span>) 23)
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">n2_type_nucl_vector</span>[n2_nucl_num] = {
1,
1};
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">n2_aord_vector</span>[n2_aord_num + 1][n2_type_nucl_num] = {
{ 0. },
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">n2_aord_vector</span>[n2_aord_num + 1][n2_type_nucl_num] = {
{ 0. },
{ 0. },
{-0.380512},
{-0.157996},
@ -1480,11 +1512,11 @@ Ramon Panades Baruetta.
0.15366 ,
0.0672262 ,
0.02157 ,
0.0073096 ,
0.0073096 ,
0.002866 };
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">n2_cord_vector</span>[n2_cord_num][n2_type_nucl_num] = {
{ 5.717020e-01},
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">n2_cord_vector</span>[n2_cord_num][n2_type_nucl_num] = {
{ 5.717020e-01},
{-5.142530e-01},
{-5.130430e-01},
{ 9.486000e-03},
@ -1530,11 +1562,11 @@ Ramon Panades Baruetta.
{ 2.614000e-03, 2.614000e-03},
{-1.477000e-03, -1.477000e-03},
{-1.137000e-03, -1.137000e-03},
{-4.010475e-02, -4.010475e-02},
{-4.010475e-02, -4.010475e-02},
{ 6.106710e-03, 6.106710e-03}};
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">n2_lkpm_of_cindex</span>[4][n2_dim_cord_vec] = {
{1, 1, 2, 0, 0, 0, 2, 1, 1, 2, 3, 0, 2, 1, 3, 0, 0, 1, 3, 1, 1, 0, 3},
{1, 1, 2, 0, 0, 0, 2, 1, 1, 2, 3, 0, 2, 1, 3, 0, 0, 1, 3, 1, 1, 0, 3},
{1, 1, 3, 4, 0, 2, 2, 4, 0, 0, 2, 4, 1, 3, 1, 4, 0, 1, 1, 4, 1, 2, 0},
{4, 1, 0, 0, 4, 2, 1, 4, 5, 0, 2, 3, 5, 0, 0, 3, 5, 1, 3, 2, 5, 0, 1},
{2, 5, 1, 4, 1, 5, 0, 2, 1, 5, 1, 0, 1, 5, 2, 3, 0, 5, 1, 1, 0, 5, 2}};
@ -1546,7 +1578,7 @@ Ramon Panades Baruetta.
</div>
</div>
<div id="postamble" class="status">
<p class="date">Created: 2021-07-08 Thu 17:26</p>
<p class="date">Created: 2021-07-08 Thu 22:46</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -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-07-08 Thu 17:26 -->
<!-- 2021-07-08 Thu 22:46 -->
<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="#orgf88f8fc">1. Matrix operations</a>
<li><a href="#orgeca5feb">1. Matrix operations</a>
<ul>
<li><a href="#orga906541">1.1. <code>qmckl_transpose</code></a>
<li><a href="#org34bda4d">1.1. <code>qmckl_transpose</code></a>
<ul>
<li><a href="#org744be08">1.1.1. Requirements</a></li>
<li><a href="#org4993519">1.1.2. C header</a></li>
<li><a href="#org1d3c278">1.1.3. Source</a></li>
<li><a href="#orgd761cca">1.1.1. Requirements</a></li>
<li><a href="#org1c3b1cd">1.1.2. C header</a></li>
<li><a href="#org0ff1729">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-orgf88f8fc" class="outline-2">
<h2 id="orgf88f8fc"><span class="section-number-2">1</span> Matrix operations</h2>
<div id="outline-container-orgeca5feb" class="outline-2">
<h2 id="orgeca5feb"><span class="section-number-2">1</span> Matrix operations</h2>
<div class="outline-text-2" id="text-1">
</div>
<div id="outline-container-orga906541" class="outline-3">
<h3 id="orga906541"><span class="section-number-3">1.1</span> <code>qmckl_transpose</code></h3>
<div id="outline-container-org34bda4d" class="outline-3">
<h3 id="org34bda4d"><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="org3a69d35" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org1ed98ce" 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-org744be08" class="outline-4">
<h4 id="org744be08"><span class="section-number-4">1.1.1</span> Requirements</h4>
<div id="outline-container-orgd761cca" class="outline-4">
<h4 id="orgd761cca"><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-org4993519" class="outline-4">
<h4 id="org4993519"><span class="section-number-4">1.1.2</span> C header</h4>
<div id="outline-container-org1c3b1cd" class="outline-4">
<h4 id="org1c3b1cd"><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-org1d3c278" class="outline-4">
<h4 id="org1d3c278"><span class="section-number-4">1.1.3</span> Source</h4>
<div id="outline-container-org0ff1729" class="outline-4">
<h4 id="org0ff1729"><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;">&amp;</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-07-08 Thu 17:26</p>
<p class="date">Created: 2021-07-08 Thu 22:46</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>