mirror of
https://github.com/TREX-CoE/qmckl.git
synced 2025-04-28 19:34:46 +02:00
Deploying to gh-pages from @ TREX-CoE/qmckl@b3e3b0b6dc 🚀
This commit is contained in:
parent
8f61fe8f5f
commit
877d55538d
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:46 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>QMCkl source code documentation</title>
|
||||
@ -357,7 +357,7 @@ and bug reports should be submitted at
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:46</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
102
qmckl.html
102
qmckl.html
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:47 -->
|
||||
<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="#orge71cf33">1. Using QMCkl</a></li>
|
||||
<li><a href="#orgd084d1c">2. Developing in QMCkl</a>
|
||||
<li><a href="#org07c24da">1. Using QMCkl</a></li>
|
||||
<li><a href="#org3b1eb22">2. Developing in QMCkl</a>
|
||||
<ul>
|
||||
<li><a href="#org7f3de63">2.1. Literate programming</a></li>
|
||||
<li><a href="#org19c7671">2.2. Source code editing</a></li>
|
||||
<li><a href="#org5254b75">2.3. Choice of the programming language</a></li>
|
||||
<li><a href="#org9c7691e">2.4. Coding rules</a></li>
|
||||
<li><a href="#orgf334c79">2.5. Design of the library</a></li>
|
||||
<li><a href="#orgd0c16ac">2.6. Naming conventions</a></li>
|
||||
<li><a href="#org7d541be">2.7. Application programming interface</a></li>
|
||||
<li><a href="#org73dc78f">2.8. Global state</a></li>
|
||||
<li><a href="#org4f763b1">2.9. Headers</a></li>
|
||||
<li><a href="#org119dcca">2.10. Low-level functions</a></li>
|
||||
<li><a href="#org11a9951">2.11. High-level functions</a></li>
|
||||
<li><a href="#org2794dda">2.12. Numerical precision</a></li>
|
||||
<li><a href="#orgd3b908f">2.13. Algorithms</a></li>
|
||||
<li><a href="#org2aada3c">2.1. Literate programming</a></li>
|
||||
<li><a href="#orgfee5f93">2.2. Source code editing</a></li>
|
||||
<li><a href="#org20a9308">2.3. Choice of the programming language</a></li>
|
||||
<li><a href="#org77acc8b">2.4. Coding rules</a></li>
|
||||
<li><a href="#orgb0801a4">2.5. Design of the library</a></li>
|
||||
<li><a href="#org7ec8563">2.6. Naming conventions</a></li>
|
||||
<li><a href="#org33faeef">2.7. Application programming interface</a></li>
|
||||
<li><a href="#org9b2b270">2.8. Global state</a></li>
|
||||
<li><a href="#orga9e9a8b">2.9. Headers</a></li>
|
||||
<li><a href="#org5b4948f">2.10. Low-level functions</a></li>
|
||||
<li><a href="#org5f3112c">2.11. High-level functions</a></li>
|
||||
<li><a href="#orgada7d61">2.12. Numerical precision</a></li>
|
||||
<li><a href="#org21df1f7">2.13. Algorithms</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge71cf33" class="outline-2">
|
||||
<h2 id="orge71cf33"><span class="section-number-2">1</span> Using QMCkl</h2>
|
||||
<div id="outline-container-org07c24da" class="outline-2">
|
||||
<h2 id="org07c24da"><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-orgd084d1c" class="outline-2">
|
||||
<h2 id="orgd084d1c"><span class="section-number-2">2</span> Developing in QMCkl</h2>
|
||||
<div id="outline-container-org3b1eb22" class="outline-2">
|
||||
<h2 id="org3b1eb22"><span class="section-number-2">2</span> Developing in QMCkl</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org7f3de63" class="outline-3">
|
||||
<h3 id="org7f3de63"><span class="section-number-3">2.1</span> Literate programming</h3>
|
||||
<div id="outline-container-org2aada3c" class="outline-3">
|
||||
<h3 id="org2aada3c"><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-org19c7671" class="outline-3">
|
||||
<h3 id="org19c7671"><span class="section-number-3">2.2</span> Source code editing</h3>
|
||||
<div id="outline-container-orgfee5f93" class="outline-3">
|
||||
<h3 id="orgfee5f93"><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-org5254b75" class="outline-3">
|
||||
<h3 id="org5254b75"><span class="section-number-3">2.3</span> Choice of the programming language</h3>
|
||||
<div id="outline-container-org20a9308" class="outline-3">
|
||||
<h3 id="org20a9308"><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-org9c7691e" class="outline-3">
|
||||
<h3 id="org9c7691e"><span class="section-number-3">2.4</span> Coding rules</h3>
|
||||
<div id="outline-container-org77acc8b" class="outline-3">
|
||||
<h3 id="org77acc8b"><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-orgf334c79" class="outline-3">
|
||||
<h3 id="orgf334c79"><span class="section-number-3">2.5</span> Design of the library</h3>
|
||||
<div id="outline-container-orgb0801a4" class="outline-3">
|
||||
<h3 id="orgb0801a4"><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-orgd0c16ac" class="outline-3">
|
||||
<h3 id="orgd0c16ac"><span class="section-number-3">2.6</span> Naming conventions</h3>
|
||||
<div id="outline-container-org7ec8563" class="outline-3">
|
||||
<h3 id="org7ec8563"><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-org7d541be" class="outline-3">
|
||||
<h3 id="org7d541be"><span class="section-number-3">2.7</span> Application programming interface</h3>
|
||||
<div id="outline-container-org33faeef" class="outline-3">
|
||||
<h3 id="org33faeef"><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-org73dc78f" class="outline-3">
|
||||
<h3 id="org73dc78f"><span class="section-number-3">2.8</span> Global state</h3>
|
||||
<div id="outline-container-org9b2b270" class="outline-3">
|
||||
<h3 id="org9b2b270"><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="org6b95cfe">=context=</a> contains the global
|
||||
<code>qmckl_context_create</code> function. The <a id="org64ed0f9">=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-org4f763b1" class="outline-3">
|
||||
<h3 id="org4f763b1"><span class="section-number-3">2.9</span> Headers</h3>
|
||||
<div id="outline-container-orga9e9a8b" class="outline-3">
|
||||
<h3 id="orga9e9a8b"><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-org119dcca" class="outline-3">
|
||||
<h3 id="org119dcca"><span class="section-number-3">2.10</span> Low-level functions</h3>
|
||||
<div id="outline-container-org5b4948f" class="outline-3">
|
||||
<h3 id="org5b4948f"><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="#org6b95cfe"><code>context</code></a>. They are not allowed to allocate/deallocate memory, and
|
||||
<a href="#org64ed0f9"><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-org11a9951" class="outline-3">
|
||||
<h3 id="org11a9951"><span class="section-number-3">2.11</span> High-level functions</h3>
|
||||
<div id="outline-container-org5f3112c" class="outline-3">
|
||||
<h3 id="org5f3112c"><span class="section-number-3">2.11</span> High-level functions</h3>
|
||||
<div class="outline-text-3" id="text-2-11">
|
||||
<p>
|
||||
High-level functions are at the top of the function call tree.
|
||||
@ -747,20 +747,20 @@ temporary storage, to simplify the use of accelerators.
|
||||
<p>
|
||||
The high-level functions should be pure, unless the introduction
|
||||
of non-purity is justified. All the side effects should be made in
|
||||
the <a href="#org6b95cfe"><code>context</code></a> variable.
|
||||
the <a href="#org64ed0f9"><code>context</code></a> variable.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2794dda" class="outline-3">
|
||||
<h3 id="org2794dda"><span class="section-number-3">2.12</span> Numerical precision</h3>
|
||||
<div id="outline-container-orgada7d61" class="outline-3">
|
||||
<h3 id="orgada7d61"><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="#org6b95cfe"><code>context</code></a>
|
||||
functions will use the precision specified in the <a href="#org64ed0f9"><code>context</code></a>
|
||||
variable.
|
||||
</p>
|
||||
|
||||
@ -830,8 +830,8 @@ following points :
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd3b908f" class="outline-3">
|
||||
<h3 id="orgd3b908f"><span class="section-number-3">2.13</span> Algorithms</h3>
|
||||
<div id="outline-container-org21df1f7" class="outline-3">
|
||||
<h3 id="org21df1f7"><span class="section-number-3">2.13</span> Algorithms</h3>
|
||||
<div class="outline-text-3" id="text-2-13">
|
||||
<p>
|
||||
Reducing the scaling of an algorithm usually implies also reducing
|
||||
@ -847,7 +847,7 @@ implemented adapted to different problem sizes.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:47</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
260
qmckl_ao.html
260
qmckl_ao.html
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:47 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Atomic Orbitals</title>
|
||||
@ -333,71 +333,71 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orga253628">1. Context</a>
|
||||
<li><a href="#org0e36e1b">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#orgdeea999">1.1. Data structure</a></li>
|
||||
<li><a href="#org5e2dd1b">1.2. Access functions</a></li>
|
||||
<li><a href="#org52d3fb5">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgdf43b57">1.4. Fortran interfaces</a></li>
|
||||
<li><a href="#orgdb3b586">1.1. Data structure</a></li>
|
||||
<li><a href="#org16f6a43">1.2. Access functions</a></li>
|
||||
<li><a href="#org725fdec">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org4765499">1.4. Fortran interfaces</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org17e5156">2. Radial part</a>
|
||||
<li><a href="#org4646893">2. Radial part</a>
|
||||
<ul>
|
||||
<li><a href="#orgb423436">2.1. <span class="todo TODO">TODO</span> Helper functions to accelerate calculations</a></li>
|
||||
<li><a href="#org287814d">2.2. General functions for Gaussian basis functions</a></li>
|
||||
<li><a href="#org3383c3e">2.3. <span class="todo TODO">TODO</span> General functions for Slater basis functions</a></li>
|
||||
<li><a href="#org70ce836">2.4. <span class="todo TODO">TODO</span> General functions for Radial functions on a grid</a></li>
|
||||
<li><a href="#org284101e">2.5. Computation of primitives</a>
|
||||
<li><a href="#org8b7594c">2.1. <span class="todo TODO">TODO</span> Helper functions to accelerate calculations</a></li>
|
||||
<li><a href="#org22a6820">2.2. General functions for Gaussian basis functions</a></li>
|
||||
<li><a href="#org48f1f1a">2.3. <span class="todo TODO">TODO</span> General functions for Slater basis functions</a></li>
|
||||
<li><a href="#orgf52c61d">2.4. <span class="todo TODO">TODO</span> General functions for Radial functions on a grid</a></li>
|
||||
<li><a href="#orgf816d68">2.5. Computation of primitives</a>
|
||||
<ul>
|
||||
<li><a href="#org42935b8">2.5.1. Get</a></li>
|
||||
<li><a href="#org490fe02">2.5.2. Provide</a></li>
|
||||
<li><a href="#orgcd65a3f">2.5.3. Compute</a></li>
|
||||
<li><a href="#orgead2797">2.5.4. Test</a></li>
|
||||
<li><a href="#org986d410">2.5.5. Ideas for improvement</a></li>
|
||||
<li><a href="#org6eb85d5">2.5.1. Get</a></li>
|
||||
<li><a href="#org758225d">2.5.2. Provide</a></li>
|
||||
<li><a href="#orgb4f27f0">2.5.3. Compute</a></li>
|
||||
<li><a href="#orgadb1245">2.5.4. Test</a></li>
|
||||
<li><a href="#orgc9ed8d9">2.5.5. Ideas for improvement</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgeb0c624">2.6. Computation of shells</a>
|
||||
<li><a href="#org77ff6be">2.6. Computation of shells</a>
|
||||
<ul>
|
||||
<li><a href="#org4278e18">2.6.1. Get</a></li>
|
||||
<li><a href="#org5f3a610">2.6.2. Provide</a></li>
|
||||
<li><a href="#org7fe0bef">2.6.3. Compute</a></li>
|
||||
<li><a href="#org069b1c1">2.6.4. Test</a></li>
|
||||
<li><a href="#org96a5101">2.6.1. Get</a></li>
|
||||
<li><a href="#org976805a">2.6.2. Provide</a></li>
|
||||
<li><a href="#orgc70d88d">2.6.3. Compute</a></li>
|
||||
<li><a href="#org4988bed">2.6.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org60997de">3. Polynomial part</a>
|
||||
<li><a href="#org448dfa5">3. Polynomial part</a>
|
||||
<ul>
|
||||
<li><a href="#org41f9d14">3.1. General functions for Powers of \(x-X_i\)</a>
|
||||
<li><a href="#org3fc30de">3.1. General functions for Powers of \(x-X_i\)</a>
|
||||
<ul>
|
||||
<li><a href="#org578bcbd">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orge213e39">3.1.2. C Header</a></li>
|
||||
<li><a href="#org6c6a23a">3.1.3. Source</a></li>
|
||||
<li><a href="#org287ce95">3.1.4. C interface</a></li>
|
||||
<li><a href="#org7bddb2e">3.1.5. Fortran interface</a></li>
|
||||
<li><a href="#org5ca5830">3.1.6. Test</a></li>
|
||||
<li><a href="#orgbd54e36">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orgdce835c">3.1.2. C Header</a></li>
|
||||
<li><a href="#org40091ca">3.1.3. Source</a></li>
|
||||
<li><a href="#org0b7c67f">3.1.4. C interface</a></li>
|
||||
<li><a href="#org08cc9f4">3.1.5. Fortran interface</a></li>
|
||||
<li><a href="#org0228eab">3.1.6. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org8dbae55">3.2. General functions for Value, Gradient and Laplacian of a polynomial</a>
|
||||
<li><a href="#org7c65d5b">3.2. General functions for Value, Gradient and Laplacian of a polynomial</a>
|
||||
<ul>
|
||||
<li><a href="#org45ca514">3.2.1. Requirements</a></li>
|
||||
<li><a href="#orgad2be91">3.2.2. C Header</a></li>
|
||||
<li><a href="#orgc33ae77">3.2.3. Source</a></li>
|
||||
<li><a href="#org7c47fdc">3.2.4. C interface</a></li>
|
||||
<li><a href="#orgfd39d79">3.2.5. Fortran interface</a></li>
|
||||
<li><a href="#org7684106">3.2.6. Test</a></li>
|
||||
<li><a href="#org40517dc">3.2.1. Requirements</a></li>
|
||||
<li><a href="#org9045ce7">3.2.2. C Header</a></li>
|
||||
<li><a href="#org5690e62">3.2.3. Source</a></li>
|
||||
<li><a href="#org394d0f8">3.2.4. C interface</a></li>
|
||||
<li><a href="#org8d2ceeb">3.2.5. Fortran interface</a></li>
|
||||
<li><a href="#orgeb2995e">3.2.6. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org6462855">4. Combining radial and polynomial parts</a>
|
||||
<li><a href="#orgd347518">4. Combining radial and polynomial parts</a>
|
||||
<ul>
|
||||
<li>
|
||||
<ul>
|
||||
<li><a href="#orgeb6876b">4.0.1. Get</a></li>
|
||||
<li><a href="#orge2c28ce">4.0.2. Provide</a></li>
|
||||
<li><a href="#orgff0951d">4.0.3. Compute</a></li>
|
||||
<li><a href="#org5b4f3e8">4.0.4. Test</a></li>
|
||||
<li><a href="#org49ac9a5">4.0.1. Get</a></li>
|
||||
<li><a href="#org820e331">4.0.2. Provide</a></li>
|
||||
<li><a href="#org5564dbf">4.0.3. Compute</a></li>
|
||||
<li><a href="#org6c1b743">4.0.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -406,8 +406,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga253628" class="outline-2">
|
||||
<h2 id="orga253628"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org0e36e1b" class="outline-2">
|
||||
<h2 id="org0e36e1b"><span class="section-number-2">1</span> Context</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The following arrays are stored in the context:
|
||||
@ -679,8 +679,8 @@ prim_factor = [ 1.0006253235944540e+01, 2.4169531573445120e+00, 7.96109248497664
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdeea999" class="outline-3">
|
||||
<h3 id="orgdeea999"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-orgdb3b586" class="outline-3">
|
||||
<h3 id="orgdb3b586"><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> {
|
||||
@ -756,8 +756,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5e2dd1b" class="outline-3">
|
||||
<h3 id="org5e2dd1b"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org16f6a43" class="outline-3">
|
||||
<h3 id="org16f6a43"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
In the following functions, when an array is passed as an argument
|
||||
@ -777,8 +777,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org52d3fb5" class="outline-3">
|
||||
<h3 id="org52d3fb5"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org725fdec" class="outline-3">
|
||||
<h3 id="org725fdec"><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
|
||||
@ -816,20 +816,20 @@ the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdf43b57" class="outline-3">
|
||||
<h3 id="orgdf43b57"><span class="section-number-3">1.4</span> Fortran interfaces</h3>
|
||||
<div id="outline-container-org4765499" class="outline-3">
|
||||
<h3 id="org4765499"><span class="section-number-3">1.4</span> Fortran interfaces</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org17e5156" class="outline-2">
|
||||
<h2 id="org17e5156"><span class="section-number-2">2</span> Radial part</h2>
|
||||
<div id="outline-container-org4646893" class="outline-2">
|
||||
<h2 id="org4646893"><span class="section-number-2">2</span> Radial part</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-orgb423436" class="outline-3">
|
||||
<h3 id="orgb423436"><span class="section-number-3">2.1</span> <span class="todo TODO">TODO</span> Helper functions to accelerate calculations</h3>
|
||||
<div id="outline-container-org8b7594c" class="outline-3">
|
||||
<h3 id="org8b7594c"><span class="section-number-3">2.1</span> <span class="todo TODO">TODO</span> Helper functions to accelerate calculations</h3>
|
||||
</div>
|
||||
<div id="outline-container-org287814d" class="outline-3">
|
||||
<h3 id="org287814d"><span class="section-number-3">2.2</span> General functions for Gaussian basis functions</h3>
|
||||
<div id="outline-container-org22a6820" class="outline-3">
|
||||
<h3 id="org22a6820"><span class="section-number-3">2.2</span> General functions for Gaussian basis functions</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
<code>qmckl_ao_gaussian_vgl</code> computes the values, gradients and
|
||||
@ -1061,18 +1061,18 @@ Requirements
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3383c3e" class="outline-3">
|
||||
<h3 id="org3383c3e"><span class="section-number-3">2.3</span> <span class="todo TODO">TODO</span> General functions for Slater basis functions</h3>
|
||||
<div id="outline-container-org48f1f1a" class="outline-3">
|
||||
<h3 id="org48f1f1a"><span class="section-number-3">2.3</span> <span class="todo TODO">TODO</span> General functions for Slater basis functions</h3>
|
||||
</div>
|
||||
<div id="outline-container-org70ce836" class="outline-3">
|
||||
<h3 id="org70ce836"><span class="section-number-3">2.4</span> <span class="todo TODO">TODO</span> General functions for Radial functions on a grid</h3>
|
||||
<div id="outline-container-orgf52c61d" class="outline-3">
|
||||
<h3 id="orgf52c61d"><span class="section-number-3">2.4</span> <span class="todo TODO">TODO</span> General functions for Radial functions on a grid</h3>
|
||||
</div>
|
||||
<div id="outline-container-org284101e" class="outline-3">
|
||||
<h3 id="org284101e"><span class="section-number-3">2.5</span> Computation of primitives</h3>
|
||||
<div id="outline-container-orgf816d68" class="outline-3">
|
||||
<h3 id="orgf816d68"><span class="section-number-3">2.5</span> Computation of primitives</h3>
|
||||
<div class="outline-text-3" id="text-2-5">
|
||||
</div>
|
||||
<div id="outline-container-org42935b8" class="outline-4">
|
||||
<h4 id="org42935b8"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div id="outline-container-org6eb85d5" class="outline-4">
|
||||
<h4 id="org6eb85d5"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-5-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_ao_basis_primitive_vgl</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">primitive_vgl</span>);
|
||||
@ -1081,14 +1081,14 @@ Requirements
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org490fe02" class="outline-4">
|
||||
<h4 id="org490fe02"><span class="section-number-4">2.5.2</span> Provide</h4>
|
||||
<div id="outline-container-org758225d" class="outline-4">
|
||||
<h4 id="org758225d"><span class="section-number-4">2.5.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcd65a3f" class="outline-4">
|
||||
<h4 id="orgcd65a3f"><span class="section-number-4">2.5.3</span> Compute</h4>
|
||||
<div id="outline-container-orgb4f27f0" class="outline-4">
|
||||
<h4 id="orgb4f27f0"><span class="section-number-4">2.5.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-5-3">
|
||||
<table id="orgc59b531" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org737aa95" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1222,12 +1222,12 @@ Requirements
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgead2797" class="outline-4">
|
||||
<h4 id="orgead2797"><span class="section-number-4">2.5.4</span> Test</h4>
|
||||
<div id="outline-container-orgadb1245" class="outline-4">
|
||||
<h4 id="orgadb1245"><span class="section-number-4">2.5.4</span> Test</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org986d410" class="outline-4">
|
||||
<h4 id="org986d410"><span class="section-number-4">2.5.5</span> Ideas for improvement</h4>
|
||||
<div id="outline-container-orgc9ed8d9" class="outline-4">
|
||||
<h4 id="orgc9ed8d9"><span class="section-number-4">2.5.5</span> Ideas for improvement</h4>
|
||||
<div class="outline-text-4" id="text-2-5-5">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">// <span style="color: #b22222;">j : electrons</span>
|
||||
@ -1261,12 +1261,12 @@ k=0;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgeb0c624" class="outline-3">
|
||||
<h3 id="orgeb0c624"><span class="section-number-3">2.6</span> Computation of shells</h3>
|
||||
<div id="outline-container-org77ff6be" class="outline-3">
|
||||
<h3 id="org77ff6be"><span class="section-number-3">2.6</span> Computation of shells</h3>
|
||||
<div class="outline-text-3" id="text-2-6">
|
||||
</div>
|
||||
<div id="outline-container-org4278e18" class="outline-4">
|
||||
<h4 id="org4278e18"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div id="outline-container-org96a5101" class="outline-4">
|
||||
<h4 id="org96a5101"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-6-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_ao_basis_shell_vgl</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">shell_vgl</span>);
|
||||
@ -1275,14 +1275,14 @@ k=0;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5f3a610" class="outline-4">
|
||||
<h4 id="org5f3a610"><span class="section-number-4">2.6.2</span> Provide</h4>
|
||||
<div id="outline-container-org976805a" class="outline-4">
|
||||
<h4 id="org976805a"><span class="section-number-4">2.6.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7fe0bef" class="outline-4">
|
||||
<h4 id="org7fe0bef"><span class="section-number-4">2.6.3</span> Compute</h4>
|
||||
<div id="outline-container-orgc70d88d" class="outline-4">
|
||||
<h4 id="orgc70d88d"><span class="section-number-4">2.6.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-6-3">
|
||||
<table id="org8dfbfa8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org7783380" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1503,14 +1503,14 @@ k=0;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org069b1c1" class="outline-4">
|
||||
<h4 id="org069b1c1"><span class="section-number-4">2.6.4</span> Test</h4>
|
||||
<div id="outline-container-org4988bed" class="outline-4">
|
||||
<h4 id="org4988bed"><span class="section-number-4">2.6.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org60997de" class="outline-2">
|
||||
<h2 id="org60997de"><span class="section-number-2">3</span> Polynomial part</h2>
|
||||
<div id="outline-container-org448dfa5" class="outline-2">
|
||||
<h2 id="org448dfa5"><span class="section-number-2">3</span> Polynomial part</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
<p>
|
||||
Going from the atomic basis set to AOs implies a systematic
|
||||
@ -1530,8 +1530,8 @@ f & : & f_{xxx}, f_{xxy}, f_{xxz}, f_{xyy}, f_{xyz}, f_{xzz}, f_{yyy}, f_{yyz},
|
||||
\end{eqnarray}
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org41f9d14" class="outline-3">
|
||||
<h3 id="org41f9d14"><span class="section-number-3">3.1</span> General functions for Powers of \(x-X_i\)</h3>
|
||||
<div id="outline-container-org3fc30de" class="outline-3">
|
||||
<h3 id="org3fc30de"><span class="section-number-3">3.1</span> General functions for Powers of \(x-X_i\)</h3>
|
||||
<div class="outline-text-3" id="text-3-1">
|
||||
<p>
|
||||
The <code>qmckl_ao_power</code> function computes all the powers of the <code>n</code>
|
||||
@ -1543,7 +1543,7 @@ the \(n\) points:
|
||||
\[ P_{ik} = X_i^k \]
|
||||
</p>
|
||||
|
||||
<table id="org6422adc" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org8b2f311" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1601,8 +1601,8 @@ the \(n\) points:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org578bcbd" class="outline-4">
|
||||
<h4 id="org578bcbd"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgbd54e36" class="outline-4">
|
||||
<h4 id="orgbd54e36"><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>
|
||||
@ -1615,8 +1615,8 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge213e39" class="outline-4">
|
||||
<h4 id="orge213e39"><span class="section-number-4">3.1.2</span> C Header</h4>
|
||||
<div id="outline-container-orgdce835c" class="outline-4">
|
||||
<h4 id="orgdce835c"><span class="section-number-4">3.1.2</span> C Header</h4>
|
||||
<div class="outline-text-4" id="text-3-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_ao_power</span> (
|
||||
@ -1631,8 +1631,8 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6c6a23a" class="outline-4">
|
||||
<h4 id="org6c6a23a"><span class="section-number-4">3.1.3</span> Source</h4>
|
||||
<div id="outline-container-org40091ca" class="outline-4">
|
||||
<h4 id="org40091ca"><span class="section-number-4">3.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-3-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer </span><span style="color: #a020f0;">function</span><span style="color: #a0522d;"> </span><span style="color: #0000ff;">qmckl_ao_power_f</span><span style="color: #000000; background-color: #ffffff;">(context, n, X, LMAX, P, ldp) result(info)</span>
|
||||
@ -1683,15 +1683,15 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org287ce95" class="outline-4">
|
||||
<h4 id="org287ce95"><span class="section-number-4">3.1.4</span> C interface</h4>
|
||||
<div id="outline-container-org0b7c67f" class="outline-4">
|
||||
<h4 id="org0b7c67f"><span class="section-number-4">3.1.4</span> C interface</h4>
|
||||
</div>
|
||||
<div id="outline-container-org7bddb2e" class="outline-4">
|
||||
<h4 id="org7bddb2e"><span class="section-number-4">3.1.5</span> Fortran interface</h4>
|
||||
<div id="outline-container-org08cc9f4" class="outline-4">
|
||||
<h4 id="org08cc9f4"><span class="section-number-4">3.1.5</span> Fortran interface</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5ca5830" class="outline-4">
|
||||
<h4 id="org5ca5830"><span class="section-number-4">3.1.6</span> Test</h4>
|
||||
<div id="outline-container-org0228eab" class="outline-4">
|
||||
<h4 id="org0228eab"><span class="section-number-4">3.1.6</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-3-1-6">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span>(<span style="color: #008b8b;">c_int32_t</span>) <span style="color: #a020f0;">function</span> <span style="color: #0000ff;">test_qmckl_ao_power</span>(context) <span style="color: #a020f0;">bind</span>(C)
|
||||
@ -1742,8 +1742,8 @@ the \(n\) points:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8dbae55" class="outline-3">
|
||||
<h3 id="org8dbae55"><span class="section-number-3">3.2</span> General functions for Value, Gradient and Laplacian of a polynomial</h3>
|
||||
<div id="outline-container-org7c65d5b" class="outline-3">
|
||||
<h3 id="org7c65d5b"><span class="section-number-3">3.2</span> General functions for Value, Gradient and Laplacian of a polynomial</h3>
|
||||
<div class="outline-text-3" id="text-3-2">
|
||||
<p>
|
||||
A polynomial is centered on a nucleus \(\mathbf{R}_i\)
|
||||
@ -1788,7 +1788,7 @@ Laplacians at a given point in space, of all polynomials with an
|
||||
angular momentum up to <code>lmax</code>.
|
||||
</p>
|
||||
|
||||
<table id="orgf3ed9ee" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org622f94c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1867,8 +1867,8 @@ angular momentum up to <code>lmax</code>.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org45ca514" class="outline-4">
|
||||
<h4 id="org45ca514"><span class="section-number-4">3.2.1</span> Requirements</h4>
|
||||
<div id="outline-container-org40517dc" class="outline-4">
|
||||
<h4 id="org40517dc"><span class="section-number-4">3.2.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-3-2-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -1893,8 +1893,8 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgad2be91" class="outline-4">
|
||||
<h4 id="orgad2be91"><span class="section-number-4">3.2.2</span> C Header</h4>
|
||||
<div id="outline-container-org9045ce7" class="outline-4">
|
||||
<h4 id="org9045ce7"><span class="section-number-4">3.2.2</span> C Header</h4>
|
||||
<div class="outline-text-4" id="text-3-2-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_ao_polynomial_vgl</span> (
|
||||
@ -1912,8 +1912,8 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc33ae77" class="outline-4">
|
||||
<h4 id="orgc33ae77"><span class="section-number-4">3.2.3</span> Source</h4>
|
||||
<div id="outline-container-org5690e62" class="outline-4">
|
||||
<h4 id="org5690e62"><span class="section-number-4">3.2.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-3-2-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer </span><span style="color: #a020f0;">function</span><span style="color: #a0522d;"> </span><span style="color: #0000ff;">qmckl_ao_polynomial_vgl_f</span><span style="color: #000000; background-color: #ffffff;">(context, X, R, lmax, n, L, ldl, VGL, ldv) result(info)</span>
|
||||
@ -2047,16 +2047,16 @@ For example, with a=0, b=2 and c=1 the string is "yyz"</li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7c47fdc" class="outline-4">
|
||||
<h4 id="org7c47fdc"><span class="section-number-4">3.2.4</span> C interface</h4>
|
||||
<div id="outline-container-org394d0f8" class="outline-4">
|
||||
<h4 id="org394d0f8"><span class="section-number-4">3.2.4</span> C interface</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfd39d79" class="outline-4">
|
||||
<h4 id="orgfd39d79"><span class="section-number-4">3.2.5</span> Fortran interface</h4>
|
||||
<div id="outline-container-org8d2ceeb" class="outline-4">
|
||||
<h4 id="org8d2ceeb"><span class="section-number-4">3.2.5</span> Fortran interface</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7684106" class="outline-4">
|
||||
<h4 id="org7684106"><span class="section-number-4">3.2.6</span> Test</h4>
|
||||
<div id="outline-container-orgeb2995e" class="outline-4">
|
||||
<h4 id="orgeb2995e"><span class="section-number-4">3.2.6</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-3-2-6">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span>(<span style="color: #008b8b;">c_int32_t</span>) <span style="color: #a020f0;">function</span> <span style="color: #0000ff;">test_qmckl_ao_polynomial_vgl</span>(context) <span style="color: #a020f0;">bind</span>(C)
|
||||
@ -2161,12 +2161,12 @@ assert(0 == test_qmckl_ao_polynomial_vgl(context));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6462855" class="outline-2">
|
||||
<h2 id="org6462855"><span class="section-number-2">4</span> Combining radial and polynomial parts</h2>
|
||||
<div id="outline-container-orgd347518" class="outline-2">
|
||||
<h2 id="orgd347518"><span class="section-number-2">4</span> Combining radial and polynomial parts</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-orgeb6876b" class="outline-4">
|
||||
<h4 id="orgeb6876b"><span class="section-number-4">4.0.1</span> Get</h4>
|
||||
<div id="outline-container-org49ac9a5" class="outline-4">
|
||||
<h4 id="org49ac9a5"><span class="section-number-4">4.0.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-4-0-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_ao_vgl</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">ao_vgl</span>);
|
||||
@ -2175,14 +2175,14 @@ assert(0 == test_qmckl_ao_polynomial_vgl(context));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge2c28ce" class="outline-4">
|
||||
<h4 id="orge2c28ce"><span class="section-number-4">4.0.2</span> Provide</h4>
|
||||
<div id="outline-container-org820e331" class="outline-4">
|
||||
<h4 id="org820e331"><span class="section-number-4">4.0.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgff0951d" class="outline-4">
|
||||
<h4 id="orgff0951d"><span class="section-number-4">4.0.3</span> Compute</h4>
|
||||
<div id="outline-container-org5564dbf" class="outline-4">
|
||||
<h4 id="org5564dbf"><span class="section-number-4">4.0.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-4-0-3">
|
||||
<table id="orga124a28" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org8e33e6b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2447,14 +2447,14 @@ assert(0 == test_qmckl_ao_polynomial_vgl(context));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5b4f3e8" class="outline-4">
|
||||
<h4 id="org5b4f3e8"><span class="section-number-4">4.0.4</span> Test</h4>
|
||||
<div id="outline-container-org6c1b743" class="outline-4">
|
||||
<h4 id="org6c1b743"><span class="section-number-4">4.0.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:47</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:47 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>BLAS functions</title>
|
||||
@ -333,13 +333,13 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgf17cc26">1. Matrix operations</a>
|
||||
<li><a href="#org2029230">1. Matrix operations</a>
|
||||
<ul>
|
||||
<li><a href="#org8cabcf2">1.1. <code>qmckl_dgemm</code></a>
|
||||
<li><a href="#org5359312">1.1. <code>qmckl_dgemm</code></a>
|
||||
<ul>
|
||||
<li><a href="#orga2bef8f">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org0021447">1.1.2. C header</a></li>
|
||||
<li><a href="#orgf4a482c">1.1.3. Source</a></li>
|
||||
<li><a href="#org22eeccf">1.1.1. Requirements</a></li>
|
||||
<li><a href="#orgd21e967">1.1.2. C header</a></li>
|
||||
<li><a href="#org44eae54">1.1.3. Source</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -348,19 +348,19 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf17cc26" class="outline-2">
|
||||
<h2 id="orgf17cc26"><span class="section-number-2">1</span> Matrix operations</h2>
|
||||
<div id="outline-container-org2029230" class="outline-2">
|
||||
<h2 id="org2029230"><span class="section-number-2">1</span> Matrix operations</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-org8cabcf2" class="outline-3">
|
||||
<h3 id="org8cabcf2"><span class="section-number-3">1.1</span> <code>qmckl_dgemm</code></h3>
|
||||
<div id="outline-container-org5359312" class="outline-3">
|
||||
<h3 id="org5359312"><span class="section-number-3">1.1</span> <code>qmckl_dgemm</code></h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<p>
|
||||
Matrix multiply l\(C_{ij} = \beta C_{ij} + \alpha \sum_{k} A_{ik} \cdot B_{kj}\) using Fortran <code>matmul</code> function.
|
||||
TODO: Add description about the external library dependence.
|
||||
</p>
|
||||
|
||||
<table id="orge55c124" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org2c61c8e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -474,8 +474,8 @@ TODO: Add description about the external library dependence.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga2bef8f" class="outline-4">
|
||||
<h4 id="orga2bef8f"><span class="section-number-4">1.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org22eeccf" class="outline-4">
|
||||
<h4 id="org22eeccf"><span class="section-number-4">1.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-1-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -492,8 +492,8 @@ TODO: Add description about the external library dependence.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0021447" class="outline-4">
|
||||
<h4 id="org0021447"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div id="outline-container-orgd21e967" class="outline-4">
|
||||
<h4 id="orgd21e967"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-1-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_dgemm</span> (
|
||||
@ -517,8 +517,8 @@ TODO: Add description about the external library dependence.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgf4a482c" class="outline-4">
|
||||
<h4 id="orgf4a482c"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div id="outline-container-org44eae54" class="outline-4">
|
||||
<h4 id="org44eae54"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-1-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer </span><span style="color: #a020f0;">function</span><span style="color: #a0522d;"> </span><span style="color: #0000ff;">qmckl_dgemm_f</span><span style="color: #000000; background-color: #ffffff;">(context, TransA, TransB, m, n, k, alpha, A, LDA, B, LDB, beta, C, LDC)</span><span style="color: #a0522d;"> </span><span style="color: #a020f0;">&</span>
|
||||
@ -617,7 +617,7 @@ TODO: Add description about the external library dependence.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:47</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:47 -->
|
||||
<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="#org8b916a7">1. Context handling</a>
|
||||
<li><a href="#org84f39db">1. Context handling</a>
|
||||
<ul>
|
||||
<li><a href="#org2dc740d">1.1. Data structure</a></li>
|
||||
<li><a href="#orgc78497a">1.2. Creation</a></li>
|
||||
<li><a href="#orgb9e2d77">1.3. Locking</a></li>
|
||||
<li><a href="#orge33d504">1.4. <span class="todo TODO">TODO</span> Copy</a></li>
|
||||
<li><a href="#orgdbe1501">1.5. Destroy</a></li>
|
||||
<li><a href="#org3916163">1.1. Data structure</a></li>
|
||||
<li><a href="#orgcc4a30e">1.2. Creation</a></li>
|
||||
<li><a href="#orgc7e6a55">1.3. Locking</a></li>
|
||||
<li><a href="#org9112116">1.4. <span class="todo TODO">TODO</span> Copy</a></li>
|
||||
<li><a href="#org526c165">1.5. Destroy</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8b916a7" class="outline-2">
|
||||
<h2 id="org8b916a7"><span class="section-number-2">1</span> Context handling</h2>
|
||||
<div id="outline-container-org84f39db" class="outline-2">
|
||||
<h2 id="org84f39db"><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="org34de98f"><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="org52f0b87"><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-org2dc740d" class="outline-3">
|
||||
<h3 id="org2dc740d"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org3916163" class="outline-3">
|
||||
<h3 id="org3916163"><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="#orgc78497a">qmckl<sub>context</sub><sub>create</sub></a>, <a href="#orgdbe1501">qmckl<sub>context</sub><sub>destroy</sub></a> and <a href="#orge33d504">qmckl<sub>context</sub><sub>copy</sub></a>
|
||||
<a href="#orgcc4a30e">qmckl<sub>context</sub><sub>create</sub></a>, <a href="#org526c165">qmckl<sub>context</sub><sub>destroy</sub></a> and <a href="#org9112116">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-orgc78497a" class="outline-3">
|
||||
<h3 id="orgc78497a"><span class="section-number-3">1.2</span> Creation</h3>
|
||||
<div id="outline-container-orgcc4a30e" class="outline-3">
|
||||
<h3 id="orgcc4a30e"><span class="section-number-3">1.2</span> Creation</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
To create a new context, <code>qmckl_context_create()</code> should be used.
|
||||
@ -502,8 +502,8 @@ To create a new context, <code>qmckl_context_create()</code> should be used.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orgb9e2d77" class="outline-3">
|
||||
<h3 id="orgb9e2d77"><span class="section-number-3">1.3</span> Locking</h3>
|
||||
<div id="outline-container-orgc7e6a55" class="outline-3">
|
||||
<h3 id="orgc7e6a55"><span class="section-number-3">1.3</span> Locking</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
For thread safety, the context may be locked/unlocked. The lock is
|
||||
@ -548,8 +548,8 @@ number of times the thread has locked it is saved in the
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge33d504" class="outline-3">
|
||||
<h3 id="orge33d504"><span class="section-number-3">1.4</span> <span class="todo TODO">TODO</span> Copy</h3>
|
||||
<div id="outline-container-org9112116" class="outline-3">
|
||||
<h3 id="org9112116"><span class="section-number-3">1.4</span> <span class="todo TODO">TODO</span> Copy</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<p>
|
||||
<code>qmckl_context_copy</code> makes a deep copy of a context. It returns
|
||||
@ -597,8 +597,8 @@ number of times the thread has locked it is saved in the
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orgdbe1501" class="outline-3">
|
||||
<h3 id="orgdbe1501"><span class="section-number-3">1.5</span> Destroy</h3>
|
||||
<div id="outline-container-org526c165" class="outline-3">
|
||||
<h3 id="org526c165"><span class="section-number-3">1.5</span> Destroy</h3>
|
||||
<div class="outline-text-3" id="text-1-5">
|
||||
<p>
|
||||
The context is destroyed with <code>qmckl_context_destroy</code>, leaving the ancestors untouched.
|
||||
@ -652,7 +652,7 @@ It frees the context, and returns the previous context.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:47</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:47 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Inter-particle distances</title>
|
||||
@ -333,50 +333,50 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org068b5c9">1. Squared distance</a>
|
||||
<li><a href="#org47107bb">1. Squared distance</a>
|
||||
<ul>
|
||||
<li><a href="#orge8ff51a">1.1. <code>qmckl_distance_sq</code></a>
|
||||
<li><a href="#orgcbdc285">1.1. <code>qmckl_distance_sq</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgaedf3d5">1.1.1. Requirements</a></li>
|
||||
<li><a href="#orgf454a51">1.1.2. C header</a></li>
|
||||
<li><a href="#org00a1a72">1.1.3. Source</a></li>
|
||||
<li><a href="#org7bc4a82">1.1.4. Performance</a></li>
|
||||
<li><a href="#org75eb135">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org05170ba">1.1.2. C header</a></li>
|
||||
<li><a href="#org15a7b2e">1.1.3. Source</a></li>
|
||||
<li><a href="#orgec38671">1.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orge4cd0da">2. Distance</a>
|
||||
<li><a href="#org19c012c">2. Distance</a>
|
||||
<ul>
|
||||
<li><a href="#orge69a1c3">2.1. <code>qmckl_distance</code></a>
|
||||
<li><a href="#orgd3023eb">2.1. <code>qmckl_distance</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgd50d7f4">2.1.1. Requirements</a></li>
|
||||
<li><a href="#orgd3582d5">2.1.2. C header</a></li>
|
||||
<li><a href="#org6b37741">2.1.3. Source</a></li>
|
||||
<li><a href="#org675dba1">2.1.4. Performance</a></li>
|
||||
<li><a href="#org190725a">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org17813ad">2.1.2. C header</a></li>
|
||||
<li><a href="#orgd2698c6">2.1.3. Source</a></li>
|
||||
<li><a href="#orgdefe842">2.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org6d131b4">3. Rescaled Distance</a>
|
||||
<li><a href="#org6260d71">3. Rescaled Distance</a>
|
||||
<ul>
|
||||
<li><a href="#orgf516262">3.1. <code>qmckl_distance_rescaled</code></a>
|
||||
<li><a href="#org08bbc6e">3.1. <code>qmckl_distance_rescaled</code></a>
|
||||
<ul>
|
||||
<li><a href="#org54be831">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orgc178d42">3.1.2. C header</a></li>
|
||||
<li><a href="#org83b84e9">3.1.3. Source</a></li>
|
||||
<li><a href="#orgd8847a2">3.1.4. Performance</a></li>
|
||||
<li><a href="#org6802dcd">3.1.1. Requirements</a></li>
|
||||
<li><a href="#org935aff3">3.1.2. C header</a></li>
|
||||
<li><a href="#orga8ee921">3.1.3. Source</a></li>
|
||||
<li><a href="#org92b8df1">3.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org593d19a">4. Rescaled Distance Derivatives</a>
|
||||
<li><a href="#org85b4f6d">4. Rescaled Distance Derivatives</a>
|
||||
<ul>
|
||||
<li><a href="#org066abec">4.1. <code>qmckl_distance_rescaled_deriv_e</code></a>
|
||||
<li><a href="#org96b5189">4.1. <code>qmckl_distance_rescaled_deriv_e</code></a>
|
||||
<ul>
|
||||
<li><a href="#org8525442">4.1.1. Requirements</a></li>
|
||||
<li><a href="#org4360558">4.1.2. C header</a></li>
|
||||
<li><a href="#org49675a8">4.1.3. Source</a></li>
|
||||
<li><a href="#org1889be0">4.1.4. Performance</a></li>
|
||||
<li><a href="#org2fdac18">4.1.1. Requirements</a></li>
|
||||
<li><a href="#orgcf31bd6">4.1.2. C header</a></li>
|
||||
<li><a href="#org14a25eb">4.1.3. Source</a></li>
|
||||
<li><a href="#org5badb62">4.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -385,12 +385,12 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org068b5c9" class="outline-2">
|
||||
<h2 id="org068b5c9"><span class="section-number-2">1</span> Squared distance</h2>
|
||||
<div id="outline-container-org47107bb" class="outline-2">
|
||||
<h2 id="org47107bb"><span class="section-number-2">1</span> Squared distance</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-orge8ff51a" class="outline-3">
|
||||
<h3 id="orge8ff51a"><span class="section-number-3">1.1</span> <code>qmckl_distance_sq</code></h3>
|
||||
<div id="outline-container-orgcbdc285" class="outline-3">
|
||||
<h3 id="orgcbdc285"><span class="section-number-3">1.1</span> <code>qmckl_distance_sq</code></h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<p>
|
||||
<code>qmckl_distance_sq</code> computes the matrix of the squared distances
|
||||
@ -403,7 +403,7 @@ between all pairs of points in two sets, one point within each set:
|
||||
\]
|
||||
</p>
|
||||
|
||||
<table id="orgd868b2d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org189938a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -496,8 +496,8 @@ between all pairs of points in two sets, one point within each set:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgaedf3d5" class="outline-4">
|
||||
<h4 id="orgaedf3d5"><span class="section-number-4">1.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org75eb135" class="outline-4">
|
||||
<h4 id="org75eb135"><span class="section-number-4">1.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-1-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -515,8 +515,8 @@ between all pairs of points in two sets, one point within each set:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf454a51" class="outline-4">
|
||||
<h4 id="orgf454a51"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div id="outline-container-org05170ba" class="outline-4">
|
||||
<h4 id="org05170ba"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-1-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_distance_sq</span> (
|
||||
@ -536,8 +536,8 @@ between all pairs of points in two sets, one point within each set:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org00a1a72" class="outline-4">
|
||||
<h4 id="org00a1a72"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div id="outline-container-org15a7b2e" class="outline-4">
|
||||
<h4 id="org15a7b2e"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-1-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span><span style="color: #a0522d;"> function qmckl_distance_sq_f(context, transa, transb, m, n, </span><span style="color: #a020f0;">&</span>
|
||||
@ -672,8 +672,8 @@ between all pairs of points in two sets, one point within each set:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7bc4a82" class="outline-4">
|
||||
<h4 id="org7bc4a82"><span class="section-number-4">1.1.4</span> Performance</h4>
|
||||
<div id="outline-container-orgec38671" class="outline-4">
|
||||
<h4 id="orgec38671"><span class="section-number-4">1.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-1-1-4">
|
||||
<p>
|
||||
This function is more efficient when <code>A</code> and <code>B</code> are
|
||||
@ -683,12 +683,12 @@ transposed.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orge4cd0da" class="outline-2">
|
||||
<h2 id="orge4cd0da"><span class="section-number-2">2</span> Distance</h2>
|
||||
<div id="outline-container-org19c012c" class="outline-2">
|
||||
<h2 id="org19c012c"><span class="section-number-2">2</span> Distance</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-orge69a1c3" class="outline-3">
|
||||
<h3 id="orge69a1c3"><span class="section-number-3">2.1</span> <code>qmckl_distance</code></h3>
|
||||
<div id="outline-container-orgd3023eb" class="outline-3">
|
||||
<h3 id="orgd3023eb"><span class="section-number-3">2.1</span> <code>qmckl_distance</code></h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
<code>qmckl_distance</code> computes the matrix of the distances between all
|
||||
@ -706,7 +706,7 @@ If the input array is normal (<code>'N'</code>), the xyz coordinates are in
|
||||
the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortran.
|
||||
</p>
|
||||
|
||||
<table id="orgfac7b83" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org4d578f9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -799,8 +799,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd50d7f4" class="outline-4">
|
||||
<h4 id="orgd50d7f4"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org190725a" class="outline-4">
|
||||
<h4 id="org190725a"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-2-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -818,8 +818,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd3582d5" class="outline-4">
|
||||
<h4 id="orgd3582d5"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div id="outline-container-org17813ad" class="outline-4">
|
||||
<h4 id="org17813ad"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_distance</span> (
|
||||
@ -839,8 +839,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6b37741" class="outline-4">
|
||||
<h4 id="org6b37741"><span class="section-number-4">2.1.3</span> Source</h4>
|
||||
<div id="outline-container-orgd2698c6" class="outline-4">
|
||||
<h4 id="orgd2698c6"><span class="section-number-4">2.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span><span style="color: #a0522d;"> function qmckl_distance_f(context, transa, transb, m, n, </span><span style="color: #a020f0;">&</span>
|
||||
@ -1007,8 +1007,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org675dba1" class="outline-4">
|
||||
<h4 id="org675dba1"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div id="outline-container-orgdefe842" class="outline-4">
|
||||
<h4 id="orgdefe842"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-2-1-4">
|
||||
<p>
|
||||
This function is more efficient when <code>A</code> and <code>B</code> are transposed.
|
||||
@ -1018,12 +1018,12 @@ This function is more efficient when <code>A</code> and <code>B</code> are trans
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6d131b4" class="outline-2">
|
||||
<h2 id="org6d131b4"><span class="section-number-2">3</span> Rescaled Distance</h2>
|
||||
<div id="outline-container-org6260d71" class="outline-2">
|
||||
<h2 id="org6260d71"><span class="section-number-2">3</span> Rescaled Distance</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-orgf516262" class="outline-3">
|
||||
<h3 id="orgf516262"><span class="section-number-3">3.1</span> <code>qmckl_distance_rescaled</code></h3>
|
||||
<div id="outline-container-org08bbc6e" class="outline-3">
|
||||
<h3 id="org08bbc6e"><span class="section-number-3">3.1</span> <code>qmckl_distance_rescaled</code></h3>
|
||||
<div class="outline-text-3" id="text-3-1">
|
||||
<p>
|
||||
<code>qmckl_distance_rescaled</code> computes the matrix of the rescaled distances between all
|
||||
@ -1041,7 +1041,7 @@ If the input array is normal (<code>'N'</code>), the xyz coordinates are in
|
||||
the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortran.
|
||||
</p>
|
||||
|
||||
<table id="orga719863" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org699adbe" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1141,8 +1141,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org54be831" class="outline-4">
|
||||
<h4 id="org54be831"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org6802dcd" class="outline-4">
|
||||
<h4 id="org6802dcd"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-3-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -1160,8 +1160,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc178d42" class="outline-4">
|
||||
<h4 id="orgc178d42"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div id="outline-container-org935aff3" class="outline-4">
|
||||
<h4 id="org935aff3"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-3-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_distance_rescaled</span> (
|
||||
@ -1182,8 +1182,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org83b84e9" class="outline-4">
|
||||
<h4 id="org83b84e9"><span class="section-number-4">3.1.3</span> Source</h4>
|
||||
<div id="outline-container-orga8ee921" class="outline-4">
|
||||
<h4 id="orga8ee921"><span class="section-number-4">3.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-3-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span><span style="color: #a0522d;"> function qmckl_distance_rescaled_f(context, transa, transb, m, n, </span><span style="color: #a020f0;">&</span>
|
||||
@ -1353,8 +1353,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd8847a2" class="outline-4">
|
||||
<h4 id="orgd8847a2"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org92b8df1" class="outline-4">
|
||||
<h4 id="org92b8df1"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-3-1-4">
|
||||
<p>
|
||||
This function is more efficient when <code>A</code> and <code>B</code> are transposed.
|
||||
@ -1363,12 +1363,12 @@ This function is more efficient when <code>A</code> and <code>B</code> are trans
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org593d19a" class="outline-2">
|
||||
<h2 id="org593d19a"><span class="section-number-2">4</span> Rescaled Distance Derivatives</h2>
|
||||
<div id="outline-container-org85b4f6d" class="outline-2">
|
||||
<h2 id="org85b4f6d"><span class="section-number-2">4</span> Rescaled Distance Derivatives</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-org066abec" class="outline-3">
|
||||
<h3 id="org066abec"><span class="section-number-3">4.1</span> <code>qmckl_distance_rescaled_deriv_e</code></h3>
|
||||
<div id="outline-container-org96b5189" class="outline-3">
|
||||
<h3 id="org96b5189"><span class="section-number-3">4.1</span> <code>qmckl_distance_rescaled_deriv_e</code></h3>
|
||||
<div class="outline-text-3" id="text-4-1">
|
||||
<p>
|
||||
<code>qmckl_distance_rescaled_deriv_e</code> computes the matrix of the gradient and laplacian of the
|
||||
@ -1435,7 +1435,7 @@ If the input array is normal (<code>'N'</code>), the xyz coordinates are in
|
||||
the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortran.
|
||||
</p>
|
||||
|
||||
<table id="org7c89321" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org8486c90" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1535,8 +1535,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8525442" class="outline-4">
|
||||
<h4 id="org8525442"><span class="section-number-4">4.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org2fdac18" class="outline-4">
|
||||
<h4 id="org2fdac18"><span class="section-number-4">4.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-4-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -1554,8 +1554,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4360558" class="outline-4">
|
||||
<h4 id="org4360558"><span class="section-number-4">4.1.2</span> C header</h4>
|
||||
<div id="outline-container-orgcf31bd6" class="outline-4">
|
||||
<h4 id="orgcf31bd6"><span class="section-number-4">4.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-4-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_distance_rescaled_deriv_e</span> (
|
||||
@ -1576,8 +1576,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org49675a8" class="outline-4">
|
||||
<h4 id="org49675a8"><span class="section-number-4">4.1.3</span> Source</h4>
|
||||
<div id="outline-container-org14a25eb" class="outline-4">
|
||||
<h4 id="org14a25eb"><span class="section-number-4">4.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-4-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer</span><span style="color: #a0522d;"> function qmckl_distance_rescaled_deriv_e_f(context, transa, transb, m, n, </span><span style="color: #a020f0;">&</span>
|
||||
@ -1768,8 +1768,8 @@ the leading dimension: <code>[n][3]</code> in C and <code>(3,n)</code> in Fortra
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1889be0" class="outline-4">
|
||||
<h4 id="org1889be0"><span class="section-number-4">4.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org5badb62" class="outline-4">
|
||||
<h4 id="org5badb62"><span class="section-number-4">4.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-4-1-4">
|
||||
<p>
|
||||
This function is more efficient when <code>A</code> and <code>B</code> are transposed.
|
||||
@ -1781,7 +1781,7 @@ This function is more efficient when <code>A</code> and <code>B</code> are trans
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:47</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:46 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Electrons</title>
|
||||
@ -333,63 +333,63 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgdece047">1. Context</a>
|
||||
<li><a href="#org8c8c887">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org10e9045">1.1. Data structure</a></li>
|
||||
<li><a href="#org547d52e">1.2. Access functions</a>
|
||||
<li><a href="#orgf253fff">1.1. Data structure</a></li>
|
||||
<li><a href="#org851f6f4">1.2. Access functions</a>
|
||||
<ul>
|
||||
<li><a href="#org9949944">1.2.1. Number of electrons</a></li>
|
||||
<li><a href="#orgc3d48aa">1.2.2. Number of walkers</a></li>
|
||||
<li><a href="#org0ff5cfd">1.2.3. Scaling factors Kappa</a></li>
|
||||
<li><a href="#org1073e0c">1.2.4. Electron coordinates</a></li>
|
||||
<li><a href="#orgc90256e">1.2.1. Number of electrons</a></li>
|
||||
<li><a href="#org72d304c">1.2.2. Number of walkers</a></li>
|
||||
<li><a href="#org88ca0da">1.2.3. Scaling factors Kappa</a></li>
|
||||
<li><a href="#org80e1f86">1.2.4. Electron coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org68d9b8d">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org86f2155">1.4. Test</a></li>
|
||||
<li><a href="#orgb47e1a2">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgb5fda89">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgcc40a1d">2. Computation</a>
|
||||
<li><a href="#orge76c1ef">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#orga183310">2.1. Electron-electron distances</a>
|
||||
<li><a href="#orgb870550">2.1. Electron-electron distances</a>
|
||||
<ul>
|
||||
<li><a href="#org8f8af3d">2.1.1. Get</a></li>
|
||||
<li><a href="#orgb21fc0d">2.1.2. Compute</a></li>
|
||||
<li><a href="#org62057a6">2.1.3. Test</a></li>
|
||||
<li><a href="#orga8f846c">2.1.1. Get</a></li>
|
||||
<li><a href="#org1fc945e">2.1.2. Compute</a></li>
|
||||
<li><a href="#org069e1d0">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org88da348">2.2. Electron-electron rescaled distances</a>
|
||||
<li><a href="#orgee10bf6">2.2. Electron-electron rescaled distances</a>
|
||||
<ul>
|
||||
<li><a href="#org0eccc95">2.2.1. Get</a></li>
|
||||
<li><a href="#org269bfde">2.2.2. Compute</a></li>
|
||||
<li><a href="#org004e9ae">2.2.3. Test</a></li>
|
||||
<li><a href="#org1dee95c">2.2.1. Get</a></li>
|
||||
<li><a href="#org91fff6b">2.2.2. Compute</a></li>
|
||||
<li><a href="#orgc9ec897">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orge211d67">2.3. Electron-electron rescaled distance gradients and laplacian with respect to electron coords</a>
|
||||
<li><a href="#org81f1a1f">2.3. Electron-electron rescaled distance gradients and laplacian with respect to electron coords</a>
|
||||
<ul>
|
||||
<li><a href="#orgcb19bb6">2.3.1. Get</a></li>
|
||||
<li><a href="#orgde5ae0b">2.3.2. Compute</a></li>
|
||||
<li><a href="#org619e27e">2.3.3. Test</a></li>
|
||||
<li><a href="#orgab2b622">2.3.1. Get</a></li>
|
||||
<li><a href="#org13dd5d9">2.3.2. Compute</a></li>
|
||||
<li><a href="#org1eb0f26">2.3.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgf4f2052">2.4. Electron-nucleus distances</a>
|
||||
<li><a href="#org14f66cc">2.4. Electron-nucleus distances</a>
|
||||
<ul>
|
||||
<li><a href="#org3e75e60">2.4.1. Get</a></li>
|
||||
<li><a href="#orga2fd206">2.4.2. Compute</a></li>
|
||||
<li><a href="#org8730901">2.4.3. Test</a></li>
|
||||
<li><a href="#org1ae2184">2.4.1. Get</a></li>
|
||||
<li><a href="#org6395009">2.4.2. Compute</a></li>
|
||||
<li><a href="#orgc56b939">2.4.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgba6b66a">2.5. Electron-nucleus rescaled distances</a>
|
||||
<li><a href="#org024dd8e">2.5. Electron-nucleus rescaled distances</a>
|
||||
<ul>
|
||||
<li><a href="#org6635f71">2.5.1. Get</a></li>
|
||||
<li><a href="#org0811ad0">2.5.2. Compute</a></li>
|
||||
<li><a href="#org302a650">2.5.3. Test</a></li>
|
||||
<li><a href="#org199e2eb">2.5.1. Get</a></li>
|
||||
<li><a href="#org5f4c1b7">2.5.2. Compute</a></li>
|
||||
<li><a href="#org00cde69">2.5.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgdbef4b3">2.6. Electron-nucleus rescaled distance gradients and laplacian with respect to electron coords</a>
|
||||
<li><a href="#orge6e6fcc">2.6. Electron-nucleus rescaled distance gradients and laplacian with respect to electron coords</a>
|
||||
<ul>
|
||||
<li><a href="#org072217a">2.6.1. Get</a></li>
|
||||
<li><a href="#orgd1adad4">2.6.2. Compute</a></li>
|
||||
<li><a href="#orgae88a02">2.6.3. Test</a></li>
|
||||
<li><a href="#orgb1c506c">2.6.1. Get</a></li>
|
||||
<li><a href="#orgd110695">2.6.2. Compute</a></li>
|
||||
<li><a href="#org079b730">2.6.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -398,8 +398,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdece047" class="outline-2">
|
||||
<h2 id="orgdece047"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org8c8c887" class="outline-2">
|
||||
<h2 id="org8c8c887"><span class="section-number-2">1</span> Context</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The following data stored in the context:
|
||||
@ -557,8 +557,8 @@ The following data stored in the context:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org10e9045" class="outline-3">
|
||||
<h3 id="org10e9045"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-orgf253fff" class="outline-3">
|
||||
<h3 id="orgf253fff"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> <span style="color: #228b22;">qmckl_electron_struct</span> {
|
||||
@ -633,8 +633,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org547d52e" class="outline-3">
|
||||
<h3 id="org547d52e"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org851f6f4" class="outline-3">
|
||||
<h3 id="org851f6f4"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
Access functions return <code>QMCKL_SUCCESS</code> when the data has been
|
||||
@ -646,12 +646,12 @@ contains the requested data. Otherwise, this variable is untouched.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9949944" class="outline-4">
|
||||
<h4 id="org9949944"><span class="section-number-4">1.2.1</span> Number of electrons</h4>
|
||||
<div id="outline-container-orgc90256e" class="outline-4">
|
||||
<h4 id="orgc90256e"><span class="section-number-4">1.2.1</span> Number of electrons</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc3d48aa" class="outline-4">
|
||||
<h4 id="orgc3d48aa"><span class="section-number-4">1.2.2</span> Number of walkers</h4>
|
||||
<div id="outline-container-org72d304c" class="outline-4">
|
||||
<h4 id="org72d304c"><span class="section-number-4">1.2.2</span> Number of walkers</h4>
|
||||
<div class="outline-text-4" id="text-1-2-2">
|
||||
<p>
|
||||
A walker is a set of electron coordinates that are arguments of
|
||||
@ -660,12 +660,12 @@ the wave function. <code>walk_num</code> is the number of walkers.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0ff5cfd" class="outline-4">
|
||||
<h4 id="org0ff5cfd"><span class="section-number-4">1.2.3</span> Scaling factors Kappa</h4>
|
||||
<div id="outline-container-org88ca0da" class="outline-4">
|
||||
<h4 id="org88ca0da"><span class="section-number-4">1.2.3</span> Scaling factors Kappa</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1073e0c" class="outline-4">
|
||||
<h4 id="org1073e0c"><span class="section-number-4">1.2.4</span> Electron coordinates</h4>
|
||||
<div id="outline-container-org80e1f86" class="outline-4">
|
||||
<h4 id="org80e1f86"><span class="section-number-4">1.2.4</span> Electron coordinates</h4>
|
||||
<div class="outline-text-4" id="text-1-2-4">
|
||||
<p>
|
||||
Returns the current electron coordinates. The pointer is assumed
|
||||
@ -709,8 +709,8 @@ The order of the indices is:
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org68d9b8d" class="outline-3">
|
||||
<h3 id="org68d9b8d"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-orgb47e1a2" class="outline-3">
|
||||
<h3 id="orgb47e1a2"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
To set the data relative to the electrons in the context, the
|
||||
@ -797,8 +797,8 @@ in the context.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org86f2155" class="outline-3">
|
||||
<h3 id="org86f2155"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-orgb5fda89" class="outline-3">
|
||||
<h3 id="orgb5fda89"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Reference input data </span>*/
|
||||
@ -904,8 +904,8 @@ rc = qmckl_get_electron_coord (context, <span style="color: #8b2252;">'N'</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcc40a1d" class="outline-2">
|
||||
<h2 id="orgcc40a1d"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-orge76c1ef" class="outline-2">
|
||||
<h2 id="orge76c1ef"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<p>
|
||||
The computed data is stored in the context so that it can be reused
|
||||
@ -918,12 +918,12 @@ current date is stored.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga183310" class="outline-3">
|
||||
<h3 id="orga183310"><span class="section-number-3">2.1</span> Electron-electron distances</h3>
|
||||
<div id="outline-container-orgb870550" class="outline-3">
|
||||
<h3 id="orgb870550"><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-org8f8af3d" class="outline-4">
|
||||
<h4 id="org8f8af3d"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-orga8f846c" class="outline-4">
|
||||
<h4 id="orga8f846c"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_electron_ee_distance</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">distance</span>);
|
||||
@ -932,10 +932,10 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb21fc0d" class="outline-4">
|
||||
<h4 id="orgb21fc0d"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-org1fc945e" class="outline-4">
|
||||
<h4 id="org1fc945e"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="org9f8bb3f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org969ffb9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1031,8 +1031,8 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org62057a6" class="outline-4">
|
||||
<h4 id="org62057a6"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-org069e1d0" class="outline-4">
|
||||
<h4 id="org069e1d0"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #0000ff;">assert</span>(<span style="color: #228b22;">qmckl_electron_provided</span>(<span style="color: #a0522d;">context</span>));
|
||||
@ -1066,8 +1066,8 @@ rc = qmckl_get_electron_ee_distance(context, ee_distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org88da348" class="outline-3">
|
||||
<h3 id="org88da348"><span class="section-number-3">2.2</span> Electron-electron rescaled distances</h3>
|
||||
<div id="outline-container-orgee10bf6" class="outline-3">
|
||||
<h3 id="orgee10bf6"><span class="section-number-3">2.2</span> Electron-electron rescaled distances</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
<code>ee_distance_rescaled</code> stores the matrix of the rescaled distances between all
|
||||
@ -1085,8 +1085,8 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0eccc95" class="outline-4">
|
||||
<h4 id="org0eccc95"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-org1dee95c" class="outline-4">
|
||||
<h4 id="org1dee95c"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-2-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_electron_ee_distance_rescaled</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">distance_rescaled</span>);
|
||||
@ -1095,10 +1095,10 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org269bfde" class="outline-4">
|
||||
<h4 id="org269bfde"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-org91fff6b" class="outline-4">
|
||||
<h4 id="org91fff6b"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="org6693142" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orge828cf6" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1203,8 +1203,8 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org004e9ae" class="outline-4">
|
||||
<h4 id="org004e9ae"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-orgc9ec897" class="outline-4">
|
||||
<h4 id="orgc9ec897"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-2-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #0000ff;">assert</span>(<span style="color: #228b22;">qmckl_electron_provided</span>(<span style="color: #a0522d;">context</span>));
|
||||
@ -1238,8 +1238,8 @@ rc = qmckl_get_electron_ee_distance_rescaled(context, ee_distance_rescaled);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge211d67" class="outline-3">
|
||||
<h3 id="orge211d67"><span class="section-number-3">2.3</span> Electron-electron rescaled distance gradients and laplacian with respect to electron coords</h3>
|
||||
<div id="outline-container-org81f1a1f" class="outline-3">
|
||||
<h3 id="org81f1a1f"><span class="section-number-3">2.3</span> Electron-electron rescaled distance gradients and laplacian with respect to electron coords</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
The rescaled distances which is given as \(R = (1 - \exp{-\kappa r})/\kappa\)
|
||||
@ -1251,8 +1251,8 @@ gives the Laplacian \(\partial x^2 + \partial y^2 + \partial z^2\).
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcb19bb6" class="outline-4">
|
||||
<h4 id="orgcb19bb6"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-orgab2b622" class="outline-4">
|
||||
<h4 id="orgab2b622"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-3-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_electron_ee_distance_rescaled_deriv_e</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">distance_rescaled_deriv_e</span>);
|
||||
@ -1261,10 +1261,10 @@ gives the Laplacian \(\partial x^2 + \partial y^2 + \partial z^2\).
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgde5ae0b" class="outline-4">
|
||||
<h4 id="orgde5ae0b"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div id="outline-container-org13dd5d9" class="outline-4">
|
||||
<h4 id="org13dd5d9"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-3-2">
|
||||
<table id="org5d8fbd9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org3d5dfcb" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1369,8 +1369,8 @@ gives the Laplacian \(\partial x^2 + \partial y^2 + \partial z^2\).
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org619e27e" class="outline-4">
|
||||
<h4 id="org619e27e"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div id="outline-container-org1eb0f26" class="outline-4">
|
||||
<h4 id="org1eb0f26"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-3-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #0000ff;">assert</span>(<span style="color: #228b22;">qmckl_electron_provided</span>(<span style="color: #a0522d;">context</span>));
|
||||
@ -1405,12 +1405,12 @@ rc = qmckl_get_electron_ee_distance_rescaled_deriv_e(context, ee_distance_rescal
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf4f2052" class="outline-3">
|
||||
<h3 id="orgf4f2052"><span class="section-number-3">2.4</span> Electron-nucleus distances</h3>
|
||||
<div id="outline-container-org14f66cc" class="outline-3">
|
||||
<h3 id="org14f66cc"><span class="section-number-3">2.4</span> Electron-nucleus distances</h3>
|
||||
<div class="outline-text-3" id="text-2-4">
|
||||
</div>
|
||||
<div id="outline-container-org3e75e60" class="outline-4">
|
||||
<h4 id="org3e75e60"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div id="outline-container-org1ae2184" class="outline-4">
|
||||
<h4 id="org1ae2184"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-4-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_electron_en_distance</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a0522d;">distance</span>);
|
||||
@ -1419,10 +1419,10 @@ rc = qmckl_get_electron_ee_distance_rescaled_deriv_e(context, ee_distance_rescal
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga2fd206" class="outline-4">
|
||||
<h4 id="orga2fd206"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div id="outline-container-org6395009" class="outline-4">
|
||||
<h4 id="org6395009"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-4-2">
|
||||
<table id="org74d021a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org43c6139" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1539,8 +1539,8 @@ rc = qmckl_get_electron_ee_distance_rescaled_deriv_e(context, ee_distance_rescal
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8730901" class="outline-4">
|
||||
<h4 id="org8730901"><span class="section-number-4">2.4.3</span> Test</h4>
|
||||
<div id="outline-container-orgc56b939" class="outline-4">
|
||||
<h4 id="orgc56b939"><span class="section-number-4">2.4.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-4-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">
|
||||
@ -1588,8 +1588,8 @@ rc = qmckl_get_electron_en_distance(context, &(en_distance[0][0][0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgba6b66a" class="outline-3">
|
||||
<h3 id="orgba6b66a"><span class="section-number-3">2.5</span> Electron-nucleus rescaled distances</h3>
|
||||
<div id="outline-container-org024dd8e" class="outline-3">
|
||||
<h3 id="org024dd8e"><span class="section-number-3">2.5</span> Electron-nucleus rescaled distances</h3>
|
||||
<div class="outline-text-3" id="text-2-5">
|
||||
<p>
|
||||
<code>en_distance_rescaled</code> stores the matrix of the rescaled distances between
|
||||
@ -1607,8 +1607,8 @@ where \(C_{ij}\) is the matrix of electron-nucleus distances.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6635f71" class="outline-4">
|
||||
<h4 id="org6635f71"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div id="outline-container-org199e2eb" class="outline-4">
|
||||
<h4 id="org199e2eb"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-5-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_electron_en_distance_rescaled</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a0522d;">distance_rescaled</span>);
|
||||
@ -1617,10 +1617,10 @@ where \(C_{ij}\) is the matrix of electron-nucleus distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0811ad0" class="outline-4">
|
||||
<h4 id="org0811ad0"><span class="section-number-4">2.5.2</span> Compute</h4>
|
||||
<div id="outline-container-org5f4c1b7" class="outline-4">
|
||||
<h4 id="org5f4c1b7"><span class="section-number-4">2.5.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-5-2">
|
||||
<table id="org53c9318" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgb029b01" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1752,8 +1752,8 @@ where \(C_{ij}\) is the matrix of electron-nucleus distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org302a650" class="outline-4">
|
||||
<h4 id="org302a650"><span class="section-number-4">2.5.3</span> Test</h4>
|
||||
<div id="outline-container-org00cde69" class="outline-4">
|
||||
<h4 id="org00cde69"><span class="section-number-4">2.5.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-5-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">
|
||||
@ -1801,8 +1801,8 @@ rc = qmckl_get_electron_en_distance_rescaled(context, &(en_distance_rescaled
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdbef4b3" class="outline-3">
|
||||
<h3 id="orgdbef4b3"><span class="section-number-3">2.6</span> Electron-nucleus rescaled distance gradients and laplacian with respect to electron coords</h3>
|
||||
<div id="outline-container-orge6e6fcc" class="outline-3">
|
||||
<h3 id="orge6e6fcc"><span class="section-number-3">2.6</span> Electron-nucleus rescaled distance gradients and laplacian with respect to electron coords</h3>
|
||||
<div class="outline-text-3" id="text-2-6">
|
||||
<p>
|
||||
The rescaled distances which is given as \(R = (1 - \exp{-\kappa r})/\kappa\)
|
||||
@ -1814,8 +1814,8 @@ gives the Laplacian \(\partial x^2 + \partial y^2 + \partial z^2\).
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org072217a" class="outline-4">
|
||||
<h4 id="org072217a"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div id="outline-container-orgb1c506c" class="outline-4">
|
||||
<h4 id="orgb1c506c"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-6-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_electron_en_distance_rescaled_deriv_e</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a0522d;">distance_rescaled_deriv_e</span>);
|
||||
@ -1824,10 +1824,10 @@ gives the Laplacian \(\partial x^2 + \partial y^2 + \partial z^2\).
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd1adad4" class="outline-4">
|
||||
<h4 id="orgd1adad4"><span class="section-number-4">2.6.2</span> Compute</h4>
|
||||
<div id="outline-container-orgd110695" class="outline-4">
|
||||
<h4 id="orgd110695"><span class="section-number-4">2.6.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-6-2">
|
||||
<table id="org3104b54" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgf48c708" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1960,8 +1960,8 @@ gives the Laplacian \(\partial x^2 + \partial y^2 + \partial z^2\).
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgae88a02" class="outline-4">
|
||||
<h4 id="orgae88a02"><span class="section-number-4">2.6.3</span> Test</h4>
|
||||
<div id="outline-container-org079b730" class="outline-4">
|
||||
<h4 id="org079b730"><span class="section-number-4">2.6.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-6-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">
|
||||
@ -2016,7 +2016,7 @@ rc = qmckl_get_electron_en_distance_rescaled_deriv_e(context, &(en_distance_
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:46</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:46 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Error handling</title>
|
||||
@ -311,17 +311,17 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org1cc6400">1. Decoding errors</a></li>
|
||||
<li><a href="#orgc30025a">2. Data structure in context</a></li>
|
||||
<li><a href="#org859ece3">3. Updating errors in the context</a></li>
|
||||
<li><a href="#orgc2d2f82">4. Get the error</a></li>
|
||||
<li><a href="#org166ad15">5. Failing</a></li>
|
||||
<li><a href="#orge978e48">1. Decoding errors</a></li>
|
||||
<li><a href="#org1fa4129">2. Data structure in context</a></li>
|
||||
<li><a href="#orga135fd7">3. Updating errors in the context</a></li>
|
||||
<li><a href="#orgff5fe31">4. Get the error</a></li>
|
||||
<li><a href="#orgd50a10d">5. Failing</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1cc6400" class="outline-2">
|
||||
<h2 id="org1cc6400"><span class="section-number-2">1</span> Decoding errors</h2>
|
||||
<div id="outline-container-orge978e48" class="outline-2">
|
||||
<h2 id="orge978e48"><span class="section-number-2">1</span> Decoding errors</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
To decode the error messages, <code>qmckl_string_of_error</code> converts an
|
||||
@ -451,8 +451,8 @@ The text strings are extracted from the previous table.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc30025a" class="outline-2">
|
||||
<h2 id="orgc30025a"><span class="section-number-2">2</span> Data structure in context</h2>
|
||||
<div id="outline-container-org1fa4129" class="outline-2">
|
||||
<h2 id="org1fa4129"><span class="section-number-2">2</span> Data structure in context</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<p>
|
||||
The strings are declared with a maximum fixed size to avoid
|
||||
@ -475,8 +475,8 @@ dynamic memory allocation.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org859ece3" class="outline-2">
|
||||
<h2 id="org859ece3"><span class="section-number-2">3</span> Updating errors in the context</h2>
|
||||
<div id="outline-container-orga135fd7" class="outline-2">
|
||||
<h2 id="orga135fd7"><span class="section-number-2">3</span> Updating errors in the context</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
<p>
|
||||
The error is updated in the context using <code>qmckl_set_error</code>.
|
||||
@ -522,8 +522,8 @@ explaining the error. The exit code can't be <code>QMCKL_SUCCESS</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc2d2f82" class="outline-2">
|
||||
<h2 id="orgc2d2f82"><span class="section-number-2">4</span> Get the error</h2>
|
||||
<div id="outline-container-orgff5fe31" class="outline-2">
|
||||
<h2 id="orgff5fe31"><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
|
||||
@ -575,8 +575,8 @@ function name and message is mandatory.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org166ad15" class="outline-2">
|
||||
<h2 id="org166ad15"><span class="section-number-2">5</span> Failing</h2>
|
||||
<div id="outline-container-orgd50a10d" class="outline-2">
|
||||
<h2 id="orgd50a10d"><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
|
||||
@ -639,7 +639,7 @@ For example, this function can be used as
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:46</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:47 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Jastrow Factor</title>
|
||||
@ -333,100 +333,100 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org156cc38">1. Context</a>
|
||||
<li><a href="#org2daef46">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org83ab267">1.1. Data structure</a></li>
|
||||
<li><a href="#org30c009b">1.2. Access functions</a></li>
|
||||
<li><a href="#org82c40ed">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org92e5690">1.4. Test</a></li>
|
||||
<li><a href="#org9324265">1.1. Data structure</a></li>
|
||||
<li><a href="#orgab0d254">1.2. Access functions</a></li>
|
||||
<li><a href="#org0a56ccb">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org6bbfe46">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgfa36b5b">2. Computation</a>
|
||||
<li><a href="#org009a58d">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#org089836f">2.1. Asymptotic component for \(f_{ee}\)</a>
|
||||
<li><a href="#org8a0cba6">2.1. Asymptotic component for \(f_{ee}\)</a>
|
||||
<ul>
|
||||
<li><a href="#org8a10baa">2.1.1. Get</a></li>
|
||||
<li><a href="#org4357cf9">2.1.2. Compute</a></li>
|
||||
<li><a href="#orgff43307">2.1.3. Test</a></li>
|
||||
<li><a href="#orgc5d45c3">2.1.1. Get</a></li>
|
||||
<li><a href="#org6b9b7b9">2.1.2. Compute</a></li>
|
||||
<li><a href="#orgef6c5ca">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgf938925">2.2. Electron-electron component \(f_{ee}\)</a>
|
||||
<li><a href="#org77abb04">2.2. Electron-electron component \(f_{ee}\)</a>
|
||||
<ul>
|
||||
<li><a href="#org29f64ff">2.2.1. Get</a></li>
|
||||
<li><a href="#org5469b8d">2.2.2. Compute</a></li>
|
||||
<li><a href="#org23c18d7">2.2.3. Test</a></li>
|
||||
<li><a href="#orgf5b5f50">2.2.1. Get</a></li>
|
||||
<li><a href="#org6df6803">2.2.2. Compute</a></li>
|
||||
<li><a href="#orgd07ea8f">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org6fa99f2">2.3. Electron-electron component derivative \(f'_{ee}\)</a>
|
||||
<li><a href="#orgad4c795">2.3. Electron-electron component derivative \(f'_{ee}\)</a>
|
||||
<ul>
|
||||
<li><a href="#org81ba3c2">2.3.1. Get</a></li>
|
||||
<li><a href="#orgcc86090">2.3.2. Compute</a></li>
|
||||
<li><a href="#orgaa52159">2.3.3. Test</a></li>
|
||||
<li><a href="#org635734c">2.3.1. Get</a></li>
|
||||
<li><a href="#orged958eb">2.3.2. Compute</a></li>
|
||||
<li><a href="#org1b40bc0">2.3.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org772fcfd">2.4. Electron-nucleus component \(f_{en}\)</a>
|
||||
<li><a href="#org0baadb8">2.4. Electron-nucleus component \(f_{en}\)</a>
|
||||
<ul>
|
||||
<li><a href="#org60cc5a1">2.4.1. Get</a></li>
|
||||
<li><a href="#org0dc4053">2.4.2. Compute</a></li>
|
||||
<li><a href="#org9947989">2.4.3. Test</a></li>
|
||||
<li><a href="#orgea9c4ec">2.4.1. Get</a></li>
|
||||
<li><a href="#org43e69de">2.4.2. Compute</a></li>
|
||||
<li><a href="#orge273b2e">2.4.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgedd5ac9">2.5. Electron-nucleus component derivative \(f'_{en}\)</a>
|
||||
<li><a href="#org3c2e107">2.5. Electron-nucleus component derivative \(f'_{en}\)</a>
|
||||
<ul>
|
||||
<li><a href="#orgc997e93">2.5.1. Get</a></li>
|
||||
<li><a href="#org0a65feb">2.5.2. Compute</a></li>
|
||||
<li><a href="#org09a053e">2.5.3. Test</a></li>
|
||||
<li><a href="#org976ef98">2.5.1. Get</a></li>
|
||||
<li><a href="#orgc35b634">2.5.2. Compute</a></li>
|
||||
<li><a href="#orgbb051fb">2.5.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orga763110">2.6. Electron-electron rescaled distances for each order</a>
|
||||
<li><a href="#orgf711425">2.6. Electron-electron rescaled distances for each order</a>
|
||||
<ul>
|
||||
<li><a href="#org85aaa20">2.6.1. Get</a></li>
|
||||
<li><a href="#orged0bbc3">2.6.2. Compute</a></li>
|
||||
<li><a href="#org751cac1">2.6.3. Test</a></li>
|
||||
<li><a href="#org3cfe3e3">2.6.1. Get</a></li>
|
||||
<li><a href="#org34e2df7">2.6.2. Compute</a></li>
|
||||
<li><a href="#org8c64e32">2.6.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgc3184be">2.7. Electron-electron rescaled distances for each order and derivatives</a>
|
||||
<li><a href="#orga0715c1">2.7. Electron-electron rescaled distances for each order and derivatives</a>
|
||||
<ul>
|
||||
<li><a href="#org8208008">2.7.1. Get</a></li>
|
||||
<li><a href="#orgf998aa8">2.7.2. Compute</a></li>
|
||||
<li><a href="#orgb95604d">2.7.3. Test</a></li>
|
||||
<li><a href="#org5cc06b3">2.7.1. Get</a></li>
|
||||
<li><a href="#org727dfe5">2.7.2. Compute</a></li>
|
||||
<li><a href="#org295ecbd">2.7.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgdc37bf7">2.8. Electron-nucleus rescaled distances for each order</a>
|
||||
<li><a href="#orgfbe6f95">2.8. Electron-nucleus rescaled distances for each order</a>
|
||||
<ul>
|
||||
<li><a href="#org9788ce4">2.8.1. Get</a></li>
|
||||
<li><a href="#orge458391">2.8.2. Compute</a></li>
|
||||
<li><a href="#org365638f">2.8.3. Test</a></li>
|
||||
<li><a href="#org3cab330">2.8.1. Get</a></li>
|
||||
<li><a href="#orgf94a693">2.8.2. Compute</a></li>
|
||||
<li><a href="#org16ba39b">2.8.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgb0057e1">2.9. Electron-nucleus rescaled distances for each order and derivatives</a>
|
||||
<li><a href="#orgad91dbc">2.9. Electron-nucleus rescaled distances for each order and derivatives</a>
|
||||
<ul>
|
||||
<li><a href="#orgb790f38">2.9.1. Get</a></li>
|
||||
<li><a href="#org8678b7d">2.9.2. Compute</a></li>
|
||||
<li><a href="#orgc0277aa">2.9.3. Test</a></li>
|
||||
<li><a href="#orgcfd1908">2.9.1. Get</a></li>
|
||||
<li><a href="#orgc4fd9c8">2.9.2. Compute</a></li>
|
||||
<li><a href="#orgfd982c3">2.9.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgd6487b5">2.10. Prepare for electron-electron-nucleus Jastrow \(f_{een}\)</a>
|
||||
<li><a href="#orgbce7316">2.10. Prepare for electron-electron-nucleus Jastrow \(f_{een}\)</a>
|
||||
<ul>
|
||||
<li><a href="#org81897f9">2.10.1. Get</a></li>
|
||||
<li><a href="#org3809349">2.10.2. Compute dim<sub>cord</sub><sub>vect</sub></a></li>
|
||||
<li><a href="#org1ca8996">2.10.3. Compute cord<sub>vect</sub><sub>full</sub></a></li>
|
||||
<li><a href="#orgedca696">2.10.4. Compute lkpm<sub>combined</sub><sub>index</sub></a></li>
|
||||
<li><a href="#org2104ded">2.10.5. Test</a></li>
|
||||
<li><a href="#org1b416a7">2.10.1. Get</a></li>
|
||||
<li><a href="#org56f8a24">2.10.2. Compute dim<sub>cord</sub><sub>vect</sub></a></li>
|
||||
<li><a href="#org32f89bd">2.10.3. Compute cord<sub>vect</sub><sub>full</sub></a></li>
|
||||
<li><a href="#org17e7783">2.10.4. Compute lkpm<sub>combined</sub><sub>index</sub></a></li>
|
||||
<li><a href="#org1a432cf">2.10.5. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org1cf09a9">2.11. Electron-electron-nucleus Jastrow \(f_{een}\)</a>
|
||||
<li><a href="#org91c739f">2.11. Electron-electron-nucleus Jastrow \(f_{een}\)</a>
|
||||
<ul>
|
||||
<li><a href="#orgab5abf2">2.11.1. Get</a></li>
|
||||
<li><a href="#org6f149f0">2.11.2. Compute</a></li>
|
||||
<li><a href="#orgfe23ecc">2.11.3. Test</a></li>
|
||||
<li><a href="#orgd1d46e9">2.11.1. Get</a></li>
|
||||
<li><a href="#org77c1dd7">2.11.2. Compute</a></li>
|
||||
<li><a href="#orgbd495a7">2.11.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org2989163">2.12. Electron-electron-nucleus Jastrow \(f_{een}\) derivative</a>
|
||||
<li><a href="#orge911117">2.12. Electron-electron-nucleus Jastrow \(f_{een}\) derivative</a>
|
||||
<ul>
|
||||
<li><a href="#org5423b8b">2.12.1. Get</a></li>
|
||||
<li><a href="#org2ef2352">2.12.2. Compute</a></li>
|
||||
<li><a href="#orgdd57739">2.12.3. Test</a></li>
|
||||
<li><a href="#org5955475">2.12.1. Get</a></li>
|
||||
<li><a href="#org87e3ed2">2.12.2. Compute</a></li>
|
||||
<li><a href="#org27f762d">2.12.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -435,14 +435,14 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org156cc38" class="outline-2">
|
||||
<h2 id="org156cc38"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org2daef46" class="outline-2">
|
||||
<h2 id="org2daef46"><span class="section-number-2">1</span> Context</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
The following data stored in the context:
|
||||
</p>
|
||||
|
||||
<table id="org8091e92" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgf8c84cb" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -734,7 +734,7 @@ For H2O we have the following data:
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-python" id="orgcb8b358"><span style="color: #a020f0;">import</span> numpy <span style="color: #a020f0;">as</span> np
|
||||
<pre class="src src-python" id="org0952a04"><span style="color: #a020f0;">import</span> numpy <span style="color: #a020f0;">as</span> np
|
||||
|
||||
<span style="color: #a0522d;">elec_num</span> = 10
|
||||
<span style="color: #a0522d;">nucl_num</span> = 2
|
||||
@ -884,8 +884,8 @@ For H2O we have the following data:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org83ab267" class="outline-3">
|
||||
<h3 id="org83ab267"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org9324265" class="outline-3">
|
||||
<h3 id="org9324265"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> <span style="color: #228b22;">qmckl_jastrow_struct</span>{
|
||||
@ -972,8 +972,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org30c009b" class="outline-3">
|
||||
<h3 id="org30c009b"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-orgab0d254" class="outline-3">
|
||||
<h3 id="orgab0d254"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
Along with these core functions, calculation of the jastrow factor
|
||||
@ -993,8 +993,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org82c40ed" class="outline-3">
|
||||
<h3 id="org82c40ed"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-org0a56ccb" class="outline-3">
|
||||
<h3 id="org0a56ccb"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
To prepare for the Jastrow and its derivative, all the following functions need to be
|
||||
@ -1020,8 +1020,8 @@ are precontracted using BLAS LEVEL 3 operations for an optimal FLOP count.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org92e5690" class="outline-3">
|
||||
<h3 id="org92e5690"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-org6bbfe46" class="outline-3">
|
||||
<h3 id="org6bbfe46"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Reference input data </span>*/
|
||||
@ -1196,8 +1196,8 @@ rc = qmckl_get_nucleus_charge(context, nucl_charge2);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfa36b5b" class="outline-2">
|
||||
<h2 id="orgfa36b5b"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org009a58d" class="outline-2">
|
||||
<h2 id="org009a58d"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<p>
|
||||
The computed data is stored in the context so that it can be reused
|
||||
@ -1210,8 +1210,8 @@ current date is stored.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org089836f" class="outline-3">
|
||||
<h3 id="org089836f"><span class="section-number-3">2.1</span> Asymptotic component for \(f_{ee}\)</h3>
|
||||
<div id="outline-container-org8a0cba6" class="outline-3">
|
||||
<h3 id="org8a0cba6"><span class="section-number-3">2.1</span> Asymptotic component for \(f_{ee}\)</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
Calculate the asymptotic component <code>asymp_jasb</code> to be substracted from the final
|
||||
@ -1226,8 +1226,8 @@ via the <code>bord_vector</code> and the electron-electron rescale factor <code>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8a10baa" class="outline-4">
|
||||
<h4 id="org8a10baa"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-orgc5d45c3" class="outline-4">
|
||||
<h4 id="orgc5d45c3"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_jastrow_asymp_jasb</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">asymp_jasb</span>);
|
||||
@ -1236,10 +1236,10 @@ via the <code>bord_vector</code> and the electron-electron rescale factor <code>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4357cf9" class="outline-4">
|
||||
<h4 id="org4357cf9"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-org6b9b7b9" class="outline-4">
|
||||
<h4 id="org6b9b7b9"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="orgc885399" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org33de6e7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1344,8 +1344,8 @@ via the <code>bord_vector</code> and the electron-electron rescale factor <code>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgff43307" class="outline-4">
|
||||
<h4 id="orgff43307"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-orgef6c5ca" class="outline-4">
|
||||
<h4 id="orgef6c5ca"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #0000ff;">assert</span>(<span style="color: #228b22;">qmckl_electron_provided</span>(<span style="color: #a0522d;">context</span>));
|
||||
@ -1397,8 +1397,8 @@ rc = qmckl_get_jastrow_asymp_jasb(context, asymp_jasb);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf938925" class="outline-3">
|
||||
<h3 id="orgf938925"><span class="section-number-3">2.2</span> Electron-electron component \(f_{ee}\)</h3>
|
||||
<div id="outline-container-org77abb04" class="outline-3">
|
||||
<h3 id="org77abb04"><span class="section-number-3">2.2</span> Electron-electron component \(f_{ee}\)</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
Calculate the electron-electron jastrow component <code>factor_ee</code> using the <code>asymp_jasb</code>
|
||||
@ -1413,8 +1413,8 @@ f_{ee} = \sum_{i,j<i} \left\{ \frac{ \eta B_0 C_{ij}}{1 - B_1 C_{ij}} - J_{asym
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org29f64ff" class="outline-4">
|
||||
<h4 id="org29f64ff"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-orgf5b5f50" class="outline-4">
|
||||
<h4 id="orgf5b5f50"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-2-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_jastrow_factor_ee</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">factor_ee</span>);
|
||||
@ -1423,10 +1423,10 @@ f_{ee} = \sum_{i,j<i} \left\{ \frac{ \eta B_0 C_{ij}}{1 - B_1 C_{ij}} - J_{asym
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5469b8d" class="outline-4">
|
||||
<h4 id="org5469b8d"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-org6df6803" class="outline-4">
|
||||
<h4 id="org6df6803"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="org522aafa" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org6ec6f03" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1593,8 +1593,8 @@ f_{ee} = \sum_{i,j<i} \left\{ \frac{ \eta B_0 C_{ij}}{1 - B_1 C_{ij}} - J_{asym
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org23c18d7" class="outline-4">
|
||||
<h4 id="org23c18d7"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-orgd07ea8f" class="outline-4">
|
||||
<h4 id="orgd07ea8f"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-2-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Check if Jastrow is properly initialized </span>*/
|
||||
@ -1612,8 +1612,8 @@ rc = qmckl_get_jastrow_factor_ee(context, factor_ee);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6fa99f2" class="outline-3">
|
||||
<h3 id="org6fa99f2"><span class="section-number-3">2.3</span> Electron-electron component derivative \(f'_{ee}\)</h3>
|
||||
<div id="outline-container-orgad4c795" class="outline-3">
|
||||
<h3 id="orgad4c795"><span class="section-number-3">2.3</span> Electron-electron component derivative \(f'_{ee}\)</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
Calculate the derivative of the <code>factor_ee</code> using the <code>ee_distance_rescaled</code> and
|
||||
@ -1628,8 +1628,8 @@ TODO: Add equation
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org81ba3c2" class="outline-4">
|
||||
<h4 id="org81ba3c2"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-org635734c" class="outline-4">
|
||||
<h4 id="org635734c"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-3-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_jastrow_factor_ee_deriv_e</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">factor_ee_deriv_e</span>);
|
||||
@ -1638,10 +1638,10 @@ TODO: Add equation
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcc86090" class="outline-4">
|
||||
<h4 id="orgcc86090"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div id="outline-container-orged958eb" class="outline-4">
|
||||
<h4 id="orged958eb"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-3-2">
|
||||
<table id="orgebf50cb" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org50e658c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1848,8 +1848,8 @@ TODO: Add equation
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgaa52159" class="outline-4">
|
||||
<h4 id="orgaa52159"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div id="outline-container-org1b40bc0" class="outline-4">
|
||||
<h4 id="org1b40bc0"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-3-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Check if Jastrow is properly initialized </span>*/
|
||||
@ -1871,8 +1871,8 @@ rc = qmckl_get_jastrow_factor_ee_deriv_e(context, &(factor_ee_deriv_e[0][0][
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org772fcfd" class="outline-3">
|
||||
<h3 id="org772fcfd"><span class="section-number-3">2.4</span> Electron-nucleus component \(f_{en}\)</h3>
|
||||
<div id="outline-container-org0baadb8" class="outline-3">
|
||||
<h3 id="org0baadb8"><span class="section-number-3">2.4</span> Electron-nucleus component \(f_{en}\)</h3>
|
||||
<div class="outline-text-3" id="text-2-4">
|
||||
<p>
|
||||
Calculate the electron-electron jastrow component <code>factor_en</code> using the <code>aord_vector</code>
|
||||
@ -1887,8 +1887,8 @@ f_{en} = \sum_{i,j<i} \left\{ \frac{ A_0 C_{ij}}{1 - A_1 C_{ij}} + \sum^{nord}_{
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org60cc5a1" class="outline-4">
|
||||
<h4 id="org60cc5a1"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div id="outline-container-orgea9c4ec" class="outline-4">
|
||||
<h4 id="orgea9c4ec"><span class="section-number-4">2.4.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-4-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_jastrow_factor_en</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">factor_en</span>);
|
||||
@ -1897,10 +1897,10 @@ f_{en} = \sum_{i,j<i} \left\{ \frac{ A_0 C_{ij}}{1 - A_1 C_{ij}} + \sum^{nord}_{
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0dc4053" class="outline-4">
|
||||
<h4 id="org0dc4053"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div id="outline-container-org43e69de" class="outline-4">
|
||||
<h4 id="org43e69de"><span class="section-number-4">2.4.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-4-2">
|
||||
<table id="orgbc046fa" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org2f994e1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2074,8 +2074,8 @@ f_{en} = \sum_{i,j<i} \left\{ \frac{ A_0 C_{ij}}{1 - A_1 C_{ij}} + \sum^{nord}_{
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org9947989" class="outline-4">
|
||||
<h4 id="org9947989"><span class="section-number-4">2.4.3</span> Test</h4>
|
||||
<div id="outline-container-orge273b2e" class="outline-4">
|
||||
<h4 id="orge273b2e"><span class="section-number-4">2.4.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-4-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Check if Jastrow is properly initialized </span>*/
|
||||
@ -2093,8 +2093,8 @@ rc = qmckl_get_jastrow_factor_en(context, factor_en);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgedd5ac9" class="outline-3">
|
||||
<h3 id="orgedd5ac9"><span class="section-number-3">2.5</span> Electron-nucleus component derivative \(f'_{en}\)</h3>
|
||||
<div id="outline-container-org3c2e107" class="outline-3">
|
||||
<h3 id="org3c2e107"><span class="section-number-3">2.5</span> Electron-nucleus component derivative \(f'_{en}\)</h3>
|
||||
<div class="outline-text-3" id="text-2-5">
|
||||
<p>
|
||||
Calculate the electron-electron jastrow component <code>factor_en_deriv_e</code> derivative
|
||||
@ -2107,8 +2107,8 @@ TODO: write equations.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc997e93" class="outline-4">
|
||||
<h4 id="orgc997e93"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div id="outline-container-org976ef98" class="outline-4">
|
||||
<h4 id="org976ef98"><span class="section-number-4">2.5.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-5-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_jastrow_factor_en_deriv_e</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">factor_en_deriv_e</span>);
|
||||
@ -2117,10 +2117,10 @@ TODO: write equations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0a65feb" class="outline-4">
|
||||
<h4 id="org0a65feb"><span class="section-number-4">2.5.2</span> Compute</h4>
|
||||
<div id="outline-container-orgc35b634" class="outline-4">
|
||||
<h4 id="orgc35b634"><span class="section-number-4">2.5.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-5-2">
|
||||
<table id="orgc392272" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org23ef6d3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2333,8 +2333,8 @@ TODO: write equations.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org09a053e" class="outline-4">
|
||||
<h4 id="org09a053e"><span class="section-number-4">2.5.3</span> Test</h4>
|
||||
<div id="outline-container-orgbb051fb" class="outline-4">
|
||||
<h4 id="orgbb051fb"><span class="section-number-4">2.5.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-5-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Check if Jastrow is properly initialized </span>*/
|
||||
@ -2356,8 +2356,8 @@ rc = qmckl_get_jastrow_factor_en_deriv_e(context, &(factor_en_deriv_e[0][0][
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga763110" class="outline-3">
|
||||
<h3 id="orga763110"><span class="section-number-3">2.6</span> Electron-electron rescaled distances for each order</h3>
|
||||
<div id="outline-container-orgf711425" class="outline-3">
|
||||
<h3 id="orgf711425"><span class="section-number-3">2.6</span> Electron-electron rescaled distances for each order</h3>
|
||||
<div class="outline-text-3" id="text-2-6">
|
||||
<p>
|
||||
<code>een_rescaled_e</code> stores the table of the rescaled distances between all
|
||||
@ -2375,8 +2375,8 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org85aaa20" class="outline-4">
|
||||
<h4 id="org85aaa20"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div id="outline-container-org3cfe3e3" class="outline-4">
|
||||
<h4 id="org3cfe3e3"><span class="section-number-4">2.6.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-6-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_jastrow_een_rescaled_e</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">distance_rescaled</span>);
|
||||
@ -2385,10 +2385,10 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orged0bbc3" class="outline-4">
|
||||
<h4 id="orged0bbc3"><span class="section-number-4">2.6.2</span> Compute</h4>
|
||||
<div id="outline-container-org34e2df7" class="outline-4">
|
||||
<h4 id="org34e2df7"><span class="section-number-4">2.6.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-6-2">
|
||||
<table id="orgb88cb81" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org6fd2132" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2554,8 +2554,8 @@ where \(C_{ij}\) is the matrix of electron-electron distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org751cac1" class="outline-4">
|
||||
<h4 id="org751cac1"><span class="section-number-4">2.6.3</span> Test</h4>
|
||||
<div id="outline-container-org8c64e32" class="outline-4">
|
||||
<h4 id="org8c64e32"><span class="section-number-4">2.6.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-6-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #0000ff;">assert</span>(<span style="color: #228b22;">qmckl_electron_provided</span>(<span style="color: #a0522d;">context</span>));
|
||||
@ -2578,8 +2578,8 @@ rc = qmckl_get_jastrow_een_rescaled_e(context, &(een_rescaled_e[0][0][0][0])
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc3184be" class="outline-3">
|
||||
<h3 id="orgc3184be"><span class="section-number-3">2.7</span> Electron-electron rescaled distances for each order and derivatives</h3>
|
||||
<div id="outline-container-orga0715c1" class="outline-3">
|
||||
<h3 id="orga0715c1"><span class="section-number-3">2.7</span> Electron-electron rescaled distances for each order and derivatives</h3>
|
||||
<div class="outline-text-3" id="text-2-7">
|
||||
<p>
|
||||
<code>een_rescaled_e_deriv_e</code> stores the table of the derivatives of the
|
||||
@ -2594,8 +2594,8 @@ TODO: write formulae
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org8208008" class="outline-4">
|
||||
<h4 id="org8208008"><span class="section-number-4">2.7.1</span> Get</h4>
|
||||
<div id="outline-container-org5cc06b3" class="outline-4">
|
||||
<h4 id="org5cc06b3"><span class="section-number-4">2.7.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-7-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_jastrow_een_rescaled_e_deriv_e</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">distance_rescaled</span>);
|
||||
@ -2604,10 +2604,10 @@ TODO: write formulae
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf998aa8" class="outline-4">
|
||||
<h4 id="orgf998aa8"><span class="section-number-4">2.7.2</span> Compute</h4>
|
||||
<div id="outline-container-org727dfe5" class="outline-4">
|
||||
<h4 id="org727dfe5"><span class="section-number-4">2.7.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-7-2">
|
||||
<table id="org864f0fc" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org072038a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2786,8 +2786,8 @@ TODO: write formulae
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgb95604d" class="outline-4">
|
||||
<h4 id="orgb95604d"><span class="section-number-4">2.7.3</span> Test</h4>
|
||||
<div id="outline-container-org295ecbd" class="outline-4">
|
||||
<h4 id="org295ecbd"><span class="section-number-4">2.7.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-7-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">//<span style="color: #b22222;">assert(qmckl_electron_provided(context));</span>
|
||||
@ -2807,8 +2807,8 @@ rc = qmckl_get_jastrow_een_rescaled_e_deriv_e(context, &(een_rescaled_e_deri
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdc37bf7" class="outline-3">
|
||||
<h3 id="orgdc37bf7"><span class="section-number-3">2.8</span> Electron-nucleus rescaled distances for each order</h3>
|
||||
<div id="outline-container-orgfbe6f95" class="outline-3">
|
||||
<h3 id="orgfbe6f95"><span class="section-number-3">2.8</span> Electron-nucleus rescaled distances for each order</h3>
|
||||
<div class="outline-text-3" id="text-2-8">
|
||||
<p>
|
||||
<code>een_rescaled_n</code> stores the table of the rescaled distances between
|
||||
@ -2826,8 +2826,8 @@ where \(C_{ia}\) is the matrix of electron-nucleus distances.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9788ce4" class="outline-4">
|
||||
<h4 id="org9788ce4"><span class="section-number-4">2.8.1</span> Get</h4>
|
||||
<div id="outline-container-org3cab330" class="outline-4">
|
||||
<h4 id="org3cab330"><span class="section-number-4">2.8.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-8-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_jastrow_een_rescaled_n</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">distance_rescaled</span>);
|
||||
@ -2836,10 +2836,10 @@ where \(C_{ia}\) is the matrix of electron-nucleus distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge458391" class="outline-4">
|
||||
<h4 id="orge458391"><span class="section-number-4">2.8.2</span> Compute</h4>
|
||||
<div id="outline-container-orgf94a693" class="outline-4">
|
||||
<h4 id="orgf94a693"><span class="section-number-4">2.8.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-8-2">
|
||||
<table id="orga73dd56" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orga03e36d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2995,8 +2995,8 @@ where \(C_{ia}\) is the matrix of electron-nucleus distances.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org365638f" class="outline-4">
|
||||
<h4 id="org365638f"><span class="section-number-4">2.8.3</span> Test</h4>
|
||||
<div id="outline-container-org16ba39b" class="outline-4">
|
||||
<h4 id="org16ba39b"><span class="section-number-4">2.8.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-8-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #0000ff;">assert</span>(<span style="color: #228b22;">qmckl_electron_provided</span>(<span style="color: #a0522d;">context</span>));
|
||||
@ -3018,8 +3018,8 @@ rc = qmckl_get_jastrow_een_rescaled_n(context, &(een_rescaled_n[0][0][0][0])
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb0057e1" class="outline-3">
|
||||
<h3 id="orgb0057e1"><span class="section-number-3">2.9</span> Electron-nucleus rescaled distances for each order and derivatives</h3>
|
||||
<div id="outline-container-orgad91dbc" class="outline-3">
|
||||
<h3 id="orgad91dbc"><span class="section-number-3">2.9</span> Electron-nucleus rescaled distances for each order and derivatives</h3>
|
||||
<div class="outline-text-3" id="text-2-9">
|
||||
<p>
|
||||
<code>een_rescaled_n_deriv_e</code> stores the table of the rescaled distances between
|
||||
@ -3028,8 +3028,8 @@ electrons and nucleii raised to the power \(p\) defined by <code>cord_num</code>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgb790f38" class="outline-4">
|
||||
<h4 id="orgb790f38"><span class="section-number-4">2.9.1</span> Get</h4>
|
||||
<div id="outline-container-orgcfd1908" class="outline-4">
|
||||
<h4 id="orgcfd1908"><span class="section-number-4">2.9.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-9-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_jastrow_een_rescaled_n_deriv_e</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">distance_rescaled</span>);
|
||||
@ -3038,10 +3038,10 @@ electrons and nucleii raised to the power \(p\) defined by <code>cord_num</code>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8678b7d" class="outline-4">
|
||||
<h4 id="org8678b7d"><span class="section-number-4">2.9.2</span> Compute</h4>
|
||||
<div id="outline-container-orgc4fd9c8" class="outline-4">
|
||||
<h4 id="orgc4fd9c8"><span class="section-number-4">2.9.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-9-2">
|
||||
<table id="org003f636" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org46f35c1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3243,8 +3243,8 @@ electrons and nucleii raised to the power \(p\) defined by <code>cord_num</code>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc0277aa" class="outline-4">
|
||||
<h4 id="orgc0277aa"><span class="section-number-4">2.9.3</span> Test</h4>
|
||||
<div id="outline-container-orgfd982c3" class="outline-4">
|
||||
<h4 id="orgfd982c3"><span class="section-number-4">2.9.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-9-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #0000ff;">assert</span>(<span style="color: #228b22;">qmckl_electron_provided</span>(<span style="color: #a0522d;">context</span>));
|
||||
@ -3266,8 +3266,8 @@ rc = qmckl_get_jastrow_een_rescaled_n_deriv_e(context, &(een_rescaled_n_deri
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd6487b5" class="outline-3">
|
||||
<h3 id="orgd6487b5"><span class="section-number-3">2.10</span> Prepare for electron-electron-nucleus Jastrow \(f_{een}\)</h3>
|
||||
<div id="outline-container-orgbce7316" class="outline-3">
|
||||
<h3 id="orgbce7316"><span class="section-number-3">2.10</span> Prepare for electron-electron-nucleus Jastrow \(f_{een}\)</h3>
|
||||
<div class="outline-text-3" id="text-2-10">
|
||||
<p>
|
||||
Prepare <code>cord_vect_full</code> and <code>lkpm_combined_index</code> tables required for the
|
||||
@ -3276,8 +3276,8 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org81897f9" class="outline-4">
|
||||
<h4 id="org81897f9"><span class="section-number-4">2.10.1</span> Get</h4>
|
||||
<div id="outline-container-org1b416a7" class="outline-4">
|
||||
<h4 id="org1b416a7"><span class="section-number-4">2.10.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-10-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_jastrow_dim_cord_vect</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">int64_t</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">dim_cord_vect</span>);
|
||||
@ -3288,10 +3288,10 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3809349" class="outline-4">
|
||||
<h4 id="org3809349"><span class="section-number-4">2.10.2</span> Compute dim<sub>cord</sub><sub>vect</sub></h4>
|
||||
<div id="outline-container-org56f8a24" class="outline-4">
|
||||
<h4 id="org56f8a24"><span class="section-number-4">2.10.2</span> Compute dim<sub>cord</sub><sub>vect</sub></h4>
|
||||
<div class="outline-text-4" id="text-2-10-2">
|
||||
<table id="orga22da2a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgd0725fa" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3381,10 +3381,10 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org1ca8996" class="outline-4">
|
||||
<h4 id="org1ca8996"><span class="section-number-4">2.10.3</span> Compute cord<sub>vect</sub><sub>full</sub></h4>
|
||||
<div id="outline-container-org32f89bd" class="outline-4">
|
||||
<h4 id="org32f89bd"><span class="section-number-4">2.10.3</span> Compute cord<sub>vect</sub><sub>full</sub></h4>
|
||||
<div class="outline-text-4" id="text-2-10-3">
|
||||
<table id="orgb756c52" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgcf64af9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3510,10 +3510,10 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgedca696" class="outline-4">
|
||||
<h4 id="orgedca696"><span class="section-number-4">2.10.4</span> Compute lkpm<sub>combined</sub><sub>index</sub></h4>
|
||||
<div id="outline-container-org17e7783" class="outline-4">
|
||||
<h4 id="org17e7783"><span class="section-number-4">2.10.4</span> Compute lkpm<sub>combined</sub><sub>index</sub></h4>
|
||||
<div class="outline-text-4" id="text-2-10-4">
|
||||
<table id="org228f298" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orga79a34e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3623,8 +3623,8 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org2104ded" class="outline-4">
|
||||
<h4 id="org2104ded"><span class="section-number-4">2.10.5</span> Test</h4>
|
||||
<div id="outline-container-org1a432cf" class="outline-4">
|
||||
<h4 id="org1a432cf"><span class="section-number-4">2.10.5</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-10-5">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">//<span style="color: #b22222;">assert(qmckl_electron_provided(context));</span>
|
||||
@ -3636,8 +3636,8 @@ calculation of the three-body jastrow <code>factor_een</code> and its derivative
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1cf09a9" class="outline-3">
|
||||
<h3 id="org1cf09a9"><span class="section-number-3">2.11</span> Electron-electron-nucleus Jastrow \(f_{een}\)</h3>
|
||||
<div id="outline-container-org91c739f" class="outline-3">
|
||||
<h3 id="org91c739f"><span class="section-number-3">2.11</span> Electron-electron-nucleus Jastrow \(f_{een}\)</h3>
|
||||
<div class="outline-text-3" id="text-2-11">
|
||||
<p>
|
||||
Calculate the electron-electron-nuclear three-body jastrow component <code>factor_een</code>
|
||||
@ -3649,8 +3649,8 @@ TODO: write equations.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgab5abf2" class="outline-4">
|
||||
<h4 id="orgab5abf2"><span class="section-number-4">2.11.1</span> Get</h4>
|
||||
<div id="outline-container-orgd1d46e9" class="outline-4">
|
||||
<h4 id="orgd1d46e9"><span class="section-number-4">2.11.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-11-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_jastrow_factor_een</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">factor_een</span>);
|
||||
@ -3659,10 +3659,10 @@ TODO: write equations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6f149f0" class="outline-4">
|
||||
<h4 id="org6f149f0"><span class="section-number-4">2.11.2</span> Compute</h4>
|
||||
<div id="outline-container-org77c1dd7" class="outline-4">
|
||||
<h4 id="org77c1dd7"><span class="section-number-4">2.11.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-11-2">
|
||||
<table id="orga07deda" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org18c516d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -3850,8 +3850,8 @@ TODO: write equations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfe23ecc" class="outline-4">
|
||||
<h4 id="orgfe23ecc"><span class="section-number-4">2.11.3</span> Test</h4>
|
||||
<div id="outline-container-orgbd495a7" class="outline-4">
|
||||
<h4 id="orgbd495a7"><span class="section-number-4">2.11.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-11-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Check if Jastrow is properly initialized </span>*/
|
||||
@ -3867,8 +3867,8 @@ rc = qmckl_get_jastrow_factor_een(context, &(factor_een[0]));
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2989163" class="outline-3">
|
||||
<h3 id="org2989163"><span class="section-number-3">2.12</span> Electron-electron-nucleus Jastrow \(f_{een}\) derivative</h3>
|
||||
<div id="outline-container-orge911117" class="outline-3">
|
||||
<h3 id="orge911117"><span class="section-number-3">2.12</span> Electron-electron-nucleus Jastrow \(f_{een}\) derivative</h3>
|
||||
<div class="outline-text-3" id="text-2-12">
|
||||
<p>
|
||||
Calculate the electron-electron-nuclear three-body jastrow component <code>factor_een_deriv_e</code>
|
||||
@ -3880,8 +3880,8 @@ TODO: write equations.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5423b8b" class="outline-4">
|
||||
<h4 id="org5423b8b"><span class="section-number-4">2.12.1</span> Get</h4>
|
||||
<div id="outline-container-org5955475" class="outline-4">
|
||||
<h4 id="org5955475"><span class="section-number-4">2.12.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-12-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_jastrow_factor_een_deriv_e</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">factor_een_deriv_e</span>);
|
||||
@ -3890,10 +3890,10 @@ TODO: write equations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2ef2352" class="outline-4">
|
||||
<h4 id="org2ef2352"><span class="section-number-4">2.12.2</span> Compute</h4>
|
||||
<div id="outline-container-org87e3ed2" class="outline-4">
|
||||
<h4 id="org87e3ed2"><span class="section-number-4">2.12.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-12-2">
|
||||
<table id="orgc7c8209" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgadfad07" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -4118,8 +4118,8 @@ TODO: write equations.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgdd57739" class="outline-4">
|
||||
<h4 id="orgdd57739"><span class="section-number-4">2.12.3</span> Test</h4>
|
||||
<div id="outline-container-org27f762d" class="outline-4">
|
||||
<h4 id="org27f762d"><span class="section-number-4">2.12.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-12-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Check if Jastrow is properly initialized </span>*/
|
||||
@ -4138,7 +4138,7 @@ rc = qmckl_get_jastrow_factor_een_deriv_e(context, &(factor_een_deriv_e[0][0
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:47</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:46 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Memory management</title>
|
||||
@ -311,15 +311,15 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgcfaba2c">1. Memory data structure for the context</a></li>
|
||||
<li><a href="#org2082295">2. Passing info to allocation routines</a></li>
|
||||
<li><a href="#org0d21470">3. Allocation/deallocation functions</a></li>
|
||||
<li><a href="#orga01f9ec">1. Memory data structure for the context</a></li>
|
||||
<li><a href="#org286ac05">2. Passing info to allocation routines</a></li>
|
||||
<li><a href="#org2280469">3. Allocation/deallocation functions</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcfaba2c" class="outline-2">
|
||||
<h2 id="orgcfaba2c"><span class="section-number-2">1</span> Memory data structure for the context</h2>
|
||||
<div id="outline-container-orga01f9ec" class="outline-2">
|
||||
<h2 id="orga01f9ec"><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-org2082295" class="outline-2">
|
||||
<h2 id="org2082295"><span class="section-number-2">2</span> Passing info to allocation routines</h2>
|
||||
<div id="outline-container-org286ac05" class="outline-2">
|
||||
<h2 id="org286ac05"><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-org0d21470" class="outline-2">
|
||||
<h2 id="org0d21470"><span class="section-number-2">3</span> Allocation/deallocation functions</h2>
|
||||
<div id="outline-container-org2280469" class="outline-2">
|
||||
<h2 id="org2280469"><span class="section-number-2">3</span> Allocation/deallocation functions</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
<p>
|
||||
Memory allocation inside the library should be done with
|
||||
@ -535,7 +535,7 @@ allocation and needs to be updated.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:46</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:47 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Molecular Orbitals</title>
|
||||
@ -311,21 +311,21 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org1b1bd2b">1. Context</a>
|
||||
<li><a href="#org65dc71f">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org126c0c5">1.1. Data structure</a></li>
|
||||
<li><a href="#org494f300">1.2. Access functions</a></li>
|
||||
<li><a href="#orgb63ba82">1.3. Initialization functions</a></li>
|
||||
<li><a href="#orgbf510c8">1.1. Data structure</a></li>
|
||||
<li><a href="#orgb234cd7">1.2. Access functions</a></li>
|
||||
<li><a href="#orga7babbe">1.3. Initialization functions</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org2c5a2d2">2. Computation</a>
|
||||
<li><a href="#org2b954bf">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#org5d790b1">2.1. Computation of MOs</a>
|
||||
<li><a href="#org741c0ba">2.1. Computation of MOs</a>
|
||||
<ul>
|
||||
<li><a href="#org395af42">2.1.1. Get</a></li>
|
||||
<li><a href="#orgd9d4ff0">2.1.2. Provide</a></li>
|
||||
<li><a href="#org6bd281f">2.1.3. Compute</a></li>
|
||||
<li><a href="#org6cb4c96">2.1.4. Test</a></li>
|
||||
<li><a href="#orgbec4bb5">2.1.1. Get</a></li>
|
||||
<li><a href="#org829b470">2.1.2. Provide</a></li>
|
||||
<li><a href="#org17f1d82">2.1.3. Compute</a></li>
|
||||
<li><a href="#org4cfd7c0">2.1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -334,8 +334,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1b1bd2b" class="outline-2">
|
||||
<h2 id="org1b1bd2b"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-org65dc71f" class="outline-2">
|
||||
<h2 id="org65dc71f"><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:
|
||||
@ -396,8 +396,8 @@ Computed data:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org126c0c5" class="outline-3">
|
||||
<h3 id="org126c0c5"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-orgbf510c8" class="outline-3">
|
||||
<h3 id="orgbf510c8"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> <span style="color: #228b22;">qmckl_mo_basis_struct</span> {
|
||||
@ -424,8 +424,8 @@ this mechanism.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org494f300" class="outline-3">
|
||||
<h3 id="org494f300"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-orgb234cd7" class="outline-3">
|
||||
<h3 id="orgb234cd7"><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
|
||||
@ -439,8 +439,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb63ba82" class="outline-3">
|
||||
<h3 id="orgb63ba82"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-orga7babbe" class="outline-3">
|
||||
<h3 id="orga7babbe"><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
|
||||
@ -461,16 +461,16 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2c5a2d2" class="outline-2">
|
||||
<h2 id="org2c5a2d2"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org2b954bf" class="outline-2">
|
||||
<h2 id="org2b954bf"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org5d790b1" class="outline-3">
|
||||
<h3 id="org5d790b1"><span class="section-number-3">2.1</span> Computation of MOs</h3>
|
||||
<div id="outline-container-org741c0ba" class="outline-3">
|
||||
<h3 id="org741c0ba"><span class="section-number-3">2.1</span> Computation of MOs</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
</div>
|
||||
<div id="outline-container-org395af42" class="outline-4">
|
||||
<h4 id="org395af42"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-orgbec4bb5" class="outline-4">
|
||||
<h4 id="orgbec4bb5"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_mo_basis_vgl</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">mo_vgl</span>);
|
||||
@ -479,14 +479,14 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd9d4ff0" class="outline-4">
|
||||
<h4 id="orgd9d4ff0"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
<div id="outline-container-org829b470" class="outline-4">
|
||||
<h4 id="org829b470"><span class="section-number-4">2.1.2</span> Provide</h4>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6bd281f" class="outline-4">
|
||||
<h4 id="org6bd281f"><span class="section-number-4">2.1.3</span> Compute</h4>
|
||||
<div id="outline-container-org17f1d82" class="outline-4">
|
||||
<h4 id="org17f1d82"><span class="section-number-4">2.1.3</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<table id="orgaf33b97" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orga51e5e1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -658,15 +658,15 @@ computed to accelerate the calculations.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org6cb4c96" class="outline-4">
|
||||
<h4 id="org6cb4c96"><span class="section-number-4">2.1.4</span> Test</h4>
|
||||
<div id="outline-container-org4cfd7c0" class="outline-4">
|
||||
<h4 id="org4cfd7c0"><span class="section-number-4">2.1.4</span> Test</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:47</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:47 -->
|
||||
<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="#orgf819fd1">1. Context</a>
|
||||
<li><a href="#orgb048e91">1. Context</a>
|
||||
<ul>
|
||||
<li><a href="#org08485f0">1.1. Data structure</a></li>
|
||||
<li><a href="#orge45ae68">1.2. Access functions</a></li>
|
||||
<li><a href="#org120bf10">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org7e2b7f1">1.4. Test</a></li>
|
||||
<li><a href="#org13b3de5">1.1. Data structure</a></li>
|
||||
<li><a href="#org89601d8">1.2. Access functions</a></li>
|
||||
<li><a href="#orgec16476">1.3. Initialization functions</a></li>
|
||||
<li><a href="#org75763ee">1.4. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org17cfd24">2. Computation</a>
|
||||
<li><a href="#org728a67a">2. Computation</a>
|
||||
<ul>
|
||||
<li><a href="#org7d88c98">2.1. Nucleus-nucleus distances</a>
|
||||
<li><a href="#org9debe64">2.1. Nucleus-nucleus distances</a>
|
||||
<ul>
|
||||
<li><a href="#orgb9f5be4">2.1.1. Get</a></li>
|
||||
<li><a href="#org12d6087">2.1.2. Compute</a></li>
|
||||
<li><a href="#org563cad2">2.1.3. Test</a></li>
|
||||
<li><a href="#org0d2d2de">2.1.1. Get</a></li>
|
||||
<li><a href="#orgee9b58f">2.1.2. Compute</a></li>
|
||||
<li><a href="#org587dd45">2.1.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgc13c6e1">2.2. Nucleus-nucleus rescaled distances</a>
|
||||
<li><a href="#org3bf1315">2.2. Nucleus-nucleus rescaled distances</a>
|
||||
<ul>
|
||||
<li><a href="#org374accb">2.2.1. Get</a></li>
|
||||
<li><a href="#org8e0b7d7">2.2.2. Compute</a></li>
|
||||
<li><a href="#orga11b801">2.2.3. Test</a></li>
|
||||
<li><a href="#orgbd86436">2.2.1. Get</a></li>
|
||||
<li><a href="#orgfefb023">2.2.2. Compute</a></li>
|
||||
<li><a href="#org8b58be4">2.2.3. Test</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgb669a34">2.3. Nuclear repulsion energy</a>
|
||||
<li><a href="#org9059619">2.3. Nuclear repulsion energy</a>
|
||||
<ul>
|
||||
<li><a href="#orgc78da2b">2.3.1. Get</a></li>
|
||||
<li><a href="#org5756ff1">2.3.2. Compute</a></li>
|
||||
<li><a href="#orgb627df1">2.3.3. Test</a></li>
|
||||
<li><a href="#orgb0256e7">2.3.1. Get</a></li>
|
||||
<li><a href="#org7917b49">2.3.2. Compute</a></li>
|
||||
<li><a href="#org2783576">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-orgf819fd1" class="outline-2">
|
||||
<h2 id="orgf819fd1"><span class="section-number-2">1</span> Context</h2>
|
||||
<div id="outline-container-orgb048e91" class="outline-2">
|
||||
<h2 id="orgb048e91"><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-org08485f0" class="outline-3">
|
||||
<h3 id="org08485f0"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div id="outline-container-org13b3de5" class="outline-3">
|
||||
<h3 id="org13b3de5"><span class="section-number-3">1.1</span> Data structure</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> <span style="color: #228b22;">qmckl_nucleus_struct</span> {
|
||||
@ -523,8 +523,8 @@ this mechanism.
|
||||
|
||||
|
||||
|
||||
<div id="outline-container-orge45ae68" class="outline-3">
|
||||
<h3 id="orge45ae68"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div id="outline-container-org89601d8" class="outline-3">
|
||||
<h3 id="org89601d8"><span class="section-number-3">1.2</span> Access functions</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
When all the data relative to nuclei have been set, the following
|
||||
@ -538,8 +538,8 @@ function returns <code>true</code>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org120bf10" class="outline-3">
|
||||
<h3 id="org120bf10"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div id="outline-container-orgec16476" class="outline-3">
|
||||
<h3 id="orgec16476"><span class="section-number-3">1.3</span> Initialization functions</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
To set the data relative to the nuclei in the context, the
|
||||
@ -574,8 +574,8 @@ atoms. The coordinates should be given in atomic units.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7e2b7f1" class="outline-3">
|
||||
<h3 id="org7e2b7f1"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div id="outline-container-org75763ee" class="outline-3">
|
||||
<h3 id="org75763ee"><span class="section-number-3">1.4</span> Test</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #a020f0;">const</span> <span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">nucl_num</span> = chbrclf_nucl_num;
|
||||
@ -659,8 +659,8 @@ rc = qmckl_get_nucleus_charge(context, nucl_charge2);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org17cfd24" class="outline-2">
|
||||
<h2 id="org17cfd24"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div id="outline-container-org728a67a" class="outline-2">
|
||||
<h2 id="org728a67a"><span class="section-number-2">2</span> Computation</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<p>
|
||||
The computed data is stored in the context so that it can be reused
|
||||
@ -673,12 +673,12 @@ current date is stored.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7d88c98" class="outline-3">
|
||||
<h3 id="org7d88c98"><span class="section-number-3">2.1</span> Nucleus-nucleus distances</h3>
|
||||
<div id="outline-container-org9debe64" class="outline-3">
|
||||
<h3 id="org9debe64"><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-orgb9f5be4" class="outline-4">
|
||||
<h4 id="orgb9f5be4"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div id="outline-container-org0d2d2de" class="outline-4">
|
||||
<h4 id="org0d2d2de"><span class="section-number-4">2.1.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_nucleus_nn_distance</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a0522d;">distance</span>);
|
||||
@ -687,10 +687,10 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org12d6087" class="outline-4">
|
||||
<h4 id="org12d6087"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div id="outline-container-orgee9b58f" class="outline-4">
|
||||
<h4 id="orgee9b58f"><span class="section-number-4">2.1.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<table id="org22dce90" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org30c4d47" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -768,8 +768,8 @@ current date is stored.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org563cad2" class="outline-4">
|
||||
<h4 id="org563cad2"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div id="outline-container-org587dd45" class="outline-4">
|
||||
<h4 id="org587dd45"><span class="section-number-4">2.1.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Reference input data </span>*/
|
||||
@ -789,12 +789,12 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgc13c6e1" class="outline-3">
|
||||
<h3 id="orgc13c6e1"><span class="section-number-3">2.2</span> Nucleus-nucleus rescaled distances</h3>
|
||||
<div id="outline-container-org3bf1315" class="outline-3">
|
||||
<h3 id="org3bf1315"><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-org374accb" class="outline-4">
|
||||
<h4 id="org374accb"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div id="outline-container-orgbd86436" class="outline-4">
|
||||
<h4 id="orgbd86436"><span class="section-number-4">2.2.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-2-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_nucleus_nn_distance_rescaled</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a0522d;">distance_rescaled</span>);
|
||||
@ -803,10 +803,10 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8e0b7d7" class="outline-4">
|
||||
<h4 id="org8e0b7d7"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div id="outline-container-orgfefb023" class="outline-4">
|
||||
<h4 id="orgfefb023"><span class="section-number-4">2.2.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-2-2">
|
||||
<table id="org36d3d47" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgb70ca19" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -885,8 +885,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga11b801" class="outline-4">
|
||||
<h4 id="orga11b801"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div id="outline-container-org8b58be4" class="outline-4">
|
||||
<h4 id="org8b58be4"><span class="section-number-4">2.2.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-2-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Reference input data </span>*/
|
||||
@ -906,8 +906,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb669a34" class="outline-3">
|
||||
<h3 id="orgb669a34"><span class="section-number-3">2.3</span> Nuclear repulsion energy</h3>
|
||||
<div id="outline-container-org9059619" class="outline-3">
|
||||
<h3 id="org9059619"><span class="section-number-3">2.3</span> Nuclear repulsion energy</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
\[
|
||||
@ -916,8 +916,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc78da2b" class="outline-4">
|
||||
<h4 id="orgc78da2b"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div id="outline-container-orgb0256e7" class="outline-4">
|
||||
<h4 id="orgb0256e7"><span class="section-number-4">2.3.1</span> Get</h4>
|
||||
<div class="outline-text-4" id="text-2-3-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_get_nucleus_repulsion</span>(<span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #228b22;">double</span>* <span style="color: #a0522d;">energy</span>);
|
||||
@ -926,10 +926,10 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5756ff1" class="outline-4">
|
||||
<h4 id="org5756ff1"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div id="outline-container-org7917b49" class="outline-4">
|
||||
<h4 id="org7917b49"><span class="section-number-4">2.3.2</span> Compute</h4>
|
||||
<div class="outline-text-4" id="text-2-3-2">
|
||||
<table id="org0c19be8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org29ee413" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1017,8 +1017,8 @@ rc = qmckl_get_nucleus_nn_distance(context, distance);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb627df1" class="outline-4">
|
||||
<h4 id="orgb627df1"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div id="outline-container-org2783576" class="outline-4">
|
||||
<h4 id="org2783576"><span class="section-number-4">2.3.3</span> Test</h4>
|
||||
<div class="outline-text-4" id="text-2-3-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">/* <span style="color: #b22222;">Reference input data </span>*/
|
||||
@ -1038,7 +1038,7 @@ rc = qmckl_get_nucleus_repulsion(context, &rep);
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:47</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:46 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Numerical precision</title>
|
||||
@ -333,16 +333,16 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org5226f6b">1. Control of the numerical precision</a></li>
|
||||
<li><a href="#org4faa237">2. Precision</a></li>
|
||||
<li><a href="#orgc879b71">3. Range</a></li>
|
||||
<li><a href="#orgbdf2aab">4. Helper functions</a></li>
|
||||
<li><a href="#org24af2f6">1. Control of the numerical precision</a></li>
|
||||
<li><a href="#orga74f83c">2. Precision</a></li>
|
||||
<li><a href="#org59b7590">3. Range</a></li>
|
||||
<li><a href="#orgc187c3a">4. Helper functions</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5226f6b" class="outline-2">
|
||||
<h2 id="org5226f6b"><span class="section-number-2">1</span> Control of the numerical precision</h2>
|
||||
<div id="outline-container-org24af2f6" class="outline-2">
|
||||
<h2 id="org24af2f6"><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="org4becb81" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgacc4a1a" 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-org4faa237" class="outline-2">
|
||||
<h2 id="org4faa237"><span class="section-number-2">2</span> Precision</h2>
|
||||
<div id="outline-container-orga74f83c" class="outline-2">
|
||||
<h2 id="orga74f83c"><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-orgc879b71" class="outline-2">
|
||||
<h2 id="orgc879b71"><span class="section-number-2">3</span> Range</h2>
|
||||
<div id="outline-container-org59b7590" class="outline-2">
|
||||
<h2 id="org59b7590"><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-orgbdf2aab" class="outline-2">
|
||||
<h2 id="orgbdf2aab"><span class="section-number-2">4</span> Helper functions</h2>
|
||||
<div id="outline-container-orgc187c3a" class="outline-2">
|
||||
<h2 id="orgc187c3a"><span class="section-number-2">4</span> Helper functions</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
<p>
|
||||
<code>qmckl_get_numprec_epsilon</code> returns \(\epsilon = 2^{1-n}\) where <code>n</code> is the precision.
|
||||
@ -581,7 +581,7 @@ We need to remove the sign bit from the precision.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:46</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:47 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Sherman-Morrison-Woodbury</title>
|
||||
@ -333,86 +333,86 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org2ce4405">1. Headers</a></li>
|
||||
<li><a href="#org3a7fe5d">2. Naïve Sherman-Morrison</a>
|
||||
<li><a href="#orgc649766">1. Headers</a></li>
|
||||
<li><a href="#orgdcddae3">2. Naïve Sherman-Morrison</a>
|
||||
<ul>
|
||||
<li><a href="#orgfbaa387">2.1. <code>qmckl_sherman_morrison</code></a>
|
||||
<li><a href="#orge20b59b">2.1. <code>qmckl_sherman_morrison</code></a>
|
||||
<ul>
|
||||
<li><a href="#org1e48f5c">2.1.1. Requirements</a></li>
|
||||
<li><a href="#org66a74c4">2.1.2. C header</a></li>
|
||||
<li><a href="#org2fc7001">2.1.3. C source</a></li>
|
||||
<li><a href="#orgf35522e">2.1.4. Performance</a></li>
|
||||
<li><a href="#org11b74aa">2.1.1. Requirements</a></li>
|
||||
<li><a href="#orgb28468d">2.1.2. C header</a></li>
|
||||
<li><a href="#org4d0f74d">2.1.3. C source</a></li>
|
||||
<li><a href="#orgf2a2063">2.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgc34c6ee">3. Woodbury 2x2</a>
|
||||
<li><a href="#orgf0b35f4">3. Woodbury 2x2</a>
|
||||
<ul>
|
||||
<li><a href="#org4ab9c19">3.1. <code>qmckl_woodbury_2</code></a>
|
||||
<li><a href="#org4bc3d8a">3.1. <code>qmckl_woodbury_2</code></a>
|
||||
<ul>
|
||||
<li><a href="#org7f3b0b7">3.1.1. Requirements</a></li>
|
||||
<li><a href="#org871fd4b">3.1.2. C header</a></li>
|
||||
<li><a href="#orgfaad462">3.1.3. C source</a></li>
|
||||
<li><a href="#org13d4db3">3.1.4. Performance</a></li>
|
||||
<li><a href="#orgd822659">3.1.1. Requirements</a></li>
|
||||
<li><a href="#orga163411">3.1.2. C header</a></li>
|
||||
<li><a href="#org05f8280">3.1.3. C source</a></li>
|
||||
<li><a href="#org7f0500e">3.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org70802fa">4. Woodbury 3x3</a>
|
||||
<li><a href="#org5c4e67c">4. Woodbury 3x3</a>
|
||||
<ul>
|
||||
<li><a href="#org9fd10e9">4.1. <code>qmckl_woodbury_3</code></a>
|
||||
<li><a href="#org7da9ddd">4.1. <code>qmckl_woodbury_3</code></a>
|
||||
<ul>
|
||||
<li><a href="#org6075f09">4.1.1. Requirements</a></li>
|
||||
<li><a href="#org78c893f">4.1.2. C header</a></li>
|
||||
<li><a href="#orgee6ba99">4.1.3. C source</a></li>
|
||||
<li><a href="#org1a5a5b8">4.1.4. Performance…</a></li>
|
||||
<li><a href="#org9aa3a9b">4.1.1. Requirements</a></li>
|
||||
<li><a href="#orgd0ac5ae">4.1.2. C header</a></li>
|
||||
<li><a href="#orge280ec2">4.1.3. C source</a></li>
|
||||
<li><a href="#orgcd2cf5f">4.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgc2a7550">5. Sherman-Morrison with update splitting</a>
|
||||
<li><a href="#org1b0928a">5. Sherman-Morrison with update splitting</a>
|
||||
<ul>
|
||||
<li><a href="#org6d2cdce">5.1. <code>qmckl_sherman_morrison_splitting</code></a>
|
||||
<li><a href="#org7222e67">5.1. <code>qmckl_sherman_morrison_splitting</code></a>
|
||||
<ul>
|
||||
<li><a href="#org6ef61ba">5.1.1. Requirements</a></li>
|
||||
<li><a href="#org5668859">5.1.2. C header</a></li>
|
||||
<li><a href="#orgfbf8a4a">5.1.3. C source</a></li>
|
||||
<li><a href="#org51fa0d2">5.1.4. Performance…</a></li>
|
||||
<li><a href="#org54eec05">5.1.1. Requirements</a></li>
|
||||
<li><a href="#org99b8918">5.1.2. C header</a></li>
|
||||
<li><a href="#org4c96082">5.1.3. C source</a></li>
|
||||
<li><a href="#org1ccd9cf">5.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org2f4e9d3">6. Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</a>
|
||||
<li><a href="#orgf933dff">6. Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</a>
|
||||
<ul>
|
||||
<li><a href="#org1fa57d0">6.1. <code>qmckl_sherman_morrison_smw32s</code></a>
|
||||
<li><a href="#org6370d12">6.1. <code>qmckl_sherman_morrison_smw32s</code></a>
|
||||
<ul>
|
||||
<li><a href="#org595a258">6.1.1. Requirements</a></li>
|
||||
<li><a href="#org6889f6a">6.1.2. C header</a></li>
|
||||
<li><a href="#org7fcda66">6.1.3. C source</a></li>
|
||||
<li><a href="#org235d31f">6.1.4. Performance…</a></li>
|
||||
<li><a href="#org48d8f92">6.1.1. Requirements</a></li>
|
||||
<li><a href="#orgf0ac632">6.1.2. C header</a></li>
|
||||
<li><a href="#orge9f1714">6.1.3. C source</a></li>
|
||||
<li><a href="#orgc5c8ec9">6.1.4. Performance…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org06e1926">7. Helper Functions</a>
|
||||
<li><a href="#org93468ff">7. Helper Functions</a>
|
||||
<ul>
|
||||
<li><a href="#orge0987f8">7.1. <code>qmckl_slagel_splitting</code></a>
|
||||
<li><a href="#org62f7eb6">7.1. <code>qmckl_slagel_splitting</code></a>
|
||||
<ul>
|
||||
<li><a href="#orgdb6b22d">7.1.1. Requirements</a></li>
|
||||
<li><a href="#orgc9d1070">7.1.2. C header</a></li>
|
||||
<li><a href="#orga63d9d8">7.1.3. C source</a></li>
|
||||
<li><a href="#org7e1658f">7.1.4. Performance</a></li>
|
||||
<li><a href="#orgb38b8c5">7.1.1. Requirements</a></li>
|
||||
<li><a href="#orgdd0b1f5">7.1.2. C header</a></li>
|
||||
<li><a href="#org3eca72e">7.1.3. C source</a></li>
|
||||
<li><a href="#orgb142121">7.1.4. Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org0e324e7">8. End of files</a></li>
|
||||
<li><a href="#orgf2b0593">8. End of files</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2ce4405" class="outline-2">
|
||||
<h2 id="org2ce4405"><span class="section-number-2">1</span> Headers</h2>
|
||||
<div id="outline-container-orgc649766" class="outline-2">
|
||||
<h2 id="orgc649766"><span class="section-number-2">1</span> Headers</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;">"qmckl.h"</span>
|
||||
@ -431,12 +431,12 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3a7fe5d" class="outline-2">
|
||||
<h2 id="org3a7fe5d"><span class="section-number-2">2</span> Naïve Sherman-Morrison</h2>
|
||||
<div id="outline-container-orgdcddae3" class="outline-2">
|
||||
<h2 id="orgdcddae3"><span class="section-number-2">2</span> Naïve Sherman-Morrison</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-orgfbaa387" class="outline-3">
|
||||
<h3 id="orgfbaa387"><span class="section-number-3">2.1</span> <code>qmckl_sherman_morrison</code></h3>
|
||||
<div id="outline-container-orge20b59b" class="outline-3">
|
||||
<h3 id="orge20b59b"><span class="section-number-3">2.1</span> <code>qmckl_sherman_morrison</code></h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
This is the simplest of the available Sherman-Morrison-Woodbury kernels. It applies rank-1 updates one by one in
|
||||
@ -478,7 +478,7 @@ If the determinant of the Slater-matrix is passed, it will be updated to the det
|
||||
from applying the updates to the original matrix.
|
||||
</p>
|
||||
|
||||
<table id="orgf971881" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org8047e18" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -550,8 +550,8 @@ from applying the updates to the original matrix.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1e48f5c" class="outline-4">
|
||||
<h4 id="org1e48f5c"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org11b74aa" class="outline-4">
|
||||
<h4 id="org11b74aa"><span class="section-number-4">2.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-2-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -565,8 +565,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org66a74c4" class="outline-4">
|
||||
<h4 id="org66a74c4"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div id="outline-container-orgb28468d" class="outline-4">
|
||||
<h4 id="orgb28468d"><span class="section-number-4">2.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-2-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_sherman_morrison</span> (
|
||||
@ -583,8 +583,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2fc7001" class="outline-4">
|
||||
<h4 id="org2fc7001"><span class="section-number-4">2.1.3</span> C source</h4>
|
||||
<div id="outline-container-org4d0f74d" class="outline-4">
|
||||
<h4 id="org4d0f74d"><span class="section-number-4">2.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-2-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -653,8 +653,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf35522e" class="outline-4">
|
||||
<h4 id="orgf35522e"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div id="outline-container-orgf2a2063" class="outline-4">
|
||||
<h4 id="orgf2a2063"><span class="section-number-4">2.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-2-1-4">
|
||||
<p>
|
||||
This function performs best when there is only 1 rank-1 update in the update cycle. It is not useful to
|
||||
@ -666,12 +666,12 @@ where applying the update causes singular behaviour.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc34c6ee" class="outline-2">
|
||||
<h2 id="orgc34c6ee"><span class="section-number-2">3</span> Woodbury 2x2</h2>
|
||||
<div id="outline-container-orgf0b35f4" class="outline-2">
|
||||
<h2 id="orgf0b35f4"><span class="section-number-2">3</span> Woodbury 2x2</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org4ab9c19" class="outline-3">
|
||||
<h3 id="org4ab9c19"><span class="section-number-3">3.1</span> <code>qmckl_woodbury_2</code></h3>
|
||||
<div id="outline-container-org4bc3d8a" class="outline-3">
|
||||
<h3 id="org4bc3d8a"><span class="section-number-3">3.1</span> <code>qmckl_woodbury_2</code></h3>
|
||||
<div class="outline-text-3" id="text-3-1">
|
||||
<p>
|
||||
The Woodbury 2x2 kernel. It is used to apply two rank-1 updates at once. The formula used in
|
||||
@ -695,7 +695,7 @@ from applying the updates to the original matrix.
|
||||
|
||||
|
||||
|
||||
<table id="org3c881a7" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgc4221f1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -760,8 +760,8 @@ from applying the updates to the original matrix.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7f3b0b7" class="outline-4">
|
||||
<h4 id="org7f3b0b7"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgd822659" class="outline-4">
|
||||
<h4 id="orgd822659"><span class="section-number-4">3.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-3-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>qmckl_null_context</code></li>
|
||||
@ -774,8 +774,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org871fd4b" class="outline-4">
|
||||
<h4 id="org871fd4b"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div id="outline-container-orga163411" class="outline-4">
|
||||
<h4 id="orga163411"><span class="section-number-4">3.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-3-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_woodbury_2</span> (
|
||||
@ -791,8 +791,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfaad462" class="outline-4">
|
||||
<h4 id="orgfaad462"><span class="section-number-4">3.1.3</span> C source</h4>
|
||||
<div id="outline-container-org05f8280" class="outline-4">
|
||||
<h4 id="org05f8280"><span class="section-number-4">3.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-3-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -878,8 +878,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org13d4db3" class="outline-4">
|
||||
<h4 id="org13d4db3"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div id="outline-container-org7f0500e" class="outline-4">
|
||||
<h4 id="org7f0500e"><span class="section-number-4">3.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-3-1-4">
|
||||
<p>
|
||||
This function is most efficient when used in cases where there are only 2 rank-1 updates and
|
||||
@ -890,12 +890,12 @@ it is sure they will not result in a singular matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org70802fa" class="outline-2">
|
||||
<h2 id="org70802fa"><span class="section-number-2">4</span> Woodbury 3x3</h2>
|
||||
<div id="outline-container-org5c4e67c" class="outline-2">
|
||||
<h2 id="org5c4e67c"><span class="section-number-2">4</span> Woodbury 3x3</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-org9fd10e9" class="outline-3">
|
||||
<h3 id="org9fd10e9"><span class="section-number-3">4.1</span> <code>qmckl_woodbury_3</code></h3>
|
||||
<div id="outline-container-org7da9ddd" class="outline-3">
|
||||
<h3 id="org7da9ddd"><span class="section-number-3">4.1</span> <code>qmckl_woodbury_3</code></h3>
|
||||
<div class="outline-text-3" id="text-4-1">
|
||||
<p>
|
||||
The 3x3 version of the Woodbury 2x2 kernel. It is used to apply three
|
||||
@ -916,7 +916,7 @@ from applying the updates to the original matrix.
|
||||
|
||||
|
||||
|
||||
<table id="org284df52" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org360584d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -981,8 +981,8 @@ from applying the updates to the original matrix.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6075f09" class="outline-4">
|
||||
<h4 id="org6075f09"><span class="section-number-4">4.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org9aa3a9b" class="outline-4">
|
||||
<h4 id="org9aa3a9b"><span class="section-number-4">4.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-4-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>qmckl_null_context</code></li>
|
||||
@ -995,8 +995,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org78c893f" class="outline-4">
|
||||
<h4 id="org78c893f"><span class="section-number-4">4.1.2</span> C header</h4>
|
||||
<div id="outline-container-orgd0ac5ae" class="outline-4">
|
||||
<h4 id="orgd0ac5ae"><span class="section-number-4">4.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-4-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_woodbury_3</span> (
|
||||
@ -1012,8 +1012,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgee6ba99" class="outline-4">
|
||||
<h4 id="orgee6ba99"><span class="section-number-4">4.1.3</span> C source</h4>
|
||||
<div id="outline-container-orge280ec2" class="outline-4">
|
||||
<h4 id="orge280ec2"><span class="section-number-4">4.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-4-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -1114,8 +1114,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1a5a5b8" class="outline-4">
|
||||
<h4 id="org1a5a5b8"><span class="section-number-4">4.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-orgcd2cf5f" class="outline-4">
|
||||
<h4 id="orgcd2cf5f"><span class="section-number-4">4.1.4</span> Performance…</h4>
|
||||
<div class="outline-text-4" id="text-4-1-4">
|
||||
<p>
|
||||
This function is most efficient when used in cases where there are only 3 rank-1 updates and
|
||||
@ -1126,12 +1126,12 @@ it is sure they will not result in a singular matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc2a7550" class="outline-2">
|
||||
<h2 id="orgc2a7550"><span class="section-number-2">5</span> Sherman-Morrison with update splitting</h2>
|
||||
<div id="outline-container-org1b0928a" class="outline-2">
|
||||
<h2 id="org1b0928a"><span class="section-number-2">5</span> Sherman-Morrison with update splitting</h2>
|
||||
<div class="outline-text-2" id="text-5">
|
||||
</div>
|
||||
<div id="outline-container-org6d2cdce" class="outline-3">
|
||||
<h3 id="org6d2cdce"><span class="section-number-3">5.1</span> <code>qmckl_sherman_morrison_splitting</code></h3>
|
||||
<div id="outline-container-org7222e67" class="outline-3">
|
||||
<h3 id="org7222e67"><span class="section-number-3">5.1</span> <code>qmckl_sherman_morrison_splitting</code></h3>
|
||||
<div class="outline-text-3" id="text-5-1">
|
||||
<p>
|
||||
This is a variation on the 'Naive' Sherman-Morrison kernel. Whenever the denominator \(1+v_j^T S^{-1} u_j\) in
|
||||
@ -1153,7 +1153,7 @@ If the determinant of the Slater-matrix is passed, it will be updated to the det
|
||||
from applying the updates to the original matrix.
|
||||
</p>
|
||||
|
||||
<table id="org3721a27" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orga70748f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1230,8 +1230,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org6ef61ba" class="outline-4">
|
||||
<h4 id="org6ef61ba"><span class="section-number-4">5.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org54eec05" class="outline-4">
|
||||
<h4 id="org54eec05"><span class="section-number-4">5.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-5-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -1245,8 +1245,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5668859" class="outline-4">
|
||||
<h4 id="org5668859"><span class="section-number-4">5.1.2</span> C header</h4>
|
||||
<div id="outline-container-org99b8918" class="outline-4">
|
||||
<h4 id="org99b8918"><span class="section-number-4">5.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-5-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_sherman_morrison_splitting</span> (
|
||||
@ -1263,8 +1263,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfbf8a4a" class="outline-4">
|
||||
<h4 id="orgfbf8a4a"><span class="section-number-4">5.1.3</span> C source</h4>
|
||||
<div id="outline-container-org4c96082" class="outline-4">
|
||||
<h4 id="org4c96082"><span class="section-number-4">5.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-5-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -1303,8 +1303,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org51fa0d2" class="outline-4">
|
||||
<h4 id="org51fa0d2"><span class="section-number-4">5.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-org1ccd9cf" class="outline-4">
|
||||
<h4 id="org1ccd9cf"><span class="section-number-4">5.1.4</span> Performance…</h4>
|
||||
<div class="outline-text-4" id="text-5-1-4">
|
||||
<p>
|
||||
This kernel performs best when there are 2 or more rank-1 update cycles and fail-rate is high.
|
||||
@ -1314,12 +1314,12 @@ This kernel performs best when there are 2 or more rank-1 update cycles and fail
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2f4e9d3" class="outline-2">
|
||||
<h2 id="org2f4e9d3"><span class="section-number-2">6</span> Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</h2>
|
||||
<div id="outline-container-orgf933dff" class="outline-2">
|
||||
<h2 id="orgf933dff"><span class="section-number-2">6</span> Woodbury 3x3 and 2x2 with Sherman-Morrison and update splitting</h2>
|
||||
<div class="outline-text-2" id="text-6">
|
||||
</div>
|
||||
<div id="outline-container-org1fa57d0" class="outline-3">
|
||||
<h3 id="org1fa57d0"><span class="section-number-3">6.1</span> <code>qmckl_sherman_morrison_smw32s</code></h3>
|
||||
<div id="outline-container-org6370d12" class="outline-3">
|
||||
<h3 id="org6370d12"><span class="section-number-3">6.1</span> <code>qmckl_sherman_morrison_smw32s</code></h3>
|
||||
<div class="outline-text-3" id="text-6-1">
|
||||
<p>
|
||||
The Woodbury 3x3 and 2x2 kernel with Sherman-Morrison and update splitting combines the low-level Woodbury 3x3 kernel,
|
||||
@ -1334,7 +1334,7 @@ If the determinant of the Slater-matrix is passed, it will be updated to the det
|
||||
from applying the updates to the original matrix.
|
||||
</p>
|
||||
|
||||
<table id="org2a238fa" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgf58cc81" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1407,8 +1407,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org595a258" class="outline-4">
|
||||
<h4 id="org595a258"><span class="section-number-4">6.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-org48d8f92" class="outline-4">
|
||||
<h4 id="org48d8f92"><span class="section-number-4">6.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-6-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>context</code> is not <code>QMCKL_NULL_CONTEXT</code></li>
|
||||
@ -1422,8 +1422,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6889f6a" class="outline-4">
|
||||
<h4 id="org6889f6a"><span class="section-number-4">6.1.2</span> C header</h4>
|
||||
<div id="outline-container-orgf0ac632" class="outline-4">
|
||||
<h4 id="orgf0ac632"><span class="section-number-4">6.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-6-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_sherman_morrison_smw32s</span> (
|
||||
@ -1440,8 +1440,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7fcda66" class="outline-4">
|
||||
<h4 id="org7fcda66"><span class="section-number-4">6.1.3</span> C source</h4>
|
||||
<div id="outline-container-orge9f1714" class="outline-4">
|
||||
<h4 id="orge9f1714"><span class="section-number-4">6.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-6-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -1518,8 +1518,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org235d31f" class="outline-4">
|
||||
<h4 id="org235d31f"><span class="section-number-4">6.1.4</span> Performance…</h4>
|
||||
<div id="outline-container-orgc5c8ec9" class="outline-4">
|
||||
<h4 id="orgc5c8ec9"><span class="section-number-4">6.1.4</span> Performance…</h4>
|
||||
<div class="outline-text-4" id="text-6-1-4">
|
||||
<p>
|
||||
This kernel performs best for update cycles with 2 or more rank-1 updates and the fail-rate is low.
|
||||
@ -1529,8 +1529,8 @@ This kernel performs best for update cycles with 2 or more rank-1 updates and th
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org06e1926" class="outline-2">
|
||||
<h2 id="org06e1926"><span class="section-number-2">7</span> Helper Functions</h2>
|
||||
<div id="outline-container-org93468ff" class="outline-2">
|
||||
<h2 id="org93468ff"><span class="section-number-2">7</span> Helper Functions</h2>
|
||||
<div class="outline-text-2" id="text-7">
|
||||
<p>
|
||||
Private helper-functions that are used by the Sherman-Morrison-Woodbury kernels.
|
||||
@ -1538,8 +1538,8 @@ These functions can only be used internally by the kernels in this module.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge0987f8" class="outline-3">
|
||||
<h3 id="orge0987f8"><span class="section-number-3">7.1</span> <code>qmckl_slagel_splitting</code></h3>
|
||||
<div id="outline-container-org62f7eb6" class="outline-3">
|
||||
<h3 id="org62f7eb6"><span class="section-number-3">7.1</span> <code>qmckl_slagel_splitting</code></h3>
|
||||
<div class="outline-text-3" id="text-7-1">
|
||||
<p>
|
||||
<code>qmckl_slagel_splitting</code> is the non-recursive, inner part of the 'Sherman-Morrison with update splitting'-kernel.
|
||||
@ -1559,7 +1559,7 @@ If the determinant of the Slater-matrix is passed, it will be updated to the det
|
||||
from applying the updates to the original matrix.
|
||||
</p>
|
||||
|
||||
<table id="org84a43e0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org88e7cbe" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1646,8 +1646,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgdb6b22d" class="outline-4">
|
||||
<h4 id="orgdb6b22d"><span class="section-number-4">7.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgb38b8c5" class="outline-4">
|
||||
<h4 id="orgb38b8c5"><span class="section-number-4">7.1.1</span> Requirements</h4>
|
||||
<div class="outline-text-4" id="text-7-1-1">
|
||||
<ul class="org-ul">
|
||||
<li><code>Dim >= 2</code></li>
|
||||
@ -1663,8 +1663,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc9d1070" class="outline-4">
|
||||
<h4 id="orgc9d1070"><span class="section-number-4">7.1.2</span> C header</h4>
|
||||
<div id="outline-container-orgdd0b1f5" class="outline-4">
|
||||
<h4 id="orgdd0b1f5"><span class="section-number-4">7.1.2</span> C header</h4>
|
||||
<div class="outline-text-4" id="text-7-1-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">double</span> <span style="color: #0000ff;">qmckl_slagel_splitting</span> (
|
||||
@ -1683,8 +1683,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga63d9d8" class="outline-4">
|
||||
<h4 id="orga63d9d8"><span class="section-number-4">7.1.3</span> C source</h4>
|
||||
<div id="outline-container-org3eca72e" class="outline-4">
|
||||
<h4 id="org3eca72e"><span class="section-number-4">7.1.3</span> C source</h4>
|
||||
<div class="outline-text-4" id="text-7-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;"><stdbool.h></span>
|
||||
@ -1761,8 +1761,8 @@ from applying the updates to the original matrix.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7e1658f" class="outline-4">
|
||||
<h4 id="org7e1658f"><span class="section-number-4">7.1.4</span> Performance</h4>
|
||||
<div id="outline-container-orgb142121" class="outline-4">
|
||||
<h4 id="orgb142121"><span class="section-number-4">7.1.4</span> Performance</h4>
|
||||
<div class="outline-text-4" id="text-7-1-4">
|
||||
<p>
|
||||
This function cannot be used by itself and is used in Sherman-Morrison with update splitting and Woodbury 3x3 and 2x2
|
||||
@ -1773,8 +1773,8 @@ with Sherman-Morrison and update splitting. Please look at the performance recco
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0e324e7" class="outline-2">
|
||||
<h2 id="org0e324e7"><span class="section-number-2">8</span> End of files</h2>
|
||||
<div id="outline-container-orgf2b0593" class="outline-2">
|
||||
<h2 id="orgf2b0593"><span class="section-number-2">8</span> End of files</h2>
|
||||
<div class="outline-text-2" id="text-8">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"> <span style="color: #0000ff;">assert</span> (<span style="color: #228b22;">qmckl_context_destroy</span>(<span style="color: #a0522d;">context</span>) == QMCKL_SUCCESS);
|
||||
@ -1788,7 +1788,7 @@ with Sherman-Morrison and update splitting. Please look at the performance recco
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:47</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:47 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Data for Tests</title>
|
||||
@ -233,27 +233,27 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgbdecd65">1. CHBrClF</a>
|
||||
<li><a href="#org58f76a6">1. CHBrClF</a>
|
||||
<ul>
|
||||
<li><a href="#orgaa9f916">1.1. XYZ coordinates</a></li>
|
||||
<li><a href="#org737c291">1.2. Atomic basis set</a></li>
|
||||
<li><a href="#org5949b54">1.3. Molecular orbitals</a></li>
|
||||
<li><a href="#org1e4811c">1.4. Electron coordinates</a></li>
|
||||
<li><a href="#orgb274318">1.1. XYZ coordinates</a></li>
|
||||
<li><a href="#org4c820cc">1.2. Atomic basis set</a></li>
|
||||
<li><a href="#orgb6cc4b8">1.3. Molecular orbitals</a></li>
|
||||
<li><a href="#orgb4a652d">1.4. Electron coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org8fa5bdf">2. N2</a>
|
||||
<li><a href="#org294f5c6">2. N2</a>
|
||||
<ul>
|
||||
<li><a href="#orgefa794b">2.1. XYZ coordinates</a></li>
|
||||
<li><a href="#orgdfa38a6">2.2. Electron coordinates</a></li>
|
||||
<li><a href="#org45e025c">2.3. Jastrow related data</a></li>
|
||||
<li><a href="#orga1c5b8b">2.1. XYZ coordinates</a></li>
|
||||
<li><a href="#org307ad16">2.2. Electron coordinates</a></li>
|
||||
<li><a href="#org1bcbd43">2.3. Jastrow related data</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbdecd65" class="outline-2">
|
||||
<h2 id="orgbdecd65"><span class="section-number-2">1</span> CHBrClF</h2>
|
||||
<div id="outline-container-org58f76a6" class="outline-2">
|
||||
<h2 id="org58f76a6"><span class="section-number-2">1</span> CHBrClF</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
This test is the all-electron Hartree-Fock wave function of CHClBr,
|
||||
@ -337,8 +337,8 @@ and with a high maximum angular momentum.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgaa9f916" class="outline-3">
|
||||
<h3 id="orgaa9f916"><span class="section-number-3">1.1</span> XYZ coordinates</h3>
|
||||
<div id="outline-container-orgb274318" class="outline-3">
|
||||
<h3 id="orgb274318"><span class="section-number-3">1.1</span> XYZ coordinates</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<pre class="example">
|
||||
5
|
||||
@ -368,8 +368,8 @@ Nuclear coordinates are stored in atomic units in transposed format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org737c291" class="outline-3">
|
||||
<h3 id="org737c291"><span class="section-number-3">1.2</span> Atomic basis set</h3>
|
||||
<div id="outline-container-org4c820cc" class="outline-3">
|
||||
<h3 id="org4c820cc"><span class="section-number-3">1.2</span> Atomic basis set</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<pre class="example">
|
||||
HYDROGEN
|
||||
@ -1288,8 +1288,8 @@ F 1
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5949b54" class="outline-3">
|
||||
<h3 id="org5949b54"><span class="section-number-3">1.3</span> Molecular orbitals</h3>
|
||||
<div id="outline-container-orgb6cc4b8" class="outline-3">
|
||||
<h3 id="orgb6cc4b8"><span class="section-number-3">1.3</span> Molecular orbitals</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">chbrclf_mo_num</span> ((<span style="color: #228b22;">int64_t</span>) 224)
|
||||
@ -60213,8 +60213,8 @@ F 1
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1e4811c" class="outline-3">
|
||||
<h3 id="org1e4811c"><span class="section-number-3">1.4</span> Electron coordinates</h3>
|
||||
<div id="outline-container-orgb4a652d" class="outline-3">
|
||||
<h3 id="orgb4a652d"><span class="section-number-3">1.4</span> Electron coordinates</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<p>
|
||||
Electron coordinates are stored in atomic units in normal format.
|
||||
@ -60374,8 +60374,8 @@ Electron coordinates are stored in atomic units in normal format.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org8fa5bdf" class="outline-2">
|
||||
<h2 id="org8fa5bdf"><span class="section-number-2">2</span> N2</h2>
|
||||
<div id="outline-container-org294f5c6" class="outline-2">
|
||||
<h2 id="org294f5c6"><span class="section-number-2">2</span> N2</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<p>
|
||||
This test is mainly for the Jastrow factor and was supplied by
|
||||
@ -60416,8 +60416,8 @@ treated by pseudopotentials thus excluded from the actual calculation.
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgefa794b" class="outline-3">
|
||||
<h3 id="orgefa794b"><span class="section-number-3">2.1</span> XYZ coordinates</h3>
|
||||
<div id="outline-container-orga1c5b8b" class="outline-3">
|
||||
<h3 id="orga1c5b8b"><span class="section-number-3">2.1</span> XYZ coordinates</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<pre class="example">
|
||||
2
|
||||
@ -60444,8 +60444,8 @@ Nuclear coordinates are stored in atomic units in transposed format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdfa38a6" class="outline-3">
|
||||
<h3 id="orgdfa38a6"><span class="section-number-3">2.2</span> Electron coordinates</h3>
|
||||
<div id="outline-container-org307ad16" class="outline-3">
|
||||
<h3 id="org307ad16"><span class="section-number-3">2.2</span> Electron coordinates</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
Electron coordinates are stored in atomic units in normal format.
|
||||
@ -60474,8 +60474,8 @@ Electron coordinates are stored in atomic units in normal format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org45e025c" class="outline-3">
|
||||
<h3 id="org45e025c"><span class="section-number-3">2.3</span> Jastrow related data</h3>
|
||||
<div id="outline-container-org1bcbd43" class="outline-3">
|
||||
<h3 id="org1bcbd43"><span class="section-number-3">2.3</span> Jastrow related data</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
This test is mainly for the Jastrow factor and was supplied by
|
||||
@ -60574,7 +60574,7 @@ Ramon Panades Baruetta.
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:47</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:46 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>TREXIO I/O library</title>
|
||||
@ -311,52 +311,52 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org58132fc">1. Local functions</a>
|
||||
<li><a href="#org90ad09c">1. Local functions</a>
|
||||
<ul>
|
||||
<li><a href="#org76eb34e">1.1. Open file</a></li>
|
||||
<li><a href="#orgb2fbf37">1.2. Electron</a></li>
|
||||
<li><a href="#orgd93d187">1.3. Nucleus</a>
|
||||
<li><a href="#org5ef6c8f">1.1. Open file</a></li>
|
||||
<li><a href="#orga54800b">1.2. Electron</a></li>
|
||||
<li><a href="#org278b6f6">1.3. Nucleus</a>
|
||||
<ul>
|
||||
<li><a href="#org7ae57ff">1.3.1. Number of nuclei</a></li>
|
||||
<li><a href="#org21e26a3">1.3.2. Nuclear charges</a></li>
|
||||
<li><a href="#org65ac9f9">1.3.3. Nuclear coordinates</a></li>
|
||||
<li><a href="#orgf0551e5">1.3.1. Number of nuclei</a></li>
|
||||
<li><a href="#orgee2e247">1.3.2. Nuclear charges</a></li>
|
||||
<li><a href="#orga7cd17d">1.3.3. Nuclear coordinates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org40f4bb1">1.4. Basis set and AOs</a>
|
||||
<li><a href="#orgd1298fe">1.4. Basis set and AOs</a>
|
||||
<ul>
|
||||
<li><a href="#org1b43e9a">1.4.1. Basis set type</a></li>
|
||||
<li><a href="#org02c3001">1.4.2. Number of shells</a></li>
|
||||
<li><a href="#org30c81ad">1.4.3. Number of primitives</a></li>
|
||||
<li><a href="#orga7aa49d">1.4.4. Number of atomic orbitals</a></li>
|
||||
<li><a href="#orgdf16cc6">1.4.5. Nucleus<sub>index</sub> array</a></li>
|
||||
<li><a href="#org8466930">1.4.6. Number of shells per nucleus</a></li>
|
||||
<li><a href="#org5a1a36a">1.4.7. Angular momentum</a></li>
|
||||
<li><a href="#org01bf9f4">1.4.8. Number of primitives per shell</a></li>
|
||||
<li><a href="#org7a9a5f3">1.4.9. Indices of the primitives</a></li>
|
||||
<li><a href="#orgf0d7c07">1.4.10. Normalization of the shells</a></li>
|
||||
<li><a href="#orgf41da42">1.4.11. Exponents</a></li>
|
||||
<li><a href="#orgf42e186">1.4.12. Coefficients</a></li>
|
||||
<li><a href="#org4cdf8c1">1.4.13. Normalization of the primitivies</a></li>
|
||||
<li><a href="#org3149320">1.4.1. Basis set type</a></li>
|
||||
<li><a href="#orgd704b05">1.4.2. Number of shells</a></li>
|
||||
<li><a href="#orgf12402e">1.4.3. Number of primitives</a></li>
|
||||
<li><a href="#orgb8f459b">1.4.4. Number of atomic orbitals</a></li>
|
||||
<li><a href="#orgd90b9f8">1.4.5. Nucleus<sub>index</sub> array</a></li>
|
||||
<li><a href="#orgcdb60c8">1.4.6. Number of shells per nucleus</a></li>
|
||||
<li><a href="#org4119a14">1.4.7. Angular momentum</a></li>
|
||||
<li><a href="#org385ad17">1.4.8. Number of primitives per shell</a></li>
|
||||
<li><a href="#org7df0144">1.4.9. Indices of the primitives</a></li>
|
||||
<li><a href="#org5615724">1.4.10. Normalization of the shells</a></li>
|
||||
<li><a href="#orgc52cc72">1.4.11. Exponents</a></li>
|
||||
<li><a href="#org50af54d">1.4.12. Coefficients</a></li>
|
||||
<li><a href="#orga551e18">1.4.13. Normalization of the primitivies</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org22049d2">1.5. Molecular orbitals</a>
|
||||
<li><a href="#orga2f5b61">1.5. Molecular orbitals</a>
|
||||
<ul>
|
||||
<li><a href="#org80d4a1a">1.5.1. Number of MOs</a></li>
|
||||
<li><a href="#org249d9c6">1.5.2. MO coefficients</a></li>
|
||||
<li><a href="#org415821e">1.5.1. Number of MOs</a></li>
|
||||
<li><a href="#org8bbab68">1.5.2. MO coefficients</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org916d844">1.6. <span class="todo TODO">TODO</span> ECP</a></li>
|
||||
<li><a href="#orgc4865bf">1.6. <span class="todo TODO">TODO</span> ECP</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgc0cad65">2. Read everything</a></li>
|
||||
<li><a href="#org4c5c18d">3. Test</a>
|
||||
<li><a href="#org815d9f8">2. Read everything</a></li>
|
||||
<li><a href="#org87f2440">3. Test</a>
|
||||
<ul>
|
||||
<li>
|
||||
<ul>
|
||||
<li><a href="#org77865ae">3.0.1. Electrons</a></li>
|
||||
<li><a href="#orge1b108a">3.0.2. Nuclei</a></li>
|
||||
<li><a href="#org1cf3726">3.0.3. Atomic basis</a></li>
|
||||
<li><a href="#org7f3ec48">3.0.4. MO Basis</a></li>
|
||||
<li><a href="#orgac2589c">3.0.1. Electrons</a></li>
|
||||
<li><a href="#org32f990c">3.0.2. Nuclei</a></li>
|
||||
<li><a href="#org70a0e08">3.0.3. Atomic basis</a></li>
|
||||
<li><a href="#org4207051">3.0.4. MO Basis</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -365,8 +365,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org58132fc" class="outline-2">
|
||||
<h2 id="org58132fc"><span class="section-number-2">1</span> Local functions</h2>
|
||||
<div id="outline-container-org90ad09c" class="outline-2">
|
||||
<h2 id="org90ad09c"><span class="section-number-2">1</span> Local functions</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
Functions defined in this section are all local: they should not be
|
||||
@ -389,8 +389,8 @@ In the functions defined in this section, we use as local variables
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org76eb34e" class="outline-3">
|
||||
<h3 id="org76eb34e"><span class="section-number-3">1.1</span> Open file</h3>
|
||||
<div id="outline-container-org5ef6c8f" class="outline-3">
|
||||
<h3 id="org5ef6c8f"><span class="section-number-3">1.1</span> Open file</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<p>
|
||||
We first define a helper function to open a file by first trying to
|
||||
@ -422,8 +422,8 @@ groups of data by passing the <code>trexio_t</code> handle.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb2fbf37" class="outline-3">
|
||||
<h3 id="orgb2fbf37"><span class="section-number-3">1.2</span> Electron</h3>
|
||||
<div id="outline-container-orga54800b" class="outline-3">
|
||||
<h3 id="orga54800b"><span class="section-number-3">1.2</span> Electron</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
In this section we read all the data into the electron data structure.
|
||||
@ -474,8 +474,8 @@ We read the number of up-spin and down-spin electrons.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd93d187" class="outline-3">
|
||||
<h3 id="orgd93d187"><span class="section-number-3">1.3</span> Nucleus</h3>
|
||||
<div id="outline-container-org278b6f6" class="outline-3">
|
||||
<h3 id="org278b6f6"><span class="section-number-3">1.3</span> Nucleus</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
In this section we read the number of nuclei, the molecular geometry and nuclear charges.
|
||||
@ -495,8 +495,8 @@ In this section we read the number of nuclei, the molecular geometry and nuclear
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7ae57ff" class="outline-4">
|
||||
<h4 id="org7ae57ff"><span class="section-number-4">1.3.1</span> Number of nuclei</h4>
|
||||
<div id="outline-container-orgf0551e5" class="outline-4">
|
||||
<h4 id="orgf0551e5"><span class="section-number-4">1.3.1</span> Number of nuclei</h4>
|
||||
<div class="outline-text-4" id="text-1-3-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">nucleus_num</span> = 0L;
|
||||
@ -519,8 +519,8 @@ rc = qmckl_set_nucleus_num(context, nucleus_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org21e26a3" class="outline-4">
|
||||
<h4 id="org21e26a3"><span class="section-number-4">1.3.2</span> Nuclear charges</h4>
|
||||
<div id="outline-container-orgee2e247" class="outline-4">
|
||||
<h4 id="orgee2e247"><span class="section-number-4">1.3.2</span> Nuclear charges</h4>
|
||||
<div class="outline-text-4" id="text-1-3-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -560,8 +560,8 @@ rc = qmckl_set_nucleus_num(context, nucleus_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org65ac9f9" class="outline-4">
|
||||
<h4 id="org65ac9f9"><span class="section-number-4">1.3.3</span> Nuclear coordinates</h4>
|
||||
<div id="outline-container-orga7cd17d" class="outline-4">
|
||||
<h4 id="orga7cd17d"><span class="section-number-4">1.3.3</span> Nuclear coordinates</h4>
|
||||
<div class="outline-text-4" id="text-1-3-3">
|
||||
<p>
|
||||
Now, we read the molecular geometry. It is stored in normal format
|
||||
@ -616,8 +616,8 @@ in the TREXIO file (<code>'N'</code>), so it will be automatically transposed in
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org40f4bb1" class="outline-3">
|
||||
<h3 id="org40f4bb1"><span class="section-number-3">1.4</span> Basis set and AOs</h3>
|
||||
<div id="outline-container-orgd1298fe" class="outline-3">
|
||||
<h3 id="orgd1298fe"><span class="section-number-3">1.4</span> Basis set and AOs</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<p>
|
||||
In this section we read the atomic basis set and atomic orbitals.
|
||||
@ -643,8 +643,8 @@ In this section we read the atomic basis set and atomic orbitals.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1b43e9a" class="outline-4">
|
||||
<h4 id="org1b43e9a"><span class="section-number-4">1.4.1</span> Basis set type</h4>
|
||||
<div id="outline-container-org3149320" class="outline-4">
|
||||
<h4 id="org3149320"><span class="section-number-4">1.4.1</span> Basis set type</h4>
|
||||
<div class="outline-text-4" id="text-1-4-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#define</span> <span style="color: #a0522d;">MAX_STR_LEN</span> 1024
|
||||
@ -675,8 +675,8 @@ In this section we read the atomic basis set and atomic orbitals.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org02c3001" class="outline-4">
|
||||
<h4 id="org02c3001"><span class="section-number-4">1.4.2</span> Number of shells</h4>
|
||||
<div id="outline-container-orgd704b05" class="outline-4">
|
||||
<h4 id="orgd704b05"><span class="section-number-4">1.4.2</span> Number of shells</h4>
|
||||
<div class="outline-text-4" id="text-1-4-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">shell_num</span> = 0L;
|
||||
@ -700,8 +700,8 @@ rc = qmckl_set_ao_basis_shell_num(context, shell_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org30c81ad" class="outline-4">
|
||||
<h4 id="org30c81ad"><span class="section-number-4">1.4.3</span> Number of primitives</h4>
|
||||
<div id="outline-container-orgf12402e" class="outline-4">
|
||||
<h4 id="orgf12402e"><span class="section-number-4">1.4.3</span> Number of primitives</h4>
|
||||
<div class="outline-text-4" id="text-1-4-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">prim_num</span> = 0L;
|
||||
@ -725,8 +725,8 @@ rc = qmckl_set_ao_basis_prim_num(context, prim_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga7aa49d" class="outline-4">
|
||||
<h4 id="orga7aa49d"><span class="section-number-4">1.4.4</span> Number of atomic orbitals</h4>
|
||||
<div id="outline-container-orgb8f459b" class="outline-4">
|
||||
<h4 id="orgb8f459b"><span class="section-number-4">1.4.4</span> Number of atomic orbitals</h4>
|
||||
<div class="outline-text-4" id="text-1-4-4">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">ao_num</span> = 0LL;
|
||||
@ -750,8 +750,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdf16cc6" class="outline-4">
|
||||
<h4 id="orgdf16cc6"><span class="section-number-4">1.4.5</span> Nucleus<sub>index</sub> array</h4>
|
||||
<div id="outline-container-orgd90b9f8" class="outline-4">
|
||||
<h4 id="orgd90b9f8"><span class="section-number-4">1.4.5</span> Nucleus<sub>index</sub> array</h4>
|
||||
<div class="outline-text-4" id="text-1-4-5">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -790,8 +790,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8466930" class="outline-4">
|
||||
<h4 id="org8466930"><span class="section-number-4">1.4.6</span> Number of shells per nucleus</h4>
|
||||
<div id="outline-container-orgcdb60c8" class="outline-4">
|
||||
<h4 id="orgcdb60c8"><span class="section-number-4">1.4.6</span> Number of shells per nucleus</h4>
|
||||
<div class="outline-text-4" id="text-1-4-6">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -830,8 +830,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5a1a36a" class="outline-4">
|
||||
<h4 id="org5a1a36a"><span class="section-number-4">1.4.7</span> Angular momentum</h4>
|
||||
<div id="outline-container-org4119a14" class="outline-4">
|
||||
<h4 id="org4119a14"><span class="section-number-4">1.4.7</span> Angular momentum</h4>
|
||||
<div class="outline-text-4" id="text-1-4-7">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -870,8 +870,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org01bf9f4" class="outline-4">
|
||||
<h4 id="org01bf9f4"><span class="section-number-4">1.4.8</span> Number of primitives per shell</h4>
|
||||
<div id="outline-container-org385ad17" class="outline-4">
|
||||
<h4 id="org385ad17"><span class="section-number-4">1.4.8</span> Number of primitives per shell</h4>
|
||||
<div class="outline-text-4" id="text-1-4-8">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -910,8 +910,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7a9a5f3" class="outline-4">
|
||||
<h4 id="org7a9a5f3"><span class="section-number-4">1.4.9</span> Indices of the primitives</h4>
|
||||
<div id="outline-container-org7df0144" class="outline-4">
|
||||
<h4 id="org7df0144"><span class="section-number-4">1.4.9</span> Indices of the primitives</h4>
|
||||
<div class="outline-text-4" id="text-1-4-9">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -950,8 +950,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf0d7c07" class="outline-4">
|
||||
<h4 id="orgf0d7c07"><span class="section-number-4">1.4.10</span> Normalization of the shells</h4>
|
||||
<div id="outline-container-org5615724" class="outline-4">
|
||||
<h4 id="org5615724"><span class="section-number-4">1.4.10</span> Normalization of the shells</h4>
|
||||
<div class="outline-text-4" id="text-1-4-10">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -990,8 +990,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf41da42" class="outline-4">
|
||||
<h4 id="orgf41da42"><span class="section-number-4">1.4.11</span> Exponents</h4>
|
||||
<div id="outline-container-orgc52cc72" class="outline-4">
|
||||
<h4 id="orgc52cc72"><span class="section-number-4">1.4.11</span> Exponents</h4>
|
||||
<div class="outline-text-4" id="text-1-4-11">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -1030,8 +1030,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf42e186" class="outline-4">
|
||||
<h4 id="orgf42e186"><span class="section-number-4">1.4.12</span> Coefficients</h4>
|
||||
<div id="outline-container-org50af54d" class="outline-4">
|
||||
<h4 id="org50af54d"><span class="section-number-4">1.4.12</span> Coefficients</h4>
|
||||
<div class="outline-text-4" id="text-1-4-12">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -1070,8 +1070,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4cdf8c1" class="outline-4">
|
||||
<h4 id="org4cdf8c1"><span class="section-number-4">1.4.13</span> Normalization of the primitivies</h4>
|
||||
<div id="outline-container-orga551e18" class="outline-4">
|
||||
<h4 id="orga551e18"><span class="section-number-4">1.4.13</span> Normalization of the primitivies</h4>
|
||||
<div class="outline-text-4" id="text-1-4-13">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -1120,8 +1120,8 @@ rc = qmckl_set_ao_basis_ao_num(context, ao_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org22049d2" class="outline-3">
|
||||
<h3 id="org22049d2"><span class="section-number-3">1.5</span> Molecular orbitals</h3>
|
||||
<div id="outline-container-orga2f5b61" class="outline-3">
|
||||
<h3 id="orga2f5b61"><span class="section-number-3">1.5</span> Molecular orbitals</h3>
|
||||
<div class="outline-text-3" id="text-1-5">
|
||||
<p>
|
||||
In this section we read the MO coefficients.
|
||||
@ -1147,8 +1147,8 @@ In this section we read the MO coefficients.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org80d4a1a" class="outline-4">
|
||||
<h4 id="org80d4a1a"><span class="section-number-4">1.5.1</span> Number of MOs</h4>
|
||||
<div id="outline-container-org415821e" class="outline-4">
|
||||
<h4 id="org415821e"><span class="section-number-4">1.5.1</span> Number of MOs</h4>
|
||||
<div class="outline-text-4" id="text-1-5-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">int64_t</span> <span style="color: #a0522d;">mo_num</span> = 0L;
|
||||
@ -1171,8 +1171,8 @@ rc = qmckl_set_mo_basis_mo_num(context, mo_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org249d9c6" class="outline-4">
|
||||
<h4 id="org249d9c6"><span class="section-number-4">1.5.2</span> MO coefficients</h4>
|
||||
<div id="outline-container-org8bbab68" class="outline-4">
|
||||
<h4 id="org8bbab68"><span class="section-number-4">1.5.2</span> MO coefficients</h4>
|
||||
<div class="outline-text-4" id="text-1-5-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">{
|
||||
@ -1221,12 +1221,12 @@ rc = qmckl_set_mo_basis_mo_num(context, mo_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org916d844" class="outline-3">
|
||||
<h3 id="org916d844"><span class="section-number-3">1.6</span> <span class="todo TODO">TODO</span> ECP</h3>
|
||||
<div id="outline-container-orgc4865bf" class="outline-3">
|
||||
<h3 id="orgc4865bf"><span class="section-number-3">1.6</span> <span class="todo TODO">TODO</span> ECP</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orgc0cad65" class="outline-2">
|
||||
<h2 id="orgc0cad65"><span class="section-number-2">2</span> Read everything</h2>
|
||||
<div id="outline-container-org815d9f8" class="outline-2">
|
||||
<h2 id="org815d9f8"><span class="section-number-2">2</span> Read everything</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">qmckl_exit_code</span> <span style="color: #0000ff;">qmckl_trexio_read</span>(<span style="color: #a020f0;">const</span> <span style="color: #228b22;">qmckl_context</span> <span style="color: #a0522d;">context</span>, <span style="color: #a020f0;">const</span> <span style="color: #228b22;">char</span>* <span style="color: #a0522d;">file_name</span>);
|
||||
@ -1307,8 +1307,8 @@ rc = qmckl_set_mo_basis_mo_num(context, mo_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4c5c18d" class="outline-2">
|
||||
<h2 id="org4c5c18d"><span class="section-number-2">3</span> Test</h2>
|
||||
<div id="outline-container-org87f2440" class="outline-2">
|
||||
<h2 id="org87f2440"><span class="section-number-2">3</span> Test</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#ifdef</span> HAVE_TREXIO
|
||||
@ -1339,8 +1339,8 @@ rc = qmckl_trexio_read(context, fname);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org77865ae" class="outline-4">
|
||||
<h4 id="org77865ae"><span class="section-number-4">3.0.1</span> Electrons</h4>
|
||||
<div id="outline-container-orgac2589c" class="outline-4">
|
||||
<h4 id="orgac2589c"><span class="section-number-4">3.0.1</span> Electrons</h4>
|
||||
<div class="outline-text-4" id="text-3-0-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">printf(<span style="color: #8b2252;">"Electrons\n"</span>);
|
||||
@ -1358,8 +1358,8 @@ rc = qmckl_get_electron_down_num(context, &dn_num);
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge1b108a" class="outline-4">
|
||||
<h4 id="orge1b108a"><span class="section-number-4">3.0.2</span> Nuclei</h4>
|
||||
<div id="outline-container-org32f990c" class="outline-4">
|
||||
<h4 id="org32f990c"><span class="section-number-4">3.0.2</span> Nuclei</h4>
|
||||
<div class="outline-text-4" id="text-3-0-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">printf(<span style="color: #8b2252;">"Nuclei\n"</span>);
|
||||
@ -1399,8 +1399,8 @@ coord = <span style="color: #008b8b;">NULL</span>;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1cf3726" class="outline-4">
|
||||
<h4 id="org1cf3726"><span class="section-number-4">3.0.3</span> Atomic basis</h4>
|
||||
<div id="outline-container-org70a0e08" class="outline-4">
|
||||
<h4 id="org70a0e08"><span class="section-number-4">3.0.3</span> Atomic basis</h4>
|
||||
<div class="outline-text-4" id="text-3-0-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">printf(<span style="color: #8b2252;">"Atomic basis\n"</span>);
|
||||
@ -1508,8 +1508,8 @@ prim_factor = <span style="color: #008b8b;">NULL</span>;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7f3ec48" class="outline-4">
|
||||
<h4 id="org7f3ec48"><span class="section-number-4">3.0.4</span> MO Basis</h4>
|
||||
<div id="outline-container-org4207051" class="outline-4">
|
||||
<h4 id="org4207051"><span class="section-number-4">3.0.4</span> MO Basis</h4>
|
||||
<div class="outline-text-4" id="text-3-0-4">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c">printf(<span style="color: #8b2252;">"MOs\n"</span>);
|
||||
@ -1537,7 +1537,7 @@ charge = <span style="color: #008b8b;">NULL</span>;
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:46</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:42 -->
|
||||
<!-- 2021-10-14 Thu 19:46 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Utility functions</title>
|
||||
@ -333,13 +333,13 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgf00a6c9">1. Matrix operations</a>
|
||||
<li><a href="#orgc9d79d7">1. Matrix operations</a>
|
||||
<ul>
|
||||
<li><a href="#org243ddc2">1.1. <code>qmckl_transpose</code></a>
|
||||
<li><a href="#org380563f">1.1. <code>qmckl_transpose</code></a>
|
||||
<ul>
|
||||
<li><a href="#org270ec23">1.1.1. Requirements</a></li>
|
||||
<li><a href="#orga1bbaab">1.1.2. C header</a></li>
|
||||
<li><a href="#org37b914e">1.1.3. Source</a></li>
|
||||
<li><a href="#orgecee3c8">1.1.1. Requirements</a></li>
|
||||
<li><a href="#org28949e0">1.1.2. C header</a></li>
|
||||
<li><a href="#org88afd87">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-orgf00a6c9" class="outline-2">
|
||||
<h2 id="orgf00a6c9"><span class="section-number-2">1</span> Matrix operations</h2>
|
||||
<div id="outline-container-orgc9d79d7" class="outline-2">
|
||||
<h2 id="orgc9d79d7"><span class="section-number-2">1</span> Matrix operations</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
</div>
|
||||
<div id="outline-container-org243ddc2" class="outline-3">
|
||||
<h3 id="org243ddc2"><span class="section-number-3">1.1</span> <code>qmckl_transpose</code></h3>
|
||||
<div id="outline-container-org380563f" class="outline-3">
|
||||
<h3 id="org380563f"><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="org315c9b1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orge20a886" 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-org270ec23" class="outline-4">
|
||||
<h4 id="org270ec23"><span class="section-number-4">1.1.1</span> Requirements</h4>
|
||||
<div id="outline-container-orgecee3c8" class="outline-4">
|
||||
<h4 id="orgecee3c8"><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-orga1bbaab" class="outline-4">
|
||||
<h4 id="orga1bbaab"><span class="section-number-4">1.1.2</span> C header</h4>
|
||||
<div id="outline-container-org28949e0" class="outline-4">
|
||||
<h4 id="org28949e0"><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-org37b914e" class="outline-4">
|
||||
<h4 id="org37b914e"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div id="outline-container-org88afd87" class="outline-4">
|
||||
<h4 id="org88afd87"><span class="section-number-4">1.1.3</span> Source</h4>
|
||||
<div class="outline-text-4" id="text-1-1-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #228b22;">integer </span><span style="color: #a020f0;">function</span><span style="color: #a0522d;"> </span><span style="color: #0000ff;">qmckl_transpose_f</span><span style="color: #000000; background-color: #ffffff;">(context, m, n, A, LDA, B, LDB)</span><span style="color: #a0522d;"> </span><span style="color: #a020f0;">&</span>
|
||||
@ -516,7 +516,7 @@ Transposes a matrix: \(B_{ji} = A_{ij}\)
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:42</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:46</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
670
qmckl_verificarlo.html
Normal file
670
qmckl_verificarlo.html
Normal file
@ -0,0 +1,670 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2021-10-14 Thu 19:47 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Verificarlo CI</title>
|
||||
<meta name="generator" content="Org mode" />
|
||||
<meta name="author" content="TREX CoE" />
|
||||
<style type="text/css">
|
||||
<!--/*--><![CDATA[/*><!--*/
|
||||
.title { text-align: center;
|
||||
margin-bottom: .2em; }
|
||||
.subtitle { text-align: center;
|
||||
font-size: medium;
|
||||
font-weight: bold;
|
||||
margin-top:0; }
|
||||
.todo { font-family: monospace; color: red; }
|
||||
.done { font-family: monospace; color: green; }
|
||||
.priority { font-family: monospace; color: orange; }
|
||||
.tag { background-color: #eee; font-family: monospace;
|
||||
padding: 2px; font-size: 80%; font-weight: normal; }
|
||||
.timestamp { color: #bebebe; }
|
||||
.timestamp-kwd { color: #5f9ea0; }
|
||||
.org-right { margin-left: auto; margin-right: 0px; text-align: right; }
|
||||
.org-left { margin-left: 0px; margin-right: auto; text-align: left; }
|
||||
.org-center { margin-left: auto; margin-right: auto; text-align: center; }
|
||||
.underline { text-decoration: underline; }
|
||||
#postamble p, #preamble p { font-size: 90%; margin: .2em; }
|
||||
p.verse { margin-left: 3%; }
|
||||
pre {
|
||||
border: 1px solid #ccc;
|
||||
box-shadow: 3px 3px 3px #eee;
|
||||
padding: 8pt;
|
||||
font-family: monospace;
|
||||
overflow: auto;
|
||||
margin: 1.2em;
|
||||
}
|
||||
pre.src {
|
||||
position: relative;
|
||||
overflow: visible;
|
||||
padding-top: 1.2em;
|
||||
}
|
||||
pre.src:before {
|
||||
display: none;
|
||||
position: absolute;
|
||||
background-color: white;
|
||||
top: -10px;
|
||||
right: 10px;
|
||||
padding: 3px;
|
||||
border: 1px solid black;
|
||||
}
|
||||
pre.src:hover:before { display: inline;}
|
||||
/* Languages per Org manual */
|
||||
pre.src-asymptote:before { content: 'Asymptote'; }
|
||||
pre.src-awk:before { content: 'Awk'; }
|
||||
pre.src-C:before { content: 'C'; }
|
||||
/* pre.src-C++ doesn't work in CSS */
|
||||
pre.src-clojure:before { content: 'Clojure'; }
|
||||
pre.src-css:before { content: 'CSS'; }
|
||||
pre.src-D:before { content: 'D'; }
|
||||
pre.src-ditaa:before { content: 'ditaa'; }
|
||||
pre.src-dot:before { content: 'Graphviz'; }
|
||||
pre.src-calc:before { content: 'Emacs Calc'; }
|
||||
pre.src-emacs-lisp:before { content: 'Emacs Lisp'; }
|
||||
pre.src-fortran:before { content: 'Fortran'; }
|
||||
pre.src-gnuplot:before { content: 'gnuplot'; }
|
||||
pre.src-haskell:before { content: 'Haskell'; }
|
||||
pre.src-hledger:before { content: 'hledger'; }
|
||||
pre.src-java:before { content: 'Java'; }
|
||||
pre.src-js:before { content: 'Javascript'; }
|
||||
pre.src-latex:before { content: 'LaTeX'; }
|
||||
pre.src-ledger:before { content: 'Ledger'; }
|
||||
pre.src-lisp:before { content: 'Lisp'; }
|
||||
pre.src-lilypond:before { content: 'Lilypond'; }
|
||||
pre.src-lua:before { content: 'Lua'; }
|
||||
pre.src-matlab:before { content: 'MATLAB'; }
|
||||
pre.src-mscgen:before { content: 'Mscgen'; }
|
||||
pre.src-ocaml:before { content: 'Objective Caml'; }
|
||||
pre.src-octave:before { content: 'Octave'; }
|
||||
pre.src-org:before { content: 'Org mode'; }
|
||||
pre.src-oz:before { content: 'OZ'; }
|
||||
pre.src-plantuml:before { content: 'Plantuml'; }
|
||||
pre.src-processing:before { content: 'Processing.js'; }
|
||||
pre.src-python:before { content: 'Python'; }
|
||||
pre.src-R:before { content: 'R'; }
|
||||
pre.src-ruby:before { content: 'Ruby'; }
|
||||
pre.src-sass:before { content: 'Sass'; }
|
||||
pre.src-scheme:before { content: 'Scheme'; }
|
||||
pre.src-screen:before { content: 'Gnu Screen'; }
|
||||
pre.src-sed:before { content: 'Sed'; }
|
||||
pre.src-sh:before { content: 'shell'; }
|
||||
pre.src-sql:before { content: 'SQL'; }
|
||||
pre.src-sqlite:before { content: 'SQLite'; }
|
||||
/* additional languages in org.el's org-babel-load-languages alist */
|
||||
pre.src-forth:before { content: 'Forth'; }
|
||||
pre.src-io:before { content: 'IO'; }
|
||||
pre.src-J:before { content: 'J'; }
|
||||
pre.src-makefile:before { content: 'Makefile'; }
|
||||
pre.src-maxima:before { content: 'Maxima'; }
|
||||
pre.src-perl:before { content: 'Perl'; }
|
||||
pre.src-picolisp:before { content: 'Pico Lisp'; }
|
||||
pre.src-scala:before { content: 'Scala'; }
|
||||
pre.src-shell:before { content: 'Shell Script'; }
|
||||
pre.src-ebnf2ps:before { content: 'ebfn2ps'; }
|
||||
/* additional language identifiers per "defun org-babel-execute"
|
||||
in ob-*.el */
|
||||
pre.src-cpp:before { content: 'C++'; }
|
||||
pre.src-abc:before { content: 'ABC'; }
|
||||
pre.src-coq:before { content: 'Coq'; }
|
||||
pre.src-groovy:before { content: 'Groovy'; }
|
||||
/* additional language identifiers from org-babel-shell-names in
|
||||
ob-shell.el: ob-shell is the only babel language using a lambda to put
|
||||
the execution function name together. */
|
||||
pre.src-bash:before { content: 'bash'; }
|
||||
pre.src-csh:before { content: 'csh'; }
|
||||
pre.src-ash:before { content: 'ash'; }
|
||||
pre.src-dash:before { content: 'dash'; }
|
||||
pre.src-ksh:before { content: 'ksh'; }
|
||||
pre.src-mksh:before { content: 'mksh'; }
|
||||
pre.src-posh:before { content: 'posh'; }
|
||||
/* Additional Emacs modes also supported by the LaTeX listings package */
|
||||
pre.src-ada:before { content: 'Ada'; }
|
||||
pre.src-asm:before { content: 'Assembler'; }
|
||||
pre.src-caml:before { content: 'Caml'; }
|
||||
pre.src-delphi:before { content: 'Delphi'; }
|
||||
pre.src-html:before { content: 'HTML'; }
|
||||
pre.src-idl:before { content: 'IDL'; }
|
||||
pre.src-mercury:before { content: 'Mercury'; }
|
||||
pre.src-metapost:before { content: 'MetaPost'; }
|
||||
pre.src-modula-2:before { content: 'Modula-2'; }
|
||||
pre.src-pascal:before { content: 'Pascal'; }
|
||||
pre.src-ps:before { content: 'PostScript'; }
|
||||
pre.src-prolog:before { content: 'Prolog'; }
|
||||
pre.src-simula:before { content: 'Simula'; }
|
||||
pre.src-tcl:before { content: 'tcl'; }
|
||||
pre.src-tex:before { content: 'TeX'; }
|
||||
pre.src-plain-tex:before { content: 'Plain TeX'; }
|
||||
pre.src-verilog:before { content: 'Verilog'; }
|
||||
pre.src-vhdl:before { content: 'VHDL'; }
|
||||
pre.src-xml:before { content: 'XML'; }
|
||||
pre.src-nxml:before { content: 'XML'; }
|
||||
/* add a generic configuration mode; LaTeX export needs an additional
|
||||
(add-to-list 'org-latex-listings-langs '(conf " ")) in .emacs */
|
||||
pre.src-conf:before { content: 'Configuration File'; }
|
||||
|
||||
table { border-collapse:collapse; }
|
||||
caption.t-above { caption-side: top; }
|
||||
caption.t-bottom { caption-side: bottom; }
|
||||
td, th { vertical-align:top; }
|
||||
th.org-right { text-align: center; }
|
||||
th.org-left { text-align: center; }
|
||||
th.org-center { text-align: center; }
|
||||
td.org-right { text-align: right; }
|
||||
td.org-left { text-align: left; }
|
||||
td.org-center { text-align: center; }
|
||||
dt { font-weight: bold; }
|
||||
.footpara { display: inline; }
|
||||
.footdef { margin-bottom: 1em; }
|
||||
.figure { padding: 1em; }
|
||||
.figure p { text-align: center; }
|
||||
.inlinetask {
|
||||
padding: 10px;
|
||||
border: 2px solid gray;
|
||||
margin: 10px;
|
||||
background: #ffffcc;
|
||||
}
|
||||
#org-div-home-and-up
|
||||
{ text-align: right; font-size: 70%; white-space: nowrap; }
|
||||
textarea { overflow-x: auto; }
|
||||
.linenr { font-size: smaller }
|
||||
.code-highlighted { background-color: #ffff00; }
|
||||
.org-info-js_info-navigation { border-style: none; }
|
||||
#org-info-js_console-label
|
||||
{ font-size: 10px; font-weight: bold; white-space: nowrap; }
|
||||
.org-info-js_search-highlight
|
||||
{ background-color: #ffff00; color: #000000; font-weight: bold; }
|
||||
.org-svg { width: 90%; }
|
||||
/*]]>*/-->
|
||||
</style>
|
||||
<link rel="stylesheet" title="Standard" href="qmckl.css" type="text/css" />
|
||||
|
||||
<script type="text/javascript" src="org-info.js">
|
||||
/**
|
||||
*
|
||||
* @source: org-info.js
|
||||
*
|
||||
* @licstart The following is the entire license notice for the
|
||||
* JavaScript code in org-info.js.
|
||||
*
|
||||
* Copyright (C) 2012-2019 Free Software Foundation, Inc.
|
||||
*
|
||||
*
|
||||
* The JavaScript code in this tag is free software: you can
|
||||
* redistribute it and/or modify it under the terms of the GNU
|
||||
* General Public License (GNU GPL) as published by the Free Software
|
||||
* Foundation, either version 3 of the License, or (at your option)
|
||||
* any later version. The code is distributed WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
* FOR A PARTICULAR PURPOSE. See the GNU GPL for more details.
|
||||
*
|
||||
* As additional permission under GNU GPL version 3 section 7, you
|
||||
* may distribute non-source (e.g., minimized or compacted) forms of
|
||||
* that code without the copy of the GNU GPL normally required by
|
||||
* section 4, provided you include this license notice and a URL
|
||||
* through which recipients can access the Corresponding Source.
|
||||
*
|
||||
* @licend The above is the entire license notice
|
||||
* for the JavaScript code in org-info.js.
|
||||
*
|
||||
*/
|
||||
</script>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
/*
|
||||
@licstart The following is the entire license notice for the
|
||||
JavaScript code in this tag.
|
||||
|
||||
Copyright (C) 2012-2019 Free Software Foundation, Inc.
|
||||
|
||||
The JavaScript code in this tag is free software: you can
|
||||
redistribute it and/or modify it under the terms of the GNU
|
||||
General Public License (GNU GPL) as published by the Free Software
|
||||
Foundation, either version 3 of the License, or (at your option)
|
||||
any later version. The code is distributed WITHOUT ANY WARRANTY;
|
||||
without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
FOR A PARTICULAR PURPOSE. See the GNU GPL for more details.
|
||||
|
||||
As additional permission under GNU GPL version 3 section 7, you
|
||||
may distribute non-source (e.g., minimized or compacted) forms of
|
||||
that code without the copy of the GNU GPL normally required by
|
||||
section 4, provided you include this license notice and a URL
|
||||
through which recipients can access the Corresponding Source.
|
||||
|
||||
|
||||
@licend The above is the entire license notice
|
||||
for the JavaScript code in this tag.
|
||||
*/
|
||||
|
||||
<!--/*--><![CDATA[/*><!--*/
|
||||
org_html_manager.set("TOC_DEPTH", "4");
|
||||
org_html_manager.set("LINK_HOME", "index.html");
|
||||
org_html_manager.set("LINK_UP", "");
|
||||
org_html_manager.set("LOCAL_TOC", "1");
|
||||
org_html_manager.set("VIEW_BUTTONS", "0");
|
||||
org_html_manager.set("MOUSE_HINT", "underline");
|
||||
org_html_manager.set("FIXED_TOC", "0");
|
||||
org_html_manager.set("TOC", "1");
|
||||
org_html_manager.set("VIEW", "info");
|
||||
org_html_manager.setup(); // activate after the parameters are set
|
||||
/*]]>*///-->
|
||||
</script>
|
||||
<script type="text/javascript">
|
||||
/*
|
||||
@licstart The following is the entire license notice for the
|
||||
JavaScript code in this tag.
|
||||
|
||||
Copyright (C) 2012-2019 Free Software Foundation, Inc.
|
||||
|
||||
The JavaScript code in this tag is free software: you can
|
||||
redistribute it and/or modify it under the terms of the GNU
|
||||
General Public License (GNU GPL) as published by the Free Software
|
||||
Foundation, either version 3 of the License, or (at your option)
|
||||
any later version. The code is distributed WITHOUT ANY WARRANTY;
|
||||
without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
FOR A PARTICULAR PURPOSE. See the GNU GPL for more details.
|
||||
|
||||
As additional permission under GNU GPL version 3 section 7, you
|
||||
may distribute non-source (e.g., minimized or compacted) forms of
|
||||
that code without the copy of the GNU GPL normally required by
|
||||
section 4, provided you include this license notice and a URL
|
||||
through which recipients can access the Corresponding Source.
|
||||
|
||||
|
||||
@licend The above is the entire license notice
|
||||
for the JavaScript code in this tag.
|
||||
*/
|
||||
<!--/*--><![CDATA[/*><!--*/
|
||||
function CodeHighlightOn(elem, id)
|
||||
{
|
||||
var target = document.getElementById(id);
|
||||
if(null != target) {
|
||||
elem.cacheClassElem = elem.className;
|
||||
elem.cacheClassTarget = target.className;
|
||||
target.className = "code-highlighted";
|
||||
elem.className = "code-highlighted";
|
||||
}
|
||||
}
|
||||
function CodeHighlightOff(elem, id)
|
||||
{
|
||||
var target = document.getElementById(id);
|
||||
if(elem.cacheClassElem)
|
||||
elem.className = elem.cacheClassElem;
|
||||
if(elem.cacheClassTarget)
|
||||
target.className = elem.cacheClassTarget;
|
||||
}
|
||||
/*]]>*///-->
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="org-div-home-and-up">
|
||||
<a accesskey="h" href=""> UP </a>
|
||||
|
|
||||
<a accesskey="H" href="index.html"> HOME </a>
|
||||
</div><div id="content">
|
||||
<h1 class="title">Verificarlo CI</h1>
|
||||
<div id="table-of-contents">
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orga774a7f">1. Verificarlo probes</a>
|
||||
<ul>
|
||||
<li><a href="#org01829e4">1.1. Automatically initialize the vfc<sub>probe</sub> object if <code>VFC_CI</code> is defined</a></li>
|
||||
<li><a href="#orgc48382a">1.2. Standard probe, without check</a></li>
|
||||
<li><a href="#org264cc62">1.3. Probe with absolute check</a></li>
|
||||
<li><a href="#org30eef3f">1.4. Probe with relative check</a></li>
|
||||
<li><a href="#org52736d4">1.5. Automatically delete and dump the vfc<sub>probe</sub> object if <code>VFC_CI</code> is defined</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org7433ef7">2. Fortran wrappers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga774a7f" class="outline-2">
|
||||
<h2 id="orga774a7f"><span class="section-number-2">1</span> Verificarlo probes</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
This file contains utility functions to enable the Verificarlo
|
||||
Continuous Integration system (<code>VFC_CI</code>).
|
||||
</p>
|
||||
|
||||
<p>
|
||||
It is a wrapper to Verificarlo's <code>vfc_probes</code> system. The goal of QMCkl
|
||||
probes is to simplify the use of <code>vfc_probes</code>, and to provide functions that
|
||||
can be called either with or without <code>VFC_CI</code> support by using <code>#ifndef</code>
|
||||
statements :
|
||||
</p>
|
||||
|
||||
<ul class="org-ul">
|
||||
<li>when <code>VFC_CI</code> is disabled, the functions will either return <code>false</code>
|
||||
(no error) or perform a check based on a reference value</li>
|
||||
|
||||
<li>when <code>VFC_CI</code> is enabled, the functions will simply encapsulate</li>
|
||||
</ul>
|
||||
<p>
|
||||
calls to <code>vfc_probe</code>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Moreover, one does not have to worry about the life cycle of the probes
|
||||
structure, as it is automatically created, dumped and freed by this wrapper.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<code>VFC_CI</code> support can be enabled by using the following configure command :
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-bash"><span style="color: #a0522d;">QMCKL_DEVEL</span>=1 ./configure --prefix=$<span style="color: #a0522d;">PWD</span>/_install --enable-silent-rules <span style="color: #8b2252;">\</span>
|
||||
--enable-maintainer-mode <span style="color: #a0522d;">CC</span>=verificarlo-f <span style="color: #a0522d;">FC</span>=verificarlo-f --host=x86_64
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
Finally, this wrapper also comes with a Fortran interface (in its dedicated
|
||||
file).
|
||||
</p>
|
||||
|
||||
<p>
|
||||
To learn more about Verificarlo CI :
|
||||
<a href="https://github.com/verificarlo/verificarlo/blob/master/doc/06-Postprocessing.md#verificarlo-ci">https://github.com/verificarlo/verificarlo/blob/master/doc/06-Postprocessing.md#verificarlo-ci</a>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-org01829e4" class="outline-3">
|
||||
<h3 id="org01829e4"><span class="section-number-3">1.1</span> Automatically initialize the vfc<sub>probe</sub> object if <code>VFC_CI</code> is defined</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#ifdef</span> VFC_CI
|
||||
<span style="color: #228b22;">void</span> <span style="color: #0000ff;">qmckl_init_probes</span>() <span style="color: #a020f0;">__attribute__</span>((constructor));
|
||||
<span style="color: #483d8b;">#endif</span>
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#ifdef</span> VFC_CI
|
||||
<span style="color: #228b22;">void</span> <span style="color: #a020f0;">__attribute__</span>((constructor)) <span style="color: #0000ff;">qmckl_init_probes</span>(){
|
||||
probes = vfc_init_probes();
|
||||
}
|
||||
<span style="color: #483d8b;">#endif</span>
|
||||
</pre>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc48382a" class="outline-3">
|
||||
<h3 id="orgc48382a"><span class="section-number-3">1.2</span> Standard probe, without check</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<ul class="org-ul">
|
||||
<li>if <code>VFC_CI</code> is defined, place a standard probe</li>
|
||||
<li><p>
|
||||
if <code>VFC_CI</code> is undefined, return <code>false</code> (no error)
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_probe</span>(
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">testName</span>,
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">varName</span>,
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">value</span>
|
||||
);
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_probe</span>(
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">testName</span>,
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">varName</span>,
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">value</span>)
|
||||
{
|
||||
<span style="color: #483d8b;">#ifdef</span> VFC_CI
|
||||
<span style="color: #a020f0;">return</span> vfc_probe(&probes, testName, varName, value);
|
||||
<span style="color: #483d8b;">#else</span>
|
||||
<span style="color: #a020f0;">return</span> <span style="color: #008b8b;">false</span>;
|
||||
<span style="color: #483d8b;">#endif</span>
|
||||
}
|
||||
</pre>
|
||||
</div></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org264cc62" class="outline-3">
|
||||
<h3 id="org264cc62"><span class="section-number-3">1.3</span> Probe with absolute check</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<ul class="org-ul">
|
||||
<li>if VFC<sub>CI</sub> is defined, place a probe with an absolute check</li>
|
||||
<li><p>
|
||||
if VFC<sub>CI</sub> is undefined, perform an absolute check based on target value
|
||||
and accuracy
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_probe_check</span>(
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">testName</span>,
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">varName</span>,
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">value</span>,
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">expectedValue</span>,
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">accuracyTarget</span>
|
||||
);
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_probe_check</span>(
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">testName</span>,
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">varName</span>,
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">value</span>,
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">expectedValue</span>,
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">accuracyTarget</span>)
|
||||
{
|
||||
<span style="color: #483d8b;">#ifdef</span> VFC_CI
|
||||
<span style="color: #a020f0;">return</span> vfc_probe_check(&probes, testName, varName, value, accuracyTarget);
|
||||
<span style="color: #483d8b;">#else</span>
|
||||
<span style="color: #a020f0;">return</span> !(fabs(value - expectedValue) < accuracyTarget);
|
||||
<span style="color: #483d8b;">#endif</span>
|
||||
}
|
||||
</pre>
|
||||
</div></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org30eef3f" class="outline-3">
|
||||
<h3 id="org30eef3f"><span class="section-number-3">1.4</span> Probe with relative check</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<ul class="org-ul">
|
||||
<li>if VFC<sub>CI</sub> is defined, place a probe with a relative check</li>
|
||||
<li><p>
|
||||
if VFC<sub>CI</sub> is undefined, perform a relative check based on target value
|
||||
and accuracy
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_probe_check_relative</span>(
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">testName</span>,
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">varName</span>,
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">value</span>,
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">expectedValue</span>,
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">accuracyTarget</span>
|
||||
);
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_probe_check_relative</span> (
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">testName</span>,
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">varName</span>,
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">value</span>,
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">expectedValue</span>,
|
||||
<span style="color: #228b22;">double</span> <span style="color: #a0522d;">accuracyTarget</span>)
|
||||
{
|
||||
<span style="color: #483d8b;">#ifdef</span> VFC_CI
|
||||
<span style="color: #a020f0;">return</span> vfc_probe_check_relative(&probes, testName, varName, value, accuracyTarget);
|
||||
<span style="color: #483d8b;">#else</span>
|
||||
<span style="color: #a020f0;">return</span> !(fabs(value - expectedValue) / fabs(expectedValue) < accuracyTarget);
|
||||
<span style="color: #483d8b;">#endif</span>
|
||||
}
|
||||
</pre>
|
||||
</div></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org52736d4" class="outline-3">
|
||||
<h3 id="org52736d4"><span class="section-number-3">1.5</span> Automatically delete and dump the vfc<sub>probe</sub> object if <code>VFC_CI</code> is defined</h3>
|
||||
<div class="outline-text-3" id="text-1-5">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#ifdef</span> VFC_CI
|
||||
<span style="color: #228b22;">void</span> <span style="color: #0000ff;">qmckl_dump_probes</span>() <span style="color: #a020f0;">__attribute__</span>((destructor));
|
||||
<span style="color: #483d8b;">#endif</span>
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #483d8b;">#ifdef</span> VFC_CI
|
||||
<span style="color: #228b22;">void</span> <span style="color: #a020f0;">__attribute__</span>((destructor)) <span style="color: #0000ff;">qmckl_dump_probes</span>(){
|
||||
vfc_dump_probes(&probes);
|
||||
}
|
||||
<span style="color: #483d8b;">#endif</span>
|
||||
</pre>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7433ef7" class="outline-2">
|
||||
<h2 id="org7433ef7"><span class="section-number-2">2</span> Fortran wrappers</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_probe_f</span>(
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">testName</span>,
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">varName</span>,
|
||||
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">value</span>
|
||||
);
|
||||
|
||||
<span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_probe_check_f</span>(
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">testName</span>,
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">varName</span>,
|
||||
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">value</span>,
|
||||
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">expectedValue</span>,
|
||||
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">accuracyTarget</span>
|
||||
);
|
||||
|
||||
|
||||
<span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_probe_check_relative_f</span>(
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">testName</span>,
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">varName</span>,
|
||||
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">value</span>,
|
||||
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">expectedValue</span>,
|
||||
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">accuracyTarget</span>
|
||||
);
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-c"><span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_probe_f</span>(
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">testName</span>,
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">varName</span>,
|
||||
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">value</span>)
|
||||
{
|
||||
<span style="color: #a020f0;">return</span> qmckl_probe(testName, varName, *value);
|
||||
}
|
||||
|
||||
|
||||
<span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_probe_check_f</span>(
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">testName</span>,
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">varName</span>,
|
||||
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">value</span>,
|
||||
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">expectedValue</span>,
|
||||
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">accuracyTarget</span>)
|
||||
{
|
||||
<span style="color: #a020f0;">return</span> qmckl_probe_check(
|
||||
testName, varName,
|
||||
*value, *expectedValue, *accuracyTarget
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
<span style="color: #228b22;">bool</span> <span style="color: #0000ff;">qmckl_probe_check_relative_f</span>(
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">testName</span>,
|
||||
<span style="color: #228b22;">char</span> * <span style="color: #a0522d;">varName</span>,
|
||||
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">value</span>,
|
||||
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">expectedValue</span>,
|
||||
<span style="color: #228b22;">double</span> * <span style="color: #a0522d;">accuracyTarget</span>)
|
||||
{
|
||||
<span style="color: #a020f0;">return</span> qmckl_probe_check_relative(
|
||||
testName, varName,
|
||||
*value, *expectedValue, *accuracyTarget
|
||||
);
|
||||
}
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-f90"><span style="color: #a020f0;">module</span> <span style="color: #0000ff;">qmckl_verificarlo_f</span>
|
||||
<span style="color: #a020f0;">interface</span>
|
||||
<span style="color: #228b22;">logical</span>(<span style="color: #008b8b;">c_bool</span>)<span style="color: #a0522d;"> function qmckl_probe </span><span style="color: #a020f0;">&</span>
|
||||
(testName, varName, val) <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">bind</span>(C, name=<span style="color: #8b2252;">"qmckl_probe_f"</span>)
|
||||
|
||||
<span style="color: #a020f0;">use</span>, <span style="color: #a020f0;">intrinsic</span> :: <span style="color: #0000ff;">iso_c_binding</span>
|
||||
<span style="color: #a020f0;">import</span>
|
||||
<span style="color: #a020f0;">implicit</span> <span style="color: #228b22;">none</span>
|
||||
|
||||
<span style="color: #228b22;">character</span>(<span style="color: #008b8b;">C_CHAR</span>), <span style="color: #a020f0;">dimension</span>(*) ::<span style="color: #a0522d;"> testName</span>
|
||||
<span style="color: #228b22;">character</span>(<span style="color: #008b8b;">C_CHAR</span>), <span style="color: #a020f0;">dimension</span>(*) ::<span style="color: #a0522d;"> varName</span>
|
||||
|
||||
<span style="color: #228b22;">real</span>(<span style="color: #008b8b;">C_DOUBLE</span>) ::<span style="color: #a0522d;"> val</span>
|
||||
<span style="color: #a020f0;">end function</span> <span style="color: #0000ff;">qmckl_probe</span>
|
||||
|
||||
<span style="color: #228b22;">logical</span>(<span style="color: #008b8b;">c_bool</span>)<span style="color: #a0522d;"> function qmckl_probe_check </span><span style="color: #a020f0;">&</span>
|
||||
(testName, varName, val, expectedValue, accuracyTarget) <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">bind</span>(C, name=<span style="color: #8b2252;">"qmckl_probe_check_f"</span>)
|
||||
|
||||
<span style="color: #a020f0;">use</span>, <span style="color: #a020f0;">intrinsic</span> :: <span style="color: #0000ff;">iso_c_binding</span>
|
||||
<span style="color: #a020f0;">import</span>
|
||||
<span style="color: #a020f0;">implicit</span> <span style="color: #228b22;">none</span>
|
||||
|
||||
<span style="color: #228b22;">character</span>(<span style="color: #008b8b;">C_CHAR</span>), <span style="color: #a020f0;">dimension</span>(*) ::<span style="color: #a0522d;"> testName</span>
|
||||
<span style="color: #228b22;">character</span>(<span style="color: #008b8b;">C_CHAR</span>), <span style="color: #a020f0;">dimension</span>(*) ::<span style="color: #a0522d;"> varName</span>
|
||||
|
||||
<span style="color: #228b22;">real</span>(<span style="color: #008b8b;">C_DOUBLE</span>) ::<span style="color: #a0522d;"> val</span>
|
||||
<span style="color: #228b22;">real</span>(<span style="color: #008b8b;">C_DOUBLE</span>) ::<span style="color: #a0522d;"> expectedValue</span>
|
||||
<span style="color: #228b22;">real</span>(<span style="color: #008b8b;">C_DOUBLE</span>) ::<span style="color: #a0522d;"> accuracyTarget</span>
|
||||
<span style="color: #a020f0;">end function</span> <span style="color: #0000ff;">qmckl_probe_check</span>
|
||||
|
||||
<span style="color: #228b22;">logical</span>(<span style="color: #008b8b;">c_bool</span>)<span style="color: #a0522d;"> function qmckl_probe_check_relative </span><span style="color: #a020f0;">&</span>
|
||||
(testName, varName, val, expectedValue, accuracyTarget) <span style="color: #a020f0;">&</span>
|
||||
<span style="color: #a020f0;">bind</span>(C, name=<span style="color: #8b2252;">"qmckl_probe_check_relative_f"</span>)
|
||||
|
||||
<span style="color: #a020f0;">use</span>, <span style="color: #a020f0;">intrinsic</span> :: <span style="color: #0000ff;">iso_c_binding</span>
|
||||
<span style="color: #a020f0;">import</span>
|
||||
<span style="color: #a020f0;">implicit</span> <span style="color: #228b22;">none</span>
|
||||
|
||||
<span style="color: #228b22;">character</span>(<span style="color: #008b8b;">C_CHAR</span>), <span style="color: #a020f0;">dimension</span>(*) ::<span style="color: #a0522d;"> testName</span>
|
||||
<span style="color: #228b22;">character</span>(<span style="color: #008b8b;">C_CHAR</span>), <span style="color: #a020f0;">dimension</span>(*) ::<span style="color: #a0522d;"> varName</span>
|
||||
|
||||
<span style="color: #228b22;">real</span>(<span style="color: #008b8b;">C_DOUBLE</span>) ::<span style="color: #a0522d;"> val</span>
|
||||
<span style="color: #228b22;">real</span>(<span style="color: #008b8b;">C_DOUBLE</span>) ::<span style="color: #a0522d;"> expectedValue</span>
|
||||
<span style="color: #228b22;">real</span>(<span style="color: #008b8b;">C_DOUBLE</span>) ::<span style="color: #a0522d;"> accuracyTarget</span>
|
||||
<span style="color: #a020f0;">end function</span> <span style="color: #0000ff;">qmckl_probe_check_relative</span>
|
||||
<span style="color: #a020f0;">end interface</span>
|
||||
<span style="color: #a020f0;">end module</span> <span style="color: #0000ff;">qmckl_verificarlo_f</span>
|
||||
</pre>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX CoE</p>
|
||||
<p class="date">Created: 2021-10-14 Thu 19:47</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
Loading…
x
Reference in New Issue
Block a user