diff --git a/README.html b/README.html index b69e671c..a9af86f9 100644 --- a/README.html +++ b/README.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + TREXIO source code documentation @@ -406,7 +406,7 @@

TREXIO source code documentation

Author: TREX-CoE

-

Created: 2024-03-15 Fri 16:53

+

Created: 2024-03-22 Fri 14:46

Validate

diff --git a/examples.html b/examples.html index 26195ef6..a6367ae5 100644 --- a/examples.html +++ b/examples.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Examples @@ -346,61 +346,61 @@

Examples

Table of Contents

-
-

1 Writing nuclear coordinates

+
+

1 Writing nuclear coordinates

Here is a demonstration of how to use TREXIO to write the nuclear @@ -410,8 +410,8 @@

1 Writing nuclear coor

-
-

1.1 C

+
+

1.1 C

#include <stdio.h>
@@ -461,8 +461,8 @@ 

1.1 C

-
-

1.2 Python

+
+

1.2 Python

This code uses the TREXIO Python binding to create a new TREXIO file named @@ -509,8 +509,8 @@

1.2 Python

-
-

1.3 Fortran

+
+

1.3 Fortran

program trexio_water
@@ -567,12 +567,12 @@ 

1.3 Fortran

-
-

2 Accessing sparse quantities (integrals)

+
+

2 Accessing sparse quantities (integrals)

-
-

2.1 Fortran

+
+

2.1 Fortran

program print_energy
@@ -618,8 +618,8 @@ 

2.1 Fortran

-
-

2.1.1 Declare Temporary variables

+
+

2.1.1 Declare Temporary variables

integer                       :: i, j, k, l, m
@@ -634,8 +634,8 @@ 

2.1.1 Declare Temporar

-
-

2.1.2 Obtain the name of the TREXIO file from the command line, and open it for reading

+
+

2.1.2 Obtain the name of the TREXIO file from the command line, and open it for reading

call getarg(1, filename)
@@ -651,8 +651,8 @@ 

2.1.2 Obtain the name

-
-

2.1.3 Read the nuclear repulsion energy

+
+

2.1.3 Read the nuclear repulsion energy

rc = trexio_read_nucleus_repulsion(f, E_nn)
@@ -666,8 +666,8 @@ 

2.1.3 Read the nuclear

-
-

2.1.4 Read the number of molecular orbitals

+
+

2.1.4 Read the number of molecular orbitals

rc = trexio_read_mo_num(f, n)
@@ -681,8 +681,8 @@ 

2.1.4 Read the number

-
-

2.1.5 Allocate memory

+
+

2.1.5 Allocate memory

allocate( D(n,n), h0(n,n) )
@@ -694,8 +694,8 @@ 

2.1.5 Allocate memory<

-
-

2.1.6 Read one-electron quantities

+
+

2.1.6 Read one-electron quantities

rc = trexio_has_mo_1e_int_core_hamiltonian(f)
@@ -727,8 +727,8 @@ 

2.1.6 Read one-electro

-
-

2.1.7 Read two-electron quantities

+
+

2.1.7 Read two-electron quantities

Reading is done with OpenMP. Each thread reads its own buffer, and @@ -744,8 +744,8 @@

2.1.7 Read two-electro

-
-
2.1.7.1 Electron repulsion integrals
+
+
2.1.7.1 Electron repulsion integrals
rc = trexio_has_mo_2e_int_eri(f)
@@ -794,8 +794,8 @@ 
2.1.7.1 Electron repul
-
-
2.1.7.2 Reduced density matrix
+
+
2.1.7.2 Reduced density matrix
rc = trexio_has_rdm_2e(f)
@@ -839,8 +839,8 @@ 
2.1.7.2 Reduced densit
-
-

2.1.8 Compute the energy

+
+

2.1.8 Compute the energy

When the orbitals are real, we can use @@ -886,8 +886,8 @@

2.1.8 Compute the ener

-
-

2.1.9 Terminate

+
+

2.1.9 Terminate

  deallocate( D, h0, G, W )
@@ -899,8 +899,8 @@ 

2.1.9 Terminate

-
-

2.2 Python

+
+

2.2 Python

import sys
@@ -934,8 +934,8 @@ 

2.2 Python

-
-

2.2.1 Obtain the name of the TREXIO file from the command line, and open it for reading

+
+

2.2.1 Obtain the name of the TREXIO file from the command line, and open it for reading

filename = sys.argv[1]
@@ -945,8 +945,8 @@ 

2.2.1 Obtain the name

-
-

2.2.2 Read the nuclear repulsion energy

+
+

2.2.2 Read the nuclear repulsion energy

E_nn = trexio.read_nucleus_repulsion(f)
@@ -955,8 +955,8 @@ 

2.2.2 Read the nuclear

-
-

2.2.3 Read the number of molecular orbitals

+
+

2.2.3 Read the number of molecular orbitals

n = trexio.read_mo_num(f)
@@ -965,8 +965,8 @@ 

2.2.3 Read the number

-
-

2.2.4 Read one-electron quantities

+
+

2.2.4 Read one-electron quantities

if not trexio.has_mo_1e_int_core_hamiltonian(f):
@@ -985,12 +985,12 @@ 

2.2.4 Read one-electro

-
-

2.2.5 Read two-electron quantities

+
+

2.2.5 Read two-electron quantities

-
-
2.2.5.1 Electron repulsion integrals
+
+
2.2.5.1 Electron repulsion integrals
if not trexio.has_mo_2e_int_eri(f):
@@ -1020,8 +1020,8 @@ 
2.2.5.1 Electron repul
-
-
2.2.5.2 Reduced density matrix
+
+
2.2.5.2 Reduced density matrix
if not trexio.has_rdm_2e(f):
@@ -1043,8 +1043,8 @@ 
2.2.5.2 Reduced densit
-
-

2.2.6 Compute the energy

+
+

2.2.6 Compute the energy

When the orbitals are real, we can use @@ -1073,12 +1073,12 @@

2.2.6 Compute the ener

-
-

3 Reading determinants

+
+

3 Reading determinants

-
-

3.1 Fortran

+
+

3.1 Fortran

program test
@@ -1157,7 +1157,7 @@ 

3.1 Fortran

Author: TREX-CoE

-

Created: 2024-03-15 Fri 16:53

+

Created: 2024-03-22 Fri 14:46

Validate

diff --git a/index.html b/index.html index b69e671c..a9af86f9 100644 --- a/index.html +++ b/index.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + TREXIO source code documentation @@ -406,7 +406,7 @@

TREXIO source code documentation

Author: TREX-CoE

-

Created: 2024-03-15 Fri 16:53

+

Created: 2024-03-22 Fri 14:46

Validate

diff --git a/intro.html b/intro.html index 47db6bad..d11970ce 100644 --- a/intro.html +++ b/intro.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Motivation @@ -384,7 +384,7 @@

Motivation

Author: TREX-CoE

-

Created: 2024-03-15 Fri 16:53

+

Created: 2024-03-22 Fri 14:46

Validate

diff --git a/lib.html b/lib.html index d1ee2b70..3028f229 100644 --- a/lib.html +++ b/lib.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + The TREXIO library @@ -346,19 +346,19 @@

The TREXIO library

Table of Contents

-
-

1 Format specification

+
+

1 Format specification

@@ -388,8 +388,8 @@

1 Format specification

-
-

1.1 Organization of the data

+
+

1.1 Organization of the data

The data in TREXIO are organized into groups, each containing @@ -405,8 +405,8 @@

1.1 Organization of th

-
-

1.2 Data types

+
+

1.2 Data types

So that TREXIO can be used in any language, we use a limited number @@ -473,8 +473,8 @@

1.2 Data types

-
-

2 The TREXIO library

+
+

2 The TREXIO library

@@ -497,8 +497,8 @@

2 The TREXIO library

-
-

2.1 The front-end

+
+

2.1 The front-end

By using the TREXIO library, users can store and extract data in a @@ -539,8 +539,8 @@

2.1 The front-end

-
-

2.2 The back-end

+
+

2.2 The back-end

At present, TREXIO supports two back-ends: one relying only on the @@ -610,8 +610,8 @@

2.2 The back-end

-
-

2.3 Supported languages

+
+

2.3 Supported languages

One of the main benefits of using C as the interface for a library is @@ -668,8 +668,8 @@

2.3 Supported language

-
-

2.4 Source code generation and documentation

+
+

2.4 Source code generation and documentation

Source code generation is a valuable technique that can significantly @@ -723,8 +723,8 @@

2.4 Source code genera

-
-

2.5 Availability

+
+

2.5 Availability

The TREXIO library is designed to be portable and easy to install @@ -754,7 +754,7 @@

2.5 Availability

Author: TREX-CoE

-

Created: 2024-03-15 Fri 16:53

+

Created: 2024-03-22 Fri 14:46

Validate

diff --git a/templator_front.html b/templator_front.html index fe65c868..bc3f037d 100644 --- a/templator_front.html +++ b/templator_front.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Front end API @@ -346,207 +346,207 @@

Front end API

Table of Contents

-
-

1 Coding conventions

+
+

1 Coding conventions

  • integer types will be defined using types given in stdint.h
  • @@ -561,8 +561,8 @@

    1 Coding conventions

-
-

1.1 Memory allocation

+
+

1.1 Memory allocation

Memory allocation of structures can be facilitated by using the @@ -598,8 +598,8 @@

1.1 Memory allocation<

-
-

2 Front end

+
+

2 Front end

All calls to TREXIO are thread-safe. @@ -607,10 +607,10 @@

2 Front end

-
-

2.1 Error handling

+
+

2.1 Error handling

- +
@@ -905,8 +905,8 @@

2.1 Error handling

-
-

2.1.1 Decoding errors

+
+

