用matlab,已知x的值,和f(x,y)=0的隐函数,如何求y 10

已知x=linspace(-2.23,2.23,100);和隐函数sin(2^0.5*y)-0.5*sin(0.5*2^0.5*(x-y)).*sin(0.5*2^0.5... 已知x=linspace(-2.23,2.23,100);
和 隐函数sin(2^0.5*y)-0.5*sin(0.5*2^0.5*(x-y)).*sin(0.5*2^0.5*(x+y))=0,如何用matlab求与x相对应的y的值。
展开
ruifengcao
2012-10-09 · TA获得超过9489个赞
知道大有可为答主
回答量:3579
采纳率:33%
帮助的人:2028万
展开全部
h=ezplot('sin(2^0.5*y)-0.5*sin(0.5*2^0.5*(x-y)).*sin(0.5*2^0.5*(x+y))=0',[-2.23,2.23 0 1]);
x1=get(h,'XData');
y1=get(h,'YData');
x=linspace(-2.23,2.23,100);
y=interp1(x1,y1,x);
hold on
plot(x,y,'r')

使用ezplot函数来实现吧。先画出图像,然后图像上取点进行插值。当然这样可能不够精确。

要想更精确就给定一个x,然后只用数值方法求y。
更多追问追答
追问
请问数值方法怎么做?我用subs(solve()),matlab一直busy,不知道是我的电脑太慢了,还是方程太复杂了。
追答
是你的方法不好
f=@(x,y)sin(2^0.5*y)-0.5*sin(0.5*2^0.5*(x-y)).*sin(0.5*2^0.5*(x+y));
x1=linspace(-2.23,2.23,100);
for i=1:length(x1)
x=x1(i);
y(i)=fsolve(@(y) f(x,y),0);
end
plot(x1,y)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式