A Software Framework for Implementation and Evaluation of Co-Simulation Algorithms

University dissertation from Lund University (Centre for Mathematical Sciences)

Abstract: In this thesis, simulation of coupled dynamic models, denoted sub-systems, is analyzed and described in a co-simulation context. This means that the respective coupled systems contain their own internal integrator, hidden from the coupling interface. Co-Simulation is an interesting and active research field where industry is a driving force. The problems where co-simulation is an interesting approach is two-fold. On one-hand, there is the coupling of sub-systems between tools. Consider the case where tools use different representation of the sub-systems and the problem presented by the coupling of the two. On the other hand, there is the performance issue. There is a potential performance increase for the overall system simulation when using a tailored integrator for each sub-system compared to using a general integrator for the monolithic system. The aim of this thesis is to develop a testing framework for currently used co-simulation approaches and to describe the state of the art in co-simulation. Additionally, the aim is to be able to test the approaches on industrially relevant models and academic test models. Using co-simulation for simulation of coupled systems may result in stability problems depending on the approach used, and the intention here is to describe when it occurs and how to handle it. The commonly used methods use fixed step-size for determining when information between the models are to be exchanged. A recent development for co-simulation of coupled systems using a variable step-size method is described together with the requirements for performing such a simulation. Attaining the goals of the thesis has required a substantial effort in software development to create a foundation in terms of a testing framework. For gaining access to models from industry, the newly defined Functional Mock-up Interface has been used and a tool for working with these type of models, called PyFMI, has been developed. Another part is access to integrators, necessary for evaluating the impact of the internal integrator in the sub-systems. A tool providing a unified high-level interface to various integrators has been developed and is called Assimulo. The key component is the algorithm for performing the co-simulation. It has been developed to be easily extensible and to support the currently used co-simulation methods. The developed framework has been proven to be successful in evaluating co-simulation approaches on both academic test examples and on industrially relevant models as will be shown in the thesis.