Frequency Domain Identification Toolbox
  Go to function:
    Search    Help Desk 
fdcovpzp    Examples   See Also

Calculate transfer function model and its covariance matrix from pole-zero model, including the standard deviations and covariances of poles and zeros and gain values.

Syntax

Description

It may be desirable to simulate or examine systems of which a pole-zero model is available. fdcovpzp converts such a model into the transfer function model required by this toolbox. It is the "inverse" of stdpz.

The output argument pvect is the parameter vector of the system (see exppar) and Cp is the corresponding covariance matrix.

zv and pv are the column vectors of the zeros and poles, respectively.

stdz and stdp contain the corresponding uncertainties. In each row there are three elements: the standard deviation of the real part, the standard deviation of the imaginary part, and the correlation coefficient between the real part and the imaginary part of the corresponding zero or pole.

For a full description of the interrelations of different poles and zeros, a full correlation coefficient matrix of the real and imaginary parts of all zeros and poles and two gain factors can be given in rzp. The order of the random variables in the corresponding random vector is: real part of the first zero, imaginary part of the first zero, real part of the second zero, etc., then the real part of the first pole, etc. The last two variables are the leading coefficients of the numerator and the denominator, respectively.

g contains two gain factors: the leading coefficients of the numerator and the denominator, respectively. If g is given as a scalar, g(2) is set to 1. The standard deviations of the gain values and their correlation coefficient are to be given in stdg.

By default, an s-domain model is assumed. For z-domain models, the domain (domain = 'z') and the sampling frequency (fs) can be given.

fdcovpzp allows the use of analytical or numerical differentiation in the calculation of the sensitivity matrix. By numerical differentiation it can be checked whether variations of the poles and zeros, made in the order of magnitude of the standard deviations (in the directions of the eigenvalues of the appropriate covariance matrix), cause the same changes in the transfer function parameters, as calculated from the analytical sensitivity calculations. Numerical differentiation can be requested by setting da to the value 'num'. The amount of perturbations can be influenced by the variable dzp. By default, its value is 1, which means perturbations equal the eigenvalues of the covariance matrix of the zeros or poles, in the directions of the eigenvectors. These step lengths are multiplied by the value of dzp.

Default Argument Values

Examples

Diagnostics

The validity of the given correlation coefficients are checked, and an error message is sent if they are not consistent.

Algorithm

In analytical calculations first the sensitivity matrix of zeros and poles on the coefficients of the corresponding polynomials is calculated using

where r(i) is the ith root of the polynomial f(r(i)). The sensitivity of zeros and poles is then calculated as the pseudo inverse of this matrix. The covariance matrix of the parameters is calculated multiplying the covariance matrix of the real and imaginary parts of the poles/zeros and the gains by the sensitivity matrix from both sides.

For numerical derivation, perturbations of the zeros and poles are introduced in the direction of each eigenvector of the corresponding covariance matrix, with step sizes equal to the corresponding eigenvalue, multiplied by dzp. The so determined sensitivities are then used in the covariance calculations.

See Also

References

[1] P. Guillaume, J. Schoukens and R. Pintelon, "Sensitivity of roots to errors in the coefficients of polynomials obtained by frequency-domain estimation methods," IEEE Trans. on Instrumentation and Measurement, Vol. 38, No. 6, pp. 1050-1056, Dec. 1989.



[ Previous | Help Desk | Next ]