Recursive modular modelling methodology for lumped-parameter dynamic systems
Abstract
This paper proposes a novel approach to the modelling of lumped-parameter dynamic systems, based on representing them by hierarchies of mathematical models of increasing complexity instead of a single (complex) model. Exploring the multilevel modularity that these systems typically exhibit, a general recursive modelling methodology is proposed, in order to conciliate the use of the already existing modelling techniques. The general algorithm is based on a fundamental theorem that states the conditions for computing projection operators recursively. Three procedures for these computations are discussed: orthonormalization, use of orthogonal complements and use of generalized inverses. The novel methodology is also applied for the development of a recursive algorithm based on the Udwadia–Kalaba equation, which proves to be identical to the one of a Kalman filter for estimating the state of a static process, given a sequence of noiseless measurements representing the constraints that must be satisfied by the system.
1. Introduction
Mathematical modelling has become a fundamental tool for scientific and technological projects in several areas of knowledge. Moreover, it has been acquiring increasing importance in multidisciplinary studies. Although the models of lumped-parameter1 dynamic systems can always be expressed in terms of a finite number of differential–algebraic equations (DAEs), the modelling methodologies for obtaining them still depend on the nature of the system being modelled and on the simplifying hypotheses adopted. Thus, there is an extensive framework of methodologies for the mathematical modelling of lumped-parameter dynamic systems from various areas of knowledge. On the one hand, this can be understood as an advantage, once it is possible to use modelling procedures that are suitable for each type of system. On the other hand, this might represent an obstacle when someone tries to conciliate the use of different approaches in the modelling of a complex system.
An aspect that might be explored is the modularity of systems, which, in the context of this text, can be understood as the ability of conceiving a complex system from simpler systems by the enforcement of constraints. A modular methodology is capable of transforming the mathematical models according to the constraints that are imposed, regardless of how the original models have been obtained. Consider, for instance, a multibody mechanical system, which can be conceived as a set of constrained subsystems. Such a concept not only explores the topological symmetries that often exist in these systems (figure 1) but also allows the use of already known mathematical models of subsystems (which might have been obtained by any other formalism) as the starting point for the modelling procedure. Therefore, a modular methodology might not be understood simply as another alternative for the already extensive framework of existing ones, but rather as a methodology that aims to conciliate the use of others from which the models of the modules may have been obtained. Some examples of modular modelling methodologies originally developed for multibody systems can be found on works by Orsino [1], Orsino & Hess-Coelho [2] and Udwadia et al. [3–8]. The latter works are typically referred to in the literature as the Udwadia–Kalaba equation.
Figure 1. Four examples of planar mechanisms that can be conceived from the same fundamental module (top left). (Online version in colour.)
The objective of this paper is to propose a general modular modelling methodology that must be applicable to any lumped-parameter dynamic system (i.e. to any dynamic system whose model can be expressed by a finite set of DAEs), which is also recursive. This last property will allow exploration of the modularity of a system in many levels, leading to a hierarchical representation of it in which each level has its own mathematical model, but only the model at the top one is supposed to adequately describe the dynamics of the system. Such a new approach not only proves the equivalence between the previously cited modular methodologies but also generalizes them to a recursive form. Constraint enforcement algorithms are introduced for obtaining the dynamic model at a given level of a hierarchy, given the model at the inferior level and a mathematical description of the constraints to be enforced.
The generality of the methodology is ensured by the fact that the enforcement algorithms are based on no other hypotheses than the models being expressed by a finite number of DAEs and the virtual work of the generalized constraint forces associated to admissible variations in the state of the system being either zero or a known function given by a constitutive relation. There are no restrictions regarding:
(i) the formalisms used in the derivation of the models at the inferior level of a hierarchy (the models may either follow from the application of physical principles using some analytical formalism or can be phenomenological);
(ii) the order of the differential equations involved, which can be higher than two;2
(iii) the criteria for selecting variables, which allows exploration of the advantages of formulations based on the use of redundant variables and on reparameterizations of time rates [1,2];
(iv) the nature of the constraints and the techniques adopted for their description; and
(v) how the user chooses to conceive the system modularly and how many levels there are in a given hierarchical representation.
This lack of restrictions allows the user to specialize the methodology for particular applications according to conveniences (e.g. when already available mathematical models are used) or personal preferences, leading to a great variety of possibilities for computational implementations based on the approach presented in this text. On the other hand, it makes the performance of these implementations (in terms of computational complexity and numerical stability) highly dependent on the techniques adopted for these specializations. Such a discussion is out of the scope of this paper, and the reader is invited to check some textbooks and a paper on the theme [11–14]. Basically, this paper aims to address the following topics:
(i) prove the equivalence among projection methods for elimination of generalized constraint forces from equations of motion in the literature and the strategy used in the modular approach originally introduced by Orsino & Hess-Coelho3 [2];
(ii) present a recursive form for the modular approach, allowing to apply the methodology directly to complex systems represented by multiple-level hierarchies; and
(iii) prove that a recursive algorithm based on the Udwadia–Kalaba equation is identical to the algorithm of a Kalman filter for the estimation of the state of a static process subjected to a sequence of measurements modelled by noiseless observation equations.
Recursive algorithms are among the most popular ones for the modelling of complex dynamic systems, once they do not have to consider the whole complexity of the system at once. Particularly, in the area of multibody systems, recursive algorithms based on Newton–Euler equations stand out [11,14–17]. In these algorithms, the systems are represented by graphs, each node corresponding to a rigid body and each edge to a joint. In the case of inverse simulations, the motion is specified as a function of time and force and torque inputs are the desired unknown variables, which must be computed by the algorithms along with the constraint forces and torques. In the case of forward simulations, the initial value problem associated to the equations of motion of a given system must be solved, provided that all the force and torque inputs are specified as functions of time; the corresponding algorithms also require the values of the constraint forces and torques to be found at each time instant. Rodriguez [17] has explored the similarities between the formulations based on Newton–Euler equations of forward and inverse problems for open-loop kinematic chains and the algorithms of the Kalman filter and the Bryson–Frazier smoother. An analogy with the Kalman filter is also discussed in this text on the formulation of a recursive algorithm based on the Udwadia–Kalaba equation. Also, some of these recursive methods propose the use of extra algorithms for computing operators that eliminate the constraint forces from the equations of motion, before applying them to find the desired unknowns. The natural orthogonal complement (NOC) and its decoupled variant (DeNOC) [14–16] are some examples of operators obtained by such algorithms. This text discusses some methods, based on the same fundamental theorem (theorem 3.2), for computing such operators using orthogonal complements, generalized inverses or orthonormalization procedures.
This paper is divided into five sections, the first being this introduction and the last reserved for concluding remarks. Section 2 introduces a novel descriptive approach for lumped-parameter dynamic systems based on the use of hierarchies of mathematical models. Section 3 presents the fundamental theoretical results of this paper concerning the general structure of a recursive modular modelling algorithm. Section 4 develops a recursive algorithm based on the Udwadia–Kalaba equation and proves that it is identical to the algorithm of a Kalman filter for the estimation of the state of a static process subjected to a sequence of noiseless measurements representing the constraint equations. See electronic supplementary material, appendix S1, where the steps required for modelling a planar 3
The derivation of the results presented in this paper is based on classical definitions and theorems from Linear Algebra and on the theory of generalized inverses. The reader is invited to check a textbook on generalized inverses by Campbell & Meyer [18], as well as their applications to Analytical Dynamics in the textbook by Udwadia & Kalaba [3]. An n×m matrix Ag is said to be a generalized inverse of an m×n matrix A if it satisfies at least the first of the following properties:
Finally, it is worth commenting that the notation adopted in this text is not only compatible with the desired generality for the methodology proposed, but also tries to resemble as much as possible the notations from previous works from the author [1,2] and from texts on the Udwadia–Kalaba equation and on the Kalman filter. Once all the variables in the presented equations are matrices, no distinctive boldface notation is adopted. Lowercase letters are reserved for column matrices which, in this text, are assumed to be equivalent to tuples. The exceptions are the letter t used to denote time (scalar) and the lowercase letters used as subscript or superscript indexes. Uppercase notation is reserved for matrices that may not be representable by a single row or column of complex entries. The identity matrices are denoted by I and the zero matrices and zero column matrices by 0. Script letters () are used to denote dynamic systems. Subscript indexes refer to the level of the hierarchical representation to which the given matrix or column matrix refer. Matrices and column matrices which are the same for all levels do not receive subscripts. Underline notation is used to denote functions. Superscripts (⋅)*, (⋅)g and (⋅)+ denote, respectively, the conjugate transpose, a generalized inverse and the Moore–Penrose pseudoinverse of a given matrix. The index superscripts (⋅)〈k〉 and (⋅)〈〈k〉〉 are associated with the order of a given set of generalized variables or of functions of them and are properly defined in §2. Table 1 presents the list of symbols adopted in this text.
| t | time (scalar) |
| a,b,c… | column matrices or tuples; indexes when used as subscript or superscript |
| A,B,C… | matrices |
| dynamic systems | |
| I | identity matrix |
| 0 | zero matrix or zero column matrix |
| (⋅)* | conjugate transpose (Hermitian transpose) |
| (⋅)g | generalized inverse |
| (⋅)+ | Moore–Penrose pseudoinverse |
| Kernel (null-space) of the linear transformation defined by matrix A | |
| im(A) | image of the linear transformation defined by matrix A |
| q〈k〉 | k-th order generalized variables |
| q〈〈k〉〉 | tuple (column matrix) of all the generalized variables up to k-th order |
| function of (t,q〈〈k〉〉) associated to a constraint equation at the level r of a given hierarchy | |
| Ar | Jacobian associated to the constraints at the level r of a given hierarchy |
| Jacobian associated to the constraints specifically enforced at the level r | |
| br | residual terms associated to the constraints at the level r of a given hierarchy |
| residual terms associated to the constraints specifically enforced at the level r | |
| M | inertia matrix of the system |
| f | column matrix of active and gyroscopic inertia forces of the system |
| αr | column matrix of the values at level r of the highest order generalized variables of the system |
| γr | column matrix of generalized constraint forces associated to level r |
| φ | function describing the work done by constraint forces |
| Sr | matrix defining a linear transformation onto |
| Gr+1 | |
| λr | column matrix of undetermined multipliers |
| Hr | ArM−1/2 |
| ar | M1/2αr |
| Pr | matrix defining a linear transformation onto |
| Kr+1 |
2. Hierarchical description of lumped-parameter dynamic systems
This section proposes a special form of conceiving lumped-parameter dynamic systems. Assume that a system is described by a hierarchy of mathematical models of increasing complexity, such that the hierarchy corresponds to the equations of motion that better model the dynamic behaviour of the system. Consider also that all the models within this hierarchy are expressed in terms of the same set of variables, and that the increase in complexity from one level to its superior is associated with the enforcement of constraints.
A multibody system, for instance, is a lumped-parameter system which can be conceived as a set of assembled mechatronic modules, each of them being either a single body or a simpler multibody system. In order to exemplify how to describe a multibody system as a hierarchy of mathematical models, consider the 3 Figure 2. 3 Figure 3. Generic active Figure 4. Hierarchical description of the 3


