{"id":21418910,"url":"https://github.com/tensorcircuit/tencirchem-ng","last_synced_at":"2025-07-20T00:33:13.350Z","repository":{"id":262789270,"uuid":"888348341","full_name":"tensorcircuit/TenCirChem-NG","owner":"tensorcircuit","description":"Quantum computational chemistry based on TensorCircuit","archived":false,"fork":false,"pushed_at":"2025-04-07T04:48:25.000Z","size":3691,"stargazers_count":5,"open_issues_count":1,"forks_count":4,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-07-06T15:45:26.382Z","etag":null,"topics":["chemistry","computational-chemistry","cupy","jax","nisq","pyscf","python","quantum-chemistry","quantum-circuit","quantum-computing","quantum-noise","quantum-simulation","tensor-network","theoretical-chemistry"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tensorcircuit.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-11-14T08:43:38.000Z","updated_at":"2025-06-08T04:49:10.000Z","dependencies_parsed_at":"2024-11-14T09:43:40.586Z","dependency_job_id":"acca1b32-e107-4aff-b44c-27bd6995294a","html_url":"https://github.com/tensorcircuit/TenCirChem-NG","commit_stats":null,"previous_names":["tensorcircuit/tencirchem-ng"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tensorcircuit/TenCirChem-NG","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tensorcircuit%2FTenCirChem-NG","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tensorcircuit%2FTenCirChem-NG/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tensorcircuit%2FTenCirChem-NG/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tensorcircuit%2FTenCirChem-NG/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tensorcircuit","download_url":"https://codeload.github.com/tensorcircuit/TenCirChem-NG/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tensorcircuit%2FTenCirChem-NG/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266048646,"owners_count":23868743,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chemistry","computational-chemistry","cupy","jax","nisq","pyscf","python","quantum-chemistry","quantum-circuit","quantum-computing","quantum-noise","quantum-simulation","tensor-network","theoretical-chemistry"],"created_at":"2024-11-22T19:29:02.599Z","updated_at":"2025-07-20T00:33:13.324Z","avatar_url":"https://github.com/tensorcircuit.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TenCirChem\n\n![TenCirChem](https://github.com/tensorcircuit/TenCirChem-NG/blob/master/docs/source/statics/logov0.png)\n\n[![ci](https://img.shields.io/github/actions/workflow/status/tensorcircuit/TenCirChem-NG/ci.yml?branch=master)](https://github.com/tensorcircuit/TenCirChem-NG/actions)\n[![codecov](https://codecov.io/github/tensorcircuit/TenCirChem-ng/branch/master/graph/badge.svg?token=6QZP1RKVTT)](https://app.codecov.io/github/tensorcircuit/TenCirChem-ng)\n[![pypi](https://img.shields.io/pypi/v/tencirchem-ng.svg?logo=pypi)](https://pypi.org/project/tencirchem-ng/)\n[![doc](https://img.shields.io/badge/docs-link-green.svg)](https://tensorcircuit.github.io/TenCirChem-NG/index.html)\n[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/tensorcircuit/TenCirChem-ng/master?labpath=docs%2Fsource%2Ftutorial_jupyter)\n\nEnglish | [简体中文](https://github.com/tensorcircuit/TenCirChem-ng/blob/master/README_CN.md)\n\nTenCirChem is an efficient and versatile quantum computation package for molecular properties.\nTenCirChem is based on [TensorCircuit](https://github.com/tensorcircuit/tensorcircuit-ng) \nand is optimized for chemistry applications.\n\nTenCirChem-NG is \n[fully compatible](https://tensorcircuit.github.io/TenCirChem-NG/faq.html#what-is-the-relation-between-tencirchem-and-tencirchem-ng)\nwith TenCirChem with more new features and bug fixes.\n\n## Easy Installation\nGetting started with TenCirChem-NG by installing the package via pip:\n\n```sh\npip install tencirchem-ng\n```\n\nSome functionality of TenCirChem-NG requires JAX.\nPlease install JAX following [installation instructions](https://jax.readthedocs.io/en/latest/installation.html)\nor simply by ``pip install tencirchem-ng[jax]``.\n\n## Simple to Use\nTenCirChem is written in pure Python, and its use is straightforward. Here's an example of calculating UCCSD:\n\n```python\nfrom tencirchem import UCCSD, M\n\nd = 0.8\n# distance unit is angstrom\nh4 = M(atom=[[\"H\", 0, 0, d * i] for i in range(4)])\n\n# configuration\nuccsd = UCCSD(h4)\n# calculate and returns energy\nuccsd.kernel()\n# analyze result\nuccsd.print_summary(include_circuit=True)\n```\nRunning uccsd.kernel() in the above code determines the optimized circuit ansatz parameters and VQE energy.  \nTenCirChem also allows the user to supply custom parameters. Here's an example:\n\n```python\nimport numpy as np\n\nfrom tencirchem import UCCSD\nfrom tencirchem.molecule import h4\n\nuccsd = UCCSD(h4)\n# evaluate various properties based on custom parameters\nparams = np.zeros(uccsd.n_params)\nprint(uccsd.statevector(params))\nprint(uccsd.energy(params))\nprint(uccsd.energy_and_grad(params))\n```\nFor more examples and customization,\nplease refer to the [documentation](https://tensorcircuit.github.io/TenCirChem-NG/index.html) \n\n\n## Exciting Features\nTenCirChem's features include:\n- Statics module\n  - UCC calculation with UCCSD, kUpCCGSD, pUCCD at an extremely fast speed\n  - Noisy circuit simulation via TensorCircuit\n  - Custom integrals, active space approximation, RDMs, GPU support, etc.\n- Dynamics module\n  - Transformation from [renormalizer](https://github.com/shuaigroup/Renormalizer) models to qubit representation\n  - VQA algorithm based on JAX\n  - Built-in models: spin-boson model, pyrazine S1/S2 internal conversion dynamics\n\n\n## Design principle\nTenCirChem is designed to be:\n- Fast\n  - UCC speed is 10000x faster than other packages\n    - Example: H8 with 16 qubits in 2s (CPU). H10 with 20 qubits in 14s (GPU)\n    - Achieved by analytical expansion of UCC factors and exploitation of symmetry\n- Easy to hack\n  - Avoid defining new classes and wrappers when possible\n    - Example: Excitation operators are represented as `tuple` of `int`. An operator pool is simply a `list` of `tuple`\n  - Minimal class inheritance hierarchy: at most two levels\n  - Expose internal variables through class attributes\n\n## License\nTenCirChem is released under Academic Public License.\nSee the [LICENSE file](https://github.com/tensorcircuit/TenCirChem-NG/blob/master/LICENSE) for details.\nIn short, you can use TenCirChem-NG freely for non-commercial/academic purpose\nand commercial use requires a commercial license.\n\n## Citing TenCirChem\nIf this project helps in your research, please cite our software whitepaper:\n\n[TenCirChem: An Efficient Quantum Computational Chemistry Package for the NISQ Era](https://arxiv.org/abs/2303.10825)\n\nwhich is also a good introduction to the software.\n\n## Research and Applications\n\n### Variational basis state encoder\nAn efficient algorithm to encode phonon states in electron-phonon systems for quantum computation.\nSee [examples](https://github.com/tensorcircuit/TenCirChem-NG/tree/master/example)\nand the [tutorial](https://tensorcircuit.github.io/TenCirChem-NG/tutorial_jupyter/vbe_tutorial_td.html).\nReference paper: https://arxiv.org/pdf/2301.01442.pdf (published in PRR).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftensorcircuit%2Ftencirchem-ng","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftensorcircuit%2Ftencirchem-ng","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftensorcircuit%2Ftencirchem-ng/lists"}