<<

Appl. Math. Inf. Sci. 9, No. 2L, 319-324 (2015) 319 Applied & Information Sciences An International Journal

http://dx.doi.org/10.12785/amis/092L06

A Fast Method for Computing the Inverse of Symmetric Block Arrowhead Matrices

Waldemar Hołubowski1, Dariusz Kurzyk1,∗ and Tomasz Trawi´nski2 1 Institute of Mathematics, Silesian University of Technology, Kaszubska 23, Gliwice 44–100, Poland 2 Mechatronics Division, Silesian University of Technology, Akademicka 10a, Gliwice 44–100, Poland

Received: 6 Jul. 2014, Revised: 7 Oct. 2014, Accepted: 8 Oct. 2014 Published online: 1 Apr. 2015

Abstract: We propose an effective method to find the inverse of symmetric block arrowhead matrices which often appear in areas of applied science and engineering such as head-positioning systems of hard disk drives or kinematic chains of industrial robots. Block arrowhead matrices can be considered as generalisation of arrowhead matrices occurring in physical problems and engineering. The proposed method is based on LDLT decomposition and we show that the inversion of the large block arrowhead matrices can be more effective when one uses our method. Numerical results are presented in the examples.

Keywords: inversion, block arrowhead matrices, LDLT decomposition, mechatronic systems

1 Introduction thermal and many others. Considered subsystems are highly differentiated, hence formulation of uniform and simple mathematical model describing their static and A which has entries equal zero except for dynamic states becomes problematic. The process of its main diagonal, a one row and a column, is called the preparing a proper mathematical model is often based on arrowhead matrix. Wide area of applications causes that the formulation of the equations associated with this type of matrices is popular subject of research related Lagrangian formalism [9], which is a convenient way to with mathematics, physics or engineering, such as describe the equations of mechanical, electromechanical computing spectral decomposition [1], solving inverse and other components. As a result of application of eigenvalue problems [2], solving symmetric arrowhead Lagrange formalism, we get the mathematical model systems [3], computing the inverse of arrowhead matrices describing the dynamic of the system. The obtained [4], modelling of radiationless transitions in isolated model is given by second order differential equation, molecules [5,6], oscillators vibrationally coupled with a which can be expressed as matrix equation. In matrix Fermi liquid [6], modelling of wireless communication notation of equation of the modelled system, it is possible systems [7,8]. to distinguish matrix of inertia, whose structure In this paper we propose a simple and effective corresponds to the structure of the real object – the method to find the inverse of the symmetric block mechatronic system. The inertia matrices usually are arrowhead matrices, which have wide applications in symmetric. Additionally, in many cases these matrices mechatronics. In order to illustrate the significance of can be expressed as symmetric arrowhead matrices or arrowhead matrices in process of designing mechatronic symmetric block arrowhead matrices. It is typical of the systems, we should look at this in more details. mathematical models describing the following devices: Colloquially, the mechatronic system is a combination of different elements. It means that devices are made in different technologies which are strongly coupled to each –electromechanical transducers [10,11,12,13]. This other. The systems are built from following main component is included for instance in squirrel-cage subsystems such as: mechanical, electromagnetic, induction motors, where the inertia matrix can be electronic and informatics. Such systems can also have represented as a block arrowhead matrix. The number subsystems associated with pneumatics, hydraulics, of blocks in the matrix depends on the number of

∗ Corresponding author e-mail: [email protected]

c 2015 NSP Natural Sciences Publishing Cor. 320 W. Hołubowski et. al. : A Fast Method for Computing the Inverse of...

harmonics of the magnetic field in the airgap and the matrix P, the Aˆ can be transformed to number of rotor bars in a cage [12,13]. T –electromechanicaltransducers with a double stator [14, A1 0 0 B1  T  15]. This type of transducers can be successfully used 0 A2 0 B2 as generators in production of wind energy. ˆ T  0 0 A BT  A = PAP =  3 3 , (2) –kinematic chains of industrial robots [16]. Depending  . . . . .   ......  on the configuration of the open kinematic chain of an   industrial robotic manipulator, the inertia matrix can B1 B2 B3 Ak  be expressed as block arrowhead matrix, which represents kinematic relationships between actuators where A1,A2,...Ak are n1,n2,...,nk dimensional matrices, and the elements of the Stewart platform [17]. respectively. In particular if Pˆ is expressed as –head-positioning systems of hard disk drives (HDD) [18,19]. Drivetrain of a head-positioning control 0 0 Ik system can be analysed as a special case of branched  . . .. .  Pˆ = . . . . , (3) robotic manipulator [18,19,20].    0 I2 0 I 0 0 The block arrowhead inertia matrices are widely used 1 in modeling of mechatronic systems. Its inverses have where I ,I ,...,I are identity matrices with dimensions important meaning e.g. in: 1 2 k n1,n2,...,nk then –reduction the time of designing and development of ˆ ˆT mentioned device models, A1 0 0 B1  ˆ ˆT  –increasing efficiency of simulation of the modelled 0 A2 0 B2 ˆ ˆ ˆT  0 0 Aˆ BˆT  systems, A = PAP =  3 3 . (4) –eliminating torsional vibrations in the drive systems.  . . . . .   ......   ˆ ˆ ˆ ˆ  Considered inertia matrices depending on the systems can B1 B2 B3 Ak  have large sizes, hence there is a need for improvement of methods for block arrowhead matrices inversion. Hence, the A consists of the same blocks Aˆ1,Aˆ2,...,Aˆk and ˆ ˆ ˆ ˆ Generally, matrix inversion is not harder than matrix B1,B2,...,Bk as matrix A. If we consider permutation ˜ multiplication [21,22]. Computational complexity of matrix P expressed as matrix inversion based on Gauss-Jordan elimination is O(n3) [23]. Strassen , which can be used to 00 1   inverse of matrix with complexity O(n2.8074)[21], is more . . .. . P˜ = . . . . , (5) efficient. Coppersmith and Winograd [24,25] show that 01 0 O 2.3755   can be obtained in (n ). Now, 10 0 the fastest algorithm of matrix multiplication running in O(n2.3727) time was performed by Williams [26]. Two then entries of A˜ = P˜AˆP˜T are given by A˜ = Aˆ , last mentioned are rarely used in practice. i, j n−i+1,n− j+1 where n is a size of Aˆ. The form of a matrix given by (1) occurs many times in different cases e.g. during designing the mechatronic 2 Inverse of block arrowhead matrix system. Blocks of the matrix are related with the structure of a modelled object. Hence the blocks should be invariant under transformation of the matrix. Expressed in 2.1 Arrowhead matrix (3) changes the structure of the matrix, but the blocks remain unchanged. Let Aˆ be a square given in the following way ∗ Aˆ1 Bˆ1 Bˆ2 Bˆk−1 2.2 LDL decomposition  ˆT ˆ  B1 A2 0 0 ˆ  BˆT 0 Aˆ 0  Let A be a Hermitian positive definite matrix. A =  2 3 , (1)  ......  Decomposition the A into the product of a lower  . . . . .  and its conjugate is called  ˆT ˆ  Bk−1 0 0 Ak  . Thus, every can be expressed as where n1,n2,...,nk are dimensions of matrices ˆ ˆ ˆ ∑k ∗ A1,A2,...,Ak and i=1 ni = n. By use of permutation A = LL , (6)

c 2015 NSP Natural Sciences Publishing Cor. Appl. Math. Inf. Sci. 9, No. 2L, 319-324 (2015) / www.naturalspublishing.com/Journals.asp 321

