sksparse-minimal


Namesksparse-minimal JSON
Version 0.2 PyPI version JSON
download
home_page
SummaryA drop in replacement for sksparse for sparse Cholseky factorization
upload_time2024-01-02 19:32:31
maintainer
docs_urlNone
author
requires_python>=3.8
license
keywords cholesky sksparse
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # sksparse_minimal

This project is forked from https://github.com/rgl-epfl/cholespy

Changes made:

- Add support for all solving modes (CHOLMOD_A, CHOLMOD_L, CHOLMOD_Lt, CHOLMOD_P, etc)
- Remove support for GPU solving (because I didn't want to bother implementing it for all modes and I didn't need it)
- Emulate sksparse API for ease of use
- Change CHOLMOD configuration to match sksparse
- Update build to match recommendations from https://nanobind.readthedocs.io/en/latest/building.html

# Installing

## With PyPI (recommended)

```bash
pip install sksparse_minimal
```

## From source

```bash
git clone --recursive https://github.com/tansey-lab/sksparse_minimal.git
pip install .
```

# Example usage

```python
import numpy as np
from sksparse_minimal import SparseCholesky
from scipy.sparse import csc_matrix

M = np.array([[4, 12, -16],
           [12, 37, -43],
           [-16, -43, 98]], dtype=np.float64)

M = csc_matrix(M)

sparse_cholesky = SparseCholesky(M)

b = np.array([1, 2, 3], dtype=np.float64)

sparse_cholesky.solve_A(b)
```
            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "sksparse-minimal",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "Jeff Quinn <quinnj2@mskcc.org>",
    "keywords": "cholesky sksparse",
    "author": "",
    "author_email": "Jeff Quinn <quinnj2@mskcc.org>",
    "download_url": "https://files.pythonhosted.org/packages/93/c4/c28aa14e9c4e2b8eb3b613a8a611d77f8f60f4ef159b0bf609595d5e65c3/sksparse-minimal-0.2.tar.gz",
    "platform": null,
    "description": "# sksparse_minimal\n\nThis project is forked from https://github.com/rgl-epfl/cholespy\n\nChanges made:\n\n- Add support for all solving modes (CHOLMOD_A, CHOLMOD_L, CHOLMOD_Lt, CHOLMOD_P, etc)\n- Remove support for GPU solving (because I didn't want to bother implementing it for all modes and I didn't need it)\n- Emulate sksparse API for ease of use\n- Change CHOLMOD configuration to match sksparse\n- Update build to match recommendations from https://nanobind.readthedocs.io/en/latest/building.html\n\n# Installing\n\n## With PyPI (recommended)\n\n```bash\npip install sksparse_minimal\n```\n\n## From source\n\n```bash\ngit clone --recursive https://github.com/tansey-lab/sksparse_minimal.git\npip install .\n```\n\n# Example usage\n\n```python\nimport numpy as np\nfrom sksparse_minimal import SparseCholesky\nfrom scipy.sparse import csc_matrix\n\nM = np.array([[4, 12, -16],\n           [12, 37, -43],\n           [-16, -43, 98]], dtype=np.float64)\n\nM = csc_matrix(M)\n\nsparse_cholesky = SparseCholesky(M)\n\nb = np.array([1, 2, 3], dtype=np.float64)\n\nsparse_cholesky.solve_A(b)\n```",
    "bugtrack_url": null,
    "license": "",
    "summary": "A drop in replacement for sksparse for sparse Cholseky factorization",
    "version": "0.2",
    "project_urls": {
        "Bug tracker": "https://github.com/tansey-lab/sksparse_minimal/issues",
        "Homepage": "https://github.com/tansey-lab/sksparse_minimal"
    },
    "split_keywords": [
        "cholesky",
        "sksparse"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ee2d7bebd9830218d43b30db1d60566027ae1f48252251d2c734004e0062ed4a",
                "md5": "e79c4b2691ab66d91ea8cecc10044c82",
                "sha256": "98adae3f10d50c3bd8f9f5da9a936fdab850579b33885e67c305f7741784ea90"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp310-cp310-macosx_10_14_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e79c4b2691ab66d91ea8cecc10044c82",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 1181987,
            "upload_time": "2024-01-02T19:32:00",
            "upload_time_iso_8601": "2024-01-02T19:32:00.799256Z",
            "url": "https://files.pythonhosted.org/packages/ee/2d/7bebd9830218d43b30db1d60566027ae1f48252251d2c734004e0062ed4a/sksparse_minimal-0.2-cp310-cp310-macosx_10_14_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3c919ef6339e6057d0fa48b0ebfd99eca0d353a811274853f7b7d70310f2fe81",
                "md5": "dce9c0d768b3fb81aa738bd1be3b2a88",
                "sha256": "2f307624a722b29dd093340dbbb24eef4bf3fa55be12ed3a3312b24f6f79b9da"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp310-cp310-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "dce9c0d768b3fb81aa738bd1be3b2a88",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 987628,
            "upload_time": "2024-01-02T19:32:03",
            "upload_time_iso_8601": "2024-01-02T19:32:03.435907Z",
            "url": "https://files.pythonhosted.org/packages/3c/91/9ef6339e6057d0fa48b0ebfd99eca0d353a811274853f7b7d70310f2fe81/sksparse_minimal-0.2-cp310-cp310-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ecd479a172b1660ca813003a1bbebfa2f5f9b0b7a90ba0fdc26fb7287f8e3b1f",
                "md5": "f354efc0059c7f79e0b0fd189ff766f6",
                "sha256": "281a27739534245764ffb799861e6361f7ff7069e5b4a8e3937c3a03bb53e02b"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "f354efc0059c7f79e0b0fd189ff766f6",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 4405864,
            "upload_time": "2024-01-02T19:32:06",
            "upload_time_iso_8601": "2024-01-02T19:32:06.045039Z",
            "url": "https://files.pythonhosted.org/packages/ec/d4/79a172b1660ca813003a1bbebfa2f5f9b0b7a90ba0fdc26fb7287f8e3b1f/sksparse_minimal-0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d7a4c09dda45b6790a204368ead7e9f98f9a62d82c20bc8906e7428beabdfc74",
                "md5": "54df252d8b22ea57cbf796c6608556dc",
                "sha256": "354f975d1341adddd0c5d43a553ed9555eadc06c0b3cd624f2898a42b58ce9d8"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "54df252d8b22ea57cbf796c6608556dc",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 4917315,
            "upload_time": "2024-01-02T19:32:08",
            "upload_time_iso_8601": "2024-01-02T19:32:08.642585Z",
            "url": "https://files.pythonhosted.org/packages/d7/a4/c09dda45b6790a204368ead7e9f98f9a62d82c20bc8906e7428beabdfc74/sksparse_minimal-0.2-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2a74c8c286befaba558d2b5a66280706f6756f4decec43cec643a3afc2d0c6af",
                "md5": "5323aeecce4da3103d4021ff77231e84",
                "sha256": "ffe2842ff5f0374b06eaefecc251411a4cfc1923bbae8df7af15eaa368c087db"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp311-cp311-macosx_10_14_x86_64.whl",
            "has_sig": false,
            "md5_digest": "5323aeecce4da3103d4021ff77231e84",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 1181751,
            "upload_time": "2024-01-02T19:32:10",
            "upload_time_iso_8601": "2024-01-02T19:32:10.198980Z",
            "url": "https://files.pythonhosted.org/packages/2a/74/c8c286befaba558d2b5a66280706f6756f4decec43cec643a3afc2d0c6af/sksparse_minimal-0.2-cp311-cp311-macosx_10_14_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f07952687b4db4936701393a8fb488c45810e1c28b1bf418eca0a9a233dcc716",
                "md5": "9d2b4bc8ebca6e5a654523af28e69ccd",
                "sha256": "08364d871e4b0dc2f190fe012ca51a0e9badcc4c8089543906ca955fd8715df7"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp311-cp311-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "9d2b4bc8ebca6e5a654523af28e69ccd",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 987429,
            "upload_time": "2024-01-02T19:32:12",
            "upload_time_iso_8601": "2024-01-02T19:32:12.408371Z",
            "url": "https://files.pythonhosted.org/packages/f0/79/52687b4db4936701393a8fb488c45810e1c28b1bf418eca0a9a233dcc716/sksparse_minimal-0.2-cp311-cp311-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ed3b9482046910054328c7bb0a56327528931e0858b3b6955f20e3a757bbe370",
                "md5": "d9ab52e9d76968e40cf99dffa499fffe",
                "sha256": "5a540908a57f224f3ef909b06795af9dfd32ed3f5c05eda1c1a1cb8a9072ad2f"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d9ab52e9d76968e40cf99dffa499fffe",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 4405620,
            "upload_time": "2024-01-02T19:32:14",
            "upload_time_iso_8601": "2024-01-02T19:32:14.788026Z",
            "url": "https://files.pythonhosted.org/packages/ed/3b/9482046910054328c7bb0a56327528931e0858b3b6955f20e3a757bbe370/sksparse_minimal-0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f0880eb434c41960cc638789bc3df2cef8c5a1dde6ab68b78da98595dd74b8bd",
                "md5": "3f714b72f5bee69f3d0a267e7d5d6ef4",
                "sha256": "b275168e95820b850fdb9d2f39c79084cf48375df433688d3ee9f9cc692f494b"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "3f714b72f5bee69f3d0a267e7d5d6ef4",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 4917148,
            "upload_time": "2024-01-02T19:32:16",
            "upload_time_iso_8601": "2024-01-02T19:32:16.404020Z",
            "url": "https://files.pythonhosted.org/packages/f0/88/0eb434c41960cc638789bc3df2cef8c5a1dde6ab68b78da98595dd74b8bd/sksparse_minimal-0.2-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "872e7ecf87e7d71057dc49ab08d711c11e62d8a5af030ff8a25ce83bcd1aa5d3",
                "md5": "c3b0fd90c3b884d66f736a2d2ba1692c",
                "sha256": "03ea12e9ef205e6ace0ed4b9a024e0af4e8019bb3566b7636b22d648e2854bef"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp38-cp38-macosx_10_14_x86_64.whl",
            "has_sig": false,
            "md5_digest": "c3b0fd90c3b884d66f736a2d2ba1692c",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 1182179,
            "upload_time": "2024-01-02T19:32:18",
            "upload_time_iso_8601": "2024-01-02T19:32:18.704695Z",
            "url": "https://files.pythonhosted.org/packages/87/2e/7ecf87e7d71057dc49ab08d711c11e62d8a5af030ff8a25ce83bcd1aa5d3/sksparse_minimal-0.2-cp38-cp38-macosx_10_14_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "14ac6324d93bcca2fd28265ad28348f74a280fa477da216adc8071b8050bd5dc",
                "md5": "8c65a32ca9e9956434c7863a2d4b600f",
                "sha256": "bebd2cf9f2978fa9d389475be0dc4b55327ec26f4c0d6a579faa1d1268ddf3f3"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "8c65a32ca9e9956434c7863a2d4b600f",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 4405746,
            "upload_time": "2024-01-02T19:32:20",
            "upload_time_iso_8601": "2024-01-02T19:32:20.426386Z",
            "url": "https://files.pythonhosted.org/packages/14/ac/6324d93bcca2fd28265ad28348f74a280fa477da216adc8071b8050bd5dc/sksparse_minimal-0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7290b2dfed36e56c6eb8990f73881f5c2754e26dc355182004bf272e3c6eb53b",
                "md5": "bf05836afa51301c9db6c0b89f04f639",
                "sha256": "96c8604e6acd4973929be53295beea4eb4cc92d006016a78cb353f96815ead82"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp38-cp38-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "bf05836afa51301c9db6c0b89f04f639",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 4917562,
            "upload_time": "2024-01-02T19:32:22",
            "upload_time_iso_8601": "2024-01-02T19:32:22.142539Z",
            "url": "https://files.pythonhosted.org/packages/72/90/b2dfed36e56c6eb8990f73881f5c2754e26dc355182004bf272e3c6eb53b/sksparse_minimal-0.2-cp38-cp38-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6ec42109e1e60ab42407f539567642e27a4e2382ec451e7e2679aaa448abe8f0",
                "md5": "ff70698be8c772e8a33613de75e94bff",
                "sha256": "6e34de5d518c12625dad1ba78eab788c1861c46c3de579d180bd9ec9a6b9ac70"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp39-cp39-macosx_10_14_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ff70698be8c772e8a33613de75e94bff",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 1182170,
            "upload_time": "2024-01-02T19:32:23",
            "upload_time_iso_8601": "2024-01-02T19:32:23.741535Z",
            "url": "https://files.pythonhosted.org/packages/6e/c4/2109e1e60ab42407f539567642e27a4e2382ec451e7e2679aaa448abe8f0/sksparse_minimal-0.2-cp39-cp39-macosx_10_14_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "68a7f245b8f48287fd9dbc0bc43ebbf8553aae987d68c230cdc91b005bc595c7",
                "md5": "53a81f2beaf72e7488a639994f99ef16",
                "sha256": "dc6cbff755ac5f70ece2510de7902bde54b607ee94e4a0f34b693128fa694d70"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp39-cp39-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "53a81f2beaf72e7488a639994f99ef16",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 987750,
            "upload_time": "2024-01-02T19:32:25",
            "upload_time_iso_8601": "2024-01-02T19:32:25.282297Z",
            "url": "https://files.pythonhosted.org/packages/68/a7/f245b8f48287fd9dbc0bc43ebbf8553aae987d68c230cdc91b005bc595c7/sksparse_minimal-0.2-cp39-cp39-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cec83c5135c6564c9841dbfc042605c742dea393a1f6ea44b7f4964526593d2d",
                "md5": "756cf776a042d92fc79616ac47b4a212",
                "sha256": "33dd8dcddf8c162a52ea72067c85411e19ea18c0c5441ebdc9bfeaa692222467"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "756cf776a042d92fc79616ac47b4a212",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 4405984,
            "upload_time": "2024-01-02T19:32:26",
            "upload_time_iso_8601": "2024-01-02T19:32:26.872992Z",
            "url": "https://files.pythonhosted.org/packages/ce/c8/3c5135c6564c9841dbfc042605c742dea393a1f6ea44b7f4964526593d2d/sksparse_minimal-0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "55ae05ab7b1dcad5a090dde583998a1cefcc897ff3312f144ad7615641ce65fc",
                "md5": "32f88decc5b271b251661069154ce21d",
                "sha256": "b4e3457c453729e9f58c5e33f85a2c0650b589f1d848194260275ce921d09345"
            },
            "downloads": -1,
            "filename": "sksparse_minimal-0.2-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "32f88decc5b271b251661069154ce21d",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 4917624,
            "upload_time": "2024-01-02T19:32:29",
            "upload_time_iso_8601": "2024-01-02T19:32:29.407629Z",
            "url": "https://files.pythonhosted.org/packages/55/ae/05ab7b1dcad5a090dde583998a1cefcc897ff3312f144ad7615641ce65fc/sksparse_minimal-0.2-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "93c4c28aa14e9c4e2b8eb3b613a8a611d77f8f60f4ef159b0bf609595d5e65c3",
                "md5": "39f3374595c0ca1ff31333d1e9958b97",
                "sha256": "bcefe7a8eddf5a5976c8440a32a2de6f6dc767b69c1f943049adb0c81d63ef3b"
            },
            "downloads": -1,
            "filename": "sksparse-minimal-0.2.tar.gz",
            "has_sig": false,
            "md5_digest": "39f3374595c0ca1ff31333d1e9958b97",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 6651188,
            "upload_time": "2024-01-02T19:32:31",
            "upload_time_iso_8601": "2024-01-02T19:32:31.358894Z",
            "url": "https://files.pythonhosted.org/packages/93/c4/c28aa14e9c4e2b8eb3b613a8a611d77f8f60f4ef159b0bf609595d5e65c3/sksparse-minimal-0.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-02 19:32:31",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "tansey-lab",
    "github_project": "sksparse_minimal",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "sksparse-minimal"
}
        
Elapsed time: 0.28546s