--- Saving session to:
    ECE481_04-Apr-2003.txt
--- startup.m processed OK ---
; ; ; ; ; ; 
fmbessel
fmbessel
Error in ==> c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fmbessel.m
On line 46  ==>    pause


fm1
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm1.m at line 32
done writing soundfile.
fm2
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm2.m at line 29
done writing soundfile.
fm3(440,0,0)
??? Error using ==> wavwrite
Sorry. No help in figuring out the problem . . .

Error in ==> c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m
On line 27  ==> wavwrite(y,fs,16,'\temp\junk.wav')

fm3(440,1,0)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,1,1)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
edit fm3
fschange('c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m');
clear fm3
fm3(440,1,1)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,1,2)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,1,3)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,1,5)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,2,5)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,1/2,5)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,1/3,5)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,1/5,5)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,1/9,5)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,1/20,5)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,1/sqrt(2),5)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,pi,5)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,1/pi,5)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,exp(1),5)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,1/exp(1),5)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
fm3(440,1/exp(2),5)
Warning: Data clipped during write to file:\temp\junk.wav
> In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (PCM_Quantize) at line 239
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m (write_wavedat) at line 257
  In C:\matlabR12\toolbox\matlab\audio\wavwrite.m at line 104
  In c:\documents and settings\doering\rhit\class\2002-03\spring\ece481\matlab\fm3.m at line 27
type fmbessel

% FM synthesis: Bessel functions


% Parameters
imax=25;	% maximum modulation index
sbmax=15; % maximum sideband number

% Modulation index
i=0:0.2:imax;

% Sideband number
sb= -sbmax:sbmax;

% Construct matrix of Bessel functions
y=zeros(size(sb,2),size(i,2));
for k=sb
   y(k+max(sb)+1,:)=besselj(abs(k),i);
end

% Plot Bessel functions all at once
figure(1)
mesh(i,sb,y)
xlabel('Modulation Index')
ylabel('Sideband Number')
rotate3d on

% Plot for a given sideband
figure(2)
for k=0:sbmax
   plot(i,y(k+sbmax+1,:))
   grid on
   axis([0 imax -1 1]);
   xlabel('Modulation Index')
   title(['J' num2str(k) '(I)'])
   pause
end

% Plot for a given modulation index
figure(3)
for k=0:imax-1
   plot(sb,y(:,k+1))
   grid on
   axis([-sbmax sbmax -1 1]);
   xlabel('Bandwidth')
   title(['Jn(' num2str(k) ')'])
   pause
end


type fm1

% FM synthesis

fs=20e3;
dur=15;
tt=0:1/fs:dur;

% parameters
fc = 1000;	%carrier frequency
fm = 500;	%modulating frequency
%fc=500;fm=300;
%fc=500;fm=100;
mi = 1;		%modulation index

% output waveform
%y = cos(2*pi*fc*tt + mi*cos(2*pi*fm*tt));
y = sin(2*pi*fc*tt + linspace(0,dur,length(tt)).*sin(2*pi*fm*tt)); %sweep modulation index
%fmi=0;
%fmf=1000;
%y = sin(2*pi*fc*tt + mi.*sin(2*pi*linspace(fmi,fmf,length(tt)).*tt)); %sweep modulating freq

if 0
[b,f,t]=specgram(y,[],fs);
imagesc(t,f/1000,abs(b))
axis('xy')
xlabel('time (s)')
ylabel('frequency (kHz)')
title(sprintf('FM: fc=%dHz, mi=%d, fm=%d to %dHz sweep',fc,mi,fmi,fmf))
end


% sound(y,fs) 
wavwrite(y,fs,16,'\temp\junk.wav')
disp('done writing soundfile.')


type fm2

% FM synthesis

fs=20e3;
dur=15;
tt=0:1/fs:dur;

% parameters
fc = 1000;	%carrier frequency
fm = 500;	%modulating frequency
mi = 1;		%modulation index

% output waveform
%y = cos(2*pi*fc*tt + mi*cos(2*pi*fm*tt));
%y = sin(2*pi*fc*tt + linspace(0,dur,length(tt)).*sin(2*pi*fm*tt)); %sweep modulation index
fmi=0;
fmf=1000;
y = sin(2*pi*fc*tt + mi.*sin(2*pi*linspace(fmi,fmf,length(tt)).*tt)); %sweep modulating freq

if 0
[b,f,t]=specgram(y,[],fs);
imagesc(t,f/1000,abs(b))
axis('xy')
xlabel('time (s)')
ylabel('frequency (kHz)')
title(sprintf('FM: fc=%dHz, mi=%d, fm=%d to %dHz sweep',fc,mi,fmi,fmf))
end

%sound(y,fs) 
wavwrite(y,fs,16,'\temp\junk.wav')
disp('done writing soundfile.')


type fm3

function fm3(fc,h,mi)
% FM synthesis demo #3

fs=20e3;
dur=1;
tt=0:1/fs:dur;

% parameters
%fc = 1000;	%carrier frequency
fm = h*fc;	%modulating frequency
%mi = 1;		%modulation index

% output waveform
y = sin(2*pi*fc*tt + mi*sin(2*pi*fm*tt));

if 1
[b,f,t]=specgram(y,[],fs);
imagesc(t,f/1000,abs(b))
axis('xy')
xlabel('time (s)')
ylabel('frequency (kHz)')
title(sprintf('FM: fc=%dHz, H=%d, I=%d',fc,h,mi))
end

sound(y,fs) 
y = y/max(abs(y));
wavwrite(y,fs,16,'\temp\junk.wav')


exit