--- a/fourier/pgauss.m +++ b/fourier/pgauss.m @@ -8,65 +8,64 @@ % Input parameters: % L : Length of vector. % tfr : ratio between time and frequency support. +% % Output parameters: % g : The periodized Gaussian. % -% PGAUSS(L,tfr) computes samples of a periodized Gaussian. The function +% `pgauss(L,tfr)` computes samples of a periodized Gaussian. The function % returns a regular sampling of the periodization of the function -% exp(-pi*(x.^2/tfr)). +% $exp(-pi*(x.^2/tfr))$. % -% The returned function has norm == 1. +% The $l^2$ norm of the returned Gaussian is equal to 1. % -% The parameter tfr determines the ratio between the effective -% support of g and the effective support of the DFT of g. If tfr>1 then -% g has a wider support than the DFT of g. +% The parameter *tfr* determines the ratio between the effective support +% of *g* and the effective support of the DFT of *g*. If $tfr>1$ then *g* +% has a wider support than the DFT of *g*. % -% PGAUSS(L) does the same setting tfr=1. +% `pgauss(L)` does the same setting *tfr=1*. % -% Additional properties of the Gaussian can be specified as flags at -% the end of the line of input arguments. +% `[g,tfr] = pgauss( ... )` will additionally return the time-to-frequency +% support ratio. This is useful if you did not specify it (i.e. used the +% `'width'` or `'bw'` flag). % -% [g,tfr] = PGAUSS( ... ) will additionally return the time-to-frequency -% support ratio. This is useful if you did not specify it (i.e. used -% the 'width' or bandwidth flag). +% The function is whole-point even. This implies that `fft(pgauss(L,tfr))` +% is real for any *L* and *tfr*. The DFT of *g* is equal to +% `pgauss(L,1/tfr)`. % -% The function is whole-point even. This implies that FFT(PGAUSS(L,tfr)) -% is real for any L and tfr. The DFT of g is equal to PGAUSS(L,1/tfr). -% -% In addition to the 'width' flag, PGAUSS understands the following +% In addition to the `'width'` flag, `pgauss` understands the following % flags at the end of the list of input parameters: % -% 'fs',fs - Use a sampling rate of fs Hz as unit for specifying the -% width, bandwidth, center frequency and delay of the -% Gaussian. Default is fs=[] which indicates to measure -% everything in samples. +% 'fs',fs Use a sampling rate of *fs* Hz as unit for specifying the +% width, bandwidth, centre frequency and delay of the +% Gaussian. Default is *fs=[]* which indicates to measure +% everything in samples. % -% 'width',s - Set the width of the Gaussian such that it has an -% effective support of s samples. This means that -% approx. 96% of the energy or 79% of the area -% under the graph is contained within s samples. This -% corresponds to a -6 db cutoff. This is equivalent to -% calling PGAUSS(L,s^2/L); +% 'width',s Set the width of the Gaussian such that it has an +% effective support of *s* samples. This means that +% approx. 96% of the energy or 79% of the area +% under the graph is contained within *s* samples. This +% corresponds to a -6 db cutoff. This is equivalent to +% calling `pgauss(L,s^2/L)`. % -% 'bw',bw - As for the 'width' argument, but specifies the width -% in the frequency domain. The bandwidth is measured in -% normalized frequency, unless the 'fs' value is given. +% 'bw',bw As for the `'width'` argument, but specifies the width +% in the frequency domain. The bandwidth is measured in +% normalized frequencies, unless the `'fs'` value is given. % -% 'cf',cf - Set the center frequency of the Gaussian to fc. +% 'cf',cf Set the centre frequency of the Gaussian to *fc*. % -%- 'wp' - Output is whole point even. This is the default. +% 'wp' Output is whole point even. This is the default. % -%- 'hp' - Output is half point even, as most Matlab filter -% routines. +% 'hp' Output is half point even, as most Matlab filter +% routines. % -%- 'delay',d - Delay the output by d. Default is zero delay. +% 'delay',d Delay the output by *d*. Default is zero delay. % -% In addition to these parameteres, PGAUSS accepts any of the flags -% from NORMALIZE. The output will be normalized as specified. +% In addition to these parameteres, `pgauss` accepts any of the flags +% from |normalize|_. The output will be normalized as specified. % % If this function is used to generate a window for a Gabor frame, then % the window giving the smallest frame bound ratio is generated by -% PGAUSS(L,a*M/L); +% `pgauss(L,a*M/L)`. % % See also: longpar, psech, firwin, pbspline, normalize % @@ -148,4 +147,3 @@ g=normalize(g,flags.norm); -%OLDFORMAT