me751 advanced computational multibody dynamics · angeles), milad rakhsha, antonio recuero, andrew...

43
ME751 Advanced Computational Multibody Dynamics September 19, 2016 Overview of the Open-Source Multi-physics Software Chrono Antonio Recuero

Upload: others

Post on 22-Mar-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

ME751 Advanced Computational

Multibody Dynamics

September 19, 2016

Overview of the Open-Source Multi-physics Software Chrono

Antonio Recuero

Page 2: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Quote of the Day

“I don't want to achieve immortality through my work. I want to achieve it through not dying.”

-- Woody Allen

2

Page 3: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Chrono

Today’s topics

Chrono Modules Parallelization Chrono::Vehicle Examples

3

Page 4: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Project Chrono – collaborative endeavor University of Wisconsin – Madison

Dan Negrut, Radu Serban, Toby Heyn (Epic), Michal Kwarta, Justin Madsen (Oshkosh), Hammad Mazhar (NVIDIA), Dan Melanz (Energid), Arman Pazouki (Cal State Los Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl (MapD), Mike Taylor

University of ParmaAlessandro Tasora, Andrea Favali (Maserati Automobili), Dario Mangoni

University of IowaHiroyuki Sugyiama, Bryan Peterson

4

Page 5: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Newton-Euler Eqs. at Work

5

Page 6: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Ground vehicle mobility challenge

6

Page 7: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Complex multi-physics, multi-scale problem Modeling Multibody dynamics Contact and friction Nonlinear FEA CFD and FSI

Numerical methods Numerical integration (DAE/ODE/PDE, implicit, adaptive) DVI solvers (complementarity) Optimization (CCQP, PDIP) Nonlinear solvers (modified Newton) Sparse linear solvers (direct, iterative, preconditioners) Collision detection

7

Page 8: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Software and computational challenges

8

We have little to no control We have full control

Superscalar Non-sequence instructions sharing functional unitsPipelining Sequence of instruction sharing functional units

Vectorization Higher operation throughput via special/fat registers

Multi-Core Parallel Computing Communication through shared caches

Acceleration (GPU/Phi) Compute devices accelerating parallel computation on one node

Multi-socket Parallel Computing Group of CPUs operate together on the same node

Supercomputing (distributed memory) Group of nodes communicate through fast interconnect MPI, Charm++, Chapel

OpenMP, MPICUDA, OpenCL + OpenMP,

MPIOpenMP, TBB, pthreads

AVX, SSE

Assembly

Assembly

• Data structures (SOA vs. AOS)• Algorithms• Heterogeneous computing• Monolithic vs Cosimulation

Page 9: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

9

ChronoStructure and Capabilities

Page 10: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Project Chrono Growing ecosystem of software tools Multi-physics simulation engine

Open source, released under permissive BSD-3 license

Provides support for simulation of Many-body dynamics Nonlinear Finite Element Analysis Fluid-Solid Interaction Problems

10

Page 11: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

What is Chrono? Middleware: can be embedded in third-party applications Modular: based on optional linking of specialized modules Expandable: via C++ inheritance Efficient: fast and robust data structures and algorithms Cross-platform: builds on Windows, Linux, OS X (MSVC, GCC, ICC,

clang)

11

Page 12: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Modular and hierarchical structure

12

Chrono API

MB

DAP

IFE

AAP

IFS

IAP

I… AP

I

Support for ClassicalMulti-Body Dynamics

Support for StructuralAnd Volumetric Elements

Support for Fluid-SolidInteraction

Future Chrono Expansion

AdvancedChrono Use

Low-Entry PointChrono Use

ToolkitChrono::Robotics

ToolkitChrono::GeoMech

ToolkitChrono::Vehicle

ToolkitChrono::Granular

ToolkitChrono::Fording

HardwareCPU, Multicore

HardwareMultiple GPU

HardwareMultiple Nodes

ChronoFEA

ChronoFSI

Chrono…

ChronoMBDChrono::Engine

EquationFormulation

EquationSolution

CollisionDetection

HPCSupport

Pre/PostProcessing

Page 13: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Chrono modulesModule DescriptionChrono::Engine Core FunctionalityCASCADE Interoperability with CAD toolsCOSIMULATION Support for co-simulationFEA Finite Element AnalysisFSI Fluid-Solid InteractionIRRLICHT Runtime Visualization with IrrlichtMATLAB Interoperability with MATLABMKL Interface to Intel MKLOGRE Runtime Visualization with OgreOPENGL Runtime Visualization with OpenGLPARALLEL Parallel (multi-core) simulation modulePOSTPROCESS Tools for post-processing (POV-Ray output, Gnuplot)PYTHON Python InteroperabilityVEHICLE Template-based Ground Vehicle Modeling and Simulation

13

Page 14: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Chrono::Engine• Modeling

• Rigid bodies, markers, forces, torques • Springs and dampers, with user-defined non-linear

features • Wide set of joints• Impose trajectories to parts and markers• Constraint motion on splines, surfaces, etc. • Constraints can have limits (ex. elbow) Custom constraint for motors, reducers etc. • Custom constraint for linear motors. • 1-DOF elements for powertrains, drivelines, etc.

• Collision detection and frictional contact

• Fast collision detection algorithms• Collision families and groups• Coloumb friction model, with stick-slip• Rolling and spinning friction• Restitution coefficients for rebouncing• Collision detection between compound shapes• Bodies activation/deactivation and sleeping

14

Page 15: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Chrono::FEA Co-rotational formulation

Bar element, Euler beam, Hexa8, Hexa20, Tetra4, Tetra10

ANCF Cable element, Shell elements (isotropic,

orthotropic, composite) Other

EAS brick element (isotropic and hyperelastic Mooney-Rivlin), Brick9

Support for concentrated and distributed loads Linear, surface, volumetric Built-in classes for pressure, gravitational

forces Support for constraints

Between two nodes, node and point on body, gradient and body direction

Support for contact (penalty-based formulation) Mesh-mesh and mesh-rigid Surfaces represented as node clouds or

triangular mesh15

Page 16: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Chrono::FSI Current State

Fluid interaction with multibody dynamics.

MBD includes contact and constraint

Supports flexible beam

Heterogeneous computing

GPU-based parallelism for fluid and OMP/AVX/SSE for MBD

Constraint-based fluid simulation

Under development

Implicit incompressible CFD approach for fluid dynamics

Support for fluid interaction with flexible plate and shell

Distributed memory implementation

16

Page 17: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Chrono::Granular Samplers for granular dynamics

Uniform grid, Poisson-disk sampling, hexagonal close packing Sampling of different bounding volumes (box, sphere, cylinder) Allows 2D sampling (rectangle, disk)

Generators for granular dynamics Create particles, using a given sampler, randomly selecting from

a mixture of ingredients with prescribed expectation Mixture ingredient: multivariate normal distributions for particle

size and contact material properties

Models library (under construction) Penetrometer tests Triaxial test Direct-shear test etc…

17

Page 18: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Chrono::Parallel• Library for OpenMP-based parallel simulation of Chrono

models

Supports a subset of Chrono modeling elements: Rigid bodies with frictional contact (DEM-C or DEM-P) Kinematic joints (revolute, spherical, translational, etc.) Force elements (spring-dampers, actuators, etc.) 1-D shafts and associated elements and constraints (shaft-body

connection, gears, motors, etc.) No support for FEA Implements only the Implicit Euler Linearized time-stepper Chrono-Parallel uses different data structures and algorithms

(SOA vs. AOS) Specialized, parallel collision detection algorithms

Broad phase: spatial binning (AABB) Narrow phase: MPR, GJK, SAT, hybrid

18

Page 19: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Chrono::Vehicle

Modeling, simulation, and visualization of wheeled and tracked ground vehicles Modular: vehicle are modeled from instances of subsystems (suspension, steering,

driveline, etc.) Flexible: use parameterized templates (optionally specified through JSON input files) Expandable, via C++ inheritance

New subsystems New templates for existing subsystems New vehicle types

19

Page 20: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Wheeled vehicle subsystems

20

Chassis

Steering subsystem

Body state

Driveshafttorque

Front suspensionsubsystem

Rear suspensionsubsystem

Tire forcesWheel state

Steering

Body forces

Tire forcesWheel state

Tire forcesWheel state Tire forcesWheel state

Drivelinesubsystem

Driveshaftspeed

Brake torqueBrake torque

Brake torque Brake torque

Page 21: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Chrono::Vehicle systems and subsystems

Vehicle system:

Wheeled vehicle Tracked vehicle

Auxiliary systems:

Tire system: rigid, LuGre, Pacejka, Fiala, FEA-based Terrain: rigid (flat, mesh, heigh-map), deformable (SCM), deformable (FEA), granular Powertrain: engine + TC + transmission Driver model: interactive, data-based, path-follower and speed controllers

Fully-coupled or co-simulation

21

VEHICLE

DRIVER POWERTRAIN

TIRES

TERRAIN

HeightNormal

Forces and moments on wheel bodies

Wheel states

Driveshaftspeed

Driveshafttorque

Throttle input

Steering inputBraking input

Page 22: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Chrono::Vehicle – ongoing developments

Deformable SCM soil model Embeds the SCM from the European Space Agency (Kren et. al.) Extensions in Chrono: non-regular, adaptive grids, optional elasticity, generic

collision algorithm, terrain specified as arbitrary mesh Deformable FEA soil model

9-node brick element Capped Drucker-Prager plasticity model

Deformable tire models ANCF-based (composite shell elements + volumetric elements for tread) Co-rotational FEA

Distributed co-simulation framework MPI communication between systems OpenMP / GPU for acceleration of system simulation

22

Page 23: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Validation of basic modeling components

Ongoing effort (see https://github.com/projectchrono/chrono-validation) Example: sample results for Double Pendulum (distance constraint)

23

“Validation of Basic Modeling Elements in Chrono,” M. Taylor and R. Serban, TR-2015-05, SBEL, UW Madison, 2015

Page 24: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Examples

24

Page 25: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Wave propagation in ordered granular material

25

Page 26: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Nonlinear FEA tire on granular terrain

26“Simulation and mobility analysis of an ANCF tire in a tire rig on deformable granular terrain,” TR-2016-07, SBEL, UW Madison, 2016

Page 27: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Cosimulation framework

27

Vehicle Node Tire Nodes

wheel state

wheel state

tire forces

tire forces

mesh node states

mesh node states

contact forces

contact forces

OpenMP

OpenMP

OpenMP / GPU / MPI

Terrain NodeMPI MPI

(deformable tires) (deformable / rigid terrain)

Page 28: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Cosimulation framework

28

Page 29: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Simulation of dense suspensions

29

Animation shows the channel mid-section

• “Dense” suspension• Finite size particles (rigid bodies)

interaction• Drafting, Kissing, and Tumbling (DKT)

• Short range interactions• Lubrication and collision

• Flow characteristics• Particle Reynolds number ≤ 1.0• Channel Reynolds number: 66

• Channel Dimension: (1.1, 1.0, 1.0) m• Volumetric concentration: 40%

• Computational aspects• 23,000 rigid ellipsoids: (1.5, 1.5, 2.0) cm• 2,000,000 SPH markers. • Simulation performed on a single GPU,

NVIDIA GTX 480 • 3.2 seconds of dynamics• 72 hrs to complete.

Page 30: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Particle migration in 2D and 3D Poiseuille flow

30

• Transient Poiseuille flow • Sphere in pipe flow,

• Effect of rigid body rotation• Cylinder in channel flow

“Flow Between Parallel Walls Containing the Lines of Neutrally Buoyant Circular Cylinders,” T. Inamuro, K. Maeba, F. Ogino, Intl. J. Multiphase Flow, 12, 2000“Direct Simulation of the Motion of Neutrally Buoyant Circular Cylinders in Plane Poiseuille Flow, “ T. Pan and R. Glowinski, J. Comput. Physics, 181(1), 2002

“Radial Particle Displacements in Poiseuille Flows of Suspensions,” G. Segre and A. Silberberg, Nature, 189, 1961“A Numerical Study of the Effect of Particle Properties on the radial Distribution of Suspension in Pipe Flow ,” A. Pazouki and D. Negrut, Computers and Fluid., 108,

2014

Page 31: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

31

Chrono Simulations

Page 32: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

HMMWV - Double lane change maneuver (rigid terrain)

32

Page 33: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

M113 – Double lane change maneuver (rigid terrain)

33

Page 34: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

M113 – Double lane change maneuver

34

“Chrono Tracked Vehicle Simulation Results Summary,” R. Serban, M. Taylor, D. Melanz, D. Negrut, TR-2016-08, SBEL, UW Madison, 2016

Page 35: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

SCM – adaptive mesh refinement

35

Page 36: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Vehicle on deformable terrain (SCM)

36

Page 37: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Vehicle on granular terrain –multicore

37

Page 38: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Vehicle on granular terrain –GPU

38

Page 39: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Liquid sloshing

39

Page 40: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Can Chrono simulate this?

40

Page 41: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Fording simulation –constrained fluid

41

Page 42: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Autonomous vehicles : formation of phantom traffic jam

42

Page 43: ME751 Advanced Computational Multibody Dynamics · Angeles), Milad Rakhsha, Antonio Recuero, Andrew Seidl(MapD), Mike Taylor University of Parma Alessandro Tasora, Andrea Favali(Maserati

Formation of phantom traffic jam

43

Virtual Traffic Study

2007 Japanese Traffic Study

(Y. Sugiyama et. al., 2007)