1
0
mirror of https://github.com/TREX-CoE/trexio.git synced 2024-11-04 21:24:08 +01:00

Deploying to gh-pages from @ TREX-CoE/trexio@1117a5b407 🚀

This commit is contained in:
q-posev 2024-05-13 15:07:04 +00:00
parent c5353f0786
commit 4bf132330b
9 changed files with 689 additions and 661 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-05-13 Mon 15:06 -->
<!-- 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-05-13 Mon 15:06</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-05-13 Mon 15:06 -->
<!-- 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="#org81ac291">1. Writing nuclear coordinates</a>
<li><a href="#org5f24eb8">1. Writing nuclear coordinates</a>
<ul>
<li><a href="#org35c6cee">1.1. C</a></li>
<li><a href="#orgd419cbe">1.2. Python</a></li>
<li><a href="#org226d118">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="#orgbd9dc49">2. Accessing sparse quantities (integrals)</a>
<li><a href="#org1a08df9">2. Accessing sparse quantities (integrals)</a>
<ul>
<li><a href="#org39328de">2.1. Fortran</a>
<li><a href="#org69415e6">2.1. Fortran</a>
<ul>
<li><a href="#org1cb84de">2.1.1. Declare Temporary variables</a></li>
<li><a href="#org39d3257">2.1.2. Obtain the name of the TREXIO file from the command line, and open it for reading</a></li>
<li><a href="#org12d8b57">2.1.3. Read the nuclear repulsion energy</a></li>
<li><a href="#org44ead3f">2.1.4. Read the number of molecular orbitals</a></li>
<li><a href="#orgb0d27bf">2.1.5. Allocate memory</a></li>
<li><a href="#org7dacd52">2.1.6. Read one-electron quantities</a></li>
<li><a href="#org71d86f7">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="#orgb34cf1f">2.1.7.1. Electron repulsion integrals</a></li>
<li><a href="#org85c39ab">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="#orgcf9e43e">2.1.8. Compute the energy</a></li>
<li><a href="#orgfbd8120">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="#org7d1d1b7">2.2. Python</a>
<li><a href="#org3b759ba">2.2. Python</a>
<ul>
<li><a href="#org5c95080">2.2.1. Obtain the name of the TREXIO file from the command line, and open it for reading</a></li>
<li><a href="#org696f535">2.2.2. Read the nuclear repulsion energy</a></li>
<li><a href="#org72af8c7">2.2.3. Read the number of molecular orbitals</a></li>
<li><a href="#org3f3b9e1">2.2.4. Read one-electron quantities</a></li>
<li><a href="#orgbd43038">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="#org9e36768">2.2.5.1. Electron repulsion integrals</a></li>
<li><a href="#orgdf52786">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="#org44dbd71">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="#org2cdb2ff">3. Reading determinants</a>
<li><a href="#org80c679b">3. Reading determinants</a>
<ul>
<li><a href="#orge70568d">3.1. Fortran</a></li>
<li><a href="#orgb2f5a37">3.1. Fortran</a></li>
</ul>
</li>
</ul>
</div>
</div>
<div id="outline-container-org81ac291" class="outline-2">
<h2 id="org81ac291"><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-org35c6cee" class="outline-3">
<h3 id="org35c6cee"><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-orgd419cbe" class="outline-3">
<h3 id="orgd419cbe"><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-org226d118" class="outline-3">
<h3 id="org226d118"><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-orgbd9dc49" class="outline-2">
<h2 id="orgbd9dc49"><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-org39328de" class="outline-3">
<h3 id="org39328de"><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-org1cb84de" class="outline-4">
<h4 id="org1cb84de"><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-org39d3257" class="outline-4">
<h4 id="org39d3257"><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-org12d8b57" class="outline-4">
<h4 id="org12d8b57"><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-org44ead3f" class="outline-4">
<h4 id="org44ead3f"><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-orgb0d27bf" class="outline-4">
<h4 id="orgb0d27bf"><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-org7dacd52" class="outline-4">
<h4 id="org7dacd52"><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-org71d86f7" class="outline-4">
<h4 id="org71d86f7"><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-orgb34cf1f" class="outline-5">
<h5 id="orgb34cf1f"><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-org85c39ab" class="outline-5">
<h5 id="org85c39ab"><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-orgcf9e43e" class="outline-4">
<h4 id="orgcf9e43e"><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-orgfbd8120" class="outline-4">
<h4 id="orgfbd8120"><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-org7d1d1b7" class="outline-3">
<h3 id="org7d1d1b7"><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-org5c95080" class="outline-4">
<h4 id="org5c95080"><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-org696f535" class="outline-4">
<h4 id="org696f535"><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-org72af8c7" class="outline-4">
<h4 id="org72af8c7"><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-org3f3b9e1" class="outline-4">
<h4 id="org3f3b9e1"><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-orgbd43038" class="outline-4">
<h4 id="orgbd43038"><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-org9e36768" class="outline-5">
<h5 id="org9e36768"><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-orgdf52786" class="outline-5">
<h5 id="orgdf52786"><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-org44dbd71" class="outline-4">
<h4 id="org44dbd71"><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-org2cdb2ff" class="outline-2">
<h2 id="org2cdb2ff"><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-orge70568d" class="outline-3">
<h3 id="orge70568d"><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-05-13 Mon 15:06</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-05-13 Mon 15:06 -->
<!-- 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-05-13 Mon 15:06</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-05-13 Mon 15:06 -->
<!-- 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-05-13 Mon 15:06</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-05-13 Mon 15:06 -->
<!-- 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="#org96e0a01">1. Format specification</a>
<li><a href="#orgc351f47">1. Format specification</a>
<ul>
<li><a href="#org1e215df">1.1. Organization of the data</a></li>
<li><a href="#org57c204d">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="#org14fe4ab">2. The TREXIO library</a>
<li><a href="#orga1148dc">2. The TREXIO library</a>
<ul>
<li><a href="#orge3a8244">2.1. The front-end</a></li>
<li><a href="#orgaaafe75">2.2. The back-end</a></li>
<li><a href="#org7a56465">2.3. Supported languages</a></li>
<li><a href="#org2b89578">2.4. Source code generation and documentation</a></li>
<li><a href="#org0604d4b">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-org96e0a01" class="outline-2">
<h2 id="org96e0a01"><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-org1e215df" class="outline-3">
<h3 id="org1e215df"><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-org57c204d" class="outline-3">
<h3 id="org57c204d"><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-org14fe4ab" class="outline-2">
<h2 id="org14fe4ab"><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-orge3a8244" class="outline-3">
<h3 id="orge3a8244"><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-orgaaafe75" class="outline-3">
<h3 id="orgaaafe75"><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-org7a56465" class="outline-3">
<h3 id="org7a56465"><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-org2b89578" class="outline-3">
<h3 id="org2b89578"><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-org0604d4b" class="outline-3">
<h3 id="org0604d4b"><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-05-13 Mon 15:06</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

