- #1
nate9519
- 47
- 0
Homework Statement
I'm using MATLAB to design a truss and the output is suppose to be the deflections caused by the applied loads. But I keep getting "not a number" for my deflections . here is the warnings I get.
Warning: System may be partially constrained.
> In truss3 (line 222)
In truss3ex2 (line 26)
Warning: Matrix is singular to working precision.
> In truss3 (line 224)
In truss3ex2 (line 26)
Homework Equations
relevant lines from truss3 starting at line 219
Matlab:
% Solve the force-displacement equations.AA = [a,zero1;e,d]; BB = [b,zero2]'; detAA = det(AA);
if abs(detAA) < 1e-16
warning('System may be partially constrained.')
end
AAinv = inv(AA); sol = AAinv*BB;
% Prepare the output quantities.
pp = 0;
for i = 1:nJforce(i,1) = i; Jdispl(i,1) = i;
isol = 2*m+p+3*(i-1);
Jdispl(i,2) = sol(isol+1); Jdispl(i,3) = sol(isol+2);
Jdispl(i,4) = sol(isol+3);
[\code][h2]The Attempt at a Solution[/h2]
[/B]
here is the code.
[code=matlab]
% class design project example%
% all of the members are quenched steel
% k = 2000 k-lb, Pmax = 1500 k-lb (A = 100 sq-inch)
%
clear
n = 24; m = 60; LOADZ = -20000; LOADY = 1000; A = 100;
joint = [0,0,0;0,0,-10;0,0,-20;12,0,0;12,0,-10;12,0,-20;...
0,10,0;0,10,-10;12,10,0;12,10,-10;0,20,0;0,20,-10;...
12,20,0;12,20,-10;0,30,0;0,30,-10;12,30,0;12,30,-10;...
0,40,0;0,40,-10;0,40,-20;12,40,0;12,40,-10;12,40,-20];
assembly = [1,2;1,4;1,7;2,3;2,4;2,5;2,6;2,7;2,8;3,6;3,8;...
4,5;4,9;5,6;5,9;5,10;6,10;7,8;7,9;7,11;8,9;8,10;8,11;...
8,12;9,10;9,13;10,13;10,14;11,12;11,13;11,14;11,15;11,16;...
12,14;12,16;13,14;13,17;13,18;14,18;15,16;15,17;15,19;15,20;...
16,17;16,18;16,20;16,21;17,18;17,22;17,23;18,23;18,24;19,20;...
19,22;20,22;20,23;20,24;21,24;22,23;23,24];
forceJ = [3,1,1,1;3,1,1,1;3,1,1,1;3,1,1,1;3,1,1,1;...
3,1,1,1;-1,0,0,0;-1,0,0,0;...
-1,0,0,0; -1,0,0,0;-1,0,LOADY,LOADZ;-1,0,0,0;...
-1,0,LOADY,LOADZ;-1,0,0,0;-1,0,0,0;-1,0,0,0;-1,0,0,0;-1,0,0,0;...
3,1,1,1;3,1,1,1;3,1,1,1;3,1,1,1;3,1,1,1;3,1,1,1];
for i = 1:m; stretch(i) = 2000*1000; end; stretch(1);
%
index = 1;
[Jforce,Mforce,Jdispl,Mdispl] = ... ([B]LINE 26)[/B]
truss3(n,m,joint,assembly,forceJ,stretch,index);
%
peak_klb = 18*A
maxMforce_klb = max(abs(Mforce/1000))
maxJdispl = max(abs(Jdispl*12));
maxDX_in = maxJdispl(2),maxDY_in = maxJdispl(3),maxDZ_in = maxJdispl(4)
[\code]for forceJ, (3,1,1,1) indicates a external joint with 3 reaction forces. (-1,0,0,0) indicates an internal joint with no loads.
Can anyone help me figure out this problem with the matrices? I have no idea what to do
Last edited: