Skip to main content

Analytical continuation suits for Green Software Package

Project description

GitHub license GitHub license

grids codecov

 █▀▀█ █▀▀█ █▀▀ █▀▀ █▀▀▄
 █ ▄▄ █▄▄▀ █▀▀ █▀▀ █  █
 █▄▄█ ▀ ▀▀ ▀▀▀ ▀▀▀ ▀  ▀

 █▀▀█ █▀▀█ █▀▀▄ ▀▀█▀▀  ▀  █▀▀▄ █  █ █▀▀█ ▀▀█▀▀  ▀  █▀▀█ █▀▀▄
 █    █  █ █  █   █   ▀█▀ █  █ █  █ █▄▄█   █   ▀█▀ █  █ █  █
 █▄▄█ ▀▀▀▀ ▀  ▀   ▀   ▀▀▀ ▀  ▀  ▀▀▀ ▀  ▀   ▀   ▀▀▀ ▀▀▀▀ ▀  ▀

Green/Continuation is an Analytical continuation toolkit for Green Software Package

Installation

Green/Continuation comes in two forms

  • C++ application
  • Python package

Dependencies

Green/Continuation has the following required external dependencies

  • HDF5 library version >= 1.10.2
  • Message Passing Interface >= 3.1 (for C++ application)
  • Eigen3 library >= 3.4.0
  • GNU Multiprecision library
  • pybind11 (optional to build python wrapper)

To build Green/Continuation CMake version 3.18 or above is required

Build and Install C++ application

The following example will build, test and install Green/Continuation to /path/to/weakcoupling/install/dir directory.

$ git clone https://github.com/Green-Phys/green-ac
$ cd green-ac
$ mkdir build && cd build
$ cmake -DCMAKE_BUILD_TYPE=Release \
        -DCMAKE_INSTALL_PREFIX=/path/to/install/dir ..
$ make
$ make test
$ make install

Installation of Python package

We provide pre-built binaries for major Linux distributions and recent MacOS version via pip. For installation using pip simply type pip install green-ac. If pre-built binaries can not be used, package will be built from sources.

Usage

C++ application

After the Green/Continuation is built and installed, spectral function could be obtained by calling

<install dir>/bin/ac.exe  --BETA <Inverse temperature> --grid_file <grid file>    \
   --input_file <input file> --output_file <output file> --group <HDF5 group with data> \
   --e_min -5.0 --e_max 5.0 --n_omega 4000 --eta 0.01 \
   --kind Nevanlinna
  • BETA -- the inverse temperature that was used to obtain results
  • grid_file -- name of the grid file that was used to obtain results
  • input_file -- name of the file that contains imaginary time data
  • output_file -- name of the file to store results of the continuation
  • group -- name of the group that contains data and mesh datasets with imaginary time data and grid
  • e_min -- lowest frequency on the real axis
  • e_max -- largest frequency on the real axis
  • n_omega -- number of frequency points on the real axis
  • eta -- broadening parameter
  • kind -- type of continuation to be used (current version only supports Nevanlinna)

After the completetion, results will be stored in group HDF5 group in the output_file file.

Python

In addition to C++ application, Green/Continuation provides a convinient Python package that can work directly with numpy arrays. It supports two types of parallelism, using ProcessPoolExecutor from concurrent.futures and MPI parallelization using mpi4py library.

To use Green/Continuation simply import it in your script as

import green_ac

and call solve function with the following parameters:

  • Type of the continuation (currently we only provide Nevanlinna)
  • Matsubara frequency grid
  • Real frequency grid
  • Data in Matsubara frequency domain
  • Precision

Here is an example how to obtain real frequency Green's function for a simple two-pole non-interacting Green's function with precision at least 512 bits:

imgrid = (2*np.linspace(-50,49,100) + 1) * 1.j *np.pi/ 2
grid = np.linspace(-2,2,1001) + 0.01j
data = 0.5*(1/(imgrid + 0.5) + 1/(imgrid - 0.5))
data_out = green_ac.solve("Nevanlinna", imgrid, grid, data, 512)

Here we have 100 positive and negative Matsubara frequencies, define real frequency grid to have 1000 points and to be from -2 to 2 with broadening parameter 0.01, We define Green's function on Matsubara grid with poles at -0.5 and 0.5. Real frequency data will be stored in data_out array.

