70
Laboratorio de Ingeniería Mecánica Universidade da Coruña http://lim.ii.udc.es LIM EFFICIENT IMPLEMENTATIONS AND CO-SIMULATION TECHNIQUES IN MULTIBODY SYSTEM DYNAMICS Francisco Javier González Varela Doctoral thesis University of A Coruña Ferrol, May 3 rd , 2010

Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

EFFICIENT IMPLEMENTATIONS ANDCO-SIMULATION TECHNIQUES INMULTIBODY SYSTEM DYNAMICS

Francisco Javier González Varela

Doctoral thesisUniversity of A Coruña

Ferrol, May 3rd, 2010

Page 2: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Introduction

Software Architecture for MBS Simulation

Linear Algebra Implementations

Parallelization

Integration with MATLAB/Simulink

Multirate Co-simulation Methods

Conclusions and Future Research

Outline

Page 3: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Motivation

Multibody systems (MBS) dynamic simulation is present in a wide range of applications today

MBS simulation is heavily dependent on available software featuresSimulated systems are very complex and often multi-disciplinaryHigh efficiency required in real-time applications and what-if analyses

Page 4: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Objectives of this thesis

Two main goals in current research in MBS dynamic simulationEfficiencyAddition of new functionality (multiphysics, contact, impacts, etc.)

1- Efficient implementations in MBS softwareLinear Algebra routinesParallelization

2 - Communication with external packagesComparison of available communication techniquesMultirate co-simulation

Intermediate goal: MBS software architecture

Page 5: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Outline

Introduction

Software Architecture for MBS Simulation

Linear Algebra Implementations

Parallelization

Integration with MATLAB/Simulink

Multirate Co-simulation Methods

Conclusions and Future Research

Page 6: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Software requirements

Research software for MBS simulation

Modular

Open

Collaborative

Platform-independent

Object-orientedparadigm

C++

Flexibility - Efficiency

Page 7: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Structure of the simulation software

Modular structure

Model

Basic MBS functionality

, , ,...M Q Φ

Interface

Dynamic formulationT+ =qMq Φ λ Q

Interface

Numerical integrator( )1 1,n n n+ +=q f q q

Additional functionality

Generation of equations of motion

I/O routines

Flexibility

- Evaluation of dynamic terms- Storage of generalized positions- Global, natural coordinates

- Storage of dynamic terms- Evaluation of accelerations

- Integration of the motion

Page 8: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Outline

Introduction

Software Architecture for MBS Simulation

Linear Algebra Implementations

Parallelization

Integration with MATLAB/Simulink

Multirate Co-simulation Methods

Conclusions and Future Research

Page 9: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Linear algebra operations in MBS simulation

MBS codes make intensive use of linear algebra operationsLow-level scalar-matrix-vector operationsSolution of linear systems of equations

Reference Fortran implementationDense: IMSL solverSparse: MA27 solver

T=B A A=Ax b

Fraction of elapsed time in computations

Residual and tangent matrixFactorization and back-substitutionsVelocity and acceleration projectionsOther

Dense Sparse

48%44%4%4%

15%51%13%21%

Page 10: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Benchmark setup: test problem

2D assembly of four-bar linkages

1 degree of freedom; variable number of loops and size

Simulation time: 20 s

g = 9.81 N/kg

x

y

Loop 1 Loop L

A0 A1

B0 B1

AL-1 AL

BL-1 BL

Page 11: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Benchmark setup: dynamic formulation

Index-3 augmented Lagrangian (natural coordinates)

Trapezoidal rule as integrator (implicit)

Newton-Raphson iteration with approximate tangent matrix (SPD)

Mass-orthogonal projection of velocities and accelerations

T T *

* *1 1; 0,1,2,...ii i i

αα+ +

+ + =

= + =q qMq Φ Φ Φ λ Q

λ λ Φ

( ) ( )1

2 2 2T

1 1 1 1ˆ( ) 4 4 4n nn n n n

t t tα++ + + +∆ ∆ ∆= + + − +qf q Mq Φ Φ λ Q Mq

( )2

T( )2 4t t α⎡ ⎤

⎢ ⎥⎣ ⎦