@ -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="#orgebdccf9">1. Template for HDF5 definitions</a></li>
<li><a href="#orgf18ad3a">2. Template for HDF5 structures</a></li>
<li><a href="#org88a9f36">3. Template for HDF5 init/deinit</a></li>
<li><a href="#orgfa305d0">4. Template for HDF5 has a group</a></li>
<li><a href="#orga2192c4">5. Template for HDF5 has/read/write a numerical attribute</a></li>
<li><a href="#org684425f">6. Template for HDF5 has/read/write a dataset of numerical data</a></li>
<li><a href="#org481a76a">7. Template for HDF5 has/read/write a dataset of sparse data</a></li>
<li><a href="#org4f09997">8. Template for HDF5 has/read/write a dataset of buffered vectors</a></li>
<li><a href="#org62c744e">9. Template for HDF5 has/read/write a dataset of strings</a></li>
<li><a href="#org4bb8cf9">10. Template for HDF5 has/read/write a string attribute</a></li>
<li><a href="#org1bbd701">11. Template for HDF5 delete a group (UNSAFE mode)</a></li>
<li><a href="#orgfea357e">12. Source code for the determinant part</a></li>
<li><a href="#org2c6368a">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-orgebdccf9" class="outline-2">
<h2 id="orgebdccf9"><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-orgf18ad3a" class="outline-2">
<h2 id="orgf18ad3a"><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-org88a9f36" class="outline-2">
<h2 id="org88a9f36"><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-orgfa305d0" class="outline-2">
<h2 id="orgfa305d0"><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-orga2192c4" class="outline-2">
<h2 id="orga2192c4"><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-org684425f" class="outline-2">
<h2 id="org684425f"><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-org481a76a" class="outline-2">
<h2 id="org481a76a"><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-org4f09997" class="outline-2">
<h2 id="org4f09997"><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-org62c744e" class="outline-2">
<h2 id="org62c744e"><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-org4bb8cf9" class="outline-2">
<h2 id="org4bb8cf9"><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-org1bbd701" class="outline-2">
<h2 id="org1bbd701"><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-orgfea357e" class="outline-2">
<h2 id="orgfea357e"><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-org2c6368a" class="outline-2">
<h2 id="org2c6368a"><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>

View File

