Home

SAITOH Akira

ZKCM library is a C++ library for multi-precision complex-number matrix calculations.
ZKCM_QC library is an extension package for matrix-product-state simulation of quantum computing.

[Download files]  [Documents]  [Extension package (ZKCM_QC)]

The current stable version of ZKCM is 0.4.6.
The current development version of ZKCM is identical to the stable version.
The latest beta version is found at the git repository Code Main Lib.
The latest alpha and beta versions of the extension package are found at the git repository Code Qc Lib.

+++ News +++

17 September 2024: The latest release version of ZKCM_QC has been uploaded.
23 June 2024: ver.0.4.6 has been released. It involves several improvements and new functions; especially those for Moore-Penrose inverse.
23 March 2024: ver.0.4.5beta3 has been open to public. This is again a release candidate for ver.0.4.6.
4 January 2024: ver.0.4.5beta2 has been open to public. This is a quick fix of the previous version and is a release candidate for ver.0.4.6.
1 January 2024: ver.0.4.5beta has been open to public. This is a release candidate for ver.0.4.6.
28 September 2023: ver. 0.4.4beta has been open to public. This is a development version but has been tested to some extent.
11 March 2019: ver. 0.4.3 has been released. This is mainly for improved stability of zkcm_cus.
7 January 2018: ver. 0.4.2 has been released. From this version, the zkcm_cus library is included as a subdirectory of the main package, which is an extension library using GPGPU in some part of the process of Hermitian matrix diagonalization.
18 March 2015: ver. 0.4.1 has been released.
19 September 2014: The alpha, beta, and release versions of ZKCM_QC has been updated.
6 August 2014: ver. 0.4.0 has been released.
3 August 2014: The latest beta version of ZKCM has been put into its git repository.
21 May 2014: The latest beta version of ZKCM has been put into its git repository.
23 April 2014: The latest beta version of ZKCM has been put into its git repository.
15 March 2014: ver. 0.3.9 has been released.
14 March 2014: ver. 0.3.8 has been released.
3 February 2014: ver. 0.3.7 has been released.

See [Older News] for previous announcements.

+++ Introduction +++

Zkcm library is a C++ library for multi-precision complex-number matrix calculations. It provides several functionalities including singular value decomposition, tensor product calculation, and tracing-out operations.

It is based on the GNU MP (GMP) and MPFR libraries, which are usually found as standard packages in recent Linux distributions.

Documentations are found in the "doc" directory of the package. They are also placed at [Documents] in the PDF file format.

+++ Requirements +++

MPFR >= 3.0.0 and GMP. In addition, a UNIX(-like) environment with GNU tools is required, such as some Linux distribution, some BSD system, Cygwin on Windows, etc., to compile the zkcm library.

+++ Installation +++

See the document in the directory ./doc. In short, it is just a standard process:

$ ./configure
$ make
# make install


In case you have errors when running configure, maybe you may type

$ autoconf
$ autoheader
$ ./configure
$ make
# make install


Or, you may use a copy of Makefile.orig found in the tar ball for Makefile.

+++ Making your program with zkcm library +++

See the [Documents] for details. In short, your source file should write

#include "zkcm.hpp"


and use classes and appropriate functions defined in the header files of the zkcm library.

+++ Compilation of your program +++

The zkcm library is based on the GMP and MPFR libraries. Thus, you probably need flags

-lzkcm -lmpfr -lgmp -lgmpxx -lm


to compile your program with the zkcm library using g++.

Note: As the zkcm library is a static library, your program should be recompiled when a new version of zkcm is installed.

+++ Uninstalling the zkcm library +++

You may uninstall the library by

# make uninstall

This will remove not only the library files but also the directory ${prefix}/share/doc/zkcm-x.x.x completely. Thus, make sure that you don't have your own files in the directory before typing the above command.


Related

Home: Documents
Home: Older News