∂ ∆ ∆≅ + + +∂ q qf q M C Φ Φ Kq

( )

2 2* T

2 2* T

( )2 4 4

( )2 4 4

t

t

t t t

t t t

α

α

⎡ ⎤⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦ ⎣ ⎦

⎡ ⎤⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦ ⎣ ⎦

∂ ∆ ∆ ∆= + + −∂

∂ ∆ ∆ ∆= + + − +∂

q

q q

f q q M C K q Φ Φq

f q q M C K q Φ Φ q Φq

Page 12: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Efficient dense implementations

Dense storage is supposed to be faster for small problems

Standard libraries for linear algebra operations:Low-level scalar-matrix-vector operations: BLAS

Linear equation solvers: LAPACK

BLAS/LAPACK are available in several implementations:Reference Original Fortran77 implementation (not tuned)ATLAS Tuned for different hardware architecturesGotoBLAS Tuned for different CPUsACML Tuned for AMD CPUsOther

Page 13: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

0

1

2

3

4

5

0 5 10 15 20 25 30 35 40 45

Number of variables N

CPU

tim

e (s

)

Starting implementationATLAS+Ref.ATLAS+ATLASACML+Ref.Ref.+Ref.GotoBLAS+Ref.ACML+ACML

Performance of BLAS/LAPACK implementations

As a function of problem size

Page 14: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Efficient sparse implementations

Sparse linear equation solver is critical (50% of CPU)

Use of optimized matrix handling routinesA + B

ATA

Access to Jacobian matrix

Different solvers have been tested (all CCS)

Sparse linear solver

CholmodMatrix type

Symmetric positive definiteKLU

SuperLUUmfpackWSMP

GeneralGeneralGeneral

Symmetric indefinite

Page 15: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

0

12

3

4

56

7

8

910

11

12

0 20 40 60 80 100 120 140 160

Number of variables N

CPU

tim

e (s

)UMFPACK

SuperLU

WSMP

Starting implementation

CHOLMOD

KLU

Performance of sparse linear solvers

As a function of problem size

Page 16: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Effect of matrix filling on sparse implementations

The percentage of non-zeros in the test problem is smallGlobal formulation6% of non-zeros for N = 100 variables

The % of non-zeros can increaseRecursive and semi-recursive formulationsSome methods for flexible bodies

Modification of the test problemAddition of artificial non-zeros to the leading matrixEvaluation of solver performance vs. % of non-zeros

Page 17: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

KLU

CHOLMOD

WSMP

SuperLUFastest dense implementation

0

5

10

15

20

25

30

0 20 40 60 80 100

% of non-zeros in the tangent matrix

CPU

tim

e (s

)

Effect of matrix filling on sparse implementations

As a function of percentage of non-zeros (N = 100)

Page 18: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Best linear equation solver

As a function of problem size and % of non-zeros in leading matrix

Page 19: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Best linear equation solver

As a function of problem size and % of non-zeros in leading matrixWithout KLU refactor routine

Page 20: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Conclusions

Efficient linear algebra implementations can speedup simulationsWith respect to our starting implementation, in a factor of 2 – 3

Sparse solvers have performed better: KLU, Cholmod, WSMPSelection rule based on matrix type, size (N) and non-zeros (NNZ)

Future work:Test the optimization with recursive and/or flexible formulations

Type of leading matrix

Symmetric positive definite

SymmetricUnsymmetric

< 900 > 900

KLU (smooth problems)

KLUKLU

WSMP

WSMPKLU

N· (NNZ – 10)

Cholmod (rough problems)

Page 21: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Outline

Introduction

Software Architecture for MBS Simulation

Linear Algebra Implementations

Parallelization

Integration with MATLAB/Simulink

Multirate Co-simulation Methods

Conclusions and Future Research

Page 22: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Non-intrusive parallelization in MBS simulations

In MBS, parallel computing is usually achieved throughParallel algorithms: recursive formulations, sub-structuring…Implemented with Message Passing Interface (MPI)

These are intrusive methodsThey require particular code designs and implementationsDifficult to apply to existing sequential codes

Objective: parallelization of existing sequential codes with minimum effort