2.1.1 Decoding errors

The trexio_string_of_error converts an exit code into a string. The @@ -932,8 +932,8 @@

2.1.1 Decoding errors<

-
-
2.1.1.1 C source code
+
+
2.1.1.1 C source code
const char*
@@ -1071,8 +1071,8 @@ 
2.1.1.1 C source code<
-
-
2.1.1.2 Fortran interface
+
+
2.1.1.2 Fortran interface
interface
@@ -1088,8 +1088,8 @@ 
2.1.1.2 Fortran interf
-
-
2.1.1.3 Python interface
+
+
2.1.1.3 Python interface
class Error(Exception):
@@ -1122,8 +1122,8 @@ 
2.1.1.3 Python interfa
-
-

2.2 Back ends

+
+

2.2 Back ends

TREXIO has several back ends: @@ -1152,8 +1152,8 @@

2.2 Back ends

-
-

2.2.1 C

+
+

2.2.1 C

typedef int32_t back_end_t;
@@ -1202,8 +1202,8 @@ 

2.2.1 C

-
-

2.2.2 Fortran

+
+

2.2.2 Fortran

  integer(trexio_back_end_t), parameter :: TREXIO_HDF5 = 0
@@ -1242,8 +1242,8 @@ 

2.2.2 Fortran

-
-

2.2.3 Python

+
+

2.2.3 Python

# define TREXIO back ends
@@ -1258,8 +1258,8 @@ 

2.2.3 Python

-
-

2.3 Read/write behavior

+
+

2.3 Read/write behavior

Every time a reading function is called, the data is read from the @@ -1288,8 +1288,8 @@

2.3 Read/write behavio

-
-

2.4 TREXIO file type

+
+

2.4 TREXIO file type

trexio_s is the the main type for TREXIO files, visible to the users @@ -1453,8 +1453,8 @@

2.4 TREXIO file type

-
-

2.5 File opening

+
+

2.5 File opening

trexio_open creates a new TREXIO file or opens the existing one. @@ -1510,8 +1510,8 @@

2.5 File opening

-
-

2.5.1 C

+
+

2.5.1 C

trexio_t*
@@ -1828,8 +1828,8 @@ 

2.5.1 C

-
-

2.5.2 Fortran

+
+

2.5.2 Fortran

interface
@@ -1847,8 +1847,8 @@ 

2.5.2 Fortran

-
-

2.5.3 Python

+
+

2.5.3 Python

def _open(file_name: str, mode: str, back_end: int):
@@ -1896,8 +1896,8 @@ 

2.5.3 Python

-
-

2.5.4 Zero-based versus one-based arrays of indices

+
+

2.5.4 Zero-based versus one-based arrays of indices

Because arrays are zero-based in Fortran, we need to set a flag to @@ -1930,8 +1930,8 @@

2.5.4 Zero-based versu

-
-

2.6 File closing

+
+

2.6 File closing

trexio_close closes an existing trexio_t file. @@ -1948,8 +1948,8 @@

2.6 File closing

-
-

2.6.1 C

+
+

2.6.1 C

trexio_exit_code
@@ -2034,8 +2034,8 @@ 

2.6.1 C

-
-

2.6.2 Fortran

+
+

2.6.2 Fortran

interface
@@ -2050,8 +2050,8 @@ 

2.6.2 Fortran

-
-

2.6.3 Python

+
+

2.6.3 Python

def _close(trexio_file):
@@ -2069,8 +2069,8 @@ 

2.6.3 Python

-
-

2.7 File flushing

+
+

2.7 File flushing

trexio_flush flushes all buffers into the trexio_t file. @@ -2087,8 +2087,8 @@

2.7 File flushing

-
-

2.7.1 C

+
+

2.7.1 C

trexio_exit_code
@@ -2129,8 +2129,8 @@ 

2.7.1 C

-
-

2.7.2 Fortran

+
+

2.7.2 Fortran

interface
@@ -2145,8 +2145,8 @@ 

2.7.2 Fortran

-
-

2.7.3 Python

+
+

2.7.3 Python

def flush(trexio_file):
@@ -2164,8 +2164,8 @@ 

2.7.3 Python

-
-

2.8 File existence

+
+

2.8 File existence

trexio_inquire check whether TREXIO file exists. @@ -2202,8 +2202,8 @@

2.8 File existence

-
-

2.8.1 C

+
+

2.8.1 C

trexio_exit_code
@@ -2233,8 +2233,8 @@ 

2.8.1 C

-
-

2.8.2 Fortran

+
+

2.8.2 Fortran

The function below is a C binding. @@ -2254,8 +2254,8 @@

2.8.2 Fortran

-
-

2.8.3 Python

+
+

2.8.3 Python

def _inquire(file_name: str) -> bool:
@@ -2274,8 +2274,8 @@ 

2.8.3 Python

-
-

2.9 File copy

+
+

2.9 File copy

trexio_cp copies a TREXIO file using cp. The destination file @@ -2298,8 +2298,8 @@

2.9 File copy

-
-

2.9.1 C

+
+

2.9.1 C

@@ -2372,8 +2372,8 @@ 

2.9.1 C

-
-

2.9.2 Fortran

+
+

2.9.2 Fortran

interface
@@ -2388,8 +2388,8 @@ 

2.9.2 Fortran

-
-

2.9.3 Python

+
+

2.9.3 Python

def _cp(source: str, destination: str):
@@ -2421,8 +2421,8 @@ 

2.9.3 Python

-
-

2.10 File state

+
+

2.10 File state

Note: the use of the functions below is discouraged as of version 2.3.0. @@ -2459,8 +2459,8 @@

2.10 File state

-
-

2.10.1 C

+
+

2.10.1 C

trexio_exit_code
@@ -2504,8 +2504,8 @@ 

2.10.1 C

-
-

2.10.2 Fortran

+
+

2.10.2 Fortran

interface
@@ -2530,8 +2530,8 @@ 

2.10.2 Fortran

-
-

2.10.3 Python

+
+

2.10.3 Python

See TREXIO File Python class. @@ -2540,8 +2540,8 @@

2.10.3 Python

-
-

2.11 Tasks to be done before closing

+
+

2.11 Tasks to be done before closing

trexio_exit_code
@@ -2642,12 +2642,12 @@ 

2.11 Tasks to be done

-
-

3 Templates for front end

+
+

3 Templates for front end

-
-

3.1 Description

+
+

3.1 Description

Consider the following block of trex.json: @@ -2868,12 +2868,12 @@

3.1 Description

-
-

3.2 Templates for front end hasgroup functions

+
+

3.2 Templates for front end hasgroup functions

-
-

3.2.1 Introduction

+
+

3.2.1 Introduction

This section concerns API calls related to TREXIO groups @@ -2903,8 +2903,8 @@

3.2.1 Introduction

-
-

3.2.2 C templates for front end

+
+

3.2.2 C templates for front end

The C templates that correspond to each of the abovementioned @@ -2913,12 +2913,12 @@

3.2.2 C templates for

-
-
3.2.2.1 Function declarations
+
+
3.2.2.1 Function declarations
-
-
3.2.2.2 Source code
+
+
3.2.2.2 Source code
trexio_exit_code
@@ -2955,8 +2955,8 @@ 
3.2.2.2 Source code
-
-

3.2.3 Fortran templates for front end

+
+

3.2.3 Fortran templates for front end

The Fortran templates that provide an access to the C API calls from Fortran. @@ -2976,8 +2976,8 @@

3.2.3 Fortran template

-
-

3.2.4 Python templates for front end

+
+

3.2.4 Python templates for front end

def has_$group$(trexio_file) -> bool:
@@ -3004,12 +3004,12 @@ 

3.2.4 Python templates

-
-

3.3 Templates for front end has/read/write a single numerical attribute

+
+

3.3 Templates for front end has/read/write a single numerical attribute

-
-

3.3.1 Introduction

+
+

3.3.1 Introduction

This section concerns API calls related to numerical attributes, @@ -3080,8 +3080,8 @@

3.3.1 Introduction

-
-

3.3.2 C templates for front end

+
+

3.3.2 C templates for front end

The C templates that correspond to each of the abovementioned @@ -3095,12 +3095,12 @@

3.3.2 C templates for

-
-
3.3.2.1 Function declarations
+
+
3.3.2.1 Function declarations
-
-
3.3.2.2 Source code for double precision functions
+
+
3.3.2.2 Source code for double precision functions
trexio_exit_code
@@ -3181,8 +3181,8 @@ 
3.3.2.2 Source code fo
-
-
3.3.2.3 Source code for single precision functions
+
+
3.3.2.3 Source code for single precision functions
trexio_exit_code
@@ -3270,8 +3270,8 @@ 
3.3.2.3 Source code fo
-
-
3.3.2.4 Source code for default functions
+
+
3.3.2.4 Source code for default functions
trexio_exit_code
@@ -3326,8 +3326,8 @@ 
3.3.2.4 Source code fo
-
-

3.3.3 Fortran templates for front end

+
+

3.3.3 Fortran templates for front end

The Fortran templates that provide an access to the C API calls from Fortran. @@ -3419,8 +3419,8 @@

3.3.3 Fortran template

-
-

3.3.4 Python templates for front end

+
+

3.3.4 Python templates for front end

def write_$group_num$(trexio_file, num_w: $group_num_py_dtype$) -> None:
@@ -3493,12 +3493,12 @@ 

3.3.4 Python templates

-
-

3.4 Templates for front end has/read/write a dataset of numerical data

+
+

3.4 Templates for front end has/read/write a dataset of numerical data

-
-

3.4.1 Introduction

+
+

3.4.1 Introduction

This section concerns API calls related to datasets. @@ -3580,8 +3580,8 @@

3.4.1 Introduction

-
-

3.4.2 C templates for front end

+
+