where L is a lower triangular matrix. If A is a symmetric where for 1 ≤ i ≤ n − 1 positive definite matrix, then A can be factorized into A = T n−1 LL . If we consider (6) in following way bi d = a , l = and d = a − ∑ l2d . (12) i i i d n n k k ∗ ′ 1 ′ 1 ′ 1 1 ∗ ′ ∗ ′ ′ ∗ i k=1 A=LL =L D 2 (L D 2 )=L D 2 (D 2 ) (L ) =L D(L ) , (7) O ′ The computationalcomplexity of the is (n). where L is a lower triangular matrix and D is a diagonal n×n ∗ Let A = [Ai j] ∈ R be a symmetric block arrowhead matrix, then we get LDL decomposition. This variant of matrix expressed as matrix in (2). The A can be Cholesky decomposition is also useful for the Hermitian decomposed into a products of matrices L, D and LT , nonpositive matrix A. For real symmetric matrices, the where factorization has the form A = LDLT . The computational 3 complexity of Cholesky decomposition is O(n ) and the D1 0 0 ... 0 F1 0 0 ... 0 most efficient algorithms used for the factorization  0 D2 0 ... 0   0 F2 0 ... 0  require 1 n3 operations. The complexity of LDL∗ 6 D =  0 0 D3 ... 0  L =  0 0 F3 ... 0 . (13) decomposition is the same as Cholesky decomposition.  . . . . .   . . . . .  n×n  ......   ......  Let A = [ai j] ∈ C be the Hermitian matrix. The     LDL∗ decomposition factorizes A into a lower triangular  0 0 0 ... Dn L1 L2 L3 ... Fk ∈ n×n matrix L = [li j] C , a T ∈ n×n Matrices Fi and Di are obtained as results of LDL D = [di j] C and of L expressed −1 T −1 as A = LDL∗, where decomposition of a matrix Ai and Li = Bi(Fi ) Di , where 1 ≤ i ≤ k − 1. Next, Fk and Dk are results of the i−1 ˜ ∑k−1 T factorization of a matrix Ak = Ak − i=1 LiDiLi . Suppose dii = aii − ∑ liklikdkk that M(n) denotes computational complexity of inversion k 1 = (8) of n dimensional matrix. It is possible to show that the 1 j−1 matrix inversion is equivalent to the matrix multiplication li j = (ai j − ∑ likl jkdkk), for i > j. [22], thus M(n) denotes also complexity of matrix d j j k=1 multiplication. Assume that nmax = max(n1,n2,...,nk). T O 3 If we consider block Hermitian matrix We need perform k times LDL decomposition in (ni ), n×n ni×n j ∗ O 3 A = [Ai j] ∈ C , where Ai j ∈ C , then LDL which can be evaluated as (k nmax). Hence complexity decomposition is expressed as A = LDL∗, where of the proposed method of the matrix decomposition is n×n n×n O 3 L = [Li j] ∈ C and D = [Di j] ∈ C are given by (k (nmax + M(nmax))). So, if n ≫ nmax then the presented algorithm should be faster. i−1 ∗ Dii = Aii − ∑ LikDkkLik k=1 (9) j−1 2.4 Inversion of block arrowhead matrix ∗ −1 Li j = (Ai j − ∑ LikDkkL jk)D j j , for i > j. k=1 Let A bea matrixgivenas(2) and D,L be matrices received as a result of the decomposition of A. Inverse matrix A−1 is given in the following way 2.3 Decomposition of a block arrowhead matrix

n×n −1 Consider an arrowhead matrix A ∈ R given in the D1 0 ... 0  −  0 D 1 0 following way −1 2 ... D = . . . . , T . . .. . a1 0 0 b    1   −1 0 a 0 bT  0 0 ... Dn  2 2 (14) 0 0 a bT −1 A =  3 3 . (10) F1 0 ... 0    −   ......  0 F 1 ... 0  . . . . .  −1 2   L = . . . . . b1 b2 b3 an   . . .. .    − −1 −1 − −1 −1 −1 As a result of the factorization, we obtain matrices D and  Fk L1F1 Fk L2F2 ... Fk  L expressed as Hence, the inverse of A can be expressed as

d1 0 0 ... 0 100 ... 0 A−1 = (L−1)T D−1L−1. (15)  0 d2 0 ... 0  010 ... 0 0 0 d ... 0 001 ... 0 D =  3  L =  , (11) The matrix multiplication is a quite computationally  . . . . .   . . . . .  ......   ......  expensive operation, hence the way of obtaining the  . . . .   . . . .  0 0 0 ... dn l1 l2 l3 ... 1 matrix given by (15) is not effective.

c 2015 NSP Natural Sciences Publishing Cor. 322 W. Hołubowski et. al. : A Fast Method for Computing the Inverse of...

It is easy to check that

(L−1)T D−1L−1 = T R1 0 0 S1 U11 U12 U1k−1 0  T  0 R 0 S  U U U − 0 2 2 21 22 2k 1 (16)  0 0 R ST  . . . . .  3 3  +  ...... ,  ......     . . . . .  Uk−11 Uk−12 Uk−1k−1 0     S1 S2 S3 Rk  0 0 0 0

where (a)

−1 T −1 −1 Ri = (Fi ) Di Fi −1 T −1 −1 −1 Si = −(Fk ) Dk Fk LiFi (17) −1 T −1 −1 Ui j = (Fk LiFi) Dk Fk L jFj.