Denote by a generic lumped-parameter system and assume it is described as a hierarchy of mathematical models satisfying the conditions stated above. These models are constituted by parameters, generalized variables and DAEs.
The parameters represent a finite set of constant or known time-variant quantities that describe, according to the adopted simplifying assumptions, the properties of each component of a system. Constant or known time-variant quantities within the expressions of constitutive equations are also parameters of the system. In the case of a multibody system, parameters describe physical properties such as geometry, inertia, stiffness, damping, etc.
The generalized variables can be understood as a finite indexed family of variables which, along with the parameters, is able to provide a description of any quantity that can possibly be associated to a system. If x stands for any quantity related to the description of configurations4 of , there must be a tuple of variables q〈0〉, called generalized coordinates, such that x can be expressed as a function of q〈0〉 and time (along with the parameters), i.e. . If v stands for any quantity associated to some rate of variation of configuration,5 some further variables, typically called quasi-velocities, are required for the parametric description of this quantity. Denoting the tuple of quasi-velocities of the system by q〈1〉 and by q〈〈1〉〉=(q〈0〉,q〈1〉), it can be stated that . A trivial choice of quasi-velocities is to take . Higher-order generalized variables can be defined, recursively, in a similar way. Let q〈〈k〉〉=(q〈0〉,q〈1〉,…,q〈k〉). Formally, define the (k+1)-th order generalized variables of a given system, q〈k+1〉, as a finite indexed family of variables such that: (i) q〈k+1〉 can be expressed as a function of ; (ii) can be expressed as a function of (t,q〈〈k〉〉,q〈k+1〉)=(t,q〈〈k+1〉〉). We say that q〈k+1〉 is trivially defined if .
If a generic quantity is associated to a module of , which, at some level of the hierarchy, has its dynamics decoupled from other modules, then, at that level, the description of this quantity requires only the subset of generalized variables associated to the particular module. Also, a given set of generalized variables is said to be redundant at a given level of the hierarchy if it has to satisfy some conditions in order not to violate any of the constraints imposed to the system at that level. These conditions, when given by equalities, are called constraint equations. At a given level r of the hierarchy they might be expressed as follows:
Considering this, choose an integer k such that the following conditions are satisfied.
(i) All the generalized variables of above k-th order are trivially defined, i.e. for all l≥k.
(ii) All the constraint equations at any level of the hierarchy can be expressed in the following affine form:
2.2(iii) The dynamic equations of motion associated to any level of the hierarchy can be expressed in the following form:
2.3with γr representing the generalized constraint forces acting in at the level r of the hierarchy (i.e. γr stands for generalized forces due to all the constraints enforced at that level).
In order to obtain a complete system of DAEs of motion associated to a given level r of the hierarchy representing system , it is necessary to establish some assumptions for the computation or elimination of the generalized constraint forces from equation (2.3). Assume that there is a matrix such that is equal to a known function of time and of the generalized variables of up to (k−1)-th order, which will be denoted by , following Udwadia & Kalaba [5,6]. If respects the extended version of D’Alembert’s principle6 [7,19], and must be a matrix whose columns span the kernel of , i.e. . For the cases in which the total virtual work of the generalized constraint forces is not zero, i.e. in which a constraint is associated to an energy source or sink, it is assumed that this effect can be expressed by a constitutive relation defined by the function [6].
A complete system of DAEs of motion for , associated to the level r of the hierarchy, can be expressed as follows7:
It is worth noting that once the generalized variables are the same for all the levels of the hierarchy, so must be the matrix M and the column matrix f. Indeed, the entries of these matrices are associated to the chosen set of variables and can be obtained already at the first (lowest) level of the hierarchy, which means that their expressions are subject to the same modular decoupling present at this first level. Back to the example of the 3
Moreover, such a modular structure might also be noticed in the expressions of the matrices Ar. If a block of rows of Ar describes a constraint among a given set of modules of a system, only the columns corresponding to the variables associated to these modules have non-zero entries. In the example of the 3
Such a block-diagonal structure of the matrices related to the adoption of a modular description for multibody systems has already been explored in previous methodologies proposed by Orsino [1] and Orsino & Hess-Coelho [2]. As previously mentioned, the developments shown in this paper can be understood as a recursive generalization of these methodologies for arbitrary lumped-parameter dynamic systems.
3. General recursive algorithm for obtaining explicit equations of motion of constrained lumped-parameter dynamic systems
As previously discussed, it is possible to represent any lumped-parameter dynamic system as a hierarchy of mathematical models organized in order of increasing complexity, such an increase being associated to the enforcement of some constraints from one level of the hierarchy to its superior level. In such a representation, the hierarch is assumed to be the most precise mathematical model for the system. In the previous section, it was shown that a mathematical model at any level of such a hierarchy can be expressed by a system of DAEs constituted by a subsystem of ODEs and a subsystem of linear algebraic equations (in the corresponding variables αr and γr), whose coefficients are functions of the state of the system.
This section concentrates on presenting the fundamentals for the development of a general recursive algorithm for obtaining explicit equations of motion for each level of a hierarchy that represents a lumped-parameter dynamic system. This algorithm traverses these hierarchies from the lowest level (which is indexed as level 1) to the top one (level s). Let the subsystem of linear algebraic equations associated to a given level r of a hierarchy be represented by the following matrix equations:
Consider the following identity valid for any matrices A and B:
Assuming that the columns of Sr span the kernel of Ar, as required by the extended version of D’Alembert’s principle, the following proposition presents some alternatives for computing Sr.
Let A be an arbitrary m×n matrix with complex entries, such that. It can be stated that the following statements are true.
(i) There is a full-rank matrix Z defining a linear transformation onto. In this case, Z is shortly referred to as an orthogonal complement9of A. (ii) If Agdenotes a {1}-inverse of A, Y =I−AgA is a projector onto. (iii) If Agdenotes a {1,4}-inverse of A, X=I−AgA is the orthogonal projector onto.10 (iv) Letbe a matrix obtained by an orthonormalization procedure applied to the rows of A. The orthogonal projector ontocan be alternatively computed by the expression.Proposition 3.1.
Once , there are non-zero such that Az=0. Also, as is a linear subspace of , if , for any .
(i) Take any basis for , i.e. take a finite set of linearly independent such that any can be expressed as a linear combination of them. By definition, a matrix Z whose columns are given by these zi is a full-rank matrix that defines a linear transformation onto , i.e., Z is an orthogonal complement of A. (ii) Denote by Ag a {1}-inverse of A and let Y =I−AgA. For any , . Indeed, AY =A−AAgA=0. Also, YY =I−AgA−AgA+AgAAgA=I−AgA=Y . If , and if Yy=y, Ay=AYy=0, which means that . Therefore, Y is a projector onto . (iii) Denote by Ag a {1,4}-inverse of A and let X=I−AgA. From property P4, equation (1.1), it follows that X is Hermitian. Also, from the uniqueness of the orthogonal projector onto a given linear space,11 it follows that X is the orthogonal projector onto . (iv) Let be a matrix obtained by an orthonormalization procedure applied to the rows of A and define . Note that is a full-rank matrix and its rows constitute a basis for the linear subspace spanned by the rows of A, i.e. . Thus, there exists a matrix U such that . Also, , and once was obtained by an orthonormalization procedure, , which means that AX=0. In this case, X is not only a Hermitian matrix, but also a projector, once . For any , . If , and if Xx=x, Ax=AXx=0, which means that . Therefore, is the orthogonal projector onto the kernel of A.Proof.
This completes the proof. ▪
If Sr is chosen to be an orthogonal complement of Ar, equation (3.4) becomes the one addressed in previous developments of a modular modelling metodology for multibody systems by Orsino [1] and Orsino & Hess-Coelho [2].12 On the other hand, if , with denoting the Moore–Penrose pseudoinverse13 of Ar, equation (3.4) becomes the one addressed by Udwadia & Phohomsiri [4] in their derivation of explicit equations of motion for constrained mechanical systems with singular mass matrices (which led to applications also to the modular modelling of multibody systems).14
Consider also that the constraints specifically reinforced at level r of this hierarchy can be expressed by the equation . In this case, , and the indexed families of matrices {A1,A2,…,Ar,…,As} and of column matrices {b1,b2,…,br,…,bs} must satisfy the following properties, for r=1,2,…,s−1:
Let {A1,A2,…,Ar,…,As} be an indexed family of matrices with complex entries satisfying the following condition:
Theorem 3.2.
Owing to condition (3.8), it can be stated that: . Denote by Sr a linear operator onto and assume that Sr+1=SrCr+1 is a linear operator onto . It can be stated that
Proof.
This theorem proves that, given an operator Sr onto for a level r of a hierarchy representing a lumped-parameter dynamic system, the operator associated to the superior level, i.e. an operator Sr+1 onto , can be obtained as a composition of Sr with an operator Cr+1 onto . It is worth noting that represents the operator corresponding to the new constraints to be enforced at level r+1, , restricted to the kernel of Ar, in which the variations of any solution of the equations of motion associated to level r must lie.
Particularly, when the operator Sr onto is chosen to be the orthogonal projector onto this subspace, the corollary below follows from theorem 3.2.
Let {A1,A2,…,Ar,…,As} be an indexed family of matrices satisfying the condition (3.8). Let, for some r, be the orthogonal projector onto the kernel of Ar, with (⋅)gdenoting a {1,4}-inverse. It can be stated thatCorollary 3.3.
From proposition 3.1, once stands for a {1,4}-inverse of Ar, is the orthogonal projector onto . Moreover, let be the orthogonal projector onto , which satisfies the statement of theorem 3.2. Taking Sr+1=SrCr+1, it can be stated that
Proof.
A second corollary that provides a recursive algorithm for obtaining {1,4}-inverses for an indexed family of matrices satisfying the condition (3.8), which will be useful in the derivations of the following section, is presented below.
Let {A1,A2,…,Ar,…,As} be an indexed family of matrices satisfying the condition (3.8) and denote by (⋅)ga {1,4}-inverse. It can be stated that, given a {1,4}-inverse of Ar, a {1,4}-inverse of Ar+1can be computed as follows:
Corollary 3.4.
Observing the statements of P1 and P4 in equation (1.1), one could reinterpret them as properties of the matrix AgA, without any loss in generality. Thus, in order to prove that is a {1,4}-inverse of Ar+1, it is enough to show that for any {1,4}-inverse of Ar+1, . Let and . According to equation (3.10), it can be stated that . Therefore,
Proof.
It is worth noting that even if is the Moore–Penrose pseudoinverse of Ar, the algorithm described by equation (3.13) only ensures that will be the {1,4}-inverse of Ar+1. Particularly, if some row of can be expressed as a linear combination of the rows of Ar, computed according to corollary 3.4 will not be the Moore–Penrose pseudoinverse of Ar+1 [21]. On the one hand, it might seem useful to work with Moore–Penrose pseudoinverses only, once they are uniquely defined; on the other, there are no practical disadvantages on adopting generic {1,4}-inverse matrices in the constraint enforcement algorithms as it is shown in the next section, which emphasizes the importance of corollary 3.4.
4. Recursive algorithm based on the Udwadia–Kalaba equation
Assume that M is a positive-definite Hermitian matrix15 and note that equation (3.3) can be rewritten in the following form: . This last fact means that γr−φ lies in , i.e.:
In order to derive a recursive modular algorithm based on the Udwadia–Kalaba equation, let . According to corollary 3.4, it can be stated that
It is noticeable that, in this form, the algorithm for updating the values of ar according to the information provided by the constraint equations at each level of the hierarchical structure that represents a dynamic system is identical to the algorithm of a Kalman filter for the estimation of the state of a static process subjected to a sequence of measurements modelled by the noiseless observation equation . Matrix Pr, which represents the orthogonal projector into , being directly related to the description of the constraints of the system, is analogous to the estimate covariance matrix.
The analogy between this recursive algorithm based on the Udwadia–Kalaba equation and filtering algorithms can be well explored, both in terms of the use of existing computational implementations for simulations of the models of lumped-parameter dynamic systems and in terms of the development of new modelling and simulation approaches that may arise from this correspondence. For example, it might be possible to treat constraint clearances as if they were measurement noise. In this case, if Rr represents the covariance matrix associated to the noise variables, the corresponding Kr+1 and Pr+1 can be obtained by the following expressions:
5. Conclusion
This paper proposes a novel approach for the modelling of lumped-parameter dynamic systems, which consists of representing a given system by a hierarchy of mathematical models, expressed in terms of the same set of variables, and ordered according to the increase in complexity due to the enforcement of constraints. In such representation, the hierarch stands for the model that better represents the dynamic behaviour of the system. This approach allows to better explore the modularity of the systems if, for instance, it is possible to conceive them as a set of constrained subsystems whose mathematical models are already known. This was the context for which previous developments of similar methodologies for the modelling of multibody systems, by Orsino [1] and Orsino & Hess-Coelho [2], were proposed. They can be understood as particular cases of the general approach discussed in this text. Also, whenever a refinement of some model can be associated with the enforcement of further constraints, the methodology presented in this paper also provides a guideline for a modelling procedure. This might be the case for lumped-parameter approximations for distributed systems, for example, in which the number of levels of the hierarchy could be understood as the number of iterations required for the model to adequately represent, according to some established criteria, the original system.
The methodology presented in this text is based on the development of recursive algorithms for finding projection operators onto the kernel of the ones associated to the constraints at a particular level of a hierarchy representing a dynamic system. The modularity of the systems can also be explored in these algorithms once, particularly at the lower levels of a hierarchy, operators associated to the constraints and, consequently, the ones that make projections onto their kernels might be represented by block-sparse or even block-diagonal matrices. Exploring properly this fact, numerically efficient algorithms can be implemented. Within the recursive approach proposed, there is only need to obtain projection operators associated to new constraints that are enforced from one level to the superior one. The algorithms used for this can be based on finding orthogonal complement matrices, on computing generalized inverses or even on implementing orthonormalization procedures.
A remarkable result that came along with the development of this new methodology is the equivalence between the formulations by Orsino [1] and Orsino & Hess-Coelho [2] and the formulation by Udwadia & Phohomsiri [4]. The investigation concerning the derivation of a recursive algorithm based on the Udwadia–Kalaba equation, under the same conditions adopted for the general methodology, revealed an even more relevant result: the algorithm is equivalent to the one of a Kalman filter for the estimation of the state of a static process in which the constraint equations play the role of the observation ones, and the associated orthogonal projectors play the role of the covariance matrices. This allows not only to reuse already existing routines in which the Kalman filter algorithm is implemented for forward simulations16 of lumped-parameter dynamic systems, but also to effectively make use of the analogies to perform, for example, simulations in which constraint clearances are considered. Another aspect that should be explored in future works is how the interpretations of the Kalman filter within the theory of stochastic processes can be helpful in enhancing the framework of methodologies for the modelling of dynamic systems.
Data accessibility
This article has no additional data.
Competing interests
I declare I have no competing interests.
Funding
I acknowledge the post-doctoral grant no. 2016/09730-0, São Paulo Research Foundation (FAPESP).
Acknowledgements
I thank Prof. Celso Pupo Pesce for encouragement and insightful discussions on the development of this paper.
Footnotes
1 In this text, the term lumped parameter is adopted in opposition to distributed parameter, which means that the state spaces of these systems are finite-dimensional and none of the equations in their models are partial differential equations.
2 This not only allows extension of the scope of the methodology to non-mechanical systems involving differential equations of third or higher orders, but is also useful for the analysis of mechanical systems whose control strategies are based on non-material non-holonomic constraints [9,10].
3 The contributions presented in this paper are based on proposition 3.1, theorem 3.2 and its corollaries, which correspond to generalizations of the result presented in proposition 2.7 of [2]. Also, the general description of lumped-parameter dynamic systems presented in §2 is based on the fundamental results of the third section of [2].
4 In the case of a multibody system, for example, quantities related to the description of configuration are distances, angles, tuples of coordinates of points, etc.
5 In the case of a multibody system, for example, quantities that can be used to describe rates of variation of configuration are components or tuples of components of velocities, angular velocities, linear momenta or angular momenta, etc.
6 D’Alembert’s principle is the name given to the Principle of Virtual Work when applied to dynamic systems which are not in static equilibrium, in which case the inertia forces are included to ensure the ‘dynamic equilibrium’. Its extended form [7,19] states that, for every , v*γr=0. In this case, v plays the role of ‘virtual displacement’. Thus, if Sr is a matrix that defines a linear transformation onto , .
7 If the analysis is restricted to mechanical systems, modelled according to the conventional Analytical Mechanics formulations, the DAEs associated to the level r of the hierarchy can be expressed in the following form:
8 At this point, see electronic supplementary material, appendix S1, where all the statements regarding the modelling of the 3
9 Orthogonal complement is a term that originally applies to subspaces, i.e. it should be said that im(A*) is an orthogonal complement of im(Z). The use of this term to refer directly to the matrices as adopted in this text, however, is common in the literature of multibody system dynamics [14–16,20].
10 Although a {1,4}-inverse of a given matrix A is, in general, not unique, there is a single Hermitian idempotent matrix defining a linear transformation onto , and this matrix can be computed using any {1,4}-inverse of A according to the given expression.
11 Suppose that both X and Y are orthogonal projectors onto the same subspace of . In this case, for all , Xv=Yv; thus, Xv=XXv=XYv and Yv=YYv=YXv also for all , which means that X=XY and Y =YX. Therefore, (X−Y)*(X−Y)=X*X−X*Y −Y*X+Y*Y =X−XY −YX+Y =0, which means that X=Y .
13 Once the Moore–Penrose pseudoinverse is also a {1,4}-inverse, according to proposition 3.1, Sr is the orthogonal projector onto .
14 See eq. (2.12) in [4].
15 For a holonomic mechanical system, for example, the Hermitian condition does not represent any loss in generality, once the generalized inertia matrix of the system is associated to a quadratic term in the expression of its kinetic energy. The positive definiteness condition, however, precludes the application of the results presented in this section to degenerate cases in which only the positive semi-definiteness of M can be ensured.
16 ‘Forward simulation’ stands for the solution of the initial value problem associated to the equations of motion of a given system, provided that all the inputs are specified as functions of time.
References
- 1
Orsino RMM . 2016A contribution on modelling methodologies for multibody systems. PhD thesis, São Paulo, Brazil: University of São Paulo. See http://www.teses.usp.br/teses/disponiveis/3/3151/tde-22062016-160724/en.php. Google Scholar - 2
Orsino RMM, Hess-Coelho TA . 2015A contribution on the modular modelling of multibody systems. Proc. R. Soc. A 471, 20150080. (doi:10.1098/rspa.2015.0080) Link, Google Scholar - 3
Udwadia FE, Kalaba RE . 2007Analytical dynamics: a new approach. New York, NY: Cambridge University Press. Google Scholar - 4
Udwadia FE, Phohomsiri P . 2006Explicit equations of motion for constrained mechanical systems with singular mass matrices and applications to multi-body dynamics. Proc. R. Soc. A 462, 2097–2117. (doi:10.1098/rspa.2006.1662) Link, Google Scholar - 5
Udwadia FE, Kalaba RE . 2002On the foundations of analytical dynamics. Int. J. Nonlin. Mech. 37, 1079–1090. (doi:10.1016/S0020-7462(01)00033-6) Crossref, ISI, Google Scholar - 6
Udwadia FE, Kalaba RE . 2001Explicit equations of motion for mechanical systems with nonideal constraints. J. Appl. Mech. 68, 462–467. (doi:10.1115/1.1364492) Crossref, ISI, Google Scholar - 7
Udwadia FE, Kalaba RE, Hee-Chang E . 1997Equations of motion for constrained systems and the extended D’Alembert principle. Q. Appl. Math. 55, 321–331. (doi:10.1090/qam/1447580) Crossref, ISI, Google Scholar - 8
Udwadia FE, Kalaba RE . 1992A new perspective on constrained motion. Proc. R. Soc. A 439, 407–410. (doi:10.1098/rspa.1992.0158) Link, Google Scholar - 9
Jarzebowska EM . 2012Model-based tracking control of nonlinear systems.Modern Mechanics and Mathematics . Boca Raton, FL: Taylor & Francis. Google Scholar - 10
Jarzebowska EM . 2009Quasi-coordinates based dynamics modeling and control design for nonholonomic systems. Nonlin. Anal. 71, e118–e131. (doi:10.1016/j.na.2008.10.049) Crossref, ISI, Google Scholar - 11
Featherstone R . 2008Rigid body dynamics algorithms.Kluwer International Series in Engineering and Computer Science: Robotics . New York, NY: Springer Google Scholar - 12
- 13
Angeles J . 2013Fundamentals of robotic mechanical systems: theory, methods, and algorithms.Mechanical Engineering Series . New York, NY: Springer Google Scholar - 14
Shah SV, Saha SK, Dutt JK . 2012Modular framework for dynamic modelling and analyses of legged robots. Mech. Mach. Theory 49, 234–255. (doi:10.1016/j.mechmachtheory.2011.10.006) Crossref, ISI, Google Scholar - 15
Khan WA, Krovi VN, Saha SK, Angeles J . 2005Modular and recursive kinematics and dynamics for parallel manipulators. Multibody Syst. Dyn. 14, 419–455. (doi:10.1007/s11044-005-1143-9) Crossref, ISI, Google Scholar - 16
Saha SK, Angeles J . 1991Dynamics of nonholonomic mechanical systems using a natural orthogonal complement. J. Appl. Mech. 58, 238–243. (doi:10.1115/1.2897157) Crossref, ISI, Google Scholar - 17
Rodriguez G . 1987Kalman filtering, smoothing, and recursive robot arm forward and inverse dynamics. IEEE J. Robot Autom. 3, 624–639. (doi:10.1109/JRA.1987.1087147) Crossref, Google Scholar - 18
Campbell SL, Meyer CD . 2009Generalized inverses of linear transformations. Philadelphia, PA: Society for Industrial and Applied Mathematics. Crossref, Google Scholar - 19
Mangeron D, Deleanu S . 1962Sur une classe d’équations de la mécanique analytique au sens de Tzenoff. C. R. Acad. Bulg. Sci. 15, 1–9. Google Scholar - 20
Laulusa A, Bauchau O . 2007Review of contemporary approaches for constraint enforcement in multibody systems. J. Comput. Nonlin. Dyn. 3, 11 005–11 008. (doi:10.1115/1.2803258) ISI, Google Scholar - 21
Udwadia FE, Phohomsiri P . 2005Recursive determination of the generalized Moore–Penrose m-inverse of a matrix. J. Optim. Theory Appl. 127, 639–663. (doi:10.1007/s10957-005-7508-7) Crossref, ISI, Google Scholar


