API Reference

Suzuki-Trotter-Evolver

page Suzuki-Trotter-Evolver

A C++ header-only library for evolving states under the Schrödinger equation using first-order Suzuki-Trotter and computing switching functions.

Installation

Suzuki-Trotter-Evolver can be installed as follows:

git clone https://github.com/Christopher-K-Long/Suzuki-Trotter-Evolver
cd Suzuki-Trotter-Evolver
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release # set optional flags here
sudo cmake --build build --config Release --target install -j $(nproc)

There are several optional flags that can be set:

  • -DSuzuki-Trotter-Evolver_INSTALL_LIBRARY=ON/OFF(Suzuki-Trotter-Evolver is installed if set to ON)

  • -DSuzuki-Trotter-Evolver_BUILD_TESTING=ON/OFF (The unit tests and examples are build and run if set to ON)

  • -DSuzuki-Trotter-Evolver_BUILD_DOCS=ON/OFF (The documentation is build if set to ON)

These optional flags should be appended to cmake -S ../.. -B build. All three default to ON if the project is top level (i.e. if the project is not being build as a dependency of another project).

Requirements

Runs on Linux, macOS, and Windows. Requires:

Additional requirements for testing

Additional requirements for building documentation

Documentation

Documentation, including worked examples, can be found at: https://Suzuki-Trotter-Evolver.readthedocs.io

Source Code

Source code can be found at: https://github.com/Christopher-K-Long/Suzuki-Trotter-Evolver

A mirror can be found at: https://gitlab.com/Christopher-K-Long/Suzuki-Trotter-Evolver

Please submit all pull requests, issues, discussions, and vulnerability reports to the GitHub repository.

Releases from this repository are assigned DOIs and can be found at https://doi.org/10.5281/zenodo.17116329. The DOI for all releases is 10.5281/zenodo.17116329. Additionally, the releases are archived to https://archive.softwareheritage.org/swh:1:dir:364f1095abecf6ebf480fbccacfe23f0a10dce63.

Version and Changes

The current version is . Please see the Change Log for more details. Suzuki-Trotter-Evolver uses semantic versioning.

Class Hierarchy

File Hierarchy

Full API

Namespaces

Classes and Structs

Functions

Typedefs