When I write this code, the result is:
Angle(d) V(m/s) Height(m) Range(m)
10.00 9.90 0.15 11.71
20.00 9.90 0.58 13.15
30.00 9.90 1.25 14.01
40.00 9.90 2.07 14.03
50.00 9.90 2.93 13.02
60.00 9.90 3.75 10.94
70.00 9.90 4.42 7.91
80.00 9.90 4.85 4.15
90.00 9.90 5.00 0.00
I'd like the velocity (V(m/s)) to not be constant, but to appear the same way the angle variable appears.
Please let me know if there is anything wrong wiht my code.
%{
Possible height and range, assuming that angle of projection and vertical position are constant. %}
%g)
%Both initial velocity and and angles are independent variables
g = -9.8;xi = 0;yi = 5; vMAX = sqrt(-yi.*g*2);fprintf('Angle(d)\t V(m/s)\t height(m)\t Range(m)\n');for theta2=10:10:90 %Nested for loops to compute each individual value for the plot
for vi =linspace(0,vMAX,10); % Velocity components from the first problem
vix = vi.*cosd(theta2); viy = vi.*sind(theta2); %Total time from first problem
a = (1/2)*g; b = viy; c = yi; tFinal2 = roots([a, b, c]); tFinal2 = max(tFinal2); t = (linspace(0, tFinal2, 10))'; %Compute x and y values(copied from problem 1)
x2 = xi+vix.*t; y2 = yi+viy.*t+(1/2)*g.*t.^2; %Range of trajectory
R = Range2(xi,vix,tFinal2); %Max Height
yMAX = MaxHeight2(viy); end fprintf("%.2f \t\t %.2f\t\t %.2f\t\t %.2f\n",theta2,vi,yMAX,R) %Plot
subplot(3,2,4) plot(x2, y2,'LineWidth',1.5); hold on grid on; xlabel('X'); ylabel('Y'); title ('Projectile with varying angle & initial velocity (h)') axis equal; %Create boundaries in the first quadrant
y2(y2 < 0) = 0;end %{ yMAX functionfunction yMAX = MaxHeight2(viy) yMAX = (viy.^2)/(9.8*2); end %Range function
function R = Range2(xi,vix,tFinal) R = xi+vix*tFinal; end %}
Best Answer