Skip to main content

Build Status

irbasis

Open-source database and software for intermediate-representation basis functions of imaginary-time Green's function and Python and C++ libraries

Detailed instructions are available online. Please also check our citation policy.

Below we will briefly describe this software.

Table of Contents

License

This software is released under the MIT License, see LICENSE.txt.

Structure

We briefly describe files constituting this software below.

  • c++/irbasis.hpp
    C++ library
  • python/irbasis.py
    Python library
  • database/irbasis.h5
    Database file (Lambda=10,102, 103, 104, 105, 106, 107).
  • sample/
    Directory including samples in C++ and Python
  • test/
    Unit tests in C++ and Python

Installation

Python

You need to install only a few standard scientific libraries (such as numpy, h5py) shown in our PyPI project page. If you install irbasis through pip, pip will take care of these dependencies properly.

We strongly recommend to install the irbasis library using the standard Python package system. This package contains the data file (irbasis.h5) as well.

python -mpip install -U pip
python -mpip install -U irbasis

Alternatively, we can put irbasis.py and irbasis.h5 into your working directory. You can load irbasis and use the full functionality.

If you want run sample Python scripts, please also install additional Python packages (scipy, matplotlib) using the following command.

pip install scipy matplotlib

C++

You need a C++03-compatible compiler. The use of the C++ irbasis library requires only the HDF5 C library (not C++).

The C++ library consists of a single header file. All what you need to do is to include irbasis.hpp in your C++ project. The data file irbasis.h5 will be read at runtime. Please do not forget to link your executable to the HDF5 C library.

Usage

In the following, we demonstrate how to use irbasis database. The irbasis database is available in Python and C++. irbasis can calculate the IR basis functions, its Fourier transform, the derivatives and corresponding singular values.

In the following, we assume that you have installed the irbasis Python library via pip. If not, please modify the sample script files appropriately to specify the location of a database file (see a comment in api.py).

Some of sample Python scripts depend on scipy and matplotlib.

For other examples, please refer to our online document.

Python

You can download api.py and save it to your working directory. Then, please run the following command.

python api.py

You can study also our step-by-step examples in a jupyter notebook.

C++

You can download api.cpp and step_by_step_examples.cpp to your working directory. After copying irbasis.hpp into the same directory, you can build the sample program as follows (see compile.sh).

g++ api.cpp -o api -I /usr/local/include -L /usr/local/lib -lhdf5 -DNDEBUG -O3
g++ step_by_step_examples.cpp -o step_by_step_examples -I /usr/local/include -L /usr/local/lib -lhdf5 -DNDEBUG -O3

Here, we assume that the header file and the library file of the HDF5 C library are installed into "/usr/local/include" and "/usr/local/lib", respectively. When running the executable, irbasis.h5 must exist in your working directory.

Metadata

Release files for irbasis 2.2.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for irbasis 2.2.3
File Size Uploaded
irbasis-2.2.3.tar.gz 22.6 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for irbasis 2.2.3
File Interpreter ABI Platform
irbasis-2.2.3-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 45.1 MB

Release files / irbasis-2.2.3.tar.gz

Download URL irbasis-2.2.3.tar.gz
Size 22.6 MB
Tags Source
SHA-256 checksum
How to use checksums
d3782a9d595621bb73e70d0ce5eb38c186631e9e3418e26f4db9608d9b3ee339
BLAKE2b-256 checksum
How to use checksums
0b4873aab255d7746557eefdb6481f26bf89713f53c529d71235a8ff267cd35f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

Release files / irbasis-2.2.3-py2.py3-none-any.whl

Download URL irbasis-2.2.3-py2.py3-none-any.whl
Size 22.6 MB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
51d96e8853d34185e1eed2d21b2839f984257a3579a3f2c4722cd2339c79da59
BLAKE2b-256 checksum
How to use checksums
c8681d8c360e6412aa33e97011a8399efd47b0f52d73694ccdce134f0f3b204e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

Release history Release notifications | RSS feed

This release

2.2.3 This release

2 release files

2.2.2

1 release file

2.2.1

1 release file

2.2.0

1 release file

2.1.1

1 release file

2.1.0

1 release file

2.0.0

1 release file

1.0.4

1 release file

1.0.3

1 release file

1.0.2

1 release file

1.0.1

1 release file

1.0

1 release file

0.1.7

1 release file

0.1.5

1 release file

0.1.4

1 release file

0.1.3

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page