怎么用Matlab画隐函数的极坐标图像 5
1个回答
展开全部
方法一,用solve函数把隐函数显化,然后画图。方法二,利用极坐标与直角坐标的关系,把极坐标隐函数变为直角坐标隐函数,利用ezplot直接画直角坐标隐函数。
方法一提供案例如下:
clc;clear;
syms r t%r为距离坐标 t为角度坐标
f(r,t)=r-2*cos(t)-3/r==0;%定义一个对r、t的隐函数,f=0时其实这是一个圆
r_sln=solve(f,r)%由于是二次的 会有2个解
ezpolar(r_sln(1));
figure;
ezpolar(r_sln(2));
画出的图一模一样,证明2个解等价。下面是其中的一个图
方法二。经过测试,这里有一个大坑,本人一度被坑。角度t写成 atan(y/x) 和 atan(y,x) 差距巨大,写成前者会出现完全画不出图的情况。
代码示例(在之前示例后面加上):
syms x y;
f1(x,y)=f((x^2+y^2)^0.5,atan2(y,x));
figure
ezplot(f1);
由于之前答的高质量,所以没有用你的例子,现在被打回了,倒是无所谓了。
不过。。楼主的例子有点问题啊,貌似。用方法一得出了那么个东西:
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询