4569846498
Multibody systems simulation software 117 referred to as sparse and the ratio of non-zero terms to the total number of matrix elements is referred to as the sparsity of the matrix. In a program such as MSC.ADAMS the sparsity of the matrix is typically in the range of 2 to 5% (Wielenga, 1987). The computer solvers that are developed in multibody systems to solve linear equations can be designed to exploit the sparsity of the [A] matrix leading to relatively fast solution times. This is one of the reasons, apart from improvements in computer hardware, that multibody systems programs can appear to solve quite complex engineering problems in seconds or minutes. These solution speeds can be quite notable when compared with other computer software such as finite elements or computational fluid dynamics programs. The solution of (3.62) follows an established approach that initially involves decomposing or factorizing the [A] matrix into the product of a lower triangular and an upper triangular matrix: [A] [L][U] (3.63) For the lower triangular matrix [L] all the elements above the diagonal are set to zero. For the upper triangular matrix [U] all the elements on and below the diagonal are set to zero. In the following step a new set of unknowns [y] is substituted into (3.63) leading to [L][U][x] [b] (3.64) [U][x] [y] (3.65) [L][y] [b] (3.66) The terms in the [L] and [U] matrices may be obtained by progressive operations on the [A] matrix where the terms in one row are all factored and then added or subtracted to the terms in another row. This process can be demonstrated by considering the expanded [A], [L] and [U] matrices as shown in (3.67) where to demonstrate the influence of sparsity some of the terms in the [A] matrix are initially set to zero: ⎡L11 0 0 0 ⎤ ⎡1 U U U ⎢L 21 L22 0 0 ⎥ ⎢ 0 1 U U ⎢ ⎥ ⎢ ⎢L31 L32 L33 0 ⎥ ⎢0 0 1 U ⎢ ⎥ ⎢ ⎣L41 L42 L43 L44 ⎦ ⎣0 0 0 1 12 13 14 23 24 (3.67) The fact that the [A] matrix is sparse leads to the [L] and [U] matrices also being sparse with subsequent savings in computer simulation time and memory storage. If we start by multiplying the rows in [L] into the first column of [U] we can begin to obtain the constants in the [L] and [U] matrices from those in the [A] matrix: L 11 A 11 L 21 A 21 L 31 A 31 L 41 A 41 34 ⎤ ⎡A11 A12 0 A14 ⎤ ⎥ ⎢A 21 0 0 A ⎥ ⎥ 24 ⎢ ⎥ ⎥ ⎢A31 0 A33 0 ⎥ ⎥ ⎢ ⎥ ⎦ ⎣A41 0 A43 A44 ⎦
118 Mutibody Systems Approach to Vehicle Dynamics In a similar manner for the second column of [U] we get: L 11 U 12 A 12 therefore U 12 A 12 /A 11 L 21 U 12 L 22 0 therefore L 22 A 21 A 12 /A 11 L 31 U 12 L 32 0 therefore L 32 A 31 A 12 /A 11 L 41 U 12 L 42 0 therefore L 42 A 41 A 12 /A 11 Moving on to the third column of [U] gives: L 11 U 13 0 therefore U 13 0 L 21 U 13 L 22 U 23 0 therefore U 23 0 L 31 U 13 L 32 U 23 L 33 A 33 therefore L 33 A 33 L 41 U 13 L 42 U 23 L 43 A 43 therefore L 43 A 43 Finishing with the multiplication of the rows in [L] into the fourth column of [U] gives: L 11 U 14 A 14 L 21 U 14 L 22 U 24 A 24 L 31 U 14 L 32 U 24 L 33 U 34 0 L 41 U 14 L 42 U 24 L 43 U 34 L 44 A 44 therefore U 14 A 14 /A 11 U 24 (A 24 A 21 A 14 /A 11 )/(A 21 A 12 /A 11 ) U 34 ((A 31 A 14 /A 11 ) (A 31 A 12 /A 11 )(A 24 A 21 A 14 /A 11 )/(A 21 A 12 /A 11 ))/A 33 L 44 A 44 A 41 A 14 /A 11 (A 41 A 12 /A 11 )(A 24 A 21 A 14 /A 11 )/(A 21 A 12 /A 11 ) A 43 ((A 31 A 14 /A 11 ) (A 31 A 12 /A 11 )(A 24 A 21 A 14 /A 11 )/ (A 21 A 12 /A 11 ))/A 13 From the preceding manipulations we can see that for this example some of the terms in the [L] and [U] matrices come to zero. Using this we can update (3.67) to give ⎡L11 0 0 0 ⎤ ⎡1 ⎢L 21 L22 0 0 ⎥ ⎢ 0 ⎢ ⎥ ⎢ ⎢L31 L32 L33 0 ⎥ ⎢0 ⎢ ⎥ ⎢ ⎣L41 L42 L43 L44 ⎦ ⎣0 U12 0 U14 ⎤ ⎡A11 A12 0 A14 ⎤ 1 0 U ⎥ ⎢ 24 A21 0 0 A ⎥ ⎥ 24 ⎢ ⎥ 0 1 U34 ⎥ ⎢A31 0 A33 0 ⎥ ⎥ ⎢ ⎥ 0 0 1 ⎦ ⎣A41 0 A43 A44 ⎦ (3.68) Consideration of (3.68) reveals that some elements in the factors [L] and [U] are non-zero where the corresponding elements in [A] are zero. Such elements, for example L 22 , L 32 , and L 42 here, are referred to as ‘fills’. Having completed the decomposition process of factorizing the [A] matrix into the [L] and [U] matrices the next step, forward–backward substitution, can commence. The first step is a forward substitution, utilizing the now known terms in the [L] matrix to find the terms in [y]. For this example if we expand
- Page 90 and 91: Kinematics and dynamics of rigid bo
- Page 92 and 93: Kinematics and dynamics of rigid bo
- Page 94 and 95: Kinematics and dynamics of rigid bo
- Page 96 and 97: Kinematics and dynamics of rigid bo
- Page 98 and 99: 3 Multibody systems simulation soft
- Page 100 and 101: Multibody systems simulation softwa
- Page 102 and 103: Multibody systems simulation softwa
- Page 104 and 105: Multibody systems simulation softwa
- Page 106 and 107: Multibody systems simulation softwa
- Page 108 and 109: Multibody systems simulation softwa
- Page 110 and 111: Multibody systems simulation softwa
- Page 112 and 113: Multibody systems simulation softwa
- Page 114 and 115: Multibody systems simulation softwa
- Page 116 and 117: Multibody systems simulation softwa
- Page 118 and 119: Multibody systems simulation softwa
- Page 120 and 121: Multibody systems simulation softwa
- Page 122 and 123: Multibody systems simulation softwa
- Page 124 and 125: Multibody systems simulation softwa
- Page 126 and 127: Multibody systems simulation softwa
- Page 128 and 129: Multibody systems simulation softwa
- Page 130 and 131: Multibody systems simulation softwa
- Page 132 and 133: Multibody systems simulation softwa
- Page 134 and 135: Multibody systems simulation softwa
- Page 136 and 137: Multibody systems simulation softwa
- Page 138 and 139: Multibody systems simulation softwa
- Page 142 and 143: Multibody systems simulation softwa
- Page 144 and 145: Multibody systems simulation softwa
- Page 146 and 147: Multibody systems simulation softwa
- Page 148 and 149: Multibody systems simulation softwa
- Page 150 and 151: Multibody systems simulation softwa
- Page 152 and 153: Multibody systems simulation softwa
- Page 154 and 155: 4 Modelling and analysis of suspens
- Page 156 and 157: Modelling and analysis of suspensio
- Page 158 and 159: Modelling and analysis of suspensio
- Page 160 and 161: Modelling and analysis of suspensio
- Page 162 and 163: Modelling and analysis of suspensio
- Page 164 and 165: Modelling and analysis of suspensio
- Page 166 and 167: Modelling and analysis of suspensio
- Page 168 and 169: Modelling and analysis of suspensio
- Page 170 and 171: Modelling and analysis of suspensio
- Page 172 and 173: Modelling and analysis of suspensio
- Page 174 and 175: Modelling and analysis of suspensio
- Page 176 and 177: Modelling and analysis of suspensio
- Page 178 and 179: Modelling and analysis of suspensio
- Page 180 and 181: Modelling and analysis of suspensio
- Page 182 and 183: Modelling and analysis of suspensio
- Page 184 and 185: Modelling and analysis of suspensio
- Page 186 and 187: Modelling and analysis of suspensio
- Page 188 and 189: Modelling and analysis of suspensio
Multibody systems simulation software 117<br />
referred to as sparse and the ratio of non-zero terms to the total number of<br />
matrix elements is referred to as the sparsity of the matrix. In a program<br />
such as MSC.ADAMS the sparsity of the matrix is typically in the range of<br />
2 to 5% (Wielenga, 1987). The computer solvers that are developed in<br />
multibody systems to solve linear equations can be designed to exploit the<br />
sparsity of the [A] matrix leading to relatively fast solution times. This is<br />
one of the reasons, apart from improvements in computer hardware, that<br />
multibody systems programs can appear to solve quite complex engineering<br />
problems in seconds or minutes. These solution speeds can be quite notable<br />
when compared with other computer software such as finite elements or<br />
computational fluid dynamics programs.<br />
The solution of (3.62) follows an established approach that initially<br />
involves decomposing or factorizing the [A] matrix into the product of a<br />
lower triangular and an upper triangular matrix:<br />
[A] [L][U] (3.63)<br />
For the lower triangular matrix [L] all the elements above the diagonal are<br />
set to zero. For the upper triangular matrix [U] all the elements on and<br />
below the diagonal are set to zero. In the following step a new set of<br />
unknowns [y] is substituted into (3.63) leading to<br />
[L][U][x] [b] (3.64)<br />
[U][x] [y] (3.65)<br />
[L][y] [b] (3.66)<br />
The terms in the [L] and [U] matrices may be obtained by progressive operations<br />
on the [A] matrix where the terms in one row are all factored and<br />
then added or subtracted to the terms in another row. This process can be<br />
demonstrated by considering the expanded [A], [L] and [U] matrices as<br />
shown in (3.67) where to demonstrate the influence of sparsity some of the<br />
terms in the [A] matrix are initially set to zero:<br />
⎡L11<br />
0 0 0 ⎤ ⎡1<br />
U U U<br />
⎢L<br />
21 L22<br />
0 0 ⎥ ⎢<br />
0 1 U U<br />
⎢<br />
⎥ ⎢<br />
⎢L31 L32 L33<br />
0 ⎥ ⎢0 0 1 U<br />
⎢<br />
⎥ ⎢<br />
⎣L41 L42 L43 L44<br />
⎦ ⎣0 0 0 1<br />
12 13 14<br />
23 24<br />
(3.67)<br />
The fact that the [A] matrix is sparse leads to the [L] and [U] matrices also<br />
being sparse with subsequent savings in computer simulation time and memory<br />
storage. If we start by multiplying the rows in [L] into the first column<br />
of [U] we can begin to obtain the constants in the [L] and [U] matrices from<br />
those in the [A] matrix:<br />
L 11 A 11<br />
L 21 A 21<br />
L 31 A 31<br />
L 41 A 41<br />
34<br />
⎤ ⎡A11 A12 0 A14<br />
⎤<br />
⎥ ⎢A<br />
21 0 0 A ⎥<br />
⎥<br />
24<br />
⎢<br />
⎥<br />
⎥ ⎢A31 0 A33<br />
0 ⎥<br />
⎥ ⎢<br />
⎥<br />
⎦ ⎣A41 0 A43 A44<br />
⎦