3.4.2 C templates for front end

The C templates that correspond to each of the abovementioned functions can be found below. @@ -3592,12 +3592,12 @@

3.4.2 C templates for

-
-
3.4.2.1 Function declarations
+
+
3.4.2.1 Function declarations
-
-
3.4.2.2 Source code for double precision functions
+
+
3.4.2.2 Source code for double precision functions
trexio_exit_code
@@ -3760,8 +3760,8 @@ 
3.4.2.2 Source code fo
-
-
3.4.2.3 Source code for single precision functions
+
+
3.4.2.3 Source code for single precision functions
trexio_exit_code
@@ -3912,11 +3912,11 @@ 
3.4.2.3 Source code fo
-
-
3.4.2.4 Source code for memory-safe functions
+
+
3.4.2.4 Source code for memory-safe functions
-
trexio_exit_code rc;
+
trexio_exit_code rc;
 int64_t $group_dset_dim$ = 0;
 
 /* Error handling for this call is added by the generator */
@@ -4072,8 +4072,8 @@ 
3.4.2.4 Source code fo
-
-
3.4.2.5 Source code for default functions
+
+
3.4.2.5 Source code for default functions
trexio_exit_code
@@ -4148,8 +4148,8 @@ 
3.4.2.5 Source code fo
-
-

3.4.3 Fortran templates for front end

+
+

3.4.3 Fortran templates for front end

The Fortran templates that provide an access to the C API calls from Fortran. @@ -4241,8 +4241,8 @@

3.4.3 Fortran template

-
-

3.4.4 Python templates for front end

+
+

3.4.4 Python templates for front end

def write_$group_dset$(trexio_file, dset_w) -> None:
@@ -4414,12 +4414,12 @@ 

3.4.4 Python templates

-
-

3.5 Templates for front end has/read/write a dataset of sparse data

+
+

3.5 Templates for front end has/read/write a dataset of sparse data

-
-

3.5.1 Introduction

+
+

3.5.1 Introduction

Sparse data structures are used typically for large tensors such as @@ -4580,16 +4580,16 @@

3.5.1 Introduction

-
-

3.5.2 C templates for front end

+
+

3.5.2 C templates for front end

