gotranx


Namegotranx JSON
Version 0.3.5 PyPI version JSON
download
home_pageNone
SummaryA declarative language describing ordinary differential equations
upload_time2024-04-04 09:43:02
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseMIT
keywords parser lark gotran ode
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![pre-commit](https://github.com/finsberg/gotranx/actions/workflows/pre-commit.yml/badge.svg)](https://github.com/finsberg/gotranx/actions/workflows/pre-commit.yml)
[![CI](https://github.com/finsberg/gotranx/actions/workflows/main.yml/badge.svg)](https://github.com/finsberg/gotranx/actions/workflows/main.yml)
[![github pages](https://github.com/finsberg/gotranx/actions/workflows/pages.yml/badge.svg)](https://finsberg.github.io/gotranx)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
# gotranx

`gotranx` is the next generation General ODE translator and is an attempt to a full rewrite of [gotran](https://github.com/ComputationalPhysiology/gotran).

The general idea is that you write your ODE in a high level markup language and use `gotranx` to generate code for solving the ODE in different programming languages.

At the moment we only support Python and C, but we plan to support a wide range of programming languages in the future.

`gotranx` uses [`sympy`](https://www.sympy.org/en/index.html) to generate the numerical schemes.

- Source code: https://github.com/finsberg/gotranx
- Documentation: https://finsberg.github.io/gotranx/


## Install
Install with pip
```
python3 -m pip install gotranx
```
or for the development version
```
python3 -m pip install git+https://github.com/finsberg/gotranx
```

## Quick start
Check out the demos in the [documentation](https://finsberg.github.io/gotranx/demos/cli) and the [examples in the repository](https://github.com/finsberg/gotranx/tree/main/examples).


## Road map
The plan is to have all the features from the old [gotran](https://github.com/ComputationalPhysiology/gotran) implemented in `gotranx` (and some more). This includes

- [ ] More numerical schemes
    - [x] Forward Euler
    - [ ] Rush Larsen
    - [x] Generalized Rush Larsen
    - [ ] Hybrid Generalized Rush Larsen
    - [ ] Simplified Implicit Euler
    - [ ] Newton's method for implicit schemes
- [ ] Code generation for more languages
    - [x] Python
    - [x] C
    - [ ] C++
    - [ ] Julia
    - [ ] CUDA
    - [ ] OpenCL
    - [ ] Rust
    - [ ] Latex
    - [ ] Markdown
- [x] Converters between commonly used ODE markup languages
    - [x] [`Myokit`](https://github.com/myokit/myokit) (still some limited support for unit conversion, see [issue #26](https://github.com/finsberg/gotranx/issues/26))
    - [x] CellML (supported via MyoKit)


If you have additional feature requests, please [open an issue](https://github.com/finsberg/gotranx/issues)

## Contributing
Contributions are very welcomed, but please read the [contributing guide](https://finsberg.github.io/gotranx/CONTRIBUTING/) first

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "gotranx",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "parser, lark, gotran, ode",
    "author": null,
    "author_email": "Henrik Finsberg <henriknf@simula.no>",
    "download_url": "https://files.pythonhosted.org/packages/5f/56/66f6283a7fa952e442a20ba535bbc1c0789a7f1ea68474c34bed8962ec3f/gotranx-0.3.5.tar.gz",
    "platform": null,
    "description": "[![pre-commit](https://github.com/finsberg/gotranx/actions/workflows/pre-commit.yml/badge.svg)](https://github.com/finsberg/gotranx/actions/workflows/pre-commit.yml)\n[![CI](https://github.com/finsberg/gotranx/actions/workflows/main.yml/badge.svg)](https://github.com/finsberg/gotranx/actions/workflows/main.yml)\n[![github pages](https://github.com/finsberg/gotranx/actions/workflows/pages.yml/badge.svg)](https://finsberg.github.io/gotranx)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n# gotranx\n\n`gotranx` is the next generation General ODE translator and is an attempt to a full rewrite of [gotran](https://github.com/ComputationalPhysiology/gotran).\n\nThe general idea is that you write your ODE in a high level markup language and use `gotranx` to generate code for solving the ODE in different programming languages.\n\nAt the moment we only support Python and C, but we plan to support a wide range of programming languages in the future.\n\n`gotranx` uses [`sympy`](https://www.sympy.org/en/index.html) to generate the numerical schemes.\n\n- Source code: https://github.com/finsberg/gotranx\n- Documentation: https://finsberg.github.io/gotranx/\n\n\n## Install\nInstall with pip\n```\npython3 -m pip install gotranx\n```\nor for the development version\n```\npython3 -m pip install git+https://github.com/finsberg/gotranx\n```\n\n## Quick start\nCheck out the demos in the [documentation](https://finsberg.github.io/gotranx/demos/cli) and the [examples in the repository](https://github.com/finsberg/gotranx/tree/main/examples).\n\n\n## Road map\nThe plan is to have all the features from the old [gotran](https://github.com/ComputationalPhysiology/gotran) implemented in `gotranx` (and some more). This includes\n\n- [ ] More numerical schemes\n    - [x] Forward Euler\n    - [ ] Rush Larsen\n    - [x] Generalized Rush Larsen\n    - [ ] Hybrid Generalized Rush Larsen\n    - [ ] Simplified Implicit Euler\n    - [ ] Newton's method for implicit schemes\n- [ ] Code generation for more languages\n    - [x] Python\n    - [x] C\n    - [ ] C++\n    - [ ] Julia\n    - [ ] CUDA\n    - [ ] OpenCL\n    - [ ] Rust\n    - [ ] Latex\n    - [ ] Markdown\n- [x] Converters between commonly used ODE markup languages\n    - [x] [`Myokit`](https://github.com/myokit/myokit) (still some limited support for unit conversion, see [issue #26](https://github.com/finsberg/gotranx/issues/26))\n    - [x] CellML (supported via MyoKit)\n\n\nIf you have additional feature requests, please [open an issue](https://github.com/finsberg/gotranx/issues)\n\n## Contributing\nContributions are very welcomed, but please read the [contributing guide](https://finsberg.github.io/gotranx/CONTRIBUTING/) first\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A declarative language describing ordinary differential equations",
    "version": "0.3.5",
    "project_urls": {
        "Homepage": "https://github.com/finsberg/gotranx"
    },
    "split_keywords": [
        "parser",
        " lark",
        " gotran",
        " ode"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b4c892601083d9dbcef35946405ddc1b8eb976eacda886ebcc9b378848a0613a",
                "md5": "8de905a5ccc7b095cb0cc09d4591d6e5",
                "sha256": "24c1bed9290e047643f119fc8d6a107861452e59e4034390d4c4d038e4913118"
            },
            "downloads": -1,
            "filename": "gotranx-0.3.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8de905a5ccc7b095cb0cc09d4591d6e5",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 35851,
            "upload_time": "2024-04-04T09:42:59",
            "upload_time_iso_8601": "2024-04-04T09:42:59.786025Z",
            "url": "https://files.pythonhosted.org/packages/b4/c8/92601083d9dbcef35946405ddc1b8eb976eacda886ebcc9b378848a0613a/gotranx-0.3.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5f5666f6283a7fa952e442a20ba535bbc1c0789a7f1ea68474c34bed8962ec3f",
                "md5": "993324a91d5ee8baa142d2c1aa6aea15",
                "sha256": "9167bc40ed24b2eac2a9facba282644e840b576fb61d1e6badc4ad0fc2d8ff0f"
            },
            "downloads": -1,
            "filename": "gotranx-0.3.5.tar.gz",
            "has_sig": false,
            "md5_digest": "993324a91d5ee8baa142d2c1aa6aea15",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 43890,
            "upload_time": "2024-04-04T09:43:02",
            "upload_time_iso_8601": "2024-04-04T09:43:02.556462Z",
            "url": "https://files.pythonhosted.org/packages/5f/56/66f6283a7fa952e442a20ba535bbc1c0789a7f1ea68474c34bed8962ec3f/gotranx-0.3.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-04 09:43:02",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "finsberg",
    "github_project": "gotranx",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "gotranx"
}
        
Elapsed time: 1.29600s