我想解一非线性方程式
利用fzero来解
以实际画图来看,应该会有两个解
http://i.imgur.com/Czr83Ow.jpg
但经以下两种方法运算出来却只有一解
请问各位大大,是小弟我哪边没注意到还是做错呢!?
1.
利用fzero
function y=fname(f)
L=12;
X=0.86*1.72;
CS=18.8715;
y=((540.*(1+0.7./L).^-0.2)./1+12./X.*(1+f./3)).*f.*exp(-(0.3.*(1+100./L).^0.15).*f).*sqrt(1+0.06.*exp((0.3.*(1+100./L).^0.15).*f))-CS;
x0=2;
sol = fzero('fname',x0)
结果 sol = 0.0343
2.
利用solve
sol = solve(((540.*(1+0.7./L).^-0.2)./1+12./X.*(1+f./3)).*f.*exp(-(0.3.*(1+100./L).^0.15).*f).*sqrt(1+0.06.*exp((0.3.*(1+100./L).^0.15).*f))-CS)
结果 sol = 0.034223012728613170972559442722555
都只有一解!?