find the values of a variable for which the determinant of the matrix become zero?
    8 views (last 30 days)
  
       Show older comments
    
    Mani S
 on 16 Sep 2021
  
    
    
    
    
    Commented: Walter Roberson
      
      
 on 22 Sep 2021
            a = 2e-3;
X = 150-3;
h = 20e-3;
b = 20e-3;
A = b*h;
l = 500e-3;
I = (b*(h^3))/12;
p = 2700;
E= 69e9;
v12 = 0.33;
j = 0.016;
Kt = 5.375588477512108e+05;
L = ((w^2*p*A*l^4)/(E*I))^(1/4);
Q = [1 0 1 0 0 0 0 0;...
0 1 0 1 0 0 0 0;...
cosh((L*X)/l) sinh((L*X)/l) cos((L*X)/l) sin((L*X)/l) -cosh((L*X)/l)  -sinh( (L*X)/l) -cos((L*X)/l)  -sin((L*X)/l) ;...
sinh((L*X)/l)  cosh((L*X)/l)  sin((L*X)/l)  -cos((L*X)/l)  -sinh((L*X)/l)  -cosh((L*X)/l)  -sin((L*X)/l)  cos((L*X)/l) ;...
cosh((L*X)/l)  sinh((L*X)/l)  -cos((L*X)/l)  -sin((L*X)/l) -cosh((L*X)/l) -sinh((L*X)/l) cos((L*X)/l) sin((L*X)/l);...
0 0 0 0 cosh(L) sinh(L) -cos(L) -sin(L);...
0 0 0 0 sinh(L) cosh(L) sin(L) -cos(L);...
cosh((L*X)/l)+((Kt*l)/(E*I*L))*sin((L*X)/l) sinh((L*X)/l)+((Kt*l)/(E*I*L))*cosh((L*X)/l) -cos((L*X)/l)-((Kt*l)/(E*I*L))*sin((L*X)/l) -sin((L*X)/l)+((Kt*l)/(E*I*L))*cos((L*X)/l) ((Kt*l)/(E*I*L))*sinh((L*X)/l) ((Kt*l)/(E*I*L))*cosh((L*X)/l) ((Kt*l)/(E*I*L))*sin((L*X)/l) ((Kt*l)/(E*I*L))*cos((L*X)/l)];
det(Q)
A = det(Q) ==0;
solve (A,L)
here I am finding the natural frequencies of beam.
I need to find w values for which the determinant of Q become zero, there will be n number of w values.
please help me to find the solution
Thank you.
0 Comments
Accepted Answer
  Walter Roberson
      
      
 on 16 Sep 2021
        syms w real
a = 2e-3;
X = 150-3;
h = 20e-3;
b = 20e-3;
A = b*h;
l = 500e-3;
I = (b*(h^3))/12;
p = 2700;
E= 69e9;
v12 = 0.33;
j = 0.016;
Kt = 5.375588477512108e+05;
L = ((w^2*p*A*l^4)/(E*I))^(1/4);
Q = [1 0 1 0 0 0 0 0;...
0 1 0 1 0 0 0 0;...
cosh((L*X)/l) sinh((L*X)/l) cos((L*X)/l) sin((L*X)/l) -cosh((L*X)/l)  -sinh( (L*X)/l) -cos((L*X)/l)  -sin((L*X)/l) ;...
sinh((L*X)/l)  cosh((L*X)/l)  sin((L*X)/l)  -cos((L*X)/l)  -sinh((L*X)/l)  -cosh((L*X)/l)  -sin((L*X)/l)  cos((L*X)/l) ;...
cosh((L*X)/l)  sinh((L*X)/l)  -cos((L*X)/l)  -sin((L*X)/l) -cosh((L*X)/l) -sinh((L*X)/l) cos((L*X)/l) sin((L*X)/l);...
0 0 0 0 cosh(L) sinh(L) -cos(L) -sin(L);...
0 0 0 0 sinh(L) cosh(L) sin(L) -cos(L);...
cosh((L*X)/l)+((Kt*l)/(E*I*L))*sin((L*X)/l) sinh((L*X)/l)+((Kt*l)/(E*I*L))*cosh((L*X)/l) -cos((L*X)/l)-((Kt*l)/(E*I*L))*sin((L*X)/l) -sin((L*X)/l)+((Kt*l)/(E*I*L))*cos((L*X)/l) ((Kt*l)/(E*I*L))*sinh((L*X)/l) ((Kt*l)/(E*I*L))*cosh((L*X)/l) ((Kt*l)/(E*I*L))*sin((L*X)/l) ((Kt*l)/(E*I*L))*cos((L*X)/l)];
detQ = det(Q)
sol3 = vpasolve(detQ, -1)
subs(detQ, w, sol3)
fplot(detQ, [-1e-2 1e-2])
sol1 = vpasolve(detQ, -1000)
subs(detQ, w, sol1)
vpa(subs(detQ, w, -1000))
vpa(subs(diff(detQ,w),w,sol1))
There might be additional solutions, but you can see that the slope is impossibly steep... I am not convinced that the solutin near -1000 is real: if you bump the digits up to 50, -1000.0 shows as the solution but substituting that back in shows a distinct non-zero value.
7 Comments
  Walter Roberson
      
      
 on 22 Sep 2021
				No, none of the 
