|
1 | | -Build Example: TwoCenterIntegral Section in ABACUS |
| 1 | +# pyabacus: a Python interface for the ABACUS package |
2 | 2 | ================================================== |
3 | 3 |
|
4 | | -An example project built with [pybind11](https://github.com/pybind/pybind11) |
5 | | -and scikit-build-core. Python 3.7+ (see older commits for older versions of |
6 | | -Python). |
| 4 | +`pyabacus` is a Python interface for the ABACUS package, which provides a high-level Python API for interacting with the `ABACUS` library. |
7 | 5 |
|
8 | | -Installation |
| 6 | +This project is built using [pybind11](http://github.com/pybind/pybind11) and [scikit-build-core](https://scikit-build-core.readthedocs.io/), so you can easily build the project and use it in your Python environment. |
| 7 | + |
| 8 | +Now, `pyabacus` provides the following modules: |
| 9 | +- `io`: a module for input/output in pyabacus. |
| 10 | +- `Cell`: a module for the cell structure to bridge `ModuleNAO` in python module with users' input. |
| 11 | +- `ModuleBase`: a module for basic math functions. |
| 12 | +- `ModuleNAO`: a module for numerical atomic orbitals (NAO). |
| 13 | +- `hsolver`: a module for solving the Hamiltonian. |
| 14 | + |
| 15 | +<!-- toc --> |
| 16 | + |
| 17 | +- [Installation](#installation) |
| 18 | +- [CI Examples](#ci-examples) |
| 19 | +- [License](#license) |
| 20 | +- [Test call](#test-call) |
| 21 | + |
| 22 | +<!-- tocstop --> |
| 23 | + |
| 24 | +## Installation |
9 | 25 | ------------ |
10 | 26 |
|
11 | 27 | - Create and activate a new conda env, e.g. `conda create -n myenv python=3.8 & conda activate myenv`. |
12 | 28 | - Clone ABACUS main repository and `cd abacus-develop/python/pyabacus`. |
13 | 29 | - Build pyabacus by `pip install -v .` or install test dependencies & build pyabacus by `pip install .[test]`. (Use `pip install -v .[test] -i https://pypi.tuna.tsinghua.edu.cn/simple` to accelerate installation process.) |
14 | 30 |
|
15 | | -CI Examples |
| 31 | +## CI Examples |
16 | 32 | ----------- |
17 | 33 |
|
18 | 34 | There are examples for CI in `.github/workflows`. A simple way to produces |
@@ -71,14 +87,14 @@ eigenvalues difference: |
71 | 87 | -8.94295749e-12 4.71351846e-11 5.39378986e-10 1.97244101e-08] |
72 | 88 | ``` |
73 | 89 |
|
74 | | -License |
| 90 | +## License |
75 | 91 | ------- |
76 | 92 |
|
77 | 93 | pybind11 is provided under a BSD-style license that can be found in the LICENSE |
78 | 94 | file. By using, distributing, or contributing to this project, you agree to the |
79 | 95 | terms and conditions of this license. |
80 | 96 |
|
81 | | -Test call |
| 97 | +## Test call |
82 | 98 | --------- |
83 | 99 |
|
84 | 100 | ```python |
|
0 commit comments