Core

group Core

This group includes the basic datastructures in QuTree.

These datastructures include the Vector, Matrix, and Tensor classes.

Typedefs

typedef Matrix<complex<double>> Matrixcd

General typedef for complex matrices.

typedef Matrix<double> Matrixd

General typedef for real matrices.

using SpectralDecomposition = pair<Matrix<T>, Vectord>

General typedef for Matrix<T>, Vectord pairs.

typedef SpectralDecomposition<complex<double>> SpectralDecompositioncd

Specialization of SpectralDecomposition of Matrixcd.

typedef SpectralDecomposition<double> SpectralDecompositiond

Specialization of SpectralDecomposition of Matrixd.

template<typename T>
class Matrix

This class represents a Matrix.

This is a simple Matrix-class. The functions that are implemented are specially suited for QuantumDynamics simulations.

Usage:

Matrixcd M(dim1, dim2);
Matrixcd A(M);
A = M * (A + M);

Bracket Operators

Group of functions for accessing Matrix elements

Arithmetic Operators

Group of functions and operator overloadings for performing arithmetic operations on Matrices

Math Operators

Group of functions for common Matrix mathematical operations

I/O Operators

Group of functions for input and output

template<typename T>
class Tensor
#include <Tensor.h>

This class represents a set of mathematical Tensors of n-th order.

The class allows to handle arithmentic operations on Tensors like matrix-products, etc. The set of tensors can be interpreted simultaneously as a set of vectors and thus operations are available like orthogonalizations, Dot-products, etc. Superindex mappings are used frequently throughout the class functions.

Usage: TensorDim dim_({2, 3, 4}, 1); Tensorcd A(dim_);

class TensorDim
#include <TensorShape.h>

This class manages the dimensions of a Tensor.

This class holds the tensor dimensions n=(n_1,…,n_order). It is a decorated vector of (unsigned) integers (the dimensions). The class, furthermore, manages contracted dimensions for quick reshapings. doxygen/xml/TensorDim_1.pngdoxygen/xml/TensorDim_1.eps_

Usage: TensorDim tdim({2, 3, 4});

template<typename T>
class Vector

This class is a Vector represented in a basis.

The class is a simple version of a represented Vector. The class is suited for Quantum Dynamics simulations; it is not a generell purpose library class.