format long g
syms  w
a = 2e-3;
X = 98.4e-3;
h = 10e-3;
b = 20e-3;
A = b*h;
l = 820e-3;
I = (b*(h^3))/12;
p = 2700;
E= 72e9;
v12 = 0.33;
L = ((w^2*p*A*l^4)/(E*I))^(1/4);
j = 0.016;
%j = 1.8624*(a /h)^2 - 3.95*(a/h)^3 + 16.375*(a/h)^4 - 37.226*(a/h)^5 + 76.81*(a/h)^6 - 126.9*(a/h)^7+ 172*(a/h)^8 - 143.97*(a/h)^9 + 66.56*(a/h)^10
Kt = ((E*I)/(6*(1-v12^2)*h))*(1/j)
Q = [1 0 1 0 0 0 0 0;...
0 1 0 1 0 0 0 0;...
cosh((L*X)/l) sinh((L*X)/l) cos((L*X)/l) sin((L*X)/l) -cosh((L*X)/l)  -sinh( (L*X)/l) -cos((L*X)/l)  -sin((L*X)/l) ;...
sinh((L*X)/l)  cosh((L*X)/l)  sin((L*X)/l)  -cos((L*X)/l)  -sinh((L*X)/l)  -cosh((L*X)/l)  -sin((L*X)/l)  cos((L*X)/l) ;...
cosh((L*X)/l)  sinh((L*X)/l)  -cos((L*X)/l)  -sin((L*X)/l) -cosh((L*X)/l) -sinh((L*X)/l) cos((L*X)/l) sin((L*X)/l);...
0 0 0 0 cosh(L) sinh(L) -cos(L) -sin(L);...
0 0 0 0 sinh(L) cosh(L) sin(L) -cos(L);...
cosh((L*X)/l)+((Kt*l)/(E*I*L))*sin((L*X)/l) sinh((L*X)/l)+((Kt*l)/(E*I*L))*cosh((L*X)/l) -cos((L*X)/l)-((Kt*l)/(E*I*L))*sin((L*X)/l) -sin((L*X)/l)+((Kt*l)/(E*I*L))*cos((L*X)/l) -((Kt*l)/(E*I*L))*sinh((L*X)/l) -((Kt*l)/(E*I*L))*cosh((L*X)/l) ((Kt*l)/(E*I*L))*sin((L*X)/l) -((Kt*l)/(E*I*L))*cos((L*X)/l)];
det(Q)
A = det(Q);
%solve (A,w)
expects = [12.164, 76.5471, 214.6394, 420.4588] .';
digits(50)
for K = 1 : length(expects)
    W = expects(K);
    got(K,1) = subs(A, w, W);
    sol = vpasolve(A, w, W);
    if isempty(sol)
        nearby(K,1) = nan;
        val_nearby(K,1) = nan;
    else
        nearby(K,1) = sol;
        val_nearby(K,1) = subs(A, w, sol);
    end
end
double([expects, got, nearby, val_nearby])
fplot([A], expects(3)+[-1/100 1/100]); %ylim([-100 100])
testlocs = linspace(expects(3)-1/10, expects(3)+1/10, 50);
vals_at_test = double(subs(A, w, testlocs));
plot(testlocs, vals_at_test, '-*');
fplot(A, [1 2500])
Actual zeros: near 78, 491, 1300, 2600, possibly others
More Answers (0)
See Also
Categories
				Find more on Axis Labels in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

















