• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1875
  • Last Modified:

matlab- generate a periodic and aperiodic waveforms

How can I use matlab to generate a "periodic" and "aperiodic" waveform?

the "periodic" and "aperiodic" waveform can be any giving or use matlab to create them. After have those 2 waveforms, use matlab to plot it.
0
hsuyf
Asked:
hsuyf
1 Solution
 
RNMcLeanCommented:
  Huh? Where's the problem?
   In two dimensions, try the following, which I have just happened to have available:

[X,Y] = meshgrid(0:.1:5,-1:.1:4);    <-prepares a sortof collection of (x,y) points.

z = X.^2 - 4.*X + Y.^2 - Y - X.*Y;  <-Calculates some function at every such point, saving in z

surfc(X,Y,z);view([1,1,1]);              <-Plots a surface, z = f(x,y)

   What do you mean by periodic and aperiodic? A function f(x) = x**2 which is not periodic can be made into a periodic function by repeating its x-parameter, that is, say
   F(x) = f(x) for 0 <= x < 1,
          = f(x - 1) for 1 <= x < 2,
          = f(x - 3) for 2 <= x < 3, etc.
   It is considered polite to avoid discontinuities at the chop points, but no matter.
   Conversely, a periodic function, such as sine(x) can be made aperiodic by computing sine(exp(x))
   Endless, endless possibilities.
0
 
gordonkennedyCommented:
I'm not sure whether by periodic you mean periodic sampling, or periodic signal shape.  So this response covers both possibilities.

You should aim to get your waveforms into two Matlab arrays (called say "waveformPeriodic" and "waveformAperiodic") which each have 2 columns, but do not necessarily have the same number of rows.  The first column of each array will hold the sample times.

The following code will generate some example arrays :
   >> t1 = [1:100]';
   >> waveformPeriodic = [t1,sin(t1/10)];
   >> waveformAperiodic = [sort(rand(100,1)*100),rand(100,1)];

Now for the plotting :
   >> figure
   >> plot(waveformPeriodic(:,1),waveformPeriodic(:,2),'.-',waveformAperiodic(:,1),waveformAperiodic(:,2),'.-');
   >> zoom on;

Type ">>help plot" for more information on Matlab's plot command.  Note that I have set the linestyles to '.-' so that you can see the individual sample points.

Good luck.
0
 
hsuyfAuthor Commented:
Thank you for your hlep. After I have this waveform, I have couple additional questions which regard to my project. I will post it later today. could you please help me more about this matlab. I have never touch matlab, but i really need slove asap. Thanks again
0

Featured Post

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now