Revision as of 09:32, 1 September 2008 by Park1 (Talk)

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

Sound File

M-File

% Jun Hyeong Park % ECE 301 HW #1_ Playing music

for a=0:18

   f(a+1)=220*2^(a/12);

end A=f(1);  % la Bb=f(2);  % ti flat B=f(3);  % ti C=f(4);  % do Db=f(5);  % re flat D=f(6);  % re Eb=f(7);  % mi flat E=f(8);  % mi F=f(9);  % fa Gb=f(10);  % so flat G=f(11);  % so A2b=f(12); % upper la flat A2=f(13);  % upper la B2b=f(14); % upper ti falt B2=f(15);  % upper ti C2=f(16);  % upper do D2b=f(17); % upper re flat D2=f(18);  % upper re E2b=f(19); % upper mi flat M=0;  % Mute % when I saw a music score of Hail Purdue, bpm was 140. 140bpm means % 140 quarter notes per a minute. It means that 1 quarter note per 0.43 seconds. P=0.43;  % 1 quarter note TP=P*2;  % 2 - quarter FP=P*4;  % 1 THP=P*3;  % 3 - quarter QP=P*1.5; % 3 - 8 H=P/2;  % half time

notes=[Eb,F,G,A2b,G,A2b,G,A2b,G,A2b,B2b,A2b,Eb,F,G,M, ...

      G,A2b,A2,B2b,A2,B2b,A2,B2b,A2,B2b,C2,B2b,Eb,D2b,C2,M, ...
      Eb,F,G,A2b,G,A2b,G,A2b,G,A2b,E2b,C2,B2b,A2b,D2b,A2b,A2b ...
      B2b,B2b,B2,B2,C2,D2b,E2b,C2,B2b,A2b,C2,B2b, ...
      B2b, ...
      Eb,F,G,A2b,B2b,C2,C2,D2b,D2b,D2b,A2b,B2b,B2,C2, ...
      C2,C2,B2b,A2b,B2b,C2,C2,B2b,F,G,A2b,G,F,B2b, ...
      Eb,Eb,F,G,A2b,B2b,C2,C2,C2, ...
      D2b,D2b,A2b,B2b,C2,M,F,G, ...
      A2b,F,Eb,A2b,C2,Eb,C2,B2b,A2b,A2b];
  

duration=[P,P,P,P,P,P,H,H,H,H,P,P,P,P,THP,P, ...

         P,P,P,P,P,P,H,H,H,H,P,P,P,P,THP,P, ...
         P,P,P,P,P,P,H,H,H,H,P,P,P,P,THP,H,H ...
         QP,H,QP,H,QP,H,H,H,H,H,TP,TP, ...
         FP, ...
         TP,P,P,QP,H,P,P,P,H,H,P,H,H,FP, ...
         TP,P,P,QP,H,P,P,P,H,H,P,H,H,FP, ...
         QP,H,P,P,QP,H,P,H,H, ...
         P,P,P,P,THP,P,QP,H, ...
         P,P,P,P,TP,QP,H,QP,H,THP];

delta = 0.00005; % Question #1.a for n= 1:117  % number of notes = 117

   t=0:delta:duration(n);   % normal speed
   x=sin(2*pi*t*notes(n));  % sine wave
   sound(x,1/delta);        % play a song

end

pause(1) % Question #1.b

for n= 1:117

   t=0:delta:duration(n)*0.5; % becomes faster twice. 
   x=sin(2*pi*t*notes(n));    % sine wave
   sound(x,1/delta);          % I can hear a song that is played at double speed.

end

pause(1) % Question #1.c for n= 1:117

   t=0:delta:duration(n);     % normal speed
   y=sin(2*pi*2*t*notes(n));  % rescale y(t) = x(2t) 
   sound(y,1/delta);          % The frequencies become twice 
                              % It means an octave is raised. 

end

Alumni Liaison

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

Dr. Paul Garrett