CES 4141 - Stress Analysis Summer 1998 Direct Stiffness - Truss Application The following notes present the direct stiffness method for matrix truss analysis. We will generalize to include beam elements later. Symbols: We’ll stay consistent with the notation in Hoit r - displacements in terms of global coordinate system (global displacements) v - displacements in terms of element coordinate system (local displacements) a - transformation matrix from global to local coordinates for displacements (v = a*r) R - forces in terms of global coordinate system (global forces) S - forces in terms of local coordinate system (local forces) b - transformation from global to local coordinates for forces (S = b*R) k - local element stiffness matrix (local coordinates). Ke - element stiffness matrix in global coordinates KG - Global structural stiffness matrix 1. Overview Application of the stiffness method of structural analysis requires subdividing the structure into a set of finite elements, where the endpoints are called nodes. For the case of trusses, we will consider each whole truss member as a finite element, and each joint becomes a node. We’ll determine the force-displacement relationship for each element separately, then combine each individual contribution to the whole structure in a Global Structural Stiffness Matrix KG. Now for any given loading scenario, we can use Gaussian elimination to solve for all unknown displacements. Once these displacements are known, we can solve for all unknown forces, which are the reactions. These notes will present the stiffness for each member at the local level, then transform them into the global coordinate system, then sum the contribution of all elements, then discuss solutions for displacements, reactions, and internal forces. 2. Element Stiffness Matrix In Local Coordinates First we look at a single truss member y global v2, S2 in its own local coordinate system, and define its stiffness. Consider the element to x the right. The local coordinate system (x’, y’) will align with the member orientation, for any arbitrary orientation. On this same y’ v1, S1 AE k = ------- 1 – 1 figure, the local displacements (D.O.F.) are L –1 1 labeled, with v1 at the end with the local x’ axis origin, and v2 at the far end. local Fig. 1. local truss member stiffness Now we can apply the stiffness by definition procedure to find the stiffness matrix for this arbitrary element. Holding v1=1, v2=0, we get the left column of the 2x2 stiffness matrix. Then holding v1=0, v2=1 we get the right column. Removing the AE/L as a constant, the result is given in Fig. 1. Note that the stiffness is denoted by a lower case ‘k’. The local forces S and the local displacements v can be related by 1 of 10 6/29/98 Direct Stiffness - Truss Application CES 4141 - Stress Analysis Summer 1998 AE S = k*v , expanded for the single truss element as S1 = ------- 1 –1 v1 L – 1 1 v2 S2 (1) Note that this will be the same no matter what the orientation of the element, since al quantities are with respect to the element local coordinate system, which will always be set up to lie along the axis of the member. 3. Displacement Transformation Matrix Since a truss structure consists of many members of possibly many orientations, we’ll want to transform all local displacements into a single uniform global coordinate system. This global coordinate system is shown in Fig. 1, and is labeled (x,y). The question is then, if we were to find the displacement at both ends of an element in terms of the local coordinates (v1, v2, in terms of x’), what is that displacement in terms of the global coordinates (r1, r2, r3, r4 in terms of x, y)? Consider Fig. 2 below. The top left picture shows an individual element with the local displacements v1, v2, the global displacements, r1, r2, r3, r4, that we wish to convert to, and the local coordinate system with the origin at the lower end of the member (x’, y’). Let’s displace the element at node 1 a unit value in the r1 direction (r1=1, r2=r3=r4=0). We can see this in the top right picture. A displacement in global coordinate r1 is equal to a displacement in the local coordinate of v1 = r1* cos θ x , where θ x is the angle of the element with the horizontal axis. So ‘ cos θ x ’ transforms r1 to v1. We can repeat this procedure for each of the global coordinates in turn be setting each to 1 while holding all others to 0 (r1=0, r2=1, r3=r4=0), (r1=r2=0, r3=1, r4=0), and (r1=r2=r3=0, r4=1). Note this is the same procedure we used to find the stiffness matrix by definition. Let’s do one more. Set r4=1, r1=r2=r3=0, seen in the bottom picture in Fig. 2. The transformation from r4 to v2 is v2 = r4* cos θ y . r4 v2 y r3 r2 y’ v1 x’ node 2 v1 = r1* cos θ x r1 x’ r1 θx v1 node 1 r1 x y r4 v2 θy Fig. 2. global to local displacements x’ r4 x 2 of 10 6/29/98 v2 = r4* cos θ y Direct Stiffness - Truss Application CES 4141 - Stress Analysis Summer 1998 Although we didn’t do the other two cases, you should be able to visualize that a displacement of v1 will be caused by both a displacement r1 and r2, and v2 caused by r3 and r4. If we complete the procedure for all four, we can express v1, v2 in terms of r1, r2, r3, r4 as follows v1 = r1* cos θ x + r2* cos θy (2) v2 = r3* cos θ x + r4* cos θy (3) Let’s represent Lx = cos θ x , and Ly = cos θ y , and re-write these equations in matrix form as r1 v1 = Lx Ly 0 0 r2 . Try expanding this, and getting Eqs. 2 and 3. 0 0 Lx Ly r3 v2 r4 (4) Let’s define the transformation matrix and call it ‘a’ a = Lx Ly 0 0 0 0 Lx Ly (5) Now we can relate global to local displacements in matrix form as (6) v = a*r Now we’ve found a way to relate local displacements to global displacements. We’ll also want to do this for local and global forces. 4. Force Transformation Matrix We can also identify the transformation matrix for the local/global force relationship. Referring to Fig. 2, replace local displacements with local forces (v1, v2 with S1, S2), and replace global displacements with global forces (r1, r2, r3, r4 with R1, R2, R3, R4). This time we’ll get the global on the left hand side and the local on the right hand side by applying a unit force in local coordinates and finding the resultant global components. The resultant is R1 Lx 0 R2 = Ly 0 S1 . That is R = a T *S , where a T indicates transpose of a 0 Lx S2 R3 0 Ly R4 (7) 5. Element Stiffness Matrix In Global Coordinates Now we’ll use the transformation matrices we just derived to find the stiffness matrix for a single element in terms of global coordinates. This will expand our element stiffness matrix from a 2x2 to a 4x4. Why? We only have 2 degrees of freedom per truss element in local coordinates, but we have 4 D.O.F. per element in global degrees of freedom (See Fig. 2). 3 of 10 6/29/98 Direct Stiffness - Truss Application CES 4141 - Stress Analysis Summer 1998 Let’s re-write Eq. 1, which is the force displacement relationship all in local coordinates S = k*v (8) Now we’ll transform local displacements v to global displacements r by substituting Eq. 6 into Eq. 8 to get S = k*a*r (9) Finally, if we pre-multiply both sides by trans(a), the left hand side becomes Eq. 7, and the final expression is T R = a *k*a*r (10) We have the displacements and forces in terms of global coordinates now. The stiffness matrix is still local, and is pre and post-multiplied by trans(a) and a. Let’s separate this component and rename it as T Ke = a *k*a (11) where Ke now represents the local stiffness matrix in terms of global coordinates. This gives us a final expression of R = Ke*r (12) Let’s write out and multiply through Eq. 11 AE Ke = ------- L Lx Ly 0 0 0 0 1 – 1 Lx Ly 0 0 Lx – 1 1 0 0 Lx Ly Ly (13) Performing the matrix multiplications gives us: Lx 2 LxLy AE Ke = ------- LxLy L 2 – Lx Ly 2 – LxLy – LxLy – Ly 2 – Lx 2 – LxLy – LxLy Lx – Ly 2 2 , (14) LxLy LxLy Ly 2 And finally, Eq. 12 can be written fully as 2 2 – Lx – LxLy LxLy Lx R1 2 2 – LxLy – Ly Ly R2 = AE ------- LxLy L 2 2 R3 – Lx – LxLy Lx LxLy R4 2 2 – LxLy – Ly LxLy Ly 4 of 10 6/29/98 r1 r2 r3 r4 (15) Direct Stiffness - Truss Application CES 4141 - Stress Analysis Summer 1998 6. Assembly of Global Stiffness Matrix Before going on, let’s review what we have derived. Eq. 15 relates the displacements to forces, all in global coordinates, for a single element of arbitrary orientation. The orientation of the individual member is accounted for in the Global element stiffness matrix Ke. What’s left to do? We now have the contribution of a single element. For a structure with multiple members, we assemble a Ke for each member in the truss structure, then add them each into a global structural stiffness matrix that covers every degree of freedom in the entire structure. We’ll call that KG . KG will be a square matrix with as many rows and columns as there are total degrees of freedom, frozen and unfrozen. Let’s do this by example. Example 1: Assembly of KG for a truss structure 3 ft We’ll assemble the global structural stiffness matrix for 1 the structure in Fig. 3. If we solved this via chapter 4 (Hoit) by developing stiffness by definition, we’d create a 2x2 r6 y stiffness matrix representing only the unfrozen D.O.F. (r1, r5 r2). In the problem at the left, note that we have labeled the 2 4 ft unfrozen D.O.F. as r1 and r2, then the frozen D.O.F. as r3, r4, r5, r6. we know that r3=r4=r5=r6=0, this will help later. For each D.O.F. there is an associated R, representing a 3 2 force. R1, R2 will be the external forces applied to the 1 r2 structure, and R3 through R6 represent the reaction at the x r4 r1 pins. - node # - element # The process is simply to create Ke for each of the two r3 members using Eq. 14, then to add them by keeping track Fig. 3. Example 1 of how the local degrees of freedom correspond to the global degrees of freedom. Element 1: the element labeled 1 connects nodes 2 y’ and 3, and global D.O.F. r1, r2, r3, r4. We need to find 3 Lx and Ly so we can apply Eq. 14. If we define the r4 r2 2 x’ local origin (x’, y’) for element 1 at node 2, we have: r3 Lx = change in x / L = (3 - 0)/3 = 1 r1 Ly = change in y / L = (0 - 0)/3 = 0 this gives us (Eq. 14) Fig. 4. Element 1 r1 1 x’ r6 r5 y’ Fig. 5. Element 2 r2 2 r1 5 of 10 0.333 0 Ke1 = AE – 0.333 0 r2 r3 r4 0 – 0.333 0 0 0 0.333 0 0 0 0 0 0 r1 r2 r3 r4 (16) Element 2: This element connects nodes 2 and 3, and global D.O.F. r1, r2, r5, r6. We pick the local origin (x’, y’) at node 2 again, giving us: Lx = change in x / L = (3 - 0)/5 = 0.6 Ly = change in x / L = (4 - 0)/5 = 0.8 this gives us Ke2 through Eq. 14 as 6/29/98 Direct Stiffness - Truss Application CES 4141 - Stress Analysis r1 0.072 Ke2 = AE 0.096 – 0.072 – 0.096 Summer 1998 r2 0.096 0.128 – 0.096 – 0.128 r5 – 0.072 – 0.096 0.072 0.096 r6 – 0.096 r1 – 0.128 r2 0.096 r5 0.128 r6 (17) Note that we have listed above and to the right of each element global stiffness matrix the global displacements that correspond to the four local degrees of freedom. Now we have all element stiffness matrices. We simply set up the global structural stiffness matrix as a 6x6 with all zeros initially, and add in the element matrices. KG = Ke1 + Ke2 (18) where, for example, we add the r5 row and r2 column of Ke2 into the r5 row and r2 column of KG (19) r1 r2 0.333 0 KG = AE – 0.333 0 r3 r4 0 – 0.333 0 0 0 0.333 0 0 0 r1 0 r2 + AE 0 r3 0 r4 r1 r2 r5 r6 0.072 0.096 – 0.072 – 0.096 0.096 0.128 – 0.096 – 0.128 – 0.072 – 0.096 0.072 0.096 – 0.096 – 0.128 0.096 0.128 r1 r2 r5 r6 which gives us (confirm this yourself). r1 0.405 0.096 KG = AE – 0.333 0 – 0.072 – 0.096 r2 r3 0.096 – 0.333 0.128 0 0 0.333 0 0 – 0.096 0 – 0.128 0 r4 0 0 0 0 0 0 r5 r6 – 0.072 – 0.096 0 0 0.072 0.096 – 0.096 – 0.128 0 0 0.096 0.128 r1 r2 r3 r4 r5 r6 (20) If A and E are different for each member, we expand them into Ke1, and Ke2 before adding. 7. The Solution Procedure Now we can write the full system as 0.405 R1 0.096 R2 R3 = AE – 0.333 0 R4 – 0.072 R5 – 0.096 R6 6 of 10 0.096 – 0.333 0.128 0 0 0.333 0 0 –0.096 0 – 0.128 0 0 0 0 0 0 0 – 0.072 – 0.096 0 0 0.072 0.096 – 0.096 – 0.128 0 0 0.096 0.128 6/29/98 r1 r2 r3 r4 r5 r6 (21) Direct Stiffness - Truss Application CES 4141 - Stress Analysis Summer 1998 Since we initially labeled the unfrozen D.O.F. first, R1 and R2 are the applied external forces, r1 and r2 are the sought displacements in global coordinates. The knowns: Rk = R1, R2 - external forces rk = r3, r4, r5, r6 - frozen displacements (all = 0) The unknowns: Ru = R3, R4, R5, R6 - reactions ru = r1, r2 - displacements Now we can partition Eq. 21 and separate knowns and unknowns: 0.405 R1 0.096 R2 R3 = AE –0.333 0 R4 – 0.072 R5 – 0.096 R6 0.096 – 0.333 0.128 0 0 0.333 0 0 – 0.096 0 – 0.128 0 0 0 0 0 0 0 – 0.072 – 0.096 0 0 0.072 0.096 – 0.096 – 0.128 0 0 0.096 0.128 r1 r2 r3 r4 r5 r6 (22) and rewrite as Rk = AE K11 K12 ru Ru K21 K22 rk (23) now expanding we get...(make sure you can follow this step) Rk = AE ( K11*ru + K12*rk ) (24) Ru = AE ( K21*ru + K22*rk ) (25) We can solve the system in Eq. 24 (which is two equations and 2 unknowns) for ru, then solve the system in Eq. 25 (a 4 equation, 4 unknown system). Once we have solved Eqs. 24 and 25 we have displacements and reactions. Let’s note this. We Now Have 1) displacements at the nodes 2) reaction forces What we do not have yet is a description of the internal forces in each member: Let’s note this and get back to it after an example. We Still Need 3) member forces (internal axial forces, and shear and moments when we go to beams) First let’s complete an example using the assembled system in Eq. 22 7 of 10 6/29/98 Direct Stiffness - Truss Application CES 4141 - Stress Analysis Summer 1998 Example with loading: If we put the 10 kip load on the structure from Fig. 3 as shown to the left, the solution set up is exactly Eq. 22, where we now know that R1=0, R2= -10. We also know there is zero displacement at all supports, so we can solve the portion of Eq. 22 we pulled off into Eq. 24. When we do this we get y 0 0 = AE 0.405 0.096 r1 + K12 0 –10 0.096 0.128 r2 0 0 x 10 kips (26) Fig. 6. Example 1 with forces Note I didn’t bother to fill in K12 (although we have it) since it is multiplied by a zero vector anyway. Solving Eq. 26 for r1, r2 gives us (make sure you can do this by hand by Gaussian elimination) r1 = 22.52/AE r2 = -95.02/AE We now have displacements at the nodal D.O.F. free to move. We can now turn to Eq. 25 to solve for reactions Ru. The set of equations to solve are now: – 0.333 0 R3 22.52 ------------0 0 R4 = AE AE + K22 – 0.072 –0.096 – 95.02 R5 ------------AE – 0.096 – 0.128 R6 0 0 0 0 (27) The reactions R1, R2, R3, R4 come out directly from matrix multiplication. We don’t even need Gaussian elimination. the result is R3 = -7.5 R4 = 0 R5 = 7.5 R6 = 10.0 all in Kips 7.5 y 10 kips 10.0 kips 7.5 Let’s redraw the problem with the reactions to see if they make sense. A quick check on equilibrium confirms this solution in Fig. 7. Note that displacements r1, r2 are in terms of the unknown values of AE, and that we got numbers for the reactions. Equilibrium is not dependent on material properties, while displacements are, so this all makes sense. Let’s now move onto the topic of ‘force recovery’, or finding internal forces in the members making up the structure. Fig. 7. Resulting reactions 8 of 10 6/29/98 Direct Stiffness - Truss Application CES 4141 - Stress Analysis Summer 1998 8. Internal member force recovery We have already solved for the displacements at all the nodes. We also have stiffness matrices that relate forces to displacements, and a description of the geometry of each element in the transformation matrices. It certainly seems that we have enough information to find internal forces, since this is analogous to having displacement and stiffness for a spring, where we want the force. Go back and take a look at Eq. 8, which relates forces to displacements in local coordinates through the local element stiffness matrix ( S = k*v ). What do we have now? We have the local element stiffness matrix, k , which is always just AE k = ------- 1 – 1 . L –1 1 (28) We don’t really have v , since this is displacement in local coordinates. We solved for r , which is displacement in global coordinates. But we did find the relationship between v and r , which is what we called the transformation matrix a . Now go look at Eq. 6. We see that v = a*r . This is how we got Eq. 9, which is repeated here (29) S = k*a*r This is exactly what we want. The left hand side S is in local coordinates, so it will give us exactly axial force no matter what the orientation of the member. the right hand side is in terms of the global displacements, local stiffness, and transformation matrix, all of which we have for each element. Let’s write it out as r1 S1 = AE ------- 1 – 1 Lx Ly 0 0 r2 . L – 1 1 0 0 Lx Ly r3 S2 r4 (30) For a truss, it is always the case that S1 = – S 2 . So we need only solve for either S1 or S2 . Expanding just the bottom row in Eq. 30 we can express the axial force in any member by r1 AE S2 = ------- – Lx – Ly Lx Ly r2 , L r3 r4 (31) Where we choose S2 since + will be tension, and - will be compression, as is our convention. An important notation comment is necessary. We use r1, r2, r3, r4 above to represent the local labeling on the element. In practice, they may not be 1-4, but whatever the global notation happens to be. We will see this when we complete the example. 9 of 10 6/29/98 Direct Stiffness - Truss Application CES 4141 - Stress Analysis Summer 1998 Example completed - force recovery: We repeat the figures that define the problem so we can see the degrees of freedom and individual elements. The displacements we found were: r1 = 22.52 / AE r2 = -95.02 / AE r3 = r4 = r5 = r6 = 0 Now we solve for element internal axial forces 3 ft 1 r6 y r5 2 4 ft 3 r2 2 1 r4 r1 Element #1 Recall that we found the following: x Lx = change in x / L = (3 - 0)/3 = 1 - node # - element # Ly = change in y / L = (0 - 0)/3 = 0 r3 which gives y’ r2 2 3 r4 1 x’ r3 r1 1 x’ r6 2 y’ r2 2 r1 r5 r1 22.52 ------------AE AE 95.02- r2 = – 7.5 compression S = ------- – 1 0 1 0 –--------------3 AE r3 0 r4 0 Element #2 Lx = change in x / L = (3 - 0)/5 = 0.6 Ly = change in x / L = (4 - 0)/5 = 0.8 which gives 22.52-----------AE AE 95.02S = ------- –0.6 – 0.8 0.6 0.8 –--------------5 AE 0 0 r1 r2 = 12.5 tension r5 r6 9. Final Comments For truss structures with more members, the solution procedure from displacements to reactions to internal forces stays the same. The KG global stiffness matrix may be larger, and be made up from more element contributions, but the procedure is identical. Also we’ll see that the structure can be either determinate or indeterminate, and the same procedure applies. The partitioning that is done in Eq. 22 will change, since the number of known displacements will change, but the total number of unknows remains the same. For example, if we put a roller at node 2 in our example that fixes d.o.f. #2, (r2), then the initial system we solve for displacements (Eq. 24) will be a single equation and unknown instead of the 2 we had for the given example, and the next system to get reactions (Eq. 25) will be a 5 equation system. Next up: beams at the element level, then building frame KG matrices. 10 of 10 6/29/98 Direct Stiffness - Truss Application
© Copyright 2026 Paperzz