2015-01-31 441 views
-4

如果有人可以帮助我在matlab中回答以下问题,将不胜感激,我是新来的软件,我很困惑。Matlab fzero函数

使用fzero近似的sin(x)的根= COS(2个)近X = 1

回答

2

的fzero函数期望得到的功能手柄和一个起点。它的结果是作为函数根的最近点。在你的情况下,我们正在寻找在x = 1附近的cos(2x)-sin(x)= 0的根。你需要的代码是:

fun = @(x)(cos(2*x)-sin(x)); % Create an anonymous function handle. 
x0 = 1;      % Set a starting point. 
res = fzero(fun, x0);  % Calculate the nearest root. 
0

你的问题相当于找到一个函数的零点:

f=cos(2.*x)-sin(x) 

首先,f创建新的函数文件:

function y = funczero01(x) 
%Finding the zeros of the function below 
y=cos(2.*x)-sin(x); 

endfunction 

保存文件与funczero01.m并加载它的路径。 然后在调试器窗口调用funczero01

x0=fzero('funczero01',1) 
x0 = 0.52360 

确保你真正了解fzero('func',x0)。欲了解更多详情,请查看Matlab文档