Name | fastsim JSON |
Version |
3.0.4
JSON |
| download |
home_page | None |
Summary | Tool for modeling vehicle powertrains |
upload_time | 2025-07-24 16:41:11 |
maintainer | None |
docs_url | None |
author | None |
requires_python | <3.13,>=3.10 |
license | None |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
<img src="https://raw.githubusercontent.com/NREL/fastsim/refs/heads/fastsim-2/docs/assets/fastsim-icon.svg" height="200">
[](https://www.nrel.gov/transportation/fastsim.html)
[](https://github.com/NREL/fastsim/actions/workflows/tests.yaml)
[](https://github.com/NREL/fastsim/actions/workflows/release.yaml?event=release)
[](https://pypi.org/project/fastsim/)
[](https://nrel.github.io/fastsim/)
[](https://github.com/NREL/fastsim)
# Description
This is the `fastim-3` version of [NREL's FASTSim](https://www.nrel.gov/transportation/fastsim.html).
It introduces numerous new enhancements and features, including:
- ~10x faster! -- when setting `save_interval` to `None`, which means only the state at the last
time step, which includes fuel consumption and/or battery depletion, among other useful
cumulative state variables.
- Roughly ~60% reduction in memory consumption (~160 mb in [`fastsim-2`](https://github.com/NREL/fastsim)
v. 60 mb in [`fastsim-3`](https://github.com/NREL/fastsim/tree/fastsim-3)
- object-oriented, hierarchical model structure
- ability to control granularity of time-resolved data -- e.g. save at every time step, save at
every _n_th time step, or never save at all (saving only cumulative trip-level results)
- component-specific vehicle models -- i.e. the conventional vehicle contains only data for the fuel
converter and other relevant components but does contain any dummy battery or motor parameters as
is the case in `fastsim-2`
- file formats that are more robust and more human readable
- backwards compatibility with `fastsim-2`
- flexible data structures to allow for future model types
- ability to simulate standalone component models
- flexible model interfacing (e.g. multiple folder/file formats for reading and/or writing data)
- more accurate interpolation methods
# Installation
## Python
Set up and activate a python environment (compatible with Python 3.8 - 3.10; we recommend Python 3.10) with the following steps.
### [Anaconda](https://www.anaconda.com/)
1. Create: `conda create -n fastsim python=3.10`
1. Activate: `conda activate fastsim`
### [venv](https://docs.python.org/3/library/venv.html)
There is some variation based on your Operating System:
- PowerShell (windows):
1. Create: `python -m venv fastsim-venv` -- name is user decision
1. Activate: `fastsim-venv/Scripts/Activate.ps1`
- Bash (i.e. unix/linux/mac):
1. Create: `python -m venv fastsim-venv` -- name is user decision
1. Activate: `source fastsim-venv/bin/activate`
- Command Prompt (windows):
1. Create: `python -m venv fastsim-venv` -- name is user decision
1. Activate: `fastsim-venv/Scripts/activate.bat`
### [Pixi](https://pixi.sh/latest/) (recommended for developers)
1. `pixi shell -e dev` -- this creates the environment, installs all the dependencies,
builds fastsim, and activates the environment
## FASTSim-3
### Via PyPI
In an active Python environment created above, run `pip install fastsim`.
### Building from Scratch
Developers might want to install the code in place so that FASTSim files can be editable (the `-e` flag for
pip provides this behavior). This option can be handy since FASTSim will be installed in place from the
installation location and any updates will be propagated each time FASTSim is freshly imported. To do
this, you'll need to have the [Rust toolchain](https://www.rust-lang.org/tools/install) installed.
- Option 1: run `sh build_and_test.sh` in root folder.
- Option 2:
1. Run `pip install -e ".[dev]"`
Optional testing steps:
1. Run `cargo test`
1. Run `pytest -v python/fastsim/tests/`
<!-- TODO: fix this code and uncomment -->
<!-- # Usage -->
<!-- To see and run examples, download the `fastsim-3` demo files using the following code (with your Python environment activated and `fastsim-3` installed): -->
<!-- ```python -->
<!-- from fastsim import utils -->
<!-- utils.copy_demo_files() -->
<!-- ``` -->
<!-- This code downloads demo files into a specified local directory (if no directory is specified, it will create a `\demos` folder in the current working directory). WARNING: If you download the demo files to a location where files of the same name already exist, the original files will be overwritten. -->
# Contributors
Chad Baker -- Chad.Baker@nrel.gov
Aaron Brooker -- Aaron.Brooker@nrel.gov
Kyle Carow -- Kyle.Carow@nrel.gov
Jeffrey Gonder -- Jeff.Gonder@nrel.gov
Jacob Holden -- Jacob.Holden@nrel.gov
Jinghu Hu -- Jinghu.Hu@nrel.gov
Jason Lustbader -- Jason.Lustbader@nrel.gov
Sean Lopp -- sean@rstudio.com
Matthew Moniot -- Matthew.Moniot@nrel.gov
Grant Payne -- Grant.Payne@nrel.gov
Laurie Ramroth -- lramroth@ford.com
Eric Wood -- Eric.Wood@nrel.gov
Robin Steuteville -- Robin.Steuteville@nrel.gov
Raw data
{
"_id": null,
"home_page": null,
"name": "fastsim",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.13,>=3.10",
"maintainer_email": null,
"keywords": null,
"author": null,
"author_email": "NREL/MTES/CIMS/MBAP Group <fastsim@nrel.gov>",
"download_url": null,
"platform": null,
"description": "<img src=\"https://raw.githubusercontent.com/NREL/fastsim/refs/heads/fastsim-2/docs/assets/fastsim-icon.svg\" height=\"200\">\n\n[](https://www.nrel.gov/transportation/fastsim.html)\n[](https://github.com/NREL/fastsim/actions/workflows/tests.yaml)\n[](https://github.com/NREL/fastsim/actions/workflows/release.yaml?event=release)\n[](https://pypi.org/project/fastsim/)\n[](https://nrel.github.io/fastsim/)\n[](https://github.com/NREL/fastsim)\n\n# Description\nThis is the `fastim-3` version of [NREL's FASTSim](https://www.nrel.gov/transportation/fastsim.html).\nIt introduces numerous new enhancements and features, including:\n- ~10x faster! -- when setting `save_interval` to `None`, which means only the state at the last \n time step, which includes fuel consumption and/or battery depletion, among other useful \n cumulative state variables. \n- Roughly ~60% reduction in memory consumption (~160 mb in [`fastsim-2`](https://github.com/NREL/fastsim) \n v. 60 mb in [`fastsim-3`](https://github.com/NREL/fastsim/tree/fastsim-3)\n- object-oriented, hierarchical model structure\n- ability to control granularity of time-resolved data -- e.g. save at every time step, save at \n every _n_th time step, or never save at all (saving only cumulative trip-level results)\n- component-specific vehicle models -- i.e. the conventional vehicle contains only data for the fuel\n converter and other relevant components but does contain any dummy battery or motor parameters as\n is the case in `fastsim-2`\n- file formats that are more robust and more human readable\n- backwards compatibility with `fastsim-2`\n- flexible data structures to allow for future model types\n- ability to simulate standalone component models\n- flexible model interfacing (e.g. multiple folder/file formats for reading and/or writing data)\n- more accurate interpolation methods\n\n# Installation\n\n## Python \nSet up and activate a python environment (compatible with Python 3.8 - 3.10; we recommend Python 3.10) with the following steps.\n\n### [Anaconda](https://www.anaconda.com/) \n1. Create: `conda create -n fastsim python=3.10`\n1. Activate: `conda activate fastsim`\n\n### [venv](https://docs.python.org/3/library/venv.html)\nThere is some variation based on your Operating System: \n\n- PowerShell (windows):\n 1. Create: `python -m venv fastsim-venv` -- name is user decision\n 1. Activate: `fastsim-venv/Scripts/Activate.ps1`\n\n- Bash (i.e. unix/linux/mac):\n 1. Create: `python -m venv fastsim-venv` -- name is user decision\n 1. Activate: `source fastsim-venv/bin/activate`\n\n- Command Prompt (windows):\n 1. Create: `python -m venv fastsim-venv` -- name is user decision\n 1. Activate: `fastsim-venv/Scripts/activate.bat`\n\n### [Pixi](https://pixi.sh/latest/) (recommended for developers)\n1. `pixi shell -e dev` -- this creates the environment, installs all the dependencies,\n builds fastsim, and activates the environment\n\n## FASTSim-3\n### Via PyPI\nIn an active Python environment created above, run `pip install fastsim`.\n\n### Building from Scratch\nDevelopers might want to install the code in place so that FASTSim files can be editable (the `-e` flag for \npip provides this behavior). This option can be handy since FASTSim will be installed in place from the \ninstallation location and any updates will be propagated each time FASTSim is freshly imported. To do \nthis, you'll need to have the [Rust toolchain](https://www.rust-lang.org/tools/install) installed.\n\n- Option 1: run `sh build_and_test.sh` in root folder. \n- Option 2: \n 1. Run `pip install -e \".[dev]\"` \n Optional testing steps:\n 1. Run `cargo test`\n 1. Run `pytest -v python/fastsim/tests/`\n\n<!-- TODO: fix this code and uncomment -->\n<!-- # Usage -->\n<!-- To see and run examples, download the `fastsim-3` demo files using the following code (with your Python environment activated and `fastsim-3` installed): -->\n<!-- ```python -->\n<!-- from fastsim import utils --> \n<!-- utils.copy_demo_files() -->\n<!-- ``` -->\n<!-- This code downloads demo files into a specified local directory (if no directory is specified, it will create a `\\demos` folder in the current working directory). WARNING: If you download the demo files to a location where files of the same name already exist, the original files will be overwritten. --> \n\n\n# Contributors \nChad Baker -- Chad.Baker@nrel.gov \nAaron Brooker -- Aaron.Brooker@nrel.gov \nKyle Carow -- Kyle.Carow@nrel.gov \nJeffrey Gonder -- Jeff.Gonder@nrel.gov \nJacob Holden -- Jacob.Holden@nrel.gov \nJinghu Hu -- Jinghu.Hu@nrel.gov \nJason Lustbader -- Jason.Lustbader@nrel.gov \nSean Lopp -- sean@rstudio.com \nMatthew Moniot -- Matthew.Moniot@nrel.gov \nGrant Payne -- Grant.Payne@nrel.gov \nLaurie Ramroth -- lramroth@ford.com \nEric Wood -- Eric.Wood@nrel.gov\nRobin Steuteville -- Robin.Steuteville@nrel.gov\n\n",
"bugtrack_url": null,
"license": null,
"summary": "Tool for modeling vehicle powertrains",
"version": "3.0.4",
"project_urls": {
"Homepage": "https://www.nrel.gov/transportation/fastsim.html"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "f6fc3bf79292c846c33f631d9b8bf08715c8587600c01192b454c3d6a9670e1a",
"md5": "b2f2a4af270e2daaccc16792dd3c7efd",
"sha256": "f1de14a71c3990df4a26cdd55385381f072359d6bcd4c7a334f3a2f7b80f2ae1"
},
"downloads": -1,
"filename": "fastsim-3.0.4-cp310-cp310-macosx_10_12_x86_64.whl",
"has_sig": false,
"md5_digest": "b2f2a4af270e2daaccc16792dd3c7efd",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "<3.13,>=3.10",
"size": 8508706,
"upload_time": "2025-07-24T16:41:11",
"upload_time_iso_8601": "2025-07-24T16:41:11.124728Z",
"url": "https://files.pythonhosted.org/packages/f6/fc/3bf79292c846c33f631d9b8bf08715c8587600c01192b454c3d6a9670e1a/fastsim-3.0.4-cp310-cp310-macosx_10_12_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "137ed1c8df47ad28276f0e315ed382ecdc53b3486ae7b0687c688f2f8a815826",
"md5": "2e32839fac95d27c5e322e36f8bd2a85",
"sha256": "95f2a623de017ffd74612c01229e0ea444ef536fe6f259645e00e296d59d8356"
},
"downloads": -1,
"filename": "fastsim-3.0.4-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "2e32839fac95d27c5e322e36f8bd2a85",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "<3.13,>=3.10",
"size": 8051062,
"upload_time": "2025-07-24T16:41:13",
"upload_time_iso_8601": "2025-07-24T16:41:13.242721Z",
"url": "https://files.pythonhosted.org/packages/13/7e/d1c8df47ad28276f0e315ed382ecdc53b3486ae7b0687c688f2f8a815826/fastsim-3.0.4-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0a9023926761ccd1c6c50510820b92f5e4af58c41dbc64e2309e1aecd5eea722",
"md5": "3db584a361123a456a7bb60bfa06dbc9",
"sha256": "d9ebcf6b654a3fe05d183793bb6177f5da786eb32806a9e2ffaa0eacc2c20ac2"
},
"downloads": -1,
"filename": "fastsim-3.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "3db584a361123a456a7bb60bfa06dbc9",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "<3.13,>=3.10",
"size": 11005211,
"upload_time": "2025-07-24T16:41:14",
"upload_time_iso_8601": "2025-07-24T16:41:14.859250Z",
"url": "https://files.pythonhosted.org/packages/0a/90/23926761ccd1c6c50510820b92f5e4af58c41dbc64e2309e1aecd5eea722/fastsim-3.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e907d98b74da6c859f9c8670ae1834447ffd899a459ea037c55c434fbf9d83d5",
"md5": "9214a72f4fdedce12c4abad77b40f4ea",
"sha256": "40497644e7765a5f1b35efae1adc4f181ea2616b808aab7c52dec35f69124932"
},
"downloads": -1,
"filename": "fastsim-3.0.4-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "9214a72f4fdedce12c4abad77b40f4ea",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "<3.13,>=3.10",
"size": 9921472,
"upload_time": "2025-07-24T16:41:16",
"upload_time_iso_8601": "2025-07-24T16:41:16.803536Z",
"url": "https://files.pythonhosted.org/packages/e9/07/d98b74da6c859f9c8670ae1834447ffd899a459ea037c55c434fbf9d83d5/fastsim-3.0.4-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "2bb9a498879faa39f91104e60195a99bd842fd13edb0515c63a39f7ac27daed0",
"md5": "f65db51a6d352cceb0845fe41bbf722d",
"sha256": "e39389a93a9c9e47adf5b9ab6675a164e6d48c926f09a4b0f53033d8e49c1aa0"
},
"downloads": -1,
"filename": "fastsim-3.0.4-cp311-cp311-macosx_10_12_x86_64.whl",
"has_sig": false,
"md5_digest": "f65db51a6d352cceb0845fe41bbf722d",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "<3.13,>=3.10",
"size": 8507664,
"upload_time": "2025-07-24T16:41:18",
"upload_time_iso_8601": "2025-07-24T16:41:18.851169Z",
"url": "https://files.pythonhosted.org/packages/2b/b9/a498879faa39f91104e60195a99bd842fd13edb0515c63a39f7ac27daed0/fastsim-3.0.4-cp311-cp311-macosx_10_12_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "2c22b70581820a6539fc4ba7829205666fe27e06a73fa81ca19d0962c4a0f56d",
"md5": "077f1aab46a79db7004f5b806e9dd557",
"sha256": "c826924dc3421639cdbad1ba46e9594ca50f8d59265b1b23bebc6677b0f48e01"
},
"downloads": -1,
"filename": "fastsim-3.0.4-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "077f1aab46a79db7004f5b806e9dd557",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "<3.13,>=3.10",
"size": 8050413,
"upload_time": "2025-07-24T16:41:20",
"upload_time_iso_8601": "2025-07-24T16:41:20.509038Z",
"url": "https://files.pythonhosted.org/packages/2c/22/b70581820a6539fc4ba7829205666fe27e06a73fa81ca19d0962c4a0f56d/fastsim-3.0.4-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "afb2103b289bbe9093fea51d7b95ac4eb78eef2706a60cfe8d9e85c8f9558ec4",
"md5": "e10d0a385261a814d5930ac81496842a",
"sha256": "cdb43d9fecf171c2a708a3667318b6ae50497a3db2a605d494ad065461c218dc"
},
"downloads": -1,
"filename": "fastsim-3.0.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "e10d0a385261a814d5930ac81496842a",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "<3.13,>=3.10",
"size": 11005485,
"upload_time": "2025-07-24T16:41:21",
"upload_time_iso_8601": "2025-07-24T16:41:21.818862Z",
"url": "https://files.pythonhosted.org/packages/af/b2/103b289bbe9093fea51d7b95ac4eb78eef2706a60cfe8d9e85c8f9558ec4/fastsim-3.0.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "196a85e40e86f36564bc9211848ecf18f9bd155b4b0a612aaecdc75326c969cd",
"md5": "cf102267f95614d01807782e5d8e598c",
"sha256": "68da2cd335ac6ff0f9a2f9de84d8b0581bccaaea7090d4b456898294f098e063"
},
"downloads": -1,
"filename": "fastsim-3.0.4-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "cf102267f95614d01807782e5d8e598c",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "<3.13,>=3.10",
"size": 9921502,
"upload_time": "2025-07-24T16:41:23",
"upload_time_iso_8601": "2025-07-24T16:41:23.526961Z",
"url": "https://files.pythonhosted.org/packages/19/6a/85e40e86f36564bc9211848ecf18f9bd155b4b0a612aaecdc75326c969cd/fastsim-3.0.4-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b239330fc1957c9d89012c13833e36e89be2d12786f74072c8b9f51eff4b7501",
"md5": "5d96a0bd3a3729924b4fd5cc282d0a81",
"sha256": "76928015c3c5b3ae0fc29f0d1d8416bd07a115359ef20a2813c314d8586146f9"
},
"downloads": -1,
"filename": "fastsim-3.0.4-cp312-cp312-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "5d96a0bd3a3729924b4fd5cc282d0a81",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<3.13,>=3.10",
"size": 8476276,
"upload_time": "2025-07-24T16:41:25",
"upload_time_iso_8601": "2025-07-24T16:41:25.388334Z",
"url": "https://files.pythonhosted.org/packages/b2/39/330fc1957c9d89012c13833e36e89be2d12786f74072c8b9f51eff4b7501/fastsim-3.0.4-cp312-cp312-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "fb51fe2d4eff555072554f43d0407fedb02542fc389351a61c483b0b1edcbbcd",
"md5": "963ee27cea4573742b921ae58f691e83",
"sha256": "484654be30c4b70aef81540e21db7c7806b61d6f40479478619e7b4e60f6db53"
},
"downloads": -1,
"filename": "fastsim-3.0.4-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "963ee27cea4573742b921ae58f691e83",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<3.13,>=3.10",
"size": 8009891,
"upload_time": "2025-07-24T16:41:26",
"upload_time_iso_8601": "2025-07-24T16:41:26.982597Z",
"url": "https://files.pythonhosted.org/packages/fb/51/fe2d4eff555072554f43d0407fedb02542fc389351a61c483b0b1edcbbcd/fastsim-3.0.4-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "7453fcd095d74f44bf365f2573aa8581ad6f67126dddba28ad544a5c97154346",
"md5": "ec637037cfd78c0dc20eca4a00b1075a",
"sha256": "0acbd2330b5c51bb366903cdc2037f03caee6a8afb6dec85a425fd35bd766381"
},
"downloads": -1,
"filename": "fastsim-3.0.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "ec637037cfd78c0dc20eca4a00b1075a",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<3.13,>=3.10",
"size": 11002307,
"upload_time": "2025-07-24T16:41:28",
"upload_time_iso_8601": "2025-07-24T16:41:28.391087Z",
"url": "https://files.pythonhosted.org/packages/74/53/fcd095d74f44bf365f2573aa8581ad6f67126dddba28ad544a5c97154346/fastsim-3.0.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "8adfe5b7ff3786ca4666f28e24c0519a68e5f828d246cd223f20259144dad1b4",
"md5": "3883ebea7a4c202a9a30055a16abc843",
"sha256": "2f3e69ae3e4c313d690fd288af9da5497d5deccc0d6112489f7cf2a2ce3512b9"
},
"downloads": -1,
"filename": "fastsim-3.0.4-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "3883ebea7a4c202a9a30055a16abc843",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<3.13,>=3.10",
"size": 9937319,
"upload_time": "2025-07-24T16:41:30",
"upload_time_iso_8601": "2025-07-24T16:41:30.911734Z",
"url": "https://files.pythonhosted.org/packages/8a/df/e5b7ff3786ca4666f28e24c0519a68e5f828d246cd223f20259144dad1b4/fastsim-3.0.4-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-24 16:41:11",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "fastsim"
}