Metadata-Version: 2.1
Name: amc
Version: 0.9.5
Summary: Automatic angular-momentum reduction
Home-page: https://github.com/radnut/amc
Author: Julien Ripoche, Alexander Tichai, Roland Wirth
License: UNKNOWN
Description: AMC
        ===
        
        .. image:: https://img.shields.io/readthedocs/amc
           :alt: Read the Docs
           :target: https://amc.readthedocs.io/en/latest/
        .. image:: https://img.shields.io/pypi/v/amc
           :alt: PyPI version
           :target: https://pypi.org/project/amc/
        .. image:: https://img.shields.io/pypi/l/amc
           :alt: PyPI license
           :target: https://choosealicense.com/licenses/gpl-3.0/
        .. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.3663058.svg
           :alt: DOI:10.5281/zenodo.3663058
           :target: https://doi.org/10.5281/zenodo.3663058
        
        In quantum many-body theory, one often encounters problems with rotational
        symmetry. While methods are most conveniently derived in schemes that do not
        exploit the symmetry, a symmetry-adapted formulation can lead to orders of
        magnitude savings in computation time. However, actually reducing the formulas
        of a many-body method to symmetry-adapted form is tedious and error-prone.
        
        The AMC package aims to help practitioners by automating the reduction
        process. The unreduced (m-scheme) equations can be entered via an easy-to-use
        language. The package then uses Yutsis graph techniques to reduce the
        resulting network of angular-momentum variables to irreducible Wigner 6j and
        9j symbols, and outputs the reduced equations as a LaTeX file. Moreover, the
        package is based on abstract representations of the unreduced and reduced
        equations in the form of syntax trees, which enable other uses such as
        automatic generation of code that evaluates the reduced equations.
        
        Installation
        ------------
        Install amc using the `pip <https://pip.pypa.io/en/stable/>`_ package manager.
        
        .. code-block:: bash
        
            pip install amc
        
        Usage
        -----
        Prepare a file with the properties of the tensors and the equations to reduce.
        For example, second-order many-body perturbation theory can be reduced in this
        way:
        
        .. code-block::
        
            # mbpt.amc
        
            declare E2 {
                mode=0,
                latex="E^{(2)}_{0}",
            }
        
            # Hamiltonian
            declare H {
                mode=4,
                latex="H",
            }
        
            E2 = 1/4 * sum_abij(H_abij * H_ijab);
        
        Then run the ``amc`` program on the input
        
        .. code-block:: bash
        
            amc -o mbpt.tex mbpt.amc
        
        The result is
        
        .. code-block:: latex
        
            E^{(2)}_{0} = \frac{1}{4} \sum_{a b i j {J}_{0}} \hat{J}_{0}^{2}
            H_{a b i j}^{{J}_{0} {J}_{0} 0} H_{i j a b}^{{J}_{0} {J}_{0} 0}
        
        See the `User's Guide <https://amc.readthedocs.io/en/latest/ug.html>`__ for
        details.
        
        Citing
        ------
        Releases of this code are deposited to the Zenodo repository. If you use it in
        research work please cite the version used. Go to `the Zenodo record
        <https://doi.org/10.5281/zenodo.3663058>`__ to find bibliographic information
        for each release.
        
        If you use this code in research work please also cite the following publication
        
            A. Tichai, R. Wirth, J. Ripoche, T. Duguet. *Symmetry reduction of tensor
            networks in many-body theory I. Automated symbolic evaluation of SU(2)
            algebra*. `arXiv:2002.05011 <https://arxiv.org/abs/2002.05011>`__ [nucl-th]
        
        Contributing
        ------------
        Pull requests are welcome. For major changes, please open an issue first to
        discuss what you would like to change.
        
        License
        -------
        `GPLv3 <https://choosealicense.com/licenses/gpl-3.0/>`__
        
Keywords: angular momentum,symbolic computation
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Scientific/Engineering :: Chemistry
Classifier: Topic :: Scientific/Engineering :: Physics
Requires-Python: >=3
Description-Content-Type: text/x-rst
