发布网友
共4个回答
热心网友
解决办法:用 fzero 函数,具体怎么用可以自己查帮助文档,下面简要说一下~
把你的方程 f = 0 写成一个匿名函数 f = @(w)······ (匿名函数不会就百度一下,很简单的)
然后 fzero(f,w,t),其中t是一个猜测的根值,按你所说在0-10之间任取一个就行了。追问那怎么才能体现出不同的a、b、c、d值的不同?用循环语句?
for i=1:6
for j=1:4
for k=1:5
for l=1:10
e((i-1)*6+(j-1)*4+(k-1)*5+l)=(b(j)*c(k)*d(l))^0.5;
f=@(w)1-d(l)*e((i-1)*6+(j-1)*4+(k-1)*5+l)*tan(pi/w*e((i-1)*6+(j-1)*4+(k-1)*5+l))*tan(pi/w)+6*w*a(i)/pi/e((i-1)*6+(j-1)*4+(k-1)*5+l)*tan(pi/w*e((i-1)*6+(j-1)*4+(k-1)*5+l))+ 6*w* a(i)*d(l)/pi*tan(pi/w);
然后是end
但是不对
追答我以前也有这个疑问。对于如何定义和使用多元的匿名函数,您可以参考我的这个帖子。
http://www.matlabsky.com/thread-15120-1-1.html
热心网友
最简单的二分法即可。手机上的,写不了代码,其他人补充吧!
热心网友
什么是超越方程
热心网友
试试solve