mirror of
https://github.com/TREX-CoE/qmckl.git
synced 2025-01-08 20:33:40 +01:00
Deploying to gh-pages from @ TREX-CoE/qmckl@4ae5517641 🚀
This commit is contained in:
parent
a6af81c00d
commit
c6923a32f0
@ -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-06-03 Thu 20:35 -->
|
||||
<!-- 2021-06-09 Wed 22:11 -->
|
||||
<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>
|
||||
@ -352,7 +352,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-06-03 Thu 20:35</p>
|
||||
<p class="date">Created: 2021-06-09 Wed 22:11</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-06-03 Thu 20:35 -->
|
||||
<!-- 2021-06-09 Wed 22:11 -->
|
||||
<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="#org3827551">1. Using QMCkl</a></li>
|
||||
<li><a href="#org4733aee">2. Developing in QMCkl</a>
|
||||
<li><a href="#orgf3f82ce">1. Using QMCkl</a></li>
|
||||
<li><a href="#orgeb146a2">2. Developing in QMCkl</a>
|
||||
<ul>
|
||||
<li><a href="#orgeb46251">2.1. Literate programming</a></li>
|
||||
<li><a href="#orged5cad4">2.2. Source code editing</a></li>
|
||||
<li><a href="#org74ba0b6">2.3. Choice of the programming language</a></li>
|
||||
<li><a href="#orgd2c2ef9">2.4. Coding rules</a></li>
|
||||
<li><a href="#org2336faa">2.5. Design of the library</a></li>
|
||||
<li><a href="#org3b6ff1a">2.6. Naming conventions</a></li>
|
||||
<li><a href="#orgdd67476">2.7. Application programming interface</a></li>
|
||||
<li><a href="#org6da3f7c">2.8. Global state</a></li>
|
||||
<li><a href="#orgf508e23">2.9. Headers</a></li>
|
||||
<li><a href="#org21e6087">2.10. Low-level functions</a></li>
|
||||
<li><a href="#org1e5ca90">2.11. High-level functions</a></li>
|
||||
<li><a href="#org3567b4a">2.12. Numerical precision</a></li>
|
||||
<li><a href="#org73356fb">2.13. Algorithms</a></li>
|
||||
<li><a href="#org7939fce">2.1. Literate programming</a></li>
|
||||
<li><a href="#org8abf38d">2.2. Source code editing</a></li>
|
||||
<li><a href="#org87e271c">2.3. Choice of the programming language</a></li>
|
||||
<li><a href="#orge97bd5d">2.4. Coding rules</a></li>
|
||||
<li><a href="#org1e921de">2.5. Design of the library</a></li>
|
||||
<li><a href="#org6959be5">2.6. Naming conventions</a></li>
|
||||
<li><a href="#orge848922">2.7. Application programming interface</a></li>
|
||||
<li><a href="#org83db4d5">2.8. Global state</a></li>
|
||||
<li><a href="#org5f633aa">2.9. Headers</a></li>
|
||||
<li><a href="#org9e7c8d4">2.10. Low-level functions</a></li>
|
||||
<li><a href="#org1ce4d10">2.11. High-level functions</a></li>
|
||||
<li><a href="#org2d77c75">2.12. Numerical precision</a></li>
|
||||
<li><a href="#org6739956">2.13. Algorithms</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3827551" class="outline-2">
|
||||
<h2 id="org3827551"><span class="section-number-2">1</span> Using QMCkl</h2>
|
||||
<div id="outline-container-orgf3f82ce" class="outline-2">
|
||||
<h2 id="orgf3f82ce"><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-org4733aee" class="outline-2">
|
||||
<h2 id="org4733aee"><span class="section-number-2">2</span> Developing in QMCkl</h2>
|
||||
<div id="outline-container-orgeb146a2" class="outline-2">
|
||||
<h2 id="orgeb146a2"><span class="section-number-2">2</span> Developing in QMCkl</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-orgeb46251" class="outline-3">
|
||||
<h3 id="orgeb46251"><span class="section-number-3">2.1</span> Literate programming</h3>
|
||||
<div id="outline-container-org7939fce" class="outline-3">
|
||||
<h3 id="org7939fce"><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-orged5cad4" class="outline-3">
|
||||
<h3 id="orged5cad4"><span class="section-number-3">2.2</span> Source code editing</h3>
|
||||
<div id="outline-container-org8abf38d" class="outline-3">
|
||||
<h3 id="org8abf38d"><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-org74ba0b6" class="outline-3">
|
||||
<h3 id="org74ba0b6"><span class="section-number-3">2.3</span> Choice of the programming language</h3>
|
||||
<div id="outline-container-org87e271c" class="outline-3">
|
||||
<h3 id="org87e271c"><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-orgd2c2ef9" class="outline-3">
|
||||
<h3 id="orgd2c2ef9"><span class="section-number-3">2.4</span> Coding rules</h3>
|
||||
<div id="outline-container-orge97bd5d" class="outline-3">
|
||||
<h3 id="orge97bd5d"><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-org2336faa" class="outline-3">
|
||||
<h3 id="org2336faa"><span class="section-number-3">2.5</span> Design of the library</h3>
|
||||
<div id="outline-container-org1e921de" class="outline-3">
|
||||
<h3 id="org1e921de"><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-org3b6ff1a" class="outline-3">
|
||||
<h3 id="org3b6ff1a"><span class="section-number-3">2.6</span> Naming conventions</h3>
|
||||
<div id="outline-container-org6959be5" class="outline-3">
|
||||
<h3 id="org6959be5"><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-orgdd67476" class="outline-3">
|
||||
<h3 id="orgdd67476"><span class="section-number-3">2.7</span> Application programming interface</h3>
|
||||
<div id="outline-container-orge848922" class="outline-3">
|
||||
<h3 id="orge848922"><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-org6da3f7c" class="outline-3">
|
||||
<h3 id="org6da3f7c"><span class="section-number-3">2.8</span> Global state</h3>
|
||||
<div id="outline-container-org83db4d5" class="outline-3">
|
||||
<h3 id="org83db4d5"><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="orgb53fa65">=context=</a> contains the global
|
||||
<code>qmckl_context_create</code> function. The <a id="orgad33dac">=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-orgf508e23" class="outline-3">
|
||||
<h3 id="orgf508e23"><span class="section-number-3">2.9</span> Headers</h3>
|
||||
<div id="outline-container-org5f633aa" class="outline-3">
|
||||
<h3 id="org5f633aa"><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-org21e6087" class="outline-3">
|
||||
<h3 id="org21e6087"><span class="section-number-3">2.10</span> Low-level functions</h3>
|
||||
<div id="outline-container-org9e7c8d4" class="outline-3">
|
||||
<h3 id="org9e7c8d4"><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="#orgb53fa65"><code>context</code></a>. They are not allowed to allocate/deallocate memory, and
|
||||
<a href="#orgad33dac"><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-org1e5ca90" class="outline-3">
|
||||
<h3 id="org1e5ca90"><span class="section-number-3">2.11</span> High-level functions</h3>
|
||||
<div id="outline-container-org1ce4d10" class="outline-3">
|
||||
<h3 id="org1ce4d10"><span class="section-number-3">2.11</span> High-level functions</h3>
|
||||
<div class="outline-text-3" id="text-2-11">
|
||||
<p>
|
||||
High-level functions are at the top of the function call tree.
|
||||
@ -747,27 +747,27 @@ temporary storage, to simplify the use of accelerators.
|
||||
<p>
|
||||
The high-level functions should be pure, unless the introduction
|
||||
of non-purity is justified. All the side effects should be made in
|
||||
the <a href="#orgb53fa65"><code>context</code></a> variable.
|
||||
the <a href="#orgad33dac"><code>context</code></a> variable.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3567b4a" class="outline-3">
|
||||
<h3 id="org3567b4a"><span class="section-number-3">2.12</span> Numerical precision</h3>
|
||||
<div id="outline-container-org2d77c75" class="outline-3">
|
||||
<h3 id="org2d77c75"><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="#orgb53fa65"><code>context</code></a>
|
||||
functions will use the precision specified in the <a href="#orgad33dac"><code>context</code></a>
|
||||
variable.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org73356fb" class="outline-3">
|
||||
<h3 id="org73356fb"><span class="section-number-3">2.13</span> Algorithms</h3>
|
||||
<div id="outline-container-org6739956" class="outline-3">
|
||||
<h3 id="org6739956"><span class="section-number-3">2.13</span> Algorithms</h3>
|
||||
<div class="outline-text-3" id="text-2-13">
|
||||
<p>
|
||||
Reducing the scaling of an algorithm usually implies also reducing
|
||||
@ -783,7 +783,7 @@ implemented adapted to different problem sizes.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-06-03 Thu 20:35</p>
|
||||
<p class="date">Created: 2021-06-09 Wed 22:11</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
315
qmckl_ao.html
315
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-06-03 Thu 20:35 -->
|
||||
<!-- 2021-06-09 Wed 22:11 -->
|
||||
<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,52 +333,52 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org4696b7b">1. Context</a>
|
||||
<li><a href="#orgf712860">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org8e11a34">1.1. Data structure</a></li>
|
||||
<li><a href="#org0b41ae1">1.2. Access functions</a></li>
|
||||
<li><a href="#org175dccb">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org5cce291">1.4. <span class="todo TODO">TODO</span> Fortran interfaces</a></li>
|
||||
<li><a href="#org7017fb7">1.1. Data structure</a></li>
|
||||
<li><a href="#org3ea88c8">1.2. Access functions</a></li>
|
||||
<li><a href="#org4ac223c">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org62243ca">1.4. <span class="todo TODO">TODO</span> Fortran interfaces</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org6652d86">2. Polynomial part</a>
|
||||
<li><a href="#org3a4c27b">2. Polynomial part</a>
|
||||
<ul>
|
||||
<li><a href="#org15d5c66">2.1. Powers of \(x-X_i\)</a>
|
||||
<li><a href="#org7307a27">2.1. Powers of \(x-X_i\)</a>
|
||||
<ul>
|
||||
<li><a href="#orgfaf625d">2.1.1. Requirements</a></li>
|
||||
<li><a href="#orgfe007f3">2.1.2. C Header</a></li>
|
||||
<li><a href="#org6d41a20">2.1.3. Source</a></li>
|
||||
<li><a href="#orgc8b3bb1">2.1.4. C interface</a></li>
|
||||
<li><a href="#org5cb1a79">2.1.5. Fortran interface</a></li>
|
||||
<li><a href="#org49014c9">2.1.6. Test</a></li>
|
||||
<li><a href="#orgf678558">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org39c9f66">2.1.2. C Header</a></li>
|
||||
<li><a href="#org361acf0">2.1.3. Source</a></li>
|
||||
<li><a href="#org4eb57e0">2.1.4. C interface</a></li>
|
||||
<li><a href="#org1dd2991">2.1.5. Fortran interface</a></li>
|
||||
<li><a href="#orga21f859">2.1.6. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgdde741c">2.2. Value, Gradient and Laplacian of a polynomial</a>
|
||||
<li><a href="#org718249e">2.2. Value, Gradient and Laplacian of a polynomial</a>
|
||||
<ul>
|
||||
<li><a href="#org684deec">2.2.1. Requirements</a></li>
|
||||
<li><a href="#org7275cc4">2.2.2. C Header</a></li>
|
||||
<li><a href="#org37b9476">2.2.3. Source</a></li>
|
||||
<li><a href="#org9e4e172">2.2.4. C interface</a></li>
|
||||
<li><a href="#orgbb20205">2.2.5. Fortran interface</a></li>
|
||||
<li><a href="#org567fa97">2.2.6. Test</a></li>
|
||||
<li><a href="#org3681751">2.2.1. Requirements</a></li>
|
||||
<li><a href="#org2778fdf">2.2.2. C Header</a></li>
|
||||
<li><a href="#orgb746c3f">2.2.3. Source</a></li>
|
||||
<li><a href="#orgc1fbbe8">2.2.4. C interface</a></li>
|
||||
<li><a href="#orgfa88645">2.2.5. Fortran interface</a></li>
|
||||
<li><a href="#org94a68dd">2.2.6. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org4e4b316">3. Radial part</a>
|
||||
<li><a href="#org21ed2f7">3. Radial part</a>
|
||||
<ul>
|
||||
<li><a href="#org4cd5a79">3.1. Gaussian basis functions</a></li>
|
||||
<li><a href="#org722da26">3.2. <span class="todo TODO">TODO</span> Slater basis functions</a></li>
|
||||
<li><a href="#org48acc6d">3.3. <span class="todo TODO">TODO</span> Radial functions on a grid</a></li>
|
||||
<li><a href="#org463aaee">3.1. Gaussian basis functions</a></li>
|
||||
<li><a href="#org5122b45">3.2. <span class="todo TODO">TODO</span> Slater basis functions</a></li>
|
||||
<li><a href="#org30943f8">3.3. <span class="todo TODO">TODO</span> Radial functions on a grid</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org13c6129">4. Combining radial and polynomial parts</a></li>
|
||||
<li><a href="#orgab486fd">4. Combining radial and polynomial parts</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4696b7b" class="outline-2">
|
||||
<h2 id="org4696b7b"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-orgf712860" class="outline-2">
|
||||
<h2 id="orgf712860"><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:
|
||||
@ -394,71 +394,102 @@ The following arrays are stored in the context:
|
||||
|
||||
<col class="org-left" />
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col" class="org-left"><code>type</code></th>
|
||||
<th scope="col" class="org-left"> </th>
|
||||
<th scope="col" class="org-left">Gaussian (<code>'G'</code>) or Slater (<code>'S'</code>)</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="col" class="org-left"><code>shell_num</code></th>
|
||||
<th scope="col" class="org-left"> </th>
|
||||
<th scope="col" class="org-left">Number of shells</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="col" class="org-left"><code>prim_num</code></th>
|
||||
<th scope="col" class="org-left"> </th>
|
||||
<th scope="col" class="org-left">Total number of primitives</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="col" class="org-left"><code>nucleus_index</code></th>
|
||||
<th scope="col" class="org-left"><code>[nucl_num]</code></th>
|
||||
<th scope="col" class="org-left">Index of the first shell of each nucleus</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="col" class="org-left"><code>shell_ang_mom</code></th>
|
||||
<th scope="col" class="org-left"><code>[shell_num]</code></th>
|
||||
<th scope="col" class="org-left">Angular momentum of each shell</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="col" class="org-left"><code>shell_prim_num</code></th>
|
||||
<th scope="col" class="org-left"><code>[shell_num]</code></th>
|
||||
<th scope="col" class="org-left">Number of primitives in each shell</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="col" class="org-left"><code>shell_prim_index</code></th>
|
||||
<th scope="col" class="org-left"><code>[shell_num]</code></th>
|
||||
<th scope="col" class="org-left">Address of the first primitive of each shell in the <code>EXPONENT</code> array</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="col" class="org-left"><code>shell_factor</code></th>
|
||||
<th scope="col" class="org-left"><code>[shell_num]</code></th>
|
||||
<th scope="col" class="org-left">Normalization factor for each shell</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="col" class="org-left"><code>exponent</code></th>
|
||||
<th scope="col" class="org-left"><code>[prim_num]</code></th>
|
||||
<th scope="col" class="org-left">Array of exponents</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="col" class="org-left"><code>coefficient</code></th>
|
||||
<th scope="col" class="org-left"><code>[prim_num]</code></th>
|
||||
<th scope="col" class="org-left">Array of coefficients</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="col" class="org-left"><code>prim_factor</code></th>
|
||||
<th scope="col" class="org-left"><code>[prim_num]</code></th>
|
||||
<th scope="col" class="org-left">Normalization factors of the primtives</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<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>
|
||||
<td class="org-left"><code>nucl_shell_index</code></td>
|
||||
<td class="org-left"><code>[nucl_num]</code></td>
|
||||
<td class="org-left">Index of the first shell for each nucleus</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>shell_num</code></td>
|
||||
<td class="org-left"> </td>
|
||||
<td class="org-left">Number of shells</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>prim_num</code></td>
|
||||
<td class="org-left"> </td>
|
||||
<td class="org-left">Total number of primitives</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>shell_center</code></td>
|
||||
<td class="org-left"><code>[shell_num]</code></td>
|
||||
<td class="org-left">Id of the nucleus on which each shell is centered</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>shell_ang_mom</code></td>
|
||||
<td class="org-left"><code>[shell_num]</code></td>
|
||||
<td class="org-left">Angular momentum of each shell</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>shell_prim_num</code></td>
|
||||
<td class="org-left"><code>[shell_num]</code></td>
|
||||
<td class="org-left">Number of primitives in each shell</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>shell_prim_index</code></td>
|
||||
<td class="org-left"><code>[shell_num]</code></td>
|
||||
<td class="org-left">Address of the first primitive of each shell in the <code>EXPONENT</code> array</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>shell_factor</code></td>
|
||||
<td class="org-left"><code>[shell_num]</code></td>
|
||||
<td class="org-left">Normalization factor for each shell</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>exponent</code></td>
|
||||
<td class="org-left"><code>exponent_sorted</code></td>
|
||||
<td class="org-left"><code>[prim_num]</code></td>
|
||||
<td class="org-left">Array of exponents</td>
|
||||
<td class="org-left">Array of exponents for sorted primitives</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>coefficient</code></td>
|
||||
<td class="org-left"><code>coeff_norm_sorted</code></td>
|
||||
<td class="org-left"><code>[prim_num]</code></td>
|
||||
<td class="org-left">Array of coefficients</td>
|
||||
<td class="org-left">Array of normalized coefficients for sorted primitives</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>prim_factor</code></td>
|
||||
<td class="org-left"><code>prim_factor_sorted</code></td>
|
||||
<td class="org-left"><code>[prim_num]</code></td>
|
||||
<td class="org-left">Normalization factors of the primtives</td>
|
||||
<td class="org-left">Normalization factors of the sorted primtives</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>nuclear_radius</code></td>
|
||||
<td class="org-left"><code>[nucl_num]</code></td>
|
||||
<td class="org-left">Distance beyond which all the AOs are zero</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@ -495,11 +526,11 @@ we have:
|
||||
type = 'G'
|
||||
shell_num = 12
|
||||
prim_num = 20
|
||||
shell_center = [1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2]
|
||||
nucleus_index = [0 , 6]
|
||||
shell_ang_mom = [0, 0, 0, 1, 1, 2, 0, 0, 0, 1, 1, 2]
|
||||
shell_factor = [ 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.]
|
||||
shell_prim_num = [5, 1, 1, 1, 1, 1, 5, 1, 1, 1, 1, 1]
|
||||
shell_prim_index = [1, 6, 7, 8, 9, 10, 11, 16, 17, 18, 19, 20]
|
||||
shell_prim_index = [0 , 5 , 6 , 7 , 8 , 9 , 10, 15, 16, 17, 18, 19]
|
||||
exponent = [ 33.87, 5.095, 1.159, 0.3258, 0.1027, 0.3258, 0.1027, 1.407,
|
||||
0.388, 1.057, 33.87, 5.095, 1.159, 0.3258, 0.1027, 0.3258, 0.1027, 1.407,
|
||||
0.388, 1.057]
|
||||
@ -516,15 +547,16 @@ prim_factor = [ 1.0006253235944540e+01, 2.4169531573445120e+00, 7.96109248497664
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8e11a34" class="outline-3">
|
||||
<h3 id="org8e11a34"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org7017fb7" class="outline-3">
|
||||
<h3 id="org7017fb7"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> <span style="color: #228b22;">qmckl_ao_basis_struct</span> {
|
||||
<span style="color: #228b22;">int32_t</span> <span style="color: #a0522d;">uninitialized</span>;
|
||||
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">shell_num</span>;
|
||||
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">prim_num</span>;
|
||||
<span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">shell_center</span>;
|
||||
<span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">nucleus_index</span>;
|
||||
<span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">nucleus_shell_num</span>;
|
||||
<span style="color: #228b22;">int32_t</span> * <span style="color: #a0522d;">shell_ang_mom</span>;
|
||||
<span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">shell_prim_num</span>;
|
||||
<span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">shell_prim_index</span>;
|
||||
@ -547,8 +579,8 @@ struct is then initialized and <code>provided == true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0b41ae1" class="outline-3">
|
||||
<h3 id="org0b41ae1"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org3ea88c8" class="outline-3">
|
||||
<h3 id="org3ea88c8"><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
|
||||
@ -562,42 +594,53 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org175dccb" class="outline-3">
|
||||
<h3 id="org175dccb"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org4ac223c" class="outline-3">
|
||||
<h3 id="org4ac223c"><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
|
||||
called. When
|
||||
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_ao_basis_type</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">char</span> <span style="color: #a0522d;">t</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_shell_num</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">shell_num</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_prim_num</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">prim_num</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_shell_prim_index</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">shell_prim_index</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_shell_center</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">shell_center</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_nucleus_index</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">nucleus_index</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_nucleus_shell_num</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">nucleus_shell_num</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_shell_ang_mom</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int32_t</span> * <span style="color: #a0522d;">shell_ang_mom</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_shell_prim_num</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">shell_prim_num</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_shell_prim_index</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> * <span style="color: #a0522d;">shell_prim_index</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_shell_factor</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">double</span> * <span style="color: #a0522d;">shell_factor</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_exponent</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">double</span> * <span style="color: #a0522d;">exponent</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_coefficient</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">double</span> * <span style="color: #a0522d;">coefficient</span>);
|
||||
<span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_set_ao_basis_prim_factor</span> (<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">double</span> * <span style="color: #a0522d;">prim_factor</span>);
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
When the basis set is completely entered, other data structures are
|
||||
computed to accelerate the calculations. The primitives within each
|
||||
contraction are sorted in ascending order of their exponents, such
|
||||
that as soon as a primitive is zero all the following functions
|
||||
vanish. Also, it is possible to compute a nuclear radius beyond which
|
||||
all the primitives are zero up to the numerical accuracy defined in
|
||||
the context.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5cce291" class="outline-3">
|
||||
<h3 id="org5cce291"><span class="section-number-3">1.4</span> <span class="todo TODO">TODO</span> Fortran interfaces</h3>
|
||||
<div id="outline-container-org62243ca" class="outline-3">
|
||||
<h3 id="org62243ca"><span class="section-number-3">1.4</span> <span class="todo TODO">TODO</span> Fortran interfaces</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6652d86" class="outline-2">
|
||||
<h2 id="org6652d86"><span class="section-number-2">2</span> Polynomial part</h2>
|
||||
<div id="outline-container-org3a4c27b" class="outline-2">
|
||||
<h2 id="org3a4c27b"><span class="section-number-2">2</span> Polynomial part</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org15d5c66" class="outline-3">
|
||||
<h3 id="org15d5c66"><span class="section-number-3">2.1</span> Powers of \(x-X_i\)</h3>
|
||||
<div id="outline-container-org7307a27" class="outline-3">
|
||||
<h3 id="org7307a27"><span class="section-number-3">2.1</span> Powers of \(x-X_i\)</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
The <code>qmckl_ao_power</code> function computes all the powers of the <code>n</code>
|
||||
@ -609,7 +652,7 @@ the \(n\) points:
|
||||
\[ P_{ik} = X_i^k \]
|
||||
</p>
|
||||
|
||||
<table id="orgab9a468" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgdfa8577" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -667,8 +710,8 @@ the \(n\) points:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfaf625d" class="outline-4">
|
||||
<h4 id="orgfaf625d"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgf678558" class="outline-4">
|
||||
<h4 id="orgf678558"><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>
|
||||
@ -681,8 +724,8 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfe007f3" class="outline-4">
|
||||
<h4 id="orgfe007f3"><span class="section-number-4">2.1.2</span> C Header</h4>
|
||||
<div id="outline-container-org39c9f66" class="outline-4">
|
||||
<h4 id="org39c9f66"><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_ao_power</span> (
|
||||
@ -697,8 +740,8 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6d41a20" class="outline-4">
|
||||
<h4 id="org6d41a20"><span class="section-number-4">2.1.3</span> Source</h4>
|
||||
<div id="outline-container-org361acf0" class="outline-4">
|
||||
<h4 id="org361acf0"><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: #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>
|
||||
@ -749,15 +792,15 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc8b3bb1" class="outline-4">
|
||||
<h4 id="orgc8b3bb1"><span class="section-number-4">2.1.4</span> C interface</h4>
|
||||
<div id="outline-container-org4eb57e0" class="outline-4">
|
||||
<h4 id="org4eb57e0"><span class="section-number-4">2.1.4</span> C interface</h4>
|
||||
</div>
|
||||
<div id="outline-container-org5cb1a79" class="outline-4">
|
||||
<h4 id="org5cb1a79"><span class="section-number-4">2.1.5</span> Fortran interface</h4>
|
||||
<div id="outline-container-org1dd2991" class="outline-4">
|
||||
<h4 id="org1dd2991"><span class="section-number-4">2.1.5</span> Fortran interface</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org49014c9" class="outline-4">
|
||||
<h4 id="org49014c9"><span class="section-number-4">2.1.6</span> Test</h4>
|
||||
<div id="outline-container-orga21f859" class="outline-4">
|
||||
<h4 id="orga21f859"><span class="section-number-4">2.1.6</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-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)
|
||||
@ -808,8 +851,8 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdde741c" class="outline-3">
|
||||
<h3 id="orgdde741c"><span class="section-number-3">2.2</span> Value, Gradient and Laplacian of a polynomial</h3>
|
||||
<div id="outline-container-org718249e" class="outline-3">
|
||||
<h3 id="org718249e"><span class="section-number-3">2.2</span> Value, Gradient and Laplacian of a polynomial</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
A polynomial is centered on a nucleus \(\mathbf{R}_i\)
|
||||
@ -854,7 +897,7 @@ Laplacians at a given point in space, of all polynomials with an
|
||||
angular momentum up to <code>lmax</code>.
|
||||
</p>
|
||||
|
||||
<table id="org2b8c36c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org75c083b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -933,8 +976,8 @@ angular momentum up to <code>lmax</code>.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org684deec" class="outline-4">
|
||||
<h4 id="org684deec"><span class="section-number-4">2.2.1</span> Requirements</h4>
|
||||
<div id="outline-container-org3681751" class="outline-4">
|
||||
<h4 id="org3681751"><span class="section-number-4">2.2.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-2-2-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -959,8 +1002,8 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7275cc4" class="outline-4">
|
||||
<h4 id="org7275cc4"><span class="section-number-4">2.2.2</span> C Header</h4>
|
||||
<div id="outline-container-org2778fdf" class="outline-4">
|
||||
<h4 id="org2778fdf"><span class="section-number-4">2.2.2</span> C Header</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_ao_polynomial_vgl</span> (
|
||||
@ -978,8 +1021,8 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org37b9476" class="outline-4">
|
||||
<h4 id="org37b9476"><span class="section-number-4">2.2.3</span> Source</h4>
|
||||
<div id="outline-container-orgb746c3f" class="outline-4">
|
||||
<h4 id="orgb746c3f"><span class="section-number-4">2.2.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-2-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>
|
||||
@ -1114,16 +1157,16 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9e4e172" class="outline-4">
|
||||
<h4 id="org9e4e172"><span class="section-number-4">2.2.4</span> C interface</h4>
|
||||
<div id="outline-container-orgc1fbbe8" class="outline-4">
|
||||
<h4 id="orgc1fbbe8"><span class="section-number-4">2.2.4</span> C interface</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbb20205" class="outline-4">
|
||||
<h4 id="orgbb20205"><span class="section-number-4">2.2.5</span> Fortran interface</h4>
|
||||
<div id="outline-container-orgfa88645" class="outline-4">
|
||||
<h4 id="orgfa88645"><span class="section-number-4">2.2.5</span> Fortran interface</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org567fa97" class="outline-4">
|
||||
<h4 id="org567fa97"><span class="section-number-4">2.2.6</span> Test</h4>
|
||||
<div id="outline-container-org94a68dd" class="outline-4">
|
||||
<h4 id="org94a68dd"><span class="section-number-4">2.2.6</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-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)
|
||||
@ -1228,12 +1271,12 @@ assert(0 == test_qmckl_ao_polynomial_vgl(context));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4e4b316" class="outline-2">
|
||||
<h2 id="org4e4b316"><span class="section-number-2">3</span> Radial part</h2>
|
||||
<div id="outline-container-org21ed2f7" class="outline-2">
|
||||
<h2 id="org21ed2f7"><span class="section-number-2">3</span> Radial part</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org4cd5a79" class="outline-3">
|
||||
<h3 id="org4cd5a79"><span class="section-number-3">3.1</span> Gaussian basis functions</h3>
|
||||
<div id="outline-container-org463aaee" class="outline-3">
|
||||
<h3 id="org463aaee"><span class="section-number-3">3.1</span> Gaussian basis functions</h3>
|
||||
<div class="outline-text-3" id="text-3-1">
|
||||
<p>
|
||||
<code>qmckl_ao_gaussian_vgl</code> computes the values, gradients and
|
||||
@ -1465,20 +1508,20 @@ Requirements
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org722da26" class="outline-3">
|
||||
<h3 id="org722da26"><span class="section-number-3">3.2</span> <span class="todo TODO">TODO</span> Slater basis functions</h3>
|
||||
<div id="outline-container-org5122b45" class="outline-3">
|
||||
<h3 id="org5122b45"><span class="section-number-3">3.2</span> <span class="todo TODO">TODO</span> Slater basis functions</h3>
|
||||
</div>
|
||||
<div id="outline-container-org48acc6d" class="outline-3">
|
||||
<h3 id="org48acc6d"><span class="section-number-3">3.3</span> <span class="todo TODO">TODO</span> Radial functions on a grid</h3>
|
||||
<div id="outline-container-org30943f8" class="outline-3">
|
||||
<h3 id="org30943f8"><span class="section-number-3">3.3</span> <span class="todo TODO">TODO</span> Radial functions on a grid</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org13c6129" class="outline-2">
|
||||
<h2 id="org13c6129"><span class="section-number-2">4</span> Combining radial and polynomial parts</h2>
|
||||
<div id="outline-container-orgab486fd" class="outline-2">
|
||||
<h2 id="orgab486fd"><span class="section-number-2">4</span> Combining radial and polynomial parts</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-06-03 Thu 20:35</p>
|
||||
<p class="date">Created: 2021-06-09 Wed 22:11</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-06-03 Thu 20:35 -->
|
||||
<!-- 2021-06-09 Wed 22:11 -->
|
||||
<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="#orgbcc80d9">1. Context handling</a>
|
||||
<li><a href="#org97495de">1. Context handling</a>
|
||||
<ul>
|
||||
<li><a href="#org2ce1bd0">1.1. Data structure</a></li>
|
||||
<li><a href="#org054ef43">1.2. Creation</a></li>
|
||||
<li><a href="#org54df0a8">1.3. Locking</a></li>
|
||||
<li><a href="#orgf3aa0e9">1.4. <span class="todo TODO">TODO</span> Copy</a></li>
|
||||
<li><a href="#orga266c09">1.5. Destroy</a></li>
|
||||
<li><a href="#org455023c">1.1. Data structure</a></li>
|
||||
<li><a href="#org439082a">1.2. Creation</a></li>
|
||||
<li><a href="#org78e696c">1.3. Locking</a></li>
|
||||
<li><a href="#org82aaf26">1.4. <span class="todo TODO">TODO</span> Copy</a></li>
|
||||
<li><a href="#orgd2a1f42">1.5. Destroy</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbcc80d9" class="outline-2">
|
||||
<h2 id="orgbcc80d9"><span class="section-number-2">1</span> Context handling</h2>
|
||||
<div id="outline-container-org97495de" class="outline-2">
|
||||
<h2 id="org97495de"><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="orgc288d4a"><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="org9f3c05a"><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-org2ce1bd0" class="outline-3">
|
||||
<h3 id="org2ce1bd0"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org455023c" class="outline-3">
|
||||
<h3 id="org455023c"><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="#org054ef43">qmckl<sub>context</sub><sub>create</sub></a>, <a href="#orga266c09">qmckl<sub>context</sub><sub>destroy</sub></a> and <a href="#orgf3aa0e9">qmckl<sub>context</sub><sub>copy</sub></a>
|
||||
<a href="#org439082a">qmckl<sub>context</sub><sub>create</sub></a>, <a href="#orgd2a1f42">qmckl<sub>context</sub><sub>destroy</sub></a> and <a href="#org82aaf26">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-org054ef43" class="outline-3">
|
||||
<h3 id="org054ef43"><span class="section-number-3">1.2</span> Creation</h3>
|
||||
<div id="outline-container-org439082a" class="outline-3">
|
||||
<h3 id="org439082a"><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.
|
||||
@ -468,7 +468,7 @@ To create a new context, <code>qmckl_context_create()</code> should be used.
|
||||
ctx->numprec.precision = QMCKL_DEFAULT_PRECISION;
|
||||
ctx->numprec.range = QMCKL_DEFAULT_RANGE;
|
||||
|
||||
ctx->ao_basis.uninitialized = (1 << 11) - 1;
|
||||
ctx->ao_basis.uninitialized = (1 << 12) - 1;
|
||||
ctx->nucleus.uninitialized = (1 << 4) - 1;
|
||||
ctx->electron.uninitialized = (1 << 3) - 1;
|
||||
|
||||
@ -493,8 +493,8 @@ To create a new context, <code>qmckl_context_create()</code> should be used.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org54df0a8" class="outline-3">
|
||||
<h3 id="org54df0a8"><span class="section-number-3">1.3</span> Locking</h3>
|
||||
<div id="outline-container-org78e696c" class="outline-3">
|
||||
<h3 id="org78e696c"><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
|
||||
@ -539,8 +539,8 @@ number of times the thread has locked it is saved in the
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf3aa0e9" class="outline-3">
|
||||
<h3 id="orgf3aa0e9"><span class="section-number-3">1.4</span> <span class="todo TODO">TODO</span> Copy</h3>
|
||||
<div id="outline-container-org82aaf26" class="outline-3">
|
||||
<h3 id="org82aaf26"><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
|
||||
@ -588,8 +588,8 @@ number of times the thread has locked it is saved in the
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orga266c09" class="outline-3">
|
||||
<h3 id="orga266c09"><span class="section-number-3">1.5</span> Destroy</h3>
|
||||
<div id="outline-container-orgd2a1f42" class="outline-3">
|
||||
<h3 id="orgd2a1f42"><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.
|
||||
@ -643,7 +643,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-06-03 Thu 20:35</p>
|
||||
<p class="date">Created: 2021-06-09 Wed 22:11</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-06-03 Thu 20:35 -->
|
||||
<!-- 2021-06-09 Wed 22:11 -->
|
||||
<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,38 +333,38 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgc485735">1. Squared distance</a>
|
||||
<li><a href="#org972f6d4">1. Squared distance</a>
|
||||
<ul>
|
||||
<li><a href="#org198330e">1.1. <code>qmckl_distance_sq</code></a>
|
||||
<li><a href="#org694e0a7">1.1. <code>qmckl_distance_sq</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgbc00ebe">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org42734ed">1.1.2. C header</a></li>
|
||||
<li><a href="#orgf77f147">1.1.3. Source</a></li>
|
||||
<li><a href="#orgb099352">1.1.4. Performance</a></li>
|
||||
<li><a href="#org92c790b">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org606708e">1.1.2. C header</a></li>
|
||||
<li><a href="#org5b84cf3">1.1.3. Source</a></li>
|
||||
<li><a href="#orgb51e9a3">1.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org9cc4d4a">2. Distance</a>
|
||||
<li><a href="#org0c8d0bc">2. Distance</a>
|
||||
<ul>
|
||||
<li><a href="#org49af911">2.1. <code>qmckl_distance</code></a>
|
||||
<li><a href="#orgae24a6f">2.1. <code>qmckl_distance</code></a>
|
||||
<ul>
|
||||
<li><a href="#org1967aa5">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org0c8c64f">2.1.2. C header</a></li>
|
||||
<li><a href="#org87cd48d">2.1.3. Source</a></li>
|
||||
<li><a href="#org0ef6abf">2.1.4. Performance</a></li>
|
||||
<li><a href="#orgbe15271">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org40c8dc0">2.1.2. C header</a></li>
|
||||
<li><a href="#orga142758">2.1.3. Source</a></li>
|
||||
<li><a href="#org5ffbe51">2.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgb1bc1be">3. Rescaled Distance</a>
|
||||
<li><a href="#org5d428dc">3. Rescaled Distance</a>
|
||||
<ul>
|
||||
<li><a href="#orgdea1758">3.1. <code>qmckl_distance_rescaled</code></a>
|
||||
<li><a href="#org5c77e26">3.1. <code>qmckl_distance_rescaled</code></a>
|
||||
<ul>
|
||||
<li><a href="#org5f0cab8">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orgee2c29b">3.1.2. C header</a></li>
|
||||
<li><a href="#orge2ce07b">3.1.3. Source</a></li>
|
||||
<li><a href="#org3a7cf44">3.1.4. Performance</a></li>
|
||||
<li><a href="#org84ca003">3.1.1. Requirements</a></li>
|
||||
<li><a href="#org1804a4c">3.1.2. C header</a></li>
|
||||
<li><a href="#org924e8e9">3.1.3. Source</a></li>
|
||||
<li><a href="#org3ff818c">3.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -373,12 +373,12 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc485735" class="outline-2">
|
||||
<h2 id="orgc485735"><span class="section-number-2">1</span> Squared distance</h2>
|
||||
<div id="outline-container-org972f6d4" class="outline-2">
|
||||
<h2 id="org972f6d4"><span class="section-number-2">1</span> Squared distance</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-org198330e" class="outline-3">
|
||||
<h3 id="org198330e"><span class="section-number-3">1.1</span> <code>qmckl_distance_sq</code></h3>
|
||||
<div id="outline-container-org694e0a7" class="outline-3">
|
||||
<h3 id="org694e0a7"><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
|
||||
@ -391,7 +391,7 @@ between all pairs of points in two sets, one point within each set:
|
||||
\]
|
||||
</p>
|
||||
|
||||
<table id="orgc35671d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org34fd2b8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -484,8 +484,8 @@ between all pairs of points in two sets, one point within each set:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbc00ebe" class="outline-4">
|
||||
<h4 id="orgbc00ebe"><span class="section-number-4">1.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org92c790b" class="outline-4">
|
||||
<h4 id="org92c790b"><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>
|
||||
@ -503,8 +503,8 @@ between all pairs of points in two sets, one point within each set:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org42734ed" class="outline-4">
|
||||
<h4 id="org42734ed"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div id="outline-container-org606708e" class="outline-4">
|
||||
<h4 id="org606708e"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-1-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_distance_rescaled</span> (
|
||||
@ -524,8 +524,8 @@ between all pairs of points in two sets, one point within each set:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf77f147" class="outline-4">
|
||||
<h4 id="orgf77f147"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div id="outline-container-org5b84cf3" class="outline-4">
|
||||
<h4 id="org5b84cf3"><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>
|
||||
@ -660,8 +660,8 @@ between all pairs of points in two sets, one point within each set:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb099352" class="outline-4">
|
||||
<h4 id="orgb099352"><span class="section-number-4">1.1.4</span> Performance</h4>
|
||||
<div id="outline-container-orgb51e9a3" class="outline-4">
|
||||
<h4 id="orgb51e9a3"><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
|
||||
@ -671,12 +671,12 @@ transposed.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org9cc4d4a" class="outline-2">
|
||||
<h2 id="org9cc4d4a"><span class="section-number-2">2</span> Distance</h2>
|
||||
<div id="outline-container-org0c8d0bc" class="outline-2">
|
||||
<h2 id="org0c8d0bc"><span class="section-number-2">2</span> Distance</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org49af911" class="outline-3">
|
||||
<h3 id="org49af911"><span class="section-number-3">2.1</span> <code>qmckl_distance</code></h3>
|
||||
<div id="outline-container-orgae24a6f" class="outline-3">
|
||||
<h3 id="orgae24a6f"><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
|
||||
@ -694,7 +694,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="org5218a06" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgbb278b5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -787,8 +787,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1967aa5" class="outline-4">
|
||||
<h4 id="org1967aa5"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgbe15271" class="outline-4">
|
||||
<h4 id="orgbe15271"><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>
|
||||
@ -806,8 +806,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0c8c64f" class="outline-4">
|
||||
<h4 id="org0c8c64f"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div id="outline-container-org40c8dc0" class="outline-4">
|
||||
<h4 id="org40c8dc0"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_distance_rescaled</span> (
|
||||
@ -827,8 +827,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org87cd48d" class="outline-4">
|
||||
<h4 id="org87cd48d"><span class="section-number-4">2.1.3</span> Source</h4>
|
||||
<div id="outline-container-orga142758" class="outline-4">
|
||||
<h4 id="orga142758"><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>
|
||||
@ -995,8 +995,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0ef6abf" class="outline-4">
|
||||
<h4 id="org0ef6abf"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org5ffbe51" class="outline-4">
|
||||
<h4 id="org5ffbe51"><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.
|
||||
@ -1006,12 +1006,12 @@ This function is more efficient when <code>A</code> and <code>B</code> are trans
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb1bc1be" class="outline-2">
|
||||
<h2 id="orgb1bc1be"><span class="section-number-2">3</span> Rescaled Distance</h2>
|
||||
<div id="outline-container-org5d428dc" class="outline-2">
|
||||
<h2 id="org5d428dc"><span class="section-number-2">3</span> Rescaled Distance</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-orgdea1758" class="outline-3">
|
||||
<h3 id="orgdea1758"><span class="section-number-3">3.1</span> <code>qmckl_distance_rescaled</code></h3>
|
||||
<div id="outline-container-org5c77e26" class="outline-3">
|
||||
<h3 id="org5c77e26"><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
|
||||
@ -1029,7 +1029,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="org14f1289" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgdba0e7d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1129,8 +1129,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5f0cab8" class="outline-4">
|
||||
<h4 id="org5f0cab8"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org84ca003" class="outline-4">
|
||||
<h4 id="org84ca003"><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>
|
||||
@ -1148,8 +1148,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgee2c29b" class="outline-4">
|
||||
<h4 id="orgee2c29b"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div id="outline-container-org1804a4c" class="outline-4">
|
||||
<h4 id="org1804a4c"><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> (
|
||||
@ -1170,8 +1170,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge2ce07b" class="outline-4">
|
||||
<h4 id="orge2ce07b"><span class="section-number-4">3.1.3</span> Source</h4>
|
||||
<div id="outline-container-org924e8e9" class="outline-4">
|
||||
<h4 id="org924e8e9"><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>
|
||||
@ -1341,8 +1341,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3a7cf44" class="outline-4">
|
||||
<h4 id="org3a7cf44"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org3ff818c" class="outline-4">
|
||||
<h4 id="org3ff818c"><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.
|
||||
@ -1354,7 +1354,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-06-03 Thu 20:35</p>
|
||||
<p class="date">Created: 2021-06-09 Wed 22:11</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-06-03 Thu 20:35 -->
|
||||
<!-- 2021-06-09 Wed 22:11 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Electrons</title>
|
||||
@ -311,49 +311,49 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org0a2f9d5">1. Context</a>
|
||||
<li><a href="#orgd0f1d1f">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#orgd2154a6">1.1. Data structure</a></li>
|
||||
<li><a href="#org9da424b">1.2. Access functions</a>
|
||||
<li><a href="#orgeaa6df6">1.1. Data structure</a></li>
|
||||
<li><a href="#org935a557">1.2. Access functions</a>
|
||||
<ul>
|
||||
<li><a href="#orgdd35d8e">1.2.1. Number of electrons</a></li>
|
||||
<li><a href="#org3d62c1c">1.2.2. Number of walkers</a></li>
|
||||
<li><a href="#orgbad1660">1.2.3. Scaling factors Kappa</a></li>
|
||||
<li><a href="#org8790d77">1.2.4. Electron coordinates</a></li>
|
||||
<li><a href="#org6c63049">1.2.1. Number of electrons</a></li>
|
||||
<li><a href="#orge1ffce9">1.2.2. Number of walkers</a></li>
|
||||
<li><a href="#org193167f">1.2.3. Scaling factors Kappa</a></li>
|
||||
<li><a href="#orgde61197">1.2.4. Electron coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgd9e9648">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgcd0732a">1.4. Test</a></li>
|
||||
<li><a href="#org1032f2c">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgaa3c5da">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgd21df5d">2. Computation</a>
|
||||
<li><a href="#org9bc884e">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#orgde99fce">2.1. Electron-electron distances</a>
|
||||
<li><a href="#orgadbda5d">2.1. Electron-electron distances</a>
|
||||
<ul>
|
||||
<li><a href="#org99f8bb6">2.1.1. Get</a></li>
|
||||
<li><a href="#org35e9c15">2.1.2. Compute</a></li>
|
||||
<li><a href="#orgfa9cd44">2.1.3. Test</a></li>
|
||||
<li><a href="#orgd5b2628">2.1.1. Get</a></li>
|
||||
<li><a href="#org2c32fac">2.1.2. Compute</a></li>
|
||||
<li><a href="#orge4b5989">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org30dab71">2.2. Electron-electron rescaled distances</a>
|
||||
<li><a href="#org0110181">2.2. Electron-electron rescaled distances</a>
|
||||
<ul>
|
||||
<li><a href="#orgb71a7ba">2.2.1. Get</a></li>
|
||||
<li><a href="#org06b7b71">2.2.2. Compute</a></li>
|
||||
<li><a href="#org4e26ffa">2.2.3. Test</a></li>
|
||||
<li><a href="#orgc4b1c13">2.2.1. Get</a></li>
|
||||
<li><a href="#org1bfa4f6">2.2.2. Compute</a></li>
|
||||
<li><a href="#orgd84fee6">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgb61b371">2.3. Electron-nucleus distances</a>
|
||||
<li><a href="#org7fd8f7f">2.3. Electron-nucleus distances</a>
|
||||
<ul>
|
||||
<li><a href="#orged2d878">2.3.1. Get</a></li>
|
||||
<li><a href="#org9b9c98e">2.3.2. Compute</a></li>
|
||||
<li><a href="#org6ea6d87">2.3.3. Test</a></li>
|
||||
<li><a href="#org46eca9b">2.3.1. Get</a></li>
|
||||
<li><a href="#org9c12d2c">2.3.2. Compute</a></li>
|
||||
<li><a href="#orga9ac9b1">2.3.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org334cfe3">2.4. Electron-nucleus rescaled distances</a>
|
||||
<li><a href="#org12cceb3">2.4. Electron-nucleus rescaled distances</a>
|
||||
<ul>
|
||||
<li><a href="#org1a40194">2.4.1. Get</a></li>
|
||||
<li><a href="#org7eb2b8b">2.4.2. Compute</a></li>
|
||||
<li><a href="#org9c36968">2.4.3. Test</a></li>
|
||||
<li><a href="#orge9e316e">2.4.1. Get</a></li>
|
||||
<li><a href="#orgbd3bb90">2.4.2. Compute</a></li>
|
||||
<li><a href="#org6e47542">2.4.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -362,8 +362,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0a2f9d5" class="outline-2">
|
||||
<h2 id="org0a2f9d5"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-orgd0f1d1f" class="outline-2">
|
||||
<h2 id="orgd0f1d1f"><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:
|
||||
@ -497,8 +497,8 @@ The following data stored in the context:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd2154a6" class="outline-3">
|
||||
<h3 id="orgd2154a6"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-orgeaa6df6" class="outline-3">
|
||||
<h3 id="orgeaa6df6"><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> {
|
||||
@ -544,8 +544,8 @@ following function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9da424b" class="outline-3">
|
||||
<h3 id="org9da424b"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org935a557" class="outline-3">
|
||||
<h3 id="org935a557"><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
|
||||
@ -557,12 +557,12 @@ contains the requested data. Otherwise, this variable is untouched.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdd35d8e" class="outline-4">
|
||||
<h4 id="orgdd35d8e"><span class="section-number-4">1.2.1</span> Number of electrons</h4>
|
||||
<div id="outline-container-org6c63049" class="outline-4">
|
||||
<h4 id="org6c63049"><span class="section-number-4">1.2.1</span> Number of electrons</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3d62c1c" class="outline-4">
|
||||
<h4 id="org3d62c1c"><span class="section-number-4">1.2.2</span> Number of walkers</h4>
|
||||
<div id="outline-container-orge1ffce9" class="outline-4">
|
||||
<h4 id="orge1ffce9"><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
|
||||
@ -571,12 +571,12 @@ the wave function. <code>walk_num</code> is the number of walkers.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbad1660" class="outline-4">
|
||||
<h4 id="orgbad1660"><span class="section-number-4">1.2.3</span> Scaling factors Kappa</h4>
|
||||
<div id="outline-container-org193167f" class="outline-4">
|
||||
<h4 id="org193167f"><span class="section-number-4">1.2.3</span> Scaling factors Kappa</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8790d77" class="outline-4">
|
||||
<h4 id="org8790d77"><span class="section-number-4">1.2.4</span> Electron coordinates</h4>
|
||||
<div id="outline-container-orgde61197" class="outline-4">
|
||||
<h4 id="orgde61197"><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
|
||||
@ -620,8 +620,8 @@ The order of the indices is:
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgd9e9648" class="outline-3">
|
||||
<h3 id="orgd9e9648"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org1032f2c" class="outline-3">
|
||||
<h3 id="org1032f2c"><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
|
||||
@ -666,8 +666,8 @@ in the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcd0732a" class="outline-3">
|
||||
<h3 id="orgcd0732a"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-orgaa3c5da" class="outline-3">
|
||||
<h3 id="orgaa3c5da"><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>*/
|
||||
@ -769,8 +769,8 @@ rc = qmckl_get_electron_coord (context, <span style="color: #8b2252;">'N'</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd21df5d" class="outline-2">
|
||||
<h2 id="orgd21df5d"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org9bc884e" class="outline-2">
|
||||
<h2 id="org9bc884e"><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
|
||||
@ -783,12 +783,12 @@ current date is stored.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgde99fce" class="outline-3">
|
||||
<h3 id="orgde99fce"><span class="section-number-3">2.1</span> Electron-electron distances</h3>
|
||||
<div id="outline-container-orgadbda5d" class="outline-3">
|
||||
<h3 id="orgadbda5d"><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-org99f8bb6" class="outline-4">
|
||||
<h4 id="org99f8bb6"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-orgd5b2628" class="outline-4">
|
||||
<h4 id="orgd5b2628"><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>);
|
||||
@ -797,10 +797,10 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org35e9c15" class="outline-4">
|
||||
<h4 id="org35e9c15"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-org2c32fac" class="outline-4">
|
||||
<h4 id="org2c32fac"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="org8be3688" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org2e1ff9a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -896,8 +896,8 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfa9cd44" class="outline-4">
|
||||
<h4 id="orgfa9cd44"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-orge4b5989" class="outline-4">
|
||||
<h4 id="orge4b5989"><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>));
|
||||
@ -931,12 +931,12 @@ rc = qmckl_get_electron_ee_distance(context, ee_distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org30dab71" class="outline-3">
|
||||
<h3 id="org30dab71"><span class="section-number-3">2.2</span> Electron-electron rescaled distances</h3>
|
||||
<div id="outline-container-org0110181" class="outline-3">
|
||||
<h3 id="org0110181"><span class="section-number-3">2.2</span> Electron-electron rescaled distances</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
</div>
|
||||
<div id="outline-container-orgb71a7ba" class="outline-4">
|
||||
<h4 id="orgb71a7ba"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-orgc4b1c13" class="outline-4">
|
||||
<h4 id="orgc4b1c13"><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>);
|
||||
@ -945,10 +945,10 @@ rc = qmckl_get_electron_ee_distance(context, ee_distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org06b7b71" class="outline-4">
|
||||
<h4 id="org06b7b71"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-org1bfa4f6" class="outline-4">
|
||||
<h4 id="org1bfa4f6"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="org0253cde" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgc0ee98f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1053,15 +1053,15 @@ rc = qmckl_get_electron_ee_distance(context, ee_distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4e26ffa" class="outline-4">
|
||||
<h4 id="org4e26ffa"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-orgd84fee6" class="outline-4">
|
||||
<h4 id="orgd84fee6"><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>));
|
||||
|
||||
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">ee_distance_rescaled</span>[walk_num * elec_num * elec_num];
|
||||
rc = qmckl_get_electron_ee_distance_rescaled(context, ee_distance);
|
||||
rc = qmckl_get_electron_ee_distance_rescaled(context, ee_distance_rescaled);
|
||||
|
||||
// <span style="color: #b22222;">TODO: Get exact values</span>
|
||||
//// <span style="color: #b22222;">(e1,e2,w)</span>
|
||||
@ -1089,12 +1089,12 @@ rc = qmckl_get_electron_ee_distance_rescaled(context, ee_distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb61b371" class="outline-3">
|
||||
<h3 id="orgb61b371"><span class="section-number-3">2.3</span> Electron-nucleus distances</h3>
|
||||
<div id="outline-container-org7fd8f7f" class="outline-3">
|
||||
<h3 id="org7fd8f7f"><span class="section-number-3">2.3</span> Electron-nucleus distances</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
</div>
|
||||
<div id="outline-container-orged2d878" class="outline-4">
|
||||
<h4 id="orged2d878"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-org46eca9b" class="outline-4">
|
||||
<h4 id="org46eca9b"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-3-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_electron_en_distance</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a0522d;">distance</span>);
|
||||
@ -1103,10 +1103,10 @@ rc = qmckl_get_electron_ee_distance_rescaled(context, ee_distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9b9c98e" class="outline-4">
|
||||
<h4 id="org9b9c98e"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div id="outline-container-org9c12d2c" class="outline-4">
|
||||
<h4 id="org9c12d2c"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-3-2">
|
||||
<table id="org7c207ea" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org8c34674" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1223,8 +1223,8 @@ rc = qmckl_get_electron_ee_distance_rescaled(context, ee_distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6ea6d87" class="outline-4">
|
||||
<h4 id="org6ea6d87"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div id="outline-container-orga9ac9b1" class="outline-4">
|
||||
<h4 id="orga9ac9b1"><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">
|
||||
@ -1275,12 +1275,12 @@ rc = qmckl_get_electron_en_distance(context, &(en_distance[0][0][0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org334cfe3" class="outline-3">
|
||||
<h3 id="org334cfe3"><span class="section-number-3">2.4</span> Electron-nucleus rescaled distances</h3>
|
||||
<div id="outline-container-org12cceb3" class="outline-3">
|
||||
<h3 id="org12cceb3"><span class="section-number-3">2.4</span> Electron-nucleus rescaled distances</h3>
|
||||
<div class="outline-text-3" id="text-2-4">
|
||||
</div>
|
||||
<div id="outline-container-org1a40194" class="outline-4">
|
||||
<h4 id="org1a40194"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div id="outline-container-orge9e316e" class="outline-4">
|
||||
<h4 id="orge9e316e"><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_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>);
|
||||
@ -1289,10 +1289,10 @@ rc = qmckl_get_electron_en_distance(context, &(en_distance[0][0][0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7eb2b8b" class="outline-4">
|
||||
<h4 id="org7eb2b8b"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div id="outline-container-orgbd3bb90" class="outline-4">
|
||||
<h4 id="orgbd3bb90"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-4-2">
|
||||
<table id="org3ab292e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org210b4d5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1424,8 +1424,8 @@ rc = qmckl_get_electron_en_distance(context, &(en_distance[0][0][0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9c36968" class="outline-4">
|
||||
<h4 id="org9c36968"><span class="section-number-4">2.4.3</span> Test</h4>
|
||||
<div id="outline-container-org6e47542" class="outline-4">
|
||||
<h4 id="org6e47542"><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">
|
||||
@ -1479,7 +1479,7 @@ rc = qmckl_get_electron_en_distance_rescaled(context, &(en_distance_rescaled
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-06-03 Thu 20:35</p>
|
||||
<p class="date">Created: 2021-06-09 Wed 22:11</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-06-03 Thu 20:35 -->
|
||||
<!-- 2021-06-09 Wed 22:11 -->
|
||||
<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="#orgc90b540">1. Decoding errors</a></li>
|
||||
<li><a href="#org4029606">2. Data structure in context</a></li>
|
||||
<li><a href="#orgd52d51b">3. Updating errors in the context</a></li>
|
||||
<li><a href="#orgeb512cb">4. Get the error</a></li>
|
||||
<li><a href="#orga7e4f1e">5. Failing</a></li>
|
||||
<li><a href="#org03f2562">1. Decoding errors</a></li>
|
||||
<li><a href="#org39f3e25">2. Data structure in context</a></li>
|
||||
<li><a href="#orgb89cbdb">3. Updating errors in the context</a></li>
|
||||
<li><a href="#org769b56b">4. Get the error</a></li>
|
||||
<li><a href="#org3ac9867">5. Failing</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc90b540" class="outline-2">
|
||||
<h2 id="orgc90b540"><span class="section-number-2">1</span> Decoding errors</h2>
|
||||
<div id="outline-container-org03f2562" class="outline-2">
|
||||
<h2 id="org03f2562"><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
|
||||
@ -421,6 +421,9 @@ The text strings are extracted from the previous table.
|
||||
<span style="color: #a020f0;">case</span> QMCKL_NOT_PROVIDED:
|
||||
<span style="color: #a020f0;">return</span> <span style="color: #8b2252;">"Not provided"</span>;
|
||||
<span style="color: #a020f0;">break</span>;
|
||||
<span style="color: #a020f0;">case</span> QMCKL_OUT_OF_BOUNDS:
|
||||
<span style="color: #a020f0;">return</span> <span style="color: #8b2252;">"Index out of bounds"</span>;
|
||||
<span style="color: #a020f0;">break</span>;
|
||||
<span style="color: #a020f0;">case</span> QMCKL_INVALID_EXIT_CODE:
|
||||
<span style="color: #a020f0;">return</span> <span style="color: #8b2252;">"Invalid exit code"</span>;
|
||||
<span style="color: #a020f0;">break</span>;
|
||||
@ -448,8 +451,8 @@ The text strings are extracted from the previous table.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4029606" class="outline-2">
|
||||
<h2 id="org4029606"><span class="section-number-2">2</span> Data structure in context</h2>
|
||||
<div id="outline-container-org39f3e25" class="outline-2">
|
||||
<h2 id="org39f3e25"><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
|
||||
@ -472,8 +475,8 @@ dynamic memory allocation.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd52d51b" class="outline-2">
|
||||
<h2 id="orgd52d51b"><span class="section-number-2">3</span> Updating errors in the context</h2>
|
||||
<div id="outline-container-orgb89cbdb" class="outline-2">
|
||||
<h2 id="orgb89cbdb"><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>.
|
||||
@ -519,8 +522,8 @@ explaining the error. The exit code can't be <code>QMCKL_SUCCESS</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgeb512cb" class="outline-2">
|
||||
<h2 id="orgeb512cb"><span class="section-number-2">4</span> Get the error</h2>
|
||||
<div id="outline-container-org769b56b" class="outline-2">
|
||||
<h2 id="org769b56b"><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
|
||||
@ -561,8 +564,8 @@ function name and message is mandatory.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga7e4f1e" class="outline-2">
|
||||
<h2 id="orga7e4f1e"><span class="section-number-2">5</span> Failing</h2>
|
||||
<div id="outline-container-org3ac9867" class="outline-2">
|
||||
<h2 id="org3ac9867"><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
|
||||
@ -625,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-06-03 Thu 20:35</p>
|
||||
<p class="date">Created: 2021-06-09 Wed 22:11</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-06-03 Thu 20:35 -->
|
||||
<!-- 2021-06-09 Wed 22:11 -->
|
||||
<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="#org55ee37b">1. Memory data structure for the context</a></li>
|
||||
<li><a href="#org528ac35">2. Passing info to allocation routines</a></li>
|
||||
<li><a href="#org2e6a56e">3. Allocation/deallocation functions</a></li>
|
||||
<li><a href="#orgc2e25f1">1. Memory data structure for the context</a></li>
|
||||
<li><a href="#org69e7c1b">2. Passing info to allocation routines</a></li>
|
||||
<li><a href="#org3e12247">3. Allocation/deallocation functions</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org55ee37b" class="outline-2">
|
||||
<h2 id="org55ee37b"><span class="section-number-2">1</span> Memory data structure for the context</h2>
|
||||
<div id="outline-container-orgc2e25f1" class="outline-2">
|
||||
<h2 id="orgc2e25f1"><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-org528ac35" class="outline-2">
|
||||
<h2 id="org528ac35"><span class="section-number-2">2</span> Passing info to allocation routines</h2>
|
||||
<div id="outline-container-org69e7c1b" class="outline-2">
|
||||
<h2 id="org69e7c1b"><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-org2e6a56e" class="outline-2">
|
||||
<h2 id="org2e6a56e"><span class="section-number-2">3</span> Allocation/deallocation functions</h2>
|
||||
<div id="outline-container-org3e12247" class="outline-2">
|
||||
<h2 id="org3e12247"><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-06-03 Thu 20:35</p>
|
||||
<p class="date">Created: 2021-06-09 Wed 22:11</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-06-03 Thu 20:35 -->
|
||||
<!-- 2021-06-09 Wed 22:11 -->
|
||||
<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="#orgd393eb4">1. Context</a>
|
||||
<li><a href="#orgc2ee80a">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org6a596aa">1.1. Data structure</a></li>
|
||||
<li><a href="#org37673e1">1.2. Access functions</a></li>
|
||||
<li><a href="#orgef92ab5">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgac665d0">1.4. Test</a></li>
|
||||
<li><a href="#orga78a06c">1.1. Data structure</a></li>
|
||||
<li><a href="#org134c6c0">1.2. Access functions</a></li>
|
||||
<li><a href="#orgd1d6103">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org3f21a18">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgaeb5dc4">2. Computation</a>
|
||||
<li><a href="#org184fa04">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#orgfe2e9ce">2.1. Nucleus-nucleus distances</a>
|
||||
<li><a href="#org8813417">2.1. Nucleus-nucleus distances</a>
|
||||
<ul>
|
||||
<li><a href="#org28f180d">2.1.1. Get</a></li>
|
||||
<li><a href="#orgeb17d98">2.1.2. Compute</a></li>
|
||||
<li><a href="#orgfaf8609">2.1.3. Test</a></li>
|
||||
<li><a href="#orgb1c8199">2.1.1. Get</a></li>
|
||||
<li><a href="#orgc20259f">2.1.2. Compute</a></li>
|
||||
<li><a href="#orgbf270b5">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgdce3dd8">2.2. Nucleus-nucleus rescaled distances</a>
|
||||
<li><a href="#org6611378">2.2. Nucleus-nucleus rescaled distances</a>
|
||||
<ul>
|
||||
<li><a href="#org0d5874b">2.2.1. Get</a></li>
|
||||
<li><a href="#orga357dca">2.2.2. Compute</a></li>
|
||||
<li><a href="#orga2ec93a">2.2.3. Test</a></li>
|
||||
<li><a href="#orgc2200b8">2.2.1. Get</a></li>
|
||||
<li><a href="#org71b83d0">2.2.2. Compute</a></li>
|
||||
<li><a href="#org8d6b2cc">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgbc08466">2.3. Nuclear repulsion energy</a>
|
||||
<li><a href="#orgb436160">2.3. Nuclear repulsion energy</a>
|
||||
<ul>
|
||||
<li><a href="#orge3367b8">2.3.1. Get</a></li>
|
||||
<li><a href="#org89b0a17">2.3.2. Compute</a></li>
|
||||
<li><a href="#org490684e">2.3.3. Test</a></li>
|
||||
<li><a href="#org73725ae">2.3.1. Get</a></li>
|
||||
<li><a href="#org6c5fa46">2.3.2. Compute</a></li>
|
||||
<li><a href="#orgb6fe90e">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-orgd393eb4" class="outline-2">
|
||||
<h2 id="orgd393eb4"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-orgc2ee80a" class="outline-2">
|
||||
<h2 id="orgc2ee80a"><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-org6a596aa" class="outline-3">
|
||||
<h3 id="org6a596aa"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-orga78a06c" class="outline-3">
|
||||
<h3 id="orga78a06c"><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> {
|
||||
@ -493,8 +493,8 @@ struct is then initialized and <code>provided == true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org37673e1" class="outline-3">
|
||||
<h3 id="org37673e1"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org134c6c0" class="outline-3">
|
||||
<h3 id="org134c6c0"><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
|
||||
@ -508,8 +508,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgef92ab5" class="outline-3">
|
||||
<h3 id="orgef92ab5"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-orgd1d6103" class="outline-3">
|
||||
<h3 id="orgd1d6103"><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
|
||||
@ -543,8 +543,8 @@ atoms. The coordinates should be given in atomic units.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgac665d0" class="outline-3">
|
||||
<h3 id="orgac665d0"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-org3f21a18" class="outline-3">
|
||||
<h3 id="org3f21a18"><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;
|
||||
@ -628,8 +628,8 @@ rc = qmckl_get_nucleus_charge(context, nucl_charge2);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgaeb5dc4" class="outline-2">
|
||||
<h2 id="orgaeb5dc4"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org184fa04" class="outline-2">
|
||||
<h2 id="org184fa04"><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
|
||||
@ -642,12 +642,12 @@ current date is stored.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfe2e9ce" class="outline-3">
|
||||
<h3 id="orgfe2e9ce"><span class="section-number-3">2.1</span> Nucleus-nucleus distances</h3>
|
||||
<div id="outline-container-org8813417" class="outline-3">
|
||||
<h3 id="org8813417"><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-org28f180d" class="outline-4">
|
||||
<h4 id="org28f180d"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-orgb1c8199" class="outline-4">
|
||||
<h4 id="orgb1c8199"><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>);
|
||||
@ -656,10 +656,10 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgeb17d98" class="outline-4">
|
||||
<h4 id="orgeb17d98"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-orgc20259f" class="outline-4">
|
||||
<h4 id="orgc20259f"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="orga3b9783" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgab9fe99" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -737,8 +737,8 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfaf8609" class="outline-4">
|
||||
<h4 id="orgfaf8609"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-orgbf270b5" class="outline-4">
|
||||
<h4 id="orgbf270b5"><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>*/
|
||||
@ -758,12 +758,12 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgdce3dd8" class="outline-3">
|
||||
<h3 id="orgdce3dd8"><span class="section-number-3">2.2</span> Nucleus-nucleus rescaled distances</h3>
|
||||
<div id="outline-container-org6611378" class="outline-3">
|
||||
<h3 id="org6611378"><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-org0d5874b" class="outline-4">
|
||||
<h4 id="org0d5874b"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-orgc2200b8" class="outline-4">
|
||||
<h4 id="orgc2200b8"><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>);
|
||||
@ -772,10 +772,10 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga357dca" class="outline-4">
|
||||
<h4 id="orga357dca"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-org71b83d0" class="outline-4">
|
||||
<h4 id="org71b83d0"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="org1f45e3f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgda09015" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -854,8 +854,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga2ec93a" class="outline-4">
|
||||
<h4 id="orga2ec93a"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-org8d6b2cc" class="outline-4">
|
||||
<h4 id="org8d6b2cc"><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>*/
|
||||
@ -875,8 +875,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbc08466" class="outline-3">
|
||||
<h3 id="orgbc08466"><span class="section-number-3">2.3</span> Nuclear repulsion energy</h3>
|
||||
<div id="outline-container-orgb436160" class="outline-3">
|
||||
<h3 id="orgb436160"><span class="section-number-3">2.3</span> Nuclear repulsion energy</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
\[
|
||||
@ -885,8 +885,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge3367b8" class="outline-4">
|
||||
<h4 id="orge3367b8"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-org73725ae" class="outline-4">
|
||||
<h4 id="org73725ae"><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>);
|
||||
@ -895,10 +895,10 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org89b0a17" class="outline-4">
|
||||
<h4 id="org89b0a17"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div id="outline-container-org6c5fa46" class="outline-4">
|
||||
<h4 id="org6c5fa46"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-3-2">
|
||||
<table id="orga003819" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orge3e26b9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -986,8 +986,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org490684e" class="outline-4">
|
||||
<h4 id="org490684e"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div id="outline-container-orgb6fe90e" class="outline-4">
|
||||
<h4 id="orgb6fe90e"><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>*/
|
||||
@ -1007,7 +1007,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-06-03 Thu 20:35</p>
|
||||
<p class="date">Created: 2021-06-09 Wed 22:11</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-06-03 Thu 20:35 -->
|
||||
<!-- 2021-06-09 Wed 22:11 -->
|
||||
<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="#org614b94b">1. Control of the numerical precision</a></li>
|
||||
<li><a href="#orge576b80">2. Precision</a></li>
|
||||
<li><a href="#org626013e">3. Range</a></li>
|
||||
<li><a href="#org7a852b5">4. Helper functions</a></li>
|
||||
<li><a href="#org8181830">1. Control of the numerical precision</a></li>
|
||||
<li><a href="#orga28b4d6">2. Precision</a></li>
|
||||
<li><a href="#org5142567">3. Range</a></li>
|
||||
<li><a href="#orgd75d906">4. Helper functions</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org614b94b" class="outline-2">
|
||||
<h2 id="org614b94b"><span class="section-number-2">1</span> Control of the numerical precision</h2>
|
||||
<div id="outline-container-org8181830" class="outline-2">
|
||||
<h2 id="org8181830"><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="orgf5f3ec3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgd427a08" 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-orge576b80" class="outline-2">
|
||||
<h2 id="orge576b80"><span class="section-number-2">2</span> Precision</h2>
|
||||
<div id="outline-container-orga28b4d6" class="outline-2">
|
||||
<h2 id="orga28b4d6"><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-org626013e" class="outline-2">
|
||||
<h2 id="org626013e"><span class="section-number-2">3</span> Range</h2>
|
||||
<div id="outline-container-org5142567" class="outline-2">
|
||||
<h2 id="org5142567"><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-org7a852b5" class="outline-2">
|
||||
<h2 id="org7a852b5"><span class="section-number-2">4</span> Helper functions</h2>
|
||||
<div id="outline-container-orgd75d906" class="outline-2">
|
||||
<h2 id="orgd75d906"><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-06-03 Thu 20:35</p>
|
||||
<p class="date">Created: 2021-06-09 Wed 22:11</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-06-03 Thu 20:35 -->
|
||||
<!-- 2021-06-09 Wed 22:11 -->
|
||||
<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,20 +233,20 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org0ae7a25">1. CHBrClF</a>
|
||||
<li><a href="#org23d8a57">1. CHBrClF</a>
|
||||
<ul>
|
||||
<li><a href="#org6215140">1.1. XYZ coordinates</a></li>
|
||||
<li><a href="#org6d78d67">1.2. Atomic basis set</a></li>
|
||||
<li><a href="#orgf2c95f1">1.3. <span class="todo TODO">TODO</span> Molecular orbitals</a></li>
|
||||
<li><a href="#org8ab767d">1.4. Electron coordinates</a></li>
|
||||
<li><a href="#orgd209b7c">1.1. XYZ coordinates</a></li>
|
||||
<li><a href="#org2cba217">1.2. Atomic basis set</a></li>
|
||||
<li><a href="#org8e238de">1.3. <span class="todo TODO">TODO</span> Molecular orbitals</a></li>
|
||||
<li><a href="#orgdca5466">1.4. Electron coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0ae7a25" class="outline-2">
|
||||
<h2 id="org0ae7a25"><span class="section-number-2">1</span> CHBrClF</h2>
|
||||
<div id="outline-container-org23d8a57" class="outline-2">
|
||||
<h2 id="org23d8a57"><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,
|
||||
@ -330,8 +330,8 @@ and with a high maximum angular momentum.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org6215140" class="outline-3">
|
||||
<h3 id="org6215140"><span class="section-number-3">1.1</span> XYZ coordinates</h3>
|
||||
<div id="outline-container-orgd209b7c" class="outline-3">
|
||||
<h3 id="orgd209b7c"><span class="section-number-3">1.1</span> XYZ coordinates</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<pre class="example">
|
||||
5
|
||||
@ -361,8 +361,8 @@ Nuclear coordinates are stored in atomic units in transposed format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6d78d67" class="outline-3">
|
||||
<h3 id="org6d78d67"><span class="section-number-3">1.2</span> Atomic basis set</h3>
|
||||
<div id="outline-container-org2cba217" class="outline-3">
|
||||
<h3 id="org2cba217"><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
|
||||
@ -839,10 +839,9 @@ F 1
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">chbrclf_shell_num</span> 72
|
||||
<span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">chbrclf_prim_num</span> 297
|
||||
|
||||
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">chbrclf_basis_shell_center</span>[chbrclf_shell_num] =
|
||||
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3,
|
||||
3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
|
||||
4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5};
|
||||
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">chbrclf_basis_nucleus_index</span>[chbrclf_nucl_num] = {0, 14, 23, 27, 53};
|
||||
|
||||
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">chbrclf_basis_nucleus_shell_num</span>[chbrclf_nucl_num] = {14, 9, 14, 16, 19};
|
||||
|
||||
<span style="color: #228b22;">int32_t</span> <span style="color: #a0522d;">chbrclf_basis_shell_ang_mom</span>[chbrclf_shell_num] =
|
||||
{0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 3, 3, 0, 0, 0, 0, 1, 1, 1, 2, 2, 0,
|
||||
@ -856,11 +855,11 @@ F 1
|
||||
1};
|
||||
|
||||
<span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">chbrclf_basis_shell_prim_index</span>[chbrclf_shell_num] =
|
||||
{1, 11, 21, 22, 23, 24, 29, 30, 31, 32, 33, 34, 35, 36, 37, 42, 43, 44, 45,
|
||||
46, 47, 48, 49, 50, 60, 70, 71, 72, 73, 78, 79, 80, 81, 82, 83, 84, 85, 86,
|
||||
101, 116, 131, 132, 133, 134, 143, 152, 153, 154, 155, 156, 157, 158, 159,
|
||||
160, 180, 200, 220, 240, 241, 242, 243, 256, 269, 282, 283, 284, 285, 293,
|
||||
294, 295, 296, 297};
|
||||
{0, 10, 20, 21, 22, 23, 28, 29, 30, 31, 32, 33, 34, 35, 36, 41, 42, 43, 44,
|
||||
45, 46, 47, 48, 49, 59, 69, 70, 71, 72, 77, 78, 79, 80, 81, 82, 83, 84, 85,
|
||||
100, 115, 130, 131, 132, 133, 142, 151, 152, 153, 154, 155, 156, 157, 158,
|
||||
159, 179, 199, 219, 239, 240, 241, 242, 255, 268, 281, 282, 283, 284, 292,
|
||||
293, 294, 295, 296};
|
||||
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">chbrclf_basis_shell_factor</span>[chbrclf_shell_num] =
|
||||
{1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
|
||||
@ -1176,11 +1175,11 @@ F 1
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf2c95f1" class="outline-3">
|
||||
<h3 id="orgf2c95f1"><span class="section-number-3">1.3</span> <span class="todo TODO">TODO</span> Molecular orbitals</h3>
|
||||
<div id="outline-container-org8e238de" class="outline-3">
|
||||
<h3 id="org8e238de"><span class="section-number-3">1.3</span> <span class="todo TODO">TODO</span> Molecular orbitals</h3>
|
||||
</div>
|
||||
<div id="outline-container-org8ab767d" class="outline-3">
|
||||
<h3 id="org8ab767d"><span class="section-number-3">1.4</span> Electron coordinates</h3>
|
||||
<div id="outline-container-orgdca5466" class="outline-3">
|
||||
<h3 id="orgdca5466"><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.
|
||||
@ -1340,7 +1339,7 @@ Electron coordinates are stored in atomic units in normal format.
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="date">Created: 2021-06-03 Thu 20:35</p>
|
||||
<p class="date">Created: 2021-06-09 Wed 22:11</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-06-03 Thu 20:35 -->
|
||||
<!-- 2021-06-09 Wed 22:11 -->
|
||||
<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="#orgf16e9b8">1. Matrix operations</a>
|
||||
<li><a href="#org10e8d9f">1. Matrix operations</a>
|
||||
<ul>
|
||||
<li><a href="#org4177a48">1.1. <code>qmckl_transpose</code></a>
|
||||
<li><a href="#org951ba0b">1.1. <code>qmckl_transpose</code></a>
|
||||
<ul>
|
||||
<li><a href="#org32d8551">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org482b63b">1.1.2. C header</a></li>
|
||||
<li><a href="#org20cae42">1.1.3. Source</a></li>
|
||||
<li><a href="#org5a3c27d">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org53609fc">1.1.2. C header</a></li>
|
||||
<li><a href="#org44c441f">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-orgf16e9b8" class="outline-2">
|
||||
<h2 id="orgf16e9b8"><span class="section-number-2">1</span> Matrix operations</h2>
|
||||
<div id="outline-container-org10e8d9f" class="outline-2">
|
||||
<h2 id="org10e8d9f"><span class="section-number-2">1</span> Matrix operations</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-org4177a48" class="outline-3">
|
||||
<h3 id="org4177a48"><span class="section-number-3">1.1</span> <code>qmckl_transpose</code></h3>
|
||||
<div id="outline-container-org951ba0b" class="outline-3">
|
||||
<h3 id="org951ba0b"><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="org1787fe9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgd46e630" 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-org32d8551" class="outline-4">
|
||||
<h4 id="org32d8551"><span class="section-number-4">1.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org5a3c27d" class="outline-4">
|
||||
<h4 id="org5a3c27d"><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-org482b63b" class="outline-4">
|
||||
<h4 id="org482b63b"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div id="outline-container-org53609fc" class="outline-4">
|
||||
<h4 id="org53609fc"><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-org20cae42" class="outline-4">
|
||||
<h4 id="org20cae42"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div id="outline-container-org44c441f" class="outline-4">
|
||||
<h4 id="org44c441f"><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-06-03 Thu 20:35</p>
|
||||
<p class="date">Created: 2021-06-09 Wed 22:11</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