Volver al ranking

projectchrono/chrono

C++projectchrono.org

High-performance C++ library for multiphysics and multibody dynamics simulations

simulationphysics-simulationmodelingroboticsphysics-enginemultibody-dynamicsgranular-dynamicsflexible-bodyfluid-solid-interactionvehicle-dynamics
Crecimiento de estrellas
Estrellas
2.9k
Forks
617
Crecimiento semanal
Issues
12
1k2k
sept 2013dic 2017abr 2022jul 2026
README

Project CHRONO

pipeline status BSD License

Distributed under a permissive BSD license, Chrono is an open-source multi-physics package used to model and simulate:

  • dynamics of large systems of connected rigid bodies governed by differential-algebraic equations (DAE)
  • dynamics of deformable bodies governed by partial differential equations (PDE)
  • granular dynamics using either a non-smooth contact formulation resulting in differential variational inequality (DVI) problems or a smooth contact formulation resulting in DAEs
  • fluid-solid interaction problems whose dynamics is governed by coupled DAEs and PDEs
  • first-order dynamic systems governed by ordinary differential equations (ODE)
  • sensors (camera, LiDAR, GPS, IMU, SPAD) to support simulation in robotics and autonomous agents via a ROS2 interface

Chrono provides a mature and stable code base that continues to be augmented with new features and modules. The core functionality of Chrono provides support for the modeling, simulation, and visualization of rigid and flexible multibody systems with additional capabilities offered through optional modules. These modules provide support for additional classes of problems (e.g., granular dynamics and fluid-solid interaction), modeling and simulation of specialized systems (such as ground vehicles and robots), co-simulation, run-time visualization, post-processing, interfaces to external linear solvers, or specialized parallel computing algorithms (multi-core, GPU, and distributed) for large-scale simulations.

Used in many different scientific and engineering problems by researchers from academia, industry, and federal government, Chrono has mature support for multibody dynamics, finite element analysis, granular dynamics, fluid-solid interaction, ground vehicle simulation, robotics, embodied AI, and terramechanics.

Implemented almost entirely in C++, Chrono also provides Python and C# APIs. The build system is based on CMake. Chrono is platform-independent and is actively tested on Linux, Windows, and MacOS using a variety of compilers.

Documentation

Agent Guidance

If you are using a coding agent to work with this repository, see AGENTS.md. It describes the recommended workflow for both Chrono developers and external users, including build setup, template projects, module manuals, demos, and contribution expectations. If you use Claude locally, the recommended setup is to create a local symlink instead of a copy:

ln -s AGENTS.md CLAUDE.md

Support

Note on Chrono repository structure

The structure of the Chrono git repository was changed as follows:

  • The main development branch is now called main (previously develop)
  • The master branch, now obsolete, was deleted
  • Releases are located in branches named release/*.* and have tags of the form *.*.*
Repositorios relacionados
PavelDoGreat/WebGL-Fluid-Simulation

Play with fluids in your browser (works even on mobile)

JavaScriptnpmMIT Licensefluidwebgl
paveldogreat.github.io/WebGL-Fluid-Simulation/
16.5k1.9k
OpenRCT2/OpenRCT2

An open source re-implementation of RollerCoaster Tycoon 2 🎢

C++GNU General Public License v3.0c-plus-plusgame
openrct2.io
16k1.9k
bulletphysics/bullet3

Bullet Physics SDK: real-time collision detection and multi-physics simulation for VR, games, visual effects, robotics, machine learning etc.

C++Othersimulationrobotics
bulletphysics.org
14.6k3.1k
jrouwe/JoltPhysics

A multi core friendly rigid body physics and collision detection library. Written in C++. Suitable for games and VR applications. Used by Horizon Forbidden West and Death Stranding 2.

C++MIT Licensephysicsvr
11k813
taojy123/KeymouseGo

类似按键精灵的鼠标键盘录制和自动化操作 模拟点击和键入 | automate mouse clicks and keyboard input

PythonPyPIGNU General Public License v2.0pythonkeyboard
taojy123.github.io/KeymouseGo
10.4k1.3k
ange-yaghi/engine-sim

Combustion engine simulator that generates realistic audio.

C++MIT Licenseenginesimulation
engine-sim.parts
9.5k903
a-b-street/abstreet

Transportation planning and traffic simulation software for creating cities friendlier to walking, biking, and public transit

Rustcrates.ioApache License 2.0traffic-simulationgame
a-b-street.github.io/docs/
8.1k379
citybound/citybound

A work-in-progress, open-source, multi-player city simulation game.

Rustcrates.ioGNU Affero General Public License v3.0citysimulation
cityboundsim.com
8.1k361
OpenTTD/OpenTTD

OpenTTD is an open source simulation game based upon Transport Tycoon Deluxe

C++Otheropenttdsimulation
openttd.org
8.1k1.2k
pshenok/server-survival

Tower defense game that teaches cloud architecture. Build infrastructure, survive traffic, learn scaling.

JavaScriptnpmMIT Licenseawscloud
pshenok.github.io/server-survival/
6.2k697
The-Powder-Toy/The-Powder-Toy

Written in C++ and using SDL, The Powder Toy is a desktop version of the classic 'falling sand' physics sandbox, it simulates air pressure and velocity as well as heat.

C++GNU General Public License v3.0simulationgame
powdertoy.co.uk
5.2k879
ProjectPhysX/FluidX3D

The fastest and most memory efficient lattice Boltzmann CFD software, running on all GPUs and CPUs via OpenCL. Free for non-commercial use.

C++Othercfdcomputational-fluid-dynamics
youtube.com/@ProjectPhysX
5.2k468