Metadata-Version: 2.4
Name: pycrash
Version: 0.0.18
Summary: software tool for simulating vehicle motion and impacts based on     fundamental physics and accident reconstruction techniques
Home-page: https://github.com/joe-cormier/pycrash
Author: Joe Cormier
Author-email: joemcormier@outlook.com
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Operating System :: OS Independent
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy
Requires-Dist: scipy>=1.6
Requires-Dist: pandas<3,>=1.2
Requires-Dist: matplotlib
Requires-Dist: plotly
Requires-Dist: tabulate
Requires-Dist: tqdm
Requires-Dist: cookiecutter
Provides-Extra: test
Requires-Dist: pytest; extra == "test"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license-file
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

Pycrash
=

Pycrash is a 2D mathematical model for simulating vehicle motion and vehicular impacts using a variety of
approaches based on fundamental physics and published accident reconstruction techniques.  In addition to fundamental
applications, Pycrash has accident reconstruction specific modules for obtaining and processing commonly used data

##### Installation (Requires Python > 3.6)
pip install pycrash
[PyPi](https://pypi.org/project/pycrash/)

#### Planar Vehicle Motion
1. Single vehicle motion based on driver inputs (brake, throttle, steer)
2. Multi-vehicle motion and multiple impacts per vehicle

#### Impact Simulation
##### Single Degree of Freedom Model
  - basic 2D collision with user defined stiffness values and braking effects
  - vehicle specific data is published for most vehicles by the [National Highway Traffic Safety Administration](https://www-nrd.nhtsa.dot.gov/database/veh/veh.htm)
  - use published stiffness data such as [Bonugli et al.](https://www.sae.org/publications/technical-papers/content/2017-01-1417/) or [Lee et al.](https://www.sae.org/publications/technical-papers/content/2014-01-0351/) as examples
##### Impulse Momentum Planar Collision
 - model based on conservation of momentum incorporating inter-vehicular sliding developed by [Carpenter et al.](https://www.sae.org/publications/technical-papers/content/2019-01-0422/)
##### Sideswipe (*in progress*)
   - similar to previous model developed and validated by [Funk et al.](https://www.sae.org/publications/technical-papers/content/2004-01-1185/)
   - improved to allow for driver inputs and flexible approach angles and contact locations

#### Validation
  - validation data are provided within the [Github](https://github.com/joe-cormier/pycrash) repo
  - Initial publication in [2021 SAE](https://www.sae.org/publications/technical-papers/content/2021-01-0896/)
  - Validation against real-world crashes [2026 SAE](https://saemobilus.sae.org/papers/a-large-scale-characterization-pycrash-collision-model-behavior-using-real-world-collision-data-2026-01-5004)

#### Modular Design
  - Model calculations divided into modules to allow for future improvements
  - Vehicle motion incorporates a modular linear tire model to determine slip condition based on weight shift from longitudinal and lateral acceleration.

### Collaboration
  - Contributors are welcome - create a branch to develop a new capability or improve the current model
  - There is a list of projects in the report for future applications that I would like to pursue
  - Create an issue if you identify a problem or to make suggestions for future improvements
  - Additional validation data are always welcome

#### Recommendations
- Download Python [here](https://www.python.org/) and install required packages with pip from [PyPi](https://pypi.org/)
- See [Github](https://github.com/joe-cormier/pycrash) repo for tutorials, Jupyter Notebooks and validation data
- The validation and demonstration of Pycrash is best viewed using [Jupyter notebooks](https://jupyter.org/)
