I was wondering what the technique is called that you used on the K matrix before solving for U?

The one where it takes the BC and makes 0 rows and columns, and then makes the K(i,i)=1 at the BC – GoPDemon

I first convert the boundary matrix into a vector so that it is easier to deal with. The code just creates an empty vector the correct size, then fills it with the rows and columns of the user defined boundary points.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
%First boundarys must be convertered to vector %Create empty boundary vector BC(1:(size(nodes,1)*n_multi),1) = 0; %Zero column increment h = 1; %Convert boundary matrix to vector for node_r = 1:size(nodal_boundary,1) %For each row get the column force for node_c = 1:size(nodal_boundary,2) %Put the force into the vector F BC(h) = nodal_boundary(node_r, node_c); h = h+1; end end |

Then, to apply to boundary conditions to the stiffness matrix, I scan the new vector *BC* for fixed points (1). At these points, the row and column of *K* is zero’d and the diagonal set to 1.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
%Loop to zero forces at boundaries for i = 1:size(BC,1) %If statement to set lines and columns coresponding to constrained %point to zero if BC(i) == 1 K(i,:) = 0; K(:,i) = 0; %Set diagonal term to 1 K(i,i) = 1; %Zero force at boundary F(i) = 0; end end |

Hope that was the explanation you meant.

Thanks for the reply.

I was wondering if there was a name for this technique? I am currently taking an FEA course in university and the only similar technique I was given was

http://imgur.com/x3U67

One step of my assignment is to actually do a matlab FEA program. My professor gave us this method,

But it gives me unreasonably low results for this bike frame (it worked for a simple truss).

Using the method you described above gave me reasonable results (change in length by mm’s, using my professors method gave me extremely low results.

Since my professor never mentioned your method in the results, I was looking for a reference name to the technique you used to see if I can explain it to him.

Thanks for the response. I was wondering if this method has a name that I could reference or a book I could look into.

It’s been a while since I did it but I believe it is part of the direct stiffness method; assuming each element is a uniform spring, any fixed points are assumed to have zero displacement.

Since

k.u = fany zero in the displacement vectoruwill eliminate the corresponding row and column on the same index of thekmatrix. Using the matrix in that question as an example, if is known to be zero, rows and columns are also zero. It’s a simplification and clearly not real world as no materials deform uniformly.There are methods to non-linearise this, but they are much more complex to programme. I believe most commercial packages use this but with millions of elements.

http://en.wikipedia.org/wiki/Direct_stiffness_method