我想在Matlab中编写一个脚本文件,它将绘制以特定角度(a),速度(v)和从初始高度(y0)抛出的球的轨迹。我有公式,并希望Matlab绘制飞行中的球的路径。但是,我希望它只能绘制它直到碰到地面(y = 0)。无限循环在Matlab中
要做到这一点,我用了一个while循环,但它似乎永远不会满足条件,只是永远运行。我确信这个条件可以在经过多次迭代之后得到满足,但它只会持续几分钟,怎么了?
代码如下。
% Trajectory Plotter with cutoff
clear all
close all
clc
y0 = input('Enter a value for y0 in meters: ');
if y0 < 0
disp('Please enter a positive value for y0')
end
a = input('Enter a value for theta in degrees: ');
g = 9.81;
v = input('Enter a value for initial velocity in m/s: ');
x = 0;
y = y0 + x*tand(a) - (g*x.^2)/(2*(v*cosd(a))^2)
while y >= 0
x = x+0.2
end
plot(x,y);
道歉,如果这是一个微不足道的问题,我是新来的Matlab /编程。
谢谢。
在你的while循环中,你只能改变x,你需要对y做些什么。 – 2013-04-21 15:38:04