projectchrono/chrono

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

解决的问题

Project Chrono 是一个旨在对复杂物理系统进行建模和仿真的多物理场仿真软件包。它解决了模拟刚体、变形体、颗粒材料和流体之间相互作用的挑战,这些相互作用通常涉及由复杂数学方程(DAE、PDE、ODE)控制的大规模系统。

工作原理

Chrono 使用 C++ 实现,并提供 Python 和 C# API,利用多种数学公式来处理不同的物理现象:

  • 刚体与柔性多体系统:使用微分代数方程 (DAE) 和偏微分方程 (PDE)。
  • 颗粒动力学:采用非光滑接触公式 (DVI) 或光滑接触公式 (DAE)。
  • 流固耦合:结合 DAE 和 PDE 来模拟流体与固体的相互作用。
  • 机器人与自主智能体:集成传感器(摄像头、LiDAR、GPS、IMU、SPAD)并为仿真提供 ROS2 接口。

该系统支持并行计算算法(多核、GPU 和分布式),以处理大规模仿真,并为地面车辆和机器人等专用系统提供可选模块。

适用对象

从事科学和工程问题的学术界、工业界和联邦政府研究人员,特别是那些专注于多体动力学、有限元分析、颗粒动力学、流固耦合、地面车辆和具身智能的研究人员。

亮点

  • 多物理场能力:支持刚体、变形体、柔性多体系统、颗粒动力学和流固耦合。
  • 机器人集成:为自主智能体提供内置传感器仿真和 ROS2 接口。
  • 具身智能支持:为具身智能研究的仿真环境提供成熟的支持。
  • 跨平台:使用 C++ 实现,与平台无关,并提供 Python 和 C# 的 API。
  • 高性能:支持 GPU(包括 AMD ROCm)和用于大规模仿真的分布式并行计算。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目