gftool

Collection of commonly used Green's functions and utilities

https://github.com/derweh/gftools

Science Score: 64.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    1 of 5 committers (20.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.7%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Collection of commonly used Green's functions and utilities

Basic Info
Statistics
  • Stars: 21
  • Watchers: 1
  • Forks: 7
  • Open Issues: 2
  • Releases: 9
Created about 8 years ago · Last pushed 6 months ago
Metadata Files
Readme License Citation

README.rst

======
GfTool
======

+---------+-----------------------+------------------+--------------+
| master  ||build-status-master|  ||codecov-master|  ||rtd-master|  |
+---------+-----------------------+------------------+--------------+
| develop ||build-status-develop| ||codecov-develop| ||rtd-develop| |
+---------+-----------------------+------------------+--------------+

|pypi| |conda-forge| |DOI|

Collection of commonly used Green's functions and utilities.
The main purpose of this module is to have a tested and thus reliable basis
to do numerics. It happened to me too often, that I just made a mistake copying
the Green's function and was then wondering what was wrong with my algorithm.
For example, a *selection* of lattice Green's functions or rather the corresponding DOSs:

.. image:: https://gftools.readthedocs.io/en/develop/_images/dos_gallary.png
   :width: 800
   :alt: Selection of DOSs

Also have a look at the `tutorial`_ to get an idea.

The main use case of `GfTool` was DMFT and its real space generalization,
in particular using CT-QMC algorithms.



Installation
------------

The package is available on PyPI_:

.. code-block:: console

   $ pip install gftool

For `conda`_ users, `GfTool` is also available on `conda-forge`_

.. code-block:: console

   $ conda install -c conda-forge gftool

Alternatively, it can be installed via GitHub. You can install it using

.. code-block:: console

   $ pip install https://github.com/DerWeh/gftools/archive/VERSION.zip

where `VERSION` can be a release (e.g. `0.5.1`) or a branch (e.g. `develop`).
(As always, it is not advised to install it into your system Python,
consider using `pipenv`_, `venv`_, `conda`_, `pyenv`_, or similar tools.)
Of course, you can also clone or fork the project.

If you clone the project, you can locally build the documentation:

.. code-block:: console

   $ pip install .[docs]
   $ sphinx-build docs/source docs/build/html



Documentation
-------------

The documentation and API is on `ReadTheDocs`_.
The documentation of specific branches can also be accessed:
`master doc`_, `develop doc`_.
There is also a GitHub page: `documentation`_.

Currently, the package's main content is

gftool
   * Collection of non-interacting Green's functions and spectral functions,
     see also the `lattice` submodule.
   * Utility functions like Matsubara frequencies and Fermi functions.
   * Reliable calculation of particle numbers via Matsubara sums.

cpa/beb
   * Single site approximation to disorder.
   * Diagonal disorder only (CPA) and diagonal and off-diagonal (BEB).
   * Average local Green's function and component Green's functions.

fourier
   * Fourier transforms from Matsubara frequencies to imaginary time and back,
     including the handling of high-frequencies moments
     (especially important for transforms from Matsubara to imaginary time).
   * Laplace transform from real times to complex frequencies.

matrix
   * Helper for Green's functions in matrix form.

pade
   * Analytic continuation via the Padé algorithm.

     - Calculates a rational polynomial as interpolation of the data points.
     - Note: the module is out-dated, so it's not well documented at a bit
       awkward to use. Consider using `polepade` instead.

polepade
   * Analytic continuation via a pole-based variant of the Padé algorithm.

     - Based on explicit calculation of the pole in a least-squares sense.
     - Allows including uncertainties as weights.

siam
   * Basic Green's functions for the non-interacting Single Impurity Anderson
     model.

.. |build-status-master| image:: https://github.com/DerWeh/gftools/actions/workflows/ci.yml/badge.svg?branch=master
   :target: https://github.com/DerWeh/gftools/actions/workflows/ci.yml?query=branch%3Amaster
   :alt: Build status master
.. |codecov-master| image:: https://codecov.io/gh/DerWeh/gftools/branch/master/graph/badge.svg
   :target: https://app.codecov.io/gh/DerWeh/gftools/branch/master
   :alt: Coverage master
.. |rtd-master| image:: https://readthedocs.org/projects/gftools/badge/?version=master
   :target: https://gftools.readthedocs.io/en/master/?badge=master
   :alt: Documentation Status master
.. |build-status-develop| image:: https://github.com/DerWeh/gftools/actions/workflows/ci.yml/badge.svg?branch=develop
   :target: https://github.com/DerWeh/gftools/actions/workflows/ci.yml?query=branch%3Adevelop
   :alt: Build status develop
.. |codecov-develop| image:: https://codecov.io/gh/DerWeh/gftools/branch/develop/graph/badge.svg
   :target: https://app.codecov.io/gh/DerWeh/gftools/branch/develop
   :alt: Coverage develop
.. |rtd-develop| image:: https://readthedocs.org/projects/gftools/badge/?version=develop
   :target: https://gftools.readthedocs.io/en/develop/?badge=develop
   :alt: Documentation Status
.. |pypi| image:: https://badge.fury.io/py/gftool.svg
   :target: https://badge.fury.io/py/gftool
   :alt: PyPI release
.. |conda-forge| image:: https://img.shields.io/conda/vn/conda-forge/gftool.svg
   :target: https://anaconda.org/conda-forge/gftool
   :alt: conda-forge release
.. |DOI| image:: https://zenodo.org/badge/115784231.svg
   :target: https://zenodo.org/badge/latestdoi/115784231
   :alt: DOI
.. _documentation:
   https://derweh.github.io/gftools/
.. _master doc:
   https://gftools.readthedocs.io/en/master/
.. _develop doc:
   https://gftools.readthedocs.io/en/develop/
.. _ReadTheDocs:
   https://gftools.readthedocs.io/en/latest/
.. _tutorial:
   https://gftools.readthedocs.io/en/develop/tutorial.html
.. _PyPi:
   https://pypi.org/project/gftool/
.. _pipenv:
   https://pipenv.kennethreitz.org/en/latest/#install-pipenv-today
.. _venv:
   https://docs.python.org/3/library/venv.html
.. _conda:
   https://docs.conda.io/en/latest/
.. _conda-forge:
   https://anaconda.org/conda-forge/gftool
.. _pyenv:
   https://github.com/pyenv/pyenv

Owner

  • Login: DerWeh
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.2.0
title: GfTool
message: >-
  If you use more advanced features of this software,
  please consider to cite it as below.
type: software
authors:
  - family-names: Weh
    given-names: Andreas
    orcid: 'https://orcid.org/0000-0003-1213-2919'
  - family-names: Östlin
    given-names: Andreas
    orcid: 'https://orcid.org/0000-0003-1225-1635'

GitHub Events

Total
  • Watch event: 3
  • Delete event: 9
  • Issue comment event: 2
  • Push event: 23
  • Pull request review event: 1
  • Pull request event: 12
  • Fork event: 1
  • Create event: 7
Last Year
  • Watch event: 3
  • Delete event: 9
  • Issue comment event: 2
  • Push event: 23
  • Pull request review event: 1
  • Pull request event: 12
  • Fork event: 1
  • Create event: 7

Committers

Last synced: almost 3 years ago

All Time
  • Total Commits: 862
  • Total Committers: 5
  • Avg Commits per committer: 172.4
  • Development Distribution Score (DDS): 0.034
Past Year
  • Commits: 152
  • Committers: 4
  • Avg Commits per committer: 38.0
  • Development Distribution Score (DDS): 0.053
Top Committers
Name Email Commits
Weh Andreas a****h@s****e 833
DerWeh a****h@w****e 18
pre-commit-ci[bot] 6****]@u****m 8
aostlin 8****n@u****m 2
LGTM Migrator l****r@u****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 3
  • Total pull requests: 51
  • Average time to close issues: 3 months
  • Average time to close pull requests: 22 days
  • Total issue authors: 2
  • Total pull request authors: 5
  • Average comments per issue: 1.0
  • Average comments per pull request: 0.75
  • Merged pull requests: 42
  • Bot issues: 0
  • Bot pull requests: 13
