Products & Services Solutions Academia Support User Community Company


wcnorm

Purpose

Worst-case norm of uncertain matrix

Syntax

Description

The norm of an uncertain matrix generally depends on the values of its uncertain elements. Determining the maximum norm over all allowable values of the uncertain elements is referred to as a worst-case norm analysis. The maximum norm is called the worst-case norm.

As with other uncertain-system analysis tools, only bounds on the worst-case norm are computed. The exact value of the worst-case norm is guaranteed to lie between these upper and lower bounds.

Basic syntax

Suppose mat is a umat or a uss with M uncertain elements. The results of

maxnorm is a structure with the following fields

Field
Description
LowerBound
Lower bound on worst-case norm, positive scalar.
UpperBound
Upper bound on worst-case norm, positive scalar.

maxnormunc is a structure that includes values of uncertain elements and maximizes the matrix norm. There are M fieldnames, which are the names of uncertain elements of mat. The value of each field is the corresponding value of the uncertain element, such that when jointly combined, lead to the norm value in maxnorm.LowerBound. The following command shows the norm:

Basic syntax with third output argument

A third output argument provides information about sensitivities of the worst-case norm to the uncertain elements ranges.

The third output argument info is a structure with the following fields:

Field
Description
Sensitivity
A struct with M fields. Fieldnames are names of uncertain elements of sys. Field values are positive numbers, each entry indicating the local sensitivity of the worst-case norm in maxnorm.LowerBound to all of the individual uncertain elements uncertainty ranges. For instance, a value of 25 indicates that if the uncertainty range is increased by 8%, then the worst-case norm should increase by about 2%. If the Sensitivity property of the wcgopt object is 'off', the values are NaN.
ArrayIndex
1-by-1 scalar matrix with the value of 1. In more complicated situations (described later) the value of this field depends on the input data.

Advanced options: Handling array dimensions

If mat has array dimensions, the default behavior is to maximize over all dimensions. It is also possible to perform the computation pointwise-in-the-array-dimensions to determine the worst-case norm at each grid point. Any combination of "peak-over" and "pointwise-over" is allowed.

To specify the desired computation, the wcgopt must be used. For concreteness, suppose that mat is an rxcx7x5x8 uncertain system (i.e., a 7-by-5-by-8 array of uncertain r output, c input systems). To perform the worst-case gain calculation pointwise over the second and third array dimensions (the slots with 5 points and 8 points, respectively), set the ArrayDimPtWise property:

In this case, the worst-case norm calculation is performed "pointwise" on the 5-by-8 grid. Only the "peak value" in the first array dimension (the slot with 7 points) is tracked. For that reason, many of the results will be of dimension 1-by-5-by-8.

In general, suppose that the array dimensions of sys are d1x...xdF (7x5x8 in the above example). Furthermore, assume that the ArrayDimPtWise property of the wcgopt object has been set to some of the integers between 1 and F. Let e1,e2,...,eF denote the dimensions of the array on which the results are computed. By definition, if j is an integer listed in ArrayDimPtWise, then ej=dj (all grid points in slot j are computed), otherwise ej=1 (only the maximum in slot j is computed). In the above example, with ArrayDimPtWise set to [2 3], it follows that e1=1, e2=5, e3=8.

In this case, the following command

produces the maxgain a structure with the following fields

Field
Description
LowerBound
e1x...xeF matrix of lower bounds on worst-case norm, computed pointwise over all array dimensions listed in ArrayDimPtWise property and "peaked" over all others.
UpperBound
Upper bound, analogous to LowerBound

maxgainunc is a e1x...xeF struct, containing values of uncertain elements which maximize the system norm. There are M fieldnames, which are the names of uncertain elements of mat. The value of each field is the corresponding value of the uncertain element, which lead to the gain value in maxnorm.LowerBound when jointly combined.

info is a structure with the following fields

Field
Description
Sensitivity
e1x...xeF struct array, where each entry is the local sensitivity of the worst-case norm in maxnorm.LowerBound to the uncertainty range of each uncertain element.
ArrayIndex
At each value in the e1x...xeF grid, there is a corresponding value in the d1x...xdF grid where the maximum occurs. The variable info.ArrayIndex is an e1x...xeF matrix, where the value is the single-index representation of the maximizing location in the d1x...xdF grid.

Examples

You can construct an uncertain matrix and compute the worst-case norm of the matrix, as well as its inverse. Your objective is to accurately estimate the worst-case, or the largest, value of the condition number of the matrix.

The condition number of M must be less than the product of the two upper bounds for all values of the uncertain elements making up M. Conversely, the largest value of M condition number must be at least equal to the condition number of the nominal value of M. Compute these crude bounds on the worst-case value of the condition number.

How can you get a more accurate estimate? Recall that the condition number of an nxm matrix M can be expressed as an optimization, where a free norm-bounded matrix capital delta tries to align the gains of M and M-1

If M is itself uncertain, then the worst-case condition number involves further maximization over the possible values of M. Therefore, you can compute the worst-case condition number of an uncertain matrix by using a ucomplexm uncertain element, and then by using wcnorm to carry out the maximization.

Create a 2-by-2 ucomplexm object, with nominal value equal to zero.

The range of values represented by Delta includes 2-by-2 matrices with the maximum singular value less than or equal to 1.

You can create the expression involving M, Delta and inv(M).

Finally, consider the stopping criteria and call wcnorm. One stopping criteria for wcnorm(H) is based on the norm of the nominal value of H. During the computation, if wcnorm determines that the worst-case norm is at least

then the calculation is terminated. In our case, since H.NominalValue equals 0, the stopping criteria is governed by ABadThreshold. The default value of ABadThreshold is 5. To keep wcnorm from prematurely stopping, set ABadThreshold to 38 (based on our crude upper bound above).

You can verify that wcu makes the condition number as large as maxKappa.LowerBound.

Algorithm

See wcgain

See Also

lti/norm    Calculates LTI system norms

svd         Calculates singular value decomposition

wcgain      Calculates worst-case gain of a system

wcgopt      Creates a wcgain options object


 Provide feedback about this page 

Previous page wcmargin wcsens Next page

Recommended Products

Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.

 © 1984-2009- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS