generating/plotting aperiodic functions

2 views (last 30 days)
Sarah
Sarah on 10 Nov 2011
Hey guyssss,
Can someone explain to me how I can define an aperiodic square function in MATLAB? This is the code I have for time:
TimeStep = 0.0001*2*pi; %time increment
Time.Start = 0; %time interval starting time
Time.End = 10*2*pi; %time interval ending time
Time = Time.Start:TimeStep:Time.End;
I want to be able to change the width and amplitude of the function. Any help would be greatly appreciated :)

Answers (1)

Fangjun Jiang
Fangjun Jiang on 11 Nov 2011
f below will be your function.
f=@(t,StartTime,EndTime,Amplitude) Amplitude*and(StartTime<t,t<EndTime);
To test it out:
t=-1:0.1:5;
y=f(t,0.3,3.6,1.3);
plot(t,y);grid on;
  6 Comments
Sarah
Sarah on 11 Nov 2011
It can be anywhere within the duration of the sinusoidal signal. I can change those parameters later, i just want the square to occur within the time duration of the signal.
Fangjun Jiang
Fangjun Jiang on 11 Nov 2011
In the f() defined in my code, the StartTime and EndTime refer to the start/end time of the square. You can put the start/end time of your signal in the time vector.
t=(0:0.0001:10)*2*pi;
y=f(t,30,50,1.3);

Sign in to comment.

Categories

Find more on Performance and Memory in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!