如何优化这个简单的matlab代码?

时间:2015-02-19 01:08:17

标签: matlab

对于这个模糊的标题感到抱歉,之前这可能是一个被问到的问题,不幸的是我不知道如何解释我想要做什么。我试图改变这个matlab代码

theta = linspace(0,2*pi,1000);
x = zeros(1000);
y = zeros(1000);
u = 1;
for i = linspace(0,2*pi,1000)
    x(u) = (1 + cos(i))*cos(i);
    y(u) = (1 + cos(i))*sin(i);
    u = u + 1;
end
plot(x,y)

这样的事情:

theta = linspace(0,2*pi,1000);
x = (1 + cos(theta))*cos(theta);
y = (1 + cos(theta))*sin(theta);
end
plot(x,y)

但由于我使用矩阵theta两次,因此我不了解如何做到这一点。我以前看过这样写的代码,但我不记得我做错了什么,有人能指出我正确的方向吗?

1 个答案:

答案 0 :(得分:0)

大卫是正确的; 。*再次罢工。这段代码可以使用:

theta = linspace(0,2*pi,1000);
x = (1 + cos(theta)).*cos(theta);
y = (1 + cos(theta)).*sin(theta);
plot(x,y)