param — Parameter samples
structure | structure array
Parameter samples for linearizing mdl, specified as:
- Structure — Vary the value of a single parameter by specifying param as a structure
with the following fields:- Name — Parameter name, specified as a character vector or string. You can specify
any model parameter that is a variable in the model workspace, the MATLAB
workspace, or a data dictionary. If the variable used by the model is not a scalar
variable, specify the parameter name as an expression that resolves to a numeric
scalar value. For example, to use the first element of vector V as a parameter, use:
- Name — Parameter name, specified as a character vector or string. You can specify
param.Name = 'V(1)';
- Value — Parameter sample values, specified as a double array.
For example, vary the value of parameter A in the 10% range:
param.Name = 'A';
param.Value = linspace(0.9*A,1.1*A,3);
- Structure array — Vary the value of multiple parameters. For example, vary the values
of parameters A and b in the 10% range:
[A_grid,b_grid] = ndgrid(linspace(0.9*A,1.1*A,3),...
linspace(0.9*b,1.1*b,3));
params(1).Name = 'A';
params(1).Value = A_grid;
params(2).Name = 'b';
params(2).Value = b_grid;
For more in information, see “Specify Parameter Samples for Batch Linearization” on
page 3-62.
If param specifies tunable parameters only, then the software batch linearizes the model
using a single compilation. If you also configure st.OperatingPoints with operating
point objects only, the software uses single model compilation.
For an example showing how batch linearization with parameter sampling works, see
“Vary Parameter Values and Obtain Multiple Transfer Functions” on page 3-32. That
example uses slLinearizer, but the process is the same for slTuner.
To compute the offsets required by the LPV System block, specify param, and set
st.Options.StoreOffsets to true. You can then return additional linearization
slTuner