Past Year
  • Issues: 0
  • Pull requests: 13
  • Average time to close issues: N/A
  • Average time to close pull requests: about 2 months
  • Issue authors: 0
  • Pull request authors: 3
  • Average comments per issue: 0
  • Average comments per pull request: 0.15
  • Merged pull requests: 7
  • Bot issues: 0
  • Bot pull requests: 6
Top Authors
Issue Authors
  • DerWeh (2)
  • andrewkhardy (1)
Pull Request Authors
  • DerWeh (42)
  • pre-commit-ci[bot] (8)
  • dependabot[bot] (3)
  • aostlin (1)
  • lgtm-com[bot] (1)
Top Labels
Issue Labels
Pull Request Labels
enhancement (9) dependencies (3) github_actions (2) bug (1)

Packages

  • Total packages: 2
  • Total downloads:
    • pypi 95 last-month
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 3
    (may contain duplicates)
  • Total versions: 15
  • Total maintainers: 1
pypi.org: gftool

Collection of commonly used Green's functions and utilities

  • Versions: 11
  • Dependent Packages: 0
  • Dependent Repositories: 2
  • Downloads: 95 Last month
Rankings
Dependent packages count: 10.1%
Dependent repos count: 11.6%
Forks count: 13.3%
Stargazers count: 14.2%
Average: 16.9%
Downloads: 35.6%
Maintainers (1)
Last synced: 6 months ago
conda-forge.org: gftool
  • Versions: 4
  • Dependent Packages: 0
  • Dependent Repositories: 1
Rankings
Dependent repos count: 24.3%
Average: 44.2%
Forks count: 50.5%
Stargazers count: 50.6%
Dependent packages count: 51.6%
Last synced: 6 months ago

Dependencies

docs/source/requirements.txt pypi
  • matplotlib *
  • numpydoc >=1.2.0
  • sphinx-rtd-theme >0.5.0
  • sphinx-toggleprompt *
requirements-dev.txt pypi
  • attrs >=19.2.0 development
  • codecov * development
  • hypothesis >=4.24.5 development
  • hypothesis_gufunc * development
  • numexpr * development
  • pre-commit * development
  • pydocstyle * development
  • pyflakes * development
  • pytest >=4.6 development
  • pytest-cov * development
requirements-doc.txt pypi
  • matplotlib *
  • numpydoc >=1.2.0
  • sphinx *
  • sphinx-toggleprompt *
  • sphinx_rtd_theme *
requirements.txt pypi
  • mpmath *
  • numpy >=1.17.0
  • scipy >=1.6.0
setup.py pypi
  • mpmath *
  • numpy *
  • scipy *
.github/workflows/ci.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • codecov/codecov-action v3 composite
  • fkirc/skip-duplicate-actions master composite
.github/workflows/codeql.yml actions
  • actions/checkout v3 composite
  • github/codeql-action/analyze v2 composite
  • github/codeql-action/autobuild v2 composite
  • github/codeql-action/init v2 composite
.github/workflows/publish-to-test-pypi.yml actions
  • actions/checkout v2 composite
  • actions/download-artifact v2 composite
  • actions/setup-python v2 composite
  • actions/upload-artifact v2 composite
  • pypa/gh-action-pypi-publish v1.4.2 composite