The Journal of Supercomputing

, Volume 75, Issue 3, pp 1368–1381 | Cite as

A parallel simulator for multibody systems based on group equations

  • José-Carlos Cano
  • Javier CuencaEmail author
  • Domingo Giménez
  • Mariano Saura-Sánchez
  • Pablo Segado-Cabezos


Multibody systems consist of a set of components connected through some joints, where the movement of the system is determined by those of its components. Their design is computationally demanding, and the group equations formulation facilitates the application of parallelism to reduce the simulation time. A simulator for the kinematic analysis of multibody systems on up-to-date computational nodes (multicore \(\hbox {CPU}+\hbox {GPU}\)) is presented. The movement of the components is simulated by repeatedly solving independent linear systems working on sparse matrices. The appropriate selection of the linear algebra library to be used and the degree of parallelism at each level (explicit with OpenMP and implicit with multithread libraries) help obtain important reductions in the simulation time.


Multicore GPU Linear algebra libraries Multilevel parallelism Multibody systems 



This work was supported by the Spanish MINECO and European Commission FEDER funds under Grant TIN2015-66972-C5-3-R.


  1. 1.
    Agullo E, Demmel J, Dongarra J, Hadri B, Kurzak J, Langou J, Ltaief H, Luszczek P, Tomov S (2009) Numerical linear algebra on emerging architectures: the PLASMA and MAGMA projects. J Phys Conf Ser 180(1):012037CrossRefGoogle Scholar
  2. 2.
    Anderson E, Bai Z, Bischof C, Demmel J, Dongarra JJ, Du Croz J, Grenbaum A, Hammarling S, McKenney A, Ostrouchov S, Sorensen D (1995) LAPACK user’s guide. Society for industrial and applied mathematics, Philadelphia, PAzbMATHGoogle Scholar
  3. 3.
    Bernabé G, Cano J-C, Cuenca J, Flores A, Giménez D, Saura-Sánchez M, Segado-Cabezos P (2017) Exploiting hybrid parallelism in the kinematic analysis of multibody systems based on group equations. In: International Conference on Computational Science, pp 576–585Google Scholar
  4. 4.
  5. 5.
    Dagum L, Menon R (1998) OpenMP: an industry standard API for shared-memory programming. IEEE Comput Sci Eng 5(1):46–55CrossRefGoogle Scholar
  6. 6.
    HSL (2013) A collection of Fortran codes for large scale scientific computation.
  7. 7.
  8. 8.
    Nickolls J, Buck I, Garland M, Skadron K (2008) Scalable parallel programming with CUDA. Queue 6(2):40–53CrossRefGoogle Scholar
  9. 9.
    Saura M, Celdrán AI, Dopico D, Cuadrado J (2014) Computational structural analysis of planar multibody systems with lower and higher kinematic pairs. Mech Mach Theory 71:79–92CrossRefGoogle Scholar
  10. 10.
    Saura M, Segado P, Muñoz B, Dopico D (2015) Multibody kinematics. A topological formulation based on structural-group coordinates. In: ECCOMAS Thematic Conference on Multibody Dynamics, June 2015, pp 88–99Google Scholar
  11. 11.
    Stewart D (1965) A platform with six degrees of freedom. Inst Mech Eng 180:371–386CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Department of Computing and SystemsUniversity of MurciaMurciaSpain
  2. 2.Department of Engineering and Technology of ComputersUniversity of MurciaMurciaSpain
  3. 3.Department of Mechanical EngineeringTechnical University of CartagenaCartagenaSpain

Personalised recommendations