pfid

PURPOSE ^

PFID Parametrized time-domain identification of FOTF SISO systems

SYNOPSIS ^

function [idp, G] = pfid(iddata, expr, params, mparams, op)

DESCRIPTION ^

PFID Parametrized time-domain identification of FOTF SISO systems
   
Usage: [IDPARAMS,G] = PFID(FIDATA,EXPR|FSIM,PARAMS,MPARAMS,OP)

 Where IDPARAMS is a structure with identified parameters,
       G  is a FOTF object holding the identified model,

       FIDATA is a FIDATA object with time-domain identification dataset,
       EXPR is a symbolic expression with the FOTF model structure, e.g.

         EXPR = 'p_1/(1+T*s^{q_1}) exp(-p_2*s)'; % Defines a FFOPDT model
                                                 % with T (time constant)
                                                 % known in advance
       OR FSIM is a simulation object of type FSPARAM with a valid
               .fotf_expr parameter which must be formatted exactly as
               EXPR in the above example.

       PARAMS (optional) is a structure holding the model parameter
       min/initial/max values, i.e.
       params.p_1 = p_1_ini or
       params.p_1 = [p_1_min, p_1_max] or
       params.p_1 = [p_1_min, p_1_ini, p_1_max]. This is an optional
       argument. Set parameters in the following format: "pk", "p_k",
       "qk", "q_k", where k is some integer number. The difference between
       "p" and "q" parameters is that if min/max values are not provided
       for "q", the default search range will be [0, +LN], while in case
       of "p" it will be [-LN, +LN], where LN is a large number.
       Therefore, it is suggested to use "q" parameters for fractional
       powers. Supply "[]" as an argument to use default values
       (min/ini/max generated automatically). Default values will also be
       used in case some of the parameter min/ini/max values are missing
       from the structure supplied.
       OP holds additional optimization options for lsqnonlin (use
       optimset). Note, that you can set the preferred optimization
       algorithm here. This is done as follows:
            OP.IdentificationAlgorithm = 'trr':
            Trust-Region-Reflective algorithm is used;
            OP.IdentificationAlgorithm = 'lm':
            Levenberg-Marquardt algorithm is used, for the latter
            OP.Lambda determines the lambda parameter, 0.01 by
            default. A coordinate transformation method is used to handle
            bound constraints in case of this algorithm.

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:
Generated on Thu 27-Aug-2015 23:54:49 by m2html © 2005