lemons

Generate non-circuLar, anthropometry-based pEdestrian shapes and simulate their Mechanical interactiONS in two dimensions

https://github.com/odufour7/lemons

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.7%) to scientific vocabulary

Keywords

agent-based-model crowd-dynamics granular-mechanics pedestrian-dynamics
Last synced: 6 months ago · JSON representation ·

Repository

Generate non-circuLar, anthropometry-based pEdestrian shapes and simulate their Mechanical interactiONS in two dimensions

Basic Info
  • Host: GitHub
  • Owner: odufour7
  • License: other
  • Language: Python
  • Default Branch: master
  • Homepage:
  • Size: 176 MB
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Topics
agent-based-model crowd-dynamics granular-mechanics pedestrian-dynamics
Created 7 months ago · Last pushed 6 months ago
Metadata Files
Readme License Citation

README.md

Project icon
[![](https://badgen.net/badge/DOI/open%20access/orange)](https://hal.science/hal-05215318v1) [![](https://badgen.net/static/DOC/lemons-docs/cyan?icon=https://icons.getbootstrap.com/icons/filetype-doc/)](https://lemons.readthedocs.io/en/latest/index.html) [![](https://badgen.net/badge/icon/GitHub?icon=github&label)](https://github.com/odufour7/LEMONS) [![](https://badgen.net/badge/🚀/Streamlit%20App/green)](https://lemons.streamlit.app/) [![](https://badgen.net/badge/VIDEO/10.5281%2Fzenodo.16371832/red)](https://zenodo.org/records/16371833) lemon **LEMONS**: *An Open-Source Platform to Generate Non-Circular, Anthropometry-Based Pedestrian Shapes and Simulate Their Mechanical Interactions in 2D*

Documentation

Comprehensive installation guidelines, tutorials, and a complete API reference are available in our official documentation.

Authors

  • Oscar Dufour
  • Maxime Stapelle
  • Alexandre Nicolas

This project is developed at Institute of Light and Matter.

Citation

If you use LEMONS, we encourage you to cite or reference this work as you would any other scientific research. The package is a result of a huge amount of time and effort invested by the authors. Citing us allows us to measure the impact of the research and encourages others to use the library.

Cite us: @software{lemons_2025_14906931, author = {Dufour, Oscar and Stapelle, Maxime and Nicolas, Alexandre}, title = {LEMONS - An open-source platform to generate non-circuLar, anthropometry-based pEdestrian shapes and simulate their Mechanical interactiONS in two dimensions}, month = {jul}, year = {2025}, version = {v1.0.0}, }

An example of a generated crowd

Project icon

An example of a crowd simulation

An example of a crowd simulation.

An example of a 3D crowd

A crowd in 3D.

License

Every part of LEMONS is available under the CeCILL-B license.

Owner

  • Name: Oscar Dufour
  • Login: odufour7
  • Kind: user
  • Location: Institut Lumière Matière

Citation (CITATION.cff)

cff-version: 1.3.4
title: lemons
message: >-
  If you use this software, please cite it using the metadata from this file.
type: software
authors:
  - family-names: Dufour
    given-names: Oscar
    email: oscardufour7@gmail.com
    affiliation: Institute of Light and Matter, CNRS UMR 5306, University Claude Bernard Lyon 1
    orcid: https://orcid.org/0000-0003-1543-4912
  - family-names: Stapelle
    given-names: Maxime
    affiliation: Institute of Light and Matter, CNRS UMR 5306, University Claude Bernard Lyon 1
    orcid: https://orcid.org/1234-5678-9101-1122
  - family-names: Nicolas
    given-names: Alexandre
    email: alexandre.nicolas@univ-lyon1.fr
    affiliation: Institute of Light and Matter, CNRS UMR 5306, University Claude Bernard Lyon 1
    orcid: https://orcid.org/0000-0002-8953-3924
identifiers:
  - type: doi
    value: 10.1038/s41597-025-04732-3
repository-code: >-
  https://github.com/odufour7/LEMONS
abstract: >-
  The rise of large-scale events demands innovative safety tools
  to optimise crowd flow. Traditional models rely on oversimplified
  circular agents, ignoring body shape heterogeneities and thereby
  misjudging flow or crowd density. To address this gap, we present
  a software for more realistic crowd simulations. A user-friendly
  graphical interface enables the creation of 2D and 3D pedestrian
  crowds from anthropometric data. Then, a C++ library (Python-compatible)
  handles mechanical contacts, resolving agent-to-agent and agent-to-obstacle
  collisions in 2D spaces. Users can extend simulations by integrating
  decision-making algorithms from established crowd models.
keywords:
  - anthropometry
  - crowd dynamics
  - mechanical interactions
  - bideltoid breadth
  - chest depth
licence: CeCILL-B
version: 1.0.0

GitHub Events

Total
  • Member event: 1
  • Push event: 19
  • Create event: 1
Last Year
  • Member event: 1
  • Push event: 19
  • Create event: 1

Dependencies

.github/workflows/pytest.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
pyproject.toml pypi
  • breathe >=4.36.0
  • cmcrameri >=1.9
  • codespell >=2.4.1
  • dicttoxml >=1.7.16
  • exhale >=0.3.7
  • gprof2dot >=2025.4.14
  • jupyter >=1.1.1
  • kaleido ==0.2.1
  • kivy >=2.3.1
  • matplotlib >=3.10.3
  • mypy >=1.15.0
  • myst-parser >=4.0.1
  • nbsphinx >=0.9.6
  • nbsphinx-link >=1.3.1
  • numpy >=2.2.6
  • numpydoc >=1.8.0
  • pandas >=2.2.3
  • pathlib >=1.0.1
  • plotly >=6.1.1
  • pre-commit >=4.2.0
  • pylint >=3.3.7
  • pymermaider >=0.1.4
  • pytest >=8.3.5
  • pytest-cov >=6.1.1
  • pyvista >=0.45.2
  • ruff >=0.11.10
  • scipy >=1.15.3
  • shapely >=2.1.1
  • sphinx >=8.2.3
  • sphinx-autodoc-typehints >=3.2.0
  • sphinx-mdinclude >=0.6.2
  • sphinx-rtd-theme >=3.0.2
  • streamlit >=1.45.1
  • streamlit-option-menu >=0.4.0
  • watchdog >=6.0.0
  • xmltodict >=0.14.2
requirements.txt pypi
  • alabaster ==1.0.0
  • altair ==5.5.0
  • anyio ==4.9.0
  • appnope ==0.1.4
  • argon2-cffi ==23.1.0
  • argon2-cffi-bindings ==21.2.0
  • arrow ==1.3.0
  • astroid ==3.3.10
  • asttokens ==3.0.0
  • async-lru ==2.0.5
  • attrs ==25.1.0
  • babel ==2.17.0
  • beautifulsoup4 ==4.13.3
  • bleach ==6.2.0
  • blinker ==1.9.0
  • breathe ==4.36.0
  • cachetools ==5.5.2
  • certifi ==2025.1.31
  • cffi ==1.17.1
  • cfgv ==3.4.0
  • charset-normalizer ==3.4.1
  • click ==8.1.8
  • cmcrameri ==1.9
  • codespell ==2.4.1
  • comm ==0.2.2
  • contourpy ==1.3.1
  • coverage ==7.8.0
  • cycler ==0.12.1
  • debugpy ==1.8.13
  • decorator ==5.2.1
  • defusedxml ==0.7.1
  • dicttoxml ==1.7.16
  • dill ==0.4.0
  • distlib ==0.3.9
  • docutils ==0.21.2
  • executing ==2.2.0
  • exhale ==0.3.7
  • fastjsonschema ==2.21.1
  • filelock ==3.18.0
  • filetype ==1.2.0
  • fonttools ==4.56.0
  • fqdn ==1.5.1
  • gitdb ==4.0.12
  • gitpython ==3.1.44
  • gprof2dot ==2025.4.14
  • h11 ==0.14.0
  • httpcore ==1.0.7
  • httpx ==0.28.1
  • identify ==2.6.9
  • idna ==3.10
  • imagesize ==1.4.1
  • iniconfig ==2.1.0
  • ipykernel ==6.29.5
  • ipython ==9.0.2
  • ipython-pygments-lexers ==1.1.1
  • ipywidgets ==8.1.5
  • isoduration ==20.11.0
  • isort ==6.0.1
  • jedi ==0.19.2
  • jinja2 ==3.1.6
  • json5 ==0.10.0
  • jsonpointer ==3.0.0
  • jsonschema ==4.23.0
  • jsonschema-specifications ==2024.10.1
  • jupyter ==1.1.1
  • jupyter-client ==8.6.3
  • jupyter-console ==6.6.3
  • jupyter-core ==5.7.2
  • jupyter-events ==0.12.0
  • jupyter-lsp ==2.2.5
  • jupyter-server ==2.15.0
  • jupyter-server-terminals ==0.5.3
  • jupyterlab ==4.3.6
  • jupyterlab-pygments ==0.3.0
  • jupyterlab-server ==2.27.3
  • jupyterlab-widgets ==3.0.13
  • kaleido ==0.2.1
  • kivy ==2.3.1
  • kivy-garden ==0.1.5
  • kiwisolver ==1.4.8
  • lxml ==5.4.0
  • markdown-it-py ==3.0.0
  • markupsafe ==3.0.2
  • matplotlib ==3.10.3
  • matplotlib-inline ==0.1.7
  • mccabe ==0.7.0
  • mdit-py-plugins ==0.4.2
  • mdurl ==0.1.2
  • mistune ==3.1.3
  • mypy ==1.15.0
  • mypy-extensions ==1.0.0
  • myst-parser ==4.0.1
  • narwhals ==1.30.0
  • nbclient ==0.10.2
  • nbconvert ==7.16.6
  • nbformat ==5.10.4
  • nbsphinx ==0.9.6
  • nbsphinx-link ==1.3.1
  • nest-asyncio ==1.6.0
  • nodeenv ==1.9.1
  • notebook ==7.3.3
  • notebook-shim ==0.2.4
  • numpy ==2.2.6
  • numpydoc ==1.8.0
  • overrides ==7.7.0
  • packaging ==24.2
  • pandas ==2.2.3
  • pandocfilters ==1.5.1
  • parso ==0.8.4
  • pathlib ==1.0.1
  • pexpect ==4.9.0
  • pillow ==10.4.0
  • platformdirs ==4.3.6
  • plotly ==6.1.1
  • pluggy ==1.5.0
  • pooch ==1.8.2
  • pre-commit ==4.2.0
  • prometheus-client ==0.21.1
  • prompt-toolkit ==3.0.50
  • protobuf ==5.29.3
  • psutil ==7.0.0
  • ptyprocess ==0.7.0
  • pure-eval ==0.2.3
  • pyarrow ==19.0.1
  • pycparser ==2.22
  • pydeck ==0.9.1
  • pygments ==2.19.1
  • pylint ==3.3.7
  • pyparsing ==3.2.1
  • pytest ==8.3.5
  • pytest-cov ==6.1.1
  • python-dateutil ==2.9.0.post0
  • python-json-logger ==3.3.0
  • pytz ==2025.1
  • pyvista ==0.45.2
  • pyyaml ==6.0.2
  • pyzmq ==26.3.0
  • referencing ==0.36.2
  • requests ==2.32.3
  • rfc3339-validator ==0.1.4
  • rfc3986-validator ==0.1.1
  • roman-numerals-py ==3.1.0
  • rpds-py ==0.23.1
  • ruff ==0.11.10
  • scipy ==1.15.3
  • scooby ==0.10.0
  • send2trash ==1.8.3
  • setuptools ==78.0.2
  • shapely ==2.1.1
  • six ==1.17.0
  • smmap ==5.0.2
  • sniffio ==1.3.1
  • snowballstemmer ==2.2.0
  • soupsieve ==2.6
  • sphinx ==8.2.3
  • sphinx-autodoc-typehints ==3.2.0
  • sphinx-mdinclude ==0.6.2
  • sphinx-rtd-theme ==3.0.2
  • sphinxcontrib-applehelp ==2.0.0
  • sphinxcontrib-devhelp ==2.0.0
  • sphinxcontrib-htmlhelp ==2.1.0
  • sphinxcontrib-jquery ==4.1
  • sphinxcontrib-jsmath ==1.0.1
  • sphinxcontrib-qthelp ==2.0.0
  • sphinxcontrib-serializinghtml ==2.0.0
  • stack-data ==0.6.3
  • streamlit ==1.45.1
  • streamlit-option-menu ==0.4.0
  • tabulate ==0.9.0
  • tenacity ==9.0.0
  • terminado ==0.18.1
  • tinycss2 ==1.4.0
  • toml ==0.10.2
  • tomlkit ==0.13.2
  • tornado ==6.4.2
  • traitlets ==5.14.3
  • types-python-dateutil ==2.9.0.20241206
  • typing-extensions ==4.12.2
  • tzdata ==2025.1
  • uri-template ==1.3.0
  • urllib3 ==2.3.0
  • virtualenv ==20.29.3
  • vtk ==9.4.2
  • watchdog ==6.0.0
  • wcwidth ==0.2.13
  • webcolors ==24.11.1
  • webencodings ==0.5.1
  • websocket-client ==1.8.0
  • widgetsnbextension ==4.0.13
  • xmltodict ==0.14.2
uv.lock pypi
  • 199 dependencies