如何用MATLAB解(x^2+y^2+1)^3=x^2 * y^3在x(-1,1)上每隔0.025一个坐标的解,求高人给个代码

如何用MATLAB解(x^2+y^2+1)^3=x^2 * y^3在x(-1,1)上每隔0.025一个坐标的解,求高人给个代码

syms x y
result=[];
for k=-1:0.025:1
result=[result solve(subs((x^2+y^2+1)^3-x^2 * y^3,k))];
end
这样求出来必然会出现虚数解,不知是否是您想要的
%subs是将x=k带入方程,得到关于y的方程,然后solve求解关于y的方程追问

这是笛卡尔心形线的直角坐标表示,我试过solve,没试出来,正常来讲这个图形应该是一个X对应两个Y的坐标,在-11两点取一个坐标,为什么出现虚数解,我也不是很理解,我目的是想画一个想画一个X,Y的坐标图形,在坐标纸上,所以我研究一下坐标,大神,这个程序我运行无结果啊。。。。

追答

笛卡尔心形线的直角坐标表达式不是x^2+y^2+a*x=a*sqrt(x^2+y^2) 和 x^2+y^2-a*x=a*sqrt(x^2+y^2)吗?
上面的结果存储在result中,需要再输入一次result
如果单纯想画图的话可以用ezplot('(x^2+y^2+1)^3-x^2 * y^3'),但是很明显这是关于y的6次方程做不出平面图,这也是为什么会有虚数解的原因

如果用x^2+y^2+a*x=a*sqrt(x^2+y^2) 这个方程的画效果如图所示
ezplot('x^2+y^2+x-(x^2+y^2)^0.5')
http://hiphotos.baidu.com/%B2%A8%B2%A8%C7%F2bob/pic/item/b92260680c33874484ef98c3510fd9f9d72aa071.jpg

温馨提示:答案为网友推荐,仅供参考