Use of non-intrusive techniques (with minor changes in the code)• Not as efficient as intrusive methods• Easy to apply to existing sequential MBS simulation tools

Page 23: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Benchmark setup

Same problem and dynamic formulation used in previous chapterL-loop four-bar linkageIndex-3 augmented Lagrangian formulation with projection of velocities and accelerations

Heavily optimized for sequential executionDifficult to gain advantage from parallelization

Tests in 2-core computerIntel Core Duo E6300

g = 9.81 N/kg

x

y

Loop 1 Loop L

A0 A1

B0 B1

AL-1 AL

BL-1 BL

Page 24: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Starting sequential implementation

Profiling of the initial implementation, for N variables

Task Description % of elapsed timeN = 1000 N = 8000

1 Predictor (Trapezoidal rule) 4.1 4.02 Evaluate dynamic terms 9.3 9.83 Evaluate tangent matrix 11.8 11.84 Evaluate residual vector 7.6 7.65 Factorize leading matrix 36.8 36.76 Back-substitution 5.9 5.87 Project velocities 9.4 9.38 Project accelerations 12.3 12.29 Other 2.8 2.8

Total elapsed time (s) 10.0 102.4

2 3 4 5 6 7 8 91

2 3

4

5 6

7

8 91

Integration time step

Page 25: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Parallel linear equation solvers

Different parallel solvers tested as a function of:Matrix size (number of variables N from 100 to 8,000)Matrix filling

• Filling ratio NNZ/N (NNZ = number of non-zeros in the leading matrix)

Effect of sparse pattern diminishedUse of reordering strategies: METIS, AMD…

A) Rigid bodies – Global formulationsB) Rigid bodies – Recursive formulations

Flexible bodies – Component mode synthesis

< 10

10 – 30

Type of problem and dynamic formulation NNZ / N

C) Flexible bodies – Finite element mesh 30 – 100

Page 26: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Parallel linear equation solvers: Results

Best solver as a function of size N and matrix filling NNZ/N

100

1000

10000

0 20 40 60 80 100

Num

ber o

f var

iabl

es N

Pardiso

WSMP, mt

Cholmod

WSMP, stKLU

A B C

NNZ/N

Page 27: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

0

0,5

1

1,5

0 20 40 60 80 100NNZ /N

Spee

dup

100 variables 200 variables500 variables 1000 variables2000 variables 4000 variables

Parallel linear equation solvers: Results

Speedup of Pardiso (best parallel solver) vs. best sequential solver

sequential

parallel

elapsed timeS

elapsed time=

Speedups close to 70% of the theoretical maximum, for N > 2,000

Theoretical maximum, for 2 CPUs, is 1.53

Easy replacement of solvers in code

Page 28: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

OpenMP: Description

Set of compiler directivesGuide the compiler to parallelize the code

Page 29: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

OpenMP: Description

Set of compiler directivesGuide the compiler to parallelize the code

void example1(){

#pragma omp parallel sections#pragma omp sectionfunction1();#pragma omp sectionfunction2();

}

Example

Calls 2 functions in parallel

Page 30: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

OpenMP: Description

Set of compiler directivesGuide the compiler to parallelize the code

Advantages (over MPI)Does not change the design of the codeCompiler does the hard work of parallelization in a transparent wayCan be applied incrementally

Disadvantages (over MPI)Only supports shared-memory hardware architecturesCannot achieve the same performance as MPI in some cases

Page 31: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

0,8

0,9

1,0

1,1

1,2

0 2000 4000 6000 8000

Number of variables N

Spee

dup

GNU gcc

Intel icc

OpenMP: Results

Speedup of the OpenMP parallel implementation

sequential

parallel

elapsed timeS

elapsed time=

Speedups close to 90% of the theoretical maximum

Theoretical maximum, for 2 CPUs, is 1.20

Effect of compiler toolchain

Page 32: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Conclusions

OpenMP and parallel linear equation solvers can be used in MBS simulation

Actually non-intrusive and straightforward to implementCan be applied to parallelize existing sequential codesSpeedups above 70% of maximum theoretical values

Parallel linear equation solversSuitable for N > 2000 and NNZ/N > 10

