PDA

查看完整版本 : 请高手帮忙看看


fetter
2008-06-12, 20:21
用fzero求一个函数的根,fzero('-200-64*x-8*gamma(1.25-0.5*x)/gamma(-0.25-0.5*x)',-4)
该函数应该在 -3.3939,2.5,4.5,6.5等处有零点, 其中- -3.3939为最小的零点,用
fzero求根,无论怎样改后边的初值,总是只能求出一个根 -3.3939,请高手帮慢看看,谢谢!

fanxing39
2008-06-15, 03:49
用fzero求一个函数的根,fzero('-200-64*x-8*gamma(1.25-0.5*x)/gamma(-0.25-0.5*x)',-4)
该函数应该在 -3.3939,2.5,4.5,6.5等处有零点, 其中- -3.3939为最小的零点,用
fzero求根,无论怎样改...

你给的初始值是 -4 ,所以更容易找到的是 -3.3939
请修改 初始值,来求得其他零点。

ps: fzero 的原理是 数值逼近,是从初始值开始去逼近的,所以求解结果和 初始值很有关系。
建议每次求零点前,先分析出零点的区间,这样再用fzero,修改初始值来得到 比较满意的结果