This page contains a selected list of references and abstracts of important publications in the field of object-oriented modelling. The list is ordered according to topic and within a topic according to date. Such a selection is, of course, always subjective. To get additional information, see the bibliographies provided by the research groups in this area.
Object-oriented (or physical systems) modelling was developed in the late 70s but did not gain much attention until the beginning of the 90s. Monographs or books are not yet available. Therefore, it is difficult to get the "whole" picture from one source. The following publications give an overview on object-oriented modelling:
Elmqvist H. (1978):
A structured model language for large continuous systems. PhD Thesis, Report CODEN:LUTFD2/(TFRT-1015), Department of Automatic Control, Lund Institute of Technology, Lund, Sweden, 1978.
Object-oriented modelling was "invented" with this dissertation.
Mah R.S.H. (1990):
Chemical Process Structures and Information Flows. Butterworths Verlag.
Provides an overview of object-oriented modelling from a chemical process point of view. Contains a description of the most important algorithms, like BLT-partitioning and automatic tearing.
Cellier F.E. (1991):
Continuous System Modelling. Springer Verlag, ISBN 0-387-97502-0. abstract.
An excellent textbook which covers the whole field of modelling of continuous systems. Chapters on object-oriented modelling (and on bond graph modelling) are included.
Cellier F.E., Elmqvist H., and Otter M. (1996):
Modelling from Physical Principles. In "The Control Handbook", edited by W.S. Levine, CRC Press, Boca Raton, FL, pp. 99-107. abstract; download (ps.gz 113KB, 19 pages).
A "rationale" on physical systems and object-oriented modelling.
An object-oriented model is first transformed from its declarative description form into a differential-algebraic equation (DAE) which is difficult to solve. The structure of a DAE is characterized by its index. Standard integrators, like DASSL, are only able to solve DAEs upto an index of 1. Some integrators can solve special types of index 2 and of index 3 DAEs directly. No numerical method is known to deduce the index and/or the structure of a DAE automatically and to apply an appropriate numerical method. The only practical way to handle any DAE automatically, seems to be to differentiate certain parts of a DAE in order to transform the DAE down to index 1 and to solve the resulting overdetermined set of differential algebraic equations numerically. The following publications provide techniques for such a general solution strategy:
Pantelides C.C. (1988):
The consistent initialization of differential-algebraic systems. SIAM Journal of Scientific and Statistical Computing, No. 9, pp. 213-231.
This paper describes the "Pantelides algorithm", which is the key algorithm to solve DAEs of any index. The algorithm determines the minimum amount of differentiations of the equations of a DAE to reduce the DAE to index 1. The paper focuses on the consistent initialization of DAEs. Initial values must be selected in such a way that the original DAE is fulfilled as well as all the differentiated equations determined by the Pantelides algorithm. Otherwise, the initial values are inconsistent, i.e., the underlying mathematical problem is not stated correctly and it is unlikely that a numerical method is able to solve the DAE.
Cellier F.E., and Elmqvist H. (1993):
Automated formula manipulation supports object-oriented continuous-system modelling. IEEE Control System Magazine, 13(2), pp. 28-38.
It is shown how any DAE can be solved: By appropriate symbolic differentiation of the equations determined by the Pantelides algorithm, an overdetermined DAE is obtained. By selecting state variables manually, this system can be transformed to state space form which can be solved by any "usual" integrator. The drawback of this method is that the user has to select appropriate state variables.
Mattsson S.E., and Söderlind G. (1993):
Index Reduction in Differential-Algebraic Equations Using Dummy Derivatives. SIAM Journal on Scientific Computing. Vol. 14, pp. 677-692.
Independently of Cellier/Elmqvist (1993), the same technique is developed in this paper. Additionally, it is shown how the structural information provided from the Pantelides algorithm can guide the selection of state variables. Still, the method is not fully automatic, because the selection must be done in such a way that certain matrices remain regular during the solution.
Object-oriented modelling usually leads to huge systems of differential-algebraic equations (DAE). Integration of such DAEs requires the solution of large, sparse linear systems of equations as an important subproblem. Using general purpose sparse matrix solvers is often quite unefficient because specific model structure is not utilized (e.g. if the system matrix is symmetric and positive definite). The following publications provide techniques to enhance the efficiency:
Duff I.S., Erismann A.M., and Reid J.K. (1986):
Direct Methods for Sparse Matrices. Oxford Science Publications.
This is the standard monograph on sparse matrix techniques. Contains also the description of the BLT-partitioning, the most important algorithm in object-oriented modelling, which is based on the graph-theoretical algorithm of Tarjan.
Elmqvist H., and Otter M. (1994):
Methods for Tearing Systems of Equations in Object-Oriented Modelling. Proceedings ESM'94 European Simulation Multiconference, Barcelona, Spane, June 1.-3., pp. 326-332.
Describes a technique to define structural information in a component library. Tearing reduces a "big", "sparse" system of equations down to a "small", "dense" one which is solved by a standard "dense" solver. Especially useful for drive trains, multibody systems and electric circuits (cut-set method).
Elmqvist H., Otter M., and Cellier F.E. (1995):
Inline Integration: A New Mixed Symbolic/Numeric Approach for Solving Differential-Algebraic Equation Systems. Keynote Address, Proceedings ESM'95, European Simulation Multiconference, Prague, Czech Republic, 5. - 8. Juni, pp. xxiii-xxxiv.
Proposes to discretize a model in the modeller and not in the integrator, because the modeller has more detailed information on all the equations and is able to utilize this knowledge to solve the linear systems of equations in the integrator more efficiently.
Otter M., Elmqvist H., and Cellier F.E. (1996):
Relaxing - A Symbolic Sparse Matrix Method Exploiting the Model Structure in Generating Efficient Simulation Code. Keynote Address, CESA’96 IMACS Multiconference, Symposium on Modleling, Analysis and Simulation, Lille, July 9 - 12, pp. 1-12.
Describes a technique how to define the "pivots" of the Gaussian elemination scheme in a component library. This avoids the time consuming search for an "optimal" row/column ordering to preserve sparseness and stability. Especially useful for object-oriented modelling of multibody systems, since "relaxing" leads to the important O(n) multibody algorithm class.
Nearly every "realistic" physical systems model contains some kind of discrete components besides the continuous part. Examples are discrete controllers, friction, impact, ideal diodes, ideal thyristors, phase changes. The following papers provide techniques to model such systems in an object-oriented way:
Barton P.I. (1992):
The Modelling and Simulation of Combined Discrete/Continuous Processes. PhD Thesis, University of London.
Models hybrid systems by DAEs for the continuous part and by sets of finite automatas for the discrete part of physical models.
Elmqvist H., Cellier F.E., and Otter M. (1993):
Object-Oriented Modelling of Hybrid Systems. Keynote Address, Proceedings ESS'93, European Simulation Symposium, Delft, The Netherlands, Oct. 25 - 28, pp. xxxi-xli.
Introduces higher level elements to describe discrete components. Transformation to the traditionally used low-level state events is done automatically. The method also handles events which by construction or by accident occur at the same time instant. The method is applied to variable structure systems with a big number of switching positions. It is demonstrated for systems which have several friction elements.
Elmqvist H., Cellier F.E., and Otter M. (1994):
Object-Oriented Modelling of Power-Electronic Circuits Using Dymola. Proceedings CISS'94, First Joint Conference of International Simulation Societies, Zürich, Schweiz, Aug. 22 - 25, pp. 156-161.
Applies the technique described in Elmqvist/Cellier/Otter (1993) above to handle variable structure systems with a lot of switching positions to power-electronic circuits. Such circuits contain electrical switching devices. A speed-up of 20 can be obtained by proper modelling of the ideal switching behaviour.
Andersson M. (1994):
Object-Oriented Modelling and Simulation of Hybrid Systems. PhD Thesis, Lund Institute of Technology, ISRN LUTFD2/TFRT-1043-SE.
Uses the grafcet method (= generalized petri net) to model the discrete part of a continuous system.
Otter M., and Schlegel C. (1997):
Echtzeitsimulation der Schaltkupplungen automatischer Getriebe. VDI-Tagung: Kupplungen in Antriebssystemen - Problemlösungen, Erfahrungen, Trends, Fulda, 3. - 4. März.
Applies the technique described in Elmqvist/Cellier/Otter (1993) above to the power train of a car containing an automatic gear box with 6 (frictional) clutches and 2 free wheels. This system has 2^6=64 different configurations. It is shown how the clutches and free wheels are modelled, how a consistent configuration is obtained after an event occured and how this model can be used in (realtime) hardware-in-the-loop simulations to test the electronic control system of the gearbox.
It is quite common that systems consist of a mixture of DAEs and partial differential equations (PDE), especially if the model should be solved as efficiently as possible (in such cases it is tried to model as many components as possible with DAEs instead of PDEs). If this is the case, standard PDE solvers, like finite element programs, cannot be used. In object-oriented modelling it is common to use the lumped-element method in some of these cases. In the following papers more satisfactory techniques are described:
Oh M. (1995):
Modelling and Simulation of Combined Lumped and Distributed Processes. PhD Thesis, University of London.
PDEs are defined and described without any reference to a particular solution method. At a later time instant, e.g., before the simulation starts, it is defined which type of space discretization method (finite difference/finite element) and which discretization order should be used. This unified treatment of PDEs seems to have great potential, although presently it is only practical to handle simple geometries.
Oh M., and Pantelides C.C. (1996):
A Modelling and Simulation Language for Combined Lumped and Distributed Parameter Systems. Comput. chem. Engng., 20, pp. 611-633.
A journal version of the previous PhD Thesis.
It is difficult to model mechanical systems because such systems usually have a DAE index of 3 and because the specific structure of the equations must be utilitzed in order to get an efficient solution. In the following papers it is shown how mechanical systems can be modelled with object-oriented modelling techniques. The main advantage is that this directly allows multi-domain modelling, whereas the traditional apprach via mechanical principles (like Lagrange's or Kane's equations) focuses too much on one domain which leads to difficulties when elements of other disciplines (like hydraulic or electric components) should be modelled too:
Otter M. (1994):
Object-Oriented Modelling of Drive Trains with Friction, Clutches and Brakes. Proceedings ESM’94 European Simulation Multiconference, Barcelona, Spain, June 1 - 3, pp. 335-340.
Presents a component library for drive trains, i.e., 1-dimensional rotational mechanical systems. Especially, the modelling of clutches, brakes and friction is explained.
Otter M. (1995):
Objektorientierte Modellierung mechatronischer Systeme am Beispiel geregelter Roboter. Dissertation, Fortschrittberichte VDI, Reihe 20, Nr. 147.
Shows how mechatronic systems can be handeled with the object-oriented modelling technique. Especially, the modelling of rigid variable-structure multibody systems (= 3-dimensional mechanical systems) is explained. Discrete components, like ideal diodes or friction, are modelled with extended finite automata to describe the switching behaviour.
Otter M., Elmqvist H., and Cellier F.E. (1996):
Modelling of Multibody Systems With the Object-Oriented Modelling Language Dymola. "Nonlinear Dynamics", Vol. 9, pp. 91-112.
A journal version of the previous paper "Otter (1995)", concentrating on the object-oriented modelling of variable structure multibody systems with kinematic loops.
is another general methodology for multi-domain modelling. It has greatly enhanced the understanding of physical systems modelling and is therefore also very well suited for basic modelling courses. However, for practical applications object-oriented modelling is better suited. An Exhaustive list of bibliography, conferences, research groups and software in the bond graph field can be found in the Bond Graph Compendium of Francois Cellier.