24小时热门版块排行榜    

CyRhmU.jpeg
查看: 433  |  回复: 1

tieqxin

铁虫 (初入文坛)

[求助] 求助一个matlab解方程的问题

我在用fzeros解方程,遇到这样的问题,比如

方程为:a+b-sin(x)=0,x为求解未知量,a和b的值已知,但在程序中是不断变化的,所以必须以符号形式代入。

然后按照下列程序求解

y=inline('a+b-sin(x)','x');
x0=1;
x=fzero(y,x0);

然后会报错

??? Error using ==> eval

Undefined function or variable 'a

请问各位,如何解决?
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fouvy

铁虫 (初入文坛)

【答案】应助回帖

感谢参与,应助指数 +1
a=1;b=1;
x0=1;
y=eval(['inline(''',num2str(a),'+',num2str(b),'-sin(x)'',''x'')']);
x=fzero(y,x0);
-------------------------------------------------------------------------------
personally, i hate inline function. 'cuz, it always slow down ur program.
anonymous function is a good candidate。
2楼2012-10-05 19:22:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 tieqxin 的主题更新
信息提示
请填处理意见