Acknowledgements

This work is supported by National Science Foundation under the award OCA-2310582

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

green_ac-0.2.5.tar.gz (135.4 kB view details)

Uploaded Source

Built Distributions

green_ac-0.2.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (391.6 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

green_ac-0.2.5-cp312-cp312-macosx_14_0_arm64.whl (330.3 kB view details)

Uploaded CPython 3.12 macOS 14.0+ ARM64

green_ac-0.2.5-cp312-cp312-macosx_13_0_x86_64.whl (363.0 kB view details)

Uploaded CPython 3.12 macOS 13.0+ x86-64

green_ac-0.2.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (392.8 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

green_ac-0.2.5-cp311-cp311-macosx_14_0_arm64.whl (331.1 kB view details)

Uploaded CPython 3.11 macOS 14.0+ ARM64

green_ac-0.2.5-cp311-cp311-macosx_13_0_x86_64.whl (364.2 kB view details)

Uploaded CPython 3.11 macOS 13.0+ x86-64

green_ac-0.2.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (391.8 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

green_ac-0.2.5-cp310-cp310-macosx_14_0_arm64.whl (329.6 kB view details)

Uploaded CPython 3.10 macOS 14.0+ ARM64

green_ac-0.2.5-cp310-cp310-macosx_13_0_x86_64.whl (363.0 kB view details)

Uploaded CPython 3.10 macOS 13.0+ x86-64

green_ac-0.2.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (391.9 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

green_ac-0.2.5-cp39-cp39-macosx_14_0_arm64.whl (329.7 kB view details)

Uploaded CPython 3.9 macOS 14.0+ ARM64

green_ac-0.2.5-cp39-cp39-macosx_13_0_x86_64.whl (363.1 kB view details)

Uploaded CPython 3.9 macOS 13.0+ x86-64

green_ac-0.2.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (391.7 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

green_ac-0.2.5-cp38-cp38-macosx_14_0_arm64.whl (329.5 kB view details)

Uploaded CPython 3.8 macOS 14.0+ ARM64

green_ac-0.2.5-cp38-cp38-macosx_13_0_x86_64.whl (362.8 kB view details)

Uploaded CPython 3.8 macOS 13.0+ x86-64

File details

Details for the file green_ac-0.2.5.tar.gz.

File metadata

  • Download URL: green_ac-0.2.5.tar.gz
  • Upload date:
  • Size: 135.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for green_ac-0.2.5.tar.gz
Algorithm Hash digest
SHA256 cc46c725be62d775fa34d8e308a92f5720113f1e16c3b294a3e54298a1209b0c
MD5 3f46ea7bca63cbd63c031da14fa8fe26
BLAKE2b-256 a839f4f0de4b254d7a62674032433f50c2613c038ec80f522076262955537dde

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5.tar.gz:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d25116215d9f9615d13800096d0f5f148b6e3dd4aaf86f888c6a1ec5fe605414
MD5 088549c096bebf3f11eae6cd5769945c
BLAKE2b-256 cdc1ac57dff96584e6e62790227724c55ce7d1617c7f4d58e9c3f0e6c72af29d

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 4c5ccbd7fe8d023054a3c031af8ffbff71b76c1b2f370af1d26c8110ef698fea
MD5 2095843b29c1baa36e58901a906818ef
BLAKE2b-256 279cd443c1ed8cce10c4f782a08b95894151ccf2a56b2e43157f30ad34aa8ec4

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp312-cp312-macosx_14_0_arm64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 761aebc7da8c930df63c40c90c99bc2043ba11e12cf59340e1a65eabf7208051
MD5 a94c92cdad4cbb92ccdb8b9670fece15
BLAKE2b-256 fc12abecf4bcec717e35f87e25989ed97d0affbc14d5abed95a00dca61e1fa66

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp312-cp312-macosx_13_0_x86_64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b0f98209a879d0d5b7d7965ef87173e57dd9cca612a3e49e2cdb4a5884fea16d
MD5 86b1b9e86bc3726bf5403606d7bf623a
BLAKE2b-256 86292bc79869791cf7a33b0720ca7de1ca28608f8bc37b41acd4355fe2d01924

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 20f747415df80dde361d0eef74746f1848bf06e14919b44503f28157a57ef8a4
MD5 e4a99641c4396bc029439cb3b4f635e4
BLAKE2b-256 61769b8b4da20255662acddcb60007bb110be91dbf1b1103d7574cfe6dfd85fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp311-cp311-macosx_14_0_arm64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 dbb02aae57f40d408c34996f5958dbfd9f4d36df946613f82aff9c41c4237755
MD5 e2664d77c419bbef94fc3a066f52eda8
BLAKE2b-256 df6e67182ab384a939a18ea7999067c8b7a2b25d577daf1e101ff91ab6a55454

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp311-cp311-macosx_13_0_x86_64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0ace35f49612371b147642c9213a5f3170115f0053fe5ed37e2bdd3fc066b9b2
MD5 c3ac5a925656a915ccf16119696ea75a
BLAKE2b-256 c644d62ae8125ab359fe9c5aafe0aba5f2f58e8f08606c8d8f1d446026f07555

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 eec329a50d0a74b7c553efd0bc4bc48bf8fb9f4ea85cf33bd59ab5685acfe476
MD5 cd6dc58cb773c6ab8316a75a354fa047
BLAKE2b-256 1240de32988787661970b4bf6da22aa9c75f4c3e715b9befb736b18955bdb86d

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp310-cp310-macosx_14_0_arm64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 e621555f72011b42e195427af048dda1f1b6e4c8b0e9ee5d6ea00793544bde5c
MD5 64f8343e8aa81ea701d105a15550fa2f
BLAKE2b-256 90b0488228033cda20f5ebef2040311067c3c8eeb8354a8adef2a54c9f63bf8f

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp310-cp310-macosx_13_0_x86_64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9e01d0e22ef5dcab1de3c91bb563c4af74603d12e967da0bec5c8398c0ddc772
MD5 2d5e81cdf8a362368b4c0007da510005
BLAKE2b-256 52c6a58e1de199a5f5ee3163188365e43f5bab84be40a8bbe5586a5d8c87bc51

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp39-cp39-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp39-cp39-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 1962af00e917e3593acac385dcab0a8b45966f46b813e7a09bfc68c301adba9b
MD5 87ec64f7876a1061e46a71c29c6ec891
BLAKE2b-256 b6092fdf40e7e55bf462a6665e069c7ceb78630fde75714b7ce14f2d80452f86

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp39-cp39-macosx_14_0_arm64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp39-cp39-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 9ceea29a8abf546a03cb4ee4952a1f78f27c69040004a9f5b3c6cf573a189c16
MD5 7bfce044c84864cc6c2c6c0b6479e256
BLAKE2b-256 821a4cd03f824d5cd2375aaa3afd47dccc8f55172939eacd87607a3eb8a943c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp39-cp39-macosx_13_0_x86_64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1aaf60ec8da02d5b265cfff0b24bcd631aaa5052e59ced07079a426cfcbc7d72
MD5 d3507a6bf9a097d9d460325789edda41
BLAKE2b-256 796773b44dcc08efb7c116b07c9a2286162a622569026529e137135dc23754ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp38-cp38-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp38-cp38-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 8fe70908519ea766f88969bdac8e14e58aea99cd96b64e9566b700dccaf55e3f
MD5 b1693c320d5818ed84973d1723aa7852
BLAKE2b-256 36156b30ca450075c5596107852f219794f0902e36fb143ab23a71c8b3c12fc3

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp38-cp38-macosx_14_0_arm64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

File details

Details for the file green_ac-0.2.5-cp38-cp38-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for green_ac-0.2.5-cp38-cp38-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 25f076235ba4d50d2b0881d6cf64b315d89e507a4e4123758436e962f4b7f82b
MD5 09c84b2652497f9257b63ea7f92652f9
BLAKE2b-256 4aa79d120be64a025b837a06fc0c1d38d89759066b299d1f61c4f294db494e61

See more details on using hashes here.

Provenance

The following attestation bundles were made for green_ac-0.2.5-cp38-cp38-macosx_13_0_x86_64.whl:

Publisher: build_wheels.yml on Green-Phys/green-ac

Attestations:

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page