Filter löschen
Filter löschen

I need to code a signal.

1 Ansicht (letzte 30 Tage)
Pranava J K
Pranava J K am 30 Sep. 2018
Kommentiert: Walter Roberson am 21 Jun. 2021
There is a signal which I need to code.
how do I code it so that I can do operations such as shifting its time or scaling it etc.?
x(t) = t for 0<=t<=1
0 for other values of t.
I tried this but it does not work.
function y=x(time,timeshift)
t_length=length(time);
if(time(index)>=-timeshift)
if(time>0)&&(time<=1)
y(index)=time;
else
y(index)=0;
end
end
end
Please help.

Antworten (2)

Walter Roberson
Walter Roberson am 30 Sep. 2018
syms t
scale_signal = @(signal, scale_factor) signal * scale_factor;
shift_time = @(signal, time_shift) symfun( signal(t-time_shift), t );
x(t) = piecewise(0 <= t & t <= 1, t, 0);
result(t) = scale_signal( shift_time( x, 0.75 ), 13 )
fplot(result,[-2 2])
  4 Kommentare
Pranava J K
Pranava J K am 30 Sep. 2018
How do I reverse the time of the signal, i.e. a mirror image along the y-axis
Walter Roberson
Walter Roberson am 30 Sep. 2018
reverse_time = @(signal) symfun( signal(-t), t );
result(t) = scale_signal( shift_time( reverse_time(x), 0.75 ), 13 )
fplot(result,[-2 2])

Melden Sie sich an, um zu kommentieren.


Niyamul Islam Sajal
Niyamul Islam Sajal am 21 Jun. 2021
function y=x(time,timeshift)
t_length=length(time);
if(time(index)>=-timeshift)
if(time>0)&&(time<=1)
y(index)=time;
else
y(index)=0;
end
end
end
  1 Kommentar
Walter Roberson
Walter Roberson am 21 Jun. 2021
index is not defined in the function.
What value is assigned to y(index) in the case that time(index) < -timeshift ?

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by