cannot solve for unknown variable
조회 수: 1 (최근 30일)
이전 댓글 표시
I am trying to solve for unknown variable P in the following code. I determined value of P= 2.945e-5 manually. However, I am not getting that value with the code. As a matter of fact, if I change the constant (1.9664e+08) in the sigma equation, the result is not changing.
Can anyone help in this?
%Constants
L= 300e-6;
O= 5e-6;
theta= atan(2*O/L);
E= 188e9;
w= 1.57e-6;
h= 2.5e-6;
I= (h*w^3)/12;
L_0 = (L/2)*(tan(theta))^2;
%Calculations
syms P real
k= sqrt(P/(E*I));
G= tan((k*L)/4);
L_p= ((tan(theta))^2/(4*k))*( 2*G + k*L + k*L*G^2 + sin(k*L) - 2*G*cos(k*L) - G^2*sin(k*L));
delta_L = L_p - L_0;
sigma = (E/L)*(delta_L + ((P*L)/(E*w*h))) -1.9664e+08==0;
F = vpasolve(sigma, P)
댓글 수: 0
채택된 답변
Walter Roberson
2022년 7월 19일
vpasolve(sigma, [0 .5e-4])
There is a discontinuity before 1e-4 so if you do not confine the search range the discontinuity can cause search failures
댓글 수: 3
Walter Roberson
2022년 7월 19일
fplot(lhs(sigma), [0 1e-4])
Notice how the plot goes up to about 1e11 in the middle
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Symbolic Math Toolbox에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!