Een projectiel wordt afgeschoten met een begin snelheid v0 (in m/s) onder verschillende hoeken (in graden). Deze hoeken worden aangeleverd in de vorm van een vector. U kunt gebruik maken van de volgende formules voor het uitrekenen van de kogelbaan (zonder luchtweerstand). hierbij mag u de versnelling van de zwaartekracht g = 10 m/s2 stellen.
Gevraagd
Maak een M-script programma waarin u de baan van het projectiel uitrekent. Probeer dit te doen door gebruik te maken van matrices waarbij u een vector maakt voor de maximale hoek en een array voor afstand, hoogte en hoek (X, Y en HOEK waarbij elke rij overeenkomt met een bepaalde hoek). Handig hierbij zijn de commando’s linspace en meshgrid.
Presenteer de uitvoer van uw M-script programma op twee manieren:
- in een 2D-figuur (y versus x) met bijbehorende legende;
- in een staafdiagram waarbij de maximale afstand als een functie van de hoek wordt afgebeeld.
zoals:
___________________________
Dit gezegd hebbende, hoever ben ik?
Code: Selecteer alles
clc
V=1000;
G=10;
alpha_graden=[5:10:85];
aantal_stappen=101;
alpha_rad=alpha_graden*(pi/180);
Xmax=V^2*sin(2*(alpha_graden))/G;
%Bepaal onder welke hoek de kogel het verst komt en de afstand die afgelegd
%wordt. Noem deze: grootste_afstand
grootste_afstand=(V^2)*(sin(2*(45*(pi/180))))/G;
x=linspace(0, grootste_afstand, aantal_stappen);
for i=1;length(alpha_rad);
for j=1;aantal_stappen;
y(i,j)=G/(2*V^2*(cos(alpha_rad(i)))^2)*x(j)^2+tan(alpha_rad(i));
end
end
for i=1;length(alpha_rad);
for j=1;aantal_stappen;
if y(i,j)<0;
y(i,j)=0;
end
end
end
figure(1); % maak een figuur en geef dit nummer 1
plot(x,y); % teken de lijnen
% Geef uitleg over de figuur en langs de assen
title('Kogelbaan') % zet titel boven de figuur
xlabel('afstand [km]') % zet tekst langs de x-as
ylabel('hoogte [km]') % zet tekst langs de y-as
Als ik dit plot krijg ik onderstaande grafiek:
wat doe ik fout? : ) er wordt wel van ons geacht dat we for-loops gebruiken, ik denk dat daarin iets niet goed gaat.