OpenMPSuitable for N > 100

Page 33: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Outline

Introduction

Software Architecture for MBS Simulation

Linear Algebra Implementations

Parallelization

Integration with MATLAB/Simulink

Multirate Co-simulation Methods

Conclusions and Future Research

Page 34: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Introduction

Multibody dynamics often needs multiphysics modelling

Mechanics Control Hydraulics Other

Multibody software Math tools, block diagram simulators, other software

Page 35: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Communication cases

Function evaluationMBS software as masterNo numerical integration in auxiliary tool

Co-simulationEach software package carries out its numerical integrationData sharing at defined synchronization points

Time

Co-simulation interface

( )ex

it 1it +

( )e ity

( )m itu ( )m ity

( )e itu

∫ External simulation tool

( )mx∫ Multibody simulation tool

( )1e it +y

( )1m it +u ( )1m it +y

( )1e it +u

Time

Function evaluation interface

it 1it +

Auxiliary simulation tool

∫ Master simulation tool

Answer Answer

Functionevaluation

Functionevaluation

Page 36: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Function evaluation

Test problem: dynamic simulation of a double-pendulum (10 s)

3 communication techniques:MATLAB EngineMATLAB CompilerMEX functions

Measure CPU times and compare to standalone C++ code

m

m

r

2r

FormulationIntegrator

Evaluation of dynamic

terms

Multibody software MATLAB

C++ files- Formulation- Integrator

M files- Model

Page 37: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Function evaluation: MATLAB Engine

MATLAB EngineInter-process communication

Easy to implement (direct call to MATLAB)Slow: parsing of instructions (overhead about 0.25 ms per call)

Application(.exe)

C++ files

MATLABEngine

- Formulation- Integrator

C++ compiler

M files- Model

Inte

rfac

e

∫ Dynterms

Dynterms

Page 38: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Function evaluation: MATLAB Compiler

MATLAB CompilerInvocation of MATLAB code translated to C and compiled into a library

Claimed to be the fastest methodChanges in MATLAB code force re-compilation

Application(.exe)

C++ files

Library(.dll)

- Formulation- Integrator

C++ compiler

M files- Model

Inte

rfac

e

∫ Dynterms

MATLAB Compiler

MATLAB libraries

(.dll)

Page 39: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Function evaluation: MEX functions

MEX functionsOriginally designed to call C code from MATLAB

More complex than previous techniques: MEX interface requiredMATLAB code is not compiled

C++ files

Library(.dll)

- Formulation- Integrator

C++ compiler

M files- Model

∫Dynterms

Dynterms

MEX library

(.mexw32)

C++ files- Interface

C++ MEX compiler

MATLAB

Start Start

Page 40: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Function evaluation: computational efficiency

Comparison of CPU-timesFor two different time-steps (∆t = 10-3 s and ∆t = 10-2 s)

MEX functions are 7 times faster than MATLAB Compiler and 25 than MATLAB Engine

MethodCPU-time

(∆t = 10-3 s) Ratio

CPU-time(∆t = 10-2 s)

Ratio

Standalone MBS code (reference) 5.02·10-2 s 1 8.40·10-3 s 1

MATLAB Engine 18.12 s 361.0 3.32 s 395.2

MATLAB Compiler 5.56 s 110.8 1.07 s 127.4

MEX functions 0.64 s 12.7 0.12 s 14.3

Page 41: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Co-simulation

Test problem: dynamic simulationL-loop four-bar linkage (MBS software)Powered by an internal combustion engine (Simulink)

Engine – gearboxsubsystem

Throttleangle-law

g = 9.81 N/kg

x

y

Loop 1 Loop L

A0 A1

B0 B1

AL-1 AL

BL-1 BL

Torque (T)

Angular speed (N)

y1

x1

Page 42: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Co-simulation: implementation techniques

Network connectionInter-process communicationUse of TCP/IP sockets

Simulink as masterMBS code compiled as a .dllEmbedded in an S-function block

MBS as masterSimulink model compiled as a .dllUse of Real-Time Workshop

Compared to monolithic counterpartsSimulink model with SimMechanics elementsC equivalent compiled with Real-Time Workshop

