Skip to main content

IFOSMONDI Co-simulation Algorithm with Jacobian-Free Methods in PETSc


Co-simulation is a widely used solution to enable global simulation of a modular system via the composition of black-boxed simulators. Among co-simulation methods, the IFOSMONDI implicit iterative algorithm, previously introduced by the authors, enables us to solve the non-linear coupling function while keeping the smoothness of interfaces without introducing a delay. Moreover, it automatically adapts the size of the steps between data exchanges among the subsystems according to the difficulty of solving the coupling constraint. The latter was solved by a fixed-point algorithm, whereas this paper introduces the Jacobian-Free Methods version. Most implementations of Newton-like methods require a jacobian matrix which, except in the Zero-Order-Hold case, can be difficult to compute in the co-simulation context. As IFOSMONDI coupling algorithm uses Hermite interpolation for smoothness enhancement, we propose hereafter a new formulation of the non-linear coupling function including both the values and the time-derivatives of the coupling variables. This formulation is well designed for solving the coupling through jacobian-free Newton-type methods. Consequently, successive function evaluations consist in multiple simulations of the systems on a co-simulation time-step using rollback. The orchestrator-workers structure of the algorithm enables us to combine the PETSc framework on the orchestrator side for the non-linear Newton-type solvers with the parallel integrations of the systems on the workers’ side thanks to MPI processes. Different non-linear methods will be compared to one another and to the original fixed-point implementation on a newly proposed 2-system academic test case with direct feedthrough on both sides. An industrial model will also be considered to investigate the performance of the method.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24


  1. Anderson DGM (1965) Iterative procedures for nonlinear integral equations. J ACM 12:547–560

    MathSciNet  Article  Google Scholar 

  2. Balay S, Abhyankar S, Adams MF, Brown J, Brune P, Buschelman K, Dalcin L, Dener A, Eijkhout V, Gropp WD, Karpeyev D, Kaushik D, Knepley MG, May DA, McInnes LC, Mills R.T, Munson T, Rupp K, Sanan P, Smith BF, Zampini S, Zhang H, Zhang H (2019) PETSc Web page.

  3. Balay S, Gropp WD, McInnes LC, Smith BF (1997) Efficient management of parallelism in object oriented numerical software libraries. In: Arge E, Bruaset AM, Langtangen HP (eds) Modern software tools in scientific computing. Birkhäuser Press, pp 163–202

  4. Benedikt M, Watzenig D, Zehetner J, Hofer A (2013) NEPCE—A nearly energy-preserving coupling element for weak-coupled problems and co-simulation. In: Proceedings of the International Conference on Computational Methods for Coupled Problems in Science and Engineering. pp 1–12

  5. Busch M (2017) Performance improvement of explicit co-simulation methods through continuous extrapolation. In: IUTAM Symposium on solver-coupling and co-simulation. IUTAM Bookseries, vol 35, pp 57–80. IUTAM (2019)., iUTAM Symposium on Solver-Coupling and Co-Simulation, Darmstadt, Germany, September 18–20

  6. Éguillon Y, Lacabanne B, Tromeur-Dervout D (2019) IFOSMONDI: a generic co-simulation approach combining iterative methods for coupling constraints and polynomial interpolation for interfaces smoothness. In: 9th International Conference on Simulation and Modeling Methodologies, Technologies and Applications. pp 176–186. SCITEPRESS - Science and Technology Publications, Prague, Czech Republic,

  7. Gomes C, Thule C, Broman D, Larsen PG, Vangheluwe H (2018) Co-simulation: a survey. ACM Comput Surv (CSUR) 51(3):1–33

    Article  Google Scholar 

  8. Gu B, Asada HH (2004) Co-simulation of algebraically coupled dynamic subsystems without disclosure of proprietary subsystem models. J Dyn Syst Meas Contr 126(1):1–13.

    Article  Google Scholar 

  9. Kübler R, Schiehlen W (2000) Two methods of simulator coupling. Math Comput Model Dyn Syst 6(2):93–113.;1-M.FT093

    Article  MATH  Google Scholar 

  10. Oosterlee CW, Washio T (2000) Krylov subspace acceleration of nonlinear multigrid with application to recirculating flows. SIAM J Sci Comput 21(5):1670–1690.

    MathSciNet  Article  MATH  Google Scholar 

  11. Sadjina S, Pedersen E (2020) Energy conservation and coupling error reduction in non-iterative co-simulations. Eng Comput 36:1579–1587

    Article  Google Scholar 

  12. Sadjina S, Kyllingstad LT, Skjong S, Pedersen E (2017) Energy conservation and power bonds in co-simulations: non-iterative adaptive step size control and error estimation. Eng Comput 33(3):607–620

    Article  Google Scholar 

  13. Schierz T, Arnold M, Clauß C (2012) Co-simulation with communication step size control in an FMI compatible master algorithm. pp 205–214.

  14. Schweizer B, Lu D (2015) Predictor/corrector co-simulation approaches for solver coupling with algebraic constraints. ZAMM Zeitschrift fur Angewandte Mathematik und Mechanik 95(9):911–938.

    MathSciNet  Article  MATH  Google Scholar 

  15. Sicklinger S, Belsky V, Engelman B, Elmqvist H, Olsson H, Wüchner R, Bletzinger KU (2014) Interface Jacobian-based co-simulation. Ph.D. thesis. 10.1002/nme

  16. Viel A (2014) Implementing stabilized co-simulation of strongly coupled systems using the functional mock-up interface 2.0. In: Proceedings of the 10 th International Modelica Conference. pp 213–223. Linköping University Electronic Press. March 10 – March 12, Lund, Sweden

Download references

Author information

Authors and Affiliations


Corresponding author

Correspondence to Yohan Eguillon.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Supported by organization Siemens Industry Software.

Appendix A Parameters of the PETSc non-linear solvers

Appendix A Parameters of the PETSc non-linear solvers

The JFMs mentioned in this document (see definition in Sect. 2.1) refer to PETSc non-linear solvers, so-called ’\({\texttt {SNES}}\)’ in the PETSc framework.

The parameters of these methods where the default one, except the explicitely mentioned ones. For the sake of reproducibility, the following tables recaps these options (Tables 6, 7, 8, 9). For further definition of their meaning, see [1, 2, 10].

Table 6 Parameters of the NewtonLS method
Table 7 Parameters of the Anderson method
Table 8 Parameters of the Ngmres method (not Ngmres with line search)
Table 9 Parameters of the Ngmres with linsearch method

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Eguillon, Y., Lacabanne, B. & Tromeur-Dervout, D. IFOSMONDI Co-simulation Algorithm with Jacobian-Free Methods in PETSc. Engineering with Computers (2022).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI:


  • Co-simulation
  • Systems coupling
  • Coupling methods
  • Jacobian-free Newton
  • PETSc
  • Parallel integration
  • Strong coupling test case