1
0
mirror of https://github.com/TREX-CoE/trexio.git synced 2024-06-14 17:25:43 +02:00

Compare commits

...

4 Commits

Author SHA1 Message Date
q-posev
4bf132330b Deploying to gh-pages from @ TREX-CoE/trexio@1117a5b407 🚀 2024-05-13 15:07:04 +00:00
q-posev
c5353f0786 Deploying to gh-pages from @ TREX-CoE/trexio@9e262bada9 🚀 2024-05-13 15:06:17 +00:00
q-posev
884dd3e173 Deploying to gh-pages from @ TREX-CoE/trexio@5cdc351d56 🚀 2024-05-13 13:55:47 +00:00
q-posev
8ecd4427fd Deploying to gh-pages from @ TREX-CoE/trexio@cffdef1dc5 🚀 2024-05-13 13:15:52 +00:00
9 changed files with 733 additions and 761 deletions

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2024-03-22 Fri 14:46 -->
<!-- 2024-05-13 Mon 15:07 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>TREXIO source code documentation</title>
@ -406,7 +406,7 @@ The TREXIO library is licensed under the open-source 3-clause BSD license.
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX-CoE</p>
<p class="date">Created: 2024-03-22 Fri 14:46</p>
<p class="date">Created: 2024-05-13 Mon 15:07</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2024-03-22 Fri 14:46 -->
<!-- 2024-05-13 Mon 15:07 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Examples</title>
@ -346,61 +346,61 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org987e4fa">1. Writing nuclear coordinates</a>
<li><a href="#org5f24eb8">1. Writing nuclear coordinates</a>
<ul>
<li><a href="#org824f665">1.1. C</a></li>
<li><a href="#org6d7311a">1.2. Python</a></li>
<li><a href="#org89331ff">1.3. Fortran</a></li>
<li><a href="#org4f514d9">1.1. C</a></li>
<li><a href="#org41335de">1.2. Python</a></li>
<li><a href="#orgbd1f672">1.3. Fortran</a></li>
</ul>
</li>
<li><a href="#orgf4b95b0">2. Accessing sparse quantities (integrals)</a>
<li><a href="#org1a08df9">2. Accessing sparse quantities (integrals)</a>
<ul>
<li><a href="#orgb211c84">2.1. Fortran</a>
<li><a href="#org69415e6">2.1. Fortran</a>
<ul>
<li><a href="#orgfc497ca">2.1.1. Declare Temporary variables</a></li>
<li><a href="#orgc0f803d">2.1.2. Obtain the name of the TREXIO file from the command line, and open it for reading</a></li>
<li><a href="#org0bd82ef">2.1.3. Read the nuclear repulsion energy</a></li>
<li><a href="#orge781dc4">2.1.4. Read the number of molecular orbitals</a></li>
<li><a href="#orgd24079e">2.1.5. Allocate memory</a></li>
<li><a href="#orga047f0c">2.1.6. Read one-electron quantities</a></li>
<li><a href="#org1854afe">2.1.7. Read two-electron quantities</a>
<li><a href="#org68b5b55">2.1.1. Declare Temporary variables</a></li>
<li><a href="#org156c2ba">2.1.2. Obtain the name of the TREXIO file from the command line, and open it for reading</a></li>
<li><a href="#org1446d3f">2.1.3. Read the nuclear repulsion energy</a></li>
<li><a href="#org2427fc8">2.1.4. Read the number of molecular orbitals</a></li>
<li><a href="#orgeafbdc5">2.1.5. Allocate memory</a></li>
<li><a href="#org0a4b3d8">2.1.6. Read one-electron quantities</a></li>
<li><a href="#orgc6ec2c5">2.1.7. Read two-electron quantities</a>
<ul>
<li><a href="#org1943d44">2.1.7.1. Electron repulsion integrals</a></li>
<li><a href="#org414749d">2.1.7.2. Reduced density matrix</a></li>
<li><a href="#orgd02b987">2.1.7.1. Electron repulsion integrals</a></li>
<li><a href="#orgfee9265">2.1.7.2. Reduced density matrix</a></li>
</ul>
</li>
<li><a href="#org305fa57">2.1.8. Compute the energy</a></li>
<li><a href="#orgefdea31">2.1.9. Terminate</a></li>
<li><a href="#org237c631">2.1.8. Compute the energy</a></li>
<li><a href="#org2f2bb3f">2.1.9. Terminate</a></li>
</ul>
</li>
<li><a href="#orged00879">2.2. Python</a>
<li><a href="#org3b759ba">2.2. Python</a>
<ul>
<li><a href="#org1850d9f">2.2.1. Obtain the name of the TREXIO file from the command line, and open it for reading</a></li>
<li><a href="#orgb33e2a0">2.2.2. Read the nuclear repulsion energy</a></li>
<li><a href="#orgb63f76f">2.2.3. Read the number of molecular orbitals</a></li>
<li><a href="#org9d937a3">2.2.4. Read one-electron quantities</a></li>
<li><a href="#org045b896">2.2.5. Read two-electron quantities</a>
<li><a href="#orgceba887">2.2.1. Obtain the name of the TREXIO file from the command line, and open it for reading</a></li>
<li><a href="#orgd26d66a">2.2.2. Read the nuclear repulsion energy</a></li>
<li><a href="#org326f2b7">2.2.3. Read the number of molecular orbitals</a></li>
<li><a href="#orge8704fd">2.2.4. Read one-electron quantities</a></li>
<li><a href="#org3b36d0b">2.2.5. Read two-electron quantities</a>
<ul>
<li><a href="#org7e1df20">2.2.5.1. Electron repulsion integrals</a></li>
<li><a href="#orgfe66b43">2.2.5.2. Reduced density matrix</a></li>
<li><a href="#org2cc5166">2.2.5.1. Electron repulsion integrals</a></li>
<li><a href="#orgc5ed545">2.2.5.2. Reduced density matrix</a></li>
</ul>
</li>
<li><a href="#orgf56696a">2.2.6. Compute the energy</a></li>
<li><a href="#org387137f">2.2.6. Compute the energy</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#org66cc410">3. Reading determinants</a>
<li><a href="#org80c679b">3. Reading determinants</a>
<ul>
<li><a href="#org8d64da0">3.1. Fortran</a></li>
<li><a href="#orgb2f5a37">3.1. Fortran</a></li>
</ul>
</li>
</ul>
</div>
</div>
<div id="outline-container-org987e4fa" class="outline-2">
<h2 id="org987e4fa"><span class="section-number-2">1</span> Writing nuclear coordinates</h2>
<div id="outline-container-org5f24eb8" class="outline-2">
<h2 id="org5f24eb8"><span class="section-number-2">1</span> Writing nuclear coordinates</h2>
<div class="outline-text-2" id="text-1">
<p>
Here is a demonstration of how to use TREXIO to write the nuclear
@ -410,8 +410,8 @@ as well as the necessary TREXIO functions to perform these actions.
</p>
</div>
<div id="outline-container-org824f665" class="outline-3">
<h3 id="org824f665"><span class="section-number-3">1.1</span> C</h3>
<div id="outline-container-org4f514d9" class="outline-3">
<h3 id="org4f514d9"><span class="section-number-3">1.1</span> C</h3>
<div class="outline-text-3" id="text-1-1">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #483d8b;">#include</span> <span style="color: #8b2252;">&lt;stdio.h&gt;</span>
@ -461,8 +461,8 @@ as well as the necessary TREXIO functions to perform these actions.
</div>
</div>
<div id="outline-container-org6d7311a" class="outline-3">
<h3 id="org6d7311a"><span class="section-number-3">1.2</span> Python</h3>
<div id="outline-container-org41335de" class="outline-3">
<h3 id="org41335de"><span class="section-number-3">1.2</span> Python</h3>
<div class="outline-text-3" id="text-1-2">
<p>
This code uses the TREXIO Python binding to create a new TREXIO file named
@ -509,8 +509,8 @@ coordinates of the system.
</div>
</div>
<div id="outline-container-org89331ff" class="outline-3">
<h3 id="org89331ff"><span class="section-number-3">1.3</span> Fortran</h3>
<div id="outline-container-orgbd1f672" class="outline-3">
<h3 id="orgbd1f672"><span class="section-number-3">1.3</span> Fortran</h3>
<div class="outline-text-3" id="text-1-3">
<div class="org-src-container">
<pre class="src src-f90"><span style="color: #a020f0;">program</span> <span style="color: #0000ff;">trexio_water</span>
@ -567,12 +567,12 @@ coordinates of the system.
</div>
</div>
<div id="outline-container-orgf4b95b0" class="outline-2">
<h2 id="orgf4b95b0"><span class="section-number-2">2</span> Accessing sparse quantities (integrals)</h2>
<div id="outline-container-org1a08df9" class="outline-2">
<h2 id="org1a08df9"><span class="section-number-2">2</span> Accessing sparse quantities (integrals)</h2>
<div class="outline-text-2" id="text-2">
</div>
<div id="outline-container-orgb211c84" class="outline-3">
<h3 id="orgb211c84"><span class="section-number-3">2.1</span> Fortran</h3>
<div id="outline-container-org69415e6" class="outline-3">
<h3 id="org69415e6"><span class="section-number-3">2.1</span> Fortran</h3>
<div class="outline-text-3" id="text-2-1">
<div class="org-src-container">
<pre class="src src-f90"><span style="color: #a020f0;">program</span> <span style="color: #0000ff;">print_energy</span>
@ -618,8 +618,8 @@ One needs to read from the TREXIO file:
</div>
</div>
<div id="outline-container-orgfc497ca" class="outline-4">
<h4 id="orgfc497ca"><span class="section-number-4">2.1.1</span> Declare Temporary variables</h4>
<div id="outline-container-org68b5b55" class="outline-4">
<h4 id="org68b5b55"><span class="section-number-4">2.1.1</span> Declare Temporary variables</h4>
<div class="outline-text-4" id="text-2-1-1">
<div class="org-src-container">
<pre class="src src-f90"><span style="color: #228b22;">integer</span> ::<span style="color: #a0522d;"> i, j, k, l, m</span>
@ -634,8 +634,8 @@ One needs to read from the TREXIO file:
</div>
</div>
<div id="outline-container-orgc0f803d" class="outline-4">
<h4 id="orgc0f803d"><span class="section-number-4">2.1.2</span> Obtain the name of the TREXIO file from the command line, and open it for reading</h4>
<div id="outline-container-org156c2ba" class="outline-4">
<h4 id="org156c2ba"><span class="section-number-4">2.1.2</span> Obtain the name of the TREXIO file from the command line, and open it for reading</h4>
<div class="outline-text-4" id="text-2-1-2">
<div class="org-src-container">
<pre class="src src-f90"><span style="color: #a020f0;">call</span> <span style="color: #0000ff;">getarg</span>(1, filename)
@ -651,8 +651,8 @@ f = trexio_open (filename, <span style="color: #8b2252;">'r'</span>, TREXIO_AUTO
</div>
</div>
<div id="outline-container-org0bd82ef" class="outline-4">
<h4 id="org0bd82ef"><span class="section-number-4">2.1.3</span> Read the nuclear repulsion energy</h4>
<div id="outline-container-org1446d3f" class="outline-4">
<h4 id="org1446d3f"><span class="section-number-4">2.1.3</span> Read the nuclear repulsion energy</h4>
<div class="outline-text-4" id="text-2-1-3">
<div class="org-src-container">
<pre class="src src-f90">rc = trexio_read_nucleus_repulsion(f, E_nn)
@ -666,8 +666,8 @@ f = trexio_open (filename, <span style="color: #8b2252;">'r'</span>, TREXIO_AUTO
</div>
</div>
<div id="outline-container-orge781dc4" class="outline-4">
<h4 id="orge781dc4"><span class="section-number-4">2.1.4</span> Read the number of molecular orbitals</h4>
<div id="outline-container-org2427fc8" class="outline-4">
<h4 id="org2427fc8"><span class="section-number-4">2.1.4</span> Read the number of molecular orbitals</h4>
<div class="outline-text-4" id="text-2-1-4">
<div class="org-src-container">
<pre class="src src-f90">rc = trexio_read_mo_num(f, n)
@ -681,8 +681,8 @@ f = trexio_open (filename, <span style="color: #8b2252;">'r'</span>, TREXIO_AUTO
</div>
</div>
<div id="outline-container-orgd24079e" class="outline-4">
<h4 id="orgd24079e"><span class="section-number-4">2.1.5</span> Allocate memory</h4>
<div id="outline-container-orgeafbdc5" class="outline-4">
<h4 id="orgeafbdc5"><span class="section-number-4">2.1.5</span> Allocate memory</h4>
<div class="outline-text-4" id="text-2-1-5">
<div class="org-src-container">
<pre class="src src-f90"><span style="color: #a020f0;">allocate</span>( D(n,n), h0(n,n) )
@ -694,8 +694,8 @@ W(:,:,:,:) = 0.d0
</div>
</div>
<div id="outline-container-orga047f0c" class="outline-4">
<h4 id="orga047f0c"><span class="section-number-4">2.1.6</span> Read one-electron quantities</h4>
<div id="outline-container-org0a4b3d8" class="outline-4">
<h4 id="org0a4b3d8"><span class="section-number-4">2.1.6</span> Read one-electron quantities</h4>
<div class="outline-text-4" id="text-2-1-6">
<div class="org-src-container">
<pre class="src src-f90">rc = trexio_has_mo_1e_int_core_hamiltonian(f)
@ -727,8 +727,8 @@ rc = trexio_read_rdm_1e(f, D)
</div>
</div>
<div id="outline-container-org1854afe" class="outline-4">
<h4 id="org1854afe"><span class="section-number-4">2.1.7</span> Read two-electron quantities</h4>
<div id="outline-container-orgc6ec2c5" class="outline-4">
<h4 id="orgc6ec2c5"><span class="section-number-4">2.1.7</span> Read two-electron quantities</h4>
<div class="outline-text-4" id="text-2-1-7">
<p>
Reading is done with OpenMP. Each thread reads its own buffer, and
@ -744,8 +744,8 @@ to be protected in the critical section when modified.
</p>
</div>
<div id="outline-container-org1943d44" class="outline-5">
<h5 id="org1943d44"><span class="section-number-5">2.1.7.1</span> Electron repulsion integrals</h5>
<div id="outline-container-orgd02b987" class="outline-5">
<h5 id="orgd02b987"><span class="section-number-5">2.1.7.1</span> Electron repulsion integrals</h5>
<div class="outline-text-5" id="text-2-1-7-1">
<div class="org-src-container">
<pre class="src src-f90">rc = trexio_has_mo_2e_int_eri(f)
@ -794,8 +794,8 @@ icount = BUFSIZE
</div>
</div>
<div id="outline-container-org414749d" class="outline-5">
<h5 id="org414749d"><span class="section-number-5">2.1.7.2</span> Reduced density matrix</h5>
<div id="outline-container-orgfee9265" class="outline-5">
<h5 id="orgfee9265"><span class="section-number-5">2.1.7.2</span> Reduced density matrix</h5>
<div class="outline-text-5" id="text-2-1-7-2">
<div class="org-src-container">
<pre class="src src-f90">rc = trexio_has_rdm_2e(f)
@ -839,8 +839,8 @@ icount = bufsize
</div>
</div>
<div id="outline-container-org305fa57" class="outline-4">
<h4 id="org305fa57"><span class="section-number-4">2.1.8</span> Compute the energy</h4>
<div id="outline-container-org237c631" class="outline-4">
<h4 id="org237c631"><span class="section-number-4">2.1.8</span> Compute the energy</h4>
<div class="outline-text-4" id="text-2-1-8">
<p>
When the orbitals are real, we can use
@ -886,8 +886,8 @@ E = E + E_nn
</div>
</div>
<div id="outline-container-orgefdea31" class="outline-4">
<h4 id="orgefdea31"><span class="section-number-4">2.1.9</span> Terminate</h4>
<div id="outline-container-org2f2bb3f" class="outline-4">
<h4 id="org2f2bb3f"><span class="section-number-4">2.1.9</span> Terminate</h4>
<div class="outline-text-4" id="text-2-1-9">
<div class="org-src-container">
<pre class="src src-f90"> <span style="color: #a020f0;">deallocate</span>( D, h0, G, W )
@ -899,8 +899,8 @@ E = E + E_nn
</div>
</div>
<div id="outline-container-orged00879" class="outline-3">
<h3 id="orged00879"><span class="section-number-3">2.2</span> Python</h3>
<div id="outline-container-org3b759ba" class="outline-3">
<h3 id="org3b759ba"><span class="section-number-3">2.2</span> Python</h3>
<div class="outline-text-3" id="text-2-2">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a020f0;">import</span> sys
@ -934,8 +934,8 @@ One needs to read from the TREXIO file:
</dl>
</div>
<div id="outline-container-org1850d9f" class="outline-4">
<h4 id="org1850d9f"><span class="section-number-4">2.2.1</span> Obtain the name of the TREXIO file from the command line, and open it for reading</h4>
<div id="outline-container-orgceba887" class="outline-4">
<h4 id="orgceba887"><span class="section-number-4">2.2.1</span> Obtain the name of the TREXIO file from the command line, and open it for reading</h4>
<div class="outline-text-4" id="text-2-2-1">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a0522d;">filename</span> = sys.argv[1]
@ -945,8 +945,8 @@ One needs to read from the TREXIO file:
</div>
</div>
<div id="outline-container-orgb33e2a0" class="outline-4">
<h4 id="orgb33e2a0"><span class="section-number-4">2.2.2</span> Read the nuclear repulsion energy</h4>
<div id="outline-container-orgd26d66a" class="outline-4">
<h4 id="orgd26d66a"><span class="section-number-4">2.2.2</span> Read the nuclear repulsion energy</h4>
<div class="outline-text-4" id="text-2-2-2">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a0522d;">E_nn</span> = trexio.read_nucleus_repulsion(f)
@ -955,8 +955,8 @@ One needs to read from the TREXIO file:
</div>
</div>
<div id="outline-container-orgb63f76f" class="outline-4">
<h4 id="orgb63f76f"><span class="section-number-4">2.2.3</span> Read the number of molecular orbitals</h4>
<div id="outline-container-org326f2b7" class="outline-4">
<h4 id="org326f2b7"><span class="section-number-4">2.2.3</span> Read the number of molecular orbitals</h4>
<div class="outline-text-4" id="text-2-2-3">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a0522d;">n</span> = trexio.read_mo_num(f)
@ -965,8 +965,8 @@ One needs to read from the TREXIO file:
</div>
</div>
<div id="outline-container-org9d937a3" class="outline-4">
<h4 id="org9d937a3"><span class="section-number-4">2.2.4</span> Read one-electron quantities</h4>
<div id="outline-container-orge8704fd" class="outline-4">
<h4 id="orge8704fd"><span class="section-number-4">2.2.4</span> Read one-electron quantities</h4>
<div class="outline-text-4" id="text-2-2-4">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a020f0;">if</span> <span style="color: #a020f0;">not</span> trexio.has_mo_1e_int_core_hamiltonian(f):
@ -985,12 +985,12 @@ One needs to read from the TREXIO file:
</div>
</div>
<div id="outline-container-org045b896" class="outline-4">
<h4 id="org045b896"><span class="section-number-4">2.2.5</span> Read two-electron quantities</h4>
<div id="outline-container-org3b36d0b" class="outline-4">
<h4 id="org3b36d0b"><span class="section-number-4">2.2.5</span> Read two-electron quantities</h4>
<div class="outline-text-4" id="text-2-2-5">
</div>
<div id="outline-container-org7e1df20" class="outline-5">
<h5 id="org7e1df20"><span class="section-number-5">2.2.5.1</span> Electron repulsion integrals</h5>
<div id="outline-container-org2cc5166" class="outline-5">
<h5 id="org2cc5166"><span class="section-number-5">2.2.5.1</span> Electron repulsion integrals</h5>
<div class="outline-text-5" id="text-2-2-5-1">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a020f0;">if</span> <span style="color: #a020f0;">not</span> trexio.has_mo_2e_int_eri(f):
@ -1020,8 +1020,8 @@ One needs to read from the TREXIO file:
</div>
</div>
<div id="outline-container-orgfe66b43" class="outline-5">
<h5 id="orgfe66b43"><span class="section-number-5">2.2.5.2</span> Reduced density matrix</h5>
<div id="outline-container-orgc5ed545" class="outline-5">
<h5 id="orgc5ed545"><span class="section-number-5">2.2.5.2</span> Reduced density matrix</h5>
<div class="outline-text-5" id="text-2-2-5-2">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a020f0;">if</span> <span style="color: #a020f0;">not</span> trexio.has_rdm_2e(f):
@ -1043,8 +1043,8 @@ One needs to read from the TREXIO file:
</div>
</div>
<div id="outline-container-orgf56696a" class="outline-4">
<h4 id="orgf56696a"><span class="section-number-4">2.2.6</span> Compute the energy</h4>
<div id="outline-container-org387137f" class="outline-4">
<h4 id="org387137f"><span class="section-number-4">2.2.6</span> Compute the energy</h4>
<div class="outline-text-4" id="text-2-2-6">
<p>
When the orbitals are real, we can use
@ -1073,12 +1073,12 @@ E &=& E_{\text{NN}} + \sum_{ij} \gamma_{ij}\, \langle j | h | i \rangle\,
</div>
</div>
<div id="outline-container-org66cc410" class="outline-2">
<h2 id="org66cc410"><span class="section-number-2">3</span> Reading determinants</h2>
<div id="outline-container-org80c679b" class="outline-2">
<h2 id="org80c679b"><span class="section-number-2">3</span> Reading determinants</h2>
<div class="outline-text-2" id="text-3">
</div>
<div id="outline-container-org8d64da0" class="outline-3">
<h3 id="org8d64da0"><span class="section-number-3">3.1</span> Fortran</h3>
<div id="outline-container-orgb2f5a37" class="outline-3">
<h3 id="orgb2f5a37"><span class="section-number-3">3.1</span> Fortran</h3>
<div class="outline-text-3" id="text-3-1">
<div class="org-src-container">
<pre class="src src-f90"><span style="color: #a020f0;">program</span> <span style="color: #0000ff;">test</span>
@ -1157,7 +1157,7 @@ end
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX-CoE</p>
<p class="date">Created: 2024-03-22 Fri 14:46</p>
<p class="date">Created: 2024-05-13 Mon 15:07</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2024-03-22 Fri 14:46 -->
<!-- 2024-05-13 Mon 15:07 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>TREXIO source code documentation</title>
@ -406,7 +406,7 @@ The TREXIO library is licensed under the open-source 3-clause BSD license.
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX-CoE</p>
<p class="date">Created: 2024-03-22 Fri 14:46</p>
<p class="date">Created: 2024-05-13 Mon 15:07</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2024-03-22 Fri 14:46 -->
<!-- 2024-05-13 Mon 15:07 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Motivation</title>
@ -384,7 +384,7 @@ still lacking, and the purpose of the TREXIO library is to fill this gap.
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX-CoE</p>
<p class="date">Created: 2024-03-22 Fri 14:46</p>
<p class="date">Created: 2024-05-13 Mon 15:07</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2024-03-22 Fri 14:46 -->
<!-- 2024-05-13 Mon 15:07 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>The TREXIO library</title>
@ -346,19 +346,19 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#orgb3f7d06">1. Format specification</a>
<li><a href="#orgc351f47">1. Format specification</a>
<ul>
<li><a href="#org53e8951">1.1. Organization of the data</a></li>
<li><a href="#orga907b6b">1.2. Data types</a></li>
<li><a href="#orgf93a5f8">1.1. Organization of the data</a></li>
<li><a href="#org1f58285">1.2. Data types</a></li>
</ul>
</li>
<li><a href="#org4970b5c">2. The TREXIO library</a>
<li><a href="#orga1148dc">2. The TREXIO library</a>
<ul>
<li><a href="#org8109a11">2.1. The front-end</a></li>
<li><a href="#org528d29a">2.2. The back-end</a></li>
<li><a href="#org732c621">2.3. Supported languages</a></li>
<li><a href="#orgc0c195c">2.4. Source code generation and documentation</a></li>
<li><a href="#orgc5e179f">2.5. Availability</a></li>
<li><a href="#org7717a24">2.1. The front-end</a></li>
<li><a href="#org1637dad">2.2. The back-end</a></li>
<li><a href="#org61c6f10">2.3. Supported languages</a></li>
<li><a href="#orgfb590dd">2.4. Source code generation and documentation</a></li>
<li><a href="#orga189de1">2.5. Availability</a></li>
</ul>
</li>
</ul>
@ -366,8 +366,8 @@ for the JavaScript code in this tag.
</div>
<div id="outline-container-orgb3f7d06" class="outline-2">
<h2 id="orgb3f7d06"><span class="section-number-2">1</span> Format specification</h2>
<div id="outline-container-orgc351f47" class="outline-2">
<h2 id="orgc351f47"><span class="section-number-2">1</span> Format specification</h2>
<div class="outline-text-2" id="text-1">
</td>
<td>
@ -388,8 +388,8 @@ calculation are stored.
</p>
</div>
<div id="outline-container-org53e8951" class="outline-3">
<h3 id="org53e8951"><span class="section-number-3">1.1</span> Organization of the data</h3>
<div id="outline-container-orgf93a5f8" class="outline-3">
<h3 id="orgf93a5f8"><span class="section-number-3">1.1</span> Organization of the data</h3>
<div class="outline-text-3" id="text-1-1">
<p>
The data in TREXIO are organized into <b>groups</b>, each containing
@ -405,8 +405,8 @@ number of nuclei.
</div>
</div>
<div id="outline-container-orga907b6b" class="outline-3">
<h3 id="orga907b6b"><span class="section-number-3">1.2</span> Data types</h3>
<div id="outline-container-org1f58285" class="outline-3">
<h3 id="org1f58285"><span class="section-number-3">1.2</span> Data types</h3>
<div class="outline-text-3" id="text-1-2">
<p>
So that TREXIO can be used in any language, we use a limited number
@ -473,8 +473,8 @@ with the same name suffixed by <code>_im</code>.
</div>
</div>
<div id="outline-container-org4970b5c" class="outline-2">
<h2 id="org4970b5c"><span class="section-number-2">2</span> The TREXIO library</h2>
<div id="outline-container-orga1148dc" class="outline-2">
<h2 id="orga1148dc"><span class="section-number-2">2</span> The TREXIO library</h2>
<div class="outline-text-2" id="text-2">
</td>
<td>
@ -497,8 +497,8 @@ interface between the library and the physical storage.
</p>
</div>
<div id="outline-container-org8109a11" class="outline-3">
<h3 id="org8109a11"><span class="section-number-3">2.1</span> The front-end</h3>
<div id="outline-container-org7717a24" class="outline-3">
<h3 id="org7717a24"><span class="section-number-3">2.1</span> The front-end</h3>
<div class="outline-text-3" id="text-2-1">
<p>
By using the TREXIO library, users can store and extract data in a
@ -539,8 +539,8 @@ made are safe.
</div>
</div>
<div id="outline-container-org528d29a" class="outline-3">
<h3 id="org528d29a"><span class="section-number-3">2.2</span> The back-end</h3>
<div id="outline-container-org1637dad" class="outline-3">
<h3 id="org1637dad"><span class="section-number-3">2.2</span> The back-end</h3>
<div class="outline-text-3" id="text-2-2">
<p>
At present, TREXIO supports two back-ends: one relying only on the
@ -610,8 +610,8 @@ repositories.
</div>
</div>
<div id="outline-container-org732c621" class="outline-3">
<h3 id="org732c621"><span class="section-number-3">2.3</span> Supported languages</h3>
<div id="outline-container-org61c6f10" class="outline-3">
<h3 id="org61c6f10"><span class="section-number-3">2.3</span> Supported languages</h3>
<div class="outline-text-3" id="text-2-3">
<p>
One of the main benefits of using C as the interface for a library is
@ -668,8 +668,8 @@ via the Binder platform.
</div>
<div id="outline-container-orgc0c195c" class="outline-3">
<h3 id="orgc0c195c"><span class="section-number-3">2.4</span> Source code generation and documentation</h3>
<div id="outline-container-orgfb590dd" class="outline-3">
<h3 id="orgfb590dd"><span class="section-number-3">2.4</span> Source code generation and documentation</h3>
<div class="outline-text-3" id="text-2-4">
<p>
Source code generation is a valuable technique that can significantly
@ -723,8 +723,8 @@ regardless of their programming skills.
</div>
</div>
<div id="outline-container-orgc5e179f" class="outline-3">
<h3 id="orgc5e179f"><span class="section-number-3">2.5</span> Availability</h3>
<div id="outline-container-orga189de1" class="outline-3">
<h3 id="orga189de1"><span class="section-number-3">2.5</span> Availability</h3>
<div class="outline-text-3" id="text-2-5">
<p>
The TREXIO library is designed to be portable and easy to install
@ -754,7 +754,7 @@ are available in Ubuntu 23.04.
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX-CoE</p>
<p class="date">Created: 2024-03-22 Fri 14:46</p>
<p class="date">Created: 2024-05-13 Mon 15:07</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

File diff suppressed because it is too large Load Diff

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2024-03-22 Fri 14:46 -->
<!-- 2024-05-13 Mon 15:06 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>HDF5 back end</title>
@ -324,25 +324,25 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org4fb494f">1. Template for HDF5 definitions</a></li>
<li><a href="#org3682b83">2. Template for HDF5 structures</a></li>
<li><a href="#org46b44c0">3. Template for HDF5 init/deinit</a></li>
<li><a href="#org0b6f6dc">4. Template for HDF5 has a group</a></li>
<li><a href="#org1cf7a6c">5. Template for HDF5 has/read/write a numerical attribute</a></li>
<li><a href="#org99f5f16">6. Template for HDF5 has/read/write a dataset of numerical data</a></li>
<li><a href="#org701fb9e">7. Template for HDF5 has/read/write a dataset of sparse data</a></li>
<li><a href="#orgbe0f710">8. Template for HDF5 has/read/write a dataset of buffered vectors</a></li>
<li><a href="#org8815ab5">9. Template for HDF5 has/read/write a dataset of strings</a></li>
<li><a href="#orgde1b27b">10. Template for HDF5 has/read/write a string attribute</a></li>
<li><a href="#org7ffbe90">11. Template for HDF5 delete a group (UNSAFE mode)</a></li>
<li><a href="#orgd4277ca">12. Source code for the determinant part</a></li>
<li><a href="#orge2c8fca">13. Helper functions</a></li>
<li><a href="#orgbb4b013">1. Template for HDF5 definitions</a></li>
<li><a href="#org17cc0ca">2. Template for HDF5 structures</a></li>
<li><a href="#orgdc22a83">3. Template for HDF5 init/deinit</a></li>
<li><a href="#org10f7136">4. Template for HDF5 has a group</a></li>
<li><a href="#orgb20595e">5. Template for HDF5 has/read/write a numerical attribute</a></li>
<li><a href="#org8149025">6. Template for HDF5 has/read/write a dataset of numerical data</a></li>
<li><a href="#org6f1a830">7. Template for HDF5 has/read/write a dataset of sparse data</a></li>
<li><a href="#org150b63f">8. Template for HDF5 has/read/write a dataset of buffered vectors</a></li>
<li><a href="#orgc636c2e">9. Template for HDF5 has/read/write a dataset of strings</a></li>
<li><a href="#orgf50e082">10. Template for HDF5 has/read/write a string attribute</a></li>
<li><a href="#org61b7c50">11. Template for HDF5 delete a group (UNSAFE mode)</a></li>
<li><a href="#orge17cf8e">12. Source code for the determinant part</a></li>
<li><a href="#org24e810a">13. Helper functions</a></li>
</ul>
</div>
</div>
<div id="outline-container-org4fb494f" class="outline-2">
<h2 id="org4fb494f"><span class="section-number-2">1</span> Template for HDF5 definitions</h2>
<div id="outline-container-orgbb4b013" class="outline-2">
<h2 id="orgbb4b013"><span class="section-number-2">1</span> Template for HDF5 definitions</h2>
<div class="outline-text-2" id="text-1">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #483d8b;">#define</span> $GROUP$_GROUP_NAME <span style="color: #8b2252;">"$group$"</span>
@ -354,8 +354,8 @@ for the JavaScript code in this tag.
</div>
</div>
<div id="outline-container-org3682b83" class="outline-2">
<h2 id="org3682b83"><span class="section-number-2">2</span> Template for HDF5 structures</h2>
<div id="outline-container-org17cc0ca" class="outline-2">
<h2 id="org17cc0ca"><span class="section-number-2">2</span> Template for HDF5 structures</h2>
<div class="outline-text-2" id="text-2">
<p>
Polymorphism of the <code>trexio_t</code> type is handled by ensuring that the
@ -375,8 +375,8 @@ corresponding types for all back ends can be safely casted to
</div>
</div>
<div id="outline-container-org46b44c0" class="outline-2">
<h2 id="org46b44c0"><span class="section-number-2">3</span> Template for HDF5 init/deinit</h2>
<div id="outline-container-orgdc22a83" class="outline-2">
<h2 id="orgdc22a83"><span class="section-number-2">3</span> Template for HDF5 init/deinit</h2>
<div class="outline-text-2" id="text-3">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -496,8 +496,8 @@ corresponding types for all back ends can be safely casted to
</div>
</div>
<div id="outline-container-org0b6f6dc" class="outline-2">
<h2 id="org0b6f6dc"><span class="section-number-2">4</span> Template for HDF5 has a group</h2>
<div id="outline-container-org10f7136" class="outline-2">
<h2 id="org10f7136"><span class="section-number-2">4</span> Template for HDF5 has a group</h2>
<div class="outline-text-2" id="text-4">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -527,8 +527,8 @@ corresponding types for all back ends can be safely casted to
</div>
</div>
<div id="outline-container-org1cf7a6c" class="outline-2">
<h2 id="org1cf7a6c"><span class="section-number-2">5</span> Template for HDF5 has/read/write a numerical attribute</h2>
<div id="outline-container-orgb20595e" class="outline-2">
<h2 id="orgb20595e"><span class="section-number-2">5</span> Template for HDF5 has/read/write a numerical attribute</h2>
<div class="outline-text-2" id="text-5">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -632,8 +632,8 @@ corresponding types for all back ends can be safely casted to
</div>
</div>
<div id="outline-container-org99f5f16" class="outline-2">
<h2 id="org99f5f16"><span class="section-number-2">6</span> Template for HDF5 has/read/write a dataset of numerical data</h2>
<div id="outline-container-org8149025" class="outline-2">
<h2 id="org8149025"><span class="section-number-2">6</span> Template for HDF5 has/read/write a dataset of numerical data</h2>
<div class="outline-text-2" id="text-6">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -770,8 +770,8 @@ corresponding types for all back ends can be safely casted to
</div>
</div>
<div id="outline-container-org701fb9e" class="outline-2">
<h2 id="org701fb9e"><span class="section-number-2">7</span> Template for HDF5 has/read/write a dataset of sparse data</h2>
<div id="outline-container-org6f1a830" class="outline-2">
<h2 id="org6f1a830"><span class="section-number-2">7</span> Template for HDF5 has/read/write a dataset of sparse data</h2>
<div class="outline-text-2" id="text-7">
<p>
Sparse data is stored using extensible datasets of HDF5. Extensibility is required
@ -976,8 +976,8 @@ due to the fact that the sparse data will be written in chunks of user-defined s
</div>
</div>
<div id="outline-container-orgbe0f710" class="outline-2">
<h2 id="orgbe0f710"><span class="section-number-2">8</span> Template for HDF5 has/read/write a dataset of buffered vectors</h2>
<div id="outline-container-org150b63f" class="outline-2">
<h2 id="org150b63f"><span class="section-number-2">8</span> Template for HDF5 has/read/write a dataset of buffered vectors</h2>
<div class="outline-text-2" id="text-8">
<p>
Chunked I/O in HDF5 for <code>buffered</code> data.
@ -1111,8 +1111,8 @@ Chunked I/O in HDF5 for <code>buffered</code> data.
</div>
</div>
<div id="outline-container-org8815ab5" class="outline-2">
<h2 id="org8815ab5"><span class="section-number-2">9</span> Template for HDF5 has/read/write a dataset of strings</h2>
<div id="outline-container-orgc636c2e" class="outline-2">
<h2 id="orgc636c2e"><span class="section-number-2">9</span> Template for HDF5 has/read/write a dataset of strings</h2>
<div class="outline-text-2" id="text-9">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -1309,8 +1309,8 @@ Chunked I/O in HDF5 for <code>buffered</code> data.
</div>
</div>
<div id="outline-container-orgde1b27b" class="outline-2">
<h2 id="orgde1b27b"><span class="section-number-2">10</span> Template for HDF5 has/read/write a string attribute</h2>
<div id="outline-container-orgf50e082" class="outline-2">
<h2 id="orgf50e082"><span class="section-number-2">10</span> Template for HDF5 has/read/write a string attribute</h2>
<div class="outline-text-2" id="text-10">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -1437,8 +1437,8 @@ Chunked I/O in HDF5 for <code>buffered</code> data.
</div>
</div>
</div>
<div id="outline-container-org7ffbe90" class="outline-2">
<h2 id="org7ffbe90"><span class="section-number-2">11</span> Template for HDF5 delete a group (UNSAFE mode)</h2>
<div id="outline-container-org61b7c50" class="outline-2">
<h2 id="org61b7c50"><span class="section-number-2">11</span> Template for HDF5 delete a group (UNSAFE mode)</h2>
<div class="outline-text-2" id="text-11">
<p>
<b><b>Note:</b></b> in early versions of the HDF5 library (v &lt; 1.10) unlinking an object was not working as expected
@ -1478,8 +1478,8 @@ Thus, any corrupted/lost file space will remain in the first file. The use of <c
</div>
</div>
<div id="outline-container-orgd4277ca" class="outline-2">
<h2 id="orgd4277ca"><span class="section-number-2">12</span> Source code for the determinant part</h2>
<div id="outline-container-orge17cf8e" class="outline-2">
<h2 id="orge17cf8e"><span class="section-number-2">12</span> Source code for the determinant part</h2>
<div class="outline-text-2" id="text-12">
<p>
Each array is stored in a separate HDF5 dataset due to the fact that determinant I/O has to be decoupled.
@ -1581,8 +1581,8 @@ Size specifies the number of data items (e.g. determinants) to process.
</div>
</div>
<div id="outline-container-orge2c8fca" class="outline-2">
<h2 id="orge2c8fca"><span class="section-number-2">13</span> Helper functions</h2>
<div id="outline-container-org24e810a" class="outline-2">
<h2 id="org24e810a"><span class="section-number-2">13</span> Helper functions</h2>
<div class="outline-text-2" id="text-13">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -1850,7 +1850,7 @@ Size specifies the number of data items (e.g. determinants) to process.
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX-CoE</p>
<p class="date">Created: 2024-03-22 Fri 14:46</p>
<p class="date">Created: 2024-05-13 Mon 15:06</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2024-03-22 Fri 14:46 -->
<!-- 2024-05-13 Mon 15:06 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>TEXT back end</title>
@ -324,23 +324,23 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org4df028d">1. Template for group-related structures in text back end</a></li>
<li><a href="#orgc9b82a6">2. Template for general structure in text back end</a></li>
<li><a href="#org3c76758">3. Initialize function (constant part)</a></li>
<li><a href="#orgc95bb84">4. Deinitialize function (templated part)</a></li>
<li><a href="#org81bc72c">5. Flush function (templated part)</a></li>
<li><a href="#orgf4581d0">6. Template for text read a group</a></li>
<li><a href="#org72ddd2a">7. Template for text has a group</a></li>
<li><a href="#orgb05cb1e">8. Template for text flush a group</a></li>
<li><a href="#org5db2cc5">9. Template for text free memory</a></li>
<li><a href="#orgd5952af">10. Template for has/read/write a numerical attribute</a></li>
<li><a href="#org83b0719">11. Template for has/read/write a dataset of numerical data</a></li>
<li><a href="#org51f8d15">12. Template for has/read/write a dataset of strings</a></li>
<li><a href="#org6dc57bc">13. Template for has/read/write a string attribute</a></li>
<li><a href="#org8518c71">14. Template for has/read/write the dataset of sparse data</a></li>
<li><a href="#org3cf6d51">15. Template for has/read/write a buffered vector</a></li>
<li><a href="#org98fe274">16. Template for text delete a group (UNSAFE mode)</a></li>
<li><a href="#orgac78bdb">17. Source code for the determinant part</a></li>
<li><a href="#orgc2e5011">1. Template for group-related structures in text back end</a></li>
<li><a href="#org8ce7ad5">2. Template for general structure in text back end</a></li>
<li><a href="#org51dab26">3. Initialize function (constant part)</a></li>
<li><a href="#org5c43797">4. Deinitialize function (templated part)</a></li>
<li><a href="#org608b73e">5. Flush function (templated part)</a></li>
<li><a href="#org58bc8bd">6. Template for text read a group</a></li>
<li><a href="#orgd0dba7a">7. Template for text has a group</a></li>
<li><a href="#orgba7b9fc">8. Template for text flush a group</a></li>
<li><a href="#orgb3defc8">9. Template for text free memory</a></li>
<li><a href="#org6deb1bb">10. Template for has/read/write a numerical attribute</a></li>
<li><a href="#org2660a92">11. Template for has/read/write a dataset of numerical data</a></li>
<li><a href="#org4918360">12. Template for has/read/write a dataset of strings</a></li>
<li><a href="#org1d3a409">13. Template for has/read/write a string attribute</a></li>
<li><a href="#orgb958314">14. Template for has/read/write the dataset of sparse data</a></li>
<li><a href="#org908a0e4">15. Template for has/read/write a buffered vector</a></li>
<li><a href="#orge482907">16. Template for text delete a group (UNSAFE mode)</a></li>
<li><a href="#org3e52fc1">17. Source code for the determinant part</a></li>
</ul>
</div>
</div>
@ -362,8 +362,8 @@ directory.
The file is written when closed, or when the flush function is called.
</p>
<div id="outline-container-org4df028d" class="outline-2">
<h2 id="org4df028d"><span class="section-number-2">1</span> Template for group-related structures in text back end</h2>
<div id="outline-container-orgc2e5011" class="outline-2">
<h2 id="orgc2e5011"><span class="section-number-2">1</span> Template for group-related structures in text back end</h2>
<div class="outline-text-2" id="text-1">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> $group$_s {
@ -382,8 +382,8 @@ The file is written when closed, or when the flush function is called.
</div>
</div>
<div id="outline-container-orgc9b82a6" class="outline-2">
<h2 id="orgc9b82a6"><span class="section-number-2">2</span> Template for general structure in text back end</h2>
<div id="outline-container-org8ce7ad5" class="outline-2">
<h2 id="org8ce7ad5"><span class="section-number-2">2</span> Template for general structure in text back end</h2>
<div class="outline-text-2" id="text-2">
<p>
Polymorphism of the <code>trexio_t</code> type is handled by ensuring that the
@ -403,8 +403,8 @@ corresponding types for all back ends can be safely casted to
</div>
</div>
<div id="outline-container-org3c76758" class="outline-2">
<h2 id="org3c76758"><span class="section-number-2">3</span> Initialize function (constant part)</h2>
<div id="outline-container-org51dab26" class="outline-2">
<h2 id="org51dab26"><span class="section-number-2">3</span> Initialize function (constant part)</h2>
<div class="outline-text-2" id="text-3">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">bool</span>
@ -601,8 +601,8 @@ In that case, we define an alternate one, which is not as safe as the original o
</div>
</div>
<div id="outline-container-orgc95bb84" class="outline-2">
<h2 id="orgc95bb84"><span class="section-number-2">4</span> Deinitialize function (templated part)</h2>
<div id="outline-container-org5c43797" class="outline-2">
<h2 id="org5c43797"><span class="section-number-2">4</span> Deinitialize function (templated part)</h2>
<div class="outline-text-2" id="text-4">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -624,8 +624,8 @@ In that case, we define an alternate one, which is not as safe as the original o
</div>
</div>
<div id="outline-container-org81bc72c" class="outline-2">
<h2 id="org81bc72c"><span class="section-number-2">5</span> Flush function (templated part)</h2>
<div id="outline-container-org608b73e" class="outline-2">
<h2 id="org608b73e"><span class="section-number-2">5</span> Flush function (templated part)</h2>
<div class="outline-text-2" id="text-5">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -648,8 +648,8 @@ In that case, we define an alternate one, which is not as safe as the original o
</div>
</div>
<div id="outline-container-orgf4581d0" class="outline-2">
<h2 id="orgf4581d0"><span class="section-number-2">6</span> Template for text read a group</h2>
<div id="outline-container-org58bc8bd" class="outline-2">
<h2 id="org58bc8bd"><span class="section-number-2">6</span> Template for text read a group</h2>
<div class="outline-text-2" id="text-6">
<div class="org-src-container">
<pre class="src src-c">$group$_t*
@ -875,8 +875,8 @@ trexio_text_read_$group$ (<span style="color: #228b22;">trexio_text_t</span>* <s
</div>
</div>
<div id="outline-container-org72ddd2a" class="outline-2">
<h2 id="org72ddd2a"><span class="section-number-2">7</span> Template for text has a group</h2>
<div id="outline-container-orgd0dba7a" class="outline-2">
<h2 id="orgd0dba7a"><span class="section-number-2">7</span> Template for text has a group</h2>
<div class="outline-text-2" id="text-7">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -916,8 +916,8 @@ trexio_text_read_$group$ (<span style="color: #228b22;">trexio_text_t</span>* <s
</div>
</div>
<div id="outline-container-orgb05cb1e" class="outline-2">
<h2 id="orgb05cb1e"><span class="section-number-2">8</span> Template for text flush a group</h2>
<div id="outline-container-orgba7b9fc" class="outline-2">
<h2 id="orgba7b9fc"><span class="section-number-2">8</span> Template for text flush a group</h2>
<div class="outline-text-2" id="text-8">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -981,8 +981,8 @@ trexio_text_read_$group$ (<span style="color: #228b22;">trexio_text_t</span>* <s
</div>
</div>
<div id="outline-container-org5db2cc5" class="outline-2">
<h2 id="org5db2cc5"><span class="section-number-2">9</span> Template for text free memory</h2>
<div id="outline-container-orgb3defc8" class="outline-2">
<h2 id="orgb3defc8"><span class="section-number-2">9</span> Template for text free memory</h2>
<div class="outline-text-2" id="text-9">
<p>
Memory is allocated when reading. The following function frees memory.
@ -1051,8 +1051,8 @@ This function is called upon the non-successful exit from the <code>trexio_text_
</div>
</div>
<div id="outline-container-orgd5952af" class="outline-2">
<h2 id="orgd5952af"><span class="section-number-2">10</span> Template for has/read/write a numerical attribute</h2>
<div id="outline-container-org6deb1bb" class="outline-2">
<h2 id="org6deb1bb"><span class="section-number-2">10</span> Template for has/read/write a numerical attribute</h2>
<div class="outline-text-2" id="text-10">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -1115,8 +1115,8 @@ This function is called upon the non-successful exit from the <code>trexio_text_
</div>
</div>
<div id="outline-container-org83b0719" class="outline-2">
<h2 id="org83b0719"><span class="section-number-2">11</span> Template for has/read/write a dataset of numerical data</h2>
<div id="outline-container-org2660a92" class="outline-2">
<h2 id="org2660a92"><span class="section-number-2">11</span> Template for has/read/write a dataset of numerical data</h2>
<div class="outline-text-2" id="text-11">
<p>
The <code>group_dset</code> array is assumed allocated with the appropriate size.
@ -1212,8 +1212,8 @@ The <code>group_dset</code> array is assumed allocated with the appropriate size
</div>
</div>
</div>
<div id="outline-container-org51f8d15" class="outline-2">
<h2 id="org51f8d15"><span class="section-number-2">12</span> Template for has/read/write a dataset of strings</h2>
<div id="outline-container-org4918360" class="outline-2">
<h2 id="org4918360"><span class="section-number-2">12</span> Template for has/read/write a dataset of strings</h2>
<div class="outline-text-2" id="text-12">
<p>
The <code>group_dset</code> array is assumed allocated with the appropriate size.
@ -1314,8 +1314,8 @@ The <code>group_dset</code> array is assumed allocated with the appropriate size
</div>
</div>
</div>
<div id="outline-container-org6dc57bc" class="outline-2">
<h2 id="org6dc57bc"><span class="section-number-2">13</span> Template for has/read/write a string attribute</h2>
<div id="outline-container-org1d3a409" class="outline-2">
<h2 id="org1d3a409"><span class="section-number-2">13</span> Template for has/read/write a string attribute</h2>
<div class="outline-text-2" id="text-13">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -1389,8 +1389,8 @@ The <code>group_dset</code> array is assumed allocated with the appropriate size
</div>
</div>
</div>
<div id="outline-container-org8518c71" class="outline-2">
<h2 id="org8518c71"><span class="section-number-2">14</span> Template for has/read/write the dataset of sparse data</h2>
<div id="outline-container-orgb958314" class="outline-2">
<h2 id="orgb958314"><span class="section-number-2">14</span> Template for has/read/write the dataset of sparse data</h2>
<div class="outline-text-2" id="text-14">
<p>
Each sparse array is stored in a separate <code>.txt</code> file due to the fact that sparse I/O has to be decoupled
@ -1680,8 +1680,8 @@ User provides indices and values of the sparse array as two separate variables.
</div>
</div>
<div id="outline-container-org3cf6d51" class="outline-2">
<h2 id="org3cf6d51"><span class="section-number-2">15</span> Template for has/read/write a buffered vector</h2>
<div id="outline-container-org908a0e4" class="outline-2">
<h2 id="org908a0e4"><span class="section-number-2">15</span> Template for has/read/write a buffered vector</h2>
<div class="outline-text-2" id="text-15">
<p>
Each array is stored in a separate <code>.txt</code> file due to the fact that buffered I/O has to be decoupled
@ -1911,8 +1911,8 @@ Size specifies the number of vector elements to be written.
</div>
</div>
</div>
<div id="outline-container-org98fe274" class="outline-2">
<h2 id="org98fe274"><span class="section-number-2">16</span> Template for text delete a group (UNSAFE mode)</h2>
<div id="outline-container-orge482907" class="outline-2">
<h2 id="orge482907"><span class="section-number-2">16</span> Template for text delete a group (UNSAFE mode)</h2>
<div class="outline-text-2" id="text-16">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -1940,8 +1940,8 @@ Size specifies the number of vector elements to be written.
</div>
</div>
<div id="outline-container-orgac78bdb" class="outline-2">
<h2 id="orgac78bdb"><span class="section-number-2">17</span> Source code for the determinant part</h2>
<div id="outline-container-org3e52fc1" class="outline-2">
<h2 id="org3e52fc1"><span class="section-number-2">17</span> Source code for the determinant part</h2>
<div class="outline-text-2" id="text-17">
<p>
Each array is stored in a separate <code>.txt</code> file due to the fact that determinant I/O has to be decoupled
@ -2133,7 +2133,7 @@ Size specifies the number of data items, e.g. determinants.
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX-CoE</p>
<p class="date">Created: 2024-03-22 Fri 14:46</p>
<p class="date">Created: 2024-05-13 Mon 15:06</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

286
trex.html
View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2024-03-22 Fri 14:46 -->
<!-- 2024-05-13 Mon 15:06 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Data stored in TREXIO</title>
@ -346,71 +346,71 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org5e8b9b9">1. Metadata (metadata group)</a></li>
<li><a href="#orge9f670f">2. System</a>
<li><a href="#org7335c94">1. Metadata (metadata group)</a></li>
<li><a href="#org5d57e6f">2. System</a>
<ul>
<li><a href="#org1106be4">2.1. Nucleus (nucleus group)</a></li>
<li><a href="#org7ad94a6">2.2. Cell (cell group)</a></li>
<li><a href="#org186f5a5">2.3. Periodic boundary calculations (pbc group)</a></li>
<li><a href="#org820e334">2.4. Electron (electron group)</a></li>
<li><a href="#org7d90a8a">2.5. Ground or excited states (state group)</a></li>
<li><a href="#orgd97d432">2.1. Nucleus (nucleus group)</a></li>
<li><a href="#org02d8eac">2.2. Cell (cell group)</a></li>
<li><a href="#org1db1e31">2.3. Periodic boundary calculations (pbc group)</a></li>
<li><a href="#org7c03928">2.4. Electron (electron group)</a></li>
<li><a href="#org35dbffa">2.5. Ground or excited states (state group)</a></li>
</ul>
</li>
<li><a href="#org7d5ee43">3. Basis functions</a>
<li><a href="#org3f15cdd">3. Basis functions</a>
<ul>
<li><a href="#org028d9d8">3.1. Basis set (basis group)</a>
<li><a href="#orgfb401cb">3.1. Basis set (basis group)</a>
<ul>
<li><a href="#org644e969">3.1.1. Gaussian and Slater-type orbitals</a></li>
<li><a href="#org670f9aa">3.1.2. Numerical orbitals</a></li>
<li><a href="#org711de37">3.1.3. Plane waves</a></li>
<li><a href="#orgb7ee8e5">3.1.4. Data definitions</a></li>
<li><a href="#org3214ad6">3.1.5. Example</a></li>
<li><a href="#org91cba7c">3.1.1. Gaussian and Slater-type orbitals</a></li>
<li><a href="#org02fc922">3.1.2. Numerical orbitals</a></li>
<li><a href="#orgb5bcbe9">3.1.3. Plane waves</a></li>
<li><a href="#org17d8052">3.1.4. Data definitions</a></li>
<li><a href="#org5801188">3.1.5. Example</a></li>
</ul>
</li>
<li><a href="#orge54608b">3.2. Effective core potentials (ecp group)</a>
<li><a href="#org1dec4f4">3.2. Effective core potentials (ecp group)</a>
<ul>
<li><a href="#org0e31192">3.2.1. Example</a></li>
<li><a href="#org7116b99">3.2.1. Example</a></li>
</ul>
</li>
<li><a href="#org3a77cd2">3.3. Numerical integration grid (grid group)</a></li>
<li><a href="#orgc81bdfa">3.3. Numerical integration grid (grid group)</a></li>
</ul>
</li>
<li><a href="#org3090e6b">4. Orbitals</a>
<li><a href="#org9e0b511">4. Orbitals</a>
<ul>
<li><a href="#org5218378">4.1. Atomic orbitals (ao group)</a>
<li><a href="#orgd60eb0f">4.1. Atomic orbitals (ao group)</a>
<ul>
<li><a href="#ao_one_e">4.1.1. One-electron integrals (<code>ao_1e_int</code> group)</a></li>
<li><a href="#ao_two_e">4.1.2. Two-electron integrals (<code>ao_2e_int</code> group)</a></li>
</ul>
</li>
<li><a href="#orgee3963f">4.2. Molecular orbitals (mo group)</a>
<li><a href="#org299e768">4.2. Molecular orbitals (mo group)</a>
<ul>
<li><a href="#orgca4881a">4.2.1. One-electron integrals (<code>mo_1e_int</code> group)</a></li>
<li><a href="#orgb45e7e0">4.2.2. Two-electron integrals (<code>mo_2e_int</code> group)</a></li>
<li><a href="#org9189334">4.2.1. One-electron integrals (<code>mo_1e_int</code> group)</a></li>
<li><a href="#org188ce11">4.2.2. Two-electron integrals (<code>mo_2e_int</code> group)</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#orgd45a289">5. Multi-determinant information</a>
<li><a href="#orgf700ebb">5. Multi-determinant information</a>
<ul>
<li><a href="#orgf624ebf">5.1. Slater determinants (determinant group)</a></li>
<li><a href="#orgccb965d">5.2. Configuration state functions (csf group)</a></li>
<li><a href="#orge5f6a04">5.3. Amplitudes (amplitude group)</a></li>
<li><a href="#orgb3c0504">5.4. Reduced density matrices (rdm group)</a></li>
<li><a href="#org5796fee">5.1. Slater determinants (determinant group)</a></li>
<li><a href="#org81b9f36">5.2. Configuration state functions (csf group)</a></li>
<li><a href="#orgc81759c">5.3. Amplitudes (amplitude group)</a></li>
<li><a href="#org8362adb">5.4. Reduced density matrices (rdm group)</a></li>
</ul>
</li>
<li><a href="#orgdb235db">6. Correlation factors</a>
<li><a href="#orgb7ee44f">6. Correlation factors</a>
<ul>
<li><a href="#org168f6f2">6.1. Jastrow factor (jastrow group)</a>
<li><a href="#orgbc1466a">6.1. Jastrow factor (jastrow group)</a>
<ul>
<li><a href="#org5784c88">6.1.1. CHAMP</a></li>
<li><a href="#org2fe6c84">6.1.2. Mu</a></li>
<li><a href="#org71b0bfd">6.1.3. Table of values</a></li>
<li><a href="#org037a84f">6.1.1. CHAMP</a></li>
<li><a href="#org8ad9c41">6.1.2. Mu</a></li>
<li><a href="#orgade8ca3">6.1.3. Table of values</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#org28296f7">7. Quantum Monte Carlo data (qmc group)</a></li>
<li><a href="#orge00711d">7. Quantum Monte Carlo data (qmc group)</a></li>
</ul>
</div>
</div>
@ -432,8 +432,8 @@ contiguous in memory. In the row-major representation, <code>A[i,j]</code> and
<code>A[i,j+1]</code> are contiguous.
</p>
<div id="outline-container-org5e8b9b9" class="outline-2">
<h2 id="org5e8b9b9"><span class="section-number-2">1</span> Metadata (metadata group)</h2>
<div id="outline-container-org7335c94" class="outline-2">
<h2 id="org7335c94"><span class="section-number-2">1</span> Metadata (metadata group)</h2>
<div class="outline-text-2" id="text-1">
<p>
As we expect TREXIO files to be archived in open-data repositories,
@ -443,7 +443,7 @@ have participated to the creation of the file, a list of authors of
the file, and a textual description.
</p>
<table id="org38df9f0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org75a196f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -536,19 +536,19 @@ value can be manually overwritten (in unsafe mode) from <code>1</code> to <code>
</div>
</div>
<div id="outline-container-orge9f670f" class="outline-2">
<h2 id="orge9f670f"><span class="section-number-2">2</span> System</h2>
<div id="outline-container-org5d57e6f" class="outline-2">
<h2 id="org5d57e6f"><span class="section-number-2">2</span> System</h2>
<div class="outline-text-2" id="text-2">
</div>
<div id="outline-container-org1106be4" class="outline-3">
<h3 id="org1106be4"><span class="section-number-3">2.1</span> Nucleus (nucleus group)</h3>
<div id="outline-container-orgd97d432" class="outline-3">
<h3 id="orgd97d432"><span class="section-number-3">2.1</span> Nucleus (nucleus group)</h3>
<div class="outline-text-3" id="text-2-1">
<p>
The nuclei are considered as fixed point charges. Coordinates are
given in Cartesian \((x,y,z)\) format.
</p>
<table id="orge5c6404" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgfbfadfb" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -633,15 +633,15 @@ given in Cartesian \((x,y,z)\) format.
</div>
</div>
<div id="outline-container-org7ad94a6" class="outline-3">
<h3 id="org7ad94a6"><span class="section-number-3">2.2</span> Cell (cell group)</h3>
<div id="outline-container-org02d8eac" class="outline-3">
<h3 id="org02d8eac"><span class="section-number-3">2.2</span> Cell (cell group)</h3>
<div class="outline-text-3" id="text-2-2">
<p>
3 Lattice vectors to define a box containing the system, for example
used in periodic calculations.
</p>
<table id="org63b483c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgad4ef66" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -725,15 +725,10 @@ used in periodic calculations.
</div>
</div>
<div id="outline-container-org186f5a5" class="outline-3">
<h3 id="org186f5a5"><span class="section-number-3">2.3</span> Periodic boundary calculations (pbc group)</h3>
<div id="outline-container-org1db1e31" class="outline-3">
<h3 id="org1db1e31"><span class="section-number-3">2.3</span> Periodic boundary calculations (pbc group)</h3>
<div class="outline-text-3" id="text-2-3">
<p>
A single $k$-point per TREXIO file can be stored. The $k$-point is
defined in this group.
</p>
<table id="orgcf2b002" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org44317f9" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -765,6 +760,14 @@ defined in this group.
<td class="org-left"><code>1</code>: true or <code>0</code>: false</td>
</tr>
<tr>
<td class="org-left"><code>k_point_num</code></td>
<td class="org-left"><code>dim</code></td>
<td class="org-left">&#xa0;</td>
<td class="org-left">&#xa0;</td>
<td class="org-left">Number of $k$-points</td>
</tr>
<tr>
<td class="org-left"><code>k_point</code></td>
<td class="org-left"><code>float</code></td>
@ -772,13 +775,21 @@ defined in this group.
<td class="org-left"><code>(3)</code></td>
<td class="org-left">$k$-point sampling</td>
</tr>
<tr>
<td class="org-left"><code>k_point_weight</code></td>
<td class="org-left"><code>float</code></td>
<td class="org-left"><code>[pbc.k_point_num]</code></td>
<td class="org-left"><code>(pbc.k_point_num)</code></td>
<td class="org-left">$k$-point weight</td>
</tr>
</tbody>
</table>
</div>
</div>
<div id="outline-container-org820e334" class="outline-3">
<h3 id="org820e334"><span class="section-number-3">2.4</span> Electron (electron group)</h3>
<div id="outline-container-org7c03928" class="outline-3">
<h3 id="org7c03928"><span class="section-number-3">2.4</span> Electron (electron group)</h3>
<div class="outline-text-3" id="text-2-4">
<p>
The chemical system consists of nuclei and electrons, where the
@ -797,7 +808,7 @@ the number of &uarr; and &darr; electrons is fixed.
</p>
<table id="orgfdffa14" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org0824b7e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -849,8 +860,8 @@ the number of &uarr; and &darr; electrons is fixed.
</div>
</div>
<div id="outline-container-org7d90a8a" class="outline-3">
<h3 id="org7d90a8a"><span class="section-number-3">2.5</span> Ground or excited states (state group)</h3>
<div id="outline-container-org35dbffa" class="outline-3">
<h3 id="org35dbffa"><span class="section-number-3">2.5</span> Ground or excited states (state group)</h3>
<div class="outline-text-3" id="text-2-5">
<p>
This group contains information about excited states. Since only a
@ -867,7 +878,7 @@ integrals, etc.
The <code>id</code> and <code>current_label</code> attributes need to be specified for each file.
</p>
<table id="org201b112" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org039c317" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -944,16 +955,16 @@ The <code>id</code> and <code>current_label</code> attributes need to be specifi
</div>
</div>
<div id="outline-container-org7d5ee43" class="outline-2">
<h2 id="org7d5ee43"><span class="section-number-2">3</span> Basis functions</h2>
<div id="outline-container-org3f15cdd" class="outline-2">
<h2 id="org3f15cdd"><span class="section-number-2">3</span> Basis functions</h2>
<div class="outline-text-2" id="text-3">
</div>
<div id="outline-container-org028d9d8" class="outline-3">
<h3 id="org028d9d8"><span class="section-number-3">3.1</span> Basis set (basis group)</h3>
<div id="outline-container-orgfb401cb" class="outline-3">
<h3 id="orgfb401cb"><span class="section-number-3">3.1</span> Basis set (basis group)</h3>
<div class="outline-text-3" id="text-3-1">
</div>
<div id="outline-container-org644e969" class="outline-4">
<h4 id="org644e969"><span class="section-number-4">3.1.1</span> Gaussian and Slater-type orbitals</h4>
<div id="outline-container-org91cba7c" class="outline-4">
<h4 id="org91cba7c"><span class="section-number-4">3.1.1</span> Gaussian and Slater-type orbitals</h4>
<div class="outline-text-4" id="text-3-1-1">
<p>
We consider here basis functions centered on nuclei. Hence, it is
@ -1007,8 +1018,8 @@ All the basis set parameters are stored in one-dimensional arrays.
</div>
</div>
<div id="outline-container-org670f9aa" class="outline-4">
<h4 id="org670f9aa"><span class="section-number-4">3.1.2</span> Numerical orbitals</h4>
<div id="outline-container-org02fc922" class="outline-4">
<h4 id="org02fc922"><span class="section-number-4">3.1.2</span> Numerical orbitals</h4>
<div class="outline-text-4" id="text-3-1-2">
<p>
Trexio supports numerical atom centered orbitals. The implementation is
@ -1072,8 +1083,8 @@ reimplement them with consideration for its specific needs.
</div>
</div>
<div id="outline-container-org711de37" class="outline-4">
<h4 id="org711de37"><span class="section-number-4">3.1.3</span> Plane waves</h4>
<div id="outline-container-orgb5bcbe9" class="outline-4">
<h4 id="orgb5bcbe9"><span class="section-number-4">3.1.3</span> Plane waves</h4>
<div class="outline-text-4" id="text-3-1-3">
<p>
A plane wave is defined as
@ -1094,10 +1105,10 @@ plane waves.
</div>
</div>
<div id="outline-container-orgb7ee8e5" class="outline-4">
<h4 id="orgb7ee8e5"><span class="section-number-4">3.1.4</span> Data definitions</h4>
<div id="outline-container-org17d8052" class="outline-4">
<h4 id="org17d8052"><span class="section-number-4">3.1.4</span> Data definitions</h4>
<div class="outline-text-4" id="text-3-1-4">
<table id="org5e48c02" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgdd725c5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1317,8 +1328,8 @@ plane waves.
</div>
</div>
<div id="outline-container-org3214ad6" class="outline-4">
<h4 id="org3214ad6"><span class="section-number-4">3.1.5</span> Example</h4>
<div id="outline-container-org5801188" class="outline-4">
<h4 id="org5801188"><span class="section-number-4">3.1.5</span> Example</h4>
<div class="outline-text-4" id="text-3-1-5">
<p>
For example, consider H<sub>2</sub> with the following basis set (in GAMESS
@ -1396,8 +1407,8 @@ prim_factor =
</div>
</div>
<div id="outline-container-orge54608b" class="outline-3">
<h3 id="orge54608b"><span class="section-number-3">3.2</span> Effective core potentials (ecp group)</h3>
<div id="outline-container-org1dec4f4" class="outline-3">
<h3 id="org1dec4f4"><span class="section-number-3">3.2</span> Effective core potentials (ecp group)</h3>
<div class="outline-text-3" id="text-3-2">
<p>
An effective core potential (ECP) \(V_A^{\text{ECP}}\) replacing the
@ -1431,7 +1442,7 @@ where \(Z_\text{eff}\) is the effective nuclear charge of the center.
See <a href="http://dx.doi.org/10.1063/1.4984046">http://dx.doi.org/10.1063/1.4984046</a> or <a href="https://doi.org/10.1063/1.5121006">https://doi.org/10.1063/1.5121006</a> for more info.
</p>
<table id="org918c930" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgcd7028e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1546,8 +1557,8 @@ If you encounter the aforementioned issue, please report it to our
</p>
</div>
<div id="outline-container-org0e31192" class="outline-4">
<h4 id="org0e31192"><span class="section-number-4">3.2.1</span> Example</h4>
<div id="outline-container-org7116b99" class="outline-4">
<h4 id="org7116b99"><span class="section-number-4">3.2.1</span> Example</h4>
<div class="outline-text-4" id="text-3-2-1">
<p>
For example, consider H<sub>2</sub> molecule with the following
@ -1610,8 +1621,8 @@ power = [
</div>
</div>
<div id="outline-container-org3a77cd2" class="outline-3">
<h3 id="org3a77cd2"><span class="section-number-3">3.3</span> Numerical integration grid (grid group)</h3>
<div id="outline-container-orgc81bdfa" class="outline-3">
<h3 id="orgc81bdfa"><span class="section-number-3">3.3</span> Numerical integration grid (grid group)</h3>
<div class="outline-text-3" id="text-3-3">
<p>
In some applications, such as DFT calculations, integrals have to
@ -1626,7 +1637,7 @@ The structure of this group is adapted for the <a href="https://github.com/dftli
Feel free to submit a PR if you find missing options/functionalities.
</p>
<table id="orge505065" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org009d2cc" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1759,12 +1770,12 @@ Feel free to submit a PR if you find missing options/functionalities.
</div>
</div>
<div id="outline-container-org3090e6b" class="outline-2">
<h2 id="org3090e6b"><span class="section-number-2">4</span> Orbitals</h2>
<div id="outline-container-org9e0b511" class="outline-2">
<h2 id="org9e0b511"><span class="section-number-2">4</span> Orbitals</h2>
<div class="outline-text-2" id="text-4">
</div>
<div id="outline-container-org5218378" class="outline-3">
<h3 id="org5218378"><span class="section-number-3">4.1</span> Atomic orbitals (ao group)</h3>
<div id="outline-container-orgd60eb0f" class="outline-3">
<h3 id="orgd60eb0f"><span class="section-number-3">4.1</span> Atomic orbitals (ao group)</h3>
<div class="outline-text-3" id="text-4-1">
<p>
AOs are defined as
@ -1845,7 +1856,7 @@ AO, so the correction factor \(\mathcal{N}_i'\) for \(d_{xy}\) in the
</p>
<table id="org7e1f1df" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org40d91ee" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1904,7 +1915,7 @@ AO, so the correction factor \(\mathcal{N}_i'\) for \(d_{xy}\) in the
</table>
</div>
<div id="outline-container-orgdcddcb3" class="outline-4">
<div id="outline-container-org0b9c022" class="outline-4">
<h4 id="ao_one_e"><span class="section-number-4">4.1.1</span> One-electron integrals (<code>ao_1e_int</code> group)</h4>
<div class="outline-text-4" id="text-ao_one_e">
<ul class="org-ul">
@ -1922,7 +1933,7 @@ The one-electron integrals for a one-electron operator \(\hat{O}\) are
over atomic orbitals.
</p>
<table id="orgfb3aa7d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org6760020" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -2030,7 +2041,7 @@ over atomic orbitals.
</div>
</div>
<div id="outline-container-orgc0e2447" class="outline-4">
<div id="outline-container-org5b32f70" class="outline-4">
<h4 id="ao_two_e"><span class="section-number-4">4.1.2</span> Two-electron integrals (<code>ao_2e_int</code> group)</h4>
<div class="outline-text-4" id="text-ao_two_e">
<p>
@ -2056,7 +2067,7 @@ The Cholesky decomposition of the integrals can also be stored:
\]
</p>
<table id="orgd0c8a4c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org2ab92d5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -2133,10 +2144,10 @@ The Cholesky decomposition of the integrals can also be stored:
</div>
</div>
<div id="outline-container-orgee3963f" class="outline-3">
<h3 id="orgee3963f"><span class="section-number-3">4.2</span> Molecular orbitals (mo group)</h3>
<div id="outline-container-org299e768" class="outline-3">
<h3 id="org299e768"><span class="section-number-3">4.2</span> Molecular orbitals (mo group)</h3>
<div class="outline-text-3" id="text-4-2">
<table id="orgdcd8fa5" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org22f599f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -2231,12 +2242,29 @@ The Cholesky decomposition of the integrals can also be stored:
<td class="org-left"><code>(mo.num)</code></td>
<td class="org-left">For UHF wave functions, 0 is \(\alpha\) and 1 is \(\beta\)</td>
</tr>
<tr>
<td class="org-left"><code>k_point</code></td>
<td class="org-left"><code>index</code></td>
<td class="org-left"><code>[mo.num]</code></td>
<td class="org-left"><code>(mo.num)</code></td>
<td class="org-left">For periodic calculations, the \(k\) point to which each MO belongs</td>
</tr>
</tbody>
</table>
<p>
<b><b>Warning</b></b>: <code>mo.num</code> is the total number of MOs stored in the file.
For periodic calculations, this group contains all the MOs
belonging to all \(k\) points so <code>mo.num</code> will be the sum of the
numbers of MOs in each \(k\) point. For UHF wave functions, <code>mo.num</code>
is the number of spin-orbitals, twice the number of spatial orbitals.
</p>
</div>
<div id="outline-container-orgca4881a" class="outline-4">
<h4 id="orgca4881a"><span class="section-number-4">4.2.1</span> One-electron integrals (<code>mo_1e_int</code> group)</h4>
<div id="outline-container-org9189334" class="outline-4">
<h4 id="org9189334"><span class="section-number-4">4.2.1</span> One-electron integrals (<code>mo_1e_int</code> group)</h4>
<div class="outline-text-4" id="text-4-2-1">
<p>
The operators as the same as those defined in the
@ -2244,7 +2272,7 @@ The operators as the same as those defined in the
the basis of molecular orbitals.
</p>
<table id="orgc056857" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org8cdc93a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -2352,8 +2380,8 @@ the basis of molecular orbitals.
</div>
</div>
<div id="outline-container-orgb45e7e0" class="outline-4">
<h4 id="orgb45e7e0"><span class="section-number-4">4.2.2</span> Two-electron integrals (<code>mo_2e_int</code> group)</h4>
<div id="outline-container-org188ce11" class="outline-4">
<h4 id="org188ce11"><span class="section-number-4">4.2.2</span> Two-electron integrals (<code>mo_2e_int</code> group)</h4>
<div class="outline-text-4" id="text-4-2-2">
<p>
The operators are the same as those defined in the
@ -2361,7 +2389,7 @@ The operators are the same as those defined in the
the basis of molecular orbitals.
</p>
<table id="org056d733" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org34d1210" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -2439,12 +2467,12 @@ the basis of molecular orbitals.
</div>
</div>
<div id="outline-container-orgd45a289" class="outline-2">
<h2 id="orgd45a289"><span class="section-number-2">5</span> Multi-determinant information</h2>
<div id="outline-container-orgf700ebb" class="outline-2">
<h2 id="orgf700ebb"><span class="section-number-2">5</span> Multi-determinant information</h2>
<div class="outline-text-2" id="text-5">
</div>
<div id="outline-container-orgf624ebf" class="outline-3">
<h3 id="orgf624ebf"><span class="section-number-3">5.1</span> Slater determinants (determinant group)</h3>
<div id="outline-container-org5796fee" class="outline-3">
<h3 id="org5796fee"><span class="section-number-3">5.1</span> Slater determinants (determinant group)</h3>
<div class="outline-text-3" id="text-5-1">
<p>
The configuration interaction (CI) wave function \(\Psi\)
@ -2486,7 +2514,7 @@ produced by the code generator.
An illustration on how to read determinants is presented in the <a href="./examples.html">examples</a>.
</p>
<table id="org424f0cc" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org5f09600" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -2538,8 +2566,8 @@ An illustration on how to read determinants is presented in the <a href="./examp
</div>
</div>
<div id="outline-container-orgccb965d" class="outline-3">
<h3 id="orgccb965d"><span class="section-number-3">5.2</span> Configuration state functions (csf group)</h3>
<div id="outline-container-org81b9f36" class="outline-3">
<h3 id="org81b9f36"><span class="section-number-3">5.2</span> Configuration state functions (csf group)</h3>
<div class="outline-text-3" id="text-5-2">
<p>
The configuration interaction (CI) wave function \(\Psi\) can be
@ -2561,7 +2589,7 @@ matrix \(\langle D_I | \psi_J \rangle\) needed to project the CSFs in
the basis of Slater determinants.
</p>
<table id="org6ccfa2e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org3bf24b0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -2613,8 +2641,8 @@ the basis of Slater determinants.
</div>
</div>
<div id="outline-container-orge5f6a04" class="outline-3">
<h3 id="orge5f6a04"><span class="section-number-3">5.3</span> Amplitudes (amplitude group)</h3>
<div id="outline-container-orgc81759c" class="outline-3">
<h3 id="orgc81759c"><span class="section-number-3">5.3</span> Amplitudes (amplitude group)</h3>
<div class="outline-text-3" id="text-5-3">
<p>
The wave function may be expressed in terms of action of the cluster
@ -2685,7 +2713,7 @@ The order of the indices is chosen such that
<li>\(\dots\)</li>
</ul>
<table id="orge3ec969" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org62b3d5e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -2777,8 +2805,8 @@ The order of the indices is chosen such that
</div>
</div>
<div id="outline-container-orgb3c0504" class="outline-3">
<h3 id="orgb3c0504"><span class="section-number-3">5.4</span> Reduced density matrices (rdm group)</h3>
<div id="outline-container-org8362adb" class="outline-3">
<h3 id="org8362adb"><span class="section-number-3">5.4</span> Reduced density matrices (rdm group)</h3>
<div class="outline-text-3" id="text-5-4">
<p>
The reduced density matrices are defined in the basis of molecular
@ -2850,7 +2878,7 @@ expressed in a basis of a one-electron function
\(g_{ik}(\mathbf{r}_1) = \phi_i(\mathbf{r}_1) \phi_k(\mathbf{r}_1)\).
</p>
<table id="org4732987" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgbe056ac" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -3015,12 +3043,12 @@ expressed in a basis of a one-electron function
</div>
</div>
<div id="outline-container-orgdb235db" class="outline-2">
<h2 id="orgdb235db"><span class="section-number-2">6</span> Correlation factors</h2>
<div id="outline-container-orgb7ee44f" class="outline-2">
<h2 id="orgb7ee44f"><span class="section-number-2">6</span> Correlation factors</h2>
<div class="outline-text-2" id="text-6">
</div>
<div id="outline-container-org168f6f2" class="outline-3">
<h3 id="org168f6f2"><span class="section-number-3">6.1</span> Jastrow factor (jastrow group)</h3>
<div id="outline-container-orgbc1466a" class="outline-3">
<h3 id="orgbc1466a"><span class="section-number-3">6.1</span> Jastrow factor (jastrow group)</h3>
<div class="outline-text-3" id="text-6-1">
<p>
The Jastrow factor is an $N$-electron function which multiplies the CI
@ -3045,8 +3073,8 @@ following:
</ul>
</div>
<div id="outline-container-org5784c88" class="outline-4">
<h4 id="org5784c88"><span class="section-number-4">6.1.1</span> CHAMP</h4>
<div id="outline-container-org037a84f" class="outline-4">
<h4 id="org037a84f"><span class="section-number-4">6.1.1</span> CHAMP</h4>
<div class="outline-text-4" id="text-6-1-1">
<p>
The first form of Jastrow factor is the one used in
@ -3147,8 +3175,8 @@ The terms \(J_{\text{ee},ij}^\infty\) and \(J_{\text{eN}}^\infty\) are shifts to
</div>
<div id="outline-container-org2fe6c84" class="outline-4">
<h4 id="org2fe6c84"><span class="section-number-4">6.1.2</span> Mu</h4>
<div id="outline-container-org8ad9c41" class="outline-4">
<h4 id="org8ad9c41"><span class="section-number-4">6.1.2</span> Mu</h4>
<div class="outline-text-4" id="text-6-1-2">
<p>
<a href="https://aip.scitation.org/doi/10.1063/5.0044683">Mu-Jastrow</a> is based on a one-parameter correlation factor that has
@ -3245,10 +3273,10 @@ The parameter \(\mu\) is stored in the <code>ee</code> array, the parameters
</div>
</div>
<div id="outline-container-org71b0bfd" class="outline-4">
<h4 id="org71b0bfd"><span class="section-number-4">6.1.3</span> Table of values</h4>
<div id="outline-container-orgade8ca3" class="outline-4">
<h4 id="orgade8ca3"><span class="section-number-4">6.1.3</span> Table of values</h4>
<div class="outline-text-4" id="text-6-1-3">
<table id="org5379994" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgcf28c43" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -3366,8 +3394,8 @@ The parameter \(\mu\) is stored in the <code>ee</code> array, the parameters
</div>
</div>
<div id="outline-container-org28296f7" class="outline-2">
<h2 id="org28296f7"><span class="section-number-2">7</span> Quantum Monte Carlo data (qmc group)</h2>
<div id="outline-container-orge00711d" class="outline-2">
<h2 id="orge00711d"><span class="section-number-2">7</span> Quantum Monte Carlo data (qmc group)</h2>
<div class="outline-text-2" id="text-7">
<p>
In quantum Monte Carlo calculations, the wave function is evaluated
@ -3381,7 +3409,7 @@ By convention, the electron coordinates contain first all the electrons
of $&uarr;$-spin and then all the $&darr;$-spin.
</p>
<table id="org7822f97" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgcd490bc" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -3443,7 +3471,7 @@ of $&uarr;$-spin and then all the $&darr;$-spin.
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX-CoE</p>
<p class="date">Created: 2024-03-22 Fri 14:46</p>
<p class="date">Created: 2024-05-13 Mon 15:06</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>