axial displacement of element 'e' at local node 'i' axial force of element 'e' at local node 'i'
We want to find the relationship between and , and and .
These relationships can be expressed in the form:
Consider the displacement vector of the local node 1 denoted by .
= axial displacement of node 1 is the prthagonal projection of the displacement vector of node 1 on the axis of element 'e'.
Here we can see that is a 1x1 scalar.
We do this for node 2 as well.
which leads us to:
where this is the equation we set out to derive,
Similarly, (same argument):
Where P is a 2x1 matrix, T is a 2x4 matrix, and f is a 4x1 matrix.
This relationship is the same as saying
Recall the axial Fd relationship:
where k is a 2x2 matrix, q is a 2x1 matrix, and P is a 2x1 matrix.
Goal: We want to have k(e)d(e)=f(e) so "move" Te from right side to the left side by pre multiplying equation by T(e)-1, the inverse of T(e). Unfortunately, T(e) is a rectangular matrix of the size 2x4 and cannot be inverted. Only square matricies can be inverted. To solve this issue, transpose T.
Ans:
where k is on p6.1, k hat is on 12-2, and T is on 12-5.
Justification for (1): PVW see 10-1 for 1st applications of PVW, reduction of global FD relationship.
Remember: Why not solve as follows?
Used mathcad to try to solve K-1 and could not, due to singularity of K., i.e. the determinant of K=0 and thus K is not invertible. Recall that you need to computer to find K-1.
Why? For an unconstrained structure system, there are 3 possible rigid body mostion in 2-D (2 translational and 1 rotational).
HW: Find the eigenvalues of K and make observations about the number of eigenvalues.
Dyanmic eigenvalue problem Kv = λMv
Where K is the stiffness matrix, M is the mass.
Zero evaluation corresponds to zero stored elastic energy which means rigid body motion.
Using d3, and d4 in and using boundary conditions to eliminate rows in the global displacement matrix we get:
Note: We really only need to do the computations for rows 1,2,5, and 6 to get F1,F2,F5,and F6 because computation from rows 3 and 4 gives the applied load which is already known.
MATLAB Coding Showing Computations
K=
d=
MatLab Code:
>> K = [-.5625,(-3*sqrt(3))/16;(-3*sqrt(3))/16,-.1875;3.0625,-2.1752;-2.1752,2.6875;-2.5,2.5;2.5,-2.5];
>> d = [4.352;6.1271];
>> f = K*d
f =
-4.4378
-2.5622
0.0003
7.0001
4.4377
-4.4377
This gives us: F=
Closing the Loop between FEM and Statics: Virtual Displacement
Since our two-bar truss system is statically determinant because we can view element 1 and 2 as two force bodies. By statics, the reactions are known and therefore, so are the member forces , and .
We then compute axial displacement degrees of freedom. This is the amount of extension within the bars.
(Node 1 is fixed)
(Node 2 is fixed)
How do we back out the displacement DOFs of node 2 from above results?
Note: The displacement of node 2 is in the direction of vector D.
Statics reason that previous method cannot be done with arcs of a compass
(if alpha is small) (first order)
Infinitesimal displacement (related to virtual displacement)
Part of this assignment required the team to develop a MATLAB code that plots the deformed and un-deformed configurations of the two-bar truss system solved in class. The code is based on two models that were created by Dr. Vu-Quoc and X.G. Tan.
MATLAB Code
%HW 3%Assignment:%Write a matlab code to plot the initial underformed %configuration of the two-bar truss system solved in class %and then superpose the deformed configuration on the same figure. functiontruss_plotdof=2;%number of dofs per noden_node=3;%number of nodesn_elem=2;%number of elementstotal_dof=2*n_node;%total number of dofs%*******************************************************************% UNDEFORMED BEAM%*******************************************************************%coordinates of undeformed positionposition(:,1)=[0;0];position(:,2)=[2*sqrt(3);2];position(:,3)=[2*sqrt(3)+sqrt(2);2-sqrt(2)];%set up the nodal coordinate arrays for undeformed beamsfori=1:n_nodex(i)=position(1,i);y(i)=position(2,i);end%define elements%element 1node_connect(1,1)=1;node_connect(2,1)=2;%element 2node_connect(1,2)=2;node_connect(2,2)=3;%*******************************************************************% DEFORMED BEAM %*******************************************************************%the deformed beam variables are denoted with a '2'%coordinates of deformed position%(NOTE: node 1 and node 2 remain undeformed)position2(:,1)=[0;0];position2(:,2)=[2*sqrt(3)+4.352;2+6.1271];position2(:,3)=[2*sqrt(3)+sqrt(2);2-sqrt(2)];%set up the nodal coordinate arrays for deformed beamsfori=1:n_nodex2(i)=position2(1,i);y2(i)=position2(2,i);end%define elements%element 1node_connect2(1,1)=1;node_connect2(2,1)=2;%element 2node_connect2(1,2)=2;node_connect2(2,2)=3;%*******************************************************************% CONNECT BEAMS AND PRINT %*******************************************************************fori=1:n_elem;%undeformed beamnode_1=node_connect(1,i);node_2=node_connect(2,i);xx=[x(node_1),x(node_2)];yy=[y(node_1),y(node_2)];%deformed beamnode_1_deformed=node_connect2(1,i);node_2_deformed=node_connect2(2,i);xx_deformed=[x2(node_1_deformed),x2(node_2_deformed)];yy_deformed=[y2(node_1_deformed),y2(node_2_deformed)];%plotholdonplot(xx,yy,'--b')plot(xx_deformed,yy_deformed,'-r')endend
The blue dashed line represents the un-deformed truss, while the solid red line shows the truss after it has been deformed.