Revision as of 08:51, 22 January 2011 by Ahmadi (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Homework 1 Solution

    1. Below is a Matlab code that plays the melody of the song "Smoke on the Water" by Deep Purple at original tempo:

      % Defining sampling period and duration of a quarter note
      T=0.00001;
      BPM=112;
      dur=1/(BPM/60);

      % Defining note durations
      haft=0:T:dur*2;
      dotted_quart=0:T:dur*1.5;
      quart=0:T:dur;
      eighth=0:T:dur/2;

      % Defining notes of the melody
      g=sin(2*pi*392*quart);
      b_flat=sin(2*pi*466.16*quart);
      c_dq=sin(2*pi*523.25*dotted_quart);
      c_h=sin(2*pi*523.25*haft);
      d_flat=sin(2*pi*554.37*eighth);

      % Creating, playing, and saving melody into a wave file
      tune=[g b_flat c_dq g b_flat d_flat c_h g b_flat c_dq b_flat g];
      sound(tune,1/T)
      wavwrite(tune,1/T,8,'1_a.wav')

    2. Below is a Matlab code that plays the melody of the song "Smoke on the Water" by Deep Purple at twice original tempo:

      % Defining sampling period and duration of a quarter note
      % The tempo of the song is increased by a factor of 2 by modifying the variable BMP accordingly
      T=0.00001;
      BPM=2*112;
      dur=1/(BPM/60);

      % Defining note durations
      haft=0:T:dur*2;
      dotted_quart=0:T:dur*1.5;
      quart=0:T:dur;
      eighth=0:T:dur/2;

      % Defining notes of the melody
      g=sin(2*pi*392*quart);
      b_flat=sin(2*pi*466.16*quart);
      c_dq=sin(2*pi*523.25*dotted_quart);
      c_h=sin(2*pi*523.25*haft);
      d_flat=sin(2*pi*554.37*eighth);

      % Creating, playing, and saving melody into a wave file
      tune=[g b_flat c_dq g b_flat d_flat c_h g b_flat c_dq b_flat g];
      sound(tune,1/T)
      wavwrite(tune,1/T,8,'1_b.wav')

    3. Below is a Matlab code that plays the melody of the song "Smoke on the Water" by Deep Purple at after applying the transformation $ y(t)=x(2t) $:

      % Defining sampling period and duration of a quarter note
      T=0.00001;
      BPM=112;
      dur=1/(BPM/60);

      % Defining note durations
      haft=0:T:dur*2;
      dotted_quart=0:T:dur*1.5;
      quart=0:T:dur;
      eighth=0:T:dur/2;

      % Defining notes of the melody
      % y(t)=x(2t) transformation is applied by multiplying the value inside the sine waves by a factor of 2
      g=sin(2*pi*2**392*quart);
      b_flat=sin(2*pi*2*466.16*quart);
      c_dq=sin(2*pi*2*523.25*dotted_quart);
      c_h=sin(2*pi*2*523.25*haft);
      d_flat=sin(2*pi*2*554.37*eighth);

      % Creating, playing, and saving melody into a wave file
      tune=[g b_flat c_dq g b_flat d_flat c_h g b_flat c_dq b_flat g];
      sound(tune,1/T)
      wavwrite(tune,1/T,8,'1_c.wav')

Alumni Liaison

Basic linear algebra uncovers and clarifies very important geometry and algebra.

Dr. Paul Garrett