@ -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="#orga782449">1. Template for group-related structures in text back end</a></li>
<li><a href="#orgd190f59">2. Template for general structure in text back end</a></li>
<li><a href="#org6ef8b3e">3. Initialize function (constant part)</a></li>
<li><a href="#org47ebf83">4. Deinitialize function (templated part)</a></li>
<li><a href="#orga707fe9">5. Flush function (templated part)</a></li>
<li><a href="#orgc154ffa">6. Template for text read a group</a></li>
<li><a href="#orgd7880ed">7. Template for text has a group</a></li>
<li><a href="#orga28820a">8. Template for text flush a group</a></li>
<li><a href="#org3768659">9. Template for text free memory</a></li>
<li><a href="#org72d39b1">10. Template for has/read/write a numerical attribute</a></li>
<li><a href="#org4521fcd">11. Template for has/read/write a dataset of numerical data</a></li>
<li><a href="#orge0c64cf">12. Template for has/read/write a dataset of strings</a></li>
<li><a href="#org7a7cb77">13. Template for has/read/write a string attribute</a></li>
<li><a href="#orgb1efbbf">14. Template for has/read/write the dataset of sparse data</a></li>
<li><a href="#org309f53f">15. Template for has/read/write a buffered vector</a></li>
<li><a href="#orgefb29cf">16. Template for text delete a group (UNSAFE mode)</a></li>
<li><a href="#orge92ac17">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-orga782449" class="outline-2">
<h2 id="orga782449"><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-orgd190f59" class="outline-2">
<h2 id="orgd190f59"><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-org6ef8b3e" class="outline-2">
<h2 id="org6ef8b3e"><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-org47ebf83" class="outline-2">
<h2 id="org47ebf83"><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-orga707fe9" class="outline-2">
<h2 id="orga707fe9"><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-orgc154ffa" class="outline-2">
<h2 id="orgc154ffa"><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-orgd7880ed" class="outline-2">
<h2 id="orgd7880ed"><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-orga28820a" class="outline-2">
<h2 id="orga28820a"><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-org3768659" class="outline-2">
<h2 id="org3768659"><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-org72d39b1" class="outline-2">
<h2 id="org72d39b1"><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-org4521fcd" class="outline-2">
<h2 id="org4521fcd"><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-orge0c64cf" class="outline-2">
<h2 id="orge0c64cf"><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-org7a7cb77" class="outline-2">
<h2 id="org7a7cb77"><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-orgb1efbbf" class="outline-2">
<h2 id="orgb1efbbf"><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-org309f53f" class="outline-2">
<h2 id="org309f53f"><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-orgefb29cf" class="outline-2">
<h2 id="orgefb29cf"><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-orge92ac17" class="outline-2">
<h2 id="orge92ac17"><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

282
trex.html
View File

@ -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="#orgbe50f90">1. Metadata (metadata group)</a></li>
<li><a href="#org0dab00d">2. System</a>
<li><a href="#org7335c94">1. Metadata (metadata group)</a></li>
<li><a href="#org5d57e6f">2. System</a>
<ul>
<li><a href="#orgc422c9a">2.1. Nucleus (nucleus group)</a></li>
<li><a href="#org0b58dd4">2.2. Cell (cell group)</a></li>
<li><a href="#orgcfa248e">2.3. Periodic boundary calculations (pbc group)</a></li>
<li><a href="#org2f8886f">2.4. Electron (electron group)</a></li>
<li><a href="#orgd37ce60">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="#org96f525a">3. Basis functions</a>
<li><a href="#org3f15cdd">3. Basis functions</a>
<ul>
<li><a href="#org4a9b2bb">3.1. Basis set (basis group)</a>
<li><a href="#orgfb401cb">3.1. Basis set (basis group)</a>
<ul>
<li><a href="#org9b72c5e">3.1.1. Gaussian and Slater-type orbitals</a></li>
<li><a href="#org5adab58">3.1.2. Numerical orbitals</a></li>
<li><a href="#org4090c5c">3.1.3. Plane waves</a></li>
<li><a href="#orgcc14a46">3.1.4. Data definitions</a></li>
<li><a href="#orgb517ac4">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="#org8dd04a9">3.2. Effective core potentials (ecp group)</a>
<li><a href="#org1dec4f4">3.2. Effective core potentials (ecp group)</a>
<ul>
<li><a href="#org6970a2a">3.2.1. Example</a></li>
<li><a href="#org7116b99">3.2.1. Example</a></li>
</ul>
</li>
<li><a href="#orgdd2383d">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="#orgeff3f35">4. Orbitals</a>
<li><a href="#org9e0b511">4. Orbitals</a>
<ul>
<li><a href="#org9efa08b">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="#org06ea445">4.2. Molecular orbitals (mo group)</a>
<li><a href="#org299e768">4.2. Molecular orbitals (mo group)</a>
<ul>
<li><a href="#orgf1ad89d">4.2.1. One-electron integrals (<code>mo_1e_int</code> group)</a></li>
<li><a href="#org7ea4fa8">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="#org65db162">5. Multi-determinant information</a>
<li><a href="#orgf700ebb">5. Multi-determinant information</a>
<ul>
<li><a href="#orgfd8b28e">5.1. Slater determinants (determinant group)</a></li>
<li><a href="#orgaea6d6b">5.2. Configuration state functions (csf group)</a></li>
<li><a href="#orgaad508d">5.3. Amplitudes (amplitude group)</a></li>
<li><a href="#orge5cefd8">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="#orgca34420">6. Correlation factors</a>
<li><a href="#orgb7ee44f">6. Correlation factors</a>
<ul>
<li><a href="#orga782f1d">6.1. Jastrow factor (jastrow group)</a>
<li><a href="#orgbc1466a">6.1. Jastrow factor (jastrow group)</a>
<ul>
<li><a href="#orge2ec1dd">6.1.1. CHAMP</a></li>
<li><a href="#orgba73d40">6.1.2. Mu</a></li>
<li><a href="#org5b624c3">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="#org4a411b1">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-orgbe50f90" class="outline-2">
<h2 id="orgbe50f90"><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="org47dc0c6" 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-org0dab00d" class="outline-2">
<h2 id="org0dab00d"><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-orgc422c9a" class="outline-3">
<h3 id="orgc422c9a"><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="org7d210a7" 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-org0b58dd4" class="outline-3">
<h3 id="org0b58dd4"><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="orgb629f73" 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-orgcfa248e" class="outline-3">
<h3 id="orgcfa248e"><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="orga0c8098" 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-org2f8886f" class="outline-3">
<h3 id="org2f8886f"><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="org4bc57ae" 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-orgd37ce60" class="outline-3">
<h3 id="orgd37ce60"><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="orgde77a5a" 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-org96f525a" class="outline-2">
<h2 id="org96f525a"><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-org4a9b2bb" class="outline-3">
<h3 id="org4a9b2bb"><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-org9b72c5e" class="outline-4">
<h4 id="org9b72c5e"><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-org5adab58" class="outline-4">
<h4 id="org5adab58"><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-org4090c5c" class="outline-4">
<h4 id="org4090c5c"><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-orgcc14a46" class="outline-4">
<h4 id="orgcc14a46"><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="orgf00bac2" 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-orgb517ac4" class="outline-4">
<h4 id="orgb517ac4"><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-org8dd04a9" class="outline-3">
<h3 id="org8dd04a9"><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="org9c9cfed" 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-org6970a2a" class="outline-4">
<h4 id="org6970a2a"><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-orgdd2383d" class="outline-3">
<h3 id="orgdd2383d"><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="orge854fac" 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-orgeff3f35" class="outline-2">
<h2 id="orgeff3f35"><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-org9efa08b" class="outline-3">
<h3 id="org9efa08b"><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="orgcfa92cc" 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-org2e07651" 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="org41330e5" 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-org7f7ed36" 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="org18e0cc2" 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-org06ea445" class="outline-3">
<h3 id="org06ea445"><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="org3e11bda" 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-orgf1ad89d" class="outline-4">
<h4 id="orgf1ad89d"><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="org2287357" 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-org7ea4fa8" class="outline-4">
<h4 id="org7ea4fa8"><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="orgf21092e" 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-org65db162" class="outline-2">
<h2 id="org65db162"><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-orgfd8b28e" class="outline-3">
<h3 id="orgfd8b28e"><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="orgeec39f0" 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-orgaea6d6b" class="outline-3">
<h3 id="orgaea6d6b"><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="orgf3cbf9e" 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-orgaad508d" class="outline-3">
<h3 id="orgaad508d"><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="org3232219" 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-orge5cefd8" class="outline-3">
<h3 id="orge5cefd8"><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="orgf31440c" 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-orgca34420" class="outline-2">
<h2 id="orgca34420"><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-orga782f1d" class="outline-3">
<h3 id="orga782f1d"><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-orge2ec1dd" class="outline-4">
<h4 id="orge2ec1dd"><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-orgba73d40" class="outline-4">
<h4 id="orgba73d40"><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-org5b624c3" class="outline-4">
<h4 id="org5b624c3"><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="org603427a" 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-org4a411b1" class="outline-2">
<h2 id="org4a411b1"><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="org7f60df1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgcd490bc" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>