19
ⓒ 2012 FunctionBay, Inc. Particle Dynamics with MBD and FEA Using CUDA Graham Sanborn, PhD Senior Research Engineer Solver 2 (MFBD) Team FunctionBay, Inc., S. Korea

Particle Dynamics with MBD and FEA Using CUDAon-demand.gputechconf.com/gtc/...Dynamics-with-MBD-and-FEA-Usin… · Particle Dynamics with MBD and FEA ... Dynamics = MBD + FEA –MBD

Embed Size (px)

Citation preview

ⓒ 2012 FunctionBay, Inc.

Particle Dynamics with MBD and FEA Using CUDA

Graham Sanborn, PhD Senior Research Engineer Solver 2 (MFBD) Team FunctionBay, Inc., S. Korea

ⓒ 2012 FunctionBay, Inc.

Overview

• MFBD: Multi-Flexible-Body Dynamics

– Rigid & flexible body motion simulation tool

• Adding Particles Dynamics to MFBD via the GPU

– Adds high value to MFBD

– Excellent match for GPU computing

– Low implementation cost

• Issues and examples of the particle dynamics with MFBD

Vehicle model courtesy of Jacob Hustad

ⓒ 2012 FunctionBay, Inc.

What is MFBD?

• MFBD: Multi-Flexible-Body Dynamics = MBD + FEA – MBD = Multi-body dynamics

– FEA = Finite element analysis

• Compute – Motion

– Forces, stresses, strains

• For systems of bodies – Both rigid and flexible

• Interactions through – Joints

– Contact

ⓒ 2012 FunctionBay, Inc.

What is MFBD Used For?

• Design – Motion prediction

– Durability

– Optimization

– Safety factor

– Control systems

• Performance analysis – Failure analysis

• Key reasons for MFBD: – When motion & system level

analysis are important

– High-speed, complex contact, complex boundary conditions

ⓒ 2012 FunctionBay, Inc.

The MFBD Environment

• Strong coupling of system variables – Nonlinear systems

• Rotation, nonlinear constraints • Nonlinear deformation, materials

• Implicit differential-algebraic equation (DAE) solvers – Alpha-family of steppers

• Newmark, generalized-alpha

– Requires heavy use of Newton-Raphson nonlinear system solvers

• Sparse direct multi-frontal linear system solver

• Small systems of equations – 1,000’s ~ 1,000,000’s of variables

• Long simulation times – 1,000’s ~ 1,000,000’s of time steps

T T

T T T T

e e

e

r

e r

e eee er

e ree e

eeee ee

r r rr rrr er

e r rr rr

rr er er

er er

q q

q

z z

q

q q

F FΦ 0 Φ

q qq F

Φ 0 0 0 0λ Φ

F F q F0 B Φ B Φ

q q λ Φ

0 0 Φ 0 0 λ Φ

Φ 0 Φ 0 0

ⓒ 2012 FunctionBay, Inc.

MFBD + GPU Computing

• Goal:

– Add value to MFBD through the computational power of the GPU.

• First application:

– Particle dynamics

ⓒ 2012 FunctionBay, Inc.

Particle Dynamics for MFBD

• Particles:

– High value for MFBD code

• Solve more complex problems

• Earthmovers, lubrication, wheel-soil interaction, tank sloshing, toner systems …

Vehicle model courtesy of Jacob Hustad

ⓒ 2012 FunctionBay, Inc.

Particle Dynamics for MFBD

• Particles:

– Expensive on the CPU

• More particles = more useful

• Huge number of particles & variables

• Loose coupling of equations

• Particles interact through forces (not joints)

– Excellent fit for GPU computing

– Implementation cost relatively low

• Particle formulations:

– Granular solids: DEM (Discrete element method)

• Dirt, sand, rocks, toner

– Fluids: SPH (Smoothed particle hydrodynamics)

• Lubrication, flows, slosh, splash

ⓒ 2012 FunctionBay, Inc.

Co-Simulation of Particles and MFBD

• Key Issue: Time stepping

– MFBD

• CPU

• Implicit integrator

• Large steps

• Variable time step size 10-2 ~ 10-4 sec

– Particles

• GPU

• Explicit integrator

• Small steps

• Fixed time step size 10-5 ~ 10-7 sec

MFBD Particle

Position

Forces

ⓒ 2012 FunctionBay, Inc.

Co-Simulation

MFBD (CPU Side) Particle (GPU Side) MFBD Particle

Position

Forces

ⓒ 2012 FunctionBay, Inc.

Co-Simulation Stepping Algorithm

MFBD Particle

Position

Forces

MFBD Step Particle Steps

ti ti+1 ti ti+1

Transfer MFBD surface positions to particle solver (on GPU).

Solve MFBD motion from ti to ti+1. Particle contact forces considered constant.

Solve particle motion between ti and ti+1. Linearly interpolate MFBD contact surfaces from ti to ti+1.

1.

2.

3.

Transfer particle-to-surface forces at ti+1 to MFBD solver 4.

ⓒ 2012 FunctionBay, Inc.

Particle Stepper

• Per step (all on GPU):

– Identify contacts

– Compute contact forces

– Compute positions at next time step

• Explicit stepper

ⓒ 2012 FunctionBay, Inc.

Contact Algorithm Details

• Particle-to-MFBD-surface contact algorithm:

– Particle shape: spherical

– MFBD body surface: triangles

– Contact search: sphere-to-triangle

– Force: penalty-based

Penetration depth

ⓒ 2012 FunctionBay, Inc.

Particle-to-MFBD-Surface Contact

• Linear interpolation of body position from ti to ti+1

– Rigid bodies:

• Interpolate center point and orientation

– Flexible bodies:

• Interpolate nodal positions

ⓒ 2012 FunctionBay, Inc.

Examples

• Particle computational performance

– Test hardware:

• GPU: Tesla C2050

• CPU: Intel i5 760 (Quad-core, 2.8GHz)

• RAM: 8GB

– Test problem:

• Particle step size: 10-6 sec

• Simulation tend: 1 sec

• # time steps: 1,000,000

# Spheres Computation Time (Hours)

1,000 0.45

2,000 0.50

5,000 0.67

10,000 0.90

20,000 1.83

50,000 4.67

100,000 9.12

200,000 22.00

500,000 46.83

ⓒ 2012 FunctionBay, Inc.

Examples Hardware:

GPU: Tesla C2050

CPU: Intel i5 760 (Quad-core, 2.8GHz)

RAM: 8GB

Particles In Box Waterfall Washing machine

Tanker truck Camera Camera Gears

# Spheres 9900 52000 25100 53000 8640 10296

Radius of Spheres (mm) 6.25 10 6.5 22.5 1 0.15

Simulation tend (sec) 0.3 2 2 5 3 1

MBD Step Size (sec) 10-3 10-3 10-3 10-3 10-3 10-3

Particle Step Size (sec) 6.67x10-6 2.89x10-6 2.35x10-6 8.54x10-6 6.67x10-6 5.82x10-9

Comp. Time (hours) 0.27 5.85 4.5 4.4 3.67 24.0

ⓒ 2012 FunctionBay, Inc.

Implementation Status, Future Direction

• Current Status:

– DEM + MBD (rigid only)

– Single GPU only

• Next Targets:

– MFBD (add flexible body interaction)

– SPH

– Multi-GPU support

ⓒ 2012 FunctionBay, Inc.

Conclusion

• Particle Dynamics:

– Adds high value to MFBD

– Excellent match for GPU computing

– Low implementation cost

– Co-simulation to combine MFBD solver and particle solver

ⓒ 2012 FunctionBay, Inc.

Thank You