Mercurial > hg > aimmat
view aim-mat/tools/@signal/genam.asv @ 4:537f939baef0 tip
various bug fixes and changed copyright message
author | Stefan Bleeck <bleeck@gmail.com> |
---|---|
date | Tue, 16 Aug 2011 14:37:17 +0100 |
parents | 74dedb26614d |
children |
line wrap: on
line source
% method of class @signal % function sig=genam(sig,fcar,fmod,modgrad) % % INPUT VALUES: % sig: original @signal with length and samplerate % fcar: carrier frequency (Hz) % fmod: modulation frequency (Hz) % modgrad: modulation depth in (0-1) % % RETURN VALUE: % sig: @signal % % (c) 2003, University of Cambridge, Medical Research Council % Stefan Bleeck (stefan@bleeck.de) % http://www.mrc-cbu.cam.ac.uk/cnbh/aimmanual % $Date: 2003/01/25 12:47:43 $ % $Revision: 1.4 $ function sig=genam(sig,fc,f_mod,modgrad,modphase,amplitude) if nargin<6 amplitude=1; end if nargin<6 modphase=0; end if nargin<6 modgrad=1; end sr=getsr(sig); len=getlength(sig); sin1=sinus(len,sr,fc,1,0); sin2=sinus(len,sr,f_mod,1,modphase); sig=amplitude(modgrad*sin1+1)*sin2; % f1=fc-f_mod; % f2=fc; % f3=fc+f_mod; % sin1=sinus(len,sr,f1,modgrad/2,0); % sin2=sinus(len,sr,f2,1,0); % sin3=sinus(len,sr,f3,modgrad/2,0); % sig=sin1; % sig=sig+sin2; % sig=sig+sin3; name=sprintf('AM: modulation: %3.1f Hz, carrier: %4.1f kHz, modgrad: %2.1f',f_mod,fc/1000,modgrad); sig=setname(sig,name); sig=scaletomaxvalue(sig,1); % sig=RampAmplitude(sig,0.01); % baue eine Rampe