= Multiplicative uncertainty
\b[Multiplicative uncertainty] represents a model error relative to a nominal <controlled plant>. For a scalar <transfer function>, one useful form is
$$
G(s)=G_0(s)[1+W(s)\Delta(s)],
$$
where $G_0$ is nominal, $W$ shapes the permitted relative error across frequency, and $\Delta$ belongs to a specified bounded uncertainty class. Unlike an additive error, the correction is multiplied by the nominal plant. MathWorks's `ucover` reference distinguishes input multiplicative, output multiplicative and additive forms.<ucover documentation in MATLAB>[utype input argument]{ref}
For an original static-error example, take $G_0(s)=2/(s+1)$, $W=0.20$ and a real constant $\Delta\in[-1,1]$. The allowed family is
$$
G(s)=\frac{k}{s+1},\qquad k\in[1.6,2.4].
$$
The uncertainty changes gain while preserving the pole in this family. A dynamic $\Delta(s)$ can instead introduce frequency-dependent magnitude and phase changes; its admissible dynamics must be stated separately.
An omitted <actuator lag> illustrates a dynamic relative error. If $G=G_0/(1+\tau s)$, then
$$
\frac{G-G_0}{G_0}=-\frac{\tau s}{1+\tau s}.
$$
At $|\omega|\tau=0.1$, its magnitude is about0.0995; at $|\omega|\tau=10$, it is about0.995. A constant10percent relative-error bound would cover the first frequency but fail badly at the second. A shaping function should reflect that discrepancy rather than extrapolate a low-frequency fit.
For a <matrix>-valued plant, multiplication order matters. Input uncertainty is placed on the right of $G_0$, while output uncertainty is placed on the left; the identity matrices and uncertainty dimensions must match the corresponding signal spaces.<ucover documentation in MATLAB>[InputMult and OutputMult equations]{ref} These forms generally cannot be interchanged when matrix products do not commute.
The scalar ratio $(G-G_0)/G_0$ also needs care near zeros of $G_0$. A tiny absolute discrepancy can be a large relative discrepancy there. Choosing multiplicative uncertainty is therefore a modeling decision about which relative errors and frequency ranges a <robust control> argument is intended to cover.
Back to article page