How can I define the time steps of an x-y plot?
9 ビュー (過去 30 日間)
古いコメントを表示
Hi! I'm trying to make a script, which plots this equations.
my code so far:
clc;clear;
t=0 % Time
tend=0.40 % end time
dt=0.01; % Time step
f=200; % Frequency in Hz
vs=100; %Velocity in x in mm/s
A1=1.2; %Amplitude in y-direction
A2=0.6; %Amplitude in x-dirction
for t=0:dt:tend;
X=vs*t+A1*sin(2*pi*f*t);
Y=A2*sin(2*pi*f*t+pi/2);
plot (X, Y,'-b')
end
How can I define my time steps so that I get the same plot like like the one from the link? There is sth wrong with my time step.
Thnaks in advance
0 件のコメント
採用された回答
infinity
2019 年 7 月 6 日
Hello,
To get the same figure, you should refine the time step and then you should store value of X and Y with respect to t before you plot them. For example, some lines below will give the same figure
clc;
clear;
close all
tend=0.40; % end time
dt=0.0001; % Time step
f=200; % Frequency in Hz
vs=100; %Velocity in x in mm/s
A1=1.2; %Amplitude in y-direction
A2=0.6; %Amplitude in x-dirction
t = 0:dt:tend;
X=vs*t+A1*sin(2*pi*f*t);
Y=A2*sin(2*pi*f*t+pi/2);
plot(X,Y,'-b')
xlabel('x')
ylabel('y')
% for t=0:dt:tend
% X(i)=vs*t+A1*sin(2*pi*f*t);
% Y(i)=A2*sin(2*pi*f*t+pi/2);
% plot (X, Y,'-b')
% hold on
% end
0 件のコメント
その他の回答 (1 件)
Vladimir Palukov
2019 年 7 月 7 日
1 件のコメント
infinity
2019 年 7 月 7 日
Yes,
You can put the data X, Y inside the loop like this
clc;
clear;
close all
tend=0.40; % end time
dt=0.0005; % Time step
f=200; % Frequency in Hz
vs=100; %Velocity in x in mm/s
A1=1.2; %Amplitude in y-direction
A2=0.6; %Amplitude in x-dirction
t = 0:dt:tend;
X=vs*t+A1*sin(2*pi*f*t);
Y=A2*sin(2*pi*f*t+pi/2);
figure
for i = 1:1:length(t)-1
plot(X(1,i:i+1),Y(1,i:i+1),'-*b')
hold on
xlabel('x')
ylabel('y')
pause(1)
end
hold off
It will give you the movement of X, Y during the time.
参考
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!