repfreq ======= frequency response Calling Sequence ~~~~~~~~~~~~~~~~ :: [ [frq,] repf]=repfreq(sys,fmin,fmax [,step]) [ [frq,] repf]=repfreq(sys [,frq]) [ frq,repf,splitf]=repfreq(sys,fmin,fmax [,step]) [ frq,repf,splitf]=repfreq(sys [,frq]) Arguments ~~~~~~~~~ :sys `syslin` list : SIMO linear system : :fmin,fmax two real numbers (lower and upper frequency bounds) : :frq real vector of frequencies (Hz) : :step logarithmic discretization step : :splitf vector of indexes of critical frequencies. : :repf vector of the complex frequency response : Description ~~~~~~~~~~~ `repfreq` returns the frequency response calculation of a linear system. If `sys(s)` is the transfer function of `Sys`, `repf(k)` equals `sys(s)` evaluated at `s= %i*frq(k)*2*%pi` for continuous time systems and at `exp(2*%i*%pi*dt*frq(k))` for discrete time systems ( `dt` is the sampling period). `db(k)` is the magnitude of `repf(k)` expressed in dB i.e. `db(k)=20*log10(abs(repf(k)))` and `phi(k)` is the phase of `repf(k)` expressed in degrees. If `fmin,fmax,step` are input parameters, the response is calculated for the vector of frequencies `frq` given by: `frq=[10.^((log10(fmin)):step:(log10(fmax))) fmax];` If `step` is not given, the output parameter `frq` is calculated by `frq=calfrq(sys,fmin,fmax)`. Vector `frq` is split into regular parts with the `split` vector. `frq(splitf(k):splitf(k+1)-1)` has no critical frequency. `sys` has a pole in the range `[frq(splitf(k)),frq(splitf(k)+1)]` and no poles outside. Examples ~~~~~~~~ :: A=`diag`_([-1,-2]);B=[1;1];C=[1,1]; Sys=`syslin`_('c',A,B,C); frq=0:0.02:5;w=frq*2*%pi; //frq=frequencies in Hz ;w=frequencies in rad/sec; [frq1,rep] =repfreq(Sys,frq); [db,phi]=`dbphi`_(rep); Systf=`ss2tf`_(Sys) //Transfer function of Sys x=`horner`_(Systf,w(2)*`sqrt`_(-1)) // x is Systf(s) evaluated at s = i w(2) rep=20*`log`_(`abs`_(x))/`log`_(10) //magnitude of x in dB db(2) // same as rep ang=`atan`_(`imag`_(x),`real`_(x)); //in rad. ang=ang*180/%pi //in degrees phi(2) repf=repfreq(Sys,frq); repf(2)-x See Also ~~~~~~~~ + `bode`_ Bode plot + `freq`_ frequency response + `calfrq`_ frequency response discretization + `horner`_ polynomial/rational evaluation + `nyquist`_ nyquist plot + `dbphi`_ frequency response to phase and magnitude representation .. _freq: freq.html .. _bode: bode.html .. _nyquist: nyquist.html .. _horner: horner.html .. _calfrq: calfrq.html .. _dbphi: dbphi.html