I need help with plotting

3 Ansichten (letzte 30 Tage)
Mircea Prisada
Mircea Prisada am 25 Apr. 2022
Kommentiert: Mircea Prisada am 25 Apr. 2022
I can't get it to plot this. I don't know how to write this in matlab up=u1*(t>=0)*(y<=tpulssi)+u2*(t>=tpr*2)*(t<=tpr*2+tpulssi); I need it to plot it like this:
clear
close all
syms t
Zc=300;
R=100;
s=100;
v=300/(1*10^-6)
tpulssi=s/v
k=-1000/tpulssi
p=(R-Zc)/(R+Zc)
s2=25
tpr=s2/v
%heijastuva
t=0:0.001*10^-6:1*10^-6;
u1=k*t+abs(k)*tpulssi;
u2=p*k*t-abs(p*k*(2*tpr+tpulssi));
up=u1*(t>=0)*(y<=tpulssi)+u2*(t>=tpr*2)*(t<=tpr*2+tpulssi);
figure(1)
plot(t,up);
hold on
plot(t,u2)
hold on
plot(t,up)
hold off

Akzeptierte Antwort

Chunru
Chunru am 25 Apr. 2022
Bearbeitet: Chunru am 25 Apr. 2022
syms t
Zc=300;
R=100;
s=100;
v=300/(1*10^-6)
v = 300000000
tpulssi=s/v
tpulssi = 3.3333e-07
k=-1000/tpulssi
k = -3.0000e+09
p=(R-Zc)/(R+Zc)
p = -0.5000
s2=25
s2 = 25
tpr=s2/v
tpr = 8.3333e-08
%heijastuva
t=0:0.001*10^-6:1*10^-6;
u1=k*t+abs(k)*tpulssi;
u2=p*k*t-abs(p*k*(2*tpr+tpulssi));
% need the .* (or array operation)
up=u1.*(t>=0).*(t<=tpulssi)+u2.*(t>=tpr*2).*(t<=tpr*2+tpulssi);
figure(1)
plot(t,u1, 'DisplayName', 'u1')
hold on
plot(t,u2, 'DisplayName', 'u2')
hold on
plot(t,up, 'k', 'LineWidth', 2, 'DisplayName', 'up');
legend
grid on
hold off
  1 Kommentar
Mircea Prisada
Mircea Prisada am 25 Apr. 2022
Awesome answer, thanks for the help.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by