1 00:00:00,040 --> 00:00:02,470 The following content is provided under a Creative 2 00:00:02,470 --> 00:00:03,880 Commons license. 3 00:00:03,880 --> 00:00:06,920 Your support will help MIT OpenCourseWare continue to 4 00:00:06,920 --> 00:00:10,570 offer high-quality educational resources for free. 5 00:00:10,570 --> 00:00:13,470 To make a donation or view additional materials from 6 00:00:13,470 --> 00:00:17,400 hundreds of MIT courses, visit MIT OpenCourseWare at 7 00:00:17,400 --> 00:00:18,650 ocw.mit.edu. 8 00:00:21,110 --> 00:00:23,190 PROFESSOR: Ladies and gentlemen, welcome to 9 00:00:23,190 --> 00:00:25,650 lecture number 9. 10 00:00:25,650 --> 00:00:28,450 In this lecture, I would like to discuss with you the 11 00:00:28,450 --> 00:00:33,040 solution of equilibrium equations in static analysis. 12 00:00:33,040 --> 00:00:38,330 In the earlier lectures, we derived equations KU equals R. 13 00:00:38,330 --> 00:00:41,780 And we now have to solve these equations for the 14 00:00:41,780 --> 00:00:45,370 displacements stored in the vector U. 15 00:00:45,370 --> 00:00:48,640 This is an important phase of the finite element analysis, 16 00:00:48,640 --> 00:00:52,000 because much of the computational effort goes into 17 00:00:52,000 --> 00:00:54,430 the solution of these equations. 18 00:00:54,430 --> 00:00:57,810 In the earliest finite element analyses, iterative methods 19 00:00:57,810 --> 00:01:02,820 were used, among them the Gauss-Seidel method. 20 00:01:02,820 --> 00:01:07,200 Now, the basic disadvantage of using an iterative method is 21 00:01:07,200 --> 00:01:10,060 that we do not know how many iterations have to be 22 00:01:10,060 --> 00:01:14,460 performed for solution, and thus it is very difficult to 23 00:01:14,460 --> 00:01:17,980 estimate the total solution effort to solve the equations 24 00:01:17,980 --> 00:01:25,460 KU equals R. Now we use almost exclusively direct methods, or 25 00:01:25,460 --> 00:01:29,950 computer programs that are in industry, in abundance use, 26 00:01:29,950 --> 00:01:32,590 are basically using direct methods. 27 00:01:32,590 --> 00:01:37,490 And these direct methods are basically variations of Gauss 28 00:01:37,490 --> 00:01:41,500 elimination, a method that Gauss some 100 years ago 29 00:01:41,500 --> 00:01:45,160 proposed for the solution of equations. 30 00:01:45,160 --> 00:01:48,350 Now we are talking about static condensation, 31 00:01:48,350 --> 00:01:52,790 substructuring, frontal solution, LDL transpose 32 00:01:52,790 --> 00:01:56,680 factorization, Cholesky decomposition. 33 00:01:56,680 --> 00:02:00,150 We are also talking about the crude method, the column 34 00:02:00,150 --> 00:02:02,920 reduction skyline solver. 35 00:02:02,920 --> 00:02:08,509 But all of these methods are indeed variations of the basic 36 00:02:08,509 --> 00:02:11,360 Gauss elimination procedure. 37 00:02:11,360 --> 00:02:14,740 These are direct methods because the number of 38 00:02:14,740 --> 00:02:19,370 operations can be counted for the solution of the equations. 39 00:02:19,370 --> 00:02:24,290 In fact, the number of operations for a system with n 40 00:02:24,290 --> 00:02:37,520 equations, a half bandwidth m, is 1/2 nm squared, where we of 41 00:02:37,520 --> 00:02:41,410 course use a half bandwidth m that is 42 00:02:41,410 --> 00:02:44,030 constant for the system. 43 00:02:44,030 --> 00:02:48,200 If the bandwidth varied, some adjustments have to be made to 44 00:02:48,200 --> 00:02:49,240 that variable m. 45 00:02:49,240 --> 00:02:51,040 A mean value has to be used. 46 00:02:51,040 --> 00:02:54,390 However, the important point is that we actually can count 47 00:02:54,390 --> 00:02:58,640 the number of operations to obtain the solution, which was 48 00:02:58,640 --> 00:03:01,160 not the case in the iterative method, because we did not 49 00:03:01,160 --> 00:03:03,820 know how many iterations have to be performed. 50 00:03:03,820 --> 00:03:07,950 What I would like to do now in this lecture is to very 51 00:03:07,950 --> 00:03:11,550 briefly review with you how the basic Gauss elimination is 52 00:03:11,550 --> 00:03:15,340 performed, and then I would like to show to you how this 53 00:03:15,340 --> 00:03:18,370 method is indeed the basis of static condensation 54 00:03:18,370 --> 00:03:20,830 substructuring, et cetera. 55 00:03:20,830 --> 00:03:24,370 We will finally also consider the column reduction skyline 56 00:03:24,370 --> 00:03:27,550 solver, which is very effectively used, and that is 57 00:03:27,550 --> 00:03:31,600 in fact the equation solver that is used in Sab and the 58 00:03:31,600 --> 00:03:33,230 ADINA program. 59 00:03:33,230 --> 00:03:39,770 Well, I have prepared, as before, some view graphs here. 60 00:03:39,770 --> 00:03:43,820 And the first view graph here shows a system of equations. 61 00:03:43,820 --> 00:03:45,720 This is the K matrix here. 62 00:03:45,720 --> 00:03:47,580 This is a displacement vector. 63 00:03:47,580 --> 00:03:49,340 This a load vector. 64 00:03:49,340 --> 00:03:54,460 And I will show you later on a physical system which in fact 65 00:03:54,460 --> 00:03:58,110 gives this stiffness matrix K. But let's look now at the 66 00:03:58,110 --> 00:04:01,990 system simply as an example for solving equations. 67 00:04:01,990 --> 00:04:04,210 In the basic Gauss elimination procedure, 68 00:04:04,210 --> 00:04:05,860 we proceed as follows. 69 00:04:05,860 --> 00:04:10,590 We subtract a multiple of this equation here from the second 70 00:04:10,590 --> 00:04:14,230 equation and the third equation in order to produce 71 00:04:14,230 --> 00:04:20,100 here a 0, and to produce here a 0. 72 00:04:20,100 --> 00:04:27,490 Well, to obtain a 0 here, we have to take 1/5 of this 73 00:04:27,490 --> 00:04:31,770 equation, 1/5 of that equation, and subtract it from 74 00:04:31,770 --> 00:04:33,380 this equation. 75 00:04:33,380 --> 00:04:38,940 1/5 because then we obtain a 1 here, and that 1 knocks that 1 76 00:04:38,940 --> 00:04:40,820 out to obtain a 0. 77 00:04:40,820 --> 00:04:45,170 We have to subtract minus 4/5 of this equation from the 78 00:04:45,170 --> 00:04:48,290 second equation, and we obtain a 0 here, too. 79 00:04:48,290 --> 00:04:53,970 While this process is shown on the next view graph, the 80 00:04:53,970 --> 00:04:57,930 result of that process is this set of equations. 81 00:04:57,930 --> 00:05:01,070 We now have produced our 0 here, our 0 here. 82 00:05:01,070 --> 00:05:03,470 Of course we had already a 0 here. 83 00:05:03,470 --> 00:05:09,010 We will see later on that the matrix in here, the 3-by-3 84 00:05:09,010 --> 00:05:12,490 matrix, bounded by the dash lines on the side, in fact 85 00:05:12,490 --> 00:05:14,300 represents a stiffness matrix. 86 00:05:14,300 --> 00:05:19,540 That's important, because a stiffness matrix has always 87 00:05:19,540 --> 00:05:23,210 positive elements on the diagonal. 88 00:05:23,210 --> 00:05:26,190 Otherwise it is not a stiffness matrix. 89 00:05:26,190 --> 00:05:29,060 It does not govern a stable structure. 90 00:05:29,060 --> 00:05:32,440 See, here we have diagonal elements that are all 91 00:05:32,440 --> 00:05:37,220 positive, and if we can show that in the Gauss elimination 92 00:05:37,220 --> 00:05:41,050 procedure, we are still always producing new stiffness 93 00:05:41,050 --> 00:05:45,120 matrices, here a 3-by-3 matrix, then we directly can 94 00:05:45,120 --> 00:05:49,810 conclude that the diagonal elements must remain positive. 95 00:05:49,810 --> 00:05:53,500 Well, in the Gauss elimination procedure, the same process 96 00:05:53,500 --> 00:05:59,050 that we use to obtain from the 4-by-4 or 3-by-3 system is now 97 00:05:59,050 --> 00:06:02,220 carried on to obtain, from the 3-by-3 system, 98 00:06:02,220 --> 00:06:04,190 a new 2-by-2 system. 99 00:06:04,190 --> 00:06:07,330 This means that we have to subtract a multiple of the 100 00:06:07,330 --> 00:06:11,970 third equation from the fourth equation and the fifth 101 00:06:11,970 --> 00:06:15,440 equation in order to obtain a 0 here and a 0 here. 102 00:06:15,440 --> 00:06:21,870 For example, 5/14 of the second equation is subtracted 103 00:06:21,870 --> 00:06:25,410 from the fourth equation to obtain a 0 here. 104 00:06:25,410 --> 00:06:31,630 The result of that operation is this matrix here. 105 00:06:31,630 --> 00:06:35,000 Now we have a 2-by-2 matrix here. 106 00:06:35,000 --> 00:06:37,480 Again, positive elements on the diagonal. 107 00:06:37,480 --> 00:06:40,860 In fact, this is a 2-by-2 stiffness matrix, as I will be 108 00:06:40,860 --> 00:06:43,640 showing to you just now. 109 00:06:43,640 --> 00:06:49,350 Finally we proceed again, once more, with the same step, to 110 00:06:49,350 --> 00:06:54,030 produce a 0 here, which means that we have to subtract from 111 00:06:54,030 --> 00:07:00,120 this fourth equation a minus 20/7 divided by 112 00:07:00,120 --> 00:07:03,040 15/7 of this equation. 113 00:07:03,040 --> 00:07:08,430 And the result, then, is this set of equations here. 114 00:07:08,430 --> 00:07:11,940 Notice that we now have a single element here, and in 115 00:07:11,940 --> 00:07:17,870 fact, this is a stiffness matrix, in this case, a 1-by-1 116 00:07:17,870 --> 00:07:23,500 stiffness matrix, just one element, that governs the 117 00:07:23,500 --> 00:07:26,730 behavior of a single spring. 118 00:07:26,730 --> 00:07:30,710 The solution off the equations is now completed by solving 119 00:07:30,710 --> 00:07:35,670 for u4 from this relation down here. 120 00:07:35,670 --> 00:07:38,250 This is a 1 degree of freedom system. 121 00:07:38,250 --> 00:07:44,020 Knowing u4, we can go back to this equation here, substitute 122 00:07:44,020 --> 00:07:49,030 u4 in, and the only unknown variable is u3. 123 00:07:49,030 --> 00:07:52,180 We solve, therefore, u3 from this equation. 124 00:07:52,180 --> 00:07:54,510 Now we know u4 and u3. 125 00:07:54,510 --> 00:07:56,560 We now go to this equation. 126 00:07:56,560 --> 00:08:00,710 Knowing u3 u4, the only unknown in this 127 00:08:00,710 --> 00:08:03,630 equation here is now u2. 128 00:08:03,630 --> 00:08:07,350 We can calculate u2, and repeating the process, we can 129 00:08:07,350 --> 00:08:08,640 calculate u1. 130 00:08:08,640 --> 00:08:11,400 A very simple, straightforward procedure, 131 00:08:11,400 --> 00:08:13,010 but extremely powerful. 132 00:08:13,010 --> 00:08:16,800 The result of that solution is shown here. 133 00:08:16,800 --> 00:08:24,180 Notice u1 is simply obtained by this operation here. 134 00:08:24,180 --> 00:08:31,720 Of course, here we're having u2 and u3 in that we 135 00:08:31,720 --> 00:08:32,929 calculated already. 136 00:08:32,929 --> 00:08:36,640 u2 is calculated here. u4 is calculated here. 137 00:08:36,640 --> 00:08:41,200 It might be easier to actually look at it the way we 138 00:08:41,200 --> 00:08:43,100 discussed it just now. 139 00:08:43,100 --> 00:08:45,600 We call that the back substitution, because we are 140 00:08:45,600 --> 00:08:49,940 coming from below upwards, and in the back substitution, we 141 00:08:49,940 --> 00:08:51,730 have u4 first. 142 00:08:51,730 --> 00:08:53,660 We then calculate u3. 143 00:08:53,660 --> 00:08:55,740 u4 is known now, remember. 144 00:08:55,740 --> 00:08:59,570 We can substitute directly u4 into here, and we get u3. 145 00:08:59,570 --> 00:09:04,500 Knowing now u3 and u4, we can get u2, as shown here. 146 00:09:04,500 --> 00:09:07,860 And finally, we get u2. 147 00:09:07,860 --> 00:09:11,260 This is the basic Gauss elimination procedure, an 148 00:09:11,260 --> 00:09:13,090 extremely powerful process. 149 00:09:13,090 --> 00:09:16,300 And I would like to show you know how this procedure 150 00:09:16,300 --> 00:09:19,620 relates to the static condensation and relates to 151 00:09:19,620 --> 00:09:23,610 the other techniques, and how we then actually use this 152 00:09:23,610 --> 00:09:27,230 basic Gauss elimination procedure in an actual finite 153 00:09:27,230 --> 00:09:28,580 element program. 154 00:09:28,580 --> 00:09:31,380 Well, static condensation is the first topic that I'd like 155 00:09:31,380 --> 00:09:33,130 to talk about. 156 00:09:33,130 --> 00:09:36,720 The basic process is here that we are partitioning the total 157 00:09:36,720 --> 00:09:40,260 matrix into the following parts. 158 00:09:40,260 --> 00:09:44,290 A Kaa, Kac, Kca, and Kcc part. 159 00:09:44,290 --> 00:09:52,330 The cc part goes with Uc, the displacements Uc, which we 160 00:09:52,330 --> 00:09:55,020 want to condense statically out. 161 00:09:55,020 --> 00:09:59,630 Notice I'm putting the degrees of freedom that I want to 162 00:09:59,630 --> 00:10:03,670 condense out at the bottom of the U vector. 163 00:10:03,670 --> 00:10:08,140 Well, by static condensation we mean that we express Uc in 164 00:10:08,140 --> 00:10:13,800 terms of Ua, which this equation here is obtained from 165 00:10:13,800 --> 00:10:17,270 the bottom equation here. 166 00:10:17,270 --> 00:10:22,000 We then substitute Uc in the top equation here, and the 167 00:10:22,000 --> 00:10:24,360 result is this equation here. 168 00:10:26,910 --> 00:10:30,820 Notice that the results can be remembered quite easily 169 00:10:30,820 --> 00:10:36,100 because we have here an aa, Kaa, then we have an a here, a 170 00:10:36,100 --> 00:10:38,250 c, a cc, ca. 171 00:10:38,250 --> 00:10:42,910 Notice that one might say, just for remembering it, that 172 00:10:42,910 --> 00:10:46,910 this c knocks out that c, this c knocks out that c, and what 173 00:10:46,910 --> 00:10:49,340 we are left with are aa's. 174 00:10:49,340 --> 00:10:51,990 And that means an aa here, an aa here. 175 00:10:51,990 --> 00:10:54,700 So the dimensions are compatible of the matrices, 176 00:10:54,700 --> 00:10:58,720 and the result is, I call it here, K bar aa. 177 00:10:58,720 --> 00:11:05,020 Of course the right-hand side has also changed, because the 178 00:11:05,020 --> 00:11:10,790 components must have an effect on the equation that give Ua. 179 00:11:10,790 --> 00:11:14,990 Well, let's look at this process, called the static 180 00:11:14,990 --> 00:11:20,540 condensation process, for our simple example. 181 00:11:20,540 --> 00:11:23,760 And in this example now, I deliberately 182 00:11:23,760 --> 00:11:26,440 put the Kcc up here. 183 00:11:26,440 --> 00:11:31,300 In other words, the Uc degree of freedom is now the U1. 184 00:11:31,300 --> 00:11:36,520 This is all our Uc vector only containing now one component. 185 00:11:36,520 --> 00:11:41,580 The static condensation was originally proposed by 186 00:11:41,580 --> 00:11:44,840 considering or statically condensing out of the last 187 00:11:44,840 --> 00:11:48,610 equation, and that is how it's usually used also in finite 188 00:11:48,610 --> 00:11:49,680 element analysis. 189 00:11:49,680 --> 00:11:53,470 As an example, if we have incompatible modes, we might 190 00:11:53,470 --> 00:11:56,990 condense out the incompatible degrees of freedom, just as 191 00:11:56,990 --> 00:11:57,860 shown here. 192 00:11:57,860 --> 00:12:03,480 Or if we have internal degrees of freedom in finite elements 193 00:12:03,480 --> 00:12:08,090 that only that only couple with the bound the degrees of 194 00:12:08,090 --> 00:12:11,490 freedom of a finite element, we could condense them out 195 00:12:11,490 --> 00:12:15,240 this way, and then we would have this as the last degree 196 00:12:15,240 --> 00:12:15,900 of freedom. 197 00:12:15,900 --> 00:12:18,420 This would be Uc degrees of freedom, and we would condense 198 00:12:18,420 --> 00:12:20,170 them out, just as shown here. 199 00:12:20,170 --> 00:12:23,060 However, in order to show you how the static condensation 200 00:12:23,060 --> 00:12:27,530 relates to Gauss elimination, I want to look at the example 201 00:12:27,530 --> 00:12:30,220 that we looked at earlier already, and this the 202 00:12:30,220 --> 00:12:31,670 partitioning I have used. 203 00:12:31,670 --> 00:12:35,690 U1 now being the UC, U2 U4 being the 204 00:12:35,690 --> 00:12:36,790 Ua degrees of freedom. 205 00:12:36,790 --> 00:12:39,850 So I want to now statically condense out Uc. 206 00:12:39,850 --> 00:12:44,980 The result of the K bar aa is shown here. 207 00:12:44,980 --> 00:12:51,200 Notice we are taking this part, this part here, this 208 00:12:51,200 --> 00:12:56,800 part here goes right there, this vector here is this 209 00:12:56,800 --> 00:13:03,160 vector here, 1/5 is the inverse of Kcc, and this 210 00:13:03,160 --> 00:13:06,450 vector here is that vector there. 211 00:13:06,450 --> 00:13:09,300 Well, performing these operations, the 212 00:13:09,300 --> 00:13:12,640 result is this one here. 213 00:13:12,640 --> 00:13:13,620 That is the result. 214 00:13:13,620 --> 00:13:17,300 And if we go back to our earlier Gauss elimination 215 00:13:17,300 --> 00:13:23,110 procedure, we in fact notice that this matrix, K bar aa, is 216 00:13:23,110 --> 00:13:27,110 nothing else than the matrix that we derived from the 217 00:13:27,110 --> 00:13:32,920 4-by-4 system when we eliminated the non-zero 218 00:13:32,920 --> 00:13:34,400 elements here. 219 00:13:34,400 --> 00:13:37,250 In other words, we subtracted in the Gauss elimination from 220 00:13:37,250 --> 00:13:41,480 the second equation and the third equation a multiple of 221 00:13:41,480 --> 00:13:43,610 the first equation, we got these zeros here. 222 00:13:43,610 --> 00:13:46,000 The result was this 3-by-3 matrix. 223 00:13:46,000 --> 00:13:49,640 And that 3-by-3 matrix is exactly this matrix. 224 00:13:49,640 --> 00:13:53,310 So what have we been doing then in the Gauss elimination? 225 00:13:53,310 --> 00:13:57,900 We have really statically condensed out the first degree 226 00:13:57,900 --> 00:14:02,600 of freedom, and we have obtained a stiffness matrix, K 227 00:14:02,600 --> 00:14:06,570 bar aa, in that Gauss elimination procedure. 228 00:14:06,570 --> 00:14:11,120 We can now also look at the physics that we have been 229 00:14:11,120 --> 00:14:13,860 going through, and this is, in my opinion, a very 230 00:14:13,860 --> 00:14:15,760 important part also. 231 00:14:15,760 --> 00:14:19,400 We start off with this matrix here. 232 00:14:19,400 --> 00:14:23,640 Notice the following00 this now is the stiffness matrix of 233 00:14:23,640 --> 00:14:29,720 this beam for the U1 to the U4 degrees of freedom. 234 00:14:29,720 --> 00:14:35,070 This stiffness matrix actually has been derived by finite 235 00:14:35,070 --> 00:14:37,360 differences. 236 00:14:37,360 --> 00:14:43,920 It is a nice example to show demonstratively what happens 237 00:14:43,920 --> 00:14:46,120 in the Gauss elimination. 238 00:14:46,120 --> 00:14:48,780 Of course, we could've also used a finite element system, 239 00:14:48,780 --> 00:14:51,700 but I chose here a finite difference matrix, which is 240 00:14:51,700 --> 00:14:56,500 still a stiffness matrix, and which I can use very nicely to 241 00:14:56,500 --> 00:14:59,340 show to you the basic procedures of the Gauss 242 00:14:59,340 --> 00:15:00,150 elimination. 243 00:15:00,150 --> 00:15:04,390 So this stiffness matrix governed this system here. 244 00:15:04,390 --> 00:15:05,670 Notice the following. 245 00:15:05,670 --> 00:15:12,340 The first column, this column here, represents the forces. 246 00:15:12,340 --> 00:15:20,300 When I displace this node, if you think of this as a note, 247 00:15:20,300 --> 00:15:23,870 by unity, and keep all the other degrees 248 00:15:23,870 --> 00:15:25,160 of freedom to 0-- 249 00:15:25,160 --> 00:15:28,230 in other words, if I put this deflected 250 00:15:28,230 --> 00:15:32,000 shape onto the beam-- 251 00:15:32,000 --> 00:15:38,520 0 displacements right here, but a unit displacement here. 252 00:15:38,520 --> 00:15:40,240 That is a unit displacement. 253 00:15:40,240 --> 00:15:43,710 Now notice, these are the forces that have to act at 254 00:15:43,710 --> 00:15:48,940 these degrees of freedom in order to give 255 00:15:48,940 --> 00:15:50,240 this deflected shape. 256 00:15:50,240 --> 00:15:52,840 The force here, if I put them here in 257 00:15:52,840 --> 00:15:55,090 blue, is 5, as an example. 258 00:15:55,090 --> 00:15:58,630 The force here is minus 4. 259 00:15:58,630 --> 00:16:07,140 The force here is 1, and the force here turns out to be 0. 260 00:16:07,140 --> 00:16:08,950 That element, or that element, of course, we 261 00:16:08,950 --> 00:16:10,200 have a symmetric matrix. 262 00:16:14,140 --> 00:16:17,010 And of course, in the same way, we can interpret other 263 00:16:17,010 --> 00:16:19,200 elements in this matrix. 264 00:16:19,200 --> 00:16:24,290 1 column represents always forces that have to act onto 265 00:16:24,290 --> 00:16:28,660 the system in order to obtain unit displacements at 1 degree 266 00:16:28,660 --> 00:16:29,150 of freedom. 267 00:16:29,150 --> 00:16:31,790 If you look at the I's column, then it's the 268 00:16:31,790 --> 00:16:32,980 I's degree of freedom. 269 00:16:32,980 --> 00:16:38,510 And all the other degrees of freedom are set to 0. 270 00:16:38,510 --> 00:16:42,890 Well, if we perform our Gauss elimination or static 271 00:16:42,890 --> 00:16:45,590 condensation-- we have shown that it is the same-- 272 00:16:45,590 --> 00:16:48,270 on this system, in the first step, we 273 00:16:48,270 --> 00:16:51,640 obtain a 3-by-3 matrix. 274 00:16:51,640 --> 00:16:54,770 Physically, what we have obtained is the stiffness 275 00:16:54,770 --> 00:16:57,280 matrix of this system now. 276 00:16:57,280 --> 00:17:01,860 And the following important point is now to be noted. 277 00:17:01,860 --> 00:17:05,930 If I look at this column just in the same way as I looked at 278 00:17:05,930 --> 00:17:09,569 the first column of the 4-by-4 system, then this column 279 00:17:09,569 --> 00:17:14,369 represents now the forces that are required at these degrees 280 00:17:14,369 --> 00:17:20,880 of freedom to impose a unit displacement here at this 281 00:17:20,880 --> 00:17:26,760 degree of freedom, this now being unity, with 0 282 00:17:26,760 --> 00:17:29,030 displacements here. 283 00:17:29,030 --> 00:17:32,065 And the force required here is 14/5. 284 00:17:35,000 --> 00:17:38,360 That is the force that I have to apply here to get a unit 285 00:17:38,360 --> 00:17:39,530 displacement here. 286 00:17:39,530 --> 00:17:42,710 At the same time, I have to apply here a force of minus 287 00:17:42,710 --> 00:17:48,770 16/5, and I have to apply here a force of 1. 288 00:17:48,770 --> 00:17:55,970 So I'm talking again about forces acting onto the system 289 00:17:55,970 --> 00:17:57,890 in this matrix here. 290 00:17:57,890 --> 00:18:02,860 And these forces are stored in the columns or the rows off 291 00:18:02,860 --> 00:18:07,200 the matrix, and in the I's column or row, I have the 292 00:18:07,200 --> 00:18:12,030 forces required to impose a unit displacement at the I's 293 00:18:12,030 --> 00:18:15,960 degree of freedom with all the degrees of freedom being 0. 294 00:18:15,960 --> 00:18:19,800 And the important point is that having performed now the 295 00:18:19,800 --> 00:18:22,940 Gauss elimination, here I do not have 296 00:18:22,940 --> 00:18:24,840 anymore a degree of freedom. 297 00:18:24,840 --> 00:18:27,190 The system is free to go down here. 298 00:18:29,800 --> 00:18:32,650 And that's what we mean by static condensation, really. 299 00:18:32,650 --> 00:18:36,360 We have taken a degree of freedom out of the system. 300 00:18:36,360 --> 00:18:41,570 Proceeding in the same way, we obtain this 2 by 2 system. 301 00:18:41,570 --> 00:18:43,590 Now we only have 2 degrees of freedom. 302 00:18:43,590 --> 00:18:46,950 I have condensed out this degree of freedom and that 303 00:18:46,950 --> 00:18:48,710 degree of freedom, which were there. 304 00:18:48,710 --> 00:18:51,840 The beam is now free to move down here, so the deflected 305 00:18:51,840 --> 00:18:57,720 shape corresponding to U3, this one here, would be like 306 00:18:57,720 --> 00:19:01,110 that, with 0 displacement here, and unit 307 00:19:01,110 --> 00:19:03,170 displacement there. 308 00:19:03,170 --> 00:19:06,770 The forces required at these degrees of freedom are stored 309 00:19:06,770 --> 00:19:08,530 in this column here. 310 00:19:08,530 --> 00:19:13,970 Now, we immediately can observe that since we are 311 00:19:13,970 --> 00:19:17,930 talking about a physical system into which we have to 312 00:19:17,930 --> 00:19:22,850 put energy to deform it, we can conclude that these 313 00:19:22,850 --> 00:19:26,650 elements here must be positive elements. 314 00:19:26,650 --> 00:19:29,510 In other words, the diagonal elements in the stiffness 315 00:19:29,510 --> 00:19:32,290 matrices that we derive must be positive. 316 00:19:32,290 --> 00:19:36,560 They must be positive because if I push down the U3 degree 317 00:19:36,560 --> 00:19:43,710 of freedom to obtain a unit displacement, surely the force 318 00:19:43,710 --> 00:19:46,960 that I have to apply here must be positive. 319 00:19:46,960 --> 00:19:51,500 In other words, it must be a force into the direction of 320 00:19:51,500 --> 00:19:53,770 the degree of freedom U3. 321 00:19:53,770 --> 00:19:57,400 And that means this must be a positive element. 322 00:19:57,400 --> 00:20:01,440 So if, in a Gauss elimination procedure, we obtain, all of a 323 00:20:01,440 --> 00:20:06,180 sudden, a negative diagonal element, this one or that one, 324 00:20:06,180 --> 00:20:09,410 as an example, then we would know that the structure we are 325 00:20:09,410 --> 00:20:13,100 analyzing is unstable. 326 00:20:13,100 --> 00:20:16,590 In the final step of the Gauss elimination, we obtain a 327 00:20:16,590 --> 00:20:20,700 single degree of freedom system. 328 00:20:20,700 --> 00:20:23,040 And that single degree of freedom system 329 00:20:23,040 --> 00:20:25,050 behaves like that. 330 00:20:25,050 --> 00:20:28,000 Notice no more degree of freedoms here. 331 00:20:28,000 --> 00:20:31,630 And the equation-- 332 00:20:31,630 --> 00:20:34,760 I have to apologize that this matrix has been written a 333 00:20:34,760 --> 00:20:35,530 little bit down. 334 00:20:35,530 --> 00:20:36,740 It should be a little bit higher. 335 00:20:36,740 --> 00:20:38,780 They should, of course, be aligned these three. 336 00:20:38,780 --> 00:20:43,380 But basically, we have 5/6 times U4 equals 7/6. 337 00:20:43,380 --> 00:20:47,530 And this here is really nothing else than the 338 00:20:47,530 --> 00:20:50,130 stiffness of a spring. 339 00:20:50,130 --> 00:20:57,260 A spring K having us a number 5/6. 340 00:20:57,260 --> 00:21:00,220 In other words, a spring stiffness of 5/6 here. 341 00:21:00,220 --> 00:21:03,130 This is U4, the U4 degree of freedom. 342 00:21:03,130 --> 00:21:08,270 And the force applied to that spring is 7/6. 343 00:21:08,270 --> 00:21:10,350 We have a single degree of freedom system. 344 00:21:10,350 --> 00:21:14,520 But notice that this single degree of freedom system, this 345 00:21:14,520 --> 00:21:20,220 stiffness now, K equals 5/6, contains really all the 346 00:21:20,220 --> 00:21:23,030 physical properties of that beam. 347 00:21:23,030 --> 00:21:28,030 The effect of the other degrees of freedom, U1, U2, 348 00:21:28,030 --> 00:21:32,340 U3, have been carried over into this spring stiffness. 349 00:21:32,340 --> 00:21:38,190 Similarly, 7/6 is the force which is a result off the 350 00:21:38,190 --> 00:21:40,090 other forces that were applied to the 351 00:21:40,090 --> 00:21:41,770 other degrees of freedom. 352 00:21:41,770 --> 00:21:44,670 And now from the single degree of freedom system, of course, 353 00:21:44,670 --> 00:21:49,470 we can solve for U4, and then we go back to the 2 degree of 354 00:21:49,470 --> 00:21:53,990 freedom system to solve for U3, and so on. 355 00:21:53,990 --> 00:21:57,690 By that back substitution process, we obtain thus the 356 00:21:57,690 --> 00:22:03,820 displacement that the beam is actually undergoing. 357 00:22:03,820 --> 00:22:07,930 So the important point is that when we do perform Gauss 358 00:22:07,930 --> 00:22:11,910 elimination, we really operate always on physical systems. 359 00:22:11,910 --> 00:22:16,150 We operate always from one stiffness matrix on to another 360 00:22:16,150 --> 00:22:19,820 stiffness matrix, and the next stiffness matrix is basically 361 00:22:19,820 --> 00:22:21,730 obtained by static condensation. 362 00:22:21,730 --> 00:22:24,230 We are statically condensing out 1 degree of 363 00:22:24,230 --> 00:22:26,390 freedom after the next. 364 00:22:26,390 --> 00:22:33,400 Well, if that is very well understood, and I urge you to 365 00:22:33,400 --> 00:22:39,650 read up in the book on this procedure, then I think you 366 00:22:39,650 --> 00:22:43,100 can very well appreciate how the substructuring process, 367 00:22:43,100 --> 00:22:47,360 frontal solution method, directly relates, again, to 368 00:22:47,360 --> 00:22:48,630 Gauss elimination. 369 00:22:48,630 --> 00:22:52,230 And here I summarize once the basic procedure that we use in 370 00:22:52,230 --> 00:22:53,860 substructuring analysis. 371 00:22:53,860 --> 00:22:57,140 We really go through static condensation on the internal 372 00:22:57,140 --> 00:23:00,270 degrees of freedom of a substructure. 373 00:23:00,270 --> 00:23:03,250 Here I'm showing a substructure, which is an 374 00:23:03,250 --> 00:23:06,250 assemblage, in this case, of the plane stress 4-node 375 00:23:06,250 --> 00:23:07,790 elements, just for illustration. 376 00:23:07,790 --> 00:23:10,750 Of course, there could be beam elements internally here or 377 00:23:10,750 --> 00:23:11,990 externally here. 378 00:23:11,990 --> 00:23:13,360 There could be shell elements. 379 00:23:13,360 --> 00:23:14,350 Any kind of elements. 380 00:23:14,350 --> 00:23:17,540 But the important point is that we have an assemblage of 381 00:23:17,540 --> 00:23:20,150 elements, which by itself, of course, gives 382 00:23:20,150 --> 00:23:22,510 us a structure already. 383 00:23:22,510 --> 00:23:25,790 We use static condensation on the internal degrees of 384 00:23:25,790 --> 00:23:28,390 freedom of the substructure. 385 00:23:28,390 --> 00:23:31,940 Well, the result, then, is a new stiffness matrix of the 386 00:23:31,940 --> 00:23:33,920 substructure involving boundary 387 00:23:33,920 --> 00:23:36,010 degrees of freedom only. 388 00:23:36,010 --> 00:23:38,420 Let us look, then, at this example. 389 00:23:38,420 --> 00:23:42,720 Here we have 2 degrees of freedom at each node. 390 00:23:42,720 --> 00:23:46,690 At the boundary nodes, which are shown solid, here, and the 391 00:23:46,690 --> 00:23:52,730 hollow points here, the circles here are 392 00:23:52,730 --> 00:23:53,740 the internal nodes. 393 00:23:53,740 --> 00:23:55,390 2 degrees of freedom at each. 394 00:23:55,390 --> 00:23:58,750 The result is that we have a 50-by-50 stiffness matrix, 395 00:23:58,750 --> 00:24:03,470 because we have 1, 2, 3, 4, 5 nodes along this length, and 5 396 00:24:03,470 --> 00:24:04,240 layers this way. 397 00:24:04,240 --> 00:24:09,650 So 25 nodes times 2 degrees of freedom per node gives us a 398 00:24:09,650 --> 00:24:12,080 50-by-50 stiffness matrix. 399 00:24:12,080 --> 00:24:14,920 Now what we do in the substructuring analysis, we 400 00:24:14,920 --> 00:24:18,990 statically condense out the internal degrees of freedom, 401 00:24:18,990 --> 00:24:22,830 just in the way I have shown how we condense out in that 402 00:24:22,830 --> 00:24:28,980 beam element, in that beam analysis, U1 to U3, the same 403 00:24:28,980 --> 00:24:34,620 way we are condensing out the internal degrees of freedom. 404 00:24:34,620 --> 00:24:38,800 Notice that we do not need to perform Gauss elimination from 405 00:24:38,800 --> 00:24:41,910 U1 to U3 or U4 onwards. 406 00:24:41,910 --> 00:24:46,810 We could also first deal with U2, then with U4, then with 407 00:24:46,810 --> 00:24:49,810 U1, and then solve for U3. 408 00:24:49,810 --> 00:24:52,900 So we have really a lot of flexibility in the Gauss 409 00:24:52,900 --> 00:24:54,710 elimination procedure. 410 00:24:54,710 --> 00:24:58,470 The important point is that now we're using it to condense 411 00:24:58,470 --> 00:25:00,880 these internal degrees of freedom out. 412 00:25:00,880 --> 00:25:05,190 The result, then, is a stiffness matrix that only 413 00:25:05,190 --> 00:25:07,120 involves the boundary degrees of freedom. 414 00:25:07,120 --> 00:25:11,710 Now in this case, we have 1, 2, 3, 4, 5 nodes here. 415 00:25:11,710 --> 00:25:13,270 Another 5 is 10. 416 00:25:13,270 --> 00:25:18,080 3 here and 3 here means 16, times 2 means it's going to be 417 00:25:18,080 --> 00:25:21,670 is 32 by 32 stiffness matrix. 418 00:25:21,670 --> 00:25:24,080 Notice that the internal degrees of freedom have been 419 00:25:24,080 --> 00:25:28,750 statically condensed out, which means that if I impose, 420 00:25:28,750 --> 00:25:32,750 for example, a unit displacement here, keeping all 421 00:25:32,750 --> 00:25:38,610 the other displacements 0 at the other nodes, and I keep 422 00:25:38,610 --> 00:25:43,390 this one also 0, then in this case, I would have internal 423 00:25:43,390 --> 00:25:47,220 displacements at these nodes. 424 00:25:47,220 --> 00:25:51,960 Whereas in this case, if I put a unit displacement only 425 00:25:51,960 --> 00:25:54,560 corresponding to this degree of freedom and keep all other 426 00:25:54,560 --> 00:25:58,640 displacements equal to 0, I would have 0 displacements at 427 00:25:58,640 --> 00:26:00,690 these nodes, at these points. 428 00:26:00,690 --> 00:26:06,560 Here these nodes are free to go wherever they want to go in 429 00:26:06,560 --> 00:26:08,090 the finite element solution. 430 00:26:08,090 --> 00:26:11,360 And if I put a unit displacement on here, they 431 00:26:11,360 --> 00:26:14,540 will be taking on a particular value. 432 00:26:14,540 --> 00:26:17,590 These nodal displacements will take on a particular value. 433 00:26:17,590 --> 00:26:21,640 What we really have derived, and this is important, is a 434 00:26:21,640 --> 00:26:23,290 new stiffness matrix. 435 00:26:23,290 --> 00:26:26,540 A new, we might call it, element stiffness matrix. 436 00:26:26,540 --> 00:26:30,040 A superelement, or substructure stiffness matrix. 437 00:26:30,040 --> 00:26:34,270 These are all equivalent words that, however, only involve 438 00:26:34,270 --> 00:26:37,060 boundary degrees of freedom. 439 00:26:37,060 --> 00:26:40,790 This is now a new finite element that can be used just 440 00:26:40,790 --> 00:26:44,550 as any ordinary finite element in the assemblage process to 441 00:26:44,550 --> 00:26:48,740 obtain the stiffness matrix of the complete structure. 442 00:26:48,740 --> 00:26:51,760 Let me show to you a simple example. 443 00:26:55,650 --> 00:27:01,060 Here is a very simple structure, a truss element 444 00:27:01,060 --> 00:27:04,480 that has only 3 degrees of freedom. 445 00:27:04,480 --> 00:27:06,830 U1, U2, U3. 446 00:27:06,830 --> 00:27:09,140 The stiffness matrix of that truss element is 447 00:27:09,140 --> 00:27:11,320 shown here as 3-by-3. 448 00:27:11,320 --> 00:27:15,190 Matrix here, we see U1, U2, U3, and the forces 449 00:27:15,190 --> 00:27:17,520 corresponding to these degrees of freedom, of course, are 450 00:27:17,520 --> 00:27:18,440 listed here. 451 00:27:18,440 --> 00:27:22,760 The objective in this example is to statically condense out 452 00:27:22,760 --> 00:27:27,030 this degree of freedom, and thus obtain a new element 453 00:27:27,030 --> 00:27:30,360 stiffness matrix that only involve the boundary degrees 454 00:27:30,360 --> 00:27:31,100 of freedom. 455 00:27:31,100 --> 00:27:36,960 Well, the first step that I've pursued here was to rearrange 456 00:27:36,960 --> 00:27:41,590 the equation so as to have U1 and U3 as the top equations, 457 00:27:41,590 --> 00:27:44,360 and U2 as the bottom equation. 458 00:27:44,360 --> 00:27:48,810 So we want to do static condensation now from the 459 00:27:48,810 --> 00:27:53,510 back, or from the bottom, the way it's usually done. 460 00:27:53,510 --> 00:27:56,330 And it's usually done that way because it is numerically 461 00:27:56,330 --> 00:27:58,310 effective to proceed that way. 462 00:27:58,310 --> 00:28:00,780 The result, then, is shown here. 463 00:28:00,780 --> 00:28:03,800 We write down just to identify, to 464 00:28:03,800 --> 00:28:05,430 use the various parts. 465 00:28:05,430 --> 00:28:08,470 This matrix here is this 2-by-2 matrix. 466 00:28:08,470 --> 00:28:12,380 This minus 20, minus 28 is that one here. 467 00:28:12,380 --> 00:28:17,050 Here we get the Kcc inverse, which is this part here, and 468 00:28:17,050 --> 00:28:20,790 then of course here we have this vector, shown here. 469 00:28:20,790 --> 00:28:25,560 If we perform these multiplications here, we 470 00:28:25,560 --> 00:28:28,280 obtain this stiffness matrix here. 471 00:28:28,280 --> 00:28:33,090 A 1 minus 1 minus 11 with a constant in front. 472 00:28:33,090 --> 00:28:35,750 Of course, the load vector also has changed. 473 00:28:35,750 --> 00:28:38,230 There is a carry over from the 2 degree of freedom in to the 474 00:28:38,230 --> 00:28:40,460 1 and 3 degrees of freedom. 475 00:28:40,460 --> 00:28:44,120 The U2 degree of freedom then can be recovered via this 476 00:28:44,120 --> 00:28:47,250 equation here, going back to the original equation. 477 00:28:47,250 --> 00:28:49,620 The important point is that we have now obtained the 478 00:28:49,620 --> 00:28:58,110 stiffness matrix of the truss element, this stiffness matrix 479 00:28:58,110 --> 00:29:03,570 of the trust element, involving U1 and U3 only. 480 00:29:03,570 --> 00:29:05,960 U2 is not anymore present. 481 00:29:05,960 --> 00:29:08,150 It has been statically condensed out. 482 00:29:08,150 --> 00:29:13,060 The U2 will adjust itself to a particular value, and that 483 00:29:13,060 --> 00:29:16,610 value, of course, is given right here. 484 00:29:16,610 --> 00:29:19,990 But the stiffness matrix that we have now here only 485 00:29:19,990 --> 00:29:23,180 corresponds to U1 and U3. 486 00:29:23,180 --> 00:29:32,270 Well, that process can then be repeated, and we can go 487 00:29:32,270 --> 00:29:35,880 through a process that we call multilevel substructuring. 488 00:29:35,880 --> 00:29:39,220 In other words, we don't just go once through a 489 00:29:39,220 --> 00:29:42,390 substructuring process, but we go repeatedly through 490 00:29:42,390 --> 00:29:43,480 substructuring processes. 491 00:29:43,480 --> 00:29:45,890 And basically, what we are doing is we are solving the 492 00:29:45,890 --> 00:29:49,750 system of equations KU equals R of the complete system in a 493 00:29:49,750 --> 00:29:51,070 very effective way. 494 00:29:51,070 --> 00:29:53,360 Let me show you here an example. 495 00:29:53,360 --> 00:29:57,510 Here we have a simple truss assemblage. 496 00:29:57,510 --> 00:30:00,690 We have 1, 2, 3, 4 elements. 497 00:30:00,690 --> 00:30:03,790 The important point is here that the 498 00:30:03,790 --> 00:30:05,390 elements are all similar. 499 00:30:05,390 --> 00:30:14,030 The area is varying 2A1, 4A1, 8A1, 16A1. 500 00:30:14,030 --> 00:30:18,440 And what I want to do is, I want to deal now, via 501 00:30:18,440 --> 00:30:21,850 substructuring with the equations to obtain a very 502 00:30:21,850 --> 00:30:23,140 effective solution. 503 00:30:23,140 --> 00:30:26,590 The first step is to look at this element, which involves 504 00:30:26,590 --> 00:30:28,500 U1 and U3 and U2. 505 00:30:28,500 --> 00:30:32,080 And here you see, once more, a sketch of that element. 506 00:30:32,080 --> 00:30:34,000 That is the element here. 507 00:30:34,000 --> 00:30:37,340 Now I condense out U2, and that's what we just did in the 508 00:30:37,340 --> 00:30:38,440 previous example. 509 00:30:38,440 --> 00:30:40,250 The only degrees of freedom that we are left with, 510 00:30:40,250 --> 00:30:43,800 then, are U1 U3. 511 00:30:43,800 --> 00:30:48,070 So now we have an element stiffness matrix, this element 512 00:30:48,070 --> 00:30:53,260 stiffness matrix, but in terms of U1 and U3 only. 513 00:30:53,260 --> 00:30:55,530 The next step, then, is to say, let 514 00:30:55,530 --> 00:30:57,350 us repeat this process. 515 00:30:57,350 --> 00:31:01,380 Let us now say, since we have this element stiffness matrix 516 00:31:01,380 --> 00:31:07,440 here in terms of U1 and U3 only, and since this adamant 517 00:31:07,440 --> 00:31:10,620 is similar to this element here, there is only a scalar 518 00:31:10,620 --> 00:31:15,450 involved because the area is varying as shown, from A1 to 519 00:31:15,450 --> 00:31:20,790 2A1 to 4A1 and so on, we can use this stiffness matrix 520 00:31:20,790 --> 00:31:24,110 here, this element stiffness matrix, which, however, is 521 00:31:24,110 --> 00:31:28,550 already a substructure the way I've defined it, to assemble 522 00:31:28,550 --> 00:31:30,350 the stiffness matrix corresponding to 523 00:31:30,350 --> 00:31:32,520 both of these elements. 524 00:31:32,520 --> 00:31:35,420 And that process is schematically shown here. 525 00:31:35,420 --> 00:31:41,990 This stiffness matrix now will involve U1, U3, and U5. 526 00:31:41,990 --> 00:31:46,240 Notice U2 is gone, and the important point U4 is gone 527 00:31:46,240 --> 00:31:50,340 also, because I've dealt with U2, I have statically 528 00:31:50,340 --> 00:31:54,580 condensed out U2, and by that, of course, I also have 529 00:31:54,580 --> 00:31:57,660 statically condensed out U4 simultaneously, because I'm 530 00:31:57,660 --> 00:32:00,730 using this element stiffness matrix here again. 531 00:32:00,730 --> 00:32:02,780 So U4 is also gone already. 532 00:32:02,780 --> 00:32:09,280 And now all I need to do is condense out U3, and I obtain 533 00:32:09,280 --> 00:32:16,010 a second level substructure, which I can use again now to 534 00:32:16,010 --> 00:32:22,200 assemble this element here with that element. 535 00:32:22,200 --> 00:32:27,060 And that is shown on the next view graph here. 536 00:32:27,060 --> 00:32:34,400 I repeat that process using this element here now, which 537 00:32:34,400 --> 00:32:39,870 is this part here, involving only U1 and U5, and this 538 00:32:39,870 --> 00:32:43,210 element here, which is similar to that element. 539 00:32:43,210 --> 00:32:47,170 Again, an area variation there, of course. 540 00:32:47,170 --> 00:32:50,260 And I obtain an element stiffness matrix, or a 541 00:32:50,260 --> 00:32:52,960 structural stiffness matrix, whichever way you want to look 542 00:32:52,960 --> 00:32:57,880 at it, that involves U1, U5, and U9 only. 543 00:32:57,880 --> 00:33:00,900 I can now statically condense out U5. 544 00:33:00,900 --> 00:33:05,740 The only unknowns I'm left with are U1 and U9, and of 545 00:33:05,740 --> 00:33:10,330 course then I can simply solve for U1 and U9. 546 00:33:10,330 --> 00:33:14,280 Of course, we would have to have also one of the 547 00:33:14,280 --> 00:33:16,310 displacement being prescribed to 548 00:33:16,310 --> 00:33:17,540 actually perform a solution. 549 00:33:17,540 --> 00:33:20,170 Otherwise we have a rigid body mode in the system. 550 00:33:20,170 --> 00:33:25,430 Assuming that, say, U1 is 0, we now would impose U1 being 551 00:33:25,430 --> 00:33:31,210 0, solve for U9, go back, solve for U5, and proceed 552 00:33:31,210 --> 00:33:34,150 backwards to solve for all the displacements. 553 00:33:34,150 --> 00:33:37,420 The important point is that via this substructuring 554 00:33:37,420 --> 00:33:40,330 process, a multilevel substructuring process, we 555 00:33:40,330 --> 00:33:42,030 have saved operations. 556 00:33:42,030 --> 00:33:45,260 We have saved operations because in this particular 557 00:33:45,260 --> 00:33:48,020 case, you see, I have condensed out these degrees of 558 00:33:48,020 --> 00:33:53,750 freedom already, and I use this fact in this assemblage 559 00:33:53,750 --> 00:33:58,300 process and solution in such a way as that I do not need to 560 00:33:58,300 --> 00:34:01,630 condense out these degrees of freedom, that I do not need to 561 00:34:01,630 --> 00:34:04,750 deal with these degrees of freedom again, because I've 562 00:34:04,750 --> 00:34:07,910 dealt with them in effect already by condensing out 563 00:34:07,910 --> 00:34:09,160 these degrees of freedom here. 564 00:34:11,785 --> 00:34:13,880 There are also other advantages using 565 00:34:13,880 --> 00:34:17,469 substructuring, and one important advantage that I 566 00:34:17,469 --> 00:34:22,270 should mention is that in the input definition phase, we 567 00:34:22,270 --> 00:34:27,460 only need to define the elements, nodal points, and so 568 00:34:27,460 --> 00:34:31,004 on of a typical substructure, and we can use that definition 569 00:34:31,004 --> 00:34:35,110 in a computer program, then, again and again, to assemble 570 00:34:35,110 --> 00:34:36,540 the complete structure. 571 00:34:36,540 --> 00:34:39,530 In other words, if I have defined, typically for a 572 00:34:39,530 --> 00:34:44,590 high-rise building, one typical floor, and I have 573 00:34:44,590 --> 00:34:48,449 assembled the floor stiffness matrix with columns, beams, 574 00:34:48,449 --> 00:34:52,580 and so on, that pertain to that floor, if I then 575 00:34:52,580 --> 00:34:55,739 statically condense out the degrees of freedom that we 576 00:34:55,739 --> 00:34:59,480 want to condense out for that part of the substructure, I 577 00:34:59,480 --> 00:35:04,160 can use that floor substructure, so to say, again 578 00:35:04,160 --> 00:35:08,690 and again, to assemble the complete building structure. 579 00:35:08,690 --> 00:35:13,070 And this means I only have to define really the particular 580 00:35:13,070 --> 00:35:16,120 substructure input, and I deal, then, with that 581 00:35:16,120 --> 00:35:18,470 substructure numerically, as I have 582 00:35:18,470 --> 00:35:22,220 shown here in the example. 583 00:35:22,220 --> 00:35:26,210 The next important procedure that I like to discuss very 584 00:35:26,210 --> 00:35:28,850 briefly with you is the frontal solution. 585 00:35:28,850 --> 00:35:34,450 And the frontal solution really, again, only represents 586 00:35:34,450 --> 00:35:38,340 a variation of the basic Gauss elimination procedure. 587 00:35:38,340 --> 00:35:42,190 It represents, really, a static condensation procedure. 588 00:35:42,190 --> 00:35:46,070 And that static condensation, however, is performed in a 589 00:35:46,070 --> 00:35:47,550 particular way. 590 00:35:47,550 --> 00:35:50,180 And this is really where the advantages of the frontal 591 00:35:50,180 --> 00:35:52,070 solution can lie. 592 00:35:52,070 --> 00:35:58,070 It's performed via looking at the elements. 593 00:35:58,070 --> 00:36:01,330 Let me describe to you the basic process. 594 00:36:01,330 --> 00:36:05,830 Here we have, as an example, a two-dimensional plane stress 595 00:36:05,830 --> 00:36:09,180 element mesh. 596 00:36:09,180 --> 00:36:13,170 We have 4-node elements, as shown here, element 1, element 597 00:36:13,170 --> 00:36:16,790 2, element 3, element 4, q, q plus 1, and so on. 598 00:36:16,790 --> 00:36:18,740 In other words, there's a whole lay of elements this 599 00:36:18,740 --> 00:36:21,740 way, and that way, and so on. 600 00:36:21,740 --> 00:36:27,220 This mesh could represent, for example, a cantilever plate 601 00:36:27,220 --> 00:36:30,100 that acts in plane stress. 602 00:36:30,100 --> 00:36:35,000 In the frontal solution, the solution of the KU equals R 603 00:36:35,000 --> 00:36:37,940 equation is performed by elements. 604 00:36:37,940 --> 00:36:42,900 So we're putting in element 1, which couples into node 1, 605 00:36:42,900 --> 00:36:48,460 node 2, node m, and node n plus 1. 606 00:36:48,460 --> 00:36:53,390 Since the degrees of freedom at node 1 only obtain 607 00:36:53,390 --> 00:36:57,740 stiffness from element 1, and no other element, the 608 00:36:57,740 --> 00:37:02,880 assemblage of this element into the global structure 609 00:37:02,880 --> 00:37:08,030 stiffness matrix gives the only stiffness 610 00:37:08,030 --> 00:37:10,520 contribution at node 1. 611 00:37:10,520 --> 00:37:14,190 Therefore, we have the final equations at node 1, and we 612 00:37:14,190 --> 00:37:16,210 can deal with them already. 613 00:37:16,210 --> 00:37:19,630 And that's how the frontal solution proceeds now. 614 00:37:19,630 --> 00:37:23,650 It statically condenses out these degrees of freedom. 615 00:37:26,260 --> 00:37:31,110 Then we move on to the next node of element 616 00:37:31,110 --> 00:37:33,270 1, this node here. 617 00:37:33,270 --> 00:37:36,490 However, this node gets stiffness from element 618 00:37:36,490 --> 00:37:38,720 1 and element 2. 619 00:37:38,720 --> 00:37:44,050 So in order to obtain the final equations here, we have 620 00:37:44,050 --> 00:37:49,230 to add the element 2 stiffness matrix to the element 1 621 00:37:49,230 --> 00:37:50,520 stiffness matrix. 622 00:37:50,520 --> 00:37:54,210 And that means in this way, then, of course, we obtain the 623 00:37:54,210 --> 00:37:57,750 final equation, corresponding to node 2. 624 00:37:57,750 --> 00:38:00,130 We now can statically condense out the degrees of 625 00:38:00,130 --> 00:38:02,570 freedom at node 2. 626 00:38:02,570 --> 00:38:06,710 We then move on to the next node, involving element 1 and 627 00:38:06,710 --> 00:38:11,220 element 2, which is node 3, say. 628 00:38:11,220 --> 00:38:16,030 And now we have to, however, assemble the stiffness matrix 629 00:38:16,030 --> 00:38:21,910 of elements 3, also into the equations that we have 630 00:38:21,910 --> 00:38:23,970 assembled already. 631 00:38:23,970 --> 00:38:27,120 Having done so, we can now use static condensation to 632 00:38:27,120 --> 00:38:30,480 condense out these degrees of freedom. 633 00:38:30,480 --> 00:38:35,720 We proceed, therefore, via elements, and we are talking 634 00:38:35,720 --> 00:38:37,610 about a wave front-- 635 00:38:37,610 --> 00:38:41,310 which is this one for node 1, this is the wave front for 636 00:38:41,310 --> 00:38:44,080 node 2, this is the wave front-- 637 00:38:44,080 --> 00:38:47,420 in other words, what we are saying is, the wave front 638 00:38:47,420 --> 00:38:52,180 really embodies or contains all the elements that we need 639 00:38:52,180 --> 00:38:55,260 to have assembled before we can condense 640 00:38:55,260 --> 00:38:57,370 out degrees of freedom. 641 00:38:57,370 --> 00:39:00,620 To condense out the degrees of freedom at node 2, we have to 642 00:39:00,620 --> 00:39:03,290 have a wave front such as shown here. 643 00:39:03,290 --> 00:39:06,590 We have to have assembled element 1 and 2, because 644 00:39:06,590 --> 00:39:12,530 element 1 and element 2 give stiffness to node 2. 645 00:39:12,530 --> 00:39:16,090 The important point is that we are proceeding via static 646 00:39:16,090 --> 00:39:21,020 condensation from node 1 to node 2 and so on, and this 647 00:39:21,020 --> 00:39:22,670 means really that we are performing 648 00:39:22,670 --> 00:39:24,500 Gauss elimination again. 649 00:39:24,500 --> 00:39:28,860 The process is summarized here once more. 650 00:39:28,860 --> 00:39:31,830 The frontal solution consists of successive static 651 00:39:31,830 --> 00:39:34,180 condensation of nodal degrees for freedom. 652 00:39:34,180 --> 00:39:35,900 The solution is performed in the order 653 00:39:35,900 --> 00:39:37,510 of the element numbering. 654 00:39:37,510 --> 00:39:39,440 That's important. 655 00:39:39,440 --> 00:39:42,390 Same number of operations are performed in the frontal 656 00:39:42,390 --> 00:39:45,860 solution as in the skyline solution, if the element 657 00:39:45,860 --> 00:39:48,870 numbering in the wave front solution corresponds to the 658 00:39:48,870 --> 00:39:51,500 nodal point numbering in the skyline solution. 659 00:39:51,500 --> 00:39:54,720 So if the element numbering in the frontal solution 660 00:39:54,720 --> 00:39:58,410 corresponds to the nodal point numbering in the skyline 661 00:39:58,410 --> 00:40:03,350 solution, we perform in the skyline solution, which I have 662 00:40:03,350 --> 00:40:06,140 not really talked about yet, and that's what I want to get 663 00:40:06,140 --> 00:40:09,040 on now, the same number of operations as 664 00:40:09,040 --> 00:40:11,260 in the frontal solution. 665 00:40:11,260 --> 00:40:15,990 By corresponding, I mean in this particular case here, we 666 00:40:15,990 --> 00:40:19,740 would condense out in the frontal solution the degrees 667 00:40:19,740 --> 00:40:23,050 of freedom at node 1, then 2, then 3, then 4, and so on. 668 00:40:23,050 --> 00:40:25,600 And of course, in the skyline solution, or in the Gauss 669 00:40:25,600 --> 00:40:29,690 elimination procedure, we also proceed via node 1, 2, 670 00:40:29,690 --> 00:40:31,140 3, 4, and so on. 671 00:40:31,140 --> 00:40:34,050 So in this particular example, the frontal solution and the 672 00:40:34,050 --> 00:40:37,290 skyline solution would give the same number of operations. 673 00:40:37,290 --> 00:40:40,700 Well, let me go on to the skyline solution, then. 674 00:40:40,700 --> 00:40:44,840 And the basis of that solution is LDL transpose 675 00:40:44,840 --> 00:40:46,040 factorization. 676 00:40:46,040 --> 00:40:49,820 Basically again, Gauss elimination. 677 00:40:49,820 --> 00:40:52,350 The basic step here is the following. 678 00:40:52,350 --> 00:40:55,780 We are having our stiffness matrix, K here, and now I'm 679 00:40:55,780 --> 00:40:58,900 going back to that example which I discussed earlier, the 680 00:40:58,900 --> 00:41:00,080 beam example. 681 00:41:00,080 --> 00:41:02,955 We're talking about the 4-by-4 stiffness matrix again. 682 00:41:02,955 --> 00:41:06,330 We're using this stiffness matrix, and we premultiply it 683 00:41:06,330 --> 00:41:10,730 by an L1 inverse matrix, this matrix here. 684 00:41:10,730 --> 00:41:12,960 In fact we never perform formally this 685 00:41:12,960 --> 00:41:18,920 premultiplication via matrix, because what this does is, it 686 00:41:18,920 --> 00:41:23,600 subtracts a multiple of this first row from the rows below 687 00:41:23,600 --> 00:41:26,320 it to update a 0 here and a 0 there. 688 00:41:26,320 --> 00:41:29,810 That's all this premultiplication does. 689 00:41:29,810 --> 00:41:33,490 And the result is this matrix here, which I've shown to you 690 00:41:33,490 --> 00:41:34,980 earlier already. 691 00:41:34,980 --> 00:41:39,780 The next step is then to operate on this 692 00:41:39,780 --> 00:41:43,650 matrix in the same way. 693 00:41:43,650 --> 00:41:47,600 However, before doing so, let me show you here a view graph 694 00:41:47,600 --> 00:41:51,490 in which I have written out specifically the L1 inverse. 695 00:41:51,490 --> 00:41:53,870 And the important point, L1. 696 00:41:53,870 --> 00:41:57,650 Notice that L1, the inverse of this matrix, is obtained by 697 00:41:57,650 --> 00:41:59,200 trivial operation. 698 00:41:59,200 --> 00:42:03,300 Namely, simply changing the plus here to a minus sign, and 699 00:42:03,300 --> 00:42:05,430 the minus sign to a plus here. 700 00:42:05,430 --> 00:42:08,700 Changing the signs of the off-diagonal elements gives us 701 00:42:08,700 --> 00:42:13,370 directly the inverse of that matrix. 702 00:42:13,370 --> 00:42:24,830 Well, having obtained, therefore, via this operation, 703 00:42:24,830 --> 00:42:28,540 or having carried out via this operation, I should say, the 704 00:42:28,540 --> 00:42:32,070 first step of the basic Gauss elimination procedure, namely 705 00:42:32,070 --> 00:42:36,840 subtracting the top row from the rows below it to obtain 706 00:42:36,840 --> 00:42:40,380 zeroes in the first column below the diagonal element, we 707 00:42:40,380 --> 00:42:42,940 proceed in the same way. 708 00:42:42,940 --> 00:42:46,040 and via this procedure here-- 709 00:42:46,040 --> 00:42:49,920 now, of course, we have an L2 inverse, and so on-- we obtain 710 00:42:49,920 --> 00:42:52,550 what we call an upper triangular matrix. 711 00:42:52,550 --> 00:42:55,190 S, an upper triangular matrix. 712 00:42:55,190 --> 00:43:00,480 Zeroes all below the diagonal, and only non-zero elements 713 00:43:00,480 --> 00:43:01,510 right here. 714 00:43:01,510 --> 00:43:04,930 Of course, if the matrix has a bandwidth originally, that 715 00:43:04,930 --> 00:43:10,050 bandwidth would be preserved, and we would have no non-zero 716 00:43:10,050 --> 00:43:12,060 elements outside that band. 717 00:43:12,060 --> 00:43:14,750 In other words, all elements outside the band would, in 718 00:43:14,750 --> 00:43:17,920 fact, be also zero elements. 719 00:43:17,920 --> 00:43:23,220 This upper triangular matrix, then, obtained-- 720 00:43:23,220 --> 00:43:24,760 this is the S matrix, here-- 721 00:43:27,310 --> 00:43:30,380 will be used in the back substitution. 722 00:43:30,380 --> 00:43:34,010 This is here the element that gives us the single degree of 723 00:43:34,010 --> 00:43:37,320 freedom stiffness, which I talked about earlier, from 724 00:43:37,320 --> 00:43:40,660 which we can solve Un. 725 00:43:40,660 --> 00:43:42,800 Here I'm talking about a general case with 726 00:43:42,800 --> 00:43:44,930 n degrees of freedom. 727 00:43:44,930 --> 00:43:49,010 However, looking at this equation, let us first 728 00:43:49,010 --> 00:43:53,950 identify that we can put all of these inverse matrices onto 729 00:43:53,950 --> 00:43:59,920 the right-hand side, and we obtain this equation here. 730 00:43:59,920 --> 00:44:05,770 Now notice that this L1 is obtained by trivial operation 731 00:44:05,770 --> 00:44:07,160 from L1 inverse. 732 00:44:07,160 --> 00:44:09,720 The same holds for L2 and so on. 733 00:44:09,720 --> 00:44:12,040 So we never really had to invert a matrix to 734 00:44:12,040 --> 00:44:13,660 obtain this part here. 735 00:44:13,660 --> 00:44:20,005 Furthermore, this L1 was an identity matrix with only 736 00:44:20,005 --> 00:44:28,120 non-zero, off-diagonal elements in the first column. 737 00:44:28,120 --> 00:44:31,750 This one is a matrix which looks like the identity 738 00:44:31,750 --> 00:44:38,750 matrix, but has also non-zero, off-diagonal elements in the 739 00:44:38,750 --> 00:44:40,300 second column. 740 00:44:40,300 --> 00:44:41,370 And so on. 741 00:44:41,370 --> 00:44:47,220 And the product of these matrices here, then, is very 742 00:44:47,220 --> 00:45:00,340 simply obtained by writing the 1's into the diagonal 743 00:45:00,340 --> 00:45:04,400 positions, and the off-diagonal elements here are 744 00:45:04,400 --> 00:45:10,100 those of L1 in the first column, those of L2 in the 745 00:45:10,100 --> 00:45:12,560 second column, and so on. 746 00:45:12,560 --> 00:45:17,740 So even this multiplication is obtained in a very simple way. 747 00:45:17,740 --> 00:45:24,640 We only need to write the first column of L1 into here, 748 00:45:24,640 --> 00:45:27,865 the second column of L2 into here, the third 749 00:45:27,865 --> 00:45:29,680 column of L3 into here. 750 00:45:29,680 --> 00:45:34,050 And the result, all of that, I call the L matrix. 751 00:45:37,600 --> 00:45:42,660 Now notice that once again, we do not perform any matrix 752 00:45:42,660 --> 00:45:43,840 multiplication. 753 00:45:43,840 --> 00:45:47,300 We have n minus 1 matrices here, but we do not perform a 754 00:45:47,300 --> 00:45:55,060 matrix multiplication, because all we do is, we take the 755 00:45:55,060 --> 00:45:59,440 first column of L1 and put it into the first column of L. 756 00:45:59,440 --> 00:46:04,040 The second column of L2 is the second column in L. The n 757 00:46:04,040 --> 00:46:08,190 minus second column in L is nothing else than the n minus 758 00:46:08,190 --> 00:46:11,740 second column in L n minus 2. 759 00:46:11,740 --> 00:46:12,770 And so on. 760 00:46:12,770 --> 00:46:17,720 The result, therefore, is that we have written k equal to Lf, 761 00:46:17,720 --> 00:46:20,530 L being equal to this product here. 762 00:46:20,530 --> 00:46:26,450 Now because K is symmetric, we can, in fact, write this F 763 00:46:26,450 --> 00:46:31,200 matrix here as D times L transposed, where d is a 764 00:46:31,200 --> 00:46:35,870 diagonal matrix, dii being equal to sii. 765 00:46:35,870 --> 00:46:43,030 So now we have factorized the K matrix into LDL transposed. 766 00:46:43,030 --> 00:46:48,230 The d elements, or the dii elements, must all be positive 767 00:46:48,230 --> 00:46:51,890 if our structure is stable, as I pointed out earlier. 768 00:46:51,890 --> 00:47:02,020 The Cholesky factorization, just by remark, uses this 769 00:47:02,020 --> 00:47:06,160 form, K being L curl times L curl transpose, where we 770 00:47:06,160 --> 00:47:09,080 should note that L curl is really nothing else than L 771 00:47:09,080 --> 00:47:14,850 times d to the 1/2, where d to the 1/2 is obtained by using 772 00:47:14,850 --> 00:47:18,510 the D matrix and taking square roots of 773 00:47:18,510 --> 00:47:19,500 the diagonal elements. 774 00:47:19,500 --> 00:47:22,710 In other words, the ith elemental of d to the 1/2 is 775 00:47:22,710 --> 00:47:26,490 nothing else than square root out of dii. 776 00:47:29,840 --> 00:47:36,720 Well, having performed the LDL transpose factorization, we 777 00:47:36,720 --> 00:47:39,850 now are ready to solve the equations, and they are solved 778 00:47:39,850 --> 00:47:41,220 in the following steps. 779 00:47:41,220 --> 00:47:47,350 We have LV equals R, where V is defined as shown here. 780 00:47:47,350 --> 00:47:51,730 Notice that if I were to put this part into there, I really 781 00:47:51,730 --> 00:47:57,480 obtain nothing else than LDL transpose times U equals R, 782 00:47:57,480 --> 00:48:00,510 where this is, of course, nothing else than K times U 783 00:48:00,510 --> 00:48:03,440 equals R, if I were to substitute 784 00:48:03,440 --> 00:48:04,540 from here into there. 785 00:48:04,540 --> 00:48:09,480 However, we separate these two steps out, and we call this 786 00:48:09,480 --> 00:48:19,160 the forward reduction of R, which is really obtained by 787 00:48:19,160 --> 00:48:27,700 subtracting specific elements of R from other elements. 788 00:48:27,700 --> 00:48:30,720 We never really perform a matrix product here. 789 00:48:30,720 --> 00:48:33,580 We write it that way, but really, it means nothing else 790 00:48:33,580 --> 00:48:38,810 than taking, say, the ith element off R and subtracting 791 00:48:38,810 --> 00:48:41,450 that element, or multiple of that element, from the 792 00:48:41,450 --> 00:48:43,190 elements below it. 793 00:48:43,190 --> 00:48:45,380 That is a typical operation performed when 794 00:48:45,380 --> 00:48:47,670 we form the V vector. 795 00:48:47,670 --> 00:48:52,620 Having obtained V, we go back to this equation here, and we 796 00:48:52,620 --> 00:48:53,820 perform this step. 797 00:48:53,820 --> 00:48:57,340 Notice that this step is nothing else than the division 798 00:48:57,340 --> 00:49:01,600 off the V elements by the D elements. 799 00:49:01,600 --> 00:49:06,730 In other words, here we take Vi and divide it by dii. 800 00:49:06,730 --> 00:49:11,140 The final step, then, is the back substitution, which gives 801 00:49:11,140 --> 00:49:14,520 us U. The back substitution is performed 802 00:49:14,520 --> 00:49:16,130 as I discussed earlier. 803 00:49:16,130 --> 00:49:20,260 Already we're going from UN, from the last degree of 804 00:49:20,260 --> 00:49:24,020 freedom, upwards to calculate the values of 805 00:49:24,020 --> 00:49:26,790 the degrees of freedom. 806 00:49:26,790 --> 00:49:32,660 Let us now look at the actual implementation. 807 00:49:32,660 --> 00:49:38,240 The implementation has to be performed very 808 00:49:38,240 --> 00:49:40,200 effectively, of course. 809 00:49:40,200 --> 00:49:44,390 All I have been giving to you now so far were the 810 00:49:44,390 --> 00:49:49,750 mathematical equations that we are basically operating on. 811 00:49:49,750 --> 00:49:54,480 The LDL transpose factorization is, of course, a 812 00:49:54,480 --> 00:50:00,230 way of writing a set of steps of solution that we are 813 00:50:00,230 --> 00:50:00,880 performing. 814 00:50:00,880 --> 00:50:03,640 However, we want to perform them as effectively as 815 00:50:03,640 --> 00:50:08,340 possible, and the scheme that we're using is related, 816 00:50:08,340 --> 00:50:12,470 really, to the crude scheme-- 817 00:50:12,470 --> 00:50:16,830 we call it the column reduction scheme-- 818 00:50:16,830 --> 00:50:20,310 that we are going through for the solution of the equation. 819 00:50:20,310 --> 00:50:24,650 And the procedure that we're using is as follows. 820 00:50:24,650 --> 00:50:27,610 Here we have the stiffness matrix. 821 00:50:27,610 --> 00:50:30,830 Notice that we only store the upper part. 822 00:50:30,830 --> 00:50:34,440 Since we have a asymmetric matrix, we can directly obtain 823 00:50:34,440 --> 00:50:38,020 the lower part elements from the upper part elements. 824 00:50:38,020 --> 00:50:40,980 We do not need to store them in the computer program. 825 00:50:40,980 --> 00:50:45,120 We also perform the Gauss elimination in a very, you 826 00:50:45,120 --> 00:50:49,120 might say, strange way, when you look at it first. 827 00:50:49,120 --> 00:50:52,590 And the way we're performing it is the following. 828 00:50:52,590 --> 00:50:57,200 That we are reducing this column first. 829 00:50:57,200 --> 00:50:59,630 In other words, we are going column-wise. 830 00:50:59,630 --> 00:51:01,180 We are reducing this column first. 831 00:51:01,180 --> 00:51:03,840 The result is that one. 832 00:51:03,840 --> 00:51:08,200 In the next step, then, we are going through the reduction of 833 00:51:08,200 --> 00:51:10,220 the next column. 834 00:51:10,220 --> 00:51:13,970 See here, we are now reducing this column, and the 835 00:51:13,970 --> 00:51:16,030 result is that one. 836 00:51:16,030 --> 00:51:20,480 The dashed line always is on the right-hand side of that 837 00:51:20,480 --> 00:51:24,500 part of the matrix, which has already been reduced. 838 00:51:24,500 --> 00:51:29,780 And now we are looking here at the third column, and this is 839 00:51:29,780 --> 00:51:34,190 the reduction off the third column The final step is then 840 00:51:34,190 --> 00:51:38,200 that we are reducing the fourth column, 841 00:51:38,200 --> 00:51:40,460 and this is the result. 842 00:51:40,460 --> 00:51:45,000 Now notice that having performed these operations 843 00:51:45,000 --> 00:51:45,830 column-wise-- 844 00:51:45,830 --> 00:51:47,550 and I have not given you the details. 845 00:51:47,550 --> 00:51:49,610 We do not have time in this lecture 846 00:51:49,610 --> 00:51:50,650 to look at the details. 847 00:51:50,650 --> 00:51:55,310 The details are in the book, if you want to read them up. 848 00:51:55,310 --> 00:51:58,730 All I'd like to convey to you now are the procedures that 849 00:51:58,730 --> 00:52:00,960 we're using to show you the effectiveness. 850 00:52:00,960 --> 00:52:05,440 Notice that the final result here in this operation is the 851 00:52:05,440 --> 00:52:09,620 D matrix on the diagonal and the L transpose in the 852 00:52:09,620 --> 00:52:11,180 off-diagonal elements. 853 00:52:11,180 --> 00:52:14,560 And we have done it column-wise. 854 00:52:14,560 --> 00:52:17,220 Well, what does this mean, then, in practice? 855 00:52:17,220 --> 00:52:19,850 In practice it means the following. 856 00:52:19,850 --> 00:52:25,130 Notice that I have now a system which has different 857 00:52:25,130 --> 00:52:28,400 column heights for different equations. 858 00:52:28,400 --> 00:52:31,680 The column heights are being defined by the first non-zero 859 00:52:31,680 --> 00:52:34,610 element in a column. 860 00:52:34,610 --> 00:52:38,950 So this is the column height for this last column here, 861 00:52:38,950 --> 00:52:40,370 because this is the first non-zero 862 00:52:40,370 --> 00:52:41,540 element in the column. 863 00:52:41,540 --> 00:52:46,050 The zero elements below this element here, in general, 864 00:52:46,050 --> 00:52:47,350 become non-zero elements. 865 00:52:47,350 --> 00:52:48,830 In general, not always. 866 00:52:48,830 --> 00:52:51,630 But because they in general become non-zero elements, we 867 00:52:51,630 --> 00:52:53,700 have defined our column height this way. 868 00:52:53,700 --> 00:52:57,770 And what we are now doing in the actual solution is that we 869 00:52:57,770 --> 00:53:03,060 are reducing, column by column, just the way I have 870 00:53:03,060 --> 00:53:08,740 shown it, to obtain finally the elements of the D matrix 871 00:53:08,740 --> 00:53:12,660 on the diagonal, and the elements of the L transpose 872 00:53:12,660 --> 00:53:16,670 matrix in the off-diagonal elements here. 873 00:53:16,670 --> 00:53:18,770 And we can do so-- 874 00:53:18,770 --> 00:53:20,330 this is important-- 875 00:53:20,330 --> 00:53:22,740 by simply replacing elements. 876 00:53:22,740 --> 00:53:27,590 If you go back to an earlier step that we looked at, what 877 00:53:27,590 --> 00:53:32,420 we have done here is looked at this matrix here, and we, in 878 00:53:32,420 --> 00:53:36,890 the reduction process, simply replaced this element by 1/5, 879 00:53:36,890 --> 00:53:41,420 replaced this element by the minus 4 element, by minus 8/7, 880 00:53:41,420 --> 00:53:43,020 over and so on. 881 00:53:43,020 --> 00:53:44,800 So we don't need additional storage. 882 00:53:44,800 --> 00:53:47,310 We can simply replace elements. 883 00:53:47,310 --> 00:53:52,910 In the same way, we proceed now here, as shown, on the 884 00:53:52,910 --> 00:53:54,300 next view graph. 885 00:53:54,300 --> 00:53:57,500 Here we have filled in the zero element, and the 886 00:53:57,500 --> 00:54:03,140 reduction has been performed column after column. 887 00:54:03,140 --> 00:54:08,860 The effectiveness of this whole procedure is really seen 888 00:54:08,860 --> 00:54:14,090 on this view graph here, when we talk about large systems. 889 00:54:14,090 --> 00:54:18,350 I want to denote here this as a large system, because the 890 00:54:18,350 --> 00:54:22,840 high speed core storage is not sufficient to store the 891 00:54:22,840 --> 00:54:24,360 whole matrix in. 892 00:54:24,360 --> 00:54:27,040 And so what we have been doing is, we are storing 893 00:54:27,040 --> 00:54:29,180 the matrix in blocks. 894 00:54:29,180 --> 00:54:32,690 This is here the first block, shown by the dashed line. 895 00:54:32,690 --> 00:54:34,290 This is the second block. 896 00:54:34,290 --> 00:54:37,010 This is the third block, and that's the fourth block. 897 00:54:37,010 --> 00:54:41,640 What I'm saying is that we have divided the total 898 00:54:41,640 --> 00:54:47,460 stiffness matrix into blocks, and in fact, we divided the 899 00:54:47,460 --> 00:54:53,320 blocks in such a way as to be able to take always at least 900 00:54:53,320 --> 00:54:55,810 two blocks into core. 901 00:54:55,810 --> 00:54:59,570 In other words, in this solution process, we have to 902 00:54:59,570 --> 00:55:02,180 be able to take this block into core, 903 00:55:02,180 --> 00:55:03,860 that block into core. 904 00:55:03,860 --> 00:55:04,810 Two blocks. 905 00:55:04,810 --> 00:55:08,240 We also would have to be able to take this block into core, 906 00:55:08,240 --> 00:55:10,100 that block into core, and so on. 907 00:55:10,100 --> 00:55:14,440 Of course, the way this is actually automatized in a 908 00:55:14,440 --> 00:55:17,060 computer program, is that we say we have so 909 00:55:17,060 --> 00:55:18,080 much storage available. 910 00:55:18,080 --> 00:55:21,250 Say that we have 40,000 storage locations available. 911 00:55:21,250 --> 00:55:24,360 Then for the solution of the equations, or for the storing 912 00:55:24,360 --> 00:55:28,990 of the stiffness matrix, then 20,000 locations 913 00:55:28,990 --> 00:55:30,890 would be used per block. 914 00:55:30,890 --> 00:55:35,520 And what the solution routine simply does-- it counts these 915 00:55:35,520 --> 00:55:42,950 elements and puts this dashed line in such a way that 20,000 916 00:55:42,950 --> 00:55:47,290 elements are in here, 20,000 elements are in here, 20,000 917 00:55:47,290 --> 00:55:49,710 elements are in here, and so on. 918 00:55:49,710 --> 00:55:53,650 The solution procedure, or the solution of the equation, is 919 00:55:53,650 --> 00:55:55,730 now performed in the following way, 920 00:55:55,730 --> 00:55:58,590 using the block structure. 921 00:55:58,590 --> 00:56:03,320 We proceed with the reduction off this column, of that 922 00:56:03,320 --> 00:56:05,780 column, of that column and that column. 923 00:56:05,780 --> 00:56:09,920 Now, I should point out the following important point. 924 00:56:09,920 --> 00:56:17,180 When we do we do reduce this column, this column coupled 925 00:56:17,180 --> 00:56:18,870 into the first equation. 926 00:56:18,870 --> 00:56:22,090 So we have to have these elements in core. 927 00:56:22,090 --> 00:56:24,720 Of course, since this is 1 block, and since we can store 928 00:56:24,720 --> 00:56:27,860 that block in core anyway, there is no problem. 929 00:56:27,860 --> 00:56:30,780 We can reduce this column directly. 930 00:56:30,780 --> 00:56:33,750 These elements that we already have obtained 931 00:56:33,750 --> 00:56:36,360 are indeed in core. 932 00:56:36,360 --> 00:56:38,120 Now let's go on to the second block. 933 00:56:38,120 --> 00:56:42,570 The second block coupled into the first block, because these 934 00:56:42,570 --> 00:56:44,860 elements here couple into these equations. 935 00:56:44,860 --> 00:56:49,550 So in order to reduce the second block column by column, 936 00:56:49,550 --> 00:56:52,250 we have to have the first block in core. 937 00:56:52,250 --> 00:56:53,690 And that's what we do. 938 00:56:53,690 --> 00:57:00,450 We take this block into core and reduce the second block. 939 00:57:00,450 --> 00:57:04,120 Having finished the second block reduction, we go on to 940 00:57:04,120 --> 00:57:05,410 the fourth block. 941 00:57:05,410 --> 00:57:09,970 And the fourth block now is reduced by first taking the 942 00:57:09,970 --> 00:57:13,040 first block into core, because the first block also couples 943 00:57:13,040 --> 00:57:16,150 into the third block. 944 00:57:16,150 --> 00:57:19,350 Then taking the second block into core together with this 945 00:57:19,350 --> 00:57:23,360 one, and reducing this one, and then of course, finally, 946 00:57:23,360 --> 00:57:24,630 we reduce this one. 947 00:57:24,630 --> 00:57:29,630 So the general procedure, therefore, is that we take a 948 00:57:29,630 --> 00:57:33,080 particular block into core that we want to reduce, we 949 00:57:33,080 --> 00:57:36,690 have reduced already all the previous blocks, we have 950 00:57:36,690 --> 00:57:40,305 storage available also for one of the previous blocks, and we 951 00:57:40,305 --> 00:57:45,030 sequentially take the previous blocks into core to take into 952 00:57:45,030 --> 00:57:48,470 account all the coupling that these previous blocks have 953 00:57:48,470 --> 00:57:52,320 onto the current block that we want to reduce. 954 00:57:52,320 --> 00:57:56,230 In this example, we're taking this block into core. 955 00:57:56,230 --> 00:57:58,740 We then take first also this block into core. 956 00:57:58,740 --> 00:58:01,600 That means we have two blocks in core. 957 00:58:01,600 --> 00:58:04,180 We take the effect of this block into 958 00:58:04,180 --> 00:58:06,740 account onto that block. 959 00:58:06,740 --> 00:58:08,160 Then we throw this book out. 960 00:58:08,160 --> 00:58:10,760 We take this block into core. 961 00:58:10,760 --> 00:58:14,500 We take the effect of this block into account onto this 962 00:58:14,500 --> 00:58:18,790 block, and finally, we reduce the block by itself. 963 00:58:18,790 --> 00:58:22,340 In the same way, we would proceed with this block, just 964 00:58:22,340 --> 00:58:23,270 as another example. 965 00:58:23,270 --> 00:58:24,930 We take this block into a core. 966 00:58:24,930 --> 00:58:27,410 This one couples into all previous blocks, so what we 967 00:58:27,410 --> 00:58:31,230 have to do is take this into core, and first take this into 968 00:58:31,230 --> 00:58:35,970 core, take the effect of this coupling into account onto 969 00:58:35,970 --> 00:58:40,070 this block, throw this out, take this one into core, put 970 00:58:40,070 --> 00:58:44,520 this block coupling onto that block, throw this out, take 971 00:58:44,520 --> 00:58:47,160 this one into core, and finally take the effect of 972 00:58:47,160 --> 00:58:50,710 this block coupling onto that one into account, and finally 973 00:58:50,710 --> 00:58:53,690 then, of course, reduce this block by itself. 974 00:58:53,690 --> 00:58:56,890 This, then, completes the complete 975 00:58:56,890 --> 00:58:59,280 solution of a large system. 976 00:58:59,280 --> 00:59:02,460 I only was able to give you the basic principles, the 977 00:59:02,460 --> 00:59:04,280 basic ideas. 978 00:59:04,280 --> 00:59:08,470 Some of the details are described in the textbook, and 979 00:59:08,470 --> 00:59:10,990 you can read up there further on it. 980 00:59:10,990 --> 00:59:12,580 Thank you very much for your attention. 981 00:59:12,580 --> 00:59:14,780 This was all what I wanted to say in this lecture.