-
-
3.5.2.1 Function declarations
+
+
3.5.2.1 Function declarations
-
-
3.5.2.2 Source code for default functions
+
+
3.5.2.2 Source code for default functions
trexio_exit_code trexio_read_safe_$group_dset$(trexio_t* const file,
@@ -4892,8 +4892,8 @@ 
3.5.2.2 Source code fo
-
-

3.5.3 Fortran templates for front end

+
+

3.5.3 Fortran templates for front end

The Fortran templates that provide an access to the C API calls from Fortran. @@ -4994,8 +4994,8 @@

3.5.3 Fortran template

-
-

3.5.4 Python templates for front end

+
+

3.5.4 Python templates for front end

def write_$group_dset$(trexio_file: File, offset_file: int, buffer_size: int, indices: list, values: list) -> None:
@@ -5197,12 +5197,12 @@ 

3.5.4 Python templates

-
-

3.6 Templates for front end has/read/write a dataset of strings

+
+

3.6 Templates for front end has/read/write a dataset of strings

-
-

3.6.1 Introduction

+
+

3.6.1 Introduction

This section concerns API calls related to datasets of strings. @@ -5242,8 +5242,8 @@

3.6.1 Introduction

-
-

3.6.2 C templates for front end

+
+

3.6.2 C templates for front end

First parameter is the TREXIO file handle. Second parameter is the variable to be written/read @@ -5251,12 +5251,12 @@

3.6.2 C templates for

-
-
3.6.2.1 Function declarations
+
+
3.6.2.1 Function declarations
-
-
3.6.2.2 Source code for default functions
+
+
3.6.2.2 Source code for default functions
trexio_exit_code
@@ -5506,8 +5506,8 @@ 
3.6.2.2 Source code fo
-
-

3.6.3 Fortran templates for front end

+
+

3.6.3 Fortran templates for front end

The Fortran templates that provide an access to the C API calls from Fortran. @@ -5606,8 +5606,8 @@

3.6.3 Fortran template

-
-

3.6.4 Python templates for front end

+
+

3.6.4 Python templates for front end

def write_$group_dset$(trexio_file, dset_w: list) -> None:
@@ -5708,8 +5708,8 @@ 

3.6.4 Python templates

-
-

3.7 Templates for front end has/read/write a buffered vector

+
+

3.7 Templates for front end has/read/write a buffered vector

This corresponds to the buffer data type and is particularly useful for incremental additiona of values like @@ -5774,8 +5774,8 @@

3.7 Templates for fron

-
-

3.7.1 C source code

+
+

3.7.1 C source code

trexio_exit_code
@@ -5953,8 +5953,8 @@ 

3.7.1 C source code

-
-

3.7.2 Fortran interface

+
+

3.7.2 Fortran interface

The Fortran templates that provide an access to the C API calls from Fortran. @@ -6042,8 +6042,8 @@

3.7.2 Fortran interfac

-
-

3.7.3 Python interface

+
+

3.7.3 Python interface

def write_$group_dset$(trexio_file: File, offset_file: int, buffer_size: int, dset) -> None:
@@ -6194,12 +6194,12 @@ 

3.7.3 Python interface

-
-

3.8 Templates for front end has/read/write a single string attribute

+
+

3.8 Templates for front end has/read/write a single string attribute

-
-

3.8.1 Introduction

+
+

3.8.1 Introduction

This section concerns API calls related to string attributes. @@ -6239,16 +6239,16 @@

3.8.1 Introduction

-
-

3.8.2 C templates for front end

+
+

3.8.2 C templates for front end

-
-
3.8.2.1 Function declarations
+
+
3.8.2.1 Function declarations
-
-
3.8.2.2 Source code for default functions
+
+
3.8.2.2 Source code for default functions
trexio_exit_code
@@ -6352,8 +6352,8 @@ 
3.8.2.2 Source code fo
-
-

3.8.3 Fortran templates for front end

+
+

3.8.3 Fortran templates for front end

The Fortran templates that provide an access to the C API calls from Fortran. @@ -6433,8 +6433,8 @@

3.8.3 Fortran template

-
-

3.8.4 Python templates for front end

+
+

3.8.4 Python templates for front end

def write_$group_str$(trexio_file, str_w: str) -> None:
@@ -6509,12 +6509,12 @@ 

3.8.4 Python templates

-
-

3.9 Templates for front end delete an entire group (UNSAFE MODE)

+
+

3.9 Templates for front end delete an entire group (UNSAFE MODE)

-
-

3.9.1 Introduction

+
+

3.9.1 Introduction

This section concerns API calls related to string attributes. @@ -6544,8 +6544,8 @@

3.9.1 Introduction

-
-

3.9.2 C templates for front end

+
+

3.9.2 C templates for front end

trexio_exit_code
@@ -6580,8 +6580,8 @@ 

3.9.2 C templates for

-
-

3.9.3 Fortran templates for front end

+
+

3.9.3 Fortran templates for front end

The Fortran templates that provide an access to the C API calls from Fortran. @@ -6601,8 +6601,8 @@

3.9.3 Fortran template

-
-

3.9.4 Python templates for front end

+
+

3.9.4 Python templates for front end

def delete_$group$(trexio_file) -> None:
@@ -6628,8 +6628,8 @@ 

3.9.4 Python templates

-
-

4 Source code for the determinant part

+
+

4 Source code for the determinant part

Storage of the determinants is a particular case, @@ -6680,8 +6680,8 @@

4 Source code for the

-
-

4.0.1 C source code

+
+

4.0.1 C source code

trexio_exit_code
@@ -6881,8 +6881,8 @@ 

4.0.1 C source code

-
-

4.0.2 Fortran interface

+
+

4.0.2 Fortran interface

The Fortran templates that provide an access to the C API calls from Fortran. @@ -6969,8 +6969,8 @@

4.0.2 Fortran interfac

-
-

4.0.3 Python interface

+
+

4.0.3 Python interface

def write_determinant_list(trexio_file: File, offset_file: int, buffer_size: int, determinants: list) -> None:
@@ -7152,8 +7152,8 @@ 

4.0.3 Python interface

-
-

5 General helper functions

+
+

5 General helper functions

This section contains general helper functions like trexio_info. @@ -7205,8 +7205,8 @@

5 General helper funct

-
-

5.1 C

+
+

5.1 C

trexio_exit_code trexio_info(void);
@@ -7657,8 +7657,8 @@ 

5.1 C

-
-

5.2 Fortran

+
+

5.2 Fortran

interface
@@ -7792,8 +7792,8 @@ 

5.2 Fortran

-
-

5.3 Python

+
+

5.3 Python

def info():
@@ -7994,8 +7994,8 @@ 

5.3 Python

-
-

6 Fortran helper/wrapper functions

+
+

6 Fortran helper/wrapper functions

The function below adapts the original C-based trexio_open for Fortran. @@ -8244,7 +8244,7 @@

6 Fortran helper/wrapp

Author: TREX-CoE

-

Created: 2024-03-15 Fri 16:53

+

Created: 2024-03-22 Fri 14:46

Validate

diff --git a/templator_hdf5.html b/templator_hdf5.html index 762332b6..bad4fcb5 100644 --- a/templator_hdf5.html +++ b/templator_hdf5.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + HDF5 back end @@ -324,25 +324,25 @@

HDF5 back end

Table of Contents

-
-

1 Template for HDF5 definitions

+
+

1 Template for HDF5 definitions

#define $GROUP$_GROUP_NAME          "$group$"
@@ -354,8 +354,8 @@ 

1 Template for HDF5 de

-
-

2 Template for HDF5 structures

+
+

2 Template for HDF5 structures

Polymorphism of the trexio_t type is handled by ensuring that the @@ -375,8 +375,8 @@

2 Template for HDF5 st

-
-

3 Template for HDF5 init/deinit

+
+

3 Template for HDF5 init/deinit

trexio_exit_code
@@ -496,8 +496,8 @@ 

3 Template for HDF5 in

-
-

4 Template for HDF5 has a group

+
+

4 Template for HDF5 has a group

trexio_exit_code
@@ -527,8 +527,8 @@ 

4 Template for HDF5 ha

-
-

5 Template for HDF5 has/read/write a numerical attribute

+
+

5 Template for HDF5 has/read/write a numerical attribute

trexio_exit_code
@@ -632,8 +632,8 @@ 

5 Template for HDF5 ha

-
-

6 Template for HDF5 has/read/write a dataset of numerical data

+
+

6 Template for HDF5 has/read/write a dataset of numerical data

trexio_exit_code
@@ -770,8 +770,8 @@ 

6 Template for HDF5 ha

-
-

7 Template for HDF5 has/read/write a dataset of sparse data

+
+

7 Template for HDF5 has/read/write a dataset of sparse data

Sparse data is stored using extensible datasets of HDF5. Extensibility is required @@ -976,8 +976,8 @@

7 Template for HDF5 ha

-
-

8 Template for HDF5 has/read/write a dataset of buffered vectors

+
+

8 Template for HDF5 has/read/write a dataset of buffered vectors

Chunked I/O in HDF5 for buffered data. @@ -1111,8 +1111,8 @@

8 Template for HDF5 ha

-
-

9 Template for HDF5 has/read/write a dataset of strings

+
+

9 Template for HDF5 has/read/write a dataset of strings

trexio_exit_code
@@ -1309,8 +1309,8 @@ 

9 Template for HDF5 ha

-
-

10 Template for HDF5 has/read/write a string attribute

+
+

10 Template for HDF5 has/read/write a string attribute

trexio_exit_code
@@ -1437,8 +1437,8 @@ 

10 Template for HDF5 h

-
-

11 Template for HDF5 delete a group (UNSAFE mode)

+
+

11 Template for HDF5 delete a group (UNSAFE mode)

Note: in early versions of the HDF5 library (v < 1.10) unlinking an object was not working as expected @@ -1478,8 +1478,8 @@

11 Template for HDF5 d

-
-

12 Source code for the determinant part

+
+

12 Source code for the determinant part

Each array is stored in a separate HDF5 dataset due to the fact that determinant I/O has to be decoupled. @@ -1581,8 +1581,8 @@

12 Source code for the

-
-

13 Helper functions

+
+

13 Helper functions

trexio_exit_code
@@ -1850,7 +1850,7 @@ 

13 Helper functions

Author: TREX-CoE

-

Created: 2024-03-15 Fri 16:53

+

Created: 2024-03-22 Fri 14:46

Validate

diff --git a/templator_text.html b/templator_text.html index 29c04b71..f47f888c 100644 --- a/templator_text.html +++ b/templator_text.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + TEXT back end @@ -324,23 +324,23 @@

TEXT back end

Table of Contents

@@ -362,8 +362,8 @@

Table of Contents

The file is written when closed, or when the flush function is called.

-
-

1 Template for group-related structures in text back end

+
+

1 Template for group-related structures in text back end

typedef struct $group$_s {
@@ -382,8 +382,8 @@ 

1 Template for group-r

-
-

2 Template for general structure in text back end

+
+

2 Template for general structure in text back end

Polymorphism of the trexio_t type is handled by ensuring that the @@ -403,8 +403,8 @@

2 Template for general

-
-

3 Initialize function (constant part)

+
+

3 Initialize function (constant part)

bool
@@ -601,8 +601,8 @@ 

3 Initialize function

-
-

4 Deinitialize function (templated part)

+
+

4 Deinitialize function (templated part)

trexio_exit_code
@@ -624,8 +624,8 @@ 

4 Deinitialize functio

-
-

5 Flush function (templated part)

+
+

5 Flush function (templated part)

trexio_exit_code
@@ -648,8 +648,8 @@ 

5 Flush function (temp

-
-

6 Template for text read a group

+
+

6 Template for text read a group

$group$_t*
@@ -875,8 +875,8 @@ 

6 Template for text re

-
-

7 Template for text has a group

+
+

7 Template for text has a group

trexio_exit_code
@@ -916,8 +916,8 @@ 

7 Template for text ha

-
-

8 Template for text flush a group

+
+

8 Template for text flush a group

trexio_exit_code
@@ -981,8 +981,8 @@ 

8 Template for text fl

-
-

9 Template for text free memory

+
+

9 Template for text free memory

Memory is allocated when reading. The following function frees memory. @@ -1051,8 +1051,8 @@

9 Template for text fr

-
-

10 Template for has/read/write a numerical attribute

+
+

10 Template for has/read/write a numerical attribute

trexio_exit_code
@@ -1115,8 +1115,8 @@ 

10 Template for has/re

-
-

11 Template for has/read/write a dataset of numerical data

+
+

11 Template for has/read/write a dataset of numerical data

The group_dset array is assumed allocated with the appropriate size. @@ -1212,8 +1212,8 @@

11 Template for has/re

-
-

12 Template for has/read/write a dataset of strings

+
+

12 Template for has/read/write a dataset of strings

The group_dset array is assumed allocated with the appropriate size. @@ -1314,8 +1314,8 @@

12 Template for has/re

-
-

13 Template for has/read/write a string attribute

+
+

13 Template for has/read/write a string attribute

trexio_exit_code
@@ -1389,8 +1389,8 @@ 

13 Template for has/re

-
-

14 Template for has/read/write the dataset of sparse data

+
+

14 Template for has/read/write the dataset of sparse data

Each sparse array is stored in a separate .txt file due to the fact that sparse I/O has to be decoupled @@ -1680,8 +1680,8 @@

14 Template for has/re

-
-

15 Template for has/read/write a buffered vector

+
+

15 Template for has/read/write a buffered vector

Each array is stored in a separate .txt file due to the fact that buffered I/O has to be decoupled @@ -1911,8 +1911,8 @@

15 Template for has/re

-
-

16 Template for text delete a group (UNSAFE mode)

+
+

16 Template for text delete a group (UNSAFE mode)

trexio_exit_code
@@ -1940,8 +1940,8 @@ 

16 Template for text d

-
-

17 Source code for the determinant part

+
+

17 Source code for the determinant part

Each array is stored in a separate .txt file due to the fact that determinant I/O has to be decoupled @@ -2133,7 +2133,7 @@

17 Source code for the

Author: TREX-CoE

-

Created: 2024-03-15 Fri 16:53

+

Created: 2024-03-22 Fri 14:46

Validate

diff --git a/trex.html b/trex.html index 9f3ee7c0..ddb03467 100644 --- a/trex.html +++ b/trex.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Data stored in TREXIO @@ -346,71 +346,71 @@

Data stored in TREXIO

Table of Contents

@@ -423,8 +423,17 @@

Table of Contents

library is written in C.

-
-

1 Metadata (metadata group)

+

+Dimensions are given both in row-major [] and column-major () +formats. Pick the one adapted to the programming language in which +you use TREXIO (Numpy is by default row-major, and Fortran is column-major). +In the column-major representation, A(i,j) and A(i+1,j) are +contiguous in memory. In the row-major representation, A[i,j] and +A[i,j+1] are contiguous. +

+ +
+

1 Metadata (metadata group)

As we expect TREXIO files to be archived in open-data repositories, @@ -434,7 +443,7 @@

1 Metadata (metadata g the file, and a textual description.

- +
@@ -444,13 +453,16 @@

1 Metadata (metadata g

++ - + + @@ -459,12 +471,14 @@

1 Metadata (metadata g

+ + @@ -473,12 +487,14 @@

1 Metadata (metadata g

+ + @@ -487,6 +503,7 @@

1 Metadata (metadata g

+ @@ -494,6 +511,7 @@

1 Metadata (metadata g

+ @@ -501,6 +519,7 @@

1 Metadata (metadata g

+ @@ -517,19 +536,19 @@

1 Metadata (metadata g -
-

2 System

+
+

2 System

-
-

2.1 Nucleus (nucleus group)

+
+

2.1 Nucleus (nucleus group)

The nuclei are considered as fixed point charges. Coordinates are given in Cartesian \((x,y,z)\) format.

-

Variable TypeDimensions (for arrays)Row-major DimensionsColumn-major Dimensions Description
code_num dim    Number of codes used to produce the file
code str[metadata.code_num] (metadata.code_num) Names of the codes used
author_num dim    Number of authors of the file
author str[metadata.author_num] (metadata.author_num) Names of the authors of the file
package_version str    TREXIO version used to produce the file
description str    Text describing the content of file
unsafe int    1: true, 0: false
+
@@ -539,14 +558,20 @@

2.1 Nucleus (nucleus g

++ ++ - + + + @@ -554,57 +579,69 @@

2.1 Nucleus (nucleus g

+ + + + - + + + + + + + + +
Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description 
num dim    Number of nuclei 
charge float[nucleus.num] (nucleus.num) Charges of the nuclei 
coord float(3,nucleus.num)[nucleus.num, 3](3, nucleus.num) Coordinates of the atoms 
label str[nucleus.num] (nucleus.num) Atom labels 
point_group str    Symmetry point group 
repulsion float    Nuclear repulsion energy 

-
-

2.2 Cell (cell group)

+
+

2.2 Cell (cell group)

3 Lattice vectors to define a box containing the system, for example used in periodic calculations.

- +
@@ -614,13 +651,16 @@

2.2 Cell (cell group)<

++ - + + @@ -628,6 +668,7 @@

2.2 Cell (cell group)<

+ @@ -635,6 +676,7 @@

2.2 Cell (cell group)<

+ @@ -642,6 +684,7 @@

2.2 Cell (cell group)<

+ @@ -649,6 +692,7 @@

2.2 Cell (cell group)<

+ @@ -656,6 +700,7 @@

2.2 Cell (cell group)<

+ @@ -663,6 +708,7 @@

2.2 Cell (cell group)<

+ @@ -671,6 +717,7 @@

2.2 Cell (cell group)<

+ @@ -678,15 +725,15 @@

2.2 Cell (cell group)< -
-

2.3 Periodic boundary calculations (pbc group)

+
+

2.3 Periodic boundary calculations (pbc group)

A single $k$-point per TREXIO file can be stored. The $k$-point is defined in this group.

-

Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
a float[3] (3) First real space lattice vector
b float[3] (3) Second real space lattice vector
c float[3] (3) Third real space lattice vector
G_a float[3] (3) First reciprocal space lattice vector
G_b float[3] (3) Second reciprocal space lattice vector
G_c float[3] (3) Third reciprocal space lattice vector
two_pi int    0 or 1. If two_pi=1, \(2\pi\) is included in the reciprocal vectors.
+
@@ -696,13 +743,16 @@

2.3 Periodic boundary

++ - + + @@ -711,12 +761,14 @@

2.3 Periodic boundary

+ + @@ -725,8 +777,8 @@

2.3 Periodic boundary -
-

2.4 Electron (electron group)

+
+

2.4 Electron (electron group)

The chemical system consists of nuclei and electrons, where the @@ -745,7 +797,7 @@

2.4 Electron (electron

-

Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
periodic int    1: true or 0: false
k_point float[3] (3) $k$-point sampling
+
@@ -755,13 +807,16 @@

2.4 Electron (electron

++ - + + @@ -770,6 +825,7 @@

2.4 Electron (electron

+ @@ -777,6 +833,7 @@

2.4 Electron (electron

+ @@ -784,6 +841,7 @@

2.4 Electron (electron

+ @@ -791,8 +849,8 @@

2.4 Electron (electron -
-

2.5 Ground or excited states (state group)

+
+

2.5 Ground or excited states (state group)

This group contains information about excited states. Since only a @@ -809,7 +867,7 @@

2.5 Ground or excited The id and current_label attributes need to be specified for each file.

-

Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
num dim    Number of electrons
up_num int    Number of ↑-spin electrons
dn_num int    Number of ↓-spin electrons
+
@@ -819,13 +877,16 @@

2.5 Ground or excited

++ - + + @@ -834,6 +895,7 @@

2.5 Ground or excited

+ @@ -841,6 +903,7 @@

2.5 Ground or excited

+ @@ -848,6 +911,7 @@

2.5 Ground or excited

+ @@ -855,12 +919,14 @@

2.5 Ground or excited

+ + @@ -868,6 +934,7 @@

2.5 Ground or excited

+ @@ -877,19 +944,19 @@

2.5 Ground or excited -
-

3 Basis functions

+
+

3 Basis functions

-
-

3.1 Basis set (basis group)

+
+

3.1 Basis set (basis group)

-
-

3.1.1 Gaussian and Slater-type orbitals

+
+

3.1.1 Gaussian and Slater-type orbitals

-We consider here basis functions centered on nuclei. Hence, it is +We consider here basis functions centered on nuclei. Hence, it is possibile to define dummy atoms to place basis functions in arbitrary positions.

@@ -940,13 +1007,13 @@

3.1.1 Gaussian and Sla

-
-

3.1.2 Numerical orbitals

+
+

3.1.2 Numerical orbitals

Trexio supports numerical atom centered orbitals. The implementation is -based on the approach of FHI-aims [Blum, V. et al; Ab initio molecular -simulations with numeric atom-centered orbitals; Computer Physics +based on the approach of FHI-aims [Blum, V. et al; Ab initio molecular +simulations with numeric atom-centered orbitals; Computer Physics Communications 2009]. These orbitals are defined by the atom they are centered on, their angular momentum and a radial function \(R_s\), which is of the form @@ -957,7 +1024,7 @@

3.1.2 Numerical orbita grid. It is constructed to vanish for any \(\mathbf{r}\) outside of the grid. The reference points are stored in nao_grid_r and nao_grid_phi. Additionaly, a separate spline for the first and second -derivative of \(u(\mathbf{r})\) can be stored in nao_grid_grad and nao_grid_lap. +derivative of \(u(\mathbf{r})\) can be stored in nao_grid_grad and nao_grid_lap. Storing them in this form allows to calculate the actual first and second derivatives easily as follows:

@@ -999,14 +1066,14 @@

3.1.2 Numerical orbita \] For convenience, this conversion and functions to evaluate the splines are provided with trexio. Since these implementations are not adapted to -a specific software architecture, a programm using these orbitals should +a specific software architecture, a programm using these orbitals should reimplement them with consideration for its specific needs.

-
-

3.1.3 Plane waves

+
+

3.1.3 Plane waves

A plane wave is defined as @@ -1027,10 +1094,10 @@

3.1.3 Plane waves

-
-

3.1.4 Data definitions

+
+

3.1.4 Data definitions

-

Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
num dim    Number of states (including the ground state)
id index    Index of the current state (0 is ground state)
energy float    Energy of the current state
current_label str    Label of the current state
label str[state.num] (state.num) Labels of all states
file_name str[state.num] (state.num) Names of the TREXIO files linked to the current one (i.e. containing data for other states)
+
@@ -1048,9 +1115,9 @@

3.1.4 Data definitions

- + + - @@ -1058,200 +1125,200 @@

3.1.4 Data definitions

- + - + - + - + - + + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + - + + - - + + - - + + -
Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description 
type str  Type of basis set: "Gaussian", "Slater", "Numerical" or "PW" for plane waves  Type of basis set: "Gaussian", "Slater", "Numerical" or "PW" for plane waves
prim_num dim  Total number of primitives  Total number of primitives
shell_num dim  Total number of shells  Total number of shells
nao_grid_num dim  Total number of grid points for numerical orbitals  Total number of grid points for numerical orbitals
interp_coeff_cnt dim  Number of coefficients for the numerical orbital interpolator  Number of coefficients for the numerical orbital interpolator
nucleus_index index[basis.shell_num] (basis.shell_num) One-to-one correspondence between shells and atomic indices 
shell_ang_mom int[basis.shell_num] (basis.shell_num) One-to-one correspondence between shells and angular momenta 
shell_factor float[basis.shell_num] (basis.shell_num) Normalization factor of each shell (\(\mathcal{N}_s\)) 
r_power int[basis.shell_num] (basis.shell_num) Power to which \(r\) is raised (\(n_s\)) 
nao_grid_start index[basis.shell_num] (basis.shell_num) Index of the first data point for a given numerical orbital 
nao_grid_size dim[basis.shell_num] (basis.shell_num) Number of data points per numerical orbital 
shell_index index[basis.prim_num] (basis.prim_num) One-to-one correspondence between primitives and shell index 
exponent float[basis.prim_num] (basis.prim_num) Exponents of the primitives (\(\gamma_{ks}\)) 
coefficient float[basis.prim_num] (basis.prim_num) Coefficients of the primitives (\(a_{ks}\)) 
prim_factor float[basis.prim_num] (basis.prim_num) Normalization coefficients for the primitives (\(f_{ks}\)) 
e_cut float  Energy cut-off for plane-wave calculations  Energy cut-off for plane-wave calculations
nao_grid_radius float[basis.nao_grid_num] (basis.nao_grid_num) Radii of grid points for numerical orbitals 
nao_grid_phi float[basis.nao_grid_num] (basis.nao_grid_num) Wave function values for numerical orbitals 
nao_grid_grad float[basis.nao_grid_num] (basis.nao_grid_num) Radial gradient of numerical orbitals 
nao_grid_lap float[basis.nao_grid_num] (basis.nao_grid_num) Laplacian of numerical orbitals 
interpolator_kind str  Kind of spline, e.g. "Polynomial"  Kind of spline, e.g. "Polynomial"
interpolator_phi float(basis.interp_coeff_cnt,basis.nao_grid_num)[basis.nao_grid_num, basis.interp_coeff_cnt](basis.interp_coeff_cnt, basis.nao_grid_num) Coefficients for numerical orbital interpolation function 
interpolator_grad float(basis.interp_coeff_cnt,basis.nao_grid_num)[basis.nao_grid_num, basis.interp_coeff_cnt](basis.interp_coeff_cnt, basis.nao_grid_num) Coefficients for numerical orbital gradient interpolation function 
interpolator_lap float(basis.interp_coeff_cnt,basis.nao_grid_num)[basis.nao_grid_num, basis.interp_coeff_cnt](basis.interp_coeff_cnt, basis.nao_grid_num) Coefficients for numerical orbital laplacian interpolation function 
-
-

3.1.5 Example

+
+

3.1.5 Example

For example, consider H2 with the following basis set (in GAMESS @@ -1329,8 +1396,8 @@

3.1.5 Example

-
-

3.2 Effective core potentials (ecp group)

+
+

3.2 Effective core potentials (ecp group)

An effective core potential (ECP) \(V_A^{\text{ECP}}\) replacing the @@ -1364,7 +1431,7 @@

3.2 Effective core pot See http://dx.doi.org/10.1063/1.4984046 or https://doi.org/10.1063/1.5121006 for more info.

- +
@@ -1374,13 +1441,16 @@

3.2 Effective core pot

++ - + + @@ -1388,6 +1458,7 @@

3.2 Effective core pot

+ @@ -1395,6 +1466,7 @@

3.2 Effective core pot

+ @@ -1403,12 +1475,14 @@

3.2 Effective core pot

+ + @@ -1416,6 +1490,7 @@

3.2 Effective core pot

+ @@ -1423,6 +1498,7 @@

3.2 Effective core pot

+ @@ -1430,6 +1506,7 @@

3.2 Effective core pot

+ @@ -1437,6 +1514,7 @@

3.2 Effective core pot

+ @@ -1468,8 +1546,8 @@

3.2 Effective core pot

-
-

3.2.1 Example

+
+

3.2.1 Example

For example, consider H2 molecule with the following @@ -1532,8 +1610,8 @@

3.2.1 Example

-
-

3.3 Numerical integration grid (grid group)

+
+

3.3 Numerical integration grid (grid group)

In some applications, such as DFT calculations, integrals have to @@ -1548,7 +1626,7 @@

3.3 Numerical integrat Feel free to submit a PR if you find missing options/functionalities.

-

Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
max_ang_mom_plus_1 int[nucleus.num] (nucleus.num) \(\ell_{\max}+1\), one higher than the max angular momentum in the removed core orbitals
z_core int[nucleus.num] (nucleus.num) Number of core electrons to remove per atom
num dim    Total number of ECP functions for all atoms and all values of \(\ell\)
ang_mom int[ecp.num] (ecp.num) One-to-one correspondence between ECP items and the angular momentum \(\ell\)
nucleus_index index[ecp.num] (ecp.num) One-to-one correspondence between ECP items and the atom index
exponent float[ecp.num] (ecp.num) \(\alpha_{A q \ell}\) all ECP exponents
coefficient float[ecp.num] (ecp.num) \(\beta_{A q \ell}\) all ECP coefficients
power int[ecp.num] (ecp.num) \(n_{A q \ell}\) all ECP powers
+
@@ -1558,13 +1636,16 @@

3.3 Numerical integrat

++ - + + @@ -1573,6 +1654,7 @@

3.3 Numerical integrat

+ @@ -1580,6 +1662,7 @@

3.3 Numerical integrat

+ @@ -1587,6 +1670,7 @@

3.3 Numerical integrat

+ @@ -1594,6 +1678,7 @@

3.3 Numerical integrat

+ @@ -1601,12 +1686,14 @@

3.3 Numerical integrat

+ + @@ -1614,6 +1701,7 @@

3.3 Numerical integrat

+ @@ -1622,12 +1710,14 @@

3.3 Numerical integrat

+ + @@ -1635,6 +1725,7 @@

3.3 Numerical integrat

+ @@ -1643,12 +1734,14 @@

3.3 Numerical integrat

+ + @@ -1656,6 +1749,7 @@

3.3 Numerical integrat

+ @@ -1665,12 +1759,12 @@

3.3 Numerical integrat -
-

4 Orbitals

+
+

4 Orbitals

-
-

4.1 Atomic orbitals (ao group)

+
+

4.1 Atomic orbitals (ao group)

AOs are defined as @@ -1751,7 +1845,7 @@

4.1 Atomic orbitals (a

-

Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
description str    Details about the used quadratures can go here
rad_precision float    Radial precision parameter (not used in some schemes like Krack-Köster)
num dim    Number of grid points
max_ang_num int    Maximum number of angular grid points (for pruning)
min_ang_num int    Minimum number of angular grid points (for pruning)
coord float[grid.num] (grid.num) Discretized coordinate space
weight float[grid.num] (grid.num) Grid weights according to a given partitioning (e.g. Becke)
ang_num dim    Number of angular integration points (if used)
ang_coord float[grid.ang_num] (grid.ang_num) Discretized angular space (if used)
ang_weight float[grid.ang_num] (grid.ang_num) Angular grid weights (if used)
rad_num dim    Number of radial integration points (if used)
rad_coord float[grid.rad_num] (grid.rad_num) Discretized radial space (if used)
rad_weight float[grid.rad_num] (grid.rad_num) Radial grid weights (if used)
+
@@ -1761,13 +1855,16 @@

4.1 Atomic orbitals (a

++ - + + @@ -1776,6 +1873,7 @@

4.1 Atomic orbitals (a

+ @@ -1783,12 +1881,14 @@

4.1 Atomic orbitals (a

+ + @@ -1796,6 +1896,7 @@

4.1 Atomic orbitals (a

+ @@ -1803,7 +1904,7 @@

4.1 Atomic orbitals (a

Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
cartesian int    1: true, 0: false
num dim    Total number of atomic orbitals
shell index[ao.num] (ao.num) Basis set shell for each AO
normalization float[ao.num] (ao.num) Normalization factor \(\mathcal{N}_i\)

-
+

4.1.1 One-electron integrals (ao_1e_int group)

    @@ -1821,7 +1922,7 @@

    4.1.1 One-electron integ over atomic orbitals.

    - +
    @@ -1831,13 +1932,16 @@

    4.1.1 One-electron integ

    ++ - + + @@ -1845,6 +1949,7 @@

    4.1.1 One-electron integ

    + @@ -1852,6 +1957,7 @@

    4.1.1 One-electron integ

    + @@ -1859,6 +1965,7 @@

    4.1.1 One-electron integ

    + @@ -1866,6 +1973,7 @@

    4.1.1 One-electron integ

    + @@ -1873,6 +1981,7 @@

    4.1.1 One-electron integ

    + @@ -1880,6 +1989,7 @@

    4.1.1 One-electron integ

    + @@ -1887,6 +1997,7 @@

    4.1.1 One-electron integ

    + @@ -1894,6 +2005,7 @@

    4.1.1 One-electron integ

    + @@ -1901,6 +2013,7 @@

    4.1.1 One-electron integ

    + @@ -1908,6 +2021,7 @@

    4.1.1 One-electron integ

    + @@ -1916,7 +2030,7 @@

    4.1.1 One-electron integ -
    +

    4.1.2 Two-electron integrals (ao_2e_int group)

    @@ -1942,7 +2056,7 @@

    4.1.2 Two-electron integ \]

    -

    Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
    overlap float[ao.num, ao.num] (ao.num, ao.num) \(\langle p \vert q \rangle\)
    kinetic float[ao.num, ao.num] (ao.num, ao.num) \(\langle p \vert \hat{T}_e \vert q \rangle\)
    potential_n_e float[ao.num, ao.num] (ao.num, ao.num) \(\langle p \vert \hat{V}_{\text{ne}} \vert q \rangle\)
    ecp float[ao.num, ao.num] (ao.num, ao.num) \(\langle p \vert \hat{V}_{\text{ecp}} \vert q \rangle\)
    core_hamiltonian float[ao.num, ao.num] (ao.num, ao.num) \(\langle p \vert \hat{h} \vert q \rangle\)
    overlap_im float[ao.num, ao.num] (ao.num, ao.num) \(\langle p \vert q \rangle\) (imaginary part)
    kinetic_im float[ao.num, ao.num] (ao.num, ao.num) \(\langle p \vert \hat{T}_e \vert q \rangle\) (imaginary part)
    potential_n_e_im float[ao.num, ao.num] (ao.num, ao.num) \(\langle p \vert \hat{V}_{\text{ne}} \vert q \rangle\) (imaginary part)
    ecp_im float[ao.num, ao.num] (ao.num, ao.num) \(\langle p \vert \hat{V}_{\text{ECP}} \vert q \rangle\) (imaginary part)
    core_hamiltonian_im float[ao.num, ao.num] (ao.num, ao.num) \(\langle p \vert \hat{h} \vert q \rangle\) (imaginary part)
    +
    @@ -1952,13 +2066,16 @@

    4.1.2 Two-electron integ

    ++ - + + @@ -1966,6 +2083,7 @@

    4.1.2 Two-electron integ

    + @@ -1973,6 +2091,7 @@

    4.1.2 Two-electron integ

    + @@ -1981,12 +2100,14 @@

    4.1.2 Two-electron integ

    + + @@ -1995,12 +2116,14 @@

    4.1.2 Two-electron integ

    + + @@ -2010,10 +2133,10 @@

    4.1.2 Two-electron integ -
    -

    4.2 Molecular orbitals (mo group)

    +
    +

    4.2 Molecular orbitals (mo group)

    -

    Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
    eri float sparse[ao.num, ao.num, ao.num, ao.num] (ao.num, ao.num, ao.num, ao.num) Electron repulsion integrals
    eri_lr float sparse[ao.num, ao.num, ao.num, ao.num] (ao.num, ao.num, ao.num, ao.num) Long-range electron repulsion integrals
    eri_cholesky_num dim    Number of Cholesky vectors for ERI
    eri_cholesky float sparse[ao_2e_int.eri_cholesky_num, ao.num, ao.num] (ao.num, ao.num, ao_2e_int.eri_cholesky_num) Cholesky decomposition of the ERI
    eri_lr_cholesky_num dim    Number of Cholesky vectors for long range ERI
    eri_lr_cholesky float sparse[ao_2e_int.eri_lr_cholesky_num, ao.num, ao.num] (ao.num, ao.num, ao_2e_int.eri_lr_cholesky_num) Cholesky decomposition of the long range ERI
    +
    @@ -2023,13 +2146,16 @@

    4.2 Molecular orbitals

    ++ - + + @@ -2038,6 +2164,7 @@

    4.2 Molecular orbitals

    + @@ -2045,12 +2172,14 @@

    4.2 Molecular orbitals

    + + @@ -2058,6 +2187,7 @@

    4.2 Molecular orbitals

    + @@ -2065,6 +2195,7 @@

    4.2 Molecular orbitals

    + @@ -2072,6 +2203,7 @@

    4.2 Molecular orbitals

    + @@ -2079,6 +2211,7 @@

    4.2 Molecular orbitals

    + @@ -2086,6 +2219,7 @@

    4.2 Molecular orbitals

    + @@ -2093,6 +2227,7 @@

    4.2 Molecular orbitals

    + @@ -2100,8 +2235,8 @@

    4.2 Molecular orbitals

    Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
    type str    Free text to identify the set of MOs (HF, Natural, Local, CASSCF, etc)
    num dim    Number of MOs
    coefficient float[mo.num, ao.num] (ao.num, mo.num) MO coefficients
    coefficient_im float[mo.num, ao.num] (ao.num, mo.num) MO coefficients (imaginary part)
    class str[mo.num] (mo.num) Choose among: Core, Inactive, Active, Virtual, Deleted
    symmetry str[mo.num] (mo.num) Symmetry in the point group
    occupation float[mo.num] (mo.num) Occupation number
    energy float[mo.num] (mo.num) For canonical MOs, corresponding eigenvalue
    spin int[mo.num] (mo.num) For UHF wave functions, 0 is \(\alpha\) and 1 is \(\beta\)

-
-

4.2.1 One-electron integrals (mo_1e_int group)

+
+

4.2.1 One-electron integrals (mo_1e_int group)

The operators as the same as those defined in the @@ -2109,7 +2244,7 @@

4.2.1 One-electron int the basis of molecular orbitals.

- +
@@ -2119,13 +2254,16 @@

4.2.1 One-electron int

++ - + + @@ -2133,6 +2271,7 @@

4.2.1 One-electron int

+ @@ -2140,6 +2279,7 @@

4.2.1 One-electron int

+ @@ -2147,6 +2287,7 @@

4.2.1 One-electron int

+ @@ -2154,6 +2295,7 @@

4.2.1 One-electron int

+ @@ -2161,6 +2303,7 @@

4.2.1 One-electron int

+ @@ -2168,6 +2311,7 @@

4.2.1 One-electron int

+ @@ -2175,6 +2319,7 @@

4.2.1 One-electron int

+ @@ -2182,6 +2327,7 @@

4.2.1 One-electron int

+ @@ -2189,6 +2335,7 @@

4.2.1 One-electron int

+ @@ -2196,6 +2343,7 @@

4.2.1 One-electron int

+ @@ -2204,8 +2352,8 @@

4.2.1 One-electron int -
-

4.2.2 Two-electron integrals (mo_2e_int group)

+
+

4.2.2 Two-electron integrals (mo_2e_int group)

The operators are the same as those defined in the @@ -2213,7 +2361,7 @@

4.2.2 Two-electron int the basis of molecular orbitals.

-

Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
overlap float[mo.num, mo.num] (mo.num, mo.num) \(\langle i \vert j \rangle\)
kinetic float[mo.num, mo.num] (mo.num, mo.num) \(\langle i \vert \hat{T}_e \vert j \rangle\)
potential_n_e float[mo.num, mo.num] (mo.num, mo.num) \(\langle i \vert \hat{V}_{\text{ne}} \vert j \rangle\)
ecp float[mo.num, mo.num] (mo.num, mo.num) \(\langle i \vert \hat{V}_{\text{ECP}} \vert j \rangle\)
core_hamiltonian float[mo.num, mo.num] (mo.num, mo.num) \(\langle i \vert \hat{h} \vert j \rangle\)
overlap_im float[mo.num, mo.num] (mo.num, mo.num) \(\langle i \vert j \rangle\) (imaginary part)
kinetic_im float[mo.num, mo.num] (mo.num, mo.num) \(\langle i \vert \hat{T}_e \vert j \rangle\) (imaginary part)
potential_n_e_im float[mo.num, mo.num] (mo.num, mo.num) \(\langle i \vert \hat{V}_{\text{ne}} \vert j \rangle\) (imaginary part)
ecp_im float[mo.num, mo.num] (mo.num, mo.num) \(\langle i \vert \hat{V}_{\text{ECP}} \vert j \rangle\) (imaginary part)
core_hamiltonian_im float[mo.num, mo.num] (mo.num, mo.num) \(\langle i \vert \hat{h} \vert j \rangle\) (imaginary part)
+
@@ -2223,13 +2371,16 @@

4.2.2 Two-electron int

++ - + + @@ -2237,6 +2388,7 @@

4.2.2 Two-electron int

+ @@ -2244,6 +2396,7 @@

4.2.2 Two-electron int

+ @@ -2252,12 +2405,14 @@

4.2.2 Two-electron int

+ + @@ -2266,12 +2421,14 @@

4.2.2 Two-electron int

+ + @@ -2282,12 +2439,12 @@

4.2.2 Two-electron int -
-

5 Multi-determinant information

+
+

5 Multi-determinant information

-
-

5.1 Slater determinants (determinant group)

+
+

5.1 Slater determinants (determinant group)

The configuration interaction (CI) wave function \(\Psi\) @@ -2329,7 +2486,7 @@

5.1 Slater determinant An illustration on how to read determinants is presented in the examples.

-

Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
eri float sparse[mo.num, mo.num, mo.num, mo.num] (mo.num, mo.num, mo.num, mo.num) Electron repulsion integrals
eri_lr float sparse[mo.num, mo.num, mo.num, mo.num] (mo.num, mo.num, mo.num, mo.num) Long-range electron repulsion integrals
eri_cholesky_num dim    Number of Cholesky vectors for ERI
eri_cholesky float sparse[mo_2e_int.eri_cholesky_num, mo.num, mo.num] (mo.num, mo.num, mo_2e_int.eri_cholesky_num) Cholesky decomposition of the ERI
eri_lr_cholesky_num dim    Number of Cholesky vectors for long range ERI
eri_lr_cholesky float sparse[mo_2e_int.eri_lr_cholesky_num, mo.num, mo.num] (mo.num, mo.num, mo_2e_int.eri_lr_cholesky_num) Cholesky decomposition of the long range ERI
+
@@ -2339,13 +2496,16 @@

5.1 Slater determinant

++ - + + @@ -2354,12 +2514,14 @@

5.1 Slater determinant

+ + @@ -2367,6 +2529,7 @@

5.1 Slater determinant

+ @@ -2375,8 +2538,8 @@

5.1 Slater determinant -
-

5.2 Configuration state functions (csf group)

+
+

5.2 Configuration state functions (csf group)

The configuration interaction (CI) wave function \(\Psi\) can be @@ -2398,7 +2561,7 @@

5.2 Configuration stat the basis of Slater determinants.

-

Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
num dim readonly    Number of determinants
list int special[determinant.num] (determinant.num) List of determinants as integer bit fields
coefficient float buffered[determinant.num] (determinant.num) Coefficients of the determinants from the CI expansion
+
@@ -2408,13 +2571,16 @@

5.2 Configuration stat

++ - + + @@ -2423,12 +2589,14 @@

5.2 Configuration stat

+ + @@ -2436,7 +2604,8 @@

5.2 Configuration stat

- + + @@ -2444,8 +2613,8 @@

5.2 Configuration stat -
-

5.3 Amplitudes (amplitude group)

+
+

5.3 Amplitudes (amplitude group)

The wave function may be expressed in terms of action of the cluster @@ -2516,7 +2685,7 @@

5.3 Amplitudes (amplit
  • \(\dots\)
  • -

    Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
    num dim readonly    Number of CSFs
    coefficient float buffered[csf.num] (csf.num) Coefficients \(C_I\) of the CSF expansion
    det_coefficient float sparse(determinant.num,csf.num)[csf.num, determinant.num](determinant.num, csf.num) Projection on the determinant basis
    +
    @@ -2526,13 +2695,16 @@

    5.3 Amplitudes (amplit

    ++ - + + @@ -2540,6 +2712,7 @@

    5.3 Amplitudes (amplit

    + @@ -2547,6 +2720,7 @@

    5.3 Amplitudes (amplit

    + @@ -2554,6 +2728,7 @@

    5.3 Amplitudes (amplit

    + @@ -2561,6 +2736,7 @@

    5.3 Amplitudes (amplit

    + @@ -2568,6 +2744,7 @@

    5.3 Amplitudes (amplit

    + @@ -2575,6 +2752,7 @@

    5.3 Amplitudes (amplit

    + @@ -2582,6 +2760,7 @@

    5.3 Amplitudes (amplit

    + @@ -2589,6 +2768,7 @@

    5.3 Amplitudes (amplit

    + @@ -2597,8 +2777,8 @@

    5.3 Amplitudes (amplit -
    -

    5.4 Reduced density matrices (rdm group)

    +
    +

    5.4 Reduced density matrices (rdm group)

    The reduced density matrices are defined in the basis of molecular @@ -2629,7 +2809,7 @@

    5.4 Reduced density ma \Gamma_{ijkl}^{\downarrow \downarrow} &=& \langle \Psi | \hat{a}^{\dagger}_{k\beta}\, \hat{a}^{\dagger}_{l\beta} \hat{a}_{j\beta}\, \hat{a}_{i\beta} | \Psi \rangle \\ \Gamma_{ijkl}^{\uparrow \downarrow} &=& - \langle \Psi | \hat{a}^{\dagger}_{k\alpha}\, \hat{a}^{\dagger}_{l\beta} \hat{a}_{j\beta}\, \hat{a}_{i\alpha} | \Psi \rangle + \langle \Psi | \hat{a}^{\dagger}_{k\alpha}\, \hat{a}^{\dagger}_{l\beta} \hat{a}_{j\beta}\, \hat{a}_{i\alpha} | \Psi \rangle + \langle \Psi | \hat{a}^{\dagger}_{l\alpha}\, \hat{a}^{\dagger}_{k\beta} \hat{a}_{i\beta}\, \hat{a}_{j\alpha} | \Psi \rangle \\ \end{eqnarray*}

    @@ -2670,7 +2850,7 @@

    5.4 Reduced density ma \(g_{ik}(\mathbf{r}_1) = \phi_i(\mathbf{r}_1) \phi_k(\mathbf{r}_1)\).

    -

    Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
    single float sparse[mo.num,mo.num] (mo.num,mo.num) Single excitation amplitudes
    single_exp float sparse[mo.num,mo.num] (mo.num,mo.num) Exponentialized single excitation amplitudes
    double float sparse[mo.num,mo.num,mo.num,mo.num] (mo.num,mo.num,mo.num,mo.num) Double excitation amplitudes
    double_exp float sparse[mo.num,mo.num,mo.num,mo.num] (mo.num,mo.num,mo.num,mo.num) Exponentialized double excitation amplitudes
    triple float sparse[mo.num,mo.num,mo.num,mo.num,mo.num,mo.num] (mo.num,mo.num,mo.num,mo.num,mo.num,mo.num) Triple excitation amplitudes
    triple_exp float sparse[mo.num,mo.num,mo.num,mo.num,mo.num,mo.num] (mo.num,mo.num,mo.num,mo.num,mo.num,mo.num) Exponentialized triple excitation amplitudes
    quadruple float sparse[mo.num,mo.num,mo.num,mo.num,mo.num,mo.num,mo.num,mo.num] (mo.num,mo.num,mo.num,mo.num,mo.num,mo.num,mo.num,mo.num) Quadruple excitation amplitudes
    quadruple_exp float sparse[mo.num,mo.num,mo.num,mo.num,mo.num,mo.num,mo.num,mo.num] (mo.num,mo.num,mo.num,mo.num,mo.num,mo.num,mo.num,mo.num) Exponentialized quadruple excitation amplitudes
    +
    @@ -2680,13 +2860,16 @@

    5.4 Reduced density ma

    ++ - + + @@ -2694,6 +2877,7 @@

    5.4 Reduced density ma

    + @@ -2701,6 +2885,7 @@

    5.4 Reduced density ma

    + @@ -2708,6 +2893,7 @@

    5.4 Reduced density ma

    + @@ -2715,13 +2901,15 @@

    5.4 Reduced density ma

    - + + + @@ -2729,6 +2917,7 @@

    5.4 Reduced density ma

    + @@ -2736,6 +2925,7 @@

    5.4 Reduced density ma

    + @@ -2743,6 +2933,7 @@

    5.4 Reduced density ma

    + @@ -2750,7 +2941,8 @@

    5.4 Reduced density ma

    - + + @@ -2758,12 +2950,14 @@

    5.4 Reduced density ma

    + + @@ -2772,12 +2966,14 @@

    5.4 Reduced density ma

    + + @@ -2786,12 +2982,14 @@

    5.4 Reduced density ma

    + + @@ -2800,12 +2998,14 @@

    5.4 Reduced density ma

    + + @@ -2815,12 +3015,12 @@

    5.4 Reduced density ma -
    -

    6 Correlation factors

    +
    +

    6 Correlation factors

    -
    -

    6.1 Jastrow factor (jastrow group)

    +
    +

    6.1 Jastrow factor (jastrow group)

    The Jastrow factor is an $N$-electron function which multiplies the CI @@ -2845,8 +3045,8 @@

    6.1 Jastrow factor (ja

    -
    -

    6.1.1 CHAMP

    +
    +

    6.1.1 CHAMP

    The first form of Jastrow factor is the one used in @@ -2921,9 +3121,9 @@

    6.1.1 CHAMP

    \[ - J_{\text{eN}}^{\infty} = + 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} + \kappa_\alpha^{-1}} + \sum_{p=2}^{N_\text{ord}^a} a_{p+1,\alpha}\, \kappa_\alpha^{-p} \] \[ J_{\text{ee},ij}^{\infty} = @@ -2947,8 +3147,8 @@

    6.1.1 CHAMP

    -
    -

    6.1.2 Mu

    +
    +

    6.1.2 Mu

    Mu-Jastrow is based on a one-parameter correlation factor that has @@ -3045,10 +3245,10 @@

    6.1.2 Mu

    -
    -

    6.1.3 Table of values

    +
    +

    6.1.3 Table of values

    -

    Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
    1e float[mo.num, mo.num] (mo.num, mo.num) One body density matrix
    1e_up float[mo.num, mo.num] (mo.num, mo.num) ↑-spin component of the one body density matrix
    1e_dn float[mo.num, mo.num] (mo.num, mo.num) ↓-spin component of the one body density matrix
    1e_transition float~(mo.num, mo.num, state.num, state.num)[state.num, state.num, mo.num, mo.num](mo.num, mo.num, state.num, state.num) One-particle transition density matrices
    2e float sparse[mo.num, mo.num, mo.num, mo.num] (mo.num, mo.num, mo.num, mo.num) Two-body reduced density matrix (spin trace)
    2e_upup float sparse[mo.num, mo.num, mo.num, mo.num] (mo.num, mo.num, mo.num, mo.num) ↑↑ component of the two-body reduced density matrix
    2e_dndn float sparse[mo.num, mo.num, mo.num, mo.num] (mo.num, mo.num, mo.num, mo.num) ↓↓ component of the two-body reduced density matrix
    2e_updn float sparse[mo.num, mo.num, mo.num, mo.num] (mo.num, mo.num, mo.num, mo.num) ↑↓ component of the two-body reduced density matrix
    2e_transition float sparse~(mo.num, mo.num, mo.num, mo.num, state.num, state.num)[state.num, state.num, mo.num, mo.num, mo.num, mo.num](mo.num, mo.num, mo.num, mo.num, state.num, state.num) Two-particle transition density matrices
    2e_cholesky_num dim    Number of Cholesky vectors
    2e_cholesky float sparse[rdm.2e_cholesky_num, mo.num, mo.num] (mo.num, mo.num, rdm.2e_cholesky_num) Cholesky decomposition of the two-body RDM (spin trace)
    2e_upup_cholesky_num dim    Number of Cholesky vectors
    2e_upup_cholesky float sparse[rdm.2e_upup_cholesky_num, mo.num, mo.num] (mo.num, mo.num, rdm.2e_upup_cholesky_num) Cholesky decomposition of the two-body RDM (↑↑)
    2e_dndn_cholesky_num dim    Number of Cholesky vectors
    2e_dndn_cholesky float sparse[rdm.2e_dndn_cholesky_num, mo.num, mo.num] (mo.num, mo.num, rdm.2e_dndn_cholesky_num) Cholesky decomposition of the two-body RDM (↓↓)
    2e_updn_cholesky_num dim    Number of Cholesky vectors
    2e_updn_cholesky float sparse[rdm.2e_updn_cholesky_num, mo.num, mo.num] (mo.num, mo.num, rdm.2e_updn_cholesky_num) Cholesky decomposition of the two-body RDM (↑↓)
    +
    @@ -3058,13 +3258,16 @@

    6.1.3 Table of values<

    ++ - + + @@ -3073,6 +3276,7 @@

    6.1.3 Table of values<

    + @@ -3080,6 +3284,7 @@

    6.1.3 Table of values<

    + @@ -3087,6 +3292,7 @@

    6.1.3 Table of values<

    + @@ -3094,12 +3300,14 @@

    6.1.3 Table of values<

    + + @@ -3107,6 +3315,7 @@

    6.1.3 Table of values<

    + @@ -3114,6 +3323,7 @@

    6.1.3 Table of values<

    + @@ -3121,6 +3331,7 @@

    6.1.3 Table of values<

    + @@ -3128,6 +3339,7 @@

    6.1.3 Table of values<

    + @@ -3136,12 +3348,14 @@

    6.1.3 Table of values<

    + + @@ -3152,8 +3366,8 @@

    6.1.3 Table of values< -
    -

    7 Quantum Monte Carlo data (qmc group)

    +
    +

    7 Quantum Monte Carlo data (qmc group)

    In quantum Monte Carlo calculations, the wave function is evaluated @@ -3167,7 +3381,7 @@

    7 Quantum Monte Carlo of $↑$-spin and then all the $↓$-spin.

    -

    Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
    type str    Type of Jastrow factor: CHAMP or Mu
    en_num dim    Number of Electron-nucleus parameters
    ee_num dim    Number of Electron-electron parameters
    een_num dim    Number of Electron-electron-nucleus parameters
    en float[jastrow.en_num] (jastrow.en_num) Electron-nucleus parameters
    ee float[jastrow.ee_num] (jastrow.ee_num) Electron-electron parameters
    een float[jastrow.een_num] (jastrow.een_num) Electron-electron-nucleus parameters
    en_nucleus index[jastrow.en_num] (jastrow.en_num) Nucleus relative to the eN parameter
    een_nucleus index[jastrow.een_num] (jastrow.een_num) Nucleus relative to the eeN parameter
    ee_scaling float    \(\kappa\) value in CHAMP Jastrow for electron-electron distances
    en_scaling float[nucleus.num] (nucleus.num) \(\kappa\) value in CHAMP Jastrow for electron-nucleus distances
    +
    @@ -3177,13 +3391,16 @@

    7 Quantum Monte Carlo

    ++ - + + @@ -3192,12 +3409,14 @@

    7 Quantum Monte Carlo

    + + @@ -3205,6 +3424,7 @@

    7 Quantum Monte Carlo

    + @@ -3212,6 +3432,7 @@

    7 Quantum Monte Carlo

    + @@ -3222,7 +3443,7 @@

    7 Quantum Monte Carlo

    Author: TREX-CoE

    -

    Created: 2024-03-15 Fri 16:53

    +

    Created: 2024-03-22 Fri 14:46

    Validate

    Variable TypeDimensionsRow-major DimensionsColumn-major Dimensions Description
    num dim    Number of 3N-dimensional points
    point float[qmc.num, electron.num, 3] (3, electron.num, qmc.num) 3N-dimensional points
    psi float[qmc.num] (qmc.num) Wave function evaluated at the points
    e_loc float[qmc.num] (qmc.num) Local energy evaluated at the points