ODE to answer projectile question
1 次查看(过去 30 天)
显示 更早的评论
Hello,
I am a student and very weak with matlab, I come accross this question about projectiles for matlab and I am having a really bad time solving it. Would appreciate if somebody could help my deadline is in a few days!

The S number is defined like this RandStream.setGlobalStream(RandStream('mt19937ar','seed',1403767)); S=rand(1);
0 个评论
回答(1 个)
Carlos Felipe Rengifo
2018-7-7
I hope this will help you:
clc;
clear variables;
close all;
% Parameters of the model
S = rand(1);
M = 10;
B = 2;
g = 9.81;
a = deg2rad(35)*(1+0.2*S);
V0 = 28*(1+0.2*S);
% Dynamic model
% XDot = f(t,X), with X = [Vx,Vy,X,Y]
F = @(t,X) [-B/M*X(1); -g-B/M*X(2); X(1); X(2)];
% Initial conditions
X0 = [V0*cos(a); V0*sin(a); 0; 0];
% Numerical solution
[T,X] = ode45(F,[0,4],X0);
% Plots
subplot(2,2,1); plot(T,X(:,1)); title('Vx vs. Time'); grid on;
ylabel('Vel. [m/s]'); xlabel('Time [s]');
subplot(2,2,2); plot(T,X(:,2)); title('Vy vs. Time'); grid on;
ylabel('Vel. [m/s]'); xlabel('Time [s]');
subplot(2,2,3); plot(T,X(:,3)); title('X vs. Time'); grid on;
ylabel('Pos. [m]'); xlabel('Time [s]');
subplot(2,2,4); plot(T,X(:,4)); title('Y vs. Time'); grid on;
ylabel('Pos. [m]'); xlabel('Time [s]');
2 个评论
Carlos Felipe Rengifo
2018-7-14
I apologize for any inconvenience caused by my answer. I will be more careful next time.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Ordinary Differential Equations 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!