1
0
mirror of https://github.com/TREX-CoE/trexio.git synced 2024-11-03 20:54:07 +01:00
Go to file
2021-09-09 17:29:17 +02:00
.github/workflows create actions.yml for CI on Ubuntu and MacOS (#38) 2021-06-07 14:05:41 +02:00
docs rm gitignore in docs 2021-04-12 14:31:05 +02:00
include update gitignore 2021-05-03 15:06:30 +02:00
lib add gitignore 2021-04-30 16:21:13 +02:00
m4 add Autoconf macro for SWIG 2021-08-20 15:20:09 +03:00
pkgconfig Improve HDF5 in configure 2021-06-03 01:25:20 +02:00
python better documentation 2021-09-09 17:29:17 +02:00
src explicitly provide __version__ attribute of the trexio module 2021-09-08 19:28:18 +02:00
tests make python directory and adapt build process 2021-08-05 12:55:18 +03:00
tools add README file for the Python API 2021-09-08 19:34:16 +02:00
.gitignore minor changes 2021-08-24 11:51:29 +03:00
.gitmodules org-mode to html conversion for the documentation website (#41) 2021-04-09 16:45:44 +02:00
AUTHORS Typo 2021-06-02 10:44:03 +02:00
autogen.sh Automake done. Need to improve tests 2021-05-28 13:36:39 +02:00
ChangeLog Automake done. Need to improve tests 2021-05-28 13:36:39 +02:00
configure.ac roll back names in PKG_CHECK_MODULES 2021-08-21 11:58:42 +03:00
COPYING Automake done. Need to improve tests 2021-05-28 13:36:39 +02:00
INSTALL Automake done. Need to improve tests 2021-05-28 13:36:39 +02:00
LICENSE Initial commit 2021-01-18 15:48:36 +01:00
Makefile.am add make python-sdist rule 2021-09-09 15:06:16 +02:00
NEWS Automake done. Need to improve tests 2021-05-28 13:36:39 +02:00
README Automake done. Need to improve tests 2021-05-28 13:36:39 +02:00
README.md add README file for the Python API 2021-09-08 19:34:16 +02:00
Sparse.org Moved sparse documentation in src/templates_front/templator_front.org 2021-06-03 13:56:45 +02:00
trex.org add package_version attribute to metadata group 2021-07-23 15:50:31 +02:00

TREXIO

build GitHub release (latest by date)

TREX library for efficient I/O.

Minimal requirements (for users):

  • Autotools (autoconf >= 2.69, automake >= 1.11, libtool >= 2.2)
  • C compiler (gcc/icc/clang)
  • Fortran compiler (gfortran/ifort)
  • HDF5 library (>= 1.8)

Installation procedure from the tarball (for users):

  1. Download the trexio-<version>.tar.gz file
  2. gzip -cd trexio-<version>.tar.gz | tar xvf -
  3. cd trexio-<version>
  4. ./configure --enable-silent-rules
  5. make
  6. make check
  7. sudo make install

Note: on systems with no sudo access, one can replace ./configure with ./configure prefix=${PWD}/_install in order to execute make install/uninstall commands without sudo privileges.

Additional requirements (for developers):

  • python3 (>= 3.6)
  • Emacs (>= 26.0)
  • SWIG (>= 4.0)

Installation procedure from the GitHub repo clone (for developers):

  1. git clone https://github.com/TREX-CoE/trexio.git
  2. cd trexio
  3. ./autogen.sh
  4. TREXIO_DEVEL=1 ./configure --enable-maintainer-mode
  5. make
  6. make check
  7. sudo make install

Naming convention

The primary TREXIO API is composed of the following functions:

  • trexio_open
  • trexio_write_[group]_[variable]
  • trexio_read_[group]_[variable]
  • trexio_has_[group]_[variable]
  • trexio_close

where [group] and [variable] substitutions correspond to the contents of the trex.json configuration file (for more details, see the corresponding documentation page). For example, consider the coord variable (array), which belongs to the nucleus group. The TREXIO user can write or read it using trexio_write_nucleus_coord or trexio_read_nucleus_coord functions, respectively.

Note: the [variable] names have to be unique only within the corresponding parent [group]. There is no naming conflict when, for example, num variable exists both in the nucleus group (i.e. the number of nuclei) and in the mo group (i.e. the number of molecular orbitals). These quantities can be accessed using the corresponding trexio_[has|read|write]_nucleus_num and trexio_[has|read|write]_mo_num, respectively.

Python API

For more details regarding the installation and usage of the TREXIO Python API, see this page.

Tutorial

TODO

Technical documentation

Documentation generated from TREXIO org-mode files.

Miscellaneous

Note: The code should be compliant with the C99 CERT C coding standard. This can be checked with the cppcheck tool.


European flag TREX: Targeting Real Chemical Accuracy at the Exascale project has received funding from the European Unions Horizon 2020 - Research and Innovation program - under grant agreement no. 952165. The content of this document does not represent the opinion of the European Union, and the European Union is not responsible for any use that might be made of such content.