2 Blocks Ri, Si and Ui j are obtained in O(k M(nmax)). Hence the inversion of block arrowhead can be performedin O(k 3 2 nmax + k M(nmax)).

3 Example (b) Figure 1: Times of computing the inverse of block Consider the following example. Let R be a k dimensional arrowhead matrix by algorithm implemented in LAPACK . We create a matrix B = (R + RT )/2 which library (solid line) and proposed in our paper (dash line). is symmetric. It is easy to check that I ⊗ B is a symmetric a) results for matrices with blocks of size equal to 10, b) block diagonal matrix, where I is an l dimensional identity results for matrices with blocks of size equal to 15 . matrix. Assume that E is a k l dimensional except last k columns with entries equal to 1. In last step, we create block arrowhead matrix A = I ⊗ B + E + ET . It means that A can be expressed in following way algorithm for computing the inverse of an arrowhead O 3 2 matrix. Presented method need (k nmax + k M(nmax)) B 0 0 1 time. In case of large sparse matrices, the method is more 0 B 0 1  effective than other wide applied algorithms for matrix inversion. Performed numerical example shows that A = 0 0 B 1 , (18)  . . . . .  obtained acceleration of calculations can be significant.  ......   . . . .  111 B + 21 References where 1 is a matrix with all elements equal 1. The proposed construction of the matrix A provides an easy [1] F. Diele, N. Mastronardi, M. Van Barel, E. Van Camp, way to generate a block arrowhead matrix with a size On computing the spectral decomposition of symmetric dependent on l. Next, our algorithm will be compared arrowhead matrices, In Computational Science and Its with a fast algorithm for the matrix inverse computations Applications – ICCSA. Springer Berlin Heidelberg, 932–941 implemented in a library for numerical (2004). LAPACK. A numerical investigation will be performed by [2] Y. Yuan, Generalized inverse eigenvalue problems for the usage of programming language python. In each symmetric arrow-head matrices, International Journal of step, we increase the size of matrix A and we take average Computational and Mathematical Sciences 4, 268–271 operating time of algorithms. Results for k = 10 and (2010). k = 15 are illustrated in figure 1. It is easy to check that [3] G. A. Gravvanis, Solving symmetric arrowhead and special our algorithms provide better results for a large matrix. tridiagonal linear systems by fast approximate inverse preconditioning, Journal of Mathematical Modelling and Algorithms 1, 269–282 (2002). [4] H. Saberi Najafi, S. Edalatpanah, G. A. Gravvanis, An 4 Conclusions efficient method for computing the inverse of arrowhead matrices, Applied Mathematics Letters 33, 1–5 (2014). In this paper, we propose a variant of LDLT [5] M. Bixon, J. Jortner, Intramolecular radiationless transitions, decomposition of block arrowhead matrices and effective The Journal of Chemical Physics 48, 715–726 (2003).

c 2015 NSP Natural Sciences Publishing Cor. Appl. Math. Inf. Sci. 9, No. 2L, 319-324 (2015) / www.naturalspublishing.com/Journals.asp 323

