1
0
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@212daf43be 🚀

This commit is contained in:
scemama 2021-09-15 13:06:10 +00:00
parent 4a83836f28
commit a98cac56d4
7 changed files with 315 additions and 315 deletions

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2021-09-15 Wed 13:04 -->
<!-- 2021-09-15 Wed 13:06 -->
<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>
@ -342,7 +342,7 @@ and bug reports should be submitted at
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX-CoE</p>
<p class="date">Created: 2021-09-15 Wed 13:04</p>
<p class="date">Created: 2021-09-15 Wed 13:06</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2021-09-15 Wed 13:04 -->
<!-- 2021-09-15 Wed 13:06 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>&lrm;</title>
@ -232,8 +232,8 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org2d88bdb">1. Text back end</a></li>
<li><a href="#org6542ab1">2. HDF5 Back end</a></li>
<li><a href="#orgc3a58be">1. Text back end</a></li>
<li><a href="#orgcf5b465">2. HDF5 Back end</a></li>
</ul>
</div>
</div>
@ -241,8 +241,8 @@ for the JavaScript code in this tag.
See templator<sub>front.org</sub>
</p>
<div id="outline-container-org2d88bdb" class="outline-2">
<h2 id="org2d88bdb"><span class="section-number-2">1</span> Text back end</h2>
<div id="outline-container-orgc3a58be" class="outline-2">
<h2 id="orgc3a58be"><span class="section-number-2">1</span> Text back end</h2>
<div class="outline-text-2" id="text-1">
<p>
As the size of the dataset should be extensible, the simplest
@ -256,8 +256,8 @@ The offset can be used with <code>fseek(69L*offset, SEEK_SET)</code>
</div>
</div>
<div id="outline-container-org6542ab1" class="outline-2">
<h2 id="org6542ab1"><span class="section-number-2">2</span> HDF5 Back end</h2>
<div id="outline-container-orgcf5b465" class="outline-2">
<h2 id="orgcf5b465"><span class="section-number-2">2</span> HDF5 Back end</h2>
<div class="outline-text-2" id="text-2">
<p>
We need to declare the number of rows of the dataset as
@ -278,7 +278,7 @@ If the offset+num &gt; nmax, we need to extend the dataset.
</div>
</div>
<div id="postamble" class="status">
<p class="date">Created: 2021-09-15 Wed 13:04</p>
<p class="date">Created: 2021-09-15 Wed 13:06</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2021-09-15 Wed 13:04 -->
<!-- 2021-09-15 Wed 13:06 -->
<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>
@ -342,7 +342,7 @@ and bug reports should be submitted at
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX-CoE</p>
<p class="date">Created: 2021-09-15 Wed 13:04</p>
<p class="date">Created: 2021-09-15 Wed 13:06</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2021-09-15 Wed 13:04 -->
<!-- 2021-09-15 Wed 13:06 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Front end API</title>
@ -333,106 +333,106 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org3c6e37d">1. Coding conventions</a>
<li><a href="#org3f975cb">1. Coding conventions</a>
<ul>
<li><a href="#org2e7b653">1.1. Memory allocation</a></li>
<li><a href="#orgf214709">1.1. Memory allocation</a></li>
</ul>
</li>
<li><a href="#orge442095">2. Front end</a>
<li><a href="#orgc7b4a2a">2. Front end</a>
<ul>
<li><a href="#orgd5b3908">2.1. Error handling</a>
<li><a href="#orgec87db2">2.1. Error handling</a>
<ul>
<li><a href="#orga5f7eaa">2.1.1. Decoding errors</a>
<li><a href="#org5dd897f">2.1.1. Decoding errors</a>
<ul>
<li><a href="#orgd4c80d8">2.1.1.1. C source code</a></li>
<li><a href="#org3215c34">2.1.1.2. Fortran interface</a></li>
<li><a href="#org52af6d6">2.1.1.3. Python interface</a></li>
<li><a href="#orgbb140b2">2.1.1.1. C source code</a></li>
<li><a href="#org6f5f6cc">2.1.1.2. Fortran interface</a></li>
<li><a href="#org713e2e6">2.1.1.3. Python interface</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#org11507c1">2.2. Back ends</a>
<li><a href="#org3ba7faa">2.2. Back ends</a>
<ul>
<li><a href="#org38b32d2">2.2.1. C</a></li>
<li><a href="#org71acd14">2.2.2. Fortran</a></li>
<li><a href="#orgf668ed1">2.2.3. Python</a></li>
<li><a href="#org169cd45">2.2.1. C</a></li>
<li><a href="#org7646703">2.2.2. Fortran</a></li>
<li><a href="#orgc46d644">2.2.3. Python</a></li>
</ul>
</li>
<li><a href="#org12b7e74">2.3. Read/write behavior</a></li>
<li><a href="#orgc96f041">2.4. TREXIO file type</a>
<li><a href="#orge602d66">2.3. Read/write behavior</a></li>
<li><a href="#orgc44f2df">2.4. TREXIO file type</a>
<ul>
<li><a href="#orgae1f6d0">2.4.1. TREXIO<sub>File</sub> Python class</a></li>
<li><a href="#orga9c25aa">2.4.1. TREXIO<sub>File</sub> Python class</a></li>
</ul>
</li>
<li><a href="#orgc35c7c3">2.5. Polymorphism of the file handle</a></li>
<li><a href="#orgabc0af0">2.6. File opening</a>
<li><a href="#orgd60f866">2.5. Polymorphism of the file handle</a></li>
<li><a href="#org605c366">2.6. File opening</a>
<ul>
<li><a href="#orgf3ffe6c">2.6.1. C</a></li>
<li><a href="#orgf64ec6e">2.6.2. Fortran</a></li>
<li><a href="#org20f6cfe">2.6.3. Python</a></li>
<li><a href="#org3642212">2.6.4. Zero-based versus one-based arrays of indices</a></li>
<li><a href="#orgf84d6d6">2.6.1. C</a></li>
<li><a href="#orge43e9f0">2.6.2. Fortran</a></li>
<li><a href="#orga9a6f3c">2.6.3. Python</a></li>
<li><a href="#org75afb76">2.6.4. Zero-based versus one-based arrays of indices</a></li>
</ul>
</li>
<li><a href="#org347dbc8">2.7. File closing</a>
<li><a href="#org45536ac">2.7. File closing</a>
<ul>
<li><a href="#orge1ff308">2.7.1. C</a></li>
<li><a href="#org146b41a">2.7.2. Fortran</a></li>
<li><a href="#orgb4bf64e">2.7.3. Python</a></li>
<li><a href="#org4b78f1c">2.7.1. C</a></li>
<li><a href="#org145f658">2.7.2. Fortran</a></li>
<li><a href="#org7b7549c">2.7.3. Python</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#org142c72c">3. Templates for front end</a>
<li><a href="#org480d7f3">3. Templates for front end</a>
<ul>
<li><a href="#orgbafc093">3.1. Description</a></li>
<li><a href="#org1a5a91f">3.2. Templates for front end has/read/write a single dimensioning variable</a>
<li><a href="#org4818021">3.1. Description</a></li>
<li><a href="#org65d1276">3.2. Templates for front end has/read/write a single dimensioning variable</a>
<ul>
<li><a href="#org87c279d">3.2.1. C templates for front end</a></li>
<li><a href="#org5e515a6">3.2.2. Fortran templates for front end</a></li>
<li><a href="#org7bb4560">3.2.3. Python templates for front end</a></li>
<li><a href="#org1241802">3.2.1. C templates for front end</a></li>
<li><a href="#orgfae1895">3.2.2. Fortran templates for front end</a></li>
<li><a href="#orgf3ef070">3.2.3. Python templates for front end</a></li>
</ul>
</li>
<li><a href="#orgc8e1000">3.3. Templates for front end has/read/write a dataset of numerical data</a>
<li><a href="#orga912eeb">3.3. Templates for front end has/read/write a dataset of numerical data</a>
<ul>
<li><a href="#org020d989">3.3.1. C templates for front end</a>
<li><a href="#org289a9aa">3.3.1. C templates for front end</a>
<ul>
<li><a href="#orgcd3bed4">3.3.1.1. Function declarations</a></li>
<li><a href="#org647e756">3.3.1.2. Source code for double precision functions</a></li>
<li><a href="#orgc112b04">3.3.1.3. Source code for single precision functions</a></li>
<li><a href="#org1287ced">3.3.1.4. Source code for memory-safe functions</a></li>
<li><a href="#org2758caa">3.3.1.5. Source code for default functions</a></li>
<li><a href="#org8c400e0">3.3.1.1. Function declarations</a></li>
<li><a href="#orge2f57c7">3.3.1.2. Source code for double precision functions</a></li>
<li><a href="#org6fe4f94">3.3.1.3. Source code for single precision functions</a></li>
<li><a href="#org4698c3e">3.3.1.4. Source code for memory-safe functions</a></li>
<li><a href="#orgc1a29cb">3.3.1.5. Source code for default functions</a></li>
</ul>
</li>
<li><a href="#orge094395">3.3.2. Fortran templates for front end</a></li>
<li><a href="#org3760b59">3.3.3. Python templates for front end</a></li>
<li><a href="#org9c6edbc">3.3.2. Fortran templates for front end</a></li>
<li><a href="#orga9bd69f">3.3.3. Python templates for front end</a></li>
</ul>
</li>
<li><a href="#org639d4ad">3.4. Sparse data structures</a></li>
<li><a href="#orge1d62ad">3.5. Templates for front end has/read/write a dataset of strings</a>
<li><a href="#orgb198893">3.4. Sparse data structures</a></li>
<li><a href="#org3e961c1">3.5. Templates for front end has/read/write a dataset of strings</a>
<ul>
<li><a href="#orga55586f">3.5.1. Introduction</a></li>
<li><a href="#org95de5b5">3.5.2. C templates for front end</a></li>
<li><a href="#org3030a6d">3.5.3. Fortran templates for front end</a></li>
<li><a href="#orge93412a">3.5.4. Python templates for front end</a></li>
<li><a href="#org3621552">3.5.1. Introduction</a></li>
<li><a href="#org5f41bdf">3.5.2. C templates for front end</a></li>
<li><a href="#orgf3e5d0d">3.5.3. Fortran templates for front end</a></li>
<li><a href="#org46ed452">3.5.4. Python templates for front end</a></li>
</ul>
</li>
<li><a href="#orgc75dbff">3.6. Templates for front end has/read/write a single string attribute</a>
<li><a href="#orgf033086">3.6. Templates for front end has/read/write a single string attribute</a>
<ul>
<li><a href="#org137aabb">3.6.1. Introduction</a></li>
<li><a href="#org33ace08">3.6.2. C templates for front end</a></li>
<li><a href="#orgc81cd65">3.6.3. Fortran templates for front end</a></li>
<li><a href="#orgceb8263">3.6.4. Python templates for front end</a></li>
<li><a href="#orgb00ae58">3.6.1. Introduction</a></li>
<li><a href="#orgba53fc6">3.6.2. C templates for front end</a></li>
<li><a href="#org8c369d2">3.6.3. Fortran templates for front end</a></li>
<li><a href="#org79bb43f">3.6.4. Python templates for front end</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#org9467554">4. Fortran helper/wrapper functions</a></li>
<li><a href="#org3b5518a">4. Fortran helper/wrapper functions</a></li>
</ul>
</div>
</div>
<div id="outline-container-org3c6e37d" class="outline-2">
<h2 id="org3c6e37d"><span class="section-number-2">1</span> Coding conventions</h2>
<div id="outline-container-org3f975cb" class="outline-2">
<h2 id="org3f975cb"><span class="section-number-2">1</span> Coding conventions</h2>
<div class="outline-text-2" id="text-1">
<ul class="org-ul">
<li>integer types will be defined using types given in <code>stdint.h</code></li>
@ -447,8 +447,8 @@ for the JavaScript code in this tag.
</ul>
</div>
<div id="outline-container-org2e7b653" class="outline-3">
<h3 id="org2e7b653"><span class="section-number-3">1.1</span> Memory allocation</h3>
<div id="outline-container-orgf214709" class="outline-3">
<h3 id="orgf214709"><span class="section-number-3">1.1</span> Memory allocation</h3>
<div class="outline-text-3" id="text-1-1">
<p>
Memory allocation of structures can be facilitated by using the
@ -483,8 +483,8 @@ The maximum string size for the filenames is 4096 characters.
</div>
</div>
<div id="outline-container-orge442095" class="outline-2">
<h2 id="orge442095"><span class="section-number-2">2</span> Front end</h2>
<div id="outline-container-orgc7b4a2a" class="outline-2">
<h2 id="orgc7b4a2a"><span class="section-number-2">2</span> Front end</h2>
<div class="outline-text-2" id="text-2">
<p>
All calls to TREXIO are thread-safe.
@ -492,10 +492,10 @@ TREXIO front end is modular, which simplifies implementation of new back ends.
</p>
</div>
<div id="outline-container-orgd5b3908" class="outline-3">
<h3 id="orgd5b3908"><span class="section-number-3">2.1</span> Error handling</h3>
<div id="outline-container-orgec87db2" class="outline-3">
<h3 id="orgec87db2"><span class="section-number-3">2.1</span> Error handling</h3>
<div class="outline-text-3" id="text-2-1">
<table id="orgabc2140" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgc544e1e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -717,8 +717,8 @@ TREXIO front end is modular, which simplifies implementation of new back ends.
</div>
</div>
<div id="outline-container-orga5f7eaa" class="outline-4">
<h4 id="orga5f7eaa"><span class="section-number-4">2.1.1</span> Decoding errors</h4>
<div id="outline-container-org5dd897f" class="outline-4">
<h4 id="org5dd897f"><span class="section-number-4">2.1.1</span> Decoding errors</h4>
<div class="outline-text-4" id="text-2-1-1">
<p>
The <code>trexio_string_of_error</code> converts an exit code into a string. The
@ -741,8 +741,8 @@ The text strings are extracted from the previous table.
</p>
</div>
<div id="outline-container-orgd4c80d8" class="outline-5">
<h5 id="orgd4c80d8"><span class="section-number-5">2.1.1.1</span> C source code</h5>
<div id="outline-container-orgbb140b2" class="outline-5">
<h5 id="orgbb140b2"><span class="section-number-5">2.1.1.1</span> C source code</h5>
<div class="outline-text-5" id="text-2-1-1-1">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #a020f0;">const</span> <span style="color: #228b22;">char</span>*
@ -847,8 +847,8 @@ The text strings are extracted from the previous table.
</div>
</div>
<div id="outline-container-org3215c34" class="outline-5">
<h5 id="org3215c34"><span class="section-number-5">2.1.1.2</span> Fortran interface</h5>
<div id="outline-container-org6f5f6cc" class="outline-5">
<h5 id="org6f5f6cc"><span class="section-number-5">2.1.1.2</span> Fortran interface</h5>
<div class="outline-text-5" id="text-2-1-1-2">
<div class="org-src-container">
<pre class="src src-f90"><span style="color: #a020f0;">interface</span>
@ -864,8 +864,8 @@ The text strings are extracted from the previous table.
</div>
</div>
<div id="outline-container-org52af6d6" class="outline-5">
<h5 id="org52af6d6"><span class="section-number-5">2.1.1.3</span> Python interface</h5>
<div id="outline-container-org713e2e6" class="outline-5">
<h5 id="org713e2e6"><span class="section-number-5">2.1.1.3</span> Python interface</h5>
<div class="outline-text-5" id="text-2-1-1-3">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a020f0;">class</span> <span style="color: #228b22;">Error</span>(<span style="color: #228b22;">Exception</span>):
@ -904,8 +904,8 @@ The text strings are extracted from the previous table.
</div>
</div>
<div id="outline-container-org11507c1" class="outline-3">
<h3 id="org11507c1"><span class="section-number-3">2.2</span> Back ends</h3>
<div id="outline-container-org3ba7faa" class="outline-3">
<h3 id="org3ba7faa"><span class="section-number-3">2.2</span> Back ends</h3>
<div class="outline-text-3" id="text-2-2">
<p>
TREXIO has several back ends:
@ -929,8 +929,8 @@ lines that correspond to the <code>TREXIO_JSON</code> back end (not implemented
</p>
</div>
<div id="outline-container-org38b32d2" class="outline-4">
<h4 id="org38b32d2"><span class="section-number-4">2.2.1</span> C</h4>
<div id="outline-container-org169cd45" class="outline-4">
<h4 id="org169cd45"><span class="section-number-4">2.2.1</span> C</h4>
<div class="outline-text-4" id="text-2-2-1">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #228b22;">int32_t</span> <span style="color: #228b22;">back_end_t</span>;
@ -946,8 +946,8 @@ lines that correspond to the <code>TREXIO_JSON</code> back end (not implemented
</div>
</div>
<div id="outline-container-org71acd14" class="outline-4">
<h4 id="org71acd14"><span class="section-number-4">2.2.2</span> Fortran</h4>
<div id="outline-container-org7646703" class="outline-4">
<h4 id="org7646703"><span class="section-number-4">2.2.2</span> Fortran</h4>
<div class="outline-text-4" id="text-2-2-2">
<div class="org-src-container">
<pre class="src src-f90"> <span style="color: #228b22;">integer</span>(trexio_backend), <span style="color: #a020f0;">parameter</span> ::<span style="color: #a0522d;"> TREXIO_HDF5 = 0</span>
@ -959,8 +959,8 @@ lines that correspond to the <code>TREXIO_JSON</code> back end (not implemented
</div>
</div>
<div id="outline-container-orgf668ed1" class="outline-4">
<h4 id="orgf668ed1"><span class="section-number-4">2.2.3</span> Python</h4>
<div id="outline-container-orgc46d644" class="outline-4">
<h4 id="orgc46d644"><span class="section-number-4">2.2.3</span> Python</h4>
<div class="outline-text-4" id="text-2-2-3">
<div class="org-src-container">
<pre class="src src-python"># <span style="color: #b22222;">define TREXIO back ends</span>
@ -974,8 +974,8 @@ lines that correspond to the <code>TREXIO_JSON</code> back end (not implemented
</div>
</div>
<div id="outline-container-org12b7e74" class="outline-3">
<h3 id="org12b7e74"><span class="section-number-3">2.3</span> Read/write behavior</h3>
<div id="outline-container-orge602d66" class="outline-3">
<h3 id="orge602d66"><span class="section-number-3">2.3</span> Read/write behavior</h3>
<div class="outline-text-3" id="text-2-3">
<p>
Every time a reading function is called, the data is read from the
@ -1003,8 +1003,8 @@ concurrent programs, the behavior is not specified.
</p>
</div>
</div>
<div id="outline-container-orgc96f041" class="outline-3">
<h3 id="orgc96f041"><span class="section-number-3">2.4</span> TREXIO file type</h3>
<div id="outline-container-orgc44f2df" class="outline-3">
<h3 id="orgc44f2df"><span class="section-number-3">2.4</span> TREXIO file type</h3>
<div class="outline-text-3" id="text-2-4">
<p>
<code>trexio_s</code> is the the main type for TREXIO files, visible to the users
@ -1038,8 +1038,8 @@ TREXIO files will have as a first argument the TREXIO file handle.
</div>
</div>
<div id="outline-container-orgae1f6d0" class="outline-4">
<h4 id="orgae1f6d0"><span class="section-number-4">2.4.1</span> TREXIO<sub>File</sub> Python class</h4>
<div id="outline-container-orga9c25aa" class="outline-4">
<h4 id="orga9c25aa"><span class="section-number-4">2.4.1</span> TREXIO<sub>File</sub> Python class</h4>
<div class="outline-text-4" id="text-2-4-1">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a020f0;">class</span> <span style="color: #228b22;">File</span>:
@ -1112,8 +1112,8 @@ TREXIO files will have as a first argument the TREXIO file handle.
</div>
</div>
<div id="outline-container-orgc35c7c3" class="outline-3">
<h3 id="orgc35c7c3"><span class="section-number-3">2.5</span> Polymorphism of the file handle</h3>
<div id="outline-container-orgd60f866" class="outline-3">
<h3 id="orgd60f866"><span class="section-number-3">2.5</span> Polymorphism of the file handle</h3>
<div class="outline-text-3" id="text-2-5">
<p>
Polymorphism of the <code>trexio_t</code> type is handled by ensuring that the
@ -1132,8 +1132,8 @@ corresponding types for all back ends can be safely casted to
</div>
</div>
<div id="outline-container-orgabc0af0" class="outline-3">
<h3 id="orgabc0af0"><span class="section-number-3">2.6</span> File opening</h3>
<div id="outline-container-org605c366" class="outline-3">
<h3 id="org605c366"><span class="section-number-3">2.6</span> File opening</h3>
<div class="outline-text-3" id="text-2-6">
<p>
<code>trexio_open</code> creates a new TREXIO file or opens existing one.
@ -1172,8 +1172,8 @@ renaming the <code>.txt</code> data files.
</p>
</div>
<div id="outline-container-orgf3ffe6c" class="outline-4">
<h4 id="orgf3ffe6c"><span class="section-number-4">2.6.1</span> C</h4>
<div id="outline-container-orgf84d6d6" class="outline-4">
<h4 id="orgf84d6d6"><span class="section-number-4">2.6.1</span> C</h4>
<div class="outline-text-4" id="text-2-6-1">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_t</span>*
@ -1327,8 +1327,8 @@ renaming the <code>.txt</code> data files.
</div>
</div>
<div id="outline-container-orgf64ec6e" class="outline-4">
<h4 id="orgf64ec6e"><span class="section-number-4">2.6.2</span> Fortran</h4>
<div id="outline-container-orge43e9f0" class="outline-4">
<h4 id="orge43e9f0"><span class="section-number-4">2.6.2</span> Fortran</h4>
<div class="outline-text-4" id="text-2-6-2">
<div class="org-src-container">
<pre class="src src-f90"><span style="color: #a020f0;">interface</span>
@ -1345,8 +1345,8 @@ renaming the <code>.txt</code> data files.
</div>
</div>
<div id="outline-container-org20f6cfe" class="outline-4">
<h4 id="org20f6cfe"><span class="section-number-4">2.6.3</span> Python</h4>
<div id="outline-container-orga9a6f3c" class="outline-4">
<h4 id="orga9a6f3c"><span class="section-number-4">2.6.3</span> Python</h4>
<div class="outline-text-4" id="text-2-6-3">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a020f0;">def</span> <span style="color: #0000ff;">open</span>(file_name: <span style="color: #483d8b;">str</span>, mode: <span style="color: #483d8b;">str</span>, back_end: <span style="color: #483d8b;">int</span>):
@ -1383,8 +1383,8 @@ renaming the <code>.txt</code> data files.
</div>
</div>
<div id="outline-container-org3642212" class="outline-4">
<h4 id="org3642212"><span class="section-number-4">2.6.4</span> Zero-based versus one-based arrays of indices</h4>
<div id="outline-container-org75afb76" class="outline-4">
<h4 id="org75afb76"><span class="section-number-4">2.6.4</span> Zero-based versus one-based arrays of indices</h4>
<div class="outline-text-4" id="text-2-6-4">
<p>
Because arrays are zero-based in Fortran, we need to set a flag to
@ -1417,8 +1417,8 @@ know if we need to shift by 1 arrays of indices.
</div>
</div>
<div id="outline-container-org347dbc8" class="outline-3">
<h3 id="org347dbc8"><span class="section-number-3">2.7</span> File closing</h3>
<div id="outline-container-org45536ac" class="outline-3">
<h3 id="org45536ac"><span class="section-number-3">2.7</span> File closing</h3>
<div class="outline-text-3" id="text-2-7">
<p>
<code>trexio_close</code> closes an existing <code>trexio_t</code> file.
@ -1435,8 +1435,8 @@ output:
</p>
</div>
<div id="outline-container-orge1ff308" class="outline-4">
<h4 id="orge1ff308"><span class="section-number-4">2.7.1</span> C</h4>
<div id="outline-container-org4b78f1c" class="outline-4">
<h4 id="org4b78f1c"><span class="section-number-4">2.7.1</span> C</h4>
<div class="outline-text-4" id="text-2-7-1">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -1507,8 +1507,8 @@ output:
</div>
</div>
<div id="outline-container-org146b41a" class="outline-4">
<h4 id="org146b41a"><span class="section-number-4">2.7.2</span> Fortran</h4>
<div id="outline-container-org145f658" class="outline-4">
<h4 id="org145f658"><span class="section-number-4">2.7.2</span> Fortran</h4>
<div class="outline-text-4" id="text-2-7-2">
<div class="org-src-container">
<pre class="src src-f90"><span style="color: #a020f0;">interface</span>
@ -1522,8 +1522,8 @@ output:
</div>
</div>
<div id="outline-container-orgb4bf64e" class="outline-4">
<h4 id="orgb4bf64e"><span class="section-number-4">2.7.3</span> Python</h4>
<div id="outline-container-org7b7549c" class="outline-4">
<h4 id="org7b7549c"><span class="section-number-4">2.7.3</span> Python</h4>
<div class="outline-text-4" id="text-2-7-3">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a020f0;">def</span> <span style="color: #0000ff;">close</span>(trexio_file):
@ -1545,12 +1545,12 @@ output:
</div>
</div>
<div id="outline-container-org142c72c" class="outline-2">
<h2 id="org142c72c"><span class="section-number-2">3</span> Templates for front end</h2>
<div id="outline-container-org480d7f3" class="outline-2">
<h2 id="org480d7f3"><span class="section-number-2">3</span> Templates for front end</h2>
<div class="outline-text-2" id="text-3">
</div>
<div id="outline-container-orgbafc093" class="outline-3">
<h3 id="orgbafc093"><span class="section-number-3">3.1</span> Description</h3>
<div id="outline-container-org4818021" class="outline-3">
<h3 id="org4818021"><span class="section-number-3">3.1</span> Description</h3>
<div class="outline-text-3" id="text-3-1">
<p>
Consider the following block of <code>trex.json</code>:
@ -1746,8 +1746,8 @@ or double precision for integer and floating point numbers.
</div>
</div>
<div id="outline-container-org1a5a91f" class="outline-3">
<h3 id="org1a5a91f"><span class="section-number-3">3.2</span> Templates for front end has/read/write a single dimensioning variable</h3>
<div id="outline-container-org65d1276" class="outline-3">
<h3 id="org65d1276"><span class="section-number-3">3.2</span> Templates for front end has/read/write a single dimensioning variable</h3>
<div class="outline-text-3" id="text-3-2">
<p>
This section concerns API calls related to dimensioning variables.
@ -1816,8 +1816,8 @@ This section concerns API calls related to dimensioning variables.
</table>
</div>
<div id="outline-container-org87c279d" class="outline-4">
<h4 id="org87c279d"><span class="section-number-4">3.2.1</span> C templates for front end</h4>
<div id="outline-container-org1241802" class="outline-4">
<h4 id="org1241802"><span class="section-number-4">3.2.1</span> C templates for front end</h4>
<div class="outline-text-4" id="text-3-2-1">
<p>
The <code>C</code> templates that correspond to each of the abovementioned
@ -2008,8 +2008,8 @@ precision (see Table above).
</div>
</div>
<div id="outline-container-org5e515a6" class="outline-4">
<h4 id="org5e515a6"><span class="section-number-4">3.2.2</span> Fortran templates for front end</h4>
<div id="outline-container-orgfae1895" class="outline-4">
<h4 id="orgfae1895"><span class="section-number-4">3.2.2</span> Fortran templates for front end</h4>
<div class="outline-text-4" id="text-3-2-2">
<p>
The <code>Fortran</code> templates that provide an access to the <code>C</code> API calls from Fortran.
@ -2094,8 +2094,8 @@ These templates are based on the use of <code>iso_c_binding</code>. Pointers hav
</div>
</div>
<div id="outline-container-org7bb4560" class="outline-4">
<h4 id="org7bb4560"><span class="section-number-4">3.2.3</span> Python templates for front end</h4>
<div id="outline-container-orgf3ef070" class="outline-4">
<h4 id="orgf3ef070"><span class="section-number-4">3.2.3</span> Python templates for front end</h4>
<div class="outline-text-4" id="text-3-2-3">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a020f0;">def</span> <span style="color: #0000ff;">write_</span>$group_num$(trexio_file, num_w: <span style="color: #483d8b;">int</span>) -&gt; <span style="color: #008b8b;">None</span>:
@ -2180,8 +2180,8 @@ These templates are based on the use of <code>iso_c_binding</code>. Pointers hav
</div>
</div>
<div id="outline-container-orgc8e1000" class="outline-3">
<h3 id="orgc8e1000"><span class="section-number-3">3.3</span> Templates for front end has/read/write a dataset of numerical data</h3>
<div id="outline-container-orga912eeb" class="outline-3">
<h3 id="orga912eeb"><span class="section-number-3">3.3</span> Templates for front end has/read/write a dataset of numerical data</h3>
<div class="outline-text-3" id="text-3-3">
<p>
This section concerns API calls related to datasets.
@ -2262,8 +2262,8 @@ This section concerns API calls related to datasets.
</table>
</div>
<div id="outline-container-org020d989" class="outline-4">
<h4 id="org020d989"><span class="section-number-4">3.3.1</span> C templates for front end</h4>
<div id="outline-container-org289a9aa" class="outline-4">
<h4 id="org289a9aa"><span class="section-number-4">3.3.1</span> C templates for front end</h4>
<div class="outline-text-4" id="text-3-3-1">
<p>
The C templates that correspond to each of the abovementioned functions can be found below.
@ -2274,13 +2274,13 @@ The basic (non-suffixed) API call on datasets deals with double precision (see T
</p>
</div>
<div id="outline-container-orgcd3bed4" class="outline-5">
<h5 id="orgcd3bed4"><span class="section-number-5">3.3.1.1</span> Function declarations</h5>
<div id="outline-container-org8c400e0" class="outline-5">
<h5 id="org8c400e0"><span class="section-number-5">3.3.1.1</span> Function declarations</h5>
</div>
<div id="outline-container-org647e756" class="outline-5">
<h5 id="org647e756"><span class="section-number-5">3.3.1.2</span> Source code for double precision functions</h5>
<div id="outline-container-orge2f57c7" class="outline-5">
<h5 id="orge2f57c7"><span class="section-number-5">3.3.1.2</span> Source code for double precision functions</h5>
<div class="outline-text-5" id="text-3-3-1-2">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -2408,8 +2408,8 @@ The basic (non-suffixed) API call on datasets deals with double precision (see T
</div>
</div>
<div id="outline-container-orgc112b04" class="outline-5">
<h5 id="orgc112b04"><span class="section-number-5">3.3.1.3</span> Source code for single precision functions</h5>
<div id="outline-container-org6fe4f94" class="outline-5">
<h5 id="org6fe4f94"><span class="section-number-5">3.3.1.3</span> Source code for single precision functions</h5>
<div class="outline-text-5" id="text-3-3-1-3">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -2550,11 +2550,11 @@ The basic (non-suffixed) API call on datasets deals with double precision (see T
</div>
</div>
<div id="outline-container-org1287ced" class="outline-5">
<h5 id="org1287ced"><span class="section-number-5">3.3.1.4</span> Source code for memory-safe functions</h5>
<div id="outline-container-org4698c3e" class="outline-5">
<h5 id="org4698c3e"><span class="section-number-5">3.3.1.4</span> Source code for memory-safe functions</h5>
<div class="outline-text-5" id="text-3-3-1-4">
<div class="org-src-container">
<pre class="src src-c" id="orgefc8ed1"><span style="color: #228b22;">trexio_exit_code</span> <span style="color: #a0522d;">rc</span>;
<pre class="src src-c" id="org9f7b212"><span style="color: #228b22;">trexio_exit_code</span> <span style="color: #a0522d;">rc</span>;
int64_t $group_dset_dim$ = 0;
/* <span style="color: #b22222;">Error handling for this call is added by the generator </span>*/
@ -2710,8 +2710,8 @@ rc = trexio_read_$group_dset_dim$_64(file, &amp;($group_dset_dim$));
</div>
</div>
<div id="outline-container-org2758caa" class="outline-5">
<h5 id="org2758caa"><span class="section-number-5">3.3.1.5</span> Source code for default functions</h5>
<div id="outline-container-orgc1a29cb" class="outline-5">
<h5 id="orgc1a29cb"><span class="section-number-5">3.3.1.5</span> Source code for default functions</h5>
<div class="outline-text-5" id="text-3-3-1-5">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -2785,8 +2785,8 @@ rc = trexio_read_$group_dset_dim$_64(file, &amp;($group_dset_dim$));
</div>
</div>
<div id="outline-container-orge094395" class="outline-4">
<h4 id="orge094395"><span class="section-number-4">3.3.2</span> Fortran templates for front end</h4>
<div id="outline-container-org9c6edbc" class="outline-4">
<h4 id="org9c6edbc"><span class="section-number-4">3.3.2</span> Fortran templates for front end</h4>
<div class="outline-text-4" id="text-3-3-2">
<p>
The <code>Fortran</code> templates that provide an access to the <code>C</code> API calls from <code>Fortran</code>.
@ -2871,8 +2871,8 @@ These templates are based on the use of <code>iso_c_binding</code>. Pointers hav
</div>
</div>
<div id="outline-container-org3760b59" class="outline-4">
<h4 id="org3760b59"><span class="section-number-4">3.3.3</span> Python templates for front end</h4>
<div id="outline-container-orga9bd69f" class="outline-4">
<h4 id="orga9bd69f"><span class="section-number-4">3.3.3</span> Python templates for front end</h4>
<div class="outline-text-4" id="text-3-3-3">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a020f0;">def</span> <span style="color: #0000ff;">write_</span>$group_dset$(trexio_file, dset_w) -&gt; <span style="color: #008b8b;">None</span>:
@ -3067,8 +3067,8 @@ These templates are based on the use of <code>iso_c_binding</code>. Pointers hav
</div>
</div>
<div id="outline-container-org639d4ad" class="outline-3">
<h3 id="org639d4ad"><span class="section-number-3">3.4</span> Sparse data structures</h3>
<div id="outline-container-orgb198893" class="outline-3">
<h3 id="orgb198893"><span class="section-number-3">3.4</span> Sparse data structures</h3>
<div class="outline-text-3" id="text-3-4">
<p>
Sparse data structures are used typically for large tensors such as
@ -3209,12 +3209,12 @@ For the values,
</div>
</div>
<div id="outline-container-orge1d62ad" class="outline-3">
<h3 id="orge1d62ad"><span class="section-number-3">3.5</span> Templates for front end has/read/write a dataset of strings</h3>
<div id="outline-container-org3e961c1" class="outline-3">
<h3 id="org3e961c1"><span class="section-number-3">3.5</span> Templates for front end has/read/write a dataset of strings</h3>
<div class="outline-text-3" id="text-3-5">
</div>
<div id="outline-container-orga55586f" class="outline-4">
<h4 id="orga55586f"><span class="section-number-4">3.5.1</span> Introduction</h4>
<div id="outline-container-org3621552" class="outline-4">
<h4 id="org3621552"><span class="section-number-4">3.5.1</span> Introduction</h4>
<div class="outline-text-4" id="text-3-5-1">
<p>
This section concerns API calls related to datasets of strings.
@ -3254,8 +3254,8 @@ This section concerns API calls related to datasets of strings.
</div>
</div>
<div id="outline-container-org95de5b5" class="outline-4">
<h4 id="org95de5b5"><span class="section-number-4">3.5.2</span> C templates for front end</h4>
<div id="outline-container-org5f41bdf" class="outline-4">
<h4 id="org5f41bdf"><span class="section-number-4">3.5.2</span> C templates for front end</h4>
<div class="outline-text-4" id="text-3-5-2">
<p>
First parameter is the <code>TREXIO</code> file handle. Second parameter is the variable to be written/read
@ -3502,8 +3502,8 @@ to/from the <code>TREXIO</code> file (except for <code>trexio_has_</code> functi
</div>
</div>
<div id="outline-container-org3030a6d" class="outline-4">
<h4 id="org3030a6d"><span class="section-number-4">3.5.3</span> Fortran templates for front end</h4>
<div id="outline-container-orgf3e5d0d" class="outline-4">
<h4 id="orgf3e5d0d"><span class="section-number-4">3.5.3</span> Fortran templates for front end</h4>
<div class="outline-text-4" id="text-3-5-3">
<p>
The <code>Fortran</code> templates that provide an access to the <code>C</code> API calls from <code>Fortran</code>.
@ -3599,8 +3599,8 @@ These templates are based on the use of <code>iso_c_binding</code>. Pointers hav
</div>
</div>
<div id="outline-container-orge93412a" class="outline-4">
<h4 id="orge93412a"><span class="section-number-4">3.5.4</span> Python templates for front end</h4>
<div id="outline-container-org46ed452" class="outline-4">
<h4 id="org46ed452"><span class="section-number-4">3.5.4</span> Python templates for front end</h4>
<div class="outline-text-4" id="text-3-5-4">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a020f0;">def</span> <span style="color: #0000ff;">write_</span>$group_dset$(trexio_file, dset_w: <span style="color: #483d8b;">list</span>) -&gt; <span style="color: #008b8b;">None</span>:
@ -3716,12 +3716,12 @@ These templates are based on the use of <code>iso_c_binding</code>. Pointers hav
</div>
</div>
<div id="outline-container-orgc75dbff" class="outline-3">
<h3 id="orgc75dbff"><span class="section-number-3">3.6</span> Templates for front end has/read/write a single string attribute</h3>
<div id="outline-container-orgf033086" class="outline-3">
<h3 id="orgf033086"><span class="section-number-3">3.6</span> Templates for front end has/read/write a single string attribute</h3>
<div class="outline-text-3" id="text-3-6">
</div>
<div id="outline-container-org137aabb" class="outline-4">
<h4 id="org137aabb"><span class="section-number-4">3.6.1</span> Introduction</h4>
<div id="outline-container-orgb00ae58" class="outline-4">
<h4 id="orgb00ae58"><span class="section-number-4">3.6.1</span> Introduction</h4>
<div class="outline-text-4" id="text-3-6-1">
<p>
This section concerns API calls related to string attributes.
@ -3761,8 +3761,8 @@ This section concerns API calls related to string attributes.
</div>
</div>
<div id="outline-container-org33ace08" class="outline-4">
<h4 id="org33ace08"><span class="section-number-4">3.6.2</span> C templates for front end</h4>
<div id="outline-container-orgba53fc6" class="outline-4">
<h4 id="orgba53fc6"><span class="section-number-4">3.6.2</span> C templates for front end</h4>
<div class="outline-text-4" id="text-3-6-2">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -3861,8 +3861,8 @@ This section concerns API calls related to string attributes.
</div>
</div>
<div id="outline-container-orgc81cd65" class="outline-4">
<h4 id="orgc81cd65"><span class="section-number-4">3.6.3</span> Fortran templates for front end</h4>
<div id="outline-container-org8c369d2" class="outline-4">
<h4 id="org8c369d2"><span class="section-number-4">3.6.3</span> Fortran templates for front end</h4>
<div class="outline-text-4" id="text-3-6-3">
<p>
The <code>Fortran</code> templates that provide an access to the <code>C</code> API calls from Fortran.
@ -3939,8 +3939,8 @@ These templates are based on the use of <code>iso_c_binding</code>. Pointers hav
</div>
</div>
<div id="outline-container-orgceb8263" class="outline-4">
<h4 id="orgceb8263"><span class="section-number-4">3.6.4</span> Python templates for front end</h4>
<div id="outline-container-org79bb43f" class="outline-4">
<h4 id="org79bb43f"><span class="section-number-4">3.6.4</span> Python templates for front end</h4>
<div class="outline-text-4" id="text-3-6-4">
<div class="org-src-container">
<pre class="src src-python"><span style="color: #a020f0;">def</span> <span style="color: #0000ff;">write_</span>$group_str$(trexio_file, str_w: <span style="color: #483d8b;">str</span>) -&gt; <span style="color: #008b8b;">None</span>:
@ -4030,8 +4030,8 @@ These templates are based on the use of <code>iso_c_binding</code>. Pointers hav
</div>
</div>
<div id="outline-container-org9467554" class="outline-2">
<h2 id="org9467554"><span class="section-number-2">4</span> Fortran helper/wrapper functions</h2>
<div id="outline-container-org3b5518a" class="outline-2">
<h2 id="org3b5518a"><span class="section-number-2">4</span> Fortran helper/wrapper functions</h2>
<div class="outline-text-2" id="text-4">
<p>
The function below adapts the original C-based <code>trexio_open</code> for Fortran.
@ -4165,7 +4165,7 @@ two code are identical, i.e. if the <code>assert</code> statement pass.
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX-CoE</p>
<p class="date">Created: 2021-09-15 Wed 13:04</p>
<p class="date">Created: 2021-09-15 Wed 13:06</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2021-09-15 Wed 13:04 -->
<!-- 2021-09-15 Wed 13:06 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>HDF5 back end</title>
@ -311,27 +311,27 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#orgf9a6442">1. HDF5 back end</a>
<li><a href="#org65128bc">1. HDF5 back end</a>
<ul>
<li><a href="#org65f9091">1.1. Template for HDF5 definitions</a></li>
<li><a href="#orgae4fa7f">1.2. Template for HDF5 structures</a></li>
<li><a href="#org82116b5">1.3. Template for HDF5 init/deinit</a></li>
<li><a href="#orgc66fa58">1.4. Template for HDF5 has/read/write a single dimensioning variable</a></li>
<li><a href="#org0c3aec8">1.5. Template for HDF5 has/read/write a dataset of numerical data</a></li>
<li><a href="#org3c15ed9">1.6. Template for HDF5 has/read/write a dataset of strings</a></li>
<li><a href="#org44d0569">1.7. Template for HDF5 has/read/write a single string attribute</a></li>
<li><a href="#org09d4ff8">1.1. Template for HDF5 definitions</a></li>
<li><a href="#orgb923a10">1.2. Template for HDF5 structures</a></li>
<li><a href="#orgd21ef36">1.3. Template for HDF5 init/deinit</a></li>
<li><a href="#org7c71e34">1.4. Template for HDF5 has/read/write a single dimensioning variable</a></li>
<li><a href="#orgcf06bc7">1.5. Template for HDF5 has/read/write a dataset of numerical data</a></li>
<li><a href="#orgd23a87d">1.6. Template for HDF5 has/read/write a dataset of strings</a></li>
<li><a href="#org99b036b">1.7. Template for HDF5 has/read/write a single string attribute</a></li>
</ul>
</li>
</ul>
</div>
</div>
<div id="outline-container-orgf9a6442" class="outline-2">
<h2 id="orgf9a6442"><span class="section-number-2">1</span> HDF5 back end</h2>
<div id="outline-container-org65128bc" class="outline-2">
<h2 id="org65128bc"><span class="section-number-2">1</span> HDF5 back end</h2>
<div class="outline-text-2" id="text-1">
</div>
<div id="outline-container-org65f9091" class="outline-3">
<h3 id="org65f9091"><span class="section-number-3">1.1</span> Template for HDF5 definitions</h3>
<div id="outline-container-org09d4ff8" class="outline-3">
<h3 id="org09d4ff8"><span class="section-number-3">1.1</span> Template for HDF5 definitions</h3>
<div class="outline-text-3" id="text-1-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>
@ -343,8 +343,8 @@ for the JavaScript code in this tag.
</div>
</div>
<div id="outline-container-orgae4fa7f" class="outline-3">
<h3 id="orgae4fa7f"><span class="section-number-3">1.2</span> Template for HDF5 structures</h3>
<div id="outline-container-orgb923a10" class="outline-3">
<h3 id="orgb923a10"><span class="section-number-3">1.2</span> Template for HDF5 structures</h3>
<div class="outline-text-3" id="text-1-2">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> <span style="color: #228b22;">trexio_hdf5_s</span> {
@ -358,8 +358,8 @@ for the JavaScript code in this tag.
</div>
<div id="outline-container-org82116b5" class="outline-3">
<h3 id="org82116b5"><span class="section-number-3">1.3</span> Template for HDF5 init/deinit</h3>
<div id="outline-container-orgd21ef36" class="outline-3">
<h3 id="orgd21ef36"><span class="section-number-3">1.3</span> Template for HDF5 init/deinit</h3>
<div class="outline-text-3" id="text-1-3">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -439,8 +439,8 @@ for the JavaScript code in this tag.
</div>
</div>
<div id="outline-container-orgc66fa58" class="outline-3">
<h3 id="orgc66fa58"><span class="section-number-3">1.4</span> Template for HDF5 has/read/write a single dimensioning variable</h3>
<div id="outline-container-org7c71e34" class="outline-3">
<h3 id="org7c71e34"><span class="section-number-3">1.4</span> Template for HDF5 has/read/write a single dimensioning variable</h3>
<div class="outline-text-3" id="text-1-4">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -556,8 +556,8 @@ for the JavaScript code in this tag.
</div>
</div>
<div id="outline-container-org0c3aec8" class="outline-3">
<h3 id="org0c3aec8"><span class="section-number-3">1.5</span> Template for HDF5 has/read/write a dataset of numerical data</h3>
<div id="outline-container-orgcf06bc7" class="outline-3">
<h3 id="orgcf06bc7"><span class="section-number-3">1.5</span> Template for HDF5 has/read/write a dataset of numerical data</h3>
<div class="outline-text-3" id="text-1-5">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -686,8 +686,8 @@ for the JavaScript code in this tag.
</div>
</div>
<div id="outline-container-org3c15ed9" class="outline-3">
<h3 id="org3c15ed9"><span class="section-number-3">1.6</span> Template for HDF5 has/read/write a dataset of strings</h3>
<div id="outline-container-orgd23a87d" class="outline-3">
<h3 id="orgd23a87d"><span class="section-number-3">1.6</span> Template for HDF5 has/read/write a dataset of strings</h3>
<div class="outline-text-3" id="text-1-6">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -898,8 +898,8 @@ for the JavaScript code in this tag.
</div>
</div>
<div id="outline-container-org44d0569" class="outline-3">
<h3 id="org44d0569"><span class="section-number-3">1.7</span> Template for HDF5 has/read/write a single string attribute</h3>
<div id="outline-container-org99b036b" class="outline-3">
<h3 id="org99b036b"><span class="section-number-3">1.7</span> Template for HDF5 has/read/write a single string attribute</h3>
<div class="outline-text-3" id="text-1-7">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -1026,7 +1026,7 @@ for the JavaScript code in this tag.
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX-CoE</p>
<p class="date">Created: 2021-09-15 Wed 13:04</p>
<p class="date">Created: 2021-09-15 Wed 13:06</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2021-09-15 Wed 13:04 -->
<!-- 2021-09-15 Wed 13:06 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>TEXT back end</title>
@ -311,26 +311,26 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org9e102bc">1. TEXT back end</a>
<li><a href="#org647b41c">1. TEXT back end</a>
<ul>
<li><a href="#orgc214aaf">1.1. Template for group-related structures in text back end</a></li>
<li><a href="#org7a8e305">1.2. Template for general structure in text back end</a></li>
<li><a href="#org828d71b">1.3. Initialize function (constant part)</a></li>
<li><a href="#org8108099">1.4. Deinitialize function (templated part)</a></li>
<li><a href="#org80d3c67">1.5. Template for text read struct</a></li>
<li><a href="#orgbf4e2b3">1.6. Template for text flush struct</a></li>
<li><a href="#org848d5bb">1.7. Template for text free memory</a></li>
<li><a href="#orgde209bf">1.8. Template for has/read/write the num attribute</a></li>
<li><a href="#org2598d80">1.9. Template for has/read/write the dataset of numerical data</a></li>
<li><a href="#org3379ce8">1.10. Template for has/read/write the dataset of strings</a></li>
<li><a href="#org96dbb34">1.11. Template for has/read/write the string attribute</a></li>
<li><a href="#orgd7ba6d0">1.12. RDM struct (hard-coded)</a>
<li><a href="#orgcca77d3">1.1. Template for group-related structures in text back end</a></li>
<li><a href="#org90a61b7">1.2. Template for general structure in text back end</a></li>
<li><a href="#org422353a">1.3. Initialize function (constant part)</a></li>
<li><a href="#orgcde175e">1.4. Deinitialize function (templated part)</a></li>
<li><a href="#orga888149">1.5. Template for text read struct</a></li>
<li><a href="#orgfd20449">1.6. Template for text flush struct</a></li>
<li><a href="#orgd9d3eaf">1.7. Template for text free memory</a></li>
<li><a href="#orgfcf1ba0">1.8. Template for has/read/write the num attribute</a></li>
<li><a href="#orgaaae3e7">1.9. Template for has/read/write the dataset of numerical data</a></li>
<li><a href="#org4dda2de">1.10. Template for has/read/write the dataset of strings</a></li>
<li><a href="#org66ffc2a">1.11. Template for has/read/write the string attribute</a></li>
<li><a href="#orgfbfffc1">1.12. RDM struct (hard-coded)</a>
<ul>
<li><a href="#org63fd98c">1.12.1. Read the complete struct</a></li>
<li><a href="#org71ec405">1.12.2. Flush the complete struct</a></li>
<li><a href="#org0c9422c">1.12.3. Free memory</a></li>
<li><a href="#orgda88092">1.12.4. Read/Write the one<sub>e</sub> attribute</a></li>
<li><a href="#orge7603b2">1.12.5. Read/Write the two<sub>e</sub> attribute</a></li>
<li><a href="#orgf491ae7">1.12.1. Read the complete struct</a></li>
<li><a href="#org926ab05">1.12.2. Flush the complete struct</a></li>
<li><a href="#org4d91edc">1.12.3. Free memory</a></li>
<li><a href="#orgdc36e84">1.12.4. Read/Write the one<sub>e</sub> attribute</a></li>
<li><a href="#orgb652039">1.12.5. Read/Write the two<sub>e</sub> attribute</a></li>
</ul>
</li>
</ul>
@ -339,8 +339,8 @@ for the JavaScript code in this tag.
</div>
</div>
<div id="outline-container-org9e102bc" class="outline-2">
<h2 id="org9e102bc"><span class="section-number-2">1</span> TEXT back end</h2>
<div id="outline-container-org647b41c" class="outline-2">
<h2 id="org647b41c"><span class="section-number-2">1</span> TEXT back end</h2>
<div class="outline-text-2" id="text-1">
<p>
The "file" produced by the text back end is a directory with one
@ -361,8 +361,8 @@ The file is written when closed, or when the flush function is called.
</p>
</div>
<div id="outline-container-orgc214aaf" class="outline-3">
<h3 id="orgc214aaf"><span class="section-number-3">1.1</span> Template for group-related structures in text back end</h3>
<div id="outline-container-orgcca77d3" class="outline-3">
<h3 id="orgcca77d3"><span class="section-number-3">1.1</span> Template for group-related structures in text back end</h3>
<div class="outline-text-3" id="text-1-1">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> $group$_s {
@ -380,8 +380,8 @@ The file is written when closed, or when the flush function is called.
</div>
</div>
<div id="outline-container-org7a8e305" class="outline-3">
<h3 id="org7a8e305"><span class="section-number-3">1.2</span> Template for general structure in text back end</h3>
<div id="outline-container-org90a61b7" class="outline-3">
<h3 id="org90a61b7"><span class="section-number-3">1.2</span> Template for general structure in text back end</h3>
<div class="outline-text-3" id="text-1-2">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #a020f0;">typedef</span> <span style="color: #a020f0;">struct</span> <span style="color: #228b22;">rdm_s</span> {
@ -407,8 +407,8 @@ The file is written when closed, or when the flush function is called.
</div>
</div>
<div id="outline-container-org828d71b" class="outline-3">
<h3 id="org828d71b"><span class="section-number-3">1.3</span> Initialize function (constant part)</h3>
<div id="outline-container-org422353a" class="outline-3">
<h3 id="org422353a"><span class="section-number-3">1.3</span> Initialize function (constant part)</h3>
<div class="outline-text-3" id="text-1-3">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -509,8 +509,8 @@ The file is written when closed, or when the flush function is called.
</div>
</div>
<div id="outline-container-org8108099" class="outline-3">
<h3 id="org8108099"><span class="section-number-3">1.4</span> Deinitialize function (templated part)</h3>
<div id="outline-container-orgcde175e" class="outline-3">
<h3 id="orgcde175e"><span class="section-number-3">1.4</span> Deinitialize function (templated part)</h3>
<div class="outline-text-3" id="text-1-4">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -535,8 +535,8 @@ The file is written when closed, or when the flush function is called.
</div>
</div>
<div id="outline-container-org80d3c67" class="outline-3">
<h3 id="org80d3c67"><span class="section-number-3">1.5</span> Template for text read struct</h3>
<div id="outline-container-orga888149" class="outline-3">
<h3 id="orga888149"><span class="section-number-3">1.5</span> Template for text read struct</h3>
<div class="outline-text-3" id="text-1-5">
<div class="org-src-container">
<pre class="src src-c">$group$_t*
@ -805,8 +805,8 @@ trexio_text_read_$group$ (<span style="color: #228b22;">trexio_text_t</span>* <s
</div>
</div>
<div id="outline-container-orgbf4e2b3" class="outline-3">
<h3 id="orgbf4e2b3"><span class="section-number-3">1.6</span> Template for text flush struct</h3>
<div id="outline-container-orgfd20449" class="outline-3">
<h3 id="orgfd20449"><span class="section-number-3">1.6</span> Template for text flush struct</h3>
<div class="outline-text-3" id="text-1-6">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -870,8 +870,8 @@ trexio_text_read_$group$ (<span style="color: #228b22;">trexio_text_t</span>* <s
</div>
</div>
<div id="outline-container-org848d5bb" class="outline-3">
<h3 id="org848d5bb"><span class="section-number-3">1.7</span> Template for text free memory</h3>
<div id="outline-container-orgd9d3eaf" class="outline-3">
<h3 id="orgd9d3eaf"><span class="section-number-3">1.7</span> Template for text free memory</h3>
<div class="outline-text-3" id="text-1-7">
<p>
Memory is allocated when reading. The following function frees memory.
@ -916,8 +916,8 @@ Memory is allocated when reading. The following function frees memory.
</div>
</div>
<div id="outline-container-orgde209bf" class="outline-3">
<h3 id="orgde209bf"><span class="section-number-3">1.8</span> Template for has/read/write the num attribute</h3>
<div id="outline-container-orgfcf1ba0" class="outline-3">
<h3 id="orgfcf1ba0"><span class="section-number-3">1.8</span> Template for has/read/write the num attribute</h3>
<div class="outline-text-3" id="text-1-8">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -979,8 +979,8 @@ Memory is allocated when reading. The following function frees memory.
</div>
</div>
<div id="outline-container-org2598d80" class="outline-3">
<h3 id="org2598d80"><span class="section-number-3">1.9</span> Template for has/read/write the dataset of numerical data</h3>
<div id="outline-container-orgaaae3e7" class="outline-3">
<h3 id="orgaaae3e7"><span class="section-number-3">1.9</span> Template for has/read/write the dataset of numerical data</h3>
<div class="outline-text-3" id="text-1-9">
<p>
The <code>group_dset</code> array is assumed allocated with the appropriate size.
@ -1076,8 +1076,8 @@ The <code>group_dset</code> array is assumed allocated with the appropriate size
</div>
</div>
</div>
<div id="outline-container-org3379ce8" class="outline-3">
<h3 id="org3379ce8"><span class="section-number-3">1.10</span> Template for has/read/write the dataset of strings</h3>
<div id="outline-container-org4dda2de" class="outline-3">
<h3 id="org4dda2de"><span class="section-number-3">1.10</span> Template for has/read/write the dataset of strings</h3>
<div class="outline-text-3" id="text-1-10">
<p>
The <code>group_dset</code> array is assumed allocated with the appropriate size.
@ -1178,8 +1178,8 @@ The <code>group_dset</code> array is assumed allocated with the appropriate size
</div>
</div>
</div>
<div id="outline-container-org96dbb34" class="outline-3">
<h3 id="org96dbb34"><span class="section-number-3">1.11</span> Template for has/read/write the string attribute</h3>
<div id="outline-container-org66ffc2a" class="outline-3">
<h3 id="org66ffc2a"><span class="section-number-3">1.11</span> Template for has/read/write the string attribute</h3>
<div class="outline-text-3" id="text-1-11">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span>
@ -1253,12 +1253,12 @@ The <code>group_dset</code> array is assumed allocated with the appropriate size
</div>
</div>
</div>
<div id="outline-container-orgd7ba6d0" class="outline-3">
<h3 id="orgd7ba6d0"><span class="section-number-3">1.12</span> RDM struct (hard-coded)</h3>
<div id="outline-container-orgfbfffc1" class="outline-3">
<h3 id="orgfbfffc1"><span class="section-number-3">1.12</span> RDM struct (hard-coded)</h3>
<div class="outline-text-3" id="text-1-12">
</div>
<div id="outline-container-org63fd98c" class="outline-4">
<h4 id="org63fd98c"><span class="section-number-4">1.12.1</span> Read the complete struct</h4>
<div id="outline-container-orgf491ae7" class="outline-4">
<h4 id="orgf491ae7"><span class="section-number-4">1.12.1</span> Read the complete struct</h4>
<div class="outline-text-4" id="text-1-12-1">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">rdm_t</span>* <span style="color: #0000ff;">trexio_text_read_rdm</span>(<span style="color: #228b22;">trexio_text_t</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">file</span>);
@ -1353,8 +1353,8 @@ The <code>group_dset</code> array is assumed allocated with the appropriate size
</div>
</div>
<div id="outline-container-org71ec405" class="outline-4">
<h4 id="org71ec405"><span class="section-number-4">1.12.2</span> Flush the complete struct</h4>
<div id="outline-container-org926ab05" class="outline-4">
<h4 id="org926ab05"><span class="section-number-4">1.12.2</span> Flush the complete struct</h4>
<div class="outline-text-4" id="text-1-12-2">
<div class="org-src-container">
<pre class="src src-c"><span style="color: #228b22;">trexio_exit_code</span> <span style="color: #0000ff;">trexio_text_flush_rdm</span>(<span style="color: #228b22;">trexio_text_t</span>* <span style="color: #a020f0;">const</span> <span style="color: #a0522d;">file</span>);
@ -1396,8 +1396,8 @@ The <code>group_dset</code> array is assumed allocated with the appropriate size
</div>
</div>
<div id="outline-container-org0c9422c" class="outline-4">
<h4 id="org0c9422c"><span class="section-number-4">1.12.3</span> Free memory</h4>
<div id="outline-container-org4d91edc" class="outline-4">
<h4 id="org4d91edc"><span class="section-number-4">1.12.3</span> Free memory</h4>
<div class="outline-text-4" id="text-1-12-3">
<p>
Memory is allocated when reading. The followig function frees memory.
@ -1433,8 +1433,8 @@ Memory is allocated when reading. The followig function frees memory.
</div>
</div>
<div id="outline-container-orgda88092" class="outline-4">
<h4 id="orgda88092"><span class="section-number-4">1.12.4</span> Read/Write the one<sub>e</sub> attribute</h4>
<div id="outline-container-orgdc36e84" class="outline-4">
<h4 id="orgdc36e84"><span class="section-number-4">1.12.4</span> Read/Write the one<sub>e</sub> attribute</h4>
<div class="outline-text-4" id="text-1-12-4">
<p>
The <code>one_e</code> array is assumed allocated with the appropriate size.
@ -1500,8 +1500,8 @@ The <code>one_e</code> array is assumed allocated with the appropriate size.
</div>
</div>
<div id="outline-container-orge7603b2" class="outline-4">
<h4 id="orge7603b2"><span class="section-number-4">1.12.5</span> Read/Write the two<sub>e</sub> attribute</h4>
<div id="outline-container-orgb652039" class="outline-4">
<h4 id="orgb652039"><span class="section-number-4">1.12.5</span> Read/Write the two<sub>e</sub> attribute</h4>
<div class="outline-text-4" id="text-1-12-5">
<p>
<code>two_e</code> is a sparse data structure, which can be too large to fit
@ -1609,7 +1609,7 @@ file for each sparse float structure.
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX-CoE</p>
<p class="date">Created: 2021-09-15 Wed 13:04</p>
<p class="date">Created: 2021-09-15 Wed 13:06</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

122
trex.html
View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2021-09-15 Wed 13:04 -->
<!-- 2021-09-15 Wed 13:06 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>TREX Configuration file</title>
@ -333,28 +333,28 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org0274d68">1. Metadata (metadata group)</a></li>
<li><a href="#org32458da">2. Electron (electron group)</a></li>
<li><a href="#orgeebf37c">3. Nucleus (nucleus group)</a></li>
<li><a href="#org8d46179">4. Effective core potentials (ecp group)</a></li>
<li><a href="#orga3001f3">5. Basis set (basis group)</a></li>
<li><a href="#orga5c5fde">6. Atomic orbitals (ao group)</a>
<li><a href="#org56a2b29">1. Metadata (metadata group)</a></li>
<li><a href="#orgcd81345">2. Electron (electron group)</a></li>
<li><a href="#org5aad6f3">3. Nucleus (nucleus group)</a></li>
<li><a href="#orgbb238d6">4. Effective core potentials (ecp group)</a></li>
<li><a href="#org2a4e4e2">5. Basis set (basis group)</a></li>
<li><a href="#org151cb8a">6. Atomic orbitals (ao group)</a>
<ul>
<li><a href="#ao_one_e">6.1. One-electron integrals (<code>ao_1e_int</code> group)</a></li>
<li><a href="#ao_two_e">6.2. Two-electron integrals (<code>ao_2e_int</code> group)</a></li>
</ul>
</li>
<li><a href="#org397600b">7. Molecular orbitals (mo group)</a>
<li><a href="#org3fa2486">7. Molecular orbitals (mo group)</a>
<ul>
<li><a href="#org9df6d0c">7.1. One-electron integrals (<code>mo_1e_int</code> group)</a></li>
<li><a href="#orgdd739a0">7.2. Two-electron integrals (<code>mo_2e_int</code> group)</a></li>
<li><a href="#orge6be5c7">7.1. One-electron integrals (<code>mo_1e_int</code> group)</a></li>
<li><a href="#org19ba312">7.2. Two-electron integrals (<code>mo_2e_int</code> group)</a></li>
</ul>
</li>
<li><a href="#org4606a86">8. <span class="todo TODO">TODO</span> Slater determinants</a></li>
<li><a href="#org34ae59e">9. <span class="todo TODO">TODO</span> Reduced density matrices (rdm group)</a></li>
<li><a href="#org7c614f9">10. Appendix</a>
<li><a href="#org57f0100">8. <span class="todo TODO">TODO</span> Slater determinants</a></li>
<li><a href="#org2ffcfb0">9. <span class="todo TODO">TODO</span> Reduced density matrices (rdm group)</a></li>
<li><a href="#org58fe513">10. Appendix</a>
<ul>
<li><a href="#org9fe4e98">10.1. Python script from table to json</a></li>
<li><a href="#org8b8ec96">10.1. Python script from table to json</a></li>
</ul>
</li>
</ul>
@ -386,8 +386,8 @@ arrays are 0-based. Hence, we introduce the <code>index</code> type which is an
1-based <code>int</code> in the Fortran interface and 0-based otherwise.
</p>
<div id="outline-container-org0274d68" class="outline-2">
<h2 id="org0274d68"><span class="section-number-2">1</span> Metadata (metadata group)</h2>
<div id="outline-container-org56a2b29" class="outline-2">
<h2 id="org56a2b29"><span class="section-number-2">1</span> Metadata (metadata group)</h2>
<div class="outline-text-2" id="text-1">
<p>
As we expect our files to be archived in open-data repositories, we
@ -397,7 +397,7 @@ which have participated to the creation of the file, a list of
authors of the file, and a textual description.
</p>
<table id="org7ca046a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org0f467c0" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -464,15 +464,15 @@ authors of the file, and a textual description.
</div>
</div>
<div id="outline-container-org32458da" class="outline-2">
<h2 id="org32458da"><span class="section-number-2">2</span> Electron (electron group)</h2>
<div id="outline-container-orgcd81345" class="outline-2">
<h2 id="orgcd81345"><span class="section-number-2">2</span> Electron (electron group)</h2>
<div class="outline-text-2" id="text-2">
<p>
We consider wave functions expressed in the spin-free formalism, where
the number of &uarr; and &darr; electrons is fixed.
</p>
<table id="org1c2b084" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgdfa66ca" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -511,15 +511,15 @@ the number of &uarr; and &darr; electrons is fixed.
</div>
</div>
<div id="outline-container-orgeebf37c" class="outline-2">
<h2 id="orgeebf37c"><span class="section-number-2">3</span> Nucleus (nucleus group)</h2>
<div id="outline-container-org5aad6f3" class="outline-2">
<h2 id="org5aad6f3"><span class="section-number-2">3</span> Nucleus (nucleus group)</h2>
<div class="outline-text-2" id="text-3">
<p>
The nuclei are considered as fixed point charges. Coordinates are
given in Cartesian \((x,y,z)\) format.
</p>
<table id="org9e8ee90" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgd6fcdf4" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -579,8 +579,8 @@ given in Cartesian \((x,y,z)\) format.
</div>
</div>
<div id="outline-container-org8d46179" class="outline-2">
<h2 id="org8d46179"><span class="section-number-2">4</span> Effective core potentials (ecp group)</h2>
<div id="outline-container-orgbb238d6" class="outline-2">
<h2 id="orgbb238d6"><span class="section-number-2">4</span> Effective core potentials (ecp group)</h2>
<div class="outline-text-2" id="text-4">
<p>
An effective core potential (ECP) \(V_A^{\text{ECP}}\) replacing the
@ -608,7 +608,7 @@ 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> for more info.
</p>
<table id="org1bd4c95" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orga30795e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -661,14 +661,14 @@ See <a href="http://dx.doi.org/10.1063/1.4984046">http://dx.doi.org/10.1063/1.49
<td class="org-left"><code>local_exponent</code></td>
<td class="org-left"><code>float</code></td>
<td class="org-left"><code>(ecp.local_num_n_max, nucleus.num)</code></td>
<td class="org-left">\(\alpha_{A q \ell_{\max}}}\)</td>
<td class="org-left">\(\alpha_{A q \ell_{\max}}\)</td>
</tr>
<tr>
<td class="org-left"><code>local_coef</code></td>
<td class="org-left"><code>float</code></td>
<td class="org-left"><code>(ecp.local_num_n_max, nucleus.num)</code></td>
<td class="org-left">\(\beta_{A q \ell_{\max}}}\)</td>
<td class="org-left">\(\beta_{A q \ell_{\max}}\)</td>
</tr>
<tr>
@ -717,8 +717,8 @@ See <a href="http://dx.doi.org/10.1063/1.4984046">http://dx.doi.org/10.1063/1.49
</div>
</div>
<div id="outline-container-orga3001f3" class="outline-2">
<h2 id="orga3001f3"><span class="section-number-2">5</span> Basis set (basis group)</h2>
<div id="outline-container-org2a4e4e2" class="outline-2">
<h2 id="org2a4e4e2"><span class="section-number-2">5</span> Basis set (basis group)</h2>
<div class="outline-text-2" id="text-5">
<p>
We consider here basis functions centered on nuclei. Hence, we enable
@ -771,7 +771,7 @@ If the the basis function is not considered normalized, \(\mathcal{N}_s=1\).
All the basis set parameters are stored in one-dimensional arrays:
</p>
<table id="org16c46de" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org439488c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -940,8 +940,8 @@ prim_factor =
</div>
</div>
<div id="outline-container-orga5c5fde" class="outline-2">
<h2 id="orga5c5fde"><span class="section-number-2">6</span> Atomic orbitals (ao group)</h2>
<div id="outline-container-org151cb8a" class="outline-2">
<h2 id="org151cb8a"><span class="section-number-2">6</span> Atomic orbitals (ao group)</h2>
<div class="outline-text-2" id="text-6">
<p>
Going from the atomic basis set to AOs implies a systematic
@ -989,13 +989,13 @@ shell, as in the GAMESS convention where
<p>
In such a case, one should set the normalization of the shell (in
the <a href="#orga3001f3">Basis set</a> section) to \(\mathcal{N}_{z^2}\), which is the
the <a href="#org2a4e4e2">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}}\).
</p>
<table id="org7d4c342" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org3fc9027" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1047,8 +1047,8 @@ introduced here should be \(\frac{\mathcal{N}_{xy}}{\mathcal{N}_{z^2}}\).
</table>
</div>
<div id="outline-container-org92be548" class="outline-3">
<h3 id="ao_one_e"><a id="org92be548"></a><span class="section-number-3">6.1</span> One-electron integrals (<code>ao_1e_int</code> group)</h3>
<div id="outline-container-orga9aa0cd" class="outline-3">
<h3 id="ao_one_e"><a id="orga9aa0cd"></a><span class="section-number-3">6.1</span> One-electron integrals (<code>ao_1e_int</code> group)</h3>
<div class="outline-text-3" id="text-ao_one_e">
<ul class="org-ul">
<li>\[ \hat{V}_{\text{ne}} = \sum_{A=1}^{N_\text{nucl}}
@ -1066,7 +1066,7 @@ The one-electron integrals for a one-electron operator \(\hat{O}\) are
over atomic orbitals.
</p>
<table id="org8bc3a45" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orge156f46" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1133,8 +1133,8 @@ over atomic orbitals.
</div>
</div>
<div id="outline-container-orga2659f6" class="outline-3">
<h3 id="ao_two_e"><a id="orga2659f6"></a><span class="section-number-3">6.2</span> Two-electron integrals (<code>ao_2e_int</code> group)</h3>
<div id="outline-container-org88a795a" class="outline-3">
<h3 id="ao_two_e"><a id="org88a795a"></a><span class="section-number-3">6.2</span> Two-electron integrals (<code>ao_2e_int</code> group)</h3>
<div class="outline-text-3" id="text-ao_two_e">
<p>
The two-electron integrals for a two-electron operator \(\hat{O}\) are
@ -1155,7 +1155,7 @@ notation.
\mathbf{r}_j \vert)}{\vert \mathbf{r}_i - \mathbf{r}_j \vert} \] : electron-electron long range potential</li>
</ul>
<table id="org8e6e88c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org20312cf" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1195,10 +1195,10 @@ notation.
</div>
</div>
<div id="outline-container-org397600b" class="outline-2">
<h2 id="org397600b"><span class="section-number-2">7</span> Molecular orbitals (mo group)</h2>
<div id="outline-container-org3fa2486" class="outline-2">
<h2 id="org3fa2486"><span class="section-number-2">7</span> Molecular orbitals (mo group)</h2>
<div class="outline-text-2" id="text-7">
<table id="org1c11621" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org876bfa2" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1264,8 +1264,8 @@ notation.
</table>
</div>
<div id="outline-container-org9df6d0c" class="outline-3">
<h3 id="org9df6d0c"><span class="section-number-3">7.1</span> One-electron integrals (<code>mo_1e_int</code> group)</h3>
<div id="outline-container-orge6be5c7" class="outline-3">
<h3 id="orge6be5c7"><span class="section-number-3">7.1</span> One-electron integrals (<code>mo_1e_int</code> group)</h3>
<div class="outline-text-3" id="text-7-1">
<p>
The operators as the same as those defined in the
@ -1273,7 +1273,7 @@ The operators as the same as those defined in the
the basis of molecular orbitals.
</p>
<table id="org23f3c89" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org214224e" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1340,8 +1340,8 @@ the basis of molecular orbitals.
</div>
</div>
<div id="outline-container-orgdd739a0" class="outline-3">
<h3 id="orgdd739a0"><span class="section-number-3">7.2</span> Two-electron integrals (<code>mo_2e_int</code> group)</h3>
<div id="outline-container-org19ba312" class="outline-3">
<h3 id="org19ba312"><span class="section-number-3">7.2</span> Two-electron integrals (<code>mo_2e_int</code> group)</h3>
<div class="outline-text-3" id="text-7-2">
<p>
The operators as the same as those defined in the
@ -1349,7 +1349,7 @@ The operators as the same as those defined in the
the basis of molecular orbitals.
</p>
<table id="org2a41db4" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org146026b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1389,13 +1389,13 @@ the basis of molecular orbitals.
</div>
</div>
<div id="outline-container-org4606a86" class="outline-2">
<h2 id="org4606a86"><span class="section-number-2">8</span> <span class="todo TODO">TODO</span> Slater determinants</h2>
<div id="outline-container-org57f0100" class="outline-2">
<h2 id="org57f0100"><span class="section-number-2">8</span> <span class="todo TODO">TODO</span> Slater determinants</h2>
</div>
<div id="outline-container-org34ae59e" class="outline-2">
<h2 id="org34ae59e"><span class="section-number-2">9</span> <span class="todo TODO">TODO</span> Reduced density matrices (rdm group)</h2>
<div id="outline-container-org2ffcfb0" class="outline-2">
<h2 id="org2ffcfb0"><span class="section-number-2">9</span> <span class="todo TODO">TODO</span> Reduced density matrices (rdm group)</h2>
<div class="outline-text-2" id="text-9">
<table id="org5770d35" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgf60327d" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<colgroup>
@ -1448,15 +1448,15 @@ the basis of molecular orbitals.
</div>
</div>
<div id="outline-container-org7c614f9" class="outline-2">
<h2 id="org7c614f9"><span class="section-number-2">10</span> Appendix</h2>
<div id="outline-container-org58fe513" class="outline-2">
<h2 id="org58fe513"><span class="section-number-2">10</span> Appendix</h2>
<div class="outline-text-2" id="text-10">
</div>
<div id="outline-container-org9fe4e98" class="outline-3">
<h3 id="org9fe4e98"><span class="section-number-3">10.1</span> Python script from table to json</h3>
<div id="outline-container-org8b8ec96" class="outline-3">
<h3 id="org8b8ec96"><span class="section-number-3">10.1</span> Python script from table to json</h3>
<div class="outline-text-3" id="text-10-1">
<div class="org-src-container">
<pre class="src src-python" id="orga619892"><span style="color: #a020f0;">print</span>(<span style="color: #8b2252;">"""#+begin_src python :tangle trex.json"""</span>)
<pre class="src src-python" id="org0e59251"><span style="color: #a020f0;">print</span>(<span style="color: #8b2252;">"""#+begin_src python :tangle trex.json"""</span>)
<span style="color: #a020f0;">print</span>(<span style="color: #8b2252;">""" "%s": {"""</span>%(title))
<span style="color: #a0522d;">indent</span> = <span style="color: #8b2252;">" "</span>
<span style="color: #a0522d;">f1</span> = 0 ; <span style="color: #a0522d;">f2</span> = 0 ; <span style="color: #a0522d;">f3</span> = 0
@ -1509,7 +1509,7 @@ the basis of molecular orbitals.
</div>
<div id="postamble" class="status">
<p class="author">Author: TREX-CoE</p>
<p class="date">Created: 2021-09-15 Wed 13:04</p>
<p class="date">Created: 2021-09-15 Wed 13:06</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>