Change Circuit Parameters
Introduction
Each time that you change a parameter of the Simscape™ Electrical™ Specialized Power Systems library blocks, you have to restart the simulation to evaluate the state-space model and update the parameters of the nonlinear models. However, you can change any source parameter (Magnitude, Frequency, or Phase) during the simulation. The modification takes place as soon as you apply the modification or close the source block menu.
For the Simulink® blocks, all the Simscape Electrical Specialized Power Systems library block parameters that you specify in the dialog box can contain MATLAB® expressions using symbolic variable names. Before running the simulation, you must assign a value to each of these variables in your MATLAB workspace. This assignment allows you to perform parametric studies by changing the parameter values in a MATLAB script.
Example of MATLAB Script Performing a Parametric Study
Suppose that you want to perform a parametric study in a circuit named
my_circuit
to find the impact of varying an inductance on
switching transients. You want to find the highest overvoltage and the inductance
value for which it occurred.
The inductance value of one of the blocks contains variable L1
,
which you must define in your workspace. L1
is varied in 10 steps
from 10 mH to 100 mH and the values to be tested are saved in a vector,
L1_vec
. The voltage waveform to be analyzed is stored in a
ToWorkspace block in array format with V1
variable name.
You can write a MATLAB script that loops on the 10 inductance values and displays the worst case scenario.
L1_vec= (10:10:100)*1e-3; % 10 inductances values 10/100 mH V1_max=0; for i=1:10 L1=L1_vec(i); fprintf('Test No %d L1= %g H\n', i, L1); sim('my_circuit'); % performs simulation % memorize worst case if max(abs(V1))>V1_max, imax=i; V1_max=max(abs(V1)); end end fprintf('Maximum overvoltage= %g V occurred for L1=%g H\n', V1_max, L1_vec(imax));