MATLAB 用solve怎么求两函数交点?

clear
syms x
m1=@(x)4;
m2=@(x)(3*x-7);
[x]=solve('m1-m2=0');
x=eval(x)
我求的是m1,m2 两函数交点,并且这两函数必须像我这样表示。但是为何求出的x是一个表达式??

如果是求f1=f2的交点,可如下:
function x=fun2(a,b)
f=@(a,b) @(x) tan(90-a)*x+b-(0.5*(cos(4*3.14*x/3.75)+1));
x=fzero(f(a,b),1)

其中fun2(a,b)中的a和b是两个函数的向量,通过fzero求得,交点的值,将交点坐标放到变量x中。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-05-03
如果是求f1=f2的交点,可如下:
function x=fun2(a,b)
f=@(a,b) @(x) tan(90-a)*x+b-(0.5*(cos(4*3.14*x/3.75)+1));
x=fzero(f(a,b),1)追问

我的意思是solve语句里面的函数必须用m1,m2来表示,不可以直接写出表达式

本回答被网友采纳
相似回答