eflips-depot


Nameeflips-depot JSON
Version 4.4.2 PyPI version JSON
download
home_pagehttps://github.com/mpm-tu-berlin/eflips-depot
SummaryDepot Simulation for eFLIPS
upload_time2024-12-04 11:54:46
maintainerNone
docs_urlNone
authorEnrico Lauth
requires_python<4.0,>=3.10
licenseAGPL-3.0-or-later
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![Tests](https://github.com/mpm-tu-berlin/eflips-depot/actions/workflows/unittests.yml/badge.svg)](https://github.com/mpm-tu-berlin/eflips-depot/actions/workflows/unittests.yml)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)


# eflips-depot

---

Part of the [eFLIPS/simBA](https://github.com/stars/ludgerheide/lists/ebus2030) list of projects.

---


eFLIPS has been developed within several research projects at the Department of Methods of Product Development and
Mechatronics at the Technische Universität Berlin (see https://www.tu.berlin/mpm/forschung/projekte/eflips).

With eFLIPS, electric fleets and depots can be simulated, planned and designed.
This repository contains only the planning and design tool for depots.

![eflips_overview](https://user-images.githubusercontent.com/74250473/236144949-4192e840-0e3d-4b65-9f78-af8e01ad9ef3.png)

The repository contains an example for the simulation and planning of an elecric bus depot, which is based on the
dissertation by Dr.-Ing. Enrico Lauth (see https://depositonce.tu-berlin.de/items/f47662f7-c9ae-4fbf-9e9c-bcd307b73aa7).

## Installation

1. Clone this git repository (or [download a specific release](https://github.com/mpm-tu-berlin/eflips-depot/releases))

    ```bash
    git clone git@github.com:mpm-tu-berlin/eflips-depot.git
    ```
2. Install the packages listed in `poetry.lock` and `pyproject.toml` into your Python environment. Notes:
    - The suggested Python version os 3.11.*, it may work with other versions, but this is not tested.
    - Using the [poetry](https://python-poetry.org/) package manager is recommended. It can be installed accoring to the
      instructions listed [here](https://python-poetry.org/docs/#installing-with-the-official-installer).
   #### macOS
    ```bash
    poetry env use 3.11
    poetry install
    ```
    #### Windows
   If you are using Windows, you have to provide the full path to the desired Python executable, e.g.:
    ```bash
   poetry env use C:\Users\user\AppData\Local\Programs\Python\Python311\python.exe
   poetry install
   ```

4. To start a simulation, an existing [eFLIPS-Model](https://github.com/mpm-tu-berlin/eflips-model) database is
   requires. Once you have that, you can run the script `bin/example.py`

## Usage

Please refer to the [Documentation section](#documentation) of this Readme for information
on how to use eFLIPS-Depot.

The API of eFLIPS-Depot can be accessed via ```eFLIPS.depot.api```. A usage example can be found in the
script `bus_depot/user_example.py`.

## Testing

---

**NOTE**: Be aware that the tests will clear the database specified in the `DATABASE_URL` environment variable. Make sure that you are not using a database that you want to keep.

---

Testing is done using the `pytest` framework with tests located in the `tests`directory. To run the tests, execute the following command in the root directory of the repository:

```bash
   export PYTHONPATH=tests:. # To make sure that the tests can find the eflips package
   export DATABASE_URL=postgis://postgres:postgres@localhost:5432/postgres # Or whatever your database URL is
   export DJANGO_SETTINGS_MODULE=tests.api.djangosettings # To make sure that the tests use the correct settings
   pytest
```
## Documentation

Documentation is available on [Read the Docs](https://eflips-depot.readthedocs.io/en/latest/).

To locally create the documentaiton from the docstrings in the code
using [sphinx-autoapi](https://sphinx-autoapi.readthedocs.io/en/latest/), you can create the documentation execute the
following command in the root directory of the repository:

```bash
   cd docs/
   sphinx-build -b html . _build
```


## Development

We utilize the [GitHub Flow](https://docs.github.com/get-started/quickstart/github-flow) branching structure. This means
that the `main` branch is always deployable and that all development happens in feature branches. The feature branches
are merged into `main` via pull requests.

We use [black](https://black.readthedocs.io/en/stable/) for code formatting. You can use 
[pre-commit](https://pre-commit.com/) to ensure the code is formatted correctly before committing. You are also free to
use other methods to format the code, but please ensure that the code is formatted correctly before committing.

Please make sure that your `poetry.lock` and `pyproject.toml` files are consistent before committing. You can use `poetry check` to check this. This is also checked by pre-commit.

## License

This project is licensed under the AGPLv3 license - see the [LICENSE](LICENSE.md) file for details.

## Funding Notice

This code was developed as part of the project [eBus2030+]([https://www.eflip.de/](https://www.now-gmbh.de/projektfinder/e-bus-2030/)) funded by the Federal German Ministry for Digital and Transport (BMDV) under grant number 03EMF0402.


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/mpm-tu-berlin/eflips-depot",
    "name": "eflips-depot",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.10",
    "maintainer_email": null,
    "keywords": null,
    "author": "Enrico Lauth",
    "author_email": "enrico.lauth@tu-berlin.de",
    "download_url": "https://files.pythonhosted.org/packages/43/cc/b8c219880fcd89a8b2b522727e6df558af8373f02043831c956e0919800a/eflips_depot-4.4.2.tar.gz",
    "platform": null,
    "description": "[![Tests](https://github.com/mpm-tu-berlin/eflips-depot/actions/workflows/unittests.yml/badge.svg)](https://github.com/mpm-tu-berlin/eflips-depot/actions/workflows/unittests.yml)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n\n\n# eflips-depot\n\n---\n\nPart of the [eFLIPS/simBA](https://github.com/stars/ludgerheide/lists/ebus2030) list of projects.\n\n---\n\n\neFLIPS has been developed within several research projects at the Department of Methods of Product Development and\nMechatronics at the Technische Universit\u00e4t Berlin (see https://www.tu.berlin/mpm/forschung/projekte/eflips).\n\nWith eFLIPS, electric fleets and depots can be simulated, planned and designed.\nThis repository contains only the planning and design tool for depots.\n\n![eflips_overview](https://user-images.githubusercontent.com/74250473/236144949-4192e840-0e3d-4b65-9f78-af8e01ad9ef3.png)\n\nThe repository contains an example for the simulation and planning of an elecric bus depot, which is based on the\ndissertation by Dr.-Ing. Enrico Lauth (see https://depositonce.tu-berlin.de/items/f47662f7-c9ae-4fbf-9e9c-bcd307b73aa7).\n\n## Installation\n\n1. Clone this git repository (or [download a specific release](https://github.com/mpm-tu-berlin/eflips-depot/releases))\n\n    ```bash\n    git clone git@github.com:mpm-tu-berlin/eflips-depot.git\n    ```\n2. Install the packages listed in `poetry.lock` and `pyproject.toml` into your Python environment. Notes:\n    - The suggested Python version os 3.11.*, it may work with other versions, but this is not tested.\n    - Using the [poetry](https://python-poetry.org/) package manager is recommended. It can be installed accoring to the\n      instructions listed [here](https://python-poetry.org/docs/#installing-with-the-official-installer).\n   #### macOS\n    ```bash\n    poetry env use 3.11\n    poetry install\n    ```\n    #### Windows\n   If you are using Windows, you have to provide the full path to the desired Python executable, e.g.:\n    ```bash\n   poetry env use C:\\Users\\user\\AppData\\Local\\Programs\\Python\\Python311\\python.exe\n   poetry install\n   ```\n\n4. To start a simulation, an existing [eFLIPS-Model](https://github.com/mpm-tu-berlin/eflips-model) database is\n   requires. Once you have that, you can run the script `bin/example.py`\n\n## Usage\n\nPlease refer to the [Documentation section](#documentation) of this Readme for information\non how to use eFLIPS-Depot.\n\nThe API of eFLIPS-Depot can be accessed via ```eFLIPS.depot.api```. A usage example can be found in the\nscript `bus_depot/user_example.py`.\n\n## Testing\n\n---\n\n**NOTE**: Be aware that the tests will clear the database specified in the `DATABASE_URL` environment variable. Make sure that you are not using a database that you want to keep.\n\n---\n\nTesting is done using the `pytest` framework with tests located in the `tests`directory. To run the tests, execute the following command in the root directory of the repository:\n\n```bash\n   export PYTHONPATH=tests:. # To make sure that the tests can find the eflips package\n   export DATABASE_URL=postgis://postgres:postgres@localhost:5432/postgres # Or whatever your database URL is\n   export DJANGO_SETTINGS_MODULE=tests.api.djangosettings # To make sure that the tests use the correct settings\n   pytest\n```\n## Documentation\n\nDocumentation is available on [Read the Docs](https://eflips-depot.readthedocs.io/en/latest/).\n\nTo locally create the documentaiton from the docstrings in the code\nusing [sphinx-autoapi](https://sphinx-autoapi.readthedocs.io/en/latest/), you can create the documentation execute the\nfollowing command in the root directory of the repository:\n\n```bash\n   cd docs/\n   sphinx-build -b html . _build\n```\n\n\n## Development\n\nWe utilize the [GitHub Flow](https://docs.github.com/get-started/quickstart/github-flow) branching structure. This means\nthat the `main` branch is always deployable and that all development happens in feature branches. The feature branches\nare merged into `main` via pull requests.\n\nWe use [black](https://black.readthedocs.io/en/stable/) for code formatting. You can use \n[pre-commit](https://pre-commit.com/) to ensure the code is formatted correctly before committing. You are also free to\nuse other methods to format the code, but please ensure that the code is formatted correctly before committing.\n\nPlease make sure that your `poetry.lock` and `pyproject.toml` files are consistent before committing. You can use `poetry check` to check this. This is also checked by pre-commit.\n\n## License\n\nThis project is licensed under the AGPLv3 license - see the [LICENSE](LICENSE.md) file for details.\n\n## Funding Notice\n\nThis code was developed as part of the project [eBus2030+]([https://www.eflip.de/](https://www.now-gmbh.de/projektfinder/e-bus-2030/)) funded by the Federal German Ministry for Digital and Transport (BMDV) under grant number 03EMF0402.\n\n",
    "bugtrack_url": null,
    "license": "AGPL-3.0-or-later",
    "summary": "Depot Simulation for eFLIPS",
    "version": "4.4.2",
    "project_urls": {
        "Homepage": "https://github.com/mpm-tu-berlin/eflips-depot",
        "Repository": "https://github.com/mpm-tu-berlin/eflips-depot"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f4f25f8ef6a2eab4a9f36931beefbb1a3a28ca4df01e5cb95a6ca416238e1654",
                "md5": "c702ab16de9d663c67b2d6a795ca79cb",
                "sha256": "a01cf926b9549b2a89a8e83d1da46108e3c0a48187703984642509431bbca956"
            },
            "downloads": -1,
            "filename": "eflips_depot-4.4.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "c702ab16de9d663c67b2d6a795ca79cb",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.10",
            "size": 216928,
            "upload_time": "2024-12-04T11:54:45",
            "upload_time_iso_8601": "2024-12-04T11:54:45.035565Z",
            "url": "https://files.pythonhosted.org/packages/f4/f2/5f8ef6a2eab4a9f36931beefbb1a3a28ca4df01e5cb95a6ca416238e1654/eflips_depot-4.4.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "43ccb8c219880fcd89a8b2b522727e6df558af8373f02043831c956e0919800a",
                "md5": "0e82aa0a53a866e992e7e6f3e5efff46",
                "sha256": "72bb220dc8d721d1db0b541a64f6c3bb9b9ab2da2fbdf5c6c1168bd252752ab9"
            },
            "downloads": -1,
            "filename": "eflips_depot-4.4.2.tar.gz",
            "has_sig": false,
            "md5_digest": "0e82aa0a53a866e992e7e6f3e5efff46",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.10",
            "size": 204790,
            "upload_time": "2024-12-04T11:54:46",
            "upload_time_iso_8601": "2024-12-04T11:54:46.851636Z",
            "url": "https://files.pythonhosted.org/packages/43/cc/b8c219880fcd89a8b2b522727e6df558af8373f02043831c956e0919800a/eflips_depot-4.4.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-04 11:54:46",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "mpm-tu-berlin",
    "github_project": "eflips-depot",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "eflips-depot"
}
        
Elapsed time: 0.35270s