3.7.2 Parameter Sweeps
A few Analog Insydes functions make use of parameter sweeping: Besides the integration variable, NDAESolve allows for varying several parameters performing a multi-dimensional parameter sweep. For preparation of the nonlinear simplification methods the range of the input variables has to be specified as a parameter sweep using the command NonlinearSetup.
Analog Insydes supports the following parameter sweep formats:
Valid parameter sweep formats.
The following example shows valid parameter sweeps:
{{R1, {100, 1000, 10000}},
{V1, 1, 5, 1},
{{P1 -> 10, P2 -> 20}, {P1 -> 20, P2 -> 10}}}
If several sweep formats are combined in a list (as shown in the example above) the outer product of all sweep specifications is computed.
You can use ParamSweepQ to check whether a given sweep specification is valid in the above sense.
Examples
To demonstrate the parameter sweep format, in this example section the internal command ResolveParamSweep is used. This function returns a list where the first element is the canonical representation of the sweep specification (i.e. a flat list of rules). The second element of the result is for internal purposes only.
Load Analog Insydes.
In[1]:= <<AnalogInsydes`
A one-dimensional sweep with values given explicitly.
In[2]:= First @ ResolveParamSweep[{R1, {100, 1000, 10000}}]
Out[2]=
A one-dimensional sweep with values given by an interval.
In[3]:= First @ ResolveParamSweep[{V1, 1, 5, 1}]
Out[3]=
The combination of both sweeps yields a two-dimensional sweep.
In[4]:= First @ ResolveParamSweep[ {{R1, {100, 1000, 10000}}, {V1, 1, 4, 1}}]
Out[4]=
You can mix any sweep format to build valid multi-dimensional sweeps.
In[5]:= ParamSweepQ[{{R1, {100, 1000}}, {V1, 1, 5, 1}, {{P1 -> 10, P2 -> 20}, {P1 -> 20, P2 -> 10}}}]
Out[5]=
|