Steady-State Analysis
Many specifications of a power electronic system are often given in terms of steady-state characteristics. A straight-forward way to obtain the steady-state operating point of a system is to simulate over a sufficiently long time-span until all transients have faded out. The drawback of this brute-force approach is that it can be very time consuming. Usually a system has time constants that are much longer than the switching period. This applies in particular to electro-thermal models.
Algorithm
The steady-state analysis of a periodic system is based on a quasi-Newton method with Broyden’s update. In this approach the problem is formulated as finding the roots of the function
where \(\mathbf{x}\) is an initial vector of state variables and \(\mathbf{F}_T(\mathbf{x})\) is the final vector of state variables one period \(T\) later.
Evaluating \(\mathbf{f}(\mathbf{x})\) or \(\mathbf{F}_T(\mathbf{x})\) therefore involves running a simulation from \(t_{\mathrm{start}}\) to \(t_{\mathrm{start}}+T\). The period, \(T\), must be the least common multiple of the periods of all sources (signal or electrical) in the model.
The above problem can be solved iteratively using
The Jacobian \(\mathbf{J}\) is calculated numerically using finite differences. If \(n\) is the number of state variables, calculating the Jacobian requires \(n+1\) simulation runs where each state variable in turn is slightly perturbed and the difference between the perturbed and unperturbed solution is computed to obtain one column of \(\mathbf{J}\):
Because this is computationally expensive, only the first Jacobian is actually computed this way. In subsequent iterations, the Jacobian is updated using Broyden’s method, which does not require any additional simulations.
The convergence criterion of the iterations is based on the requirement that both the maximum relative error in the state variables and the maximum relative change from one iteration to the next are smaller than a certain limit \(rtol\):
A Steady-State Analysis comprises the following steps:
Simulate until the final switch positions after one cycle are equal to the initial switch positions. This is called a circular topology.
Calculate the Jacobian matrix \(\mathbf{J}_0\) for the initial state.
Iterate until the convergence criterion is satisfied. If during the iterations the final switch positions after one cycle differ from the initial switch positions, go back to step 1.
Fast Jacobian Calculation for Thermal States
To reduce the number of simulation runs and thus save computation time, PLECS can calculate the Jacobian matrix entries pertaining to thermal states directly from the state-space matrices rather than using finite differences.
There is a certain error involved with this method since it neglects the feedback from the thermal states to the electrical states (or Simulink states). While this will not affect the accuracy of the final result of the steady-state analysis it may slow down convergence. Normally, however, the overall performance will be much higher than calculating the full Jacobian matrix.
The calculation method is controlled by the parameter Jacobian calculation (see Steady-State Analysis).
Non-Periodic Case
If the operating point of the system is defined as non-periodic (DC), a variant of the algorithm described above is performed. As in the periodic case, Newton iterations are executed to find the steady-state. Here, the algorithm searches for the roots of the function
i.e. the time derivative of the vector of state variables \(\mathbf{x}\). Since no simulation has to be performed to compute \(\mathbf{f}\), the full Jacobian \(\mathbf{J}\) is calculated in each iteration. The convergence criterion remains the same as for the periodic case.
Limitations
State variable windup
If the effect of a state variable on the system is limited in some way but the state variable itself is not limited, it might wind up towards infinity. In this case the algorithm may fail to converge or return a false solution. In order to avoid this problem you should limit the state variable itself, e.g. by enabling the Limit output checkbox of an Integrator block.
Reference
D. Maksimović, “Automated steady-state analysis of switching power converters using a general-purpose simulation tool”, Proc. IEEE Power Electronics Specialists Conference, June 1997, pp. 1352-1358.