这个用matlab怎么写呢,成功解决两百红包。
这个用matlab怎么写呢,成功解决两百红包。
如有用请采纳
clear all
clc
%把圆频率换成实际即可
W = 1:8;
L = zeros(1,length(W));
syms l w
for i=1:length(W)
w = W(i);
eq1 = 0==l-cos(l*((w^2-1)^0.25))*cosh(l*((w^2-1)^0.25));
L(i) = vpasolve(eq1);
end
figure(1);
plot(W,L,'r');
%这里按实际取值
y = 1:7;
wj = 2;%假设一阶圆频率已知
ll = zeros(1,7);
syms wi yi1
for i=2:length(W)
yi1=y(i-1);
eq1 = yi1==wi/wj-i/1;
ll(i-1) = solve(eq1);
end
figure(2);
plot(y,ll,'b');
%输入梁长l,一阶圆频率w1,需要获取的第i阶,得到对应的wi,以及yi1
[a,b]=getret(6,1,4)
function [wi,yi1]=getret(l,w1,i)
syms l wi
eq1 = 0==l-cos(l*((wi^2-1)^0.25))*cosh(l*((wi^2-1)^0.25));
ret= vpasolve(eq1);
wi = double(ret.wi);
yi1 = wi/w1-i/1;
end