[6] J. W. Gadzuk, Localized vibrational modes in Fermi liquids, [21] M. D. Petkovic,´ P. S. Stanimirovic,´ Generalized matrix general theory, Physical Review B 24, 1651–1663 (1981). inversion is not harder than matrix multiplication, Journal [7] L. Shen, B. W. Suter, Bounds for eigenvalues of arrowhead of computational and applied mathematics 230, 270–282 matrices and their applications to hub matrices and wireless (2009). communications, EURASIP Journal on Advances in Signal [22] T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein, Processing 58 (2009). Introduction to algorithms, 2, Cambridge: MIT press (2001). [8] H. T. Kung, B. W. Suter, A hub matrix theory and applications [23] K. E. Atkinson, An introduction to , John to wireless communications, EURASIP Journal on Advances Wiley & Sons Inc, (1989). in Signal Processing, (2007). [24] D. Coppersmith, S. Winograd, On the asymptotic [9] P. C. Müller, Modelling and control of mechatronic systems complexity of matrix multiplication, SIAM Journal on by the descriptor approach, Journal of Theoretical and Computing 11, 472–492 (1982). Applied Mechanics 43, 593–607 (2005). [25] D. Coppersmith, S. Winograd, Matrix multiplication via [10] A. M˛ezyk,˙ T. Trawinski,´ Modeling of drive system with arithmetic progressions, Journal of symbolic computation 9, vector controlled induction machine coupled with elastic 251–280 (1990). mechanical system, Recent Advances in Mechatronics, [26] V. V. Williams. Breaking the Coppersmith-Winograd Springer-Verlag Berlin Heidelberg, 248–252 (2007). barrier, unpublished results (2011). [11] T. Trawinski,´ K. Kluszczynski,´ W. Kołton, Lumped parameter model of double armature VCM motor for head positioning system of mass storage devices, XXI Waldemar Hołubowski Sympozjum Srodowiskowe´ PTZE, Lubliniec 2011, Przegl ˛ad is a Professor at Faculty Elektrotechniczny 87, 184–187 (2011). of Applied Mathematics [12] T. Trawinski,´ Z. Pilch, W. Burlikowski, K. Kluszczynski,´ Operation fundamentals of the electromagnetic torque at Silesian University generator part I – Properties of the pulsating torque, Technical of Technology. He obtained and Economic Aspect of Modern Technology Transfer in his PhD and DSc in pure Context of Integration with European Union, II, 255–260 mathematics at Saint (2004). Petersburg State University. [13] Z. Pilch, W. Burlikowski, T. Trawinski,´ K. Kluszczynski,´ His research interest are Operation fundamentals of the electromagnetic torque group theory, , generator part II – Design process, Technical and Economic algebraic structures, especially matrices and their Aspect of Modern Technology Transfer in Context of applications in mathematics and engineering sciences. He Integration with European Union, II, 261–265 (2004). is a referee of many mathematical journals. [14] J. Poza, E. Oyarbide, D. Roye, M. Rodriguez, Unified reference frame dq model of the brushless doubly fed machine. Electric Power Applications, IEEE Proceedings 153, 726–734 (2006). Dariusz Kurzyk is a PhD [15] I. Sarasola, J. Poza, E. Oyarbide, M. A. Rodriguez, Stability student at Faculty of Applied Analysis of a Brushless Doubly-Fed Machine under Closed Mathematics at Silesian Loop Current Control, IEEE Industrial Electronics, University of Technology. IECON 2006 – 32nd Annual Conference on, 1527–1532 He is also research assistant (2006). in Institute of Theoretical and [16] M. Da Silva, O. Bruls, B. Paijmans, W. Desmet, H. Applied Informatics, Polish Van Brussel, Concurrent simulation of mechatronic systems Academy of Sciences. His with variable mechanical configuration, Proceedings of research interests are in the ISMA2006, AMS1 – Multibody Dynamics For Multi-Physics areas of applied mathematics Applications, 69–79 (2006). and mathematical physics [17] P. Cruz, R. Ferreira, J. Sequeira, Kinematic Modeling of especially linear algebra, algorithms and data structures, Stewart-Gough Platforms, ICINICO 2005 – Robotics and parallel computations, artificial intelligence, quantum Automation, 93–99 (2005). information theory and quantum algorithms. [18] D. Słota, T. Trawinski,´ R. Wituła, Inversion of Dynamic Matrices of HDD Head Positioning System, Applied Mathematical Modelling 35, 1497–1505 (2011). [19] T. Trawinski,´ R. Wituła, Modeling of HDD head positioning systems regarded as robot manipulators using block matrices, Robot Manipulators New Achievements, Aleksandar Lazinica and Hiroyuki Kawai (Ed.), 129–144 (2010). [20] S. M. Suh, C. C. Chung, S. H. Lee, Discrete-time LQG/LTR dual-stage controller design in magnetic disk drives, IEEE Transaction on Magnetics 37, 1891–1895 (2001).

c 2015 NSP Natural Sciences Publishing Cor. 324 W. Hołubowski et. al. : A Fast Method for Computing the Inverse of...

Tomasz Trawinski´ is an assistant professor in the Department of Mechatronics, Faculty of Electrical Engineering of the Silesian University of Technology since 2000. His professional interests revolve around: mechatronics, automation and robotics, electromechanical transducers. Over the past few years his research focuses on methods of modeling and testing mass storage devices components, so-called branched manipulators and block matrix algebra utilization in technical computations.

c 2015 NSP Natural Sciences Publishing Cor.