MBS Simulink

SimulinkMBS

MBS Simulink

Page 43: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Co-simulation

Dynamic response for a 1-loop mechanism

0 5 10 15 20 25 3010

20

30

40

50

60

70

Time (s)

Rot

atio

nal s

peed

(rad

/s)

b)

0 5 10 15 20 25 300

5

10

15

20

25

Time (s)

Thro

ttle

angl

e (º)

a)

Throttle angle

Angularvelocity

(Simulink)

(MBS software)

Page 44: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

0

10

20

30

1 2 3 4 5 6 7 8 9 10Number of loops L

Ela

psed

tim

e (s

)

SimMechanics SimMechanics + RTWNetwork connection Simulink as masterMBS as master

Co-simulation: computational efficiency

Comparison of CPU-timesFor ∆t = 1 ms 30 s simulation

Page 45: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Conclusions

Different coupling techniques with MATLAB/Simulink have been explored

Function evaluationRecommended use of MEX functions

Co-simulationAble to efficiently simulate models up to 300 global variablesSimulink as master recommended in development stages (easy to modify)MBS as master recommended for real-time applications (efficient)

Page 46: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Outline

Introduction

Software Architecture for MBS Simulation

Linear Algebra Implementations

Parallelization

Integration with MATLAB/Simulink

Multirate Co-simulation Methods

Conclusions and Future Research

Page 47: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Introduction

Weakly coupled co-simulationEach solver integrates a subsystemCommercial packages only allow exchange of data at fixed rates

Multirate integrationDifferent time-steps in each subsystemReduces the elapsed time in simulationsDifficult to implement with commercial block diagram simulators

• Non-modifiable integration schemes• Iterative coupling schemes cannot be used• Variable-step integrators not supported by interfaces

Development and test of a multirate co-simulation interface between MBS software and block diagram simulators

SIMAT

Page 48: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Multirate co-simulation interface

Weakly coupled co-simulation scheme

Co-simulation interface

(S-function)

1 1,t y

Block diagram simulator

Subsystem 1(block diagram)

Subsystem 2(multibody software)

1 1 1 1, , ,t hx x

2 2 2 2, , ,t hx x

2 2,t y 2u

1u

2 1h h>

Fast subsystem

Slow subsystem

Page 49: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Coupling strategy

Two methods:Slowest-first (SF): slow subsystem is ahead in the integrationFastest-first (FF): fast subsystem is ahead in the integration

Interpolation / Extrapolation polynomials used for approximatingthe values of the inputs between time-steps

Smoothing:Averaging of the outputs of the fast subsystem during a time-step of the slow one

Page 50: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Coupling strategy

Initial situation (slowest-first configuration)

1t

2t

Block diagram simulator

Multibody software

Co-simulation interface

eval_slave

eval_master

Time-history of

( )1 1,t y

( )2 2,t y

1

2

⎧⎨⎩

yy

1it

2jt

Page 51: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Coupling strategy

Block diagram simulator starts a time-step (h1)

1t

2t

Block diagram simulator

Multibody software

Co-simulation interface

eval_slave

eval_master

Time-history of

( )1 1,t y

( )2 2,t y

1

2

⎧⎨⎩

yy

1it

2jt

1h1

1it +

Needs i+11

1 tu

Page 52: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Coupling strategy

MBS software advances a time-step (h2)

1t

2t

Block diagram simulator

Multibody software

Co-simulation interface

eval_slave

eval_master

Time-history of

( )1 1,t y

( )2 2,t y

1

2

⎧⎨⎩

yy

1it

2jt

1h1

1it +

12jt +

Needs j+12

2 tu (extrapolation)

Page 53: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Coupling strategy

MBS software advances a time-step (h2)

1t

2t

Block diagram simulator

Multibody software

Co-simulation interface

eval_slave

eval_master

Time-history of

( )1 1,t y

( )2 2,t y

1

2

⎧⎨⎩

yy

1it

2jt

1h1

1it +

12jt +

Store 1 12 2,j jt + +y

Page 54: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Coupling strategy

The block diagram simulator can resume its time-step

1t

2t

Block diagram simulator

Multibody software

Co-simulation interface

