Mercurial > hg > ltpda
view m-toolbox/html_help/help/ug/ng2D_content.html @ 0:f0afece42f48
Import.
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Wed, 23 Nov 2011 19:22:13 +0100 |
parents | |
children |
line wrap: on
line source
<p> <ul> <li><a href="#description">Description</a></li> <li><a href="#call">Call</a></li> <li><a href="#inputs">Inputs</a></li> <li><a href="#outputs">Outputs</a></li> <li><a href="#algorithm">Algorithm</a></li> <li><a href="#parameters">Parameters</a></li> </ul> </p> <h2><a name="description">Description</a></h2> <p> noisegen2D generates colored noise from withe noise with a given cross spectrum. The coloring filter is constructed by a fitting procedure to the models provided. If no model is provided an error is prompted. The cross-spectral matrix is assumed to be frequency by frequency of the type: </p> <div class="fragment"><pre> / csd11(f) csd12(f) \ CSD(f) = | | \ csd21(f) csd22(f) / </pre></div> <p> Note: The function output colored noise data with one-sided cross spectral density corresponding to the model provided. </p> <h2><a name="call">Call</a></h2> <div class="fragment"> <pre> b = noisegen2D(a, pl) [b1,b2] = noisegen2D(a1, a2, pl) [b1,b2,...,bn] = noisegen2D(a1,a2,...,an, pl); </pre> </div> <p> <ul> <li> Note1: input AOs must come in couples. <li> Note2: this method cannot be used as a modifier, the call <tt> a.noisegen2D(pl) </tt> is forbidden. </ul> </p> <h2><a name="inputs">Inputs</a></h2> <p> <ul> <li> a is at least a couple of time series analysis objects <li> pl is a parameter list, see the list of accepted parameters below </ul> </p> <h2><a name="outputs">Outputs</a></h2> <p> <ul> <li> b are a couple of colored time-series AOs. The coloring filters used are stored in the objects procinfo field under the parameters: <ul> <li> b(1): 'Filt11' and 'Filt12' <li> b(2): 'Filt21' and 'Filt22' </ul> </ul> </p> <h2><a name="algorithm">Algorithm</a></h2> <p> <ol> <li> Fit a set of partial fraction z-domain filters using utils.math.psd2tf <li> Convert to bank of mIIR filters <li> Filter time-series in parallel The filtering process is: <br/> b(1) = Filt11(a(1)) + Filt12(a(2)) <br/> b(2) = Filt21(a(1)) + Filt22(a(2)) </ol> </p> <h2><a name="parameters">Parameters</a></h2> <p> <ul> <li> 'csd11' - a frequency-series AO describing the model csd11 <li> 'csd12' - a frequency-series AO describing the model csd12 <li> 'csd21' - a frequency-series AO describing the model csd21 <li> 'csd22' - a frequency-series AO describing the model csd22 <li> 'MaxIter' - Maximum number of iterations in fit routine [default: 30] <li> 'PoleType' - Choose the pole type for fitting: <ul> <li> 1 - use real starting poles. <li> 2 - generates complex conjugate poles of the type a.*exp(theta*pi*j) with theta = linspace(0,pi,N/2+1). <li> 3 - generates complex conjugate poles of the type a.*exp(theta*pi*j) with theta = linspace(0,pi,N/2+2) [default]. </ul> </li> <li> 'MinOrder' - Minimum order to fit with. [default: 2]. <li> 'MaxOrder' - Maximum order to fit with. [default: 25] <li> 'Weights' - choose weighting for the fit: [default: 2] <ul> <li> 1 - equal weights for each point. <li> 2 - weight with 1/abs(model). <li> 3 - weight with 1/abs(model).^2. <li> 4 - weight with inverse of the square mean spread of the model. </ul> </li> <li> 'Plot' - plot results of each fitting step. [default: false] <li> 'Disp' - Display the progress of the fitting iteration. [default: false] <li> 'FitTolerance' - Log Residuals difference check if the minimum of the logarithmic difference between data and residuals is larger than a specified value. ie. if the conditioning value is 2, the function ensures that the difference between data and residuals is at lest 2 order of magnitude lower than data itsleves. [default: 2]. <li> 'RMSEVar' - Root Mean Squared Error Variation - Check if the variation of the RMS error is smaller than 10^(-b), where b is the value given to the variable. This option is useful for finding the minimum of Chi squared. [default: 7]. <li> 'UseSym' - Use symbolic calculation in eigendecomposition. [default: 0] <ul> <li> 0 - perform double-precision calculation in the eigendecomposition procedure to identify 2dim systems and for poles stabilization <li> 1 - uses symbolic math toolbox variable precision arithmetic in the eigendecomposition for 2dim system identification and double-precison for poles stabilization <li> 2 - uses symbolic math toolbox variable precision arithmetic in the eigendecomposition for 2dim system identification and for poles stabilization </ul> </li> </ul> </p>