mirror of
https://github.com/TREX-CoE/qmckl.git
synced 2024-08-24 22:21:46 +02:00
Deploying to gh-pages from @ TREX-CoE/qmckl@f2b1c76e39 🚀
This commit is contained in:
parent
9389243426
commit
61952551c8
@ -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-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<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>
|
||||
@ -326,6 +326,7 @@ for the JavaScript code in this tag.
|
||||
<li><a href="./qmckl_utils.html">Utility functions</a></li>
|
||||
<li><a href="./qmckl_blas.html">BLAS functions</a></li>
|
||||
<li><a href="./qmckl_tests.html">Data for Tests</a></li>
|
||||
<li><a href="./qmckl_trexio.html">TREXIO I/O library</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
@ -356,7 +357,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-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
102
qmckl.html
102
qmckl.html
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<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="#orga149a41">1. Using QMCkl</a></li>
|
||||
<li><a href="#org14e0a81">2. Developing in QMCkl</a>
|
||||
<li><a href="#org117f7d9">1. Using QMCkl</a></li>
|
||||
<li><a href="#org5ef9c5a">2. Developing in QMCkl</a>
|
||||
<ul>
|
||||
<li><a href="#org2f21e21">2.1. Literate programming</a></li>
|
||||
<li><a href="#org94d381d">2.2. Source code editing</a></li>
|
||||
<li><a href="#orgea45ee7">2.3. Choice of the programming language</a></li>
|
||||
<li><a href="#orgcb22059">2.4. Coding rules</a></li>
|
||||
<li><a href="#org00d2d17">2.5. Design of the library</a></li>
|
||||
<li><a href="#orgddebb28">2.6. Naming conventions</a></li>
|
||||
<li><a href="#orgc90e341">2.7. Application programming interface</a></li>
|
||||
<li><a href="#orgb6ace12">2.8. Global state</a></li>
|
||||
<li><a href="#org4be1849">2.9. Headers</a></li>
|
||||
<li><a href="#org8890dd3">2.10. Low-level functions</a></li>
|
||||
<li><a href="#orgdb9fabc">2.11. High-level functions</a></li>
|
||||
<li><a href="#orgc0d3b7d">2.12. Numerical precision</a></li>
|
||||
<li><a href="#org38c4183">2.13. Algorithms</a></li>
|
||||
<li><a href="#orgc6af78b">2.1. Literate programming</a></li>
|
||||
<li><a href="#org893f6c0">2.2. Source code editing</a></li>
|
||||
<li><a href="#org8a4fa48">2.3. Choice of the programming language</a></li>
|
||||
<li><a href="#org6976d81">2.4. Coding rules</a></li>
|
||||
<li><a href="#org8facc29">2.5. Design of the library</a></li>
|
||||
<li><a href="#org5a111e0">2.6. Naming conventions</a></li>
|
||||
<li><a href="#orge695e31">2.7. Application programming interface</a></li>
|
||||
<li><a href="#org6844d4d">2.8. Global state</a></li>
|
||||
<li><a href="#orgd35729a">2.9. Headers</a></li>
|
||||
<li><a href="#orga34bcc8">2.10. Low-level functions</a></li>
|
||||
<li><a href="#org1958ceb">2.11. High-level functions</a></li>
|
||||
<li><a href="#org19e7b23">2.12. Numerical precision</a></li>
|
||||
<li><a href="#org5499ffe">2.13. Algorithms</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga149a41" class="outline-2">
|
||||
<h2 id="orga149a41"><span class="section-number-2">1</span> Using QMCkl</h2>
|
||||
<div id="outline-container-org117f7d9" class="outline-2">
|
||||
<h2 id="org117f7d9"><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-org14e0a81" class="outline-2">
|
||||
<h2 id="org14e0a81"><span class="section-number-2">2</span> Developing in QMCkl</h2>
|
||||
<div id="outline-container-org5ef9c5a" class="outline-2">
|
||||
<h2 id="org5ef9c5a"><span class="section-number-2">2</span> Developing in QMCkl</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org2f21e21" class="outline-3">
|
||||
<h3 id="org2f21e21"><span class="section-number-3">2.1</span> Literate programming</h3>
|
||||
<div id="outline-container-orgc6af78b" class="outline-3">
|
||||
<h3 id="orgc6af78b"><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-org94d381d" class="outline-3">
|
||||
<h3 id="org94d381d"><span class="section-number-3">2.2</span> Source code editing</h3>
|
||||
<div id="outline-container-org893f6c0" class="outline-3">
|
||||
<h3 id="org893f6c0"><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-orgea45ee7" class="outline-3">
|
||||
<h3 id="orgea45ee7"><span class="section-number-3">2.3</span> Choice of the programming language</h3>
|
||||
<div id="outline-container-org8a4fa48" class="outline-3">
|
||||
<h3 id="org8a4fa48"><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-orgcb22059" class="outline-3">
|
||||
<h3 id="orgcb22059"><span class="section-number-3">2.4</span> Coding rules</h3>
|
||||
<div id="outline-container-org6976d81" class="outline-3">
|
||||
<h3 id="org6976d81"><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-org00d2d17" class="outline-3">
|
||||
<h3 id="org00d2d17"><span class="section-number-3">2.5</span> Design of the library</h3>
|
||||
<div id="outline-container-org8facc29" class="outline-3">
|
||||
<h3 id="org8facc29"><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-orgddebb28" class="outline-3">
|
||||
<h3 id="orgddebb28"><span class="section-number-3">2.6</span> Naming conventions</h3>
|
||||
<div id="outline-container-org5a111e0" class="outline-3">
|
||||
<h3 id="org5a111e0"><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-orgc90e341" class="outline-3">
|
||||
<h3 id="orgc90e341"><span class="section-number-3">2.7</span> Application programming interface</h3>
|
||||
<div id="outline-container-orge695e31" class="outline-3">
|
||||
<h3 id="orge695e31"><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-orgb6ace12" class="outline-3">
|
||||
<h3 id="orgb6ace12"><span class="section-number-3">2.8</span> Global state</h3>
|
||||
<div id="outline-container-org6844d4d" class="outline-3">
|
||||
<h3 id="org6844d4d"><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="org69e3d6a">=context=</a> contains the global
|
||||
<code>qmckl_context_create</code> function. The <a id="org5e9f189">=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-org4be1849" class="outline-3">
|
||||
<h3 id="org4be1849"><span class="section-number-3">2.9</span> Headers</h3>
|
||||
<div id="outline-container-orgd35729a" class="outline-3">
|
||||
<h3 id="orgd35729a"><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-org8890dd3" class="outline-3">
|
||||
<h3 id="org8890dd3"><span class="section-number-3">2.10</span> Low-level functions</h3>
|
||||
<div id="outline-container-orga34bcc8" class="outline-3">
|
||||
<h3 id="orga34bcc8"><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="#org69e3d6a"><code>context</code></a>. They are not allowed to allocate/deallocate memory, and
|
||||
<a href="#org5e9f189"><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-orgdb9fabc" class="outline-3">
|
||||
<h3 id="orgdb9fabc"><span class="section-number-3">2.11</span> High-level functions</h3>
|
||||
<div id="outline-container-org1958ceb" class="outline-3">
|
||||
<h3 id="org1958ceb"><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,20 +747,20 @@ 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="#org69e3d6a"><code>context</code></a> variable.
|
||||
the <a href="#org5e9f189"><code>context</code></a> variable.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc0d3b7d" class="outline-3">
|
||||
<h3 id="orgc0d3b7d"><span class="section-number-3">2.12</span> Numerical precision</h3>
|
||||
<div id="outline-container-org19e7b23" class="outline-3">
|
||||
<h3 id="org19e7b23"><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="#org69e3d6a"><code>context</code></a>
|
||||
functions will use the precision specified in the <a href="#org5e9f189"><code>context</code></a>
|
||||
variable.
|
||||
</p>
|
||||
|
||||
@ -830,8 +830,8 @@ following points :
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org38c4183" class="outline-3">
|
||||
<h3 id="org38c4183"><span class="section-number-3">2.13</span> Algorithms</h3>
|
||||
<div id="outline-container-org5499ffe" class="outline-3">
|
||||
<h3 id="org5499ffe"><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
|
||||
@ -847,7 +847,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-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
340
qmckl_ao.html
340
qmckl_ao.html
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Atomic Orbitals</title>
|
||||
@ -333,71 +333,71 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org548a852">1. Context</a>
|
||||
<li><a href="#org6a0a1a0">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org47d4658">1.1. Data structure</a></li>
|
||||
<li><a href="#org3f8c1c0">1.2. Access functions</a></li>
|
||||
<li><a href="#orgfc7f671">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgc73d990">1.4. Fortran interfaces</a></li>
|
||||
<li><a href="#org23fca67">1.1. Data structure</a></li>
|
||||
<li><a href="#org6a3903a">1.2. Access functions</a></li>
|
||||
<li><a href="#org8fbbe1b">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org75806d6">1.4. Fortran interfaces</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org9626b0e">2. Radial part</a>
|
||||
<li><a href="#orge9c7a1e">2. Radial part</a>
|
||||
<ul>
|
||||
<li><a href="#orgb46a929">2.1. <span class="todo TODO">TODO</span> Helper functions to accelerate calculations</a></li>
|
||||
<li><a href="#org044833e">2.2. General functions for Gaussian basis functions</a></li>
|
||||
<li><a href="#org9286479">2.3. <span class="todo TODO">TODO</span> General functions for Slater basis functions</a></li>
|
||||
<li><a href="#org6fc0d8f">2.4. <span class="todo TODO">TODO</span> General functions for Radial functions on a grid</a></li>
|
||||
<li><a href="#org8757bb0">2.5. Computation of primitives</a>
|
||||
<li><a href="#org4437cb2">2.1. <span class="todo TODO">TODO</span> Helper functions to accelerate calculations</a></li>
|
||||
<li><a href="#orgbba40e7">2.2. General functions for Gaussian basis functions</a></li>
|
||||
<li><a href="#org9aaf09f">2.3. <span class="todo TODO">TODO</span> General functions for Slater basis functions</a></li>
|
||||
<li><a href="#orgd3108f7">2.4. <span class="todo TODO">TODO</span> General functions for Radial functions on a grid</a></li>
|
||||
<li><a href="#org6ecd647">2.5. Computation of primitives</a>
|
||||
<ul>
|
||||
<li><a href="#orgfff6236">2.5.1. Get</a></li>
|
||||
<li><a href="#org50a60cd">2.5.2. Provide</a></li>
|
||||
<li><a href="#orgddd5a52">2.5.3. Compute</a></li>
|
||||
<li><a href="#orgbd69d98">2.5.4. Test</a></li>
|
||||
<li><a href="#org5a5cc5e">2.5.5. Ideas for improvement</a></li>
|
||||
<li><a href="#org68c0c9e">2.5.1. Get</a></li>
|
||||
<li><a href="#orge567d20">2.5.2. Provide</a></li>
|
||||
<li><a href="#org9021f37">2.5.3. Compute</a></li>
|
||||
<li><a href="#orgc11d036">2.5.4. Test</a></li>
|
||||
<li><a href="#org230309f">2.5.5. Ideas for improvement</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org7160363">2.6. Computation of shells</a>
|
||||
<li><a href="#orgd751c52">2.6. Computation of shells</a>
|
||||
<ul>
|
||||
<li><a href="#org63772d3">2.6.1. Get</a></li>
|
||||
<li><a href="#orgf5a217c">2.6.2. Provide</a></li>
|
||||
<li><a href="#org426bdb6">2.6.3. Compute</a></li>
|
||||
<li><a href="#org565fcfe">2.6.4. Test</a></li>
|
||||
<li><a href="#org7ed6b7c">2.6.1. Get</a></li>
|
||||
<li><a href="#org95d166e">2.6.2. Provide</a></li>
|
||||
<li><a href="#org1cd6121">2.6.3. Compute</a></li>
|
||||
<li><a href="#org0dbbd81">2.6.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgde20da0">3. Polynomial part</a>
|
||||
<li><a href="#orgf9b50ee">3. Polynomial part</a>
|
||||
<ul>
|
||||
<li><a href="#orgf8ab615">3.1. General functions for Powers of \(x-X_i\)</a>
|
||||
<li><a href="#org2168e27">3.1. General functions for Powers of \(x-X_i\)</a>
|
||||
<ul>
|
||||
<li><a href="#orga730bf4">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orgc1bc204">3.1.2. C Header</a></li>
|
||||
<li><a href="#org051f101">3.1.3. Source</a></li>
|
||||
<li><a href="#orgd430936">3.1.4. C interface</a></li>
|
||||
<li><a href="#org5f54722">3.1.5. Fortran interface</a></li>
|
||||
<li><a href="#org9fc7950">3.1.6. Test</a></li>
|
||||
<li><a href="#org1ee38d6">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orgdb8a6ad">3.1.2. C Header</a></li>
|
||||
<li><a href="#orgb976e8c">3.1.3. Source</a></li>
|
||||
<li><a href="#org69974a8">3.1.4. C interface</a></li>
|
||||
<li><a href="#org75e86e8">3.1.5. Fortran interface</a></li>
|
||||
<li><a href="#org760fc74">3.1.6. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org855c453">3.2. General functions for Value, Gradient and Laplacian of a polynomial</a>
|
||||
<li><a href="#orgad4661b">3.2. General functions for Value, Gradient and Laplacian of a polynomial</a>
|
||||
<ul>
|
||||
<li><a href="#orgaeb4f92">3.2.1. Requirements</a></li>
|
||||
<li><a href="#orgf1e25be">3.2.2. C Header</a></li>
|
||||
<li><a href="#org0766589">3.2.3. Source</a></li>
|
||||
<li><a href="#org7f1a6ef">3.2.4. C interface</a></li>
|
||||
<li><a href="#org429c365">3.2.5. Fortran interface</a></li>
|
||||
<li><a href="#org90d2c4a">3.2.6. Test</a></li>
|
||||
<li><a href="#org32ca0a0">3.2.1. Requirements</a></li>
|
||||
<li><a href="#org54c97d7">3.2.2. C Header</a></li>
|
||||
<li><a href="#org27f1e05">3.2.3. Source</a></li>
|
||||
<li><a href="#orgdc061fe">3.2.4. C interface</a></li>
|
||||
<li><a href="#orgf9005c6">3.2.5. Fortran interface</a></li>
|
||||
<li><a href="#org87ecd3f">3.2.6. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org7787780">4. Combining radial and polynomial parts</a>
|
||||
<li><a href="#org0ca5835">4. Combining radial and polynomial parts</a>
|
||||
<ul>
|
||||
<li>
|
||||
<ul>
|
||||
<li><a href="#org45d5b27">4.0.1. Get</a></li>
|
||||
<li><a href="#org1745231">4.0.2. Provide</a></li>
|
||||
<li><a href="#org8cbc3d6">4.0.3. Compute</a></li>
|
||||
<li><a href="#orgc80d7dc">4.0.4. Test</a></li>
|
||||
<li><a href="#orgea2f2d5">4.0.1. Get</a></li>
|
||||
<li><a href="#org65e71ab">4.0.2. Provide</a></li>
|
||||
<li><a href="#org48f654a">4.0.3. Compute</a></li>
|
||||
<li><a href="#orgd33b9cf">4.0.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -406,8 +406,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org548a852" class="outline-2">
|
||||
<h2 id="org548a852"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org6a0a1a0" class="outline-2">
|
||||
<h2 id="org6a0a1a0"><span class="section-number-2">1</span> Context</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The following arrays are stored in the context:
|
||||
@ -679,8 +679,8 @@ prim_factor = [ 1.0006253235944540e+01, 2.4169531573445120e+00, 7.96109248497664
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org47d4658" class="outline-3">
|
||||
<h3 id="org47d4658"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org23fca67" class="outline-3">
|
||||
<h3 id="org23fca67"><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> {
|
||||
@ -735,7 +735,10 @@ this mechanism.
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_init_ao_basis</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>) {
|
||||
|
||||
<span style="color: #a020f0;">if</span> (qmckl_context_check(context) == QMCKL_NULL_CONTEXT) {
|
||||
<span style="color: #a020f0;">return</span> <span style="color: #008b8b;">false</span>;
|
||||
<span style="color: #a020f0;">return</span> qmckl_failwith( context,
|
||||
QMCKL_INVALID_CONTEXT,
|
||||
<span style="color: #8b2252;">"qmckl_init_ao_basis"</span>,
|
||||
<span style="color: #008b8b;">NULL</span>);
|
||||
}
|
||||
|
||||
<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;
|
||||
@ -753,23 +756,29 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3f8c1c0" class="outline-3">
|
||||
<h3 id="org3f8c1c0"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org6a3903a" class="outline-3">
|
||||
<h3 id="org6a3903a"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
In the following functions, when an array is passed as an argument
|
||||
the size of the array should be also passed to check that the array
|
||||
is large enough to accept the data.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
When all the data for the AOs have been provided, the following
|
||||
function returns <code>true</code>.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_ao_basis_provided</span> (<span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>);
|
||||
<pre class="src src-c"><span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_ao_basis_provided</span> (<span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>);
|
||||
</pre>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfc7f671" class="outline-3">
|
||||
<h3 id="orgfc7f671"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org8fbbe1b" class="outline-3">
|
||||
<h3 id="org8fbbe1b"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
To set the basis set, all the following functions need to be
|
||||
@ -807,20 +816,20 @@ the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc73d990" class="outline-3">
|
||||
<h3 id="orgc73d990"><span class="section-number-3">1.4</span> Fortran interfaces</h3>
|
||||
<div id="outline-container-org75806d6" class="outline-3">
|
||||
<h3 id="org75806d6"><span class="section-number-3">1.4</span> Fortran interfaces</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9626b0e" class="outline-2">
|
||||
<h2 id="org9626b0e"><span class="section-number-2">2</span> Radial part</h2>
|
||||
<div id="outline-container-orge9c7a1e" class="outline-2">
|
||||
<h2 id="orge9c7a1e"><span class="section-number-2">2</span> Radial part</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-orgb46a929" class="outline-3">
|
||||
<h3 id="orgb46a929"><span class="section-number-3">2.1</span> <span class="todo TODO">TODO</span> Helper functions to accelerate calculations</h3>
|
||||
<div id="outline-container-org4437cb2" class="outline-3">
|
||||
<h3 id="org4437cb2"><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-org044833e" class="outline-3">
|
||||
<h3 id="org044833e"><span class="section-number-3">2.2</span> General functions for Gaussian basis functions</h3>
|
||||
<div id="outline-container-orgbba40e7" class="outline-3">
|
||||
<h3 id="orgbba40e7"><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
|
||||
@ -985,12 +994,9 @@ Requirements
|
||||
<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_gaussian_vgl</span>(context) <span style="color: #a020f0;">bind</span>(C)
|
||||
<span style="color: #a020f0;">use</span> <span style="color: #0000ff;">qmckl</span>
|
||||
<span style="color: #a020f0;">use</span> <span style="color: #0000ff;">qmckl_probes_f</span>
|
||||
|
||||
<span style="color: #a020f0;">implicit</span> <span style="color: #228b22;">none</span>
|
||||
|
||||
<span style="color: #228b22;">integer</span>(<span style="color: #008b8b;">c_int64_t</span>), <span style="color: #a020f0;">intent</span>(in), <span style="color: #a020f0;">value</span> ::<span style="color: #a0522d;"> context</span>
|
||||
<span style="color: #228b22;">logical</span>(<span style="color: #008b8b;">C_BOOL</span>) ::<span style="color: #a0522d;"> vfc_err</span>
|
||||
|
||||
<span style="color: #228b22;">integer</span>*8 ::<span style="color: #a0522d;"> n, ldv, j, i</span>
|
||||
<span style="color: #228b22;">double precision</span> ::<span style="color: #a0522d;"> X(3), R(3), Y(3), r2</span>
|
||||
@ -999,13 +1005,6 @@ Requirements
|
||||
|
||||
epsilon = qmckl_get_numprec_epsilon(context)
|
||||
|
||||
<span style="color: #483d8b;">#ifdef</span> VFC_CI
|
||||
! <span style="color: #b22222;">Multplying epsilon by 16 = 2^4 is equivalent to asking 4 significant digits</span>
|
||||
! <span style="color: #b22222;">less. This makes sense because we are adding noise with MCA so we can't be</span>
|
||||
! <span style="color: #b22222;">as strict on the accuracy target.</span>
|
||||
epsilon = epsilon * 16
|
||||
<span style="color: #483d8b;">#endif</span>
|
||||
|
||||
X = (/ 1.1 , 2.2 , 3.3 /)
|
||||
R = (/ 0.1 , 1.2 , -2.3 /)
|
||||
Y(:) = X(:) - R(:)
|
||||
@ -1022,29 +1021,10 @@ Requirements
|
||||
|
||||
test_qmckl_ao_gaussian_vgl = <span style="color: #a020f0;">&</span>
|
||||
qmckl_ao_gaussian_vgl(context, X, R, n, A, VGL, ldv)
|
||||
|
||||
vfc_err = qmckl_probe_check(<span style="color: #8b2252;">"ao"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #8b2252;">"gaussian_vgl_2_1"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">DBLE</span>(VGL(2,1)), <span style="color: #a020f0;">DBLE</span>(0), <span style="color: #a020f0;">DBLE</span>(epsilon))
|
||||
|
||||
vfc_err = qmckl_probe_check(<span style="color: #8b2252;">"ao"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #8b2252;">"gaussian_vgl_2_2"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">DBLE</span>(VGL(2,2)), <span style="color: #a020f0;">DBLE</span>(0), <span style="color: #a020f0;">DBLE</span>(epsilon))
|
||||
|
||||
vfc_err = qmckl_probe_check(<span style="color: #8b2252;">"ao"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #8b2252;">"gaussian_vgl_2_3"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">DBLE</span>(VGL(2,3)), <span style="color: #a020f0;">DBLE</span>(0), <span style="color: #a020f0;">DBLE</span>(epsilon))
|
||||
|
||||
vfc_err = qmckl_probe_check(<span style="color: #8b2252;">"ao"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #8b2252;">"gaussian_vgl_2_4"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">DBLE</span>(VGL(2,4)), <span style="color: #a020f0;">DBLE</span>(0), <span style="color: #a020f0;">DBLE</span>(epsilon))
|
||||
|
||||
vfc_err = qmckl_probe_check(<span style="color: #8b2252;">"ao"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #8b2252;">"gaussian_vgl_2_5"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">DBLE</span>(VGL(2,5)), <span style="color: #a020f0;">DBLE</span>(0), <span style="color: #a020f0;">DBLE</span>(epsilon))
|
||||
|
||||
<span style="color: #483d8b;">#ifndef</span> VFC_CI
|
||||
<span style="color: #a020f0;">if</span> (test_qmckl_ao_gaussian_vgl /= 0) <span style="color: #a020f0;">return</span>
|
||||
<span style="color: #483d8b;">#endif</span>
|
||||
|
||||
test_qmckl_ao_gaussian_vgl = -1
|
||||
|
||||
<span style="color: #483d8b;">#ifndef</span> VFC_CI
|
||||
<span style="color: #a020f0;">do</span> i=1,n
|
||||
test_qmckl_ao_gaussian_vgl = -11
|
||||
<span style="color: #a020f0;">if</span> (dabs(1.d0 - VGL(i,1) / (<span style="color: #a020f0;">&</span>
|
||||
@ -1071,7 +1051,6 @@ Requirements
|
||||
A(i) * (4.d0*r2*A(i) - 6.d0) * dexp(-A(i) * r2) <span style="color: #a020f0;">&</span>
|
||||
)) > epsilon ) <span style="color: #a020f0;">return</span>
|
||||
<span style="color: #a020f0;">end do</span>
|
||||
<span style="color: #483d8b;">#endif</span>
|
||||
|
||||
test_qmckl_ao_gaussian_vgl = 0
|
||||
|
||||
@ -1082,18 +1061,18 @@ Requirements
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9286479" class="outline-3">
|
||||
<h3 id="org9286479"><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-org9aaf09f" class="outline-3">
|
||||
<h3 id="org9aaf09f"><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-org6fc0d8f" class="outline-3">
|
||||
<h3 id="org6fc0d8f"><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-orgd3108f7" class="outline-3">
|
||||
<h3 id="orgd3108f7"><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-org8757bb0" class="outline-3">
|
||||
<h3 id="org8757bb0"><span class="section-number-3">2.5</span> Computation of primitives</h3>
|
||||
<div id="outline-container-org6ecd647" class="outline-3">
|
||||
<h3 id="org6ecd647"><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-orgfff6236" class="outline-4">
|
||||
<h4 id="orgfff6236"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div id="outline-container-org68c0c9e" class="outline-4">
|
||||
<h4 id="org68c0c9e"><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>);
|
||||
@ -1102,14 +1081,14 @@ Requirements
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org50a60cd" class="outline-4">
|
||||
<h4 id="org50a60cd"><span class="section-number-4">2.5.2</span> Provide</h4>
|
||||
<div id="outline-container-orge567d20" class="outline-4">
|
||||
<h4 id="orge567d20"><span class="section-number-4">2.5.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgddd5a52" class="outline-4">
|
||||
<h4 id="orgddd5a52"><span class="section-number-4">2.5.3</span> Compute</h4>
|
||||
<div id="outline-container-org9021f37" class="outline-4">
|
||||
<h4 id="org9021f37"><span class="section-number-4">2.5.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-5-3">
|
||||
<table id="orgc37ede6" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org0f6b92e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1243,12 +1222,12 @@ Requirements
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbd69d98" class="outline-4">
|
||||
<h4 id="orgbd69d98"><span class="section-number-4">2.5.4</span> Test</h4>
|
||||
<div id="outline-container-orgc11d036" class="outline-4">
|
||||
<h4 id="orgc11d036"><span class="section-number-4">2.5.4</span> Test</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5a5cc5e" class="outline-4">
|
||||
<h4 id="org5a5cc5e"><span class="section-number-4">2.5.5</span> Ideas for improvement</h4>
|
||||
<div id="outline-container-org230309f" class="outline-4">
|
||||
<h4 id="org230309f"><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;">j : electrons</span>
|
||||
@ -1282,12 +1261,12 @@ k=0;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7160363" class="outline-3">
|
||||
<h3 id="org7160363"><span class="section-number-3">2.6</span> Computation of shells</h3>
|
||||
<div id="outline-container-orgd751c52" class="outline-3">
|
||||
<h3 id="orgd751c52"><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-org63772d3" class="outline-4">
|
||||
<h4 id="org63772d3"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div id="outline-container-org7ed6b7c" class="outline-4">
|
||||
<h4 id="org7ed6b7c"><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>);
|
||||
@ -1296,14 +1275,14 @@ k=0;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf5a217c" class="outline-4">
|
||||
<h4 id="orgf5a217c"><span class="section-number-4">2.6.2</span> Provide</h4>
|
||||
<div id="outline-container-org95d166e" class="outline-4">
|
||||
<h4 id="org95d166e"><span class="section-number-4">2.6.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org426bdb6" class="outline-4">
|
||||
<h4 id="org426bdb6"><span class="section-number-4">2.6.3</span> Compute</h4>
|
||||
<div id="outline-container-org1cd6121" class="outline-4">
|
||||
<h4 id="org1cd6121"><span class="section-number-4">2.6.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-6-3">
|
||||
<table id="org422c7e1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgc86312a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1524,14 +1503,14 @@ k=0;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org565fcfe" class="outline-4">
|
||||
<h4 id="org565fcfe"><span class="section-number-4">2.6.4</span> Test</h4>
|
||||
<div id="outline-container-org0dbbd81" class="outline-4">
|
||||
<h4 id="org0dbbd81"><span class="section-number-4">2.6.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgde20da0" class="outline-2">
|
||||
<h2 id="orgde20da0"><span class="section-number-2">3</span> Polynomial part</h2>
|
||||
<div id="outline-container-orgf9b50ee" class="outline-2">
|
||||
<h2 id="orgf9b50ee"><span class="section-number-2">3</span> Polynomial part</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
<p>
|
||||
Going from the atomic basis set to AOs implies a systematic
|
||||
@ -1551,8 +1530,8 @@ f & : & f_{xxx}, f_{xxy}, f_{xxz}, f_{xyy}, f_{xyz}, f_{xzz}, f_{yyy}, f_{yyz},
|
||||
\end{eqnarray}
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf8ab615" class="outline-3">
|
||||
<h3 id="orgf8ab615"><span class="section-number-3">3.1</span> General functions for Powers of \(x-X_i\)</h3>
|
||||
<div id="outline-container-org2168e27" class="outline-3">
|
||||
<h3 id="org2168e27"><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>
|
||||
@ -1564,7 +1543,7 @@ the \(n\) points:
|
||||
\[ P_{ik} = X_i^k \]
|
||||
</p>
|
||||
|
||||
<table id="org3a55d4a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orga880dba" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1622,8 +1601,8 @@ the \(n\) points:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga730bf4" class="outline-4">
|
||||
<h4 id="orga730bf4"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org1ee38d6" class="outline-4">
|
||||
<h4 id="org1ee38d6"><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>
|
||||
@ -1636,8 +1615,8 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc1bc204" class="outline-4">
|
||||
<h4 id="orgc1bc204"><span class="section-number-4">3.1.2</span> C Header</h4>
|
||||
<div id="outline-container-orgdb8a6ad" class="outline-4">
|
||||
<h4 id="orgdb8a6ad"><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> (
|
||||
@ -1652,8 +1631,8 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org051f101" class="outline-4">
|
||||
<h4 id="org051f101"><span class="section-number-4">3.1.3</span> Source</h4>
|
||||
<div id="outline-container-orgb976e8c" class="outline-4">
|
||||
<h4 id="orgb976e8c"><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>
|
||||
@ -1704,25 +1683,21 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd430936" class="outline-4">
|
||||
<h4 id="orgd430936"><span class="section-number-4">3.1.4</span> C interface</h4>
|
||||
<div id="outline-container-org69974a8" class="outline-4">
|
||||
<h4 id="org69974a8"><span class="section-number-4">3.1.4</span> C interface</h4>
|
||||
</div>
|
||||
<div id="outline-container-org5f54722" class="outline-4">
|
||||
<h4 id="org5f54722"><span class="section-number-4">3.1.5</span> Fortran interface</h4>
|
||||
<div id="outline-container-org75e86e8" class="outline-4">
|
||||
<h4 id="org75e86e8"><span class="section-number-4">3.1.5</span> Fortran interface</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9fc7950" class="outline-4">
|
||||
<h4 id="org9fc7950"><span class="section-number-4">3.1.6</span> Test</h4>
|
||||
<div id="outline-container-org760fc74" class="outline-4">
|
||||
<h4 id="org760fc74"><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)
|
||||
<span style="color: #a020f0;">use</span> <span style="color: #0000ff;">qmckl</span>
|
||||
<span style="color: #a020f0;">use</span> <span style="color: #0000ff;">qmckl_probes_f</span>
|
||||
|
||||
<span style="color: #a020f0;">implicit</span> <span style="color: #228b22;">none</span>
|
||||
|
||||
<span style="color: #228b22;">logical</span>(<span style="color: #008b8b;">C_BOOL</span>) ::<span style="color: #a0522d;"> vfc_err</span>
|
||||
|
||||
<span style="color: #228b22;">integer</span>(qmckl_context), <span style="color: #a020f0;">intent</span>(in), <span style="color: #a020f0;">value</span> ::<span style="color: #a0522d;"> context</span>
|
||||
|
||||
<span style="color: #228b22;">integer</span>*8 ::<span style="color: #a0522d;"> n, LDP</span>
|
||||
@ -1733,13 +1708,6 @@ the \(n\) points:
|
||||
|
||||
epsilon = qmckl_get_numprec_epsilon(context)
|
||||
|
||||
<span style="color: #483d8b;">#ifdef</span> VFC_CI
|
||||
! <span style="color: #b22222;">Multplying epsilon by 16 = 2^4 is equivalent to asking 4 significant digits</span>
|
||||
! <span style="color: #b22222;">less. This makes sense because we are adding noise with MCA so we can't be</span>
|
||||
! <span style="color: #b22222;">as strict on the accuracy target.</span>
|
||||
epsilon = epsilon * 16
|
||||
<span style="color: #483d8b;">#endif</span>
|
||||
|
||||
n = 100;
|
||||
LDP = 10;
|
||||
|
||||
@ -1751,15 +1719,10 @@ the \(n\) points:
|
||||
<span style="color: #a020f0;">end do</span>
|
||||
|
||||
test_qmckl_ao_power = qmckl_ao_power(context, n, X, LMAX, P, LDP)
|
||||
|
||||
vfc_err = qmckl_probe_check(<span style="color: #8b2252;">"ao"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #8b2252;">"power_2_2"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">DBLE</span>(P(2,2)), <span style="color: #a020f0;">DBLE</span>(0), <span style="color: #a020f0;">DBLE</span>(epsilon))
|
||||
|
||||
<span style="color: #a020f0;">if</span> (test_qmckl_ao_power /= QMCKL_SUCCESS) <span style="color: #a020f0;">return</span>
|
||||
|
||||
test_qmckl_ao_power = QMCKL_FAILURE
|
||||
|
||||
<span style="color: #483d8b;">#ifndef</span> VFC_CI
|
||||
<span style="color: #a020f0;">do</span> j=1,n
|
||||
<span style="color: #a020f0;">do</span> i=1,LMAX(j)
|
||||
<span style="color: #a020f0;">if</span> ( X(j)**i == 0.d0 ) <span style="color: #a020f0;">then</span>
|
||||
@ -1769,7 +1732,6 @@ the \(n\) points:
|
||||
<span style="color: #a020f0;">end if</span>
|
||||
<span style="color: #a020f0;">end do</span>
|
||||
<span style="color: #a020f0;">end do</span>
|
||||
<span style="color: #483d8b;">#endif</span>
|
||||
|
||||
test_qmckl_ao_power = QMCKL_SUCCESS
|
||||
<span style="color: #a020f0;">deallocate</span>(X,P,LMAX)
|
||||
@ -1780,8 +1742,8 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org855c453" class="outline-3">
|
||||
<h3 id="org855c453"><span class="section-number-3">3.2</span> General functions for Value, Gradient and Laplacian of a polynomial</h3>
|
||||
<div id="outline-container-orgad4661b" class="outline-3">
|
||||
<h3 id="orgad4661b"><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\)
|
||||
@ -1826,7 +1788,7 @@ Laplacians at a given point in space, of all polynomials with an
|
||||
angular momentum up to <code>lmax</code>.
|
||||
</p>
|
||||
|
||||
<table id="org9be2687" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgdabe1ae" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1905,8 +1867,8 @@ angular momentum up to <code>lmax</code>.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgaeb4f92" class="outline-4">
|
||||
<h4 id="orgaeb4f92"><span class="section-number-4">3.2.1</span> Requirements</h4>
|
||||
<div id="outline-container-org32ca0a0" class="outline-4">
|
||||
<h4 id="org32ca0a0"><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>
|
||||
@ -1931,8 +1893,8 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf1e25be" class="outline-4">
|
||||
<h4 id="orgf1e25be"><span class="section-number-4">3.2.2</span> C Header</h4>
|
||||
<div id="outline-container-org54c97d7" class="outline-4">
|
||||
<h4 id="org54c97d7"><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> (
|
||||
@ -1950,8 +1912,8 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0766589" class="outline-4">
|
||||
<h4 id="org0766589"><span class="section-number-4">3.2.3</span> Source</h4>
|
||||
<div id="outline-container-org27f1e05" class="outline-4">
|
||||
<h4 id="org27f1e05"><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>
|
||||
@ -2085,26 +2047,23 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7f1a6ef" class="outline-4">
|
||||
<h4 id="org7f1a6ef"><span class="section-number-4">3.2.4</span> C interface</h4>
|
||||
<div id="outline-container-orgdc061fe" class="outline-4">
|
||||
<h4 id="orgdc061fe"><span class="section-number-4">3.2.4</span> C interface</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org429c365" class="outline-4">
|
||||
<h4 id="org429c365"><span class="section-number-4">3.2.5</span> Fortran interface</h4>
|
||||
<div id="outline-container-orgf9005c6" class="outline-4">
|
||||
<h4 id="orgf9005c6"><span class="section-number-4">3.2.5</span> Fortran interface</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org90d2c4a" class="outline-4">
|
||||
<h4 id="org90d2c4a"><span class="section-number-4">3.2.6</span> Test</h4>
|
||||
<div id="outline-container-org87ecd3f" class="outline-4">
|
||||
<h4 id="org87ecd3f"><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)
|
||||
<span style="color: #a020f0;">use</span> <span style="color: #0000ff;">qmckl</span>
|
||||
<span style="color: #a020f0;">use</span> <span style="color: #0000ff;">qmckl_probes_f</span>
|
||||
|
||||
<span style="color: #a020f0;">implicit</span> <span style="color: #228b22;">none</span>
|
||||
|
||||
<span style="color: #228b22;">integer</span>(<span style="color: #008b8b;">c_int64_t</span>), <span style="color: #a020f0;">intent</span>(in), <span style="color: #a020f0;">value</span> ::<span style="color: #a0522d;"> context</span>
|
||||
<span style="color: #228b22;">logical</span>(<span style="color: #008b8b;">C_BOOL</span>) ::<span style="color: #a0522d;"> vfc_err</span>
|
||||
|
||||
<span style="color: #228b22;">integer</span> ::<span style="color: #a0522d;"> lmax, d, i</span>
|
||||
<span style="color: #228b22;">integer</span>, <span style="color: #a020f0;">allocatable</span> ::<span style="color: #a0522d;"> L(:,:)</span>
|
||||
@ -2131,25 +2090,9 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
test_qmckl_ao_polynomial_vgl = <span style="color: #a020f0;">&</span>
|
||||
qmckl_ao_polynomial_vgl(context, X, R, lmax, n, L, ldl, VGL, ldv)
|
||||
|
||||
vfc_err = qmckl_probe_check(<span style="color: #8b2252;">"ao"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #8b2252;">"polynomial_vgl_1_2"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">DBLE</span>(VGL(1,2)), <span style="color: #a020f0;">DBLE</span>(0), <span style="color: #a020f0;">DBLE</span>(epsilon))
|
||||
|
||||
vfc_err = qmckl_probe_check(<span style="color: #8b2252;">"ao"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #8b2252;">"polynomial_vgl_2_2"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">DBLE</span>(VGL(2,2)), <span style="color: #a020f0;">DBLE</span>(0), <span style="color: #a020f0;">DBLE</span>(epsilon))
|
||||
|
||||
vfc_err = qmckl_probe_check(<span style="color: #8b2252;">"ao"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #8b2252;">"polynomial_vgl_3_2"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">DBLE</span>(VGL(3,2)), <span style="color: #a020f0;">DBLE</span>(0), <span style="color: #a020f0;">DBLE</span>(epsilon))
|
||||
|
||||
vfc_err = qmckl_probe_check(<span style="color: #8b2252;">"ao"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #8b2252;">"polynomial_vgl_4_2"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">DBLE</span>(VGL(4,2)), <span style="color: #a020f0;">DBLE</span>(0), <span style="color: #a020f0;">DBLE</span>(epsilon))
|
||||
|
||||
vfc_err = qmckl_probe_check(<span style="color: #8b2252;">"ao"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #8b2252;">"polynomial_vgl_5_2"</span>//<span style="color: #008b8b;">C_NULL_CHAR</span>, <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">DBLE</span>(VGL(5,2)), <span style="color: #a020f0;">DBLE</span>(0), <span style="color: #a020f0;">DBLE</span>(epsilon))
|
||||
|
||||
<span style="color: #a020f0;">if</span> (test_qmckl_ao_polynomial_vgl /= QMCKL_SUCCESS) <span style="color: #a020f0;">return</span>
|
||||
<span style="color: #a020f0;">if</span> (n /= d) <span style="color: #a020f0;">return</span>
|
||||
|
||||
<span style="color: #483d8b;">#ifndef</span> VFC_CI
|
||||
<span style="color: #a020f0;">do</span> j=1,n
|
||||
test_qmckl_ao_polynomial_vgl = QMCKL_FAILURE
|
||||
<span style="color: #a020f0;">do</span> i=1,3
|
||||
@ -2200,7 +2143,6 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
<span style="color: #a020f0;">end if</span>
|
||||
<span style="color: #a020f0;">if</span> (dabs(1.d0 - VGL(5,j) / w) > epsilon ) <span style="color: #a020f0;">return</span>
|
||||
<span style="color: #a020f0;">end do</span>
|
||||
<span style="color: #483d8b;">#endif</span>
|
||||
|
||||
test_qmckl_ao_polynomial_vgl = QMCKL_SUCCESS
|
||||
|
||||
@ -2219,12 +2161,12 @@ assert(0 == test_qmckl_ao_polynomial_vgl(context));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7787780" class="outline-2">
|
||||
<h2 id="org7787780"><span class="section-number-2">4</span> Combining radial and polynomial parts</h2>
|
||||
<div id="outline-container-org0ca5835" class="outline-2">
|
||||
<h2 id="org0ca5835"><span class="section-number-2">4</span> Combining radial and polynomial parts</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-org45d5b27" class="outline-4">
|
||||
<h4 id="org45d5b27"><span class="section-number-4">4.0.1</span> Get</h4>
|
||||
<div id="outline-container-orgea2f2d5" class="outline-4">
|
||||
<h4 id="orgea2f2d5"><span class="section-number-4">4.0.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-4-0-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_ao_vgl</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">ao_vgl</span>);
|
||||
@ -2233,14 +2175,14 @@ assert(0 == test_qmckl_ao_polynomial_vgl(context));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1745231" class="outline-4">
|
||||
<h4 id="org1745231"><span class="section-number-4">4.0.2</span> Provide</h4>
|
||||
<div id="outline-container-org65e71ab" class="outline-4">
|
||||
<h4 id="org65e71ab"><span class="section-number-4">4.0.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8cbc3d6" class="outline-4">
|
||||
<h4 id="org8cbc3d6"><span class="section-number-4">4.0.3</span> Compute</h4>
|
||||
<div id="outline-container-org48f654a" class="outline-4">
|
||||
<h4 id="org48f654a"><span class="section-number-4">4.0.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-4-0-3">
|
||||
<table id="org1ee4a82" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org07b4eb2" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2505,14 +2447,14 @@ assert(0 == test_qmckl_ao_polynomial_vgl(context));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc80d7dc" class="outline-4">
|
||||
<h4 id="orgc80d7dc"><span class="section-number-4">4.0.4</span> Test</h4>
|
||||
<div id="outline-container-orgd33b9cf" class="outline-4">
|
||||
<h4 id="orgd33b9cf"><span class="section-number-4">4.0.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>BLAS functions</title>
|
||||
@ -333,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="#org5b1a853">1. Matrix operations</a>
|
||||
<li><a href="#orgfeac7d5">1. Matrix operations</a>
|
||||
<ul>
|
||||
<li><a href="#org6c3319a">1.1. <code>qmckl_dgemm</code></a>
|
||||
<li><a href="#org173d272">1.1. <code>qmckl_dgemm</code></a>
|
||||
<ul>
|
||||
<li><a href="#org618be13">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org41009d2">1.1.2. C header</a></li>
|
||||
<li><a href="#org1b22855">1.1.3. Source</a></li>
|
||||
<li><a href="#orgf41d394">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org23f63e4">1.1.2. C header</a></li>
|
||||
<li><a href="#org7e02848">1.1.3. Source</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -348,19 +348,19 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5b1a853" class="outline-2">
|
||||
<h2 id="org5b1a853"><span class="section-number-2">1</span> Matrix operations</h2>
|
||||
<div id="outline-container-orgfeac7d5" class="outline-2">
|
||||
<h2 id="orgfeac7d5"><span class="section-number-2">1</span> Matrix operations</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-org6c3319a" class="outline-3">
|
||||
<h3 id="org6c3319a"><span class="section-number-3">1.1</span> <code>qmckl_dgemm</code></h3>
|
||||
<div id="outline-container-org173d272" class="outline-3">
|
||||
<h3 id="org173d272"><span class="section-number-3">1.1</span> <code>qmckl_dgemm</code></h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<p>
|
||||
Matrix multiply l\(C_{ij} = \beta C_{ij} + \alpha \sum_{k} A_{ik} \cdot B_{kj}\) using Fortran <code>matmul</code> function.
|
||||
TODO: Add description about the external library dependence.
|
||||
</p>
|
||||
|
||||
<table id="org3c5b70a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org1e4993b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -474,8 +474,8 @@ TODO: Add description about the external library dependence.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org618be13" class="outline-4">
|
||||
<h4 id="org618be13"><span class="section-number-4">1.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgf41d394" class="outline-4">
|
||||
<h4 id="orgf41d394"><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>
|
||||
@ -492,8 +492,8 @@ TODO: Add description about the external library dependence.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org41009d2" class="outline-4">
|
||||
<h4 id="org41009d2"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div id="outline-container-org23f63e4" class="outline-4">
|
||||
<h4 id="org23f63e4"><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_dgemm</span> (
|
||||
@ -517,8 +517,8 @@ TODO: Add description about the external library dependence.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org1b22855" class="outline-4">
|
||||
<h4 id="org1b22855"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div id="outline-container-org7e02848" class="outline-4">
|
||||
<h4 id="org7e02848"><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_dgemm_f</span><span style="color: #000000; background-color: #ffffff;">(context, TransA, TransB, m, n, k, alpha, A, LDA, B, LDB, beta, C, LDC)</span><span style="color: #a0522d;"> </span><span style="color: #a020f0;">&</span>
|
||||
@ -617,7 +617,7 @@ TODO: Add description about the external library dependence.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<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="#orga00e0d9">1. Context handling</a>
|
||||
<li><a href="#org73a5f9e">1. Context handling</a>
|
||||
<ul>
|
||||
<li><a href="#org2856e21">1.1. Data structure</a></li>
|
||||
<li><a href="#org6bf1c31">1.2. Creation</a></li>
|
||||
<li><a href="#org62459e9">1.3. Locking</a></li>
|
||||
<li><a href="#org6c2092b">1.4. <span class="todo TODO">TODO</span> Copy</a></li>
|
||||
<li><a href="#orgad1435b">1.5. Destroy</a></li>
|
||||
<li><a href="#org8b7ae1d">1.1. Data structure</a></li>
|
||||
<li><a href="#orgc5131ba">1.2. Creation</a></li>
|
||||
<li><a href="#orgc8b31b5">1.3. Locking</a></li>
|
||||
<li><a href="#orga2b11a5">1.4. <span class="todo TODO">TODO</span> Copy</a></li>
|
||||
<li><a href="#orgfc9a858">1.5. Destroy</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga00e0d9" class="outline-2">
|
||||
<h2 id="orga00e0d9"><span class="section-number-2">1</span> Context handling</h2>
|
||||
<div id="outline-container-org73a5f9e" class="outline-2">
|
||||
<h2 id="org73a5f9e"><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="org9040846"><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="org731da29"><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-org2856e21" class="outline-3">
|
||||
<h3 id="org2856e21"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org8b7ae1d" class="outline-3">
|
||||
<h3 id="org8b7ae1d"><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="#org6bf1c31">qmckl<sub>context</sub><sub>create</sub></a>, <a href="#orgad1435b">qmckl<sub>context</sub><sub>destroy</sub></a> and <a href="#org6c2092b">qmckl<sub>context</sub><sub>copy</sub></a>
|
||||
<a href="#orgc5131ba">qmckl<sub>context</sub><sub>create</sub></a>, <a href="#orgfc9a858">qmckl<sub>context</sub><sub>destroy</sub></a> and <a href="#orga2b11a5">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-org6bf1c31" class="outline-3">
|
||||
<h3 id="org6bf1c31"><span class="section-number-3">1.2</span> Creation</h3>
|
||||
<div id="outline-container-orgc5131ba" class="outline-3">
|
||||
<h3 id="orgc5131ba"><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-org62459e9" class="outline-3">
|
||||
<h3 id="org62459e9"><span class="section-number-3">1.3</span> Locking</h3>
|
||||
<div id="outline-container-orgc8b31b5" class="outline-3">
|
||||
<h3 id="orgc8b31b5"><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-org6c2092b" class="outline-3">
|
||||
<h3 id="org6c2092b"><span class="section-number-3">1.4</span> <span class="todo TODO">TODO</span> Copy</h3>
|
||||
<div id="outline-container-orga2b11a5" class="outline-3">
|
||||
<h3 id="orga2b11a5"><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-orgad1435b" class="outline-3">
|
||||
<h3 id="orgad1435b"><span class="section-number-3">1.5</span> Destroy</h3>
|
||||
<div id="outline-container-orgfc9a858" class="outline-3">
|
||||
<h3 id="orgfc9a858"><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-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<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="#orgc39fcc6">1. Squared distance</a>
|
||||
<li><a href="#org7fe888d">1. Squared distance</a>
|
||||
<ul>
|
||||
<li><a href="#org26a609a">1.1. <code>qmckl_distance_sq</code></a>
|
||||
<li><a href="#org71cdea6">1.1. <code>qmckl_distance_sq</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgc53cce3">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org035ce79">1.1.2. C header</a></li>
|
||||
<li><a href="#org7de7893">1.1.3. Source</a></li>
|
||||
<li><a href="#org49844b6">1.1.4. Performance</a></li>
|
||||
<li><a href="#orgffa589d">1.1.1. Requirements</a></li>
|
||||
<li><a href="#orgd95d925">1.1.2. C header</a></li>
|
||||
<li><a href="#org6306260">1.1.3. Source</a></li>
|
||||
<li><a href="#orgd667e48">1.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgdcf4e88">2. Distance</a>
|
||||
<li><a href="#org7e8356e">2. Distance</a>
|
||||
<ul>
|
||||
<li><a href="#org762c01e">2.1. <code>qmckl_distance</code></a>
|
||||
<li><a href="#orga375205">2.1. <code>qmckl_distance</code></a>
|
||||
<ul>
|
||||
<li><a href="#org2a35432">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org8f9a53f">2.1.2. C header</a></li>
|
||||
<li><a href="#orgc947543">2.1.3. Source</a></li>
|
||||
<li><a href="#org1cdc0e9">2.1.4. Performance</a></li>
|
||||
<li><a href="#orgc0cda02">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org99e4a66">2.1.2. C header</a></li>
|
||||
<li><a href="#org9607da6">2.1.3. Source</a></li>
|
||||
<li><a href="#orgfa1d64e">2.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgaad556d">3. Rescaled Distance</a>
|
||||
<li><a href="#org993151f">3. Rescaled Distance</a>
|
||||
<ul>
|
||||
<li><a href="#org83d2bb7">3.1. <code>qmckl_distance_rescaled</code></a>
|
||||
<li><a href="#org453532f">3.1. <code>qmckl_distance_rescaled</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgefd0d2e">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orgaa7420f">3.1.2. C header</a></li>
|
||||
<li><a href="#org598b191">3.1.3. Source</a></li>
|
||||
<li><a href="#org7156ede">3.1.4. Performance</a></li>
|
||||
<li><a href="#orgdbdac40">3.1.1. Requirements</a></li>
|
||||
<li><a href="#org8e80581">3.1.2. C header</a></li>
|
||||
<li><a href="#orgbbd4efb">3.1.3. Source</a></li>
|
||||
<li><a href="#org38ddf43">3.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgb8f3165">4. Rescaled Distance Derivatives</a>
|
||||
<li><a href="#org63e3605">4. Rescaled Distance Derivatives</a>
|
||||
<ul>
|
||||
<li><a href="#orge3d87b3">4.1. <code>qmckl_distance_rescaled_deriv_e</code></a>
|
||||
<li><a href="#org154223e">4.1. <code>qmckl_distance_rescaled_deriv_e</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgde36da6">4.1.1. Requirements</a></li>
|
||||
<li><a href="#org27c050a">4.1.2. C header</a></li>
|
||||
<li><a href="#org111eb1d">4.1.3. Source</a></li>
|
||||
<li><a href="#org75df55a">4.1.4. Performance</a></li>
|
||||
<li><a href="#orgf748166">4.1.1. Requirements</a></li>
|
||||
<li><a href="#org7664788">4.1.2. C header</a></li>
|
||||
<li><a href="#org35c34f0">4.1.3. Source</a></li>
|
||||
<li><a href="#org4829f70">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-orgc39fcc6" class="outline-2">
|
||||
<h2 id="orgc39fcc6"><span class="section-number-2">1</span> Squared distance</h2>
|
||||
<div id="outline-container-org7fe888d" class="outline-2">
|
||||
<h2 id="org7fe888d"><span class="section-number-2">1</span> Squared distance</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-org26a609a" class="outline-3">
|
||||
<h3 id="org26a609a"><span class="section-number-3">1.1</span> <code>qmckl_distance_sq</code></h3>
|
||||
<div id="outline-container-org71cdea6" class="outline-3">
|
||||
<h3 id="org71cdea6"><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="org32b34b0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org0b4b4f2" 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-orgc53cce3" class="outline-4">
|
||||
<h4 id="orgc53cce3"><span class="section-number-4">1.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgffa589d" class="outline-4">
|
||||
<h4 id="orgffa589d"><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-org035ce79" class="outline-4">
|
||||
<h4 id="org035ce79"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div id="outline-container-orgd95d925" class="outline-4">
|
||||
<h4 id="orgd95d925"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-1-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_distance_sq</span> (
|
||||
@ -536,8 +536,8 @@ between all pairs of points in two sets, one point within each set:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7de7893" class="outline-4">
|
||||
<h4 id="org7de7893"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div id="outline-container-org6306260" class="outline-4">
|
||||
<h4 id="org6306260"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-1-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span><span style="color: #a0522d;"> function qmckl_distance_sq_f(context, transa, transb, m, n, </span><span style="color: #a020f0;">&</span>
|
||||
@ -672,8 +672,8 @@ between all pairs of points in two sets, one point within each set:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org49844b6" class="outline-4">
|
||||
<h4 id="org49844b6"><span class="section-number-4">1.1.4</span> Performance</h4>
|
||||
<div id="outline-container-orgd667e48" class="outline-4">
|
||||
<h4 id="orgd667e48"><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-orgdcf4e88" class="outline-2">
|
||||
<h2 id="orgdcf4e88"><span class="section-number-2">2</span> Distance</h2>
|
||||
<div id="outline-container-org7e8356e" class="outline-2">
|
||||
<h2 id="org7e8356e"><span class="section-number-2">2</span> Distance</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org762c01e" class="outline-3">
|
||||
<h3 id="org762c01e"><span class="section-number-3">2.1</span> <code>qmckl_distance</code></h3>
|
||||
<div id="outline-container-orga375205" class="outline-3">
|
||||
<h3 id="orga375205"><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="org4e093f8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org4cd6a12" 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-org2a35432" class="outline-4">
|
||||
<h4 id="org2a35432"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgc0cda02" class="outline-4">
|
||||
<h4 id="orgc0cda02"><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-org8f9a53f" class="outline-4">
|
||||
<h4 id="org8f9a53f"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div id="outline-container-org99e4a66" class="outline-4">
|
||||
<h4 id="org99e4a66"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_distance</span> (
|
||||
@ -839,8 +839,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc947543" class="outline-4">
|
||||
<h4 id="orgc947543"><span class="section-number-4">2.1.3</span> Source</h4>
|
||||
<div id="outline-container-org9607da6" class="outline-4">
|
||||
<h4 id="org9607da6"><span class="section-number-4">2.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span><span style="color: #a0522d;"> function qmckl_distance_f(context, transa, transb, m, n, </span><span style="color: #a020f0;">&</span>
|
||||
@ -1007,8 +1007,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1cdc0e9" class="outline-4">
|
||||
<h4 id="org1cdc0e9"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div id="outline-container-orgfa1d64e" class="outline-4">
|
||||
<h4 id="orgfa1d64e"><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-orgaad556d" class="outline-2">
|
||||
<h2 id="orgaad556d"><span class="section-number-2">3</span> Rescaled Distance</h2>
|
||||
<div id="outline-container-org993151f" class="outline-2">
|
||||
<h2 id="org993151f"><span class="section-number-2">3</span> Rescaled Distance</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org83d2bb7" class="outline-3">
|
||||
<h3 id="org83d2bb7"><span class="section-number-3">3.1</span> <code>qmckl_distance_rescaled</code></h3>
|
||||
<div id="outline-container-org453532f" class="outline-3">
|
||||
<h3 id="org453532f"><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="org9e76383" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgfb3052c" 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-orgefd0d2e" class="outline-4">
|
||||
<h4 id="orgefd0d2e"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgdbdac40" class="outline-4">
|
||||
<h4 id="orgdbdac40"><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-orgaa7420f" class="outline-4">
|
||||
<h4 id="orgaa7420f"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div id="outline-container-org8e80581" class="outline-4">
|
||||
<h4 id="org8e80581"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-3-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_distance_rescaled</span> (
|
||||
@ -1182,8 +1182,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org598b191" class="outline-4">
|
||||
<h4 id="org598b191"><span class="section-number-4">3.1.3</span> Source</h4>
|
||||
<div id="outline-container-orgbbd4efb" class="outline-4">
|
||||
<h4 id="orgbbd4efb"><span class="section-number-4">3.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-3-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span><span style="color: #a0522d;"> function qmckl_distance_rescaled_f(context, transa, transb, m, n, </span><span style="color: #a020f0;">&</span>
|
||||
@ -1353,8 +1353,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7156ede" class="outline-4">
|
||||
<h4 id="org7156ede"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org38ddf43" class="outline-4">
|
||||
<h4 id="org38ddf43"><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-orgb8f3165" class="outline-2">
|
||||
<h2 id="orgb8f3165"><span class="section-number-2">4</span> Rescaled Distance Derivatives</h2>
|
||||
<div id="outline-container-org63e3605" class="outline-2">
|
||||
<h2 id="org63e3605"><span class="section-number-2">4</span> Rescaled Distance Derivatives</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-orge3d87b3" class="outline-3">
|
||||
<h3 id="orge3d87b3"><span class="section-number-3">4.1</span> <code>qmckl_distance_rescaled_deriv_e</code></h3>
|
||||
<div id="outline-container-org154223e" class="outline-3">
|
||||
<h3 id="org154223e"><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="orgf08f916" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org8b7850b" 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-orgde36da6" class="outline-4">
|
||||
<h4 id="orgde36da6"><span class="section-number-4">4.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgf748166" class="outline-4">
|
||||
<h4 id="orgf748166"><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-org27c050a" class="outline-4">
|
||||
<h4 id="org27c050a"><span class="section-number-4">4.1.2</span> C header</h4>
|
||||
<div id="outline-container-org7664788" class="outline-4">
|
||||
<h4 id="org7664788"><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-org111eb1d" class="outline-4">
|
||||
<h4 id="org111eb1d"><span class="section-number-4">4.1.3</span> Source</h4>
|
||||
<div id="outline-container-org35c34f0" class="outline-4">
|
||||
<h4 id="org35c34f0"><span class="section-number-4">4.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-4-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span><span style="color: #a0522d;"> function qmckl_distance_rescaled_deriv_e_f(context, transa, transb, m, n, </span><span style="color: #a020f0;">&</span>
|
||||
@ -1768,8 +1768,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org75df55a" class="outline-4">
|
||||
<h4 id="org75df55a"><span class="section-number-4">4.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org4829f70" class="outline-4">
|
||||
<h4 id="org4829f70"><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-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<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="#org55c65c2">1. Context</a>
|
||||
<li><a href="#org8fd5049">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org6af31ff">1.1. Data structure</a></li>
|
||||
<li><a href="#org9e42378">1.2. Access functions</a>
|
||||
<li><a href="#org7d7e956">1.1. Data structure</a></li>
|
||||
<li><a href="#org415a739">1.2. Access functions</a>
|
||||
<ul>
|
||||
<li><a href="#orgf0e97d8">1.2.1. Number of electrons</a></li>
|
||||
<li><a href="#orgb921384">1.2.2. Number of walkers</a></li>
|
||||
<li><a href="#org0c3a3d5">1.2.3. Scaling factors Kappa</a></li>
|
||||
<li><a href="#org60e6d6e">1.2.4. Electron coordinates</a></li>
|
||||
<li><a href="#orgd503e80">1.2.1. Number of electrons</a></li>
|
||||
<li><a href="#orgdf5ad66">1.2.2. Number of walkers</a></li>
|
||||
<li><a href="#org9025abe">1.2.3. Scaling factors Kappa</a></li>
|
||||
<li><a href="#orgefa7242">1.2.4. Electron coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org62b3e50">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org4944d3d">1.4. Test</a></li>
|
||||
<li><a href="#orgc371ed1">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org90638b1">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgb3131d1">2. Computation</a>
|
||||
<li><a href="#org6f7ee75">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#orgeee4268">2.1. Electron-electron distances</a>
|
||||
<li><a href="#org354c9ca">2.1. Electron-electron distances</a>
|
||||
<ul>
|
||||
<li><a href="#org5e68e17">2.1.1. Get</a></li>
|
||||
<li><a href="#org340a522">2.1.2. Compute</a></li>
|
||||
<li><a href="#orgb0969ca">2.1.3. Test</a></li>
|
||||
<li><a href="#org5084b39">2.1.1. Get</a></li>
|
||||
<li><a href="#org1675192">2.1.2. Compute</a></li>
|
||||
<li><a href="#org5bb2fa7">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org4a96019">2.2. Electron-electron rescaled distances</a>
|
||||
<li><a href="#org2b3596f">2.2. Electron-electron rescaled distances</a>
|
||||
<ul>
|
||||
<li><a href="#org982888e">2.2.1. Get</a></li>
|
||||
<li><a href="#org61220b2">2.2.2. Compute</a></li>
|
||||
<li><a href="#org97d85c2">2.2.3. Test</a></li>
|
||||
<li><a href="#org3a016e8">2.2.1. Get</a></li>
|
||||
<li><a href="#org83d8cd7">2.2.2. Compute</a></li>
|
||||
<li><a href="#orga5aad36">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org94f181c">2.3. Electron-electron rescaled distance gradients and laplacian with respect to electron coords</a>
|
||||
<li><a href="#org6b0ab8c">2.3. Electron-electron rescaled distance gradients and laplacian with respect to electron coords</a>
|
||||
<ul>
|
||||
<li><a href="#orga88a946">2.3.1. Get</a></li>
|
||||
<li><a href="#orgf900372">2.3.2. Compute</a></li>
|
||||
<li><a href="#orgcb9b2c0">2.3.3. Test</a></li>
|
||||
<li><a href="#org355b314">2.3.1. Get</a></li>
|
||||
<li><a href="#org552b913">2.3.2. Compute</a></li>
|
||||
<li><a href="#orgc5a98ae">2.3.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org4cee3cd">2.4. Electron-nucleus distances</a>
|
||||
<li><a href="#org782475d">2.4. Electron-nucleus distances</a>
|
||||
<ul>
|
||||
<li><a href="#org1186e73">2.4.1. Get</a></li>
|
||||
<li><a href="#orgb5dd8c7">2.4.2. Compute</a></li>
|
||||
<li><a href="#org3968280">2.4.3. Test</a></li>
|
||||
<li><a href="#org2a5efb6">2.4.1. Get</a></li>
|
||||
<li><a href="#orgd4ec408">2.4.2. Compute</a></li>
|
||||
<li><a href="#orgbc17c77">2.4.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org8db0634">2.5. Electron-nucleus rescaled distances</a>
|
||||
<li><a href="#orga24cbd6">2.5. Electron-nucleus rescaled distances</a>
|
||||
<ul>
|
||||
<li><a href="#org4b55fad">2.5.1. Get</a></li>
|
||||
<li><a href="#org4e27cae">2.5.2. Compute</a></li>
|
||||
<li><a href="#org232bc81">2.5.3. Test</a></li>
|
||||
<li><a href="#org9d7fb7d">2.5.1. Get</a></li>
|
||||
<li><a href="#org8ba8541">2.5.2. Compute</a></li>
|
||||
<li><a href="#org0fbf6bb">2.5.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgde20051">2.6. Electron-nucleus rescaled distance gradients and laplacian with respect to electron coords</a>
|
||||
<li><a href="#org5737bbd">2.6. Electron-nucleus rescaled distance gradients and laplacian with respect to electron coords</a>
|
||||
<ul>
|
||||
<li><a href="#orgadb9aaa">2.6.1. Get</a></li>
|
||||
<li><a href="#orgfee31b1">2.6.2. Compute</a></li>
|
||||
<li><a href="#orgcad08c4">2.6.3. Test</a></li>
|
||||
<li><a href="#orgd3db095">2.6.1. Get</a></li>
|
||||
<li><a href="#orgc8ffbba">2.6.2. Compute</a></li>
|
||||
<li><a href="#orgee830c8">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-org55c65c2" class="outline-2">
|
||||
<h2 id="org55c65c2"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org8fd5049" class="outline-2">
|
||||
<h2 id="org8fd5049"><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-org6af31ff" class="outline-3">
|
||||
<h3 id="org6af31ff"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org7d7e956" class="outline-3">
|
||||
<h3 id="org7d7e956"><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-org9e42378" class="outline-3">
|
||||
<h3 id="org9e42378"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org415a739" class="outline-3">
|
||||
<h3 id="org415a739"><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-orgf0e97d8" class="outline-4">
|
||||
<h4 id="orgf0e97d8"><span class="section-number-4">1.2.1</span> Number of electrons</h4>
|
||||
<div id="outline-container-orgd503e80" class="outline-4">
|
||||
<h4 id="orgd503e80"><span class="section-number-4">1.2.1</span> Number of electrons</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb921384" class="outline-4">
|
||||
<h4 id="orgb921384"><span class="section-number-4">1.2.2</span> Number of walkers</h4>
|
||||
<div id="outline-container-orgdf5ad66" class="outline-4">
|
||||
<h4 id="orgdf5ad66"><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-org0c3a3d5" class="outline-4">
|
||||
<h4 id="org0c3a3d5"><span class="section-number-4">1.2.3</span> Scaling factors Kappa</h4>
|
||||
<div id="outline-container-org9025abe" class="outline-4">
|
||||
<h4 id="org9025abe"><span class="section-number-4">1.2.3</span> Scaling factors Kappa</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org60e6d6e" class="outline-4">
|
||||
<h4 id="org60e6d6e"><span class="section-number-4">1.2.4</span> Electron coordinates</h4>
|
||||
<div id="outline-container-orgefa7242" class="outline-4">
|
||||
<h4 id="orgefa7242"><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-org62b3e50" class="outline-3">
|
||||
<h3 id="org62b3e50"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-orgc371ed1" class="outline-3">
|
||||
<h3 id="orgc371ed1"><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-org4944d3d" class="outline-3">
|
||||
<h3 id="org4944d3d"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-org90638b1" class="outline-3">
|
||||
<h3 id="org90638b1"><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-orgb3131d1" class="outline-2">
|
||||
<h2 id="orgb3131d1"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org6f7ee75" class="outline-2">
|
||||
<h2 id="org6f7ee75"><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-orgeee4268" class="outline-3">
|
||||
<h3 id="orgeee4268"><span class="section-number-3">2.1</span> Electron-electron distances</h3>
|
||||
<div id="outline-container-org354c9ca" class="outline-3">
|
||||
<h3 id="org354c9ca"><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-org5e68e17" class="outline-4">
|
||||
<h4 id="org5e68e17"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-org5084b39" class="outline-4">
|
||||
<h4 id="org5084b39"><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-org340a522" class="outline-4">
|
||||
<h4 id="org340a522"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-org1675192" class="outline-4">
|
||||
<h4 id="org1675192"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="org10e8add" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org728e865" 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-orgb0969ca" class="outline-4">
|
||||
<h4 id="orgb0969ca"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-org5bb2fa7" class="outline-4">
|
||||
<h4 id="org5bb2fa7"><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-org4a96019" class="outline-3">
|
||||
<h3 id="org4a96019"><span class="section-number-3">2.2</span> Electron-electron rescaled distances</h3>
|
||||
<div id="outline-container-org2b3596f" class="outline-3">
|
||||
<h3 id="org2b3596f"><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-org982888e" class="outline-4">
|
||||
<h4 id="org982888e"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-org3a016e8" class="outline-4">
|
||||
<h4 id="org3a016e8"><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-org61220b2" class="outline-4">
|
||||
<h4 id="org61220b2"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-org83d8cd7" class="outline-4">
|
||||
<h4 id="org83d8cd7"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="org0c19d53" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org3e9dedb" 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-org97d85c2" class="outline-4">
|
||||
<h4 id="org97d85c2"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-orga5aad36" class="outline-4">
|
||||
<h4 id="orga5aad36"><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-org94f181c" class="outline-3">
|
||||
<h3 id="org94f181c"><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-org6b0ab8c" class="outline-3">
|
||||
<h3 id="org6b0ab8c"><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-orga88a946" class="outline-4">
|
||||
<h4 id="orga88a946"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-org355b314" class="outline-4">
|
||||
<h4 id="org355b314"><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-orgf900372" class="outline-4">
|
||||
<h4 id="orgf900372"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div id="outline-container-org552b913" class="outline-4">
|
||||
<h4 id="org552b913"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-3-2">
|
||||
<table id="org88d4645" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org68c5552" 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-orgcb9b2c0" class="outline-4">
|
||||
<h4 id="orgcb9b2c0"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div id="outline-container-orgc5a98ae" class="outline-4">
|
||||
<h4 id="orgc5a98ae"><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-org4cee3cd" class="outline-3">
|
||||
<h3 id="org4cee3cd"><span class="section-number-3">2.4</span> Electron-nucleus distances</h3>
|
||||
<div id="outline-container-org782475d" class="outline-3">
|
||||
<h3 id="org782475d"><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-org1186e73" class="outline-4">
|
||||
<h4 id="org1186e73"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div id="outline-container-org2a5efb6" class="outline-4">
|
||||
<h4 id="org2a5efb6"><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-orgb5dd8c7" class="outline-4">
|
||||
<h4 id="orgb5dd8c7"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div id="outline-container-orgd4ec408" class="outline-4">
|
||||
<h4 id="orgd4ec408"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-4-2">
|
||||
<table id="org186b308" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org5f5e23c" 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-org3968280" class="outline-4">
|
||||
<h4 id="org3968280"><span class="section-number-4">2.4.3</span> Test</h4>
|
||||
<div id="outline-container-orgbc17c77" class="outline-4">
|
||||
<h4 id="orgbc17c77"><span class="section-number-4">2.4.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-4-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">
|
||||
@ -1588,8 +1588,8 @@ rc = qmckl_get_electron_en_distance(context, &(en_distance[0][0][0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8db0634" class="outline-3">
|
||||
<h3 id="org8db0634"><span class="section-number-3">2.5</span> Electron-nucleus rescaled distances</h3>
|
||||
<div id="outline-container-orga24cbd6" class="outline-3">
|
||||
<h3 id="orga24cbd6"><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-org4b55fad" class="outline-4">
|
||||
<h4 id="org4b55fad"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div id="outline-container-org9d7fb7d" class="outline-4">
|
||||
<h4 id="org9d7fb7d"><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-org4e27cae" class="outline-4">
|
||||
<h4 id="org4e27cae"><span class="section-number-4">2.5.2</span> Compute</h4>
|
||||
<div id="outline-container-org8ba8541" class="outline-4">
|
||||
<h4 id="org8ba8541"><span class="section-number-4">2.5.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-5-2">
|
||||
<table id="orgd01d254" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org7ac5b1f" 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-org232bc81" class="outline-4">
|
||||
<h4 id="org232bc81"><span class="section-number-4">2.5.3</span> Test</h4>
|
||||
<div id="outline-container-org0fbf6bb" class="outline-4">
|
||||
<h4 id="org0fbf6bb"><span class="section-number-4">2.5.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-5-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">
|
||||
@ -1801,8 +1801,8 @@ rc = qmckl_get_electron_en_distance_rescaled(context, &(en_distance_rescaled
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgde20051" class="outline-3">
|
||||
<h3 id="orgde20051"><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-org5737bbd" class="outline-3">
|
||||
<h3 id="org5737bbd"><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-orgadb9aaa" class="outline-4">
|
||||
<h4 id="orgadb9aaa"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div id="outline-container-orgd3db095" class="outline-4">
|
||||
<h4 id="orgd3db095"><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-orgfee31b1" class="outline-4">
|
||||
<h4 id="orgfee31b1"><span class="section-number-4">2.6.2</span> Compute</h4>
|
||||
<div id="outline-container-orgc8ffbba" class="outline-4">
|
||||
<h4 id="orgc8ffbba"><span class="section-number-4">2.6.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-6-2">
|
||||
<table id="org51641d8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orga7ab634" 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-orgcad08c4" class="outline-4">
|
||||
<h4 id="orgcad08c4"><span class="section-number-4">2.6.3</span> Test</h4>
|
||||
<div id="outline-container-orgee830c8" class="outline-4">
|
||||
<h4 id="orgee830c8"><span class="section-number-4">2.6.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-6-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">
|
||||
@ -2016,7 +2016,7 @@ rc = qmckl_get_electron_en_distance_rescaled_deriv_e(context, &(en_distance_
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<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="#orga241b54">1. Decoding errors</a></li>
|
||||
<li><a href="#org822ccfe">2. Data structure in context</a></li>
|
||||
<li><a href="#org24fd95c">3. Updating errors in the context</a></li>
|
||||
<li><a href="#org03f3bb0">4. Get the error</a></li>
|
||||
<li><a href="#org7abc7cd">5. Failing</a></li>
|
||||
<li><a href="#org38d61a4">1. Decoding errors</a></li>
|
||||
<li><a href="#org34c59c5">2. Data structure in context</a></li>
|
||||
<li><a href="#org14b0852">3. Updating errors in the context</a></li>
|
||||
<li><a href="#orgd97a8f3">4. Get the error</a></li>
|
||||
<li><a href="#orgb31d4d8">5. Failing</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga241b54" class="outline-2">
|
||||
<h2 id="orga241b54"><span class="section-number-2">1</span> Decoding errors</h2>
|
||||
<div id="outline-container-org38d61a4" class="outline-2">
|
||||
<h2 id="org38d61a4"><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-org822ccfe" class="outline-2">
|
||||
<h2 id="org822ccfe"><span class="section-number-2">2</span> Data structure in context</h2>
|
||||
<div id="outline-container-org34c59c5" class="outline-2">
|
||||
<h2 id="org34c59c5"><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-org24fd95c" class="outline-2">
|
||||
<h2 id="org24fd95c"><span class="section-number-2">3</span> Updating errors in the context</h2>
|
||||
<div id="outline-container-org14b0852" class="outline-2">
|
||||
<h2 id="org14b0852"><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-org03f3bb0" class="outline-2">
|
||||
<h2 id="org03f3bb0"><span class="section-number-2">4</span> Get the error</h2>
|
||||
<div id="outline-container-orgd97a8f3" class="outline-2">
|
||||
<h2 id="orgd97a8f3"><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-org7abc7cd" class="outline-2">
|
||||
<h2 id="org7abc7cd"><span class="section-number-2">5</span> Failing</h2>
|
||||
<div id="outline-container-orgb31d4d8" class="outline-2">
|
||||
<h2 id="orgb31d4d8"><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-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<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="#org66d6449">1. Context</a>
|
||||
<li><a href="#org730f41f">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#orgd07338b">1.1. Data structure</a></li>
|
||||
<li><a href="#org8c08398">1.2. Access functions</a></li>
|
||||
<li><a href="#org0ebb3d6">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orged8285a">1.4. Test</a></li>
|
||||
<li><a href="#orgff4c3fc">1.1. Data structure</a></li>
|
||||
<li><a href="#orgbf30dd9">1.2. Access functions</a></li>
|
||||
<li><a href="#org52073aa">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgc010b06">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgaac6a00">2. Computation</a>
|
||||
<li><a href="#org6acf982">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#orgc1b2e2d">2.1. Asymptotic component for \(f_{ee}\)</a>
|
||||
<li><a href="#org17c55e4">2.1. Asymptotic component for \(f_{ee}\)</a>
|
||||
<ul>
|
||||
<li><a href="#orgdefb5d6">2.1.1. Get</a></li>
|
||||
<li><a href="#org64d2a9c">2.1.2. Compute</a></li>
|
||||
<li><a href="#org7f6e5ff">2.1.3. Test</a></li>
|
||||
<li><a href="#org666c686">2.1.1. Get</a></li>
|
||||
<li><a href="#orge047c4d">2.1.2. Compute</a></li>
|
||||
<li><a href="#org4cfa742">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org9ba0fdc">2.2. Electron-electron component \(f_{ee}\)</a>
|
||||
<li><a href="#orgf59d5b5">2.2. Electron-electron component \(f_{ee}\)</a>
|
||||
<ul>
|
||||
<li><a href="#org289dd21">2.2.1. Get</a></li>
|
||||
<li><a href="#orgeaa33c5">2.2.2. Compute</a></li>
|
||||
<li><a href="#org2fd47e2">2.2.3. Test</a></li>
|
||||
<li><a href="#org4a45e0e">2.2.1. Get</a></li>
|
||||
<li><a href="#org21e5c02">2.2.2. Compute</a></li>
|
||||
<li><a href="#org74817d5">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org6198517">2.3. Electron-electron component derivative \(f'_{ee}\)</a>
|
||||
<li><a href="#orge05fa07">2.3. Electron-electron component derivative \(f'_{ee}\)</a>
|
||||
<ul>
|
||||
<li><a href="#org63eb826">2.3.1. Get</a></li>
|
||||
<li><a href="#orgde407d5">2.3.2. Compute</a></li>
|
||||
<li><a href="#orgdb9113c">2.3.3. Test</a></li>
|
||||
<li><a href="#orgaff3784">2.3.1. Get</a></li>
|
||||
<li><a href="#orge089c9f">2.3.2. Compute</a></li>
|
||||
<li><a href="#orga777360">2.3.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org3c13c2b">2.4. Electron-nucleus component \(f_{en}\)</a>
|
||||
<li><a href="#org3b275c4">2.4. Electron-nucleus component \(f_{en}\)</a>
|
||||
<ul>
|
||||
<li><a href="#org9d4995b">2.4.1. Get</a></li>
|
||||
<li><a href="#org381ad0e">2.4.2. Compute</a></li>
|
||||
<li><a href="#org5c25618">2.4.3. Test</a></li>
|
||||
<li><a href="#org4464a29">2.4.1. Get</a></li>
|
||||
<li><a href="#org2e20f70">2.4.2. Compute</a></li>
|
||||
<li><a href="#org5dc0275">2.4.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org2978253">2.5. Electron-nucleus component derivative \(f'_{en}\)</a>
|
||||
<li><a href="#orge99ffc8">2.5. Electron-nucleus component derivative \(f'_{en}\)</a>
|
||||
<ul>
|
||||
<li><a href="#org9b3ebb0">2.5.1. Get</a></li>
|
||||
<li><a href="#org64e8110">2.5.2. Compute</a></li>
|
||||
<li><a href="#orgd4c53f7">2.5.3. Test</a></li>
|
||||
<li><a href="#org979c9a7">2.5.1. Get</a></li>
|
||||
<li><a href="#org102009d">2.5.2. Compute</a></li>
|
||||
<li><a href="#org212dbae">2.5.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org599f842">2.6. Electron-electron rescaled distances for each order</a>
|
||||
<li><a href="#org34b0f94">2.6. Electron-electron rescaled distances for each order</a>
|
||||
<ul>
|
||||
<li><a href="#org2283422">2.6.1. Get</a></li>
|
||||
<li><a href="#org2016d6c">2.6.2. Compute</a></li>
|
||||
<li><a href="#orgcd3a062">2.6.3. Test</a></li>
|
||||
<li><a href="#orgfb2c90e">2.6.1. Get</a></li>
|
||||
<li><a href="#orgcae7d9e">2.6.2. Compute</a></li>
|
||||
<li><a href="#org93feffa">2.6.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgcc541ff">2.7. Electron-electron rescaled distances for each order and derivatives</a>
|
||||
<li><a href="#orgabf2946">2.7. Electron-electron rescaled distances for each order and derivatives</a>
|
||||
<ul>
|
||||
<li><a href="#org54cb55c">2.7.1. Get</a></li>
|
||||
<li><a href="#orgc5d7cbb">2.7.2. Compute</a></li>
|
||||
<li><a href="#org25320f2">2.7.3. Test</a></li>
|
||||
<li><a href="#org1717e54">2.7.1. Get</a></li>
|
||||
<li><a href="#orga53301a">2.7.2. Compute</a></li>
|
||||
<li><a href="#orgdf071a7">2.7.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgf0d8f5d">2.8. Electron-nucleus rescaled distances for each order</a>
|
||||
<li><a href="#orgb542a65">2.8. Electron-nucleus rescaled distances for each order</a>
|
||||
<ul>
|
||||
<li><a href="#org149fab3">2.8.1. Get</a></li>
|
||||
<li><a href="#orge15ba69">2.8.2. Compute</a></li>
|
||||
<li><a href="#orgcc9aade">2.8.3. Test</a></li>
|
||||
<li><a href="#org15f6188">2.8.1. Get</a></li>
|
||||
<li><a href="#org419d8ff">2.8.2. Compute</a></li>
|
||||
<li><a href="#orgae2b715">2.8.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org6d3de1d">2.9. Electron-nucleus rescaled distances for each order and derivatives</a>
|
||||
<li><a href="#org8d9775d">2.9. Electron-nucleus rescaled distances for each order and derivatives</a>
|
||||
<ul>
|
||||
<li><a href="#orgd012c78">2.9.1. Get</a></li>
|
||||
<li><a href="#orge3540a3">2.9.2. Compute</a></li>
|
||||
<li><a href="#org80eaac4">2.9.3. Test</a></li>
|
||||
<li><a href="#org5327bd9">2.9.1. Get</a></li>
|
||||
<li><a href="#orgb2b80e6">2.9.2. Compute</a></li>
|
||||
<li><a href="#org4b05721">2.9.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org438f5b8">2.10. Prepare for electron-electron-nucleus Jastrow \(f_{een}\)</a>
|
||||
<li><a href="#orge4c86b9">2.10. Prepare for electron-electron-nucleus Jastrow \(f_{een}\)</a>
|
||||
<ul>
|
||||
<li><a href="#orgd2604fb">2.10.1. Get</a></li>
|
||||
<li><a href="#orgbaf48f6">2.10.2. Compute dim<sub>cord</sub><sub>vect</sub></a></li>
|
||||
<li><a href="#org1547732">2.10.3. Compute cord<sub>vect</sub><sub>full</sub></a></li>
|
||||
<li><a href="#orgc54aa39">2.10.4. Compute lkpm<sub>combined</sub><sub>index</sub></a></li>
|
||||
<li><a href="#org3f657f3">2.10.5. Test</a></li>
|
||||
<li><a href="#org9069af2">2.10.1. Get</a></li>
|
||||
<li><a href="#org4388bd6">2.10.2. Compute dim<sub>cord</sub><sub>vect</sub></a></li>
|
||||
<li><a href="#orge5218f3">2.10.3. Compute cord<sub>vect</sub><sub>full</sub></a></li>
|
||||
<li><a href="#orgf2b64f0">2.10.4. Compute lkpm<sub>combined</sub><sub>index</sub></a></li>
|
||||
<li><a href="#org5b0bd41">2.10.5. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgca505c8">2.11. Electron-electron-nucleus Jastrow \(f_{een}\)</a>
|
||||
<li><a href="#org2a049fb">2.11. Electron-electron-nucleus Jastrow \(f_{een}\)</a>
|
||||
<ul>
|
||||
<li><a href="#orgf2a7563">2.11.1. Get</a></li>
|
||||
<li><a href="#org80b8a15">2.11.2. Compute</a></li>
|
||||
<li><a href="#org4a3e3db">2.11.3. Test</a></li>
|
||||
<li><a href="#orgf7b28b8">2.11.1. Get</a></li>
|
||||
<li><a href="#org00e8055">2.11.2. Compute</a></li>
|
||||
<li><a href="#orga20d793">2.11.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org779a9f2">2.12. Electron-electron-nucleus Jastrow \(f_{een}\) derivative</a>
|
||||
<li><a href="#org43e436c">2.12. Electron-electron-nucleus Jastrow \(f_{een}\) derivative</a>
|
||||
<ul>
|
||||
<li><a href="#org8e2fe91">2.12.1. Get</a></li>
|
||||
<li><a href="#orgf3d6ced">2.12.2. Compute</a></li>
|
||||
<li><a href="#org3d2a6b1">2.12.3. Test</a></li>
|
||||
<li><a href="#orgb27dba2">2.12.1. Get</a></li>
|
||||
<li><a href="#org1ce9c49">2.12.2. Compute</a></li>
|
||||
<li><a href="#org45e7f6f">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-org66d6449" class="outline-2">
|
||||
<h2 id="org66d6449"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org730f41f" class="outline-2">
|
||||
<h2 id="org730f41f"><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="orgfd6d117" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org948670b" 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="org9b439d3"><span style="color: #a020f0;">import</span> numpy <span style="color: #a020f0;">as</span> np
|
||||
<pre class="src src-python" id="org2cc251f"><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-orgd07338b" class="outline-3">
|
||||
<h3 id="orgd07338b"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-orgff4c3fc" class="outline-3">
|
||||
<h3 id="orgff4c3fc"><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-org8c08398" class="outline-3">
|
||||
<h3 id="org8c08398"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-orgbf30dd9" class="outline-3">
|
||||
<h3 id="orgbf30dd9"><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-org0ebb3d6" class="outline-3">
|
||||
<h3 id="org0ebb3d6"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org52073aa" class="outline-3">
|
||||
<h3 id="org52073aa"><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-orged8285a" class="outline-3">
|
||||
<h3 id="orged8285a"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-orgc010b06" class="outline-3">
|
||||
<h3 id="orgc010b06"><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-orgaac6a00" class="outline-2">
|
||||
<h2 id="orgaac6a00"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org6acf982" class="outline-2">
|
||||
<h2 id="org6acf982"><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-orgc1b2e2d" class="outline-3">
|
||||
<h3 id="orgc1b2e2d"><span class="section-number-3">2.1</span> Asymptotic component for \(f_{ee}\)</h3>
|
||||
<div id="outline-container-org17c55e4" class="outline-3">
|
||||
<h3 id="org17c55e4"><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-orgdefb5d6" class="outline-4">
|
||||
<h4 id="orgdefb5d6"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-org666c686" class="outline-4">
|
||||
<h4 id="org666c686"><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-org64d2a9c" class="outline-4">
|
||||
<h4 id="org64d2a9c"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-orge047c4d" class="outline-4">
|
||||
<h4 id="orge047c4d"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="org9ad3e5d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org1386658" 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-org7f6e5ff" class="outline-4">
|
||||
<h4 id="org7f6e5ff"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-org4cfa742" class="outline-4">
|
||||
<h4 id="org4cfa742"><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>));
|
||||
@ -1397,8 +1397,8 @@ rc = qmckl_get_jastrow_asymp_jasb(context, asymp_jasb);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9ba0fdc" class="outline-3">
|
||||
<h3 id="org9ba0fdc"><span class="section-number-3">2.2</span> Electron-electron component \(f_{ee}\)</h3>
|
||||
<div id="outline-container-orgf59d5b5" class="outline-3">
|
||||
<h3 id="orgf59d5b5"><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>
|
||||
@ -1413,8 +1413,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-org289dd21" class="outline-4">
|
||||
<h4 id="org289dd21"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-org4a45e0e" class="outline-4">
|
||||
<h4 id="org4a45e0e"><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>);
|
||||
@ -1423,10 +1423,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-orgeaa33c5" class="outline-4">
|
||||
<h4 id="orgeaa33c5"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-org21e5c02" class="outline-4">
|
||||
<h4 id="org21e5c02"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="org1b72ce0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org392def7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1593,8 +1593,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-org2fd47e2" class="outline-4">
|
||||
<h4 id="org2fd47e2"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-org74817d5" class="outline-4">
|
||||
<h4 id="org74817d5"><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>*/
|
||||
@ -1612,8 +1612,8 @@ rc = qmckl_get_jastrow_factor_ee(context, factor_ee);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6198517" class="outline-3">
|
||||
<h3 id="org6198517"><span class="section-number-3">2.3</span> Electron-electron component derivative \(f'_{ee}\)</h3>
|
||||
<div id="outline-container-orge05fa07" class="outline-3">
|
||||
<h3 id="orge05fa07"><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
|
||||
@ -1628,8 +1628,8 @@ TODO: Add equation
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org63eb826" class="outline-4">
|
||||
<h4 id="org63eb826"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-orgaff3784" class="outline-4">
|
||||
<h4 id="orgaff3784"><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>);
|
||||
@ -1638,10 +1638,10 @@ TODO: Add equation
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgde407d5" class="outline-4">
|
||||
<h4 id="orgde407d5"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div id="outline-container-orge089c9f" class="outline-4">
|
||||
<h4 id="orge089c9f"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-3-2">
|
||||
<table id="org10b1129" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org7c13900" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1848,8 +1848,8 @@ TODO: Add equation
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgdb9113c" class="outline-4">
|
||||
<h4 id="orgdb9113c"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div id="outline-container-orga777360" class="outline-4">
|
||||
<h4 id="orga777360"><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>*/
|
||||
@ -1871,8 +1871,8 @@ rc = qmckl_get_jastrow_factor_ee_deriv_e(context, &(factor_ee_deriv_e[0][0][
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3c13c2b" class="outline-3">
|
||||
<h3 id="org3c13c2b"><span class="section-number-3">2.4</span> Electron-nucleus component \(f_{en}\)</h3>
|
||||
<div id="outline-container-org3b275c4" class="outline-3">
|
||||
<h3 id="org3b275c4"><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>
|
||||
@ -1887,8 +1887,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-org9d4995b" class="outline-4">
|
||||
<h4 id="org9d4995b"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div id="outline-container-org4464a29" class="outline-4">
|
||||
<h4 id="org4464a29"><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>);
|
||||
@ -1897,10 +1897,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-org381ad0e" class="outline-4">
|
||||
<h4 id="org381ad0e"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div id="outline-container-org2e20f70" class="outline-4">
|
||||
<h4 id="org2e20f70"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-4-2">
|
||||
<table id="orga63151f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgf424512" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2074,8 +2074,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-org5c25618" class="outline-4">
|
||||
<h4 id="org5c25618"><span class="section-number-4">2.4.3</span> Test</h4>
|
||||
<div id="outline-container-org5dc0275" class="outline-4">
|
||||
<h4 id="org5dc0275"><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>*/
|
||||
@ -2093,8 +2093,8 @@ rc = qmckl_get_jastrow_factor_en(context, factor_en);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2978253" class="outline-3">
|
||||
<h3 id="org2978253"><span class="section-number-3">2.5</span> Electron-nucleus component derivative \(f'_{en}\)</h3>
|
||||
<div id="outline-container-orge99ffc8" class="outline-3">
|
||||
<h3 id="orge99ffc8"><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
|
||||
@ -2107,8 +2107,8 @@ TODO: write equations.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9b3ebb0" class="outline-4">
|
||||
<h4 id="org9b3ebb0"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div id="outline-container-org979c9a7" class="outline-4">
|
||||
<h4 id="org979c9a7"><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>);
|
||||
@ -2117,10 +2117,10 @@ TODO: write equations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org64e8110" class="outline-4">
|
||||
<h4 id="org64e8110"><span class="section-number-4">2.5.2</span> Compute</h4>
|
||||
<div id="outline-container-org102009d" class="outline-4">
|
||||
<h4 id="org102009d"><span class="section-number-4">2.5.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-5-2">
|
||||
<table id="org01531c0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgb8facc4" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2333,8 +2333,8 @@ TODO: write equations.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgd4c53f7" class="outline-4">
|
||||
<h4 id="orgd4c53f7"><span class="section-number-4">2.5.3</span> Test</h4>
|
||||
<div id="outline-container-org212dbae" class="outline-4">
|
||||
<h4 id="org212dbae"><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>*/
|
||||
@ -2356,8 +2356,8 @@ rc = qmckl_get_jastrow_factor_en_deriv_e(context, &(factor_en_deriv_e[0][0][
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org599f842" class="outline-3">
|
||||
<h3 id="org599f842"><span class="section-number-3">2.6</span> Electron-electron rescaled distances for each order</h3>
|
||||
<div id="outline-container-org34b0f94" class="outline-3">
|
||||
<h3 id="org34b0f94"><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
|
||||
@ -2375,8 +2375,8 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2283422" class="outline-4">
|
||||
<h4 id="org2283422"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div id="outline-container-orgfb2c90e" class="outline-4">
|
||||
<h4 id="orgfb2c90e"><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>);
|
||||
@ -2385,10 +2385,10 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2016d6c" class="outline-4">
|
||||
<h4 id="org2016d6c"><span class="section-number-4">2.6.2</span> Compute</h4>
|
||||
<div id="outline-container-orgcae7d9e" class="outline-4">
|
||||
<h4 id="orgcae7d9e"><span class="section-number-4">2.6.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-6-2">
|
||||
<table id="org979bf65" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgedf1c99" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2554,8 +2554,8 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcd3a062" class="outline-4">
|
||||
<h4 id="orgcd3a062"><span class="section-number-4">2.6.3</span> Test</h4>
|
||||
<div id="outline-container-org93feffa" class="outline-4">
|
||||
<h4 id="org93feffa"><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>));
|
||||
@ -2578,8 +2578,8 @@ rc = qmckl_get_jastrow_een_rescaled_e(context, &(een_rescaled_e[0][0][0][0])
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcc541ff" class="outline-3">
|
||||
<h3 id="orgcc541ff"><span class="section-number-3">2.7</span> Electron-electron rescaled distances for each order and derivatives</h3>
|
||||
<div id="outline-container-orgabf2946" class="outline-3">
|
||||
<h3 id="orgabf2946"><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_deriv_e</code> stores the table of the derivatives of the
|
||||
@ -2594,8 +2594,8 @@ TODO: write formulae
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org54cb55c" class="outline-4">
|
||||
<h4 id="org54cb55c"><span class="section-number-4">2.7.1</span> Get</h4>
|
||||
<div id="outline-container-org1717e54" class="outline-4">
|
||||
<h4 id="org1717e54"><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>);
|
||||
@ -2604,10 +2604,10 @@ TODO: write formulae
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc5d7cbb" class="outline-4">
|
||||
<h4 id="orgc5d7cbb"><span class="section-number-4">2.7.2</span> Compute</h4>
|
||||
<div id="outline-container-orga53301a" class="outline-4">
|
||||
<h4 id="orga53301a"><span class="section-number-4">2.7.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-7-2">
|
||||
<table id="orgd710b50" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org3a0ad2f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2786,8 +2786,8 @@ TODO: write formulae
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org25320f2" class="outline-4">
|
||||
<h4 id="org25320f2"><span class="section-number-4">2.7.3</span> Test</h4>
|
||||
<div id="outline-container-orgdf071a7" class="outline-4">
|
||||
<h4 id="orgdf071a7"><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>
|
||||
@ -2807,8 +2807,8 @@ rc = qmckl_get_jastrow_een_rescaled_e_deriv_e(context, &(een_rescaled_e_deri
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf0d8f5d" class="outline-3">
|
||||
<h3 id="orgf0d8f5d"><span class="section-number-3">2.8</span> Electron-nucleus rescaled distances for each order</h3>
|
||||
<div id="outline-container-orgb542a65" class="outline-3">
|
||||
<h3 id="orgb542a65"><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
|
||||
@ -2826,8 +2826,8 @@ where \(C_{ia}\) is the matrix of electron-nucleus distances.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org149fab3" class="outline-4">
|
||||
<h4 id="org149fab3"><span class="section-number-4">2.8.1</span> Get</h4>
|
||||
<div id="outline-container-org15f6188" class="outline-4">
|
||||
<h4 id="org15f6188"><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>);
|
||||
@ -2836,10 +2836,10 @@ where \(C_{ia}\) is the matrix of electron-nucleus distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge15ba69" class="outline-4">
|
||||
<h4 id="orge15ba69"><span class="section-number-4">2.8.2</span> Compute</h4>
|
||||
<div id="outline-container-org419d8ff" class="outline-4">
|
||||
<h4 id="org419d8ff"><span class="section-number-4">2.8.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-8-2">
|
||||
<table id="org4cdd4c4" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orge30eb7f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2995,8 +2995,8 @@ where \(C_{ia}\) is the matrix of electron-nucleus distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcc9aade" class="outline-4">
|
||||
<h4 id="orgcc9aade"><span class="section-number-4">2.8.3</span> Test</h4>
|
||||
<div id="outline-container-orgae2b715" class="outline-4">
|
||||
<h4 id="orgae2b715"><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>));
|
||||
@ -3018,8 +3018,8 @@ rc = qmckl_get_jastrow_een_rescaled_n(context, &(een_rescaled_n[0][0][0][0])
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6d3de1d" class="outline-3">
|
||||
<h3 id="org6d3de1d"><span class="section-number-3">2.9</span> Electron-nucleus rescaled distances for each order and derivatives</h3>
|
||||
<div id="outline-container-org8d9775d" class="outline-3">
|
||||
<h3 id="org8d9775d"><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
|
||||
@ -3028,8 +3028,8 @@ electrons and nucleii raised to the power \(p\) defined by <code>cord_num</code>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgd012c78" class="outline-4">
|
||||
<h4 id="orgd012c78"><span class="section-number-4">2.9.1</span> Get</h4>
|
||||
<div id="outline-container-org5327bd9" class="outline-4">
|
||||
<h4 id="org5327bd9"><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>);
|
||||
@ -3038,10 +3038,10 @@ electrons and nucleii raised to the power \(p\) defined by <code>cord_num</code>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge3540a3" class="outline-4">
|
||||
<h4 id="orge3540a3"><span class="section-number-4">2.9.2</span> Compute</h4>
|
||||
<div id="outline-container-orgb2b80e6" class="outline-4">
|
||||
<h4 id="orgb2b80e6"><span class="section-number-4">2.9.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-9-2">
|
||||
<table id="org25e753f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgd2cff00" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3243,8 +3243,8 @@ electrons and nucleii raised to the power \(p\) defined by <code>cord_num</code>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org80eaac4" class="outline-4">
|
||||
<h4 id="org80eaac4"><span class="section-number-4">2.9.3</span> Test</h4>
|
||||
<div id="outline-container-org4b05721" class="outline-4">
|
||||
<h4 id="org4b05721"><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: #0000ff;">assert</span>(<span style="color: #228b22;">qmckl_electron_provided</span>(<span style="color: #a0522d;">context</span>));
|
||||
@ -3266,8 +3266,8 @@ rc = qmckl_get_jastrow_een_rescaled_n_deriv_e(context, &(een_rescaled_n_deri
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org438f5b8" class="outline-3">
|
||||
<h3 id="org438f5b8"><span class="section-number-3">2.10</span> Prepare for electron-electron-nucleus Jastrow \(f_{een}\)</h3>
|
||||
<div id="outline-container-orge4c86b9" class="outline-3">
|
||||
<h3 id="orge4c86b9"><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
|
||||
@ -3276,8 +3276,8 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd2604fb" class="outline-4">
|
||||
<h4 id="orgd2604fb"><span class="section-number-4">2.10.1</span> Get</h4>
|
||||
<div id="outline-container-org9069af2" class="outline-4">
|
||||
<h4 id="org9069af2"><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>);
|
||||
@ -3288,10 +3288,10 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbaf48f6" class="outline-4">
|
||||
<h4 id="orgbaf48f6"><span class="section-number-4">2.10.2</span> Compute dim<sub>cord</sub><sub>vect</sub></h4>
|
||||
<div id="outline-container-org4388bd6" class="outline-4">
|
||||
<h4 id="org4388bd6"><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="org68d8602" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org2240eb2" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3381,10 +3381,10 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org1547732" class="outline-4">
|
||||
<h4 id="org1547732"><span class="section-number-4">2.10.3</span> Compute cord<sub>vect</sub><sub>full</sub></h4>
|
||||
<div id="outline-container-orge5218f3" class="outline-4">
|
||||
<h4 id="orge5218f3"><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="org9038dfa" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgf2c99db" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3510,10 +3510,10 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgc54aa39" class="outline-4">
|
||||
<h4 id="orgc54aa39"><span class="section-number-4">2.10.4</span> Compute lkpm<sub>combined</sub><sub>index</sub></h4>
|
||||
<div id="outline-container-orgf2b64f0" class="outline-4">
|
||||
<h4 id="orgf2b64f0"><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="orgb439d31" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org9a7495b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3623,8 +3623,8 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org3f657f3" class="outline-4">
|
||||
<h4 id="org3f657f3"><span class="section-number-4">2.10.5</span> Test</h4>
|
||||
<div id="outline-container-org5b0bd41" class="outline-4">
|
||||
<h4 id="org5b0bd41"><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>
|
||||
@ -3636,8 +3636,8 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgca505c8" class="outline-3">
|
||||
<h3 id="orgca505c8"><span class="section-number-3">2.11</span> Electron-electron-nucleus Jastrow \(f_{een}\)</h3>
|
||||
<div id="outline-container-org2a049fb" class="outline-3">
|
||||
<h3 id="org2a049fb"><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>
|
||||
@ -3649,8 +3649,8 @@ TODO: write equations.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf2a7563" class="outline-4">
|
||||
<h4 id="orgf2a7563"><span class="section-number-4">2.11.1</span> Get</h4>
|
||||
<div id="outline-container-orgf7b28b8" class="outline-4">
|
||||
<h4 id="orgf7b28b8"><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>);
|
||||
@ -3659,10 +3659,10 @@ TODO: write equations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org80b8a15" class="outline-4">
|
||||
<h4 id="org80b8a15"><span class="section-number-4">2.11.2</span> Compute</h4>
|
||||
<div id="outline-container-org00e8055" class="outline-4">
|
||||
<h4 id="org00e8055"><span class="section-number-4">2.11.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-11-2">
|
||||
<table id="orga728123" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgdbab272" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3850,8 +3850,8 @@ TODO: write equations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4a3e3db" class="outline-4">
|
||||
<h4 id="org4a3e3db"><span class="section-number-4">2.11.3</span> Test</h4>
|
||||
<div id="outline-container-orga20d793" class="outline-4">
|
||||
<h4 id="orga20d793"><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>*/
|
||||
@ -3867,8 +3867,8 @@ rc = qmckl_get_jastrow_factor_een(context, &(factor_een[0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org779a9f2" class="outline-3">
|
||||
<h3 id="org779a9f2"><span class="section-number-3">2.12</span> Electron-electron-nucleus Jastrow \(f_{een}\) derivative</h3>
|
||||
<div id="outline-container-org43e436c" class="outline-3">
|
||||
<h3 id="org43e436c"><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>
|
||||
@ -3880,8 +3880,8 @@ TODO: write equations.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8e2fe91" class="outline-4">
|
||||
<h4 id="org8e2fe91"><span class="section-number-4">2.12.1</span> Get</h4>
|
||||
<div id="outline-container-orgb27dba2" class="outline-4">
|
||||
<h4 id="orgb27dba2"><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>);
|
||||
@ -3890,10 +3890,10 @@ TODO: write equations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf3d6ced" class="outline-4">
|
||||
<h4 id="orgf3d6ced"><span class="section-number-4">2.12.2</span> Compute</h4>
|
||||
<div id="outline-container-org1ce9c49" class="outline-4">
|
||||
<h4 id="org1ce9c49"><span class="section-number-4">2.12.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-12-2">
|
||||
<table id="org27b7967" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org69cc643" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -4118,8 +4118,8 @@ TODO: write equations.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org3d2a6b1" class="outline-4">
|
||||
<h4 id="org3d2a6b1"><span class="section-number-4">2.12.3</span> Test</h4>
|
||||
<div id="outline-container-org45e7f6f" class="outline-4">
|
||||
<h4 id="org45e7f6f"><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>*/
|
||||
@ -4138,7 +4138,7 @@ rc = qmckl_get_jastrow_factor_een_deriv_e(context, &(factor_een_deriv_e[0][0
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<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="#org89251dc">1. Memory data structure for the context</a></li>
|
||||
<li><a href="#orge505cc6">2. Passing info to allocation routines</a></li>
|
||||
<li><a href="#org8f25b1f">3. Allocation/deallocation functions</a></li>
|
||||
<li><a href="#orga1cfa83">1. Memory data structure for the context</a></li>
|
||||
<li><a href="#orgfe15890">2. Passing info to allocation routines</a></li>
|
||||
<li><a href="#org3d5438b">3. Allocation/deallocation functions</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org89251dc" class="outline-2">
|
||||
<h2 id="org89251dc"><span class="section-number-2">1</span> Memory data structure for the context</h2>
|
||||
<div id="outline-container-orga1cfa83" class="outline-2">
|
||||
<h2 id="orga1cfa83"><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-orge505cc6" class="outline-2">
|
||||
<h2 id="orge505cc6"><span class="section-number-2">2</span> Passing info to allocation routines</h2>
|
||||
<div id="outline-container-orgfe15890" class="outline-2">
|
||||
<h2 id="orgfe15890"><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-org8f25b1f" class="outline-2">
|
||||
<h2 id="org8f25b1f"><span class="section-number-2">3</span> Allocation/deallocation functions</h2>
|
||||
<div id="outline-container-org3d5438b" class="outline-2">
|
||||
<h2 id="org3d5438b"><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-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Molecular Orbitals</title>
|
||||
@ -311,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="#orgd2ddcc7">1. Context</a>
|
||||
<li><a href="#orgc140895">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org24be3ad">1.1. Data structure</a></li>
|
||||
<li><a href="#org06319e3">1.2. Access functions</a></li>
|
||||
<li><a href="#orgf2f5e6e">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org258684b">1.1. Data structure</a></li>
|
||||
<li><a href="#org6dd5698">1.2. Access functions</a></li>
|
||||
<li><a href="#org1895af1">1.3. Initialization functions</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgad1b512">2. Computation</a>
|
||||
<li><a href="#orgff882ba">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#orgd7b2fe1">2.1. Computation of MOs</a>
|
||||
<li><a href="#orgd9b2032">2.1. Computation of MOs</a>
|
||||
<ul>
|
||||
<li><a href="#org6eaa6d9">2.1.1. Get</a></li>
|
||||
<li><a href="#org8cc9fb5">2.1.2. Provide</a></li>
|
||||
<li><a href="#org07e0143">2.1.3. Compute</a></li>
|
||||
<li><a href="#org1549bc5">2.1.4. Test</a></li>
|
||||
<li><a href="#orgef999af">2.1.1. Get</a></li>
|
||||
<li><a href="#org6d3b214">2.1.2. Provide</a></li>
|
||||
<li><a href="#org6d0a7bc">2.1.3. Compute</a></li>
|
||||
<li><a href="#orgfb63e0d">2.1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -334,8 +334,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd2ddcc7" class="outline-2">
|
||||
<h2 id="orgd2ddcc7"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-orgc140895" class="outline-2">
|
||||
<h2 id="orgc140895"><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:
|
||||
@ -352,12 +352,6 @@ The following arrays are stored in the context:
|
||||
<col class="org-left" />
|
||||
</colgroup>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="org-left"><code>type</code></td>
|
||||
<td class="org-left"> </td>
|
||||
<td class="org-left">Gaussian (<code>'G'</code>) or Slater (<code>'S'</code>)</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>mo_num</code></td>
|
||||
<td class="org-left"> </td>
|
||||
@ -366,7 +360,7 @@ The following arrays are stored in the context:
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>coefficient</code></td>
|
||||
<td class="org-left"><code>[mo_num, ao_num]</code></td>
|
||||
<td class="org-left"><code>[mo_num][ao_num]</code></td>
|
||||
<td class="org-left">Orbital coefficients</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
@ -402,8 +396,8 @@ Computed data:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org24be3ad" class="outline-3">
|
||||
<h3 id="org24be3ad"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org258684b" class="outline-3">
|
||||
<h3 id="org258684b"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> <span style="color: #228b22;">qmckl_mo_basis_struct</span> {
|
||||
@ -415,7 +409,6 @@ Computed data:
|
||||
|
||||
<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;">char</span> <span style="color: #a0522d;">type</span>;
|
||||
} <span style="color: #228b22;">qmckl_mo_basis_struct</span>;
|
||||
</pre>
|
||||
</div>
|
||||
@ -431,8 +424,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org06319e3" class="outline-3">
|
||||
<h3 id="org06319e3"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org6dd5698" class="outline-3">
|
||||
<h3 id="org6dd5698"><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
|
||||
@ -440,14 +433,14 @@ function returns <code>true</code>.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_mo_basis_provided</span> (<span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>);
|
||||
<pre class="src src-c"><span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_mo_basis_provided</span> (<span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>);
|
||||
</pre>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf2f5e6e" class="outline-3">
|
||||
<h3 id="orgf2f5e6e"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org1895af1" class="outline-3">
|
||||
<h3 id="org1895af1"><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
|
||||
@ -455,8 +448,7 @@ called.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_mo_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_mo_basis_mo_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;">mo_num</span>);
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_mo_basis_mo_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;">mo_num</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_mo_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>);
|
||||
</pre>
|
||||
</div>
|
||||
@ -469,16 +461,16 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgad1b512" class="outline-2">
|
||||
<h2 id="orgad1b512"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-orgff882ba" class="outline-2">
|
||||
<h2 id="orgff882ba"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-orgd7b2fe1" class="outline-3">
|
||||
<h3 id="orgd7b2fe1"><span class="section-number-3">2.1</span> Computation of MOs</h3>
|
||||
<div id="outline-container-orgd9b2032" class="outline-3">
|
||||
<h3 id="orgd9b2032"><span class="section-number-3">2.1</span> Computation of MOs</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
</div>
|
||||
<div id="outline-container-org6eaa6d9" class="outline-4">
|
||||
<h4 id="org6eaa6d9"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-orgef999af" class="outline-4">
|
||||
<h4 id="orgef999af"><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_mo_basis_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;">mo_vgl</span>);
|
||||
@ -487,14 +479,14 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8cc9fb5" class="outline-4">
|
||||
<h4 id="org8cc9fb5"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
<div id="outline-container-org6d3b214" class="outline-4">
|
||||
<h4 id="org6d3b214"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org07e0143" class="outline-4">
|
||||
<h4 id="org07e0143"><span class="section-number-4">2.1.3</span> Compute</h4>
|
||||
<div id="outline-container-org6d0a7bc" class="outline-4">
|
||||
<h4 id="org6d0a7bc"><span class="section-number-4">2.1.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<table id="orgff6eba4" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org0302cfe" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -559,7 +551,7 @@ computed to accelerate the calculations.
|
||||
</table>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span><span style="color: #a0522d;"> function qmckl_compute_mo_basis_gaussian_vgl_f(context, </span><span style="color: #a020f0;">&</span>
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span><span style="color: #a0522d;"> function qmckl_compute_mo_basis_vgl_f(context, </span><span style="color: #a020f0;">&</span>
|
||||
ao_num, mo_num, elec_num, <span style="color: #a020f0;">&</span>
|
||||
coef_normalized, ao_vgl, mo_vgl) <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">result</span>(info)
|
||||
@ -647,12 +639,12 @@ computed to accelerate the calculations.
|
||||
info = QMCKL_FAILURE
|
||||
<span style="color: #a020f0;">end if</span>
|
||||
|
||||
<span style="color: #a020f0;">end function</span> <span style="color: #0000ff;">qmckl_compute_mo_basis_gaussian_vgl_f</span>
|
||||
<span style="color: #a020f0;">end function</span> <span style="color: #0000ff;">qmckl_compute_mo_basis_vgl_f</span>
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_compute_mo_basis_gaussian_vgl</span> (
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_compute_mo_basis_vgl</span> (
|
||||
<span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>,
|
||||
<span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">ao_num</span>,
|
||||
<span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">mo_num</span>,
|
||||
@ -666,15 +658,15 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org1549bc5" class="outline-4">
|
||||
<h4 id="org1549bc5"><span class="section-number-4">2.1.4</span> Test</h4>
|
||||
<div id="outline-container-orgfb63e0d" class="outline-4">
|
||||
<h4 id="orgfb63e0d"><span class="section-number-4">2.1.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<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="#org06e016a">1. Context</a>
|
||||
<li><a href="#orgc46126d">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#orga8ad609">1.1. Data structure</a></li>
|
||||
<li><a href="#orgf3756a2">1.2. Access functions</a></li>
|
||||
<li><a href="#org0f5e9f9">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org7f76ce5">1.4. Test</a></li>
|
||||
<li><a href="#org6c72213">1.1. Data structure</a></li>
|
||||
<li><a href="#org00f8402">1.2. Access functions</a></li>
|
||||
<li><a href="#org1ddd075">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org8237383">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orga04c38a">2. Computation</a>
|
||||
<li><a href="#org39a3a06">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#org6958b76">2.1. Nucleus-nucleus distances</a>
|
||||
<li><a href="#org85a4b42">2.1. Nucleus-nucleus distances</a>
|
||||
<ul>
|
||||
<li><a href="#org24e880f">2.1.1. Get</a></li>
|
||||
<li><a href="#org5d240b6">2.1.2. Compute</a></li>
|
||||
<li><a href="#orgd6d04b6">2.1.3. Test</a></li>
|
||||
<li><a href="#org32077cb">2.1.1. Get</a></li>
|
||||
<li><a href="#orgcf86709">2.1.2. Compute</a></li>
|
||||
<li><a href="#org288c05e">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org3fa2443">2.2. Nucleus-nucleus rescaled distances</a>
|
||||
<li><a href="#org0b1c852">2.2. Nucleus-nucleus rescaled distances</a>
|
||||
<ul>
|
||||
<li><a href="#org4f37f6b">2.2.1. Get</a></li>
|
||||
<li><a href="#orgb31c703">2.2.2. Compute</a></li>
|
||||
<li><a href="#org88a1a22">2.2.3. Test</a></li>
|
||||
<li><a href="#org52dc3a5">2.2.1. Get</a></li>
|
||||
<li><a href="#orgce331f6">2.2.2. Compute</a></li>
|
||||
<li><a href="#org72c0aff">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org652c2bd">2.3. Nuclear repulsion energy</a>
|
||||
<li><a href="#orgbb3f209">2.3. Nuclear repulsion energy</a>
|
||||
<ul>
|
||||
<li><a href="#org2dd566b">2.3.1. Get</a></li>
|
||||
<li><a href="#org84b1098">2.3.2. Compute</a></li>
|
||||
<li><a href="#org657d838">2.3.3. Test</a></li>
|
||||
<li><a href="#orgf2fae95">2.3.1. Get</a></li>
|
||||
<li><a href="#org1e407c4">2.3.2. Compute</a></li>
|
||||
<li><a href="#org8f1d81c">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-org06e016a" class="outline-2">
|
||||
<h2 id="org06e016a"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-orgc46126d" class="outline-2">
|
||||
<h2 id="orgc46126d"><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-orga8ad609" class="outline-3">
|
||||
<h3 id="orga8ad609"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org6c72213" class="outline-3">
|
||||
<h3 id="org6c72213"><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-orgf3756a2" class="outline-3">
|
||||
<h3 id="orgf3756a2"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org00f8402" class="outline-3">
|
||||
<h3 id="org00f8402"><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-org0f5e9f9" class="outline-3">
|
||||
<h3 id="org0f5e9f9"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org1ddd075" class="outline-3">
|
||||
<h3 id="org1ddd075"><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-org7f76ce5" class="outline-3">
|
||||
<h3 id="org7f76ce5"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-org8237383" class="outline-3">
|
||||
<h3 id="org8237383"><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-orga04c38a" class="outline-2">
|
||||
<h2 id="orga04c38a"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org39a3a06" class="outline-2">
|
||||
<h2 id="org39a3a06"><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-org6958b76" class="outline-3">
|
||||
<h3 id="org6958b76"><span class="section-number-3">2.1</span> Nucleus-nucleus distances</h3>
|
||||
<div id="outline-container-org85a4b42" class="outline-3">
|
||||
<h3 id="org85a4b42"><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-org24e880f" class="outline-4">
|
||||
<h4 id="org24e880f"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-org32077cb" class="outline-4">
|
||||
<h4 id="org32077cb"><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-org5d240b6" class="outline-4">
|
||||
<h4 id="org5d240b6"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-orgcf86709" class="outline-4">
|
||||
<h4 id="orgcf86709"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="org5d33b60" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org172bd47" 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-orgd6d04b6" class="outline-4">
|
||||
<h4 id="orgd6d04b6"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-org288c05e" class="outline-4">
|
||||
<h4 id="org288c05e"><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-org3fa2443" class="outline-3">
|
||||
<h3 id="org3fa2443"><span class="section-number-3">2.2</span> Nucleus-nucleus rescaled distances</h3>
|
||||
<div id="outline-container-org0b1c852" class="outline-3">
|
||||
<h3 id="org0b1c852"><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-org4f37f6b" class="outline-4">
|
||||
<h4 id="org4f37f6b"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-org52dc3a5" class="outline-4">
|
||||
<h4 id="org52dc3a5"><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-orgb31c703" class="outline-4">
|
||||
<h4 id="orgb31c703"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-orgce331f6" class="outline-4">
|
||||
<h4 id="orgce331f6"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="org3652437" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org7340c0a" 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-org88a1a22" class="outline-4">
|
||||
<h4 id="org88a1a22"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-org72c0aff" class="outline-4">
|
||||
<h4 id="org72c0aff"><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-org652c2bd" class="outline-3">
|
||||
<h3 id="org652c2bd"><span class="section-number-3">2.3</span> Nuclear repulsion energy</h3>
|
||||
<div id="outline-container-orgbb3f209" class="outline-3">
|
||||
<h3 id="orgbb3f209"><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-org2dd566b" class="outline-4">
|
||||
<h4 id="org2dd566b"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-orgf2fae95" class="outline-4">
|
||||
<h4 id="orgf2fae95"><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-org84b1098" class="outline-4">
|
||||
<h4 id="org84b1098"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div id="outline-container-org1e407c4" class="outline-4">
|
||||
<h4 id="org1e407c4"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-3-2">
|
||||
<table id="org5e771d6" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org1f425da" 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-org657d838" class="outline-4">
|
||||
<h4 id="org657d838"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div id="outline-container-org8f1d81c" class="outline-4">
|
||||
<h4 id="org8f1d81c"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-3-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Reference input data </span>*/
|
||||
@ -1038,7 +1038,7 @@ rc = qmckl_get_nucleus_repulsion(context, &rep);
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<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="#orga0b3e2a">1. Control of the numerical precision</a></li>
|
||||
<li><a href="#org6df8252">2. Precision</a></li>
|
||||
<li><a href="#orgdc298b4">3. Range</a></li>
|
||||
<li><a href="#orgca07837">4. Helper functions</a></li>
|
||||
<li><a href="#orgdd39b45">1. Control of the numerical precision</a></li>
|
||||
<li><a href="#org46e58c5">2. Precision</a></li>
|
||||
<li><a href="#orgb1a3264">3. Range</a></li>
|
||||
<li><a href="#org1a02a2d">4. Helper functions</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga0b3e2a" class="outline-2">
|
||||
<h2 id="orga0b3e2a"><span class="section-number-2">1</span> Control of the numerical precision</h2>
|
||||
<div id="outline-container-orgdd39b45" class="outline-2">
|
||||
<h2 id="orgdd39b45"><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="orgb60cab1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org3ced093" 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-org6df8252" class="outline-2">
|
||||
<h2 id="org6df8252"><span class="section-number-2">2</span> Precision</h2>
|
||||
<div id="outline-container-org46e58c5" class="outline-2">
|
||||
<h2 id="org46e58c5"><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-orgdc298b4" class="outline-2">
|
||||
<h2 id="orgdc298b4"><span class="section-number-2">3</span> Range</h2>
|
||||
<div id="outline-container-orgb1a3264" class="outline-2">
|
||||
<h2 id="orgb1a3264"><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-orgca07837" class="outline-2">
|
||||
<h2 id="orgca07837"><span class="section-number-2">4</span> Helper functions</h2>
|
||||
<div id="outline-container-org1a02a2d" class="outline-2">
|
||||
<h2 id="org1a02a2d"><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-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Sherman-Morrison-Woodbury</title>
|
||||
@ -333,86 +333,86 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgcb4bdde">1. Headers</a></li>
|
||||
<li><a href="#org99cf252">2. Naïve Sherman-Morrison</a>
|
||||
<li><a href="#org0ea5fc6">1. Headers</a></li>
|
||||
<li><a href="#org94cedb7">2. Naïve Sherman-Morrison</a>
|
||||
<ul>
|
||||
<li><a href="#orgc743699">2.1. <code>qmckl_sherman_morrison</code></a>
|
||||
<li><a href="#org3ad7612">2.1. <code>qmckl_sherman_morrison</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgbe68587">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org474bc4b">2.1.2. C header</a></li>
|
||||
<li><a href="#orgab30537">2.1.3. C source</a></li>
|
||||
<li><a href="#org599d8bf">2.1.4. Performance</a></li>
|
||||
<li><a href="#orgffa78a9">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org03fd377">2.1.2. C header</a></li>
|
||||
<li><a href="#org2f51a91">2.1.3. C source</a></li>
|
||||
<li><a href="#org923900a">2.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orge7f2afc">3. Woodbury 2x2</a>
|
||||
<li><a href="#orgcee9456">3. Woodbury 2x2</a>
|
||||
<ul>
|
||||
<li><a href="#org6d6d669">3.1. <code>qmckl_woodbury_2</code></a>
|
||||
<li><a href="#orgdebb0bb">3.1. <code>qmckl_woodbury_2</code></a>
|
||||
<ul>
|
||||
<li><a href="#org059ff2f">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orga384d5d">3.1.2. C header</a></li>
|
||||
<li><a href="#orge2ff25d">3.1.3. C source</a></li>
|
||||
<li><a href="#orgf7d8d95">3.1.4. Performance</a></li>
|
||||
<li><a href="#org62f0fe1">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orge121bda">3.1.2. C header</a></li>
|
||||
<li><a href="#org70790ee">3.1.3. C source</a></li>
|
||||
<li><a href="#orga3883b2">3.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org8936e55">4. Woodbury 3x3</a>
|
||||
<li><a href="#orgb305fbd">4. Woodbury 3x3</a>
|
||||
<ul>
|
||||
<li><a href="#org138bfdf">4.1. <code>qmckl_woodbury_3</code></a>
|
||||
<li><a href="#orgd6cbc63">4.1. <code>qmckl_woodbury_3</code></a>
|
||||
<ul>
|
||||
<li><a href="#org3591faa">4.1.1. Requirements</a></li>
|
||||
<li><a href="#org7553883">4.1.2. C header</a></li>
|
||||
<li><a href="#org61898d7">4.1.3. C source</a></li>
|
||||
<li><a href="#orgb5eebf6">4.1.4. Performance…</a></li>
|
||||
<li><a href="#orgac84388">4.1.1. Requirements</a></li>
|
||||
<li><a href="#org4eca5a7">4.1.2. C header</a></li>
|
||||
<li><a href="#org25d6115">4.1.3. C source</a></li>
|
||||
<li><a href="#org83e6841">4.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org7e33092">5. Sherman-Morrison with update splitting</a>
|
||||
<li><a href="#orge17d39e">5. Sherman-Morrison with update splitting</a>
|
||||
<ul>
|
||||
<li><a href="#org83221df">5.1. <code>qmckl_sherman_morrison_splitting</code></a>
|
||||
<li><a href="#orgb9b19c4">5.1. <code>qmckl_sherman_morrison_splitting</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgd720510">5.1.1. Requirements</a></li>
|
||||
<li><a href="#org1e7030d">5.1.2. C header</a></li>
|
||||
<li><a href="#org0136aac">5.1.3. C source</a></li>
|
||||
<li><a href="#org575e3ba">5.1.4. Performance…</a></li>
|
||||
<li><a href="#org427a57a">5.1.1. Requirements</a></li>
|
||||
<li><a href="#orgf96209b">5.1.2. C header</a></li>
|
||||
<li><a href="#org4525a4a">5.1.3. C source</a></li>
|
||||
<li><a href="#org5162769">5.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgf2fea66">6. Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</a>
|
||||
<li><a href="#orge7b28ea">6. Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</a>
|
||||
<ul>
|
||||
<li><a href="#orgf461dab">6.1. <code>qmckl_sherman_morrison_smw32s</code></a>
|
||||
<li><a href="#org1f39f0d">6.1. <code>qmckl_sherman_morrison_smw32s</code></a>
|
||||
<ul>
|
||||
<li><a href="#org5af8131">6.1.1. Requirements</a></li>
|
||||
<li><a href="#orgb8c58ec">6.1.2. C header</a></li>
|
||||
<li><a href="#orgdb9f3ee">6.1.3. C source</a></li>
|
||||
<li><a href="#org69438e0">6.1.4. Performance…</a></li>
|
||||
<li><a href="#org139fb39">6.1.1. Requirements</a></li>
|
||||
<li><a href="#org8e5a734">6.1.2. C header</a></li>
|
||||
<li><a href="#org4b4e485">6.1.3. C source</a></li>
|
||||
<li><a href="#orgf2153f1">6.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org8a45038">7. Helper Functions</a>
|
||||
<li><a href="#orgeae21d9">7. Helper Functions</a>
|
||||
<ul>
|
||||
<li><a href="#org2a26ef3">7.1. <code>qmckl_slagel_splitting</code></a>
|
||||
<li><a href="#org7a61c15">7.1. <code>qmckl_slagel_splitting</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgf86eaba">7.1.1. Requirements</a></li>
|
||||
<li><a href="#org6cc1469">7.1.2. C header</a></li>
|
||||
<li><a href="#orge5cd1bd">7.1.3. C source</a></li>
|
||||
<li><a href="#org308f4d5">7.1.4. Performance</a></li>
|
||||
<li><a href="#org8134173">7.1.1. Requirements</a></li>
|
||||
<li><a href="#org4947bc6">7.1.2. C header</a></li>
|
||||
<li><a href="#org03003bb">7.1.3. C source</a></li>
|
||||
<li><a href="#orgeb38c6f">7.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org05c3e89">8. End of files</a></li>
|
||||
<li><a href="#orga414b69">8. End of files</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcb4bdde" class="outline-2">
|
||||
<h2 id="orgcb4bdde"><span class="section-number-2">1</span> Headers</h2>
|
||||
<div id="outline-container-org0ea5fc6" class="outline-2">
|
||||
<h2 id="org0ea5fc6"><span class="section-number-2">1</span> Headers</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;">"qmckl.h"</span>
|
||||
@ -431,12 +431,12 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org99cf252" class="outline-2">
|
||||
<h2 id="org99cf252"><span class="section-number-2">2</span> Naïve Sherman-Morrison</h2>
|
||||
<div id="outline-container-org94cedb7" class="outline-2">
|
||||
<h2 id="org94cedb7"><span class="section-number-2">2</span> Naïve Sherman-Morrison</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-orgc743699" class="outline-3">
|
||||
<h3 id="orgc743699"><span class="section-number-3">2.1</span> <code>qmckl_sherman_morrison</code></h3>
|
||||
<div id="outline-container-org3ad7612" class="outline-3">
|
||||
<h3 id="org3ad7612"><span class="section-number-3">2.1</span> <code>qmckl_sherman_morrison</code></h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
This is the simplest of the available Sherman-Morrison-Woodbury kernels. It applies rank-1 updates one by one in
|
||||
@ -478,7 +478,7 @@ If the determinant of the Slater-matrix is passed, it will be updated to the det
|
||||
from applying the updates to the original matrix.
|
||||
</p>
|
||||
|
||||
<table id="org4205410" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgb0fa5cc" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -550,8 +550,8 @@ from applying the updates to the original matrix.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbe68587" class="outline-4">
|
||||
<h4 id="orgbe68587"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgffa78a9" class="outline-4">
|
||||
<h4 id="orgffa78a9"><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>
|
||||
@ -565,8 +565,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org474bc4b" class="outline-4">
|
||||
<h4 id="org474bc4b"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div id="outline-container-org03fd377" class="outline-4">
|
||||
<h4 id="org03fd377"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_sherman_morrison</span> (
|
||||
@ -583,8 +583,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgab30537" class="outline-4">
|
||||
<h4 id="orgab30537"><span class="section-number-4">2.1.3</span> C source</h4>
|
||||
<div id="outline-container-org2f51a91" class="outline-4">
|
||||
<h4 id="org2f51a91"><span class="section-number-4">2.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -653,8 +653,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org599d8bf" class="outline-4">
|
||||
<h4 id="org599d8bf"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org923900a" class="outline-4">
|
||||
<h4 id="org923900a"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-2-1-4">
|
||||
<p>
|
||||
This function performs best when there is only 1 rank-1 update in the update cycle. It is not useful to
|
||||
@ -666,12 +666,12 @@ where applying the update causes singular behaviour.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge7f2afc" class="outline-2">
|
||||
<h2 id="orge7f2afc"><span class="section-number-2">3</span> Woodbury 2x2</h2>
|
||||
<div id="outline-container-orgcee9456" class="outline-2">
|
||||
<h2 id="orgcee9456"><span class="section-number-2">3</span> Woodbury 2x2</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org6d6d669" class="outline-3">
|
||||
<h3 id="org6d6d669"><span class="section-number-3">3.1</span> <code>qmckl_woodbury_2</code></h3>
|
||||
<div id="outline-container-orgdebb0bb" class="outline-3">
|
||||
<h3 id="orgdebb0bb"><span class="section-number-3">3.1</span> <code>qmckl_woodbury_2</code></h3>
|
||||
<div class="outline-text-3" id="text-3-1">
|
||||
<p>
|
||||
The Woodbury 2x2 kernel. It is used to apply two rank-1 updates at once. The formula used in
|
||||
@ -695,7 +695,7 @@ from applying the updates to the original matrix.
|
||||
|
||||
|
||||
|
||||
<table id="org64c3e58" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org4642495" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -760,8 +760,8 @@ from applying the updates to the original matrix.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org059ff2f" class="outline-4">
|
||||
<h4 id="org059ff2f"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org62f0fe1" class="outline-4">
|
||||
<h4 id="org62f0fe1"><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>
|
||||
@ -774,8 +774,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga384d5d" class="outline-4">
|
||||
<h4 id="orga384d5d"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div id="outline-container-orge121bda" class="outline-4">
|
||||
<h4 id="orge121bda"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-3-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_woodbury_2</span> (
|
||||
@ -791,8 +791,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge2ff25d" class="outline-4">
|
||||
<h4 id="orge2ff25d"><span class="section-number-4">3.1.3</span> C source</h4>
|
||||
<div id="outline-container-org70790ee" class="outline-4">
|
||||
<h4 id="org70790ee"><span class="section-number-4">3.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-3-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -878,8 +878,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf7d8d95" class="outline-4">
|
||||
<h4 id="orgf7d8d95"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div id="outline-container-orga3883b2" class="outline-4">
|
||||
<h4 id="orga3883b2"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-3-1-4">
|
||||
<p>
|
||||
This function is most efficient when used in cases where there are only 2 rank-1 updates and
|
||||
@ -890,12 +890,12 @@ it is sure they will not result in a singular matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8936e55" class="outline-2">
|
||||
<h2 id="org8936e55"><span class="section-number-2">4</span> Woodbury 3x3</h2>
|
||||
<div id="outline-container-orgb305fbd" class="outline-2">
|
||||
<h2 id="orgb305fbd"><span class="section-number-2">4</span> Woodbury 3x3</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-org138bfdf" class="outline-3">
|
||||
<h3 id="org138bfdf"><span class="section-number-3">4.1</span> <code>qmckl_woodbury_3</code></h3>
|
||||
<div id="outline-container-orgd6cbc63" class="outline-3">
|
||||
<h3 id="orgd6cbc63"><span class="section-number-3">4.1</span> <code>qmckl_woodbury_3</code></h3>
|
||||
<div class="outline-text-3" id="text-4-1">
|
||||
<p>
|
||||
The 3x3 version of the Woodbury 2x2 kernel. It is used to apply three
|
||||
@ -916,7 +916,7 @@ from applying the updates to the original matrix.
|
||||
|
||||
|
||||
|
||||
<table id="orgda06eff" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org3560ff7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -981,8 +981,8 @@ from applying the updates to the original matrix.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3591faa" class="outline-4">
|
||||
<h4 id="org3591faa"><span class="section-number-4">4.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgac84388" class="outline-4">
|
||||
<h4 id="orgac84388"><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>
|
||||
@ -995,8 +995,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7553883" class="outline-4">
|
||||
<h4 id="org7553883"><span class="section-number-4">4.1.2</span> C header</h4>
|
||||
<div id="outline-container-org4eca5a7" class="outline-4">
|
||||
<h4 id="org4eca5a7"><span class="section-number-4">4.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-4-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_woodbury_3</span> (
|
||||
@ -1012,8 +1012,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org61898d7" class="outline-4">
|
||||
<h4 id="org61898d7"><span class="section-number-4">4.1.3</span> C source</h4>
|
||||
<div id="outline-container-org25d6115" class="outline-4">
|
||||
<h4 id="org25d6115"><span class="section-number-4">4.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-4-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -1114,8 +1114,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb5eebf6" class="outline-4">
|
||||
<h4 id="orgb5eebf6"><span class="section-number-4">4.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-org83e6841" class="outline-4">
|
||||
<h4 id="org83e6841"><span class="section-number-4">4.1.4</span> Performance…</h4>
|
||||
<div class="outline-text-4" id="text-4-1-4">
|
||||
<p>
|
||||
This function is most efficient when used in cases where there are only 3 rank-1 updates and
|
||||
@ -1126,12 +1126,12 @@ it is sure they will not result in a singular matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7e33092" class="outline-2">
|
||||
<h2 id="org7e33092"><span class="section-number-2">5</span> Sherman-Morrison with update splitting</h2>
|
||||
<div id="outline-container-orge17d39e" class="outline-2">
|
||||
<h2 id="orge17d39e"><span class="section-number-2">5</span> Sherman-Morrison with update splitting</h2>
|
||||
<div class="outline-text-2" id="text-5">
|
||||
</div>
|
||||
<div id="outline-container-org83221df" class="outline-3">
|
||||
<h3 id="org83221df"><span class="section-number-3">5.1</span> <code>qmckl_sherman_morrison_splitting</code></h3>
|
||||
<div id="outline-container-orgb9b19c4" class="outline-3">
|
||||
<h3 id="orgb9b19c4"><span class="section-number-3">5.1</span> <code>qmckl_sherman_morrison_splitting</code></h3>
|
||||
<div class="outline-text-3" id="text-5-1">
|
||||
<p>
|
||||
This is a variation on the 'Naive' Sherman-Morrison kernel. Whenever the denominator \(1+v_j^T S^{-1} u_j\) in
|
||||
@ -1153,7 +1153,7 @@ If the determinant of the Slater-matrix is passed, it will be updated to the det
|
||||
from applying the updates to the original matrix.
|
||||
</p>
|
||||
|
||||
<table id="org400656e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org720ca1e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1230,8 +1230,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgd720510" class="outline-4">
|
||||
<h4 id="orgd720510"><span class="section-number-4">5.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org427a57a" class="outline-4">
|
||||
<h4 id="org427a57a"><span class="section-number-4">5.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-5-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -1245,8 +1245,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1e7030d" class="outline-4">
|
||||
<h4 id="org1e7030d"><span class="section-number-4">5.1.2</span> C header</h4>
|
||||
<div id="outline-container-orgf96209b" class="outline-4">
|
||||
<h4 id="orgf96209b"><span class="section-number-4">5.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-5-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_sherman_morrison_splitting</span> (
|
||||
@ -1263,8 +1263,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0136aac" class="outline-4">
|
||||
<h4 id="org0136aac"><span class="section-number-4">5.1.3</span> C source</h4>
|
||||
<div id="outline-container-org4525a4a" class="outline-4">
|
||||
<h4 id="org4525a4a"><span class="section-number-4">5.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-5-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -1303,8 +1303,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org575e3ba" class="outline-4">
|
||||
<h4 id="org575e3ba"><span class="section-number-4">5.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-org5162769" class="outline-4">
|
||||
<h4 id="org5162769"><span class="section-number-4">5.1.4</span> Performance…</h4>
|
||||
<div class="outline-text-4" id="text-5-1-4">
|
||||
<p>
|
||||
This kernel performs best when there are 2 or more rank-1 update cycles and fail-rate is high.
|
||||
@ -1314,12 +1314,12 @@ This kernel performs best when there are 2 or more rank-1 update cycles and fail
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf2fea66" class="outline-2">
|
||||
<h2 id="orgf2fea66"><span class="section-number-2">6</span> Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</h2>
|
||||
<div id="outline-container-orge7b28ea" class="outline-2">
|
||||
<h2 id="orge7b28ea"><span class="section-number-2">6</span> Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</h2>
|
||||
<div class="outline-text-2" id="text-6">
|
||||
</div>
|
||||
<div id="outline-container-orgf461dab" class="outline-3">
|
||||
<h3 id="orgf461dab"><span class="section-number-3">6.1</span> <code>qmckl_sherman_morrison_smw32s</code></h3>
|
||||
<div id="outline-container-org1f39f0d" class="outline-3">
|
||||
<h3 id="org1f39f0d"><span class="section-number-3">6.1</span> <code>qmckl_sherman_morrison_smw32s</code></h3>
|
||||
<div class="outline-text-3" id="text-6-1">
|
||||
<p>
|
||||
The Woodbury 3x3 and 2x2 kernel with Sherman-Morrison and update splitting combines the low-level Woodbury 3x3 kernel,
|
||||
@ -1334,7 +1334,7 @@ If the determinant of the Slater-matrix is passed, it will be updated to the det
|
||||
from applying the updates to the original matrix.
|
||||
</p>
|
||||
|
||||
<table id="orgcc865e2" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org6e42af7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1407,8 +1407,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org5af8131" class="outline-4">
|
||||
<h4 id="org5af8131"><span class="section-number-4">6.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org139fb39" class="outline-4">
|
||||
<h4 id="org139fb39"><span class="section-number-4">6.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-6-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -1422,8 +1422,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb8c58ec" class="outline-4">
|
||||
<h4 id="orgb8c58ec"><span class="section-number-4">6.1.2</span> C header</h4>
|
||||
<div id="outline-container-org8e5a734" class="outline-4">
|
||||
<h4 id="org8e5a734"><span class="section-number-4">6.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-6-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_sherman_morrison_smw32s</span> (
|
||||
@ -1440,8 +1440,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdb9f3ee" class="outline-4">
|
||||
<h4 id="orgdb9f3ee"><span class="section-number-4">6.1.3</span> C source</h4>
|
||||
<div id="outline-container-org4b4e485" class="outline-4">
|
||||
<h4 id="org4b4e485"><span class="section-number-4">6.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-6-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -1518,8 +1518,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org69438e0" class="outline-4">
|
||||
<h4 id="org69438e0"><span class="section-number-4">6.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-orgf2153f1" class="outline-4">
|
||||
<h4 id="orgf2153f1"><span class="section-number-4">6.1.4</span> Performance…</h4>
|
||||
<div class="outline-text-4" id="text-6-1-4">
|
||||
<p>
|
||||
This kernel performs best for update cycles with 2 or more rank-1 updates and the fail-rate is low.
|
||||
@ -1529,8 +1529,8 @@ This kernel performs best for update cycles with 2 or more rank-1 updates and th
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8a45038" class="outline-2">
|
||||
<h2 id="org8a45038"><span class="section-number-2">7</span> Helper Functions</h2>
|
||||
<div id="outline-container-orgeae21d9" class="outline-2">
|
||||
<h2 id="orgeae21d9"><span class="section-number-2">7</span> Helper Functions</h2>
|
||||
<div class="outline-text-2" id="text-7">
|
||||
<p>
|
||||
Private helper-functions that are used by the Sherman-Morrison-Woodbury kernels.
|
||||
@ -1538,8 +1538,8 @@ These functions can only be used internally by the kernels in this module.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2a26ef3" class="outline-3">
|
||||
<h3 id="org2a26ef3"><span class="section-number-3">7.1</span> <code>qmckl_slagel_splitting</code></h3>
|
||||
<div id="outline-container-org7a61c15" class="outline-3">
|
||||
<h3 id="org7a61c15"><span class="section-number-3">7.1</span> <code>qmckl_slagel_splitting</code></h3>
|
||||
<div class="outline-text-3" id="text-7-1">
|
||||
<p>
|
||||
<code>qmckl_slagel_splitting</code> is the non-recursive, inner part of the 'Sherman-Morrison with update splitting'-kernel.
|
||||
@ -1559,7 +1559,7 @@ If the determinant of the Slater-matrix is passed, it will be updated to the det
|
||||
from applying the updates to the original matrix.
|
||||
</p>
|
||||
|
||||
<table id="org5e177b9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org58db315" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1646,8 +1646,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgf86eaba" class="outline-4">
|
||||
<h4 id="orgf86eaba"><span class="section-number-4">7.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org8134173" class="outline-4">
|
||||
<h4 id="org8134173"><span class="section-number-4">7.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-7-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>Dim >= 2</code></li>
|
||||
@ -1663,8 +1663,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6cc1469" class="outline-4">
|
||||
<h4 id="org6cc1469"><span class="section-number-4">7.1.2</span> C header</h4>
|
||||
<div id="outline-container-org4947bc6" class="outline-4">
|
||||
<h4 id="org4947bc6"><span class="section-number-4">7.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-7-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">double</span> <span style="color: #0000ff;">qmckl_slagel_splitting</span> (
|
||||
@ -1683,8 +1683,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge5cd1bd" class="outline-4">
|
||||
<h4 id="orge5cd1bd"><span class="section-number-4">7.1.3</span> C source</h4>
|
||||
<div id="outline-container-org03003bb" class="outline-4">
|
||||
<h4 id="org03003bb"><span class="section-number-4">7.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-7-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -1761,8 +1761,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org308f4d5" class="outline-4">
|
||||
<h4 id="org308f4d5"><span class="section-number-4">7.1.4</span> Performance</h4>
|
||||
<div id="outline-container-orgeb38c6f" class="outline-4">
|
||||
<h4 id="orgeb38c6f"><span class="section-number-4">7.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-7-1-4">
|
||||
<p>
|
||||
This function cannot be used by itself and is used in Sherman-Morrison with update splitting and Woodbury 3x3 and 2x2
|
||||
@ -1773,8 +1773,8 @@ with Sherman-Morrison and update splitting. Please look at the performance recco
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org05c3e89" class="outline-2">
|
||||
<h2 id="org05c3e89"><span class="section-number-2">8</span> End of files</h2>
|
||||
<div id="outline-container-orga414b69" class="outline-2">
|
||||
<h2 id="orga414b69"><span class="section-number-2">8</span> End of files</h2>
|
||||
<div class="outline-text-2" id="text-8">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"> <span style="color: #0000ff;">assert</span> (<span style="color: #228b22;">qmckl_context_destroy</span>(<span style="color: #a0522d;">context</span>) == QMCKL_SUCCESS);
|
||||
@ -1788,7 +1788,7 @@ with Sherman-Morrison and update splitting. Please look at the performance recco
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<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="#org7029a8c">1. CHBrClF</a>
|
||||
<li><a href="#org9c5f857">1. CHBrClF</a>
|
||||
<ul>
|
||||
<li><a href="#orgec44401">1.1. XYZ coordinates</a></li>
|
||||
<li><a href="#orgf7dd42f">1.2. Atomic basis set</a></li>
|
||||
<li><a href="#orgdc7d543">1.3. Molecular orbitals</a></li>
|
||||
<li><a href="#org02931d6">1.4. Electron coordinates</a></li>
|
||||
<li><a href="#org4cd246b">1.1. XYZ coordinates</a></li>
|
||||
<li><a href="#org8a8ae4d">1.2. Atomic basis set</a></li>
|
||||
<li><a href="#org73f3870">1.3. Molecular orbitals</a></li>
|
||||
<li><a href="#org9420d7b">1.4. Electron coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org33d4480">2. N2</a>
|
||||
<li><a href="#org7c8dabe">2. N2</a>
|
||||
<ul>
|
||||
<li><a href="#orgcab5857">2.1. XYZ coordinates</a></li>
|
||||
<li><a href="#orgfce37ca">2.2. Electron coordinates</a></li>
|
||||
<li><a href="#org68f131c">2.3. Jastrow related data</a></li>
|
||||
<li><a href="#org3d9acae">2.1. XYZ coordinates</a></li>
|
||||
<li><a href="#org325a610">2.2. Electron coordinates</a></li>
|
||||
<li><a href="#orgae9cd27">2.3. Jastrow related data</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7029a8c" class="outline-2">
|
||||
<h2 id="org7029a8c"><span class="section-number-2">1</span> CHBrClF</h2>
|
||||
<div id="outline-container-org9c5f857" class="outline-2">
|
||||
<h2 id="org9c5f857"><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-orgec44401" class="outline-3">
|
||||
<h3 id="orgec44401"><span class="section-number-3">1.1</span> XYZ coordinates</h3>
|
||||
<div id="outline-container-org4cd246b" class="outline-3">
|
||||
<h3 id="org4cd246b"><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-orgf7dd42f" class="outline-3">
|
||||
<h3 id="orgf7dd42f"><span class="section-number-3">1.2</span> Atomic basis set</h3>
|
||||
<div id="outline-container-org8a8ae4d" class="outline-3">
|
||||
<h3 id="org8a8ae4d"><span class="section-number-3">1.2</span> Atomic basis set</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<pre class="example">
|
||||
HYDROGEN
|
||||
@ -1288,8 +1288,8 @@ F 1
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdc7d543" class="outline-3">
|
||||
<h3 id="orgdc7d543"><span class="section-number-3">1.3</span> Molecular orbitals</h3>
|
||||
<div id="outline-container-org73f3870" class="outline-3">
|
||||
<h3 id="org73f3870"><span class="section-number-3">1.3</span> Molecular orbitals</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">chbrclf_mo_num</span> ((<span style="color: #228b22;">int64_t</span>) 224)
|
||||
@ -60213,8 +60213,8 @@ F 1
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org02931d6" class="outline-3">
|
||||
<h3 id="org02931d6"><span class="section-number-3">1.4</span> Electron coordinates</h3>
|
||||
<div id="outline-container-org9420d7b" class="outline-3">
|
||||
<h3 id="org9420d7b"><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.
|
||||
@ -60374,8 +60374,8 @@ Electron coordinates are stored in atomic units in normal format.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org33d4480" class="outline-2">
|
||||
<h2 id="org33d4480"><span class="section-number-2">2</span> N2</h2>
|
||||
<div id="outline-container-org7c8dabe" class="outline-2">
|
||||
<h2 id="org7c8dabe"><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
|
||||
@ -60416,14 +60416,14 @@ treated by pseudopotentials thus excluded from the actual calculation.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcab5857" class="outline-3">
|
||||
<h3 id="orgcab5857"><span class="section-number-3">2.1</span> XYZ coordinates</h3>
|
||||
<div id="outline-container-org3d9acae" class="outline-3">
|
||||
<h3 id="org3d9acae"><span class="section-number-3">2.1</span> XYZ coordinates</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<pre class="example">
|
||||
2
|
||||
N2
|
||||
N 0.000000 0.000000 0.000000
|
||||
N 0.000000 0.000000 2.059801
|
||||
N 0.000000 0.000000 0.00
|
||||
N 0.000000 0.000000 1.09
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
@ -60444,8 +60444,8 @@ Nuclear coordinates are stored in atomic units in transposed format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfce37ca" class="outline-3">
|
||||
<h3 id="orgfce37ca"><span class="section-number-3">2.2</span> Electron coordinates</h3>
|
||||
<div id="outline-container-org325a610" class="outline-3">
|
||||
<h3 id="org325a610"><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.
|
||||
@ -60474,8 +60474,8 @@ Electron coordinates are stored in atomic units in normal format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org68f131c" class="outline-3">
|
||||
<h3 id="org68f131c"><span class="section-number-3">2.3</span> Jastrow related data</h3>
|
||||
<div id="outline-container-orgae9cd27" class="outline-3">
|
||||
<h3 id="orgae9cd27"><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
|
||||
@ -60574,7 +60574,7 @@ Ramon Panades Baruetta.
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="date">Created: 2021-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
1544
qmckl_trexio.html
Normal file
1544
qmckl_trexio.html
Normal file
File diff suppressed because it is too large
Load Diff
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-13 Wed 13:05 -->
|
||||
<!-- 2021-10-14 Thu 17:50 -->
|
||||
<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="#org2a2584a">1. Matrix operations</a>
|
||||
<li><a href="#orgda625d9">1. Matrix operations</a>
|
||||
<ul>
|
||||
<li><a href="#org47cfdbb">1.1. <code>qmckl_transpose</code></a>
|
||||
<li><a href="#orgbc13b80">1.1. <code>qmckl_transpose</code></a>
|
||||
<ul>
|
||||
<li><a href="#org41f1a28">1.1.1. Requirements</a></li>
|
||||
<li><a href="#orgb47072f">1.1.2. C header</a></li>
|
||||
<li><a href="#org8a2aea7">1.1.3. Source</a></li>
|
||||
<li><a href="#orga762f89">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org6b61a62">1.1.2. C header</a></li>
|
||||
<li><a href="#orgc6d5954">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-org2a2584a" class="outline-2">
|
||||
<h2 id="org2a2584a"><span class="section-number-2">1</span> Matrix operations</h2>
|
||||
<div id="outline-container-orgda625d9" class="outline-2">
|
||||
<h2 id="orgda625d9"><span class="section-number-2">1</span> Matrix operations</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-org47cfdbb" class="outline-3">
|
||||
<h3 id="org47cfdbb"><span class="section-number-3">1.1</span> <code>qmckl_transpose</code></h3>
|
||||
<div id="outline-container-orgbc13b80" class="outline-3">
|
||||
<h3 id="orgbc13b80"><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="org054fb76" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org50957d9" 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-org41f1a28" class="outline-4">
|
||||
<h4 id="org41f1a28"><span class="section-number-4">1.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orga762f89" class="outline-4">
|
||||
<h4 id="orga762f89"><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-orgb47072f" class="outline-4">
|
||||
<h4 id="orgb47072f"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div id="outline-container-org6b61a62" class="outline-4">
|
||||
<h4 id="org6b61a62"><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-org8a2aea7" class="outline-4">
|
||||
<h4 id="org8a2aea7"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div id="outline-container-orgc6d5954" class="outline-4">
|
||||
<h4 id="orgc6d5954"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-1-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer </span><span style="color: #a020f0;">function</span><span style="color: #a0522d;"> </span><span style="color: #0000ff;">qmckl_transpose_f</span><span style="color: #000000; background-color: #ffffff;">(context, m, n, A, LDA, B, LDB)</span><span style="color: #a0522d;"> </span><span style="color: #a020f0;">&</span>
|
||||
@ -516,7 +516,7 @@ Transposes a matrix: \(B_{ji} = A_{ij}\)
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-13 Wed 13:05</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 17:50</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
Loading…
Reference in New Issue
Block a user