eval_slave

eval_master

Time-history of

( )1 1,t y

( )2 2,t y

1

2

⎧⎨⎩

yy

1it

2jt

1h1

1it +

12jt +

Store 1 11 1,i it + +y

Page 55: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Coupling strategy

And more time-steps can be taken

1t

2t

Block diagram simulator

Multibody software

Co-simulation interface

eval_slave

eval_master

Time-history of

( )1 1,t y

( )2 2,t y

1

2

⎧⎨⎩

yy

1it

2jt

11it +

12jt +

Store

21it +

1h2 2

1 1,i it + +y

Page 56: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Coupling strategy

And the process starts again…

1t

2t

Block diagram simulator

Multibody software

Co-simulation interface

eval_slave

eval_master

Time-history of

( )1 1,t y

( )2 2,t y

1

2

⎧⎨⎩

yy

1it

2jt

11it +

12jt +

21it +

1h3

1it +

Page 57: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Test problem: modelling approach

Double-mass, triple-spring

assembly (linear system)

Purely mechanical

1k 2k 3k1m 2m

1x 2x

S-function

-C-

-C-

x2

x1x1_dd

1s

xo

1s

xo

1s 1

s

Co-simulationinterface

Clock

1x

1x

1xt

1x2x

1x1x

2x

2x

1 (0)x

1 (0)x

1 1 1 2 1 2 1( ( )) /x k x k x x m= + −

m1: Simulink

m2: MBS software embedded in S-function block

Page 58: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Test problem

Known analytical solution

(reference to measure error

in position and energy)

Simulation: 100 cycles of

the fast subsystem

Different co-simulation strategies evaluated in a sweep of FRFR varies from 1.5 to 100

1k 2k 3k1m 2m

1x 2x

( ) ( ) ( )( ) ( ) ( )

1 11 1 13 2

2 21 1 23 2

·cos ·cos·cos ·cos

x t C t C tx t C t C t

ω ωω ω

⎧ = +⎪⎨ = +⎪⎩

1 2 2 1/ /FR h hω ω= ≈

Page 59: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Test problem: results

There is not a ‘general purpose’ technique valid for every FRSF is suitable for FR < 50

With cubic interpolation (O3) for FR < 25Without interpolation (O0) for 25 < FR < 50

0%

1%

10%

100%

0 25 50 75FR

Posi

tion

erro

r

O0O1O2O3O4

1E-07

1E-06

1E-05

1E-04

1E-03

1E-02

1E-01

1E+00

0 25 50 75FR

Ener

gy e

rror

O0O1O2O3O4

Position error for x1 Energy error

Page 60: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Test problem: results

For FR > 50SF scheme increases position error (phase error)FF scheme increases energy error (amplification/attenuation)

Smoothing techniques can reduce error for certain combinations of FR and interpolation order

0 2 4 6 8 10 12 14 16 18 200

5

10

Time (s)

Coo

rdin

ate

x1

AnalyticalNumerical

0 2 4 6 8 10 12 14 16 18 200

5

10

Time (s)

Coo

rdin

ate

x1

AnalyticalNumerical

0 2 4 6 8 10 12 14 16 18 200

5

10

Time (s)

Coo

rdin

ate

x1

AnalyticalNumerical

FR = 90

SF +

O0

FF +

O3

Smoothing+

O3

Page 61: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Application to a multiphysics problem

Simulink model of a thermal engine + MBS model of a kart

h1 = 0.1 ms h2 = 10 ms

Page 62: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Application to a multiphysics problem

10 s simulation

Reference simulation: h1 = h2 = 0.1 ms (FR = 1; O0)Elapsed time: 158.4 s

-2,5

-2

-1,5

-1

-0,5

0

0,5

0 1 2 3 4 5 6 7 8 9 10

Time (s)

Pitc

h an

gle

(º)

0

5

10

15

20

25

30

0 1 2 3 4 5 6 7 8 9 10

Time (s)

Thro

ttle

angl

e (º)

Input: angle law of throttle pedal (Simulink)

Output: pitch angle of vehicle(ψ) (MBS software)

Page 63: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Application to a multiphysics problem

Simulation with multirate techniques (increase of h2 up to 10 ms)

Measurement of deviations with respect to reference pitch (∆ψ)

FR = 1 FR = 5 FR = 10 FR = 50 FR = 100

Elapsed time (s) 158.4 44.8 30.4 19.0 17.1

∆ψ (º) 0 0.0031 0.0055 0.0252 0.0398

-0,04

-0,02

0

0,02

0,04

0 1 2 3 4 5 6 7 8 9 10

Time (s)

Diff

eren

ce in

pitc

h an

gle

(º)

SF

O0 (Simulink)

O0 (MBS)

∆ψmax = 0.0398

FR = 100

Page 64: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

FF

O0 (Simulink)

O1 (MBS)

∆ψmax = 0.0078

-0,04

-0,02

0

0,02

0,04

0 1 2 3 4 5 6 7 8 9 10

Time (s)

Diff

eren

ce in

pitc

h an

gle

(º)

Application to a multiphysics problem

Simulation with multirate techniques (increase of h2 up to 10 ms)

Measurement of deviations with respect to reference pitch (∆ψ)

FR = 1 FR = 5 FR = 10 FR = 50 FR = 100

Elapsed time (s) 158.4 44.8 30.4 19.0 17.1

∆ψ (º) 0 0.0031 0.0055 0.0252 0.0398

FR = 100

Page 65: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Conclusions

A multirate co-simulation interface has been implemented and tested, which allows the use of

Different interpolation/extrapolation polynomial ordersFastest-first and slowest-first integration schemesSmoothing

Use of the interface demonstratedIn a simple example with analytical solutionIn a complex multiphysics model

Multirate techniques enable reductions in simulation time (up to a factor of 9, in the shown example) with acceptable derived errors

A way of finding the best co-simulation strategy beforehand is desirable

Page 66: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Outline

Introduction

Software Architecture for MBS Simulation

Linear Algebra Implementations

Parallelization

Integration with MATLAB/Simulink

Multirate Co-simulation Methods

Conclusions and Future Research

Page 67: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Conclusions and future research

A modular software tool for MBS dynamic simulation has been built

Open-source, object-oriented, implemented in C++Extensible, through the addition of new modules

Optimization of MBS simulation codes explored throughStreamlining of linear algebra routinesNon-intrusive parallelizationCommunication with math software and block diagram simulatorsMultirate integration

Page 68: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Conclusions and future research

Future research lines will focus on

Assessment of the validity of the tested optimization techniques in recursive and semi-recursive formulations

Co-simulation of complex multiphysics systems• Research on a way to determinate beforehand the optimal co-simulation

scheme when multirate techniques are introduced• Definition of general purpose indicators of the quality of the results of

the co-simulation

Page 69: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

Publications

The research conducted in this thesis has yielded the following papers

M. González, F. González, D. Dopico and A. Luaces. On the effect of linear algebra implementations in real-time multibody system dynamics. Computational Mechanics, 41(4):607-615. 2008.F. González, A. Luaces, U. Lugrís and M. González. Non-intrusive parallelization of multibody system dynamic simulations. Computational Mechanics, 44(4):493-504. 2009.F. González, M. González and A. Mikkola. Efficient coupling of multibody software with numerical computing environments and block diagramsimulators. Multibody System Dynamics, online first. 2010.F. González, M.A. Naya, A. Luaces and M. González. On the effect of multirate co-simulation techniques in the efficiency and accuracy of multibody system dynamics. Submitted to Multibody System Dynamics in March, 2010 (undergoing revision process).

Page 70: Francisco Javier González Varela Doctoral thesis - UDClim.ii.udc.es/docs/phdTheses/FranGonzalez/phd_FranGonzalez.pdf · Laboratorio de Ingeniería Mecánica LIM Universidade da Coruña

Laboratorio de Ingeniería MecánicaUniversidade da Coruña http://lim.ii.udc.esLIM

EFFICIENT IMPLEMENTATIONS ANDCO-SIMULATION TECHNIQUES INMULTIBODY SYSTEM DYNAMICS

Francisco Javier González Varela

Doctoral thesisUniversity of A Coruña

Ferrol, May 3rd, 2010