mirror of
https://github.com/TREX-CoE/trexio.git
synced 2024-10-02 14:31:05 +02:00
Deploying to gh-pages from @ TREX-CoE/trexio@2465293581 🚀
This commit is contained in:
parent
af0ef12eb6
commit
92d207e3a3
@ -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>
|
||||
<!-- 2023-02-27 Mon 14:49 -->
|
||||
<!-- 2023-02-28 Tue 08:45 -->
|
||||
<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>
|
||||
@ -383,7 +383,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: 2023-02-27 Mon 14:49</p>
|
||||
<p class="date">Created: 2023-02-28 Tue 08:45</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
118
examples.html
118
examples.html
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2023-02-27 Mon 14:49 -->
|
||||
<!-- 2023-02-28 Tue 08:45 -->
|
||||
<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,46 +346,46 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgff97e9f">1. Writing nuclear coordinates</a>
|
||||
<li><a href="#org158fd0e">1. Writing nuclear coordinates</a>
|
||||
<ul>
|
||||
<li><a href="#org6555da7">1.1. C</a></li>
|
||||
<li><a href="#org4ee2047">1.2. Python</a></li>
|
||||
<li><a href="#org0a0992f">1.3. Fortran</a></li>
|
||||
<li><a href="#org197059e">1.1. C</a></li>
|
||||
<li><a href="#orgf27f32c">1.2. Python</a></li>
|
||||
<li><a href="#org82f022e">1.3. Fortran</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgdb1b669">2. Accessing sparse quantities (integrals)</a>
|
||||
<li><a href="#org80760b2">2. Accessing sparse quantities (integrals)</a>
|
||||
<ul>
|
||||
<li><a href="#org5c94297">2.1. Fortran</a>
|
||||
<li><a href="#orge8587b7">2.1. Fortran</a>
|
||||
<ul>
|
||||
<li><a href="#org4a9ec58">2.1.1. Declare Temporary variables</a></li>
|
||||
<li><a href="#org9ed84d9">2.1.2. Obtain the name of the TREXIO file from the command line, and open it for reading</a></li>
|
||||
<li><a href="#org9d0b038">2.1.3. Read the nuclear repulsion energy</a></li>
|
||||
<li><a href="#org7103c33">2.1.4. Read the number of molecular orbitals</a></li>
|
||||
<li><a href="#org6f1df70">2.1.5. Allocate memory</a></li>
|
||||
<li><a href="#orgaad552c">2.1.6. Read one-electron quantities</a></li>
|
||||
<li><a href="#org7a12056">2.1.7. Read two-electron quantities</a>
|
||||
<li><a href="#org3fbd372">2.1.1. Declare Temporary variables</a></li>
|
||||
<li><a href="#orgadb6e55">2.1.2. Obtain the name of the TREXIO file from the command line, and open it for reading</a></li>
|
||||
<li><a href="#org66c953a">2.1.3. Read the nuclear repulsion energy</a></li>
|
||||
<li><a href="#org5b8da9b">2.1.4. Read the number of molecular orbitals</a></li>
|
||||
<li><a href="#orgbf34ead">2.1.5. Allocate memory</a></li>
|
||||
<li><a href="#org6675b09">2.1.6. Read one-electron quantities</a></li>
|
||||
<li><a href="#orgea811ff">2.1.7. Read two-electron quantities</a>
|
||||
<ul>
|
||||
<li><a href="#orgd6959a8">2.1.7.1. Electron repulsion integrals</a></li>
|
||||
<li><a href="#org3f8edd1">2.1.7.2. Reduced density matrix</a></li>
|
||||
<li><a href="#orgfe3aa73">2.1.7.1. Electron repulsion integrals</a></li>
|
||||
<li><a href="#org33ee76f">2.1.7.2. Reduced density matrix</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org7e9a6a0">2.1.8. Compute the energy</a></li>
|
||||
<li><a href="#org4fadf5a">2.1.9. Terminate</a></li>
|
||||
<li><a href="#orgd8b06b6">2.1.8. Compute the energy</a></li>
|
||||
<li><a href="#orgfeec28b">2.1.9. Terminate</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org1142ea4">3. Reading determinants</a>
|
||||
<li><a href="#orgdac014f">3. Reading determinants</a>
|
||||
<ul>
|
||||
<li><a href="#org4f40b23">3.1. Fortran</a></li>
|
||||
<li><a href="#org399a2f0">3.1. Fortran</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgff97e9f" class="outline-2">
|
||||
<h2 id="orgff97e9f"><span class="section-number-2">1</span> Writing nuclear coordinates</h2>
|
||||
<div id="outline-container-org158fd0e" class="outline-2">
|
||||
<h2 id="org158fd0e"><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
|
||||
@ -395,8 +395,8 @@ as well as the necessary TREXIO functions to perform these actions.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6555da7" class="outline-3">
|
||||
<h3 id="org6555da7"><span class="section-number-3">1.1</span> C</h3>
|
||||
<div id="outline-container-org197059e" class="outline-3">
|
||||
<h3 id="org197059e"><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;"><stdio.h></span>
|
||||
@ -446,8 +446,8 @@ as well as the necessary TREXIO functions to perform these actions.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4ee2047" class="outline-3">
|
||||
<h3 id="org4ee2047"><span class="section-number-3">1.2</span> Python</h3>
|
||||
<div id="outline-container-orgf27f32c" class="outline-3">
|
||||
<h3 id="orgf27f32c"><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
|
||||
@ -494,8 +494,8 @@ coordinates of the system.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0a0992f" class="outline-3">
|
||||
<h3 id="org0a0992f"><span class="section-number-3">1.3</span> Fortran</h3>
|
||||
<div id="outline-container-org82f022e" class="outline-3">
|
||||
<h3 id="org82f022e"><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>
|
||||
@ -552,12 +552,12 @@ coordinates of the system.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgdb1b669" class="outline-2">
|
||||
<h2 id="orgdb1b669"><span class="section-number-2">2</span> Accessing sparse quantities (integrals)</h2>
|
||||
<div id="outline-container-org80760b2" class="outline-2">
|
||||
<h2 id="org80760b2"><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-org5c94297" class="outline-3">
|
||||
<h3 id="org5c94297"><span class="section-number-3">2.1</span> Fortran</h3>
|
||||
<div id="outline-container-orge8587b7" class="outline-3">
|
||||
<h3 id="orge8587b7"><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>
|
||||
@ -603,8 +603,8 @@ One needs to read from the TREXIO file:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4a9ec58" class="outline-4">
|
||||
<h4 id="org4a9ec58"><span class="section-number-4">2.1.1</span> Declare Temporary variables</h4>
|
||||
<div id="outline-container-org3fbd372" class="outline-4">
|
||||
<h4 id="org3fbd372"><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>
|
||||
@ -619,8 +619,8 @@ One needs to read from the TREXIO file:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9ed84d9" class="outline-4">
|
||||
<h4 id="org9ed84d9"><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-orgadb6e55" class="outline-4">
|
||||
<h4 id="orgadb6e55"><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)
|
||||
@ -636,8 +636,8 @@ f = trexio_open (filename, <span style="color: #8b2252;">'r'</span>, TREXIO_HDF5
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9d0b038" class="outline-4">
|
||||
<h4 id="org9d0b038"><span class="section-number-4">2.1.3</span> Read the nuclear repulsion energy</h4>
|
||||
<div id="outline-container-org66c953a" class="outline-4">
|
||||
<h4 id="org66c953a"><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)
|
||||
@ -651,8 +651,8 @@ f = trexio_open (filename, <span style="color: #8b2252;">'r'</span>, TREXIO_HDF5
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7103c33" class="outline-4">
|
||||
<h4 id="org7103c33"><span class="section-number-4">2.1.4</span> Read the number of molecular orbitals</h4>
|
||||
<div id="outline-container-org5b8da9b" class="outline-4">
|
||||
<h4 id="org5b8da9b"><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)
|
||||
@ -666,8 +666,8 @@ f = trexio_open (filename, <span style="color: #8b2252;">'r'</span>, TREXIO_HDF5
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6f1df70" class="outline-4">
|
||||
<h4 id="org6f1df70"><span class="section-number-4">2.1.5</span> Allocate memory</h4>
|
||||
<div id="outline-container-orgbf34ead" class="outline-4">
|
||||
<h4 id="orgbf34ead"><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) )
|
||||
@ -679,8 +679,8 @@ W(:,:,:,:) = 0.d0
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgaad552c" class="outline-4">
|
||||
<h4 id="orgaad552c"><span class="section-number-4">2.1.6</span> Read one-electron quantities</h4>
|
||||
<div id="outline-container-org6675b09" class="outline-4">
|
||||
<h4 id="org6675b09"><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)
|
||||
@ -712,8 +712,8 @@ rc = trexio_read_rdm_1e(f, D)
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7a12056" class="outline-4">
|
||||
<h4 id="org7a12056"><span class="section-number-4">2.1.7</span> Read two-electron quantities</h4>
|
||||
<div id="outline-container-orgea811ff" class="outline-4">
|
||||
<h4 id="orgea811ff"><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
|
||||
@ -729,8 +729,8 @@ to be protected in the critical section when modified.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd6959a8" class="outline-5">
|
||||
<h5 id="orgd6959a8"><span class="section-number-5">2.1.7.1</span> Electron repulsion integrals</h5>
|
||||
<div id="outline-container-orgfe3aa73" class="outline-5">
|
||||
<h5 id="orgfe3aa73"><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)
|
||||
@ -779,8 +779,8 @@ icount = BUFSIZE
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3f8edd1" class="outline-5">
|
||||
<h5 id="org3f8edd1"><span class="section-number-5">2.1.7.2</span> Reduced density matrix</h5>
|
||||
<div id="outline-container-org33ee76f" class="outline-5">
|
||||
<h5 id="org33ee76f"><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)
|
||||
@ -824,8 +824,8 @@ icount = bufsize
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7e9a6a0" class="outline-4">
|
||||
<h4 id="org7e9a6a0"><span class="section-number-4">2.1.8</span> Compute the energy</h4>
|
||||
<div id="outline-container-orgd8b06b6" class="outline-4">
|
||||
<h4 id="orgd8b06b6"><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
|
||||
@ -871,8 +871,8 @@ E = E + E_nn
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4fadf5a" class="outline-4">
|
||||
<h4 id="org4fadf5a"><span class="section-number-4">2.1.9</span> Terminate</h4>
|
||||
<div id="outline-container-orgfeec28b" class="outline-4">
|
||||
<h4 id="orgfeec28b"><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 )
|
||||
@ -885,12 +885,12 @@ E = E + E_nn
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1142ea4" class="outline-2">
|
||||
<h2 id="org1142ea4"><span class="section-number-2">3</span> Reading determinants</h2>
|
||||
<div id="outline-container-orgdac014f" class="outline-2">
|
||||
<h2 id="orgdac014f"><span class="section-number-2">3</span> Reading determinants</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org4f40b23" class="outline-3">
|
||||
<h3 id="org4f40b23"><span class="section-number-3">3.1</span> Fortran</h3>
|
||||
<div id="outline-container-org399a2f0" class="outline-3">
|
||||
<h3 id="org399a2f0"><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>
|
||||
@ -969,7 +969,7 @@ end
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX-CoE</p>
|
||||
<p class="date">Created: 2023-02-27 Mon 14:49</p>
|
||||
<p class="date">Created: 2023-02-28 Tue 08:45</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2023-02-27 Mon 14:49 -->
|
||||
<!-- 2023-02-28 Tue 08:45 -->
|
||||
<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>
|
||||
@ -383,7 +383,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: 2023-02-27 Mon 14:49</p>
|
||||
<p class="date">Created: 2023-02-28 Tue 08:45</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2023-02-27 Mon 14:49 -->
|
||||
<!-- 2023-02-28 Tue 08:45 -->
|
||||
<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: 2023-02-27 Mon 14:49</p>
|
||||
<p class="date">Created: 2023-02-28 Tue 08:45</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
58
lib.html
58
lib.html
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2023-02-27 Mon 14:49 -->
|
||||
<!-- 2023-02-28 Tue 08:45 -->
|
||||
<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="#orgbcbc1aa">1. Format specification</a>
|
||||
<li><a href="#orgfe9954b">1. Format specification</a>
|
||||
<ul>
|
||||
<li><a href="#org1f6f5cf">1.1. Organization of the data</a></li>
|
||||
<li><a href="#org1e924c4">1.2. Data types</a></li>
|
||||
<li><a href="#org6d8933b">1.1. Organization of the data</a></li>
|
||||
<li><a href="#org7e0e39d">1.2. Data types</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org775e425">2. The TREXIO library</a>
|
||||
<li><a href="#org69a5574">2. The TREXIO library</a>
|
||||
<ul>
|
||||
<li><a href="#orgde64155">2.1. The front-end</a></li>
|
||||
<li><a href="#org9fbf920">2.2. The back-end</a></li>
|
||||
<li><a href="#orge0784da">2.3. Supported languages</a></li>
|
||||
<li><a href="#org95bafd1">2.4. Source code generation and documentation</a></li>
|
||||
<li><a href="#org3727c66">2.5. Availability</a></li>
|
||||
<li><a href="#orgc8797ec">2.1. The front-end</a></li>
|
||||
<li><a href="#org81e510a">2.2. The back-end</a></li>
|
||||
<li><a href="#org49732cc">2.3. Supported languages</a></li>
|
||||
<li><a href="#orgdcf39b0">2.4. Source code generation and documentation</a></li>
|
||||
<li><a href="#org3dcfd35">2.5. Availability</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -366,8 +366,8 @@ for the JavaScript code in this tag.
|
||||
</div>
|
||||
|
||||
|
||||
<div id="outline-container-orgbcbc1aa" class="outline-2">
|
||||
<h2 id="orgbcbc1aa"><span class="section-number-2">1</span> Format specification</h2>
|
||||
<div id="outline-container-orgfe9954b" class="outline-2">
|
||||
<h2 id="orgfe9954b"><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-org1f6f5cf" class="outline-3">
|
||||
<h3 id="org1f6f5cf"><span class="section-number-3">1.1</span> Organization of the data</h3>
|
||||
<div id="outline-container-org6d8933b" class="outline-3">
|
||||
<h3 id="org6d8933b"><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-org1e924c4" class="outline-3">
|
||||
<h3 id="org1e924c4"><span class="section-number-3">1.2</span> Data types</h3>
|
||||
<div id="outline-container-org7e0e39d" class="outline-3">
|
||||
<h3 id="org7e0e39d"><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-org775e425" class="outline-2">
|
||||
<h2 id="org775e425"><span class="section-number-2">2</span> The TREXIO library</h2>
|
||||
<div id="outline-container-org69a5574" class="outline-2">
|
||||
<h2 id="org69a5574"><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-orgde64155" class="outline-3">
|
||||
<h3 id="orgde64155"><span class="section-number-3">2.1</span> The front-end</h3>
|
||||
<div id="outline-container-orgc8797ec" class="outline-3">
|
||||
<h3 id="orgc8797ec"><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-org9fbf920" class="outline-3">
|
||||
<h3 id="org9fbf920"><span class="section-number-3">2.2</span> The back-end</h3>
|
||||
<div id="outline-container-org81e510a" class="outline-3">
|
||||
<h3 id="org81e510a"><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-orge0784da" class="outline-3">
|
||||
<h3 id="orge0784da"><span class="section-number-3">2.3</span> Supported languages</h3>
|
||||
<div id="outline-container-org49732cc" class="outline-3">
|
||||
<h3 id="org49732cc"><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-org95bafd1" class="outline-3">
|
||||
<h3 id="org95bafd1"><span class="section-number-3">2.4</span> Source code generation and documentation</h3>
|
||||
<div id="outline-container-orgdcf39b0" class="outline-3">
|
||||
<h3 id="orgdcf39b0"><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-org3727c66" class="outline-3">
|
||||
<h3 id="org3727c66"><span class="section-number-3">2.5</span> Availability</h3>
|
||||
<div id="outline-container-org3dcfd35" class="outline-3">
|
||||
<h3 id="org3dcfd35"><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: 2023-02-27 Mon 14:49</p>
|
||||
<p class="date">Created: 2023-02-28 Tue 08:45</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
@ -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>
|
||||
<!-- 2023-02-27 Mon 14:48 -->
|
||||
<!-- 2023-02-28 Tue 08:45 -->
|
||||
<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="#orgba90426">1. Template for HDF5 definitions</a></li>
|
||||
<li><a href="#org3bc739d">2. Template for HDF5 structures</a></li>
|
||||
<li><a href="#orgea144fd">3. Template for HDF5 init/deinit</a></li>
|
||||
<li><a href="#org3e61cbc">4. Template for HDF5 has a group</a></li>
|
||||
<li><a href="#org0033314">5. Template for HDF5 has/read/write a numerical attribute</a></li>
|
||||
<li><a href="#orgf0253bf">6. Template for HDF5 has/read/write a dataset of numerical data</a></li>
|
||||
<li><a href="#orgc9a0cf3">7. Template for HDF5 has/read/write a dataset of sparse data</a></li>
|
||||
<li><a href="#orgbcefcbc">8. Template for HDF5 has/read/write a dataset of buffered vectors</a></li>
|
||||
<li><a href="#org0b095b1">9. Template for HDF5 has/read/write a dataset of strings</a></li>
|
||||
<li><a href="#orgc3f42f8">10. Template for HDF5 has/read/write a string attribute</a></li>
|
||||
<li><a href="#org474df78">11. Template for HDF5 delete a group (UNSAFE mode)</a></li>
|
||||
<li><a href="#org30a483f">12. Source code for the determinant part</a></li>
|
||||
<li><a href="#orga4e525f">13. Helper functions</a></li>
|
||||
<li><a href="#orgedbba63">1. Template for HDF5 definitions</a></li>
|
||||
<li><a href="#org06bbfba">2. Template for HDF5 structures</a></li>
|
||||
<li><a href="#org14f135f">3. Template for HDF5 init/deinit</a></li>
|
||||
<li><a href="#org77739b6">4. Template for HDF5 has a group</a></li>
|
||||
<li><a href="#org50f025f">5. Template for HDF5 has/read/write a numerical attribute</a></li>
|
||||
<li><a href="#org08eea6d">6. Template for HDF5 has/read/write a dataset of numerical data</a></li>
|
||||
<li><a href="#org96165b0">7. Template for HDF5 has/read/write a dataset of sparse data</a></li>
|
||||
<li><a href="#org2e64815">8. Template for HDF5 has/read/write a dataset of buffered vectors</a></li>
|
||||
<li><a href="#org31fda33">9. Template for HDF5 has/read/write a dataset of strings</a></li>
|
||||
<li><a href="#org733e923">10. Template for HDF5 has/read/write a string attribute</a></li>
|
||||
<li><a href="#org1c150e2">11. Template for HDF5 delete a group (UNSAFE mode)</a></li>
|
||||
<li><a href="#org54e36e0">12. Source code for the determinant part</a></li>
|
||||
<li><a href="#org2049b57">13. Helper functions</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgba90426" class="outline-2">
|
||||
<h2 id="orgba90426"><span class="section-number-2">1</span> Template for HDF5 definitions</h2>
|
||||
<div id="outline-container-orgedbba63" class="outline-2">
|
||||
<h2 id="orgedbba63"><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-org3bc739d" class="outline-2">
|
||||
<h2 id="org3bc739d"><span class="section-number-2">2</span> Template for HDF5 structures</h2>
|
||||
<div id="outline-container-org06bbfba" class="outline-2">
|
||||
<h2 id="org06bbfba"><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-orgea144fd" class="outline-2">
|
||||
<h2 id="orgea144fd"><span class="section-number-2">3</span> Template for HDF5 init/deinit</h2>
|
||||
<div id="outline-container-org14f135f" class="outline-2">
|
||||
<h2 id="org14f135f"><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-org3e61cbc" class="outline-2">
|
||||
<h2 id="org3e61cbc"><span class="section-number-2">4</span> Template for HDF5 has a group</h2>
|
||||
<div id="outline-container-org77739b6" class="outline-2">
|
||||
<h2 id="org77739b6"><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-org0033314" class="outline-2">
|
||||
<h2 id="org0033314"><span class="section-number-2">5</span> Template for HDF5 has/read/write a numerical attribute</h2>
|
||||
<div id="outline-container-org50f025f" class="outline-2">
|
||||
<h2 id="org50f025f"><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-orgf0253bf" class="outline-2">
|
||||
<h2 id="orgf0253bf"><span class="section-number-2">6</span> Template for HDF5 has/read/write a dataset of numerical data</h2>
|
||||
<div id="outline-container-org08eea6d" class="outline-2">
|
||||
<h2 id="org08eea6d"><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-orgc9a0cf3" class="outline-2">
|
||||
<h2 id="orgc9a0cf3"><span class="section-number-2">7</span> Template for HDF5 has/read/write a dataset of sparse data</h2>
|
||||
<div id="outline-container-org96165b0" class="outline-2">
|
||||
<h2 id="org96165b0"><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
|
||||
@ -973,8 +973,8 @@ due to the fact that the sparse data will be written in chunks of user-defined s
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgbcefcbc" class="outline-2">
|
||||
<h2 id="orgbcefcbc"><span class="section-number-2">8</span> Template for HDF5 has/read/write a dataset of buffered vectors</h2>
|
||||
<div id="outline-container-org2e64815" class="outline-2">
|
||||
<h2 id="org2e64815"><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.
|
||||
@ -1108,8 +1108,8 @@ Chunked I/O in HDF5 for <code>buffered</code> data.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0b095b1" class="outline-2">
|
||||
<h2 id="org0b095b1"><span class="section-number-2">9</span> Template for HDF5 has/read/write a dataset of strings</h2>
|
||||
<div id="outline-container-org31fda33" class="outline-2">
|
||||
<h2 id="org31fda33"><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>
|
||||
@ -1306,8 +1306,8 @@ Chunked I/O in HDF5 for <code>buffered</code> data.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc3f42f8" class="outline-2">
|
||||
<h2 id="orgc3f42f8"><span class="section-number-2">10</span> Template for HDF5 has/read/write a string attribute</h2>
|
||||
<div id="outline-container-org733e923" class="outline-2">
|
||||
<h2 id="org733e923"><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>
|
||||
@ -1434,8 +1434,8 @@ Chunked I/O in HDF5 for <code>buffered</code> data.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org474df78" class="outline-2">
|
||||
<h2 id="org474df78"><span class="section-number-2">11</span> Template for HDF5 delete a group (UNSAFE mode)</h2>
|
||||
<div id="outline-container-org1c150e2" class="outline-2">
|
||||
<h2 id="org1c150e2"><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 < 1.10) unlinking an object was not working as expected
|
||||
@ -1475,8 +1475,8 @@ Thus, any corrupted/lost file space will remain in the first file. The use of <c
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org30a483f" class="outline-2">
|
||||
<h2 id="org30a483f"><span class="section-number-2">12</span> Source code for the determinant part</h2>
|
||||
<div id="outline-container-org54e36e0" class="outline-2">
|
||||
<h2 id="org54e36e0"><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.
|
||||
@ -1578,8 +1578,8 @@ Size specifies the number of data items (e.g. determinants) to process.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga4e525f" class="outline-2">
|
||||
<h2 id="orga4e525f"><span class="section-number-2">13</span> Helper functions</h2>
|
||||
<div id="outline-container-org2049b57" class="outline-2">
|
||||
<h2 id="org2049b57"><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>
|
||||
@ -1842,7 +1842,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: 2023-02-27 Mon 14:48</p>
|
||||
<p class="date">Created: 2023-02-28 Tue 08:45</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2023-02-27 Mon 14:48 -->
|
||||
<!-- 2023-02-28 Tue 08:45 -->
|
||||
<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="#org44e53b2">1. Template for group-related structures in text back end</a></li>
|
||||
<li><a href="#org8a7f785">2. Template for general structure in text back end</a></li>
|
||||
<li><a href="#org0869b1b">3. Initialize function (constant part)</a></li>
|
||||
<li><a href="#org11d40f5">4. Deinitialize function (templated part)</a></li>
|
||||
<li><a href="#org5cbf9c8">5. Flush function (templated part)</a></li>
|
||||
<li><a href="#org6e978dd">6. Template for text read a group</a></li>
|
||||
<li><a href="#orgaa06684">7. Template for text has a group</a></li>
|
||||
<li><a href="#org9671160">8. Template for text flush a group</a></li>
|
||||
<li><a href="#org037649d">9. Template for text free memory</a></li>
|
||||
<li><a href="#orgd150245">10. Template for has/read/write a numerical attribute</a></li>
|
||||
<li><a href="#org3e05051">11. Template for has/read/write a dataset of numerical data</a></li>
|
||||
<li><a href="#org136c4a5">12. Template for has/read/write a dataset of strings</a></li>
|
||||
<li><a href="#orgd6106c4">13. Template for has/read/write a string attribute</a></li>
|
||||
<li><a href="#org0c14566">14. Template for has/read/write the dataset of sparse data</a></li>
|
||||
<li><a href="#org76668c6">15. Template for has/read/write a buffered vector</a></li>
|
||||
<li><a href="#org116764b">16. Template for text delete a group (UNSAFE mode)</a></li>
|
||||
<li><a href="#orgf67e727">17. Source code for the determinant part</a></li>
|
||||
<li><a href="#org70a8416">1. Template for group-related structures in text back end</a></li>
|
||||
<li><a href="#org4dbd8dd">2. Template for general structure in text back end</a></li>
|
||||
<li><a href="#orgc7e48fb">3. Initialize function (constant part)</a></li>
|
||||
<li><a href="#org4331733">4. Deinitialize function (templated part)</a></li>
|
||||
<li><a href="#orgb138f63">5. Flush function (templated part)</a></li>
|
||||
<li><a href="#orgfe9c43b">6. Template for text read a group</a></li>
|
||||
<li><a href="#org59be732">7. Template for text has a group</a></li>
|
||||
<li><a href="#org8582fd4">8. Template for text flush a group</a></li>
|
||||
<li><a href="#org2d07e1c">9. Template for text free memory</a></li>
|
||||
<li><a href="#org3aef64a">10. Template for has/read/write a numerical attribute</a></li>
|
||||
<li><a href="#orgcc400a2">11. Template for has/read/write a dataset of numerical data</a></li>
|
||||
<li><a href="#org407d05f">12. Template for has/read/write a dataset of strings</a></li>
|
||||
<li><a href="#org66eacab">13. Template for has/read/write a string attribute</a></li>
|
||||
<li><a href="#org73de620">14. Template for has/read/write the dataset of sparse data</a></li>
|
||||
<li><a href="#orgd05aa78">15. Template for has/read/write a buffered vector</a></li>
|
||||
<li><a href="#org0b1a6c4">16. Template for text delete a group (UNSAFE mode)</a></li>
|
||||
<li><a href="#org9d6e5fe">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-org44e53b2" class="outline-2">
|
||||
<h2 id="org44e53b2"><span class="section-number-2">1</span> Template for group-related structures in text back end</h2>
|
||||
<div id="outline-container-org70a8416" class="outline-2">
|
||||
<h2 id="org70a8416"><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-org8a7f785" class="outline-2">
|
||||
<h2 id="org8a7f785"><span class="section-number-2">2</span> Template for general structure in text back end</h2>
|
||||
<div id="outline-container-org4dbd8dd" class="outline-2">
|
||||
<h2 id="org4dbd8dd"><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-org0869b1b" class="outline-2">
|
||||
<h2 id="org0869b1b"><span class="section-number-2">3</span> Initialize function (constant part)</h2>
|
||||
<div id="outline-container-orgc7e48fb" class="outline-2">
|
||||
<h2 id="orgc7e48fb"><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>
|
||||
@ -571,8 +571,8 @@ corresponding types for all back ends can be safely casted to
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org11d40f5" class="outline-2">
|
||||
<h2 id="org11d40f5"><span class="section-number-2">4</span> Deinitialize function (templated part)</h2>
|
||||
<div id="outline-container-org4331733" class="outline-2">
|
||||
<h2 id="org4331733"><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>
|
||||
@ -594,8 +594,8 @@ corresponding types for all back ends can be safely casted to
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5cbf9c8" class="outline-2">
|
||||
<h2 id="org5cbf9c8"><span class="section-number-2">5</span> Flush function (templated part)</h2>
|
||||
<div id="outline-container-orgb138f63" class="outline-2">
|
||||
<h2 id="orgb138f63"><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>
|
||||
@ -618,8 +618,8 @@ corresponding types for all back ends can be safely casted to
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6e978dd" class="outline-2">
|
||||
<h2 id="org6e978dd"><span class="section-number-2">6</span> Template for text read a group</h2>
|
||||
<div id="outline-container-orgfe9c43b" class="outline-2">
|
||||
<h2 id="orgfe9c43b"><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*
|
||||
@ -845,8 +845,8 @@ trexio_text_read_$group$ (<span style="color: #228b22;">trexio_text_t</span>* <s
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgaa06684" class="outline-2">
|
||||
<h2 id="orgaa06684"><span class="section-number-2">7</span> Template for text has a group</h2>
|
||||
<div id="outline-container-org59be732" class="outline-2">
|
||||
<h2 id="org59be732"><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>
|
||||
@ -886,8 +886,8 @@ trexio_text_read_$group$ (<span style="color: #228b22;">trexio_text_t</span>* <s
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9671160" class="outline-2">
|
||||
<h2 id="org9671160"><span class="section-number-2">8</span> Template for text flush a group</h2>
|
||||
<div id="outline-container-org8582fd4" class="outline-2">
|
||||
<h2 id="org8582fd4"><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>
|
||||
@ -951,8 +951,8 @@ trexio_text_read_$group$ (<span style="color: #228b22;">trexio_text_t</span>* <s
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org037649d" class="outline-2">
|
||||
<h2 id="org037649d"><span class="section-number-2">9</span> Template for text free memory</h2>
|
||||
<div id="outline-container-org2d07e1c" class="outline-2">
|
||||
<h2 id="org2d07e1c"><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.
|
||||
@ -1021,8 +1021,8 @@ This function is called upon the non-successful exit from the <code>trexio_text_
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd150245" class="outline-2">
|
||||
<h2 id="orgd150245"><span class="section-number-2">10</span> Template for has/read/write a numerical attribute</h2>
|
||||
<div id="outline-container-org3aef64a" class="outline-2">
|
||||
<h2 id="org3aef64a"><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>
|
||||
@ -1085,8 +1085,8 @@ This function is called upon the non-successful exit from the <code>trexio_text_
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3e05051" class="outline-2">
|
||||
<h2 id="org3e05051"><span class="section-number-2">11</span> Template for has/read/write a dataset of numerical data</h2>
|
||||
<div id="outline-container-orgcc400a2" class="outline-2">
|
||||
<h2 id="orgcc400a2"><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.
|
||||
@ -1182,8 +1182,8 @@ The <code>group_dset</code> array is assumed allocated with the appropriate size
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org136c4a5" class="outline-2">
|
||||
<h2 id="org136c4a5"><span class="section-number-2">12</span> Template for has/read/write a dataset of strings</h2>
|
||||
<div id="outline-container-org407d05f" class="outline-2">
|
||||
<h2 id="org407d05f"><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.
|
||||
@ -1284,8 +1284,8 @@ The <code>group_dset</code> array is assumed allocated with the appropriate size
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orgd6106c4" class="outline-2">
|
||||
<h2 id="orgd6106c4"><span class="section-number-2">13</span> Template for has/read/write a string attribute</h2>
|
||||
<div id="outline-container-org66eacab" class="outline-2">
|
||||
<h2 id="org66eacab"><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>
|
||||
@ -1359,8 +1359,8 @@ The <code>group_dset</code> array is assumed allocated with the appropriate size
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org0c14566" class="outline-2">
|
||||
<h2 id="org0c14566"><span class="section-number-2">14</span> Template for has/read/write the dataset of sparse data</h2>
|
||||
<div id="outline-container-org73de620" class="outline-2">
|
||||
<h2 id="org73de620"><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
|
||||
@ -1650,8 +1650,8 @@ User provides indices and values of the sparse array as two separate variables.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org76668c6" class="outline-2">
|
||||
<h2 id="org76668c6"><span class="section-number-2">15</span> Template for has/read/write a buffered vector</h2>
|
||||
<div id="outline-container-orgd05aa78" class="outline-2">
|
||||
<h2 id="orgd05aa78"><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
|
||||
@ -1881,8 +1881,8 @@ Size specifies the number of vector elements to be written.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-org116764b" class="outline-2">
|
||||
<h2 id="org116764b"><span class="section-number-2">16</span> Template for text delete a group (UNSAFE mode)</h2>
|
||||
<div id="outline-container-org0b1a6c4" class="outline-2">
|
||||
<h2 id="org0b1a6c4"><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>
|
||||
@ -1910,8 +1910,8 @@ Size specifies the number of vector elements to be written.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf67e727" class="outline-2">
|
||||
<h2 id="orgf67e727"><span class="section-number-2">17</span> Source code for the determinant part</h2>
|
||||
<div id="outline-container-org9d6e5fe" class="outline-2">
|
||||
<h2 id="org9d6e5fe"><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
|
||||
@ -2103,7 +2103,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: 2023-02-27 Mon 14:48</p>
|
||||
<p class="date">Created: 2023-02-28 Tue 08:45</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
470
trex.html
470
trex.html
@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2023-02-27 Mon 14:49 -->
|
||||
<!-- 2023-02-28 Tue 08:45 -->
|
||||
<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,70 +346,70 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org96741d5">1. Metadata (metadata group)</a></li>
|
||||
<li><a href="#org8ec9421">2. System</a>
|
||||
<li><a href="#org2ebddf5">1. Metadata (metadata group)</a></li>
|
||||
<li><a href="#org173f3cd">2. System</a>
|
||||
<ul>
|
||||
<li><a href="#org32f95a5">2.1. Nucleus (nucleus group)</a></li>
|
||||
<li><a href="#orgd37510d">2.2. Cell (cell group)</a></li>
|
||||
<li><a href="#orgf07f5f7">2.3. Periodic boundary calculations (pbc group)</a></li>
|
||||
<li><a href="#orgd8da273">2.4. Electron (electron group)</a></li>
|
||||
<li><a href="#org0c07138">2.5. Ground or excited states (state group)</a></li>
|
||||
<li><a href="#orgc8a8bd1">2.1. Nucleus (nucleus group)</a></li>
|
||||
<li><a href="#org1224ba2">2.2. Cell (cell group)</a></li>
|
||||
<li><a href="#orgb6f75c7">2.3. Periodic boundary calculations (pbc group)</a></li>
|
||||
<li><a href="#org2cf3459">2.4. Electron (electron group)</a></li>
|
||||
<li><a href="#org6f2a3bf">2.5. Ground or excited states (state group)</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org9b4fd7a">3. Basis functions</a>
|
||||
<li><a href="#org109fbe5">3. Basis functions</a>
|
||||
<ul>
|
||||
<li><a href="#org1b1beec">3.1. Basis set (basis group)</a>
|
||||
<li><a href="#org8c3f1f0">3.1. Basis set (basis group)</a>
|
||||
<ul>
|
||||
<li><a href="#orga2197ff">3.1.1. Gaussian and Slater-type orbitals</a></li>
|
||||
<li><a href="#org0c68bad">3.1.2. Plane waves</a></li>
|
||||
<li><a href="#org5ebd679">3.1.3. Data definitions</a></li>
|
||||
<li><a href="#org5497dbf">3.1.4. Example</a></li>
|
||||
<li><a href="#org4641ebe">3.1.1. Gaussian and Slater-type orbitals</a></li>
|
||||
<li><a href="#orgd005813">3.1.2. Plane waves</a></li>
|
||||
<li><a href="#org9729e77">3.1.3. Data definitions</a></li>
|
||||
<li><a href="#org56e4bd0">3.1.4. Example</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgd9418cd">3.2. Effective core potentials (ecp group)</a>
|
||||
<li><a href="#orgd6d9644">3.2. Effective core potentials (ecp group)</a>
|
||||
<ul>
|
||||
<li><a href="#org6bd429e">3.2.1. Example</a></li>
|
||||
<li><a href="#org36dc5a6">3.2.1. Example</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orga99c9c0">3.3. Numerical integration grid (grid group)</a></li>
|
||||
<li><a href="#org4c5de58">3.3. Numerical integration grid (grid group)</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orga5b10a6">4. Orbitals</a>
|
||||
<li><a href="#orgebe58ff">4. Orbitals</a>
|
||||
<ul>
|
||||
<li><a href="#orgd323161">4.1. Atomic orbitals (ao group)</a>
|
||||
<li><a href="#org54aab01">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="#orgb005ca3">4.2. Molecular orbitals (mo group)</a>
|
||||
<li><a href="#org40c725d">4.2. Molecular orbitals (mo group)</a>
|
||||
<ul>
|
||||
<li><a href="#org4d54fb9">4.2.1. One-electron integrals (<code>mo_1e_int</code> group)</a></li>
|
||||
<li><a href="#orgebf8764">4.2.2. Two-electron integrals (<code>mo_2e_int</code> group)</a></li>
|
||||
<li><a href="#org7e0442b">4.2.1. One-electron integrals (<code>mo_1e_int</code> group)</a></li>
|
||||
<li><a href="#orgf09167a">4.2.2. Two-electron integrals (<code>mo_2e_int</code> group)</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgccc826f">5. Multi-determinant information</a>
|
||||
<li><a href="#orgc37ab7a">5. Multi-determinant information</a>
|
||||
<ul>
|
||||
<li><a href="#orgacdf8b5">5.1. Slater determinants (determinant group)</a></li>
|
||||
<li><a href="#org3ba4366">5.2. Configuration state functions (csf group)</a></li>
|
||||
<li><a href="#orge5bf65d">5.3. Amplitudes (amplitude group)</a></li>
|
||||
<li><a href="#orgba8fd10">5.4. Reduced density matrices (rdm group)</a></li>
|
||||
<li><a href="#org93fc46f">5.1. Slater determinants (determinant group)</a></li>
|
||||
<li><a href="#org4d08f66">5.2. Configuration state functions (csf group)</a></li>
|
||||
<li><a href="#orge0c7d9f">5.3. Amplitudes (amplitude group)</a></li>
|
||||
<li><a href="#org2f63f7c">5.4. Reduced density matrices (rdm group)</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orge999bd7">6. Correlation factors</a>
|
||||
<li><a href="#org8a1c9e5">6. Correlation factors</a>
|
||||
<ul>
|
||||
<li><a href="#orgce559e0">6.1. Jastrow factor (jastrow group)</a>
|
||||
<li><a href="#org1cee547">6.1. Jastrow factor (jastrow group)</a>
|
||||
<ul>
|
||||
<li><a href="#org4bf32ce">6.1.1. CHAMP</a></li>
|
||||
<li><a href="#orgc5bd558">6.1.2. Mu</a></li>
|
||||
<li><a href="#orgd9c89a3">6.1.3. Table of values</a></li>
|
||||
<li><a href="#org18e234c">6.1.1. CHAMP</a></li>
|
||||
<li><a href="#orgb0325e6">6.1.2. Mu</a></li>
|
||||
<li><a href="#org1af10ad">6.1.3. Table of values</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org706769b">7. Quantum Monte Carlo data (qmc group)</a></li>
|
||||
<li><a href="#orga545421">7. Quantum Monte Carlo data (qmc group)</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
@ -422,8 +422,8 @@ is reversed in the produced <code>trex.json</code> configuration file as the
|
||||
library is written in C.
|
||||
</p>
|
||||
|
||||
<div id="outline-container-org96741d5" class="outline-2">
|
||||
<h2 id="org96741d5"><span class="section-number-2">1</span> Metadata (metadata group)</h2>
|
||||
<div id="outline-container-org2ebddf5" class="outline-2">
|
||||
<h2 id="org2ebddf5"><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,
|
||||
@ -433,7 +433,7 @@ have participated to the creation of the file, a list of authors of
|
||||
the file, and a textual description.
|
||||
</p>
|
||||
|
||||
<table id="org26d1938" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org8f220f1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -516,19 +516,19 @@ value can be manually overwritten (in unsafe mode) from <code>1</code> to <code>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8ec9421" class="outline-2">
|
||||
<h2 id="org8ec9421"><span class="section-number-2">2</span> System</h2>
|
||||
<div id="outline-container-org173f3cd" class="outline-2">
|
||||
<h2 id="org173f3cd"><span class="section-number-2">2</span> System</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-org32f95a5" class="outline-3">
|
||||
<h3 id="org32f95a5"><span class="section-number-3">2.1</span> Nucleus (nucleus group)</h3>
|
||||
<div id="outline-container-orgc8a8bd1" class="outline-3">
|
||||
<h3 id="orgc8a8bd1"><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="org0bfecaa" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org04ff911" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -595,15 +595,15 @@ given in Cartesian \((x,y,z)\) format.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd37510d" class="outline-3">
|
||||
<h3 id="orgd37510d"><span class="section-number-3">2.2</span> Cell (cell group)</h3>
|
||||
<div id="outline-container-org1224ba2" class="outline-3">
|
||||
<h3 id="org1224ba2"><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="org3da6328" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org7bca4af" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -677,15 +677,15 @@ used in periodic calculations.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf07f5f7" class="outline-3">
|
||||
<h3 id="orgf07f5f7"><span class="section-number-3">2.3</span> Periodic boundary calculations (pbc group)</h3>
|
||||
<div id="outline-container-orgb6f75c7" class="outline-3">
|
||||
<h3 id="orgb6f75c7"><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="org2c8250e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgf1604d0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -724,15 +724,27 @@ defined in this group.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd8da273" class="outline-3">
|
||||
<h3 id="orgd8da273"><span class="section-number-3">2.4</span> Electron (electron group)</h3>
|
||||
<div id="outline-container-org2cf3459" class="outline-3">
|
||||
<h3 id="org2cf3459"><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
|
||||
nuclei are considered as fixed point charges with Cartesian
|
||||
coordinates. The wave function is stored in the spin-free
|
||||
formalism, and therefore, it is necessary for the user to
|
||||
explicitly store the number of electrons with spin up
|
||||
(\(N_\uparrow\)) and spin down (\(N_\downarrow\)). These numbers
|
||||
correspond to the normalization of the spin-up and spin-down
|
||||
single-particle reduced density matrices.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
We consider wave functions expressed in the spin-free formalism, where
|
||||
the number of ↑ and ↓ electrons is fixed.
|
||||
</p>
|
||||
|
||||
<table id="org4750fa8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
<table id="org439ab59" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -778,8 +790,8 @@ the number of ↑ and ↓ electrons is fixed.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0c07138" class="outline-3">
|
||||
<h3 id="org0c07138"><span class="section-number-3">2.5</span> Ground or excited states (state group)</h3>
|
||||
<div id="outline-container-org6f2a3bf" class="outline-3">
|
||||
<h3 id="org6f2a3bf"><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
|
||||
@ -796,7 +808,7 @@ integrals, etc.
|
||||
The <code>id</code> and <code>current_label</code> attributes need to be specified for each file.
|
||||
</p>
|
||||
|
||||
<table id="orgb1f968d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org9b6798f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -857,21 +869,21 @@ The <code>id</code> and <code>current_label</code> attributes need to be specifi
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9b4fd7a" class="outline-2">
|
||||
<h2 id="org9b4fd7a"><span class="section-number-2">3</span> Basis functions</h2>
|
||||
<div id="outline-container-org109fbe5" class="outline-2">
|
||||
<h2 id="org109fbe5"><span class="section-number-2">3</span> Basis functions</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org1b1beec" class="outline-3">
|
||||
<h3 id="org1b1beec"><span class="section-number-3">3.1</span> Basis set (basis group)</h3>
|
||||
<div id="outline-container-org8c3f1f0" class="outline-3">
|
||||
<h3 id="org8c3f1f0"><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-orga2197ff" class="outline-4">
|
||||
<h4 id="orga2197ff"><span class="section-number-4">3.1.1</span> Gaussian and Slater-type orbitals</h4>
|
||||
<div id="outline-container-org4641ebe" class="outline-4">
|
||||
<h4 id="org4641ebe"><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, we enable
|
||||
the possibility to define <i>dummy atoms</i> to place basis functions in
|
||||
random positions.
|
||||
We consider here basis functions centered on nuclei. Hence, it is
|
||||
possibile to define <i>dummy atoms</i> to place basis functions in
|
||||
arbitrary positions.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -920,8 +932,8 @@ All the basis set parameters are stored in one-dimensional arrays.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0c68bad" class="outline-4">
|
||||
<h4 id="org0c68bad"><span class="section-number-4">3.1.2</span> Plane waves</h4>
|
||||
<div id="outline-container-orgd005813" class="outline-4">
|
||||
<h4 id="orgd005813"><span class="section-number-4">3.1.2</span> Plane waves</h4>
|
||||
<div class="outline-text-4" id="text-3-1-2">
|
||||
<p>
|
||||
A plane wave is defined as
|
||||
@ -942,10 +954,10 @@ plane waves.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5ebd679" class="outline-4">
|
||||
<h4 id="org5ebd679"><span class="section-number-4">3.1.3</span> Data definitions</h4>
|
||||
<div id="outline-container-org9729e77" class="outline-4">
|
||||
<h4 id="org9729e77"><span class="section-number-4">3.1.3</span> Data definitions</h4>
|
||||
<div class="outline-text-4" id="text-3-1-3">
|
||||
<table id="orge12ec11" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org3db7ec2" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1054,8 +1066,8 @@ plane waves.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org5497dbf" class="outline-4">
|
||||
<h4 id="org5497dbf"><span class="section-number-4">3.1.4</span> Example</h4>
|
||||
<div id="outline-container-org56e4bd0" class="outline-4">
|
||||
<h4 id="org56e4bd0"><span class="section-number-4">3.1.4</span> Example</h4>
|
||||
<div class="outline-text-4" id="text-3-1-4">
|
||||
<p>
|
||||
For example, consider H<sub>2</sub> with the following basis set (in GAMESS
|
||||
@ -1133,8 +1145,8 @@ prim_factor =
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd9418cd" class="outline-3">
|
||||
<h3 id="orgd9418cd"><span class="section-number-3">3.2</span> Effective core potentials (ecp group)</h3>
|
||||
<div id="outline-container-orgd6d9644" class="outline-3">
|
||||
<h3 id="orgd6d9644"><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
|
||||
@ -1166,7 +1178,7 @@ All the functions \(V_{A\ell}\) are parameterized as:
|
||||
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="org7b72d04" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgbe1da35" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1270,8 +1282,8 @@ If you encounter the aforementioned issue, please report it to our
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6bd429e" class="outline-4">
|
||||
<h4 id="org6bd429e"><span class="section-number-4">3.2.1</span> Example</h4>
|
||||
<div id="outline-container-org36dc5a6" class="outline-4">
|
||||
<h4 id="org36dc5a6"><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
|
||||
@ -1334,8 +1346,8 @@ power = [
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga99c9c0" class="outline-3">
|
||||
<h3 id="orga99c9c0"><span class="section-number-3">3.3</span> Numerical integration grid (grid group)</h3>
|
||||
<div id="outline-container-org4c5de58" class="outline-3">
|
||||
<h3 id="org4c5de58"><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
|
||||
@ -1350,7 +1362,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="org10405cb" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgc9162b6" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1467,71 +1479,93 @@ Feel free to submit a PR if you find missing options/functionalities.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orga5b10a6" class="outline-2">
|
||||
<h2 id="orga5b10a6"><span class="section-number-2">4</span> Orbitals</h2>
|
||||
<div id="outline-container-orgebe58ff" class="outline-2">
|
||||
<h2 id="orgebe58ff"><span class="section-number-2">4</span> Orbitals</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-orgd323161" class="outline-3">
|
||||
<h3 id="orgd323161"><span class="section-number-3">4.1</span> Atomic orbitals (ao group)</h3>
|
||||
<div id="outline-container-org54aab01" class="outline-3">
|
||||
<h3 id="org54aab01"><span class="section-number-3">4.1</span> Atomic orbitals (ao group)</h3>
|
||||
<div class="outline-text-3" id="text-4-1">
|
||||
<p>
|
||||
Going from the atomic basis set to AOs implies a systematic
|
||||
construction of all the angular functions of each shell. We
|
||||
consider two cases for the angular functions: the real-valued
|
||||
spherical harmonics, and the polynomials in Cartesian coordinates.
|
||||
In the case of real spherical harmonics, the AOs are ordered as
|
||||
\(0, +1, -1, +2, -2, \dots, +m, -m\) (see <a href="https://en.wikipedia.org/wiki/Table_of_spherical_harmonics#Real_spherical_harmonics">Wikipedia</a>).
|
||||
In the case of polynomials we
|
||||
impose the canonical (or alphabetical) ordering), i.e
|
||||
</p>
|
||||
|
||||
\begin{eqnarray}
|
||||
p & : & p_x, p_y, p_z \nonumber \\
|
||||
d & : & d_{xx}, d_{xy}, d_{xz}, d_{yy}, d_{yz}, d_{zz} \nonumber \\
|
||||
f & : & f_{xxx}, f_{xxy}, f_{xxz}, f_{xyy}, f_{xyz}, f_{xzz}, f_{yyy}, f_{yyz}, f_{yzz}, …f_{zzz} \nonumber \\
|
||||
{\rm etc.} \nonumber
|
||||
\end{eqnarray}
|
||||
|
||||
<p>
|
||||
Note that there is no exception for \(p\) orbitals in spherical
|
||||
coordinates: the ordering is \(0,+1,-1\) which corresponds \(p_z, p_x, p_y\).
|
||||
</p>
|
||||
|
||||
<p>
|
||||
AOs are defined as
|
||||
</p>
|
||||
|
||||
<p>
|
||||
\[
|
||||
\chi_i (\mathbf{r}) = \mathcal{N}_i\, P_{\eta(i)}(\mathbf{r})\, R_{s(i)} (\mathbf{r})
|
||||
\chi_i (\mathbf{r}) = \mathcal{N}_i'\, P_{\eta(i)}(\mathbf{r})\, R_{s(i)} (\mathbf{r})
|
||||
\]
|
||||
</p>
|
||||
|
||||
<p>
|
||||
where \(i\) is the atomic orbital index,
|
||||
\(P\) encodes for either the
|
||||
polynomials or the spherical harmonics, \(s(i)\) returns the
|
||||
shell on which the AO is expanded, and \(\eta(i)\) denotes which
|
||||
angular function is chosen.
|
||||
\(\mathcal{N}_i\) is a normalization factor that enables the
|
||||
possibility to have different normalization coefficients within a
|
||||
shell, as in the GAMESS convention where
|
||||
\(\mathcal{N}_{x^2} \ne \mathcal{N}_{xy}\) because
|
||||
\[ \left[ \iiint \left(x-X_A \right)^2 R_{s(i)}
|
||||
(\mathbf{r}) dx\, dy\, dz \right]^{-1/2} \ne
|
||||
\left[ \iiint \left( x-X_A \right) \left( y-Y_A \right) R_{s(i)}
|
||||
(\mathbf{r}) dx\, dy\, dz \right]^{-1/2}. \]
|
||||
where \(i\) is the atomic orbital index, \(P\) refers to either
|
||||
polynomials or spherical harmonics, and \(s(i)\) specifies the shell
|
||||
on which the AO is expanded.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
In such a case, one should set the normalization of the shell (in
|
||||
the <a href="#org1b1beec">Basis set</a> section) to \(\mathcal{N}_{z^2}\), which is the
|
||||
normalization factor of the atomic orbitals in spherical coordinates.
|
||||
The normalization factor of the \(xy\) function which should be
|
||||
introduced here should be \(\frac{\mathcal{N}_{xy}}{\mathcal{N}_{z^2}}\).
|
||||
\(\eta(i)\) denotes the chosen angular function. The AOs can be
|
||||
expressed using real spherical harmonics or polynomials in Cartesian
|
||||
coordinates. In the case of real spherical harmonics, the AOs are
|
||||
ordered as \(0, +1, -1, +2, -2, \dots, + m, -m\) (see <a href="https://en.wikipedia.org/wiki/Table_of_spherical_harmonics#Real_spherical_harmonics">Wikipedia</a>). In
|
||||
the case of polynomials, the canonical (or alphabetical) ordering is
|
||||
used,
|
||||
</p>
|
||||
|
||||
<table id="orgc65e4e3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
<col class="org-left" />
|
||||
|
||||
<col class="org-left" />
|
||||
</colgroup>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="org-left">\(p\)</td>
|
||||
<td class="org-left">\(p_x, p_y, p_z\)</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left">\(d\)</td>
|
||||
<td class="org-left">\(d_{xx}, d_{xy}, d_{xz}, d_{yy}, d_{yz}, d_{zz}\)</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left">\(f\)</td>
|
||||
<td class="org-left">\(f_{xxx}, f_{xxy}, f_{xxz}, f_{xyy}, f_{xyz}\),</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"> </td>
|
||||
<td class="org-left">\(f_{xzz}, f_{yyy}, f_{yyz}, f_{yzz}, f_{zzz}\)</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left">\(\vdots\)</td>
|
||||
<td class="org-left"> </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<p>
|
||||
Note that for \(p\) orbitals in spherical coordinates, the ordering
|
||||
is \(0,+1,-1\) which corresponds to \(p_z, p_x, p_y\).
|
||||
</p>
|
||||
|
||||
<p>
|
||||
\(\mathcal{N}_i'\) is a normalization factor that allows for different
|
||||
normalization coefficients within a single shell, as in the GAMESS
|
||||
convention where each individual function is unit-normalized.
|
||||
Using GAMESS convention, the normalization factor of the shell
|
||||
\(\mathcal{N}_d\) in the <code>basis</code> group is appropriate for instance
|
||||
for the \(d_z^2\) function (i.e.
|
||||
\(\mathcal{N}_{d}\equiv\mathcal{N}_{z^2}\)) but not for the \(d_{xy}\)
|
||||
AO, so the correction factor \(\mathcal{N}_i'\) for \(d_{xy}\) in the
|
||||
<code>ao</code> groups is the ratio \(\frac{\mathcal{N}_{xy}}{\mathcal{N}_{z^2}}\).
|
||||
</p>
|
||||
|
||||
|
||||
<table id="org2f77206" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1583,7 +1617,7 @@ introduced here should be \(\frac{\mathcal{N}_{xy}}{\mathcal{N}_{z^2}}\).
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7d095cd" class="outline-4">
|
||||
<div id="outline-container-org70483d5" 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">
|
||||
@ -1601,7 +1635,7 @@ The one-electron integrals for a one-electron operator \(\hat{O}\) are
|
||||
over atomic orbitals.
|
||||
</p>
|
||||
|
||||
<table id="orgb407944" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgc71b2cf" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1696,7 +1730,7 @@ over atomic orbitals.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8374a1f" class="outline-4">
|
||||
<div id="outline-container-orgc6853a9" 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>
|
||||
@ -1722,7 +1756,7 @@ The Cholesky decomposition of the integrals can also be stored:
|
||||
\]
|
||||
</p>
|
||||
|
||||
<table id="orgcf9c303" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgc08c82c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1790,10 +1824,10 @@ The Cholesky decomposition of the integrals can also be stored:
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb005ca3" class="outline-3">
|
||||
<h3 id="orgb005ca3"><span class="section-number-3">4.2</span> Molecular orbitals (mo group)</h3>
|
||||
<div id="outline-container-org40c725d" class="outline-3">
|
||||
<h3 id="org40c725d"><span class="section-number-3">4.2</span> Molecular orbitals (mo group)</h3>
|
||||
<div class="outline-text-3" id="text-4-2">
|
||||
<table id="orgabf2b40" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgd8e9950" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1880,8 +1914,8 @@ The Cholesky decomposition of the integrals can also be stored:
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4d54fb9" class="outline-4">
|
||||
<h4 id="org4d54fb9"><span class="section-number-4">4.2.1</span> One-electron integrals (<code>mo_1e_int</code> group)</h4>
|
||||
<div id="outline-container-org7e0442b" class="outline-4">
|
||||
<h4 id="org7e0442b"><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
|
||||
@ -1889,7 +1923,7 @@ The operators as the same as those defined in the
|
||||
the basis of molecular orbitals.
|
||||
</p>
|
||||
|
||||
<table id="org5d8414e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org1388bb2" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -1984,8 +2018,8 @@ the basis of molecular orbitals.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgebf8764" class="outline-4">
|
||||
<h4 id="orgebf8764"><span class="section-number-4">4.2.2</span> Two-electron integrals (<code>mo_2e_int</code> group)</h4>
|
||||
<div id="outline-container-orgf09167a" class="outline-4">
|
||||
<h4 id="orgf09167a"><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
|
||||
@ -1993,7 +2027,7 @@ The operators are the same as those defined in the
|
||||
the basis of molecular orbitals.
|
||||
</p>
|
||||
|
||||
<table id="org358baf6" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org670a283" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2062,12 +2096,12 @@ the basis of molecular orbitals.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgccc826f" class="outline-2">
|
||||
<h2 id="orgccc826f"><span class="section-number-2">5</span> Multi-determinant information</h2>
|
||||
<div id="outline-container-orgc37ab7a" class="outline-2">
|
||||
<h2 id="orgc37ab7a"><span class="section-number-2">5</span> Multi-determinant information</h2>
|
||||
<div class="outline-text-2" id="text-5">
|
||||
</div>
|
||||
<div id="outline-container-orgacdf8b5" class="outline-3">
|
||||
<h3 id="orgacdf8b5"><span class="section-number-3">5.1</span> Slater determinants (determinant group)</h3>
|
||||
<div id="outline-container-org93fc46f" class="outline-3">
|
||||
<h3 id="org93fc46f"><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\)
|
||||
@ -2109,7 +2143,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="org8a50606" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgf19a120" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2155,8 +2189,8 @@ An illustration on how to read determinants is presented in the <a href="./examp
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org3ba4366" class="outline-3">
|
||||
<h3 id="org3ba4366"><span class="section-number-3">5.2</span> Configuration state functions (csf group)</h3>
|
||||
<div id="outline-container-org4d08f66" class="outline-3">
|
||||
<h3 id="org4d08f66"><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
|
||||
@ -2178,7 +2212,7 @@ matrix \(\langle D_I | \psi_J \rangle\) needed to project the CSFs in
|
||||
the basis of Slater determinants.
|
||||
</p>
|
||||
|
||||
<table id="org881cdae" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgd63e362" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2224,8 +2258,8 @@ the basis of Slater determinants.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge5bf65d" class="outline-3">
|
||||
<h3 id="orge5bf65d"><span class="section-number-3">5.3</span> Amplitudes (amplitude group)</h3>
|
||||
<div id="outline-container-orge0c7d9f" class="outline-3">
|
||||
<h3 id="orge0c7d9f"><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
|
||||
@ -2296,7 +2330,7 @@ The order of the indices is chosen such that
|
||||
<li>\(\dots\)</li>
|
||||
</ul>
|
||||
|
||||
<table id="orgf4547df" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org4bdc702" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2377,8 +2411,8 @@ The order of the indices is chosen such that
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgba8fd10" class="outline-3">
|
||||
<h3 id="orgba8fd10"><span class="section-number-3">5.4</span> Reduced density matrices (rdm group)</h3>
|
||||
<div id="outline-container-org2f63f7c" class="outline-3">
|
||||
<h3 id="org2f63f7c"><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
|
||||
@ -2450,7 +2484,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="org6576724" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org1a595e1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2581,22 +2615,22 @@ expressed in a basis of a one-electron function
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orge999bd7" class="outline-2">
|
||||
<h2 id="orge999bd7"><span class="section-number-2">6</span> Correlation factors</h2>
|
||||
<div id="outline-container-org8a1c9e5" class="outline-2">
|
||||
<h2 id="org8a1c9e5"><span class="section-number-2">6</span> Correlation factors</h2>
|
||||
<div class="outline-text-2" id="text-6">
|
||||
</div>
|
||||
<div id="outline-container-orgce559e0" class="outline-3">
|
||||
<h3 id="orgce559e0"><span class="section-number-3">6.1</span> Jastrow factor (jastrow group)</h3>
|
||||
<div id="outline-container-org1cee547" class="outline-3">
|
||||
<h3 id="org1cee547"><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 to which the CI
|
||||
expansion is multiplied: \(\Psi = \Phi \times \exp(J)\),
|
||||
The Jastrow factor is an $N$-electron function which multiplies the CI
|
||||
expansion: \(\Psi = \Phi \times \exp(J)\),
|
||||
</p>
|
||||
|
||||
<p>
|
||||
In the following, we use the notations \(r_{ij} = |\mathbf{r}_i - \mathbf{r}_j|\) and
|
||||
\(R_{i\alpha} = |\mathbf{r}_i - \mathbf{R}_\alpha|\), where indices
|
||||
\(i\) and \(j\) correspond to electrons and \(\alpha\) to nuclei.
|
||||
\(i\) and \(j\) refer to electrons and \(\alpha\) to nuclei.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -2611,8 +2645,8 @@ following:
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org4bf32ce" class="outline-4">
|
||||
<h4 id="org4bf32ce"><span class="section-number-4">6.1.1</span> CHAMP</h4>
|
||||
<div id="outline-container-org18e234c" class="outline-4">
|
||||
<h4 id="org18e234c"><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
|
||||
@ -2627,53 +2661,76 @@ the <a href="https://trex-coe.eu/trex-quantum-chemistry-codes/champ">CHAMP</a> p
|
||||
|
||||
|
||||
<p>
|
||||
\(J_{\text{eN}}\) contains electron-nucleus terms:
|
||||
\(J_{\text{eN}}\) contains electron-nucleus terms:
|
||||
</p>
|
||||
|
||||
<p>
|
||||
\[
|
||||
J_{\text{eN}}(\mathbf{r},\mathbf{R}) = \sum_{i=1}^{N_\text{elec}} \sum_{\alpha=1}^{N_\text{nucl}}
|
||||
\frac{a_{1,\alpha}\, g_\alpha(R_{i\alpha})}{1+a_{2,\alpha}\, g_\alpha(R_{i\alpha})} +
|
||||
\sum_{p=2}^{N_\text{ord}^a} a_{p+1,\alpha}\, [g_\alpha(R_{i\alpha})]^p - J_{eN}^\infty
|
||||
J_{\text{eN}}(\mathbf{r},\mathbf{R}) = \sum_{i=1}^{N_\text{elec}} \sum_{\alpha=1}^{N_\text{nucl}}\left[
|
||||
\frac{a_{1,\alpha}\, f_\alpha(R_{i\alpha})}{1+a_{2,\alpha}\,
|
||||
f_\alpha(R_{i\alpha})} + \sum_{p=2}^{N_\text{ord}^a} a_{p+1,\alpha}\, [f_\alpha(R_{i\alpha})]^p - J_{\text{eN}}^\infty
|
||||
\right]
|
||||
\]
|
||||
</p>
|
||||
|
||||
<p>
|
||||
\(J_{\text{ee}}\) contains electron-electron terms:
|
||||
</p>
|
||||
|
||||
<p>
|
||||
\[
|
||||
J_{\text{ee}}(\mathbf{r}) =
|
||||
\sum_{i=1}^{N_\text{elec}} \sum_{j=1}^{i-1}
|
||||
\frac{b_1\, f(r_{ij})}{1+b_2\, f(r_{ij})} +
|
||||
\sum_{p=2}^{N_\text{ord}^b} a_{p+1}\, [f(r_{ij})]^p - J_{ee}^\infty
|
||||
\left[
|
||||
\frac{\frac{1}{2}\big(1 + \delta^{\uparrow\downarrow}_{ij}\big)\,b_1\, f_{\text{ee}}(r_{ij})}{1+b_2\, f_{\text{ee}}(r_{ij})} +
|
||||
\sum_{p=2}^{N_\text{ord}^b} b_{p+1}\, [f_{\text{ee}}(r_{ij})]^p - J_{\text{ee},ij}^\infty
|
||||
\right]
|
||||
\]
|
||||
</p>
|
||||
|
||||
<p>
|
||||
and \(J_{\text{eeN}}\) contains electron-electron-Nucleus terms:
|
||||
\(\delta^{\uparrow\downarrow}_{ij}\) is zero when the electrons \(i\) and
|
||||
\(j\) have the same spin, and one otherwise.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
\(J_{\text{eeN}}\) contains electron-electron-Nucleus terms:
|
||||
</p>
|
||||
|
||||
<p>
|
||||
\[
|
||||
J_{\text{eeN}}(\mathbf{r},\mathbf{R}) =
|
||||
J_{\text{eeN}}(\mathbf{r},\mathbf{R}) =
|
||||
\sum_{\alpha=1}^{N_{\text{nucl}}}
|
||||
\sum_{i=1}^{N_{\text{elec}}}
|
||||
\sum_{j=1}^{i-1}
|
||||
\sum_{p=2}^{N_{\text{ord}}}
|
||||
\sum_{k=0}^{p-1}
|
||||
\sum_{l=0}^{p-k-2\delta_{k,0}}
|
||||
c_{lkp\alpha} \left[ f({r}_{ij}) \right]^k
|
||||
\left[ \left[ g_\alpha({R}_{i\alpha}) \right]^l + \left[ g_\alpha({R}_{j\alpha}) \right]^l \right]
|
||||
\left[ g_\alpha({R}_{i\,\alpha}) \, g_\alpha({R}_{j\alpha}) \right]^{(p-k-l)/2}
|
||||
c_{lkp\alpha} \left[ g_{\text{ee}}({r}_{ij}) \right]^k \nonumber \\
|
||||
\left[ \left[ g_\alpha({R}_{i\alpha}) \right]^l + \left[ g_\alpha({R}_{j\alpha}) \right]^l \right]
|
||||
\left[ g_\alpha({R}_{i\,\alpha}) \,
|
||||
g_\alpha({R}_{j\alpha}) \right]^{(p-k-l)/2}
|
||||
\]
|
||||
</p>
|
||||
|
||||
<p>
|
||||
\(c_{lkp\alpha}\) are non-zero only when \(p-k-l\) is even.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The terms \(J_{\text{ee}}^\infty\) and \(J_{\text{eN}}^\infty\) are shifts to ensure that
|
||||
\(J_{\text{ee}}\) and \(J_{\text{eN}}\) have an asymptotic value of zero.
|
||||
The terms \(J_{\text{ee},ij}^\infty\) and \(J_{\text{eN}}^\infty\) are shifts to ensure that
|
||||
\(J_{\text{eN}}\) and \(J_{\text{ee}}\) have an asymptotic value of zero:
|
||||
</p>
|
||||
|
||||
<p>
|
||||
\[
|
||||
J_{\text{eN}}^{\infty} =
|
||||
\frac{a_{1,\alpha}\, \kappa_\alpha^{-1}}{1+a_{2,\alpha}\,
|
||||
\kappa_\alpha^{-1}} + \sum_{p=2}^{N_\text{ord}^a} a_{p+1,\alpha}\, \kappa_\alpha^{-p}
|
||||
\]
|
||||
\[
|
||||
J_{\text{ee},ij}^{\infty} =
|
||||
\frac{\frac{1}{2}\big(1 + \delta^{\uparrow\downarrow}_{ij}\big)\,b_1\,
|
||||
\kappa_{\text{ee}}^{-1}}{1+b_2\, \kappa_{\text{ee}}^{-1}} +
|
||||
\sum_{p=2}^{N_\text{ord}^b} b_{p+1}\, \kappa_{\text{ee}}^{-p}
|
||||
\]
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -2682,20 +2739,21 @@ The terms \(J_{\text{ee}}^\infty\) and \(J_{\text{eN}}^\infty\) are shifts to en
|
||||
|
||||
<p>
|
||||
\[
|
||||
f(r) = \frac{1-e^{-\kappa\, r}}{\kappa} \text{ and }
|
||||
g_\alpha(r) = e^{-\kappa_\alpha\, r}.
|
||||
f_\alpha(r) = \frac{1-e^{-\kappa_\alpha\, r}}{\kappa_\alpha} \text{ and }
|
||||
g_\alpha(r) = e^{-\kappa_\alpha\, r},
|
||||
\]
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc5bd558" class="outline-4">
|
||||
<h4 id="orgc5bd558"><span class="section-number-4">6.1.2</span> Mu</h4>
|
||||
|
||||
<div id="outline-container-orgb0325e6" class="outline-4">
|
||||
<h4 id="orgb0325e6"><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
|
||||
been introduced in the context of transcorrelated methods. This
|
||||
correlation factor imposes the electron-electron cusp and it is
|
||||
correlation factor imposes the electron-electron cusp, and it is
|
||||
built such that the leading order in \(1/r_{12}\) of the effective
|
||||
two-electron potential reproduces the long-range interaction of the
|
||||
range-separated density functional theory. Its analytical
|
||||
@ -2710,19 +2768,19 @@ expression reads
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The electron-electron cusp is incorporated in the three-body term.
|
||||
The electron-electron cusp is incorporated in the three-body term
|
||||
</p>
|
||||
|
||||
<p>
|
||||
\[
|
||||
J_\text{eeN} (\mathbf{r}, \mathbf{R}) =
|
||||
\sum_{i=1}^{N_\text{elec}} \sum_{j=1}^{i-1} \, u\left(\mu, r_{ij}\right) \,
|
||||
\Pi_{\alpha=1}^{N_{\text{nucl}}} \, E_\alpha({R}_{i\alpha}) \, E_\alpha({R}_{j\alpha})
|
||||
\Pi_{\alpha=1}^{N_{\text{nucl}}} \, E_\alpha({R}_{i\alpha}) \, E_\alpha({R}_{j\alpha}),
|
||||
\]
|
||||
</p>
|
||||
|
||||
<p>
|
||||
\(u\) is an electron-electron function given by the symmetric function
|
||||
where ww\(u\) is an electron-electron function
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -2739,7 +2797,7 @@ electrons.
|
||||
|
||||
<p>
|
||||
An envelope function has been introduced to cancel out the Jastrow
|
||||
effects between two-electrons when they are both close to a nucleus
|
||||
effects between two-electrons when at least one is close to a nucleus
|
||||
(to perform a frozen-core calculation). The envelope function is
|
||||
given by
|
||||
</p>
|
||||
@ -2787,10 +2845,10 @@ The parameter \(\mu\) is stored in the <code>ee</code> array, the parameters
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd9c89a3" class="outline-4">
|
||||
<h4 id="orgd9c89a3"><span class="section-number-4">6.1.3</span> Table of values</h4>
|
||||
<div id="outline-container-org1af10ad" class="outline-4">
|
||||
<h4 id="org1af10ad"><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="orgc668fc1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="org7ed591d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2818,13 +2876,6 @@ The parameter \(\mu\) is stored in the <code>ee</code> array, the parameters
|
||||
<td class="org-left">Type of Jastrow factor: <code>CHAMP</code> or <code>Mu</code></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>ee_num</code></td>
|
||||
<td class="org-left"><code>dim</code></td>
|
||||
<td class="org-left"> </td>
|
||||
<td class="org-left">Number of Electron-electron parameters</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>en_num</code></td>
|
||||
<td class="org-left"><code>dim</code></td>
|
||||
@ -2832,6 +2883,13 @@ The parameter \(\mu\) is stored in the <code>ee</code> array, the parameters
|
||||
<td class="org-left">Number of Electron-nucleus parameters</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>ee_num</code></td>
|
||||
<td class="org-left"><code>dim</code></td>
|
||||
<td class="org-left"> </td>
|
||||
<td class="org-left">Number of Electron-electron parameters</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>een_num</code></td>
|
||||
<td class="org-left"><code>dim</code></td>
|
||||
@ -2839,13 +2897,6 @@ The parameter \(\mu\) is stored in the <code>ee</code> array, the parameters
|
||||
<td class="org-left">Number of Electron-electron-nucleus parameters</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>ee</code></td>
|
||||
<td class="org-left"><code>float</code></td>
|
||||
<td class="org-left"><code>(jastrow.ee_num)</code></td>
|
||||
<td class="org-left">Electron-electron parameters</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>en</code></td>
|
||||
<td class="org-left"><code>float</code></td>
|
||||
@ -2853,6 +2904,13 @@ The parameter \(\mu\) is stored in the <code>ee</code> array, the parameters
|
||||
<td class="org-left">Electron-nucleus parameters</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>ee</code></td>
|
||||
<td class="org-left"><code>float</code></td>
|
||||
<td class="org-left"><code>(jastrow.ee_num)</code></td>
|
||||
<td class="org-left">Electron-electron parameters</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="org-left"><code>een</code></td>
|
||||
<td class="org-left"><code>float</code></td>
|
||||
@ -2894,8 +2952,8 @@ The parameter \(\mu\) is stored in the <code>ee</code> array, the parameters
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org706769b" class="outline-2">
|
||||
<h2 id="org706769b"><span class="section-number-2">7</span> Quantum Monte Carlo data (qmc group)</h2>
|
||||
<div id="outline-container-orga545421" class="outline-2">
|
||||
<h2 id="orga545421"><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
|
||||
@ -2909,7 +2967,7 @@ By convention, the electron coordinates contain first all the electrons
|
||||
of $↑$-spin and then all the $↓$-spin.
|
||||
</p>
|
||||
|
||||
<table id="orgdb9752e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
<table id="orgee4daac" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
|
||||
|
||||
|
||||
<colgroup>
|
||||
@ -2964,7 +3022,7 @@ of $↑$-spin and then all the $↓$-spin.
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: TREX-CoE</p>
|
||||
<p class="date">Created: 2023-02-27 Mon 14:49</p>
|
||||
<p class="date">Created: 2023-02-28 Tue 08:45</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
Loading…
Reference in New Issue
Block a user