Keywords

1 Introduction

The power diode [1] may be one of the most widely adopted devices in power electronics, thus intensive efforts has been made to reveal the underlying mechanism of the complex nonlinear behavior of the diodes and develop reliable modeling methods. Existing models of power diodes can be roughly divided into system-level models and device-level models. System-level models, which approximate the diodes’ behavior by multi-value resistors and ideal switches, are favorable for low computational overheads, while the accuracy is not satisfying for many scenarios, e.g., loss calculation and electromagnetic interference (EMI) evaluation [2]. Device-level models, either behavior-based or physics-based, take into account many physical phenomena, including emitter recombination, mobile charge carriers in depletion layer, and carrier multiplication, exhibit much more precise transient behavior than those of the system-level models.

However, popular circuit simulation tools, e.g., PSPICE, Matlab Simulink, and ANSYS Simplorer, often adopt implicit time integration methods, among which the backward Euler (BE) method may be the most common choice, are faced with the solutions to nonlinear algebraic equations arising from time discretization. For small problems involving only a few diodes, the dimensions of the nonlinear systems are limited, and the computational overheads are not a big issue. On the contrary, for large systems, e.g., the high voltage direct current (HVDC) transmission systems [3], thousands of diodes and other semiconductor devices are involved. The resultant dimensions of the nonlinear equations can be huge and bring up prohibitive computational costs.

Therefore, for large-scale transient analysis, decomposition-like techniques, including the latency insertion method (LIM) [4] and transmission-line links [5], are often used to decouple and analyze the whole system in a divide-and-conquer manner. In these techniques, the sub-solvers that can efficiently resolve the nonlinearity of a single component are essential for overall efficiency. Thus, in this manuscript, we focus on sorting out the most efficient nonlinear solver for tackling the nonlinearity of a single diode. Most existing nonlinear solvers fall into fixed-point methods or Newton methods. In this work, both types of nonlinear solvers are tested on a behavior-based diode model integrated in ANSYS Simplorer and comparison regarding convergence and efficiency are carried out.

2 Formulations

2.1 Behavior-Based Model of Diodes

The adopted model [6,7,8], which is a behavior-based dynamic model of power diodes integrated in ANSYS Simplorer, is presented in Fig. 1. The diode core of this model is described as

$$ V_{F} = \frac{kT}{q}\ln \left( {\frac{{I_{F} }}{{I_{S} }} + 1} \right) + I_{F} \cdot R_{B} \left( {I_{F} } \right) $$
(1)
$$ R_{B} (I_{F} ) = \frac{{R_{B}^{0} }}{{\sqrt {1 + I_{D} /I_{NOM} } }} $$
(2)

where k = 1.380649 × 10–23 J/K is Boltzmann constant, q = 1.602177 × 10–19 C the elementary charge, T the temperature in Kelvin, and IS the saturation current.

Fig. 1
AA circuit diagram comprises the L ak, R damping, R b b, C s, D 1, and C differential.

Behavior-based dynamic model of diodes in ANSYS Simplorer

In addition to the static behavior modelled by the diode core, charging and discharging of junction and diffusion capacitance are taken into account by introducing voltage-dependent capacitances. There is a distinction between the evaluation of depletion and enhancement capacitance behavior, but the curves keep differentiable at the transition from one region to the other. The transition happens when the effective junction voltage

$$ V_{PN} = V_{C} - VSHIFT\_JNCT $$
(3)

crosses 0 V. The voltage-dependent capacitances are given by the following piecewise function

$$ C_{S} (V_{PN} ) = \left\{ {\begin{array}{*{20}l} {C_{0} \cdot [2 - e^{{ - \frac{{V_{N} }}{{V_{{{\text{diff}}}} }}}} )],} \hfill & {V_{PN} \ge 0} \hfill \\ {C_{0} \cdot (\delta - \frac{1 - \delta }{{(1 - \frac{{V_{PN} }}{{V_{{{\text{diff}}}} }})^{\alpha } }}),} \hfill & {V_{PN} < 0} \hfill \\ \end{array} } \right. $$
(4)

where

$$ V_{N} = \frac{{V_{diff} }}{{\left( {1 - \delta } \right) \cdot \alpha }} $$
(5)

It’s worth noting that to avoid possible oscillations, we involve a damping resistor \(R_{DAMP} = DAMPING \cdot \sqrt {L/C}\), which is related to parasitic inductances as well as the internal capacitance.

The reverse recovery behavior is described by a controlled current source, i.e., Irr in Fig. 1. The reverse recovery waveform and related shape parameters are presented in Fig. 2. The piecewise analytical formulations of the reverse recovery current are

$$ I_{rr} (t) = \left\{ {\begin{array}{*{20}l} {\frac{{I_{rr\max } }}{{\exp \left( {\frac{{t_{S} }}{TAU}} \right) - 1}}\left[ {\exp \left( \frac{t}{TAU} \right) - 1} \right]\quad \quad \left[ {0,t_{B} } \right]} \hfill \\ {I_{rr\max } \sin \left( {\omega_{1} t + \varphi_{1} } \right)\quad \left[ {t_{B} ,t_{S} } \right]} \hfill \\ {I_{rr\max } \cos \left( {\omega_{2} t + \varphi_{2} } \right)\quad \left[ {t_{S} ,t_{C} } \right]} \hfill \\ {\frac{{\left( {R_{3} - R_{2} } \right)I_{rr\max } }}{{SF_{2} \cdot t_{S} }}t + I_{rr\max } \left( {R_{2} - \frac{{R_{3} - R_{2} }}{{SF_{2} \cdot t_{S} }}t_{C} } \right)\quad \left[ {t_{C} ,t_{C} + SF_{2} \cdot t_{S} } \right]} \hfill \\ {a\left( {t - t_{end} } \right)^{2} \quad \quad \quad \quad \quad \quad \quad \quad \left[ {t_{C} + SF_{2} \cdot t_{S} ,t_{end} } \right]} \hfill \\ \end{array} } \right. $$
(6)

where the unknown coefficients are calculated as

$$ \left\{ {\begin{array}{*{20}l} {t_{B} = TAU \cdot \ln \left( {R_{1} \left( {\exp \left( {\frac{{t_{S} }}{TAU}} \right) - 1} \right) + 1} \right)} \hfill \\ {\omega_{1} = \frac{{\arcsin \left( {R_{1} } \right) - \frac{\pi }{2}}}{{t_{B} - t_{s} }}} \hfill \\ {\varphi_{1} = \frac{\pi }{2} - \frac{{\arcsin \left( {R_{1} } \right) - \frac{\pi }{2}}}{{t_{B} - t_{s} }}t_{s} } \hfill \\ {t_{C} = t_{S} \left( {1 + SF_{1} } \right)} \hfill \\ {\omega_{2} = \frac{{\arccos \left( {R_{2} } \right)}}{{SF_{1} \cdot t_{S} }}} \hfill \\ {\varphi_{2} = - \frac{{\arccos \left( {R_{2} } \right)}}{{SF_{1} }}} \hfill \\ {t_{end} = t_{C} + SF_{2} \cdot t_{S} - \frac{{2R_{3} \cdot SF_{2} \cdot t_{S} }}{{R_{3} - R_{2} }}} \hfill \\ {a = \frac{{R_{3} \cdot I_{rr\max } }}{{\left( {t_{C} + SF_{2} \cdot t_{S} - t_{end} } \right)^{2} }}} \hfill \\ \end{array} } \right. $$
(7)
Fig. 2
A line graph depicts the parabolic trend of I R R with respect to time. A pea point on trend is denoted as I R R M at time t s, and R 2 I R R M at time t C.

Reverse recovery waveform and shape parameters

The unknown parameters in the above equations and figures can all be extracted by inputting the data from the manufacturer’s datasheet into the modelling tool integrated in ANSYS Simplorer.

2.2 Time Discretization of a Reference Problem

The test model, which is the reference problem considered in our context, is depicted in Fig. 3. The governing equations of this model are

$$ \left\{ {\begin{array}{*{20}l} {\frac{{dV_{{ai}} }}{{dt}} = \frac{1}{{R_{{bb}} C_{{diff}} }}\left[ {V_{{am}} - V_{{ai}} - R_{{bb}} \left( {I_{F} - I_{{rr}} } \right)} \right]} \hfill \\ {\frac{{dI_{T} }}{{dt}} = \frac{1}{{L_{{ak}} }}\left( {V_{a} - V_{{am}} } \right)} \hfill \\ {\frac{{du_{{Cs}} }}{{dt}} = \frac{1}{{R_{{damping}} \cdot C_{S} }}\left( {V_{{am}} - u_{{cs}} } \right)} \hfill \\ \end{array} } \right. $$
(8)

where the intermediate variables

$$ \left\{ {\begin{array}{*{20}l} {V_{am} = \left( {I_{T} - \frac{{V_{am} - u_{cs} }}{{R_{damping} }}} \right)R_{bb} + V_{ai} } \hfill \\ {I_{F} = I_{S} \left[ {\exp \left( {\frac{{qV_{ai} }}{kT}} \right) - 1} \right]} \hfill \\ {R_{bb} = \frac{{R_{B0} }}{{\sqrt {\frac{{I_{F} }}{{I_{NOM} }} + 1} }}} \hfill \\ {R_{damping} = DAMPING\sqrt {\frac{{L_{ak} }}{{C_{S} }}} } \hfill \\ {C_{diff} = TAU\frac{{I_{F} + I_{S} }}{{M_{0} \cdot \frac{kT}{q}}}} \hfill \\ {C_{S}^{n + 1} = \left\{ {\begin{array}{*{20}l} {C_{0} \cdot [2 - e^{{ - \frac{{V_{N} }}{{V_{{{\text{diff}}}} }}}} )],} \hfill & {V_{PN} \ge 0} \hfill \\ {C_{0} \cdot (\delta - \frac{1 - \delta }{{(1 - \frac{{V_{PN} }}{{V_{{{\text{diff}}}} }})^{\alpha } }}),} \hfill & {V_{PN} < 0} \hfill \\ \end{array} } \right.} \hfill \\ \end{array} } \right. $$
(9)
Fig. 3
A circuit diagram comprises a D C voltage source e 1, A diode D 2700 U, and an inductor L 1.

The reference model

The differential-algebraic equations (DAEs) given by Eqs. (8) and (9) are discretized by the widely adopted backward Euler (BE) scheme, which is unconditionally stable and can suppress unphysical oscillations of the numerical solutions. The resultant discretized DAEs are

$$ \left\{ {\begin{array}{*{20}l} {V_{ai}^{n + 1} \left( {\frac{1}{\Delta t} + \frac{1}{{R_{bb}^{n + 1} C_{diff}^{n + 1} }}} \right) - V_{ai}^{n} \left( {\frac{1}{\Delta t}} \right) - \frac{1}{{R_{bb}^{n + 1} C_{diff}^{n + 1} }}\left[ {V_{am}^{n + 1} - R_{bb}^{n + 1} \left( {I_{F}^{n + 1} - I_{rr}^{n + 1} } \right)} \right] = 0} \hfill \\ {I_{T}^{n + 1} \left( {\frac{1}{\Delta t}} \right) - I_{T}^{n} \left( {\frac{1}{\Delta t}} \right) - \frac{1}{{L_{ak} }}\left( {V_{a}^{n + 1} - V_{am}^{n + 1} } \right) = 0} \hfill \\ {u_{Cs}^{n + 1} \left( {\frac{1}{\Delta t} + \frac{1}{{R_{damping}^{n + 1} C_{S}^{n + 1} }}} \right) - u_{Cs}^{n} \left( {\frac{1}{\Delta t}} \right) - V_{am}^{n + 1} \left( {\frac{1}{{R_{damping}^{n + 1} C_{S}^{n + 1} }}} \right) = 0} \hfill \\ {V_{am}^{n + 1} = \frac{{R_{damping}^{n + 1} }}{{R_{damping}^{n + 1} + R_{bb}^{n + 1} }}\left[ {V_{ai}^{n + 1} + R_{bb}^{n + 1} \left( {I_{T}^{n + 1} + \frac{{u_{Cs}^{n + 1} }}{{R_{damping}^{n + 1} }}} \right)} \right]} \hfill \\ {V_{a}^{n + 1} = \frac{1}{{L_{ak} + L_{1} }}\left( {E_{1}^{n + 1} L_{ak} + V_{am}^{n + 1} L_{1} } \right)} \hfill \\ {I_{F}^{n + 1} = IS\left[ {\exp \left( {\frac{q}{kT}V_{ai}^{n + 1} } \right) - 1} \right]} \hfill \\ {R_{bb}^{n + 1} = \frac{{R_{B0} }}{{\sqrt {1 + \frac{{I_{F}^{n + 1} }}{{I_{NOM} }}} }}} \hfill \\ {R_{damping}^{n + 1} = DAMPING\sqrt {\frac{{L_{ak} }}{{C_{S}^{n + 1} }}} } \hfill \\ {C_{diff}^{n + 1} = TAU\frac{{I_{F}^{n + 1} + IS}}{{M_{0} \cdot \frac{kT}{q}}}} \hfill \\ {C_{S}^{n + 1} = \left\{ {\begin{array}{*{20}l} {C_{0} \cdot [2 - e^{{ - \frac{{V_{ai}^{n + 1} }}{{V_{{{\text{diff}}}} }}}} )],} \hfill & {V_{ai}^{n + 1} \ge 0} \hfill \\ {C_{0} \cdot (\delta - \frac{1 - \delta }{{(1 - \frac{{V_{ai}^{n + 1} }}{{V_{{{\text{diff}}}} }})^{\alpha } }}),} \hfill & {V_{ai}^{n + 1} < 0} \hfill \\ \end{array} } \right.} \hfill \\ \end{array} } \right. $$
(10)

where the superscripts represent the time levels of the variables. In each time advance, the implicit nonlinear system described by Eqs. (10) needs to be solved by a proper solver. The choice of the nonlinear solver is our focus hereinafter.

2.3 Fixed-Point and Newton-Type Nonlinear Solvers

Firstly, for each time advance we reformulate Eqs. (10) as \({\mathbf{F}}{(}{\mathbf{x}}{)} = {\mathbf{0}}\), where \({\mathbf{x}} = {[}V_{ai} {,}\;I_{T} {,}\;u_{Cs} {,}\;\; \cdots {,}C_{S} {]}^{{\text{T}}}\) is a column vector holding all unknown variables.

Existing nonlinear solvers can be divided into fixed-point solvers and Newton-type solvers. Many well-known relaxation-based methods, including Jacobi method, Gauss-Seidel method, and successive-over-relaxation (SOR) method, belong to fixed-point solvers. In our context, we divide the unknowns into \({\mathbf{x}}_{1} = {[}V_{ai} {,}\;I_{T} {,}\;u_{Cs} {]}^{{\text{T}}}\) and \({\mathbf{x}}_{2} = {[}V_{am} {,}\;I_{F} {,}\; \cdots {,}C_{S} {]}^{{\text{T}}}\), namely, unknowns explicitly involved in time derivatives are attributed to \({\mathbf{x}}_{1}\). The flowchart of the fixed-point method is presented by Fig. 4.

Fig. 4
A flowchart presents the following steps, start, set initial values, solve for x 1, solve for x 2, if converge is yes then end otherwise again solve for x 1.

Flowchart of the relaxation-based fixed-point method [9]

As for Newton-type methods, among which Newton-Raphson (NR) method may be the most famous representative, the essence is to linearize the nonlinear systems and convert the task into a series of linear equations named Newton correction equations, the coefficient matrices of which are the Jacobian matrices of the nonlinear systems at current solutions. These methods usually require explicit evaluation and storage of the Jacobian matrices, which are very costly. Therefore, in this work a new variant of NR method, named the Jacobian-free Newton-Krylov (JFNK) method, is chosen. JFNK method is a nested algorithm consisting of the Inexact Newton (IN) method for the solution of nonlinear equations, and Krylov subspace methods for solving the Newton correction equations. By using the finite difference technique, the matrix-vector products required for Krylov iterations are approximated without forming and storing Jacobian matrices. The readers can refer to [10] for detailed implementations.

3 Numerical Results and Discussions

In this section, the proposed nonlinear solvers are tested on the reference problem. The type of diodes considered here is Infineon D2700U45X122. Firstly, the curves and data from the datasheet are inputted into the device characterization tool integrated in ANSYS Simplorer to extract necessary parameters in the previous equations. The results are given in Table 1, and the simulated transient current and voltage are depicted in Fig. 5.

Table 1 Model parameters extracted using ANSYS Simplorer
Fig. 5
2 double line graphs present the sharp increase in the current and voltage with respect to time, for ANSYS simpler and Matlab mode. The trends in both graphs become flat after gaining rated values.

Transient waveforms of the diode during the turn-on process

The diode model and nonlinear solvers are implemented with MATLAB codes. For validation of our implementation, the turn-on process of the diode is analyzed. The total simulation time is 10 ms and the time-step size of MATLAB codes is 0.01 ms. The performance comparison of the nonlinear solvers is shown in Table 2. It’s observed that the fixed-point method is obvious faster the JFNK method. Although the average iteration of JFNK method is less than that of the fixed-point method, for each iteration JFNK method demands two evaluations of nonlinear function F(x), which may be the main reason of its lower efficiency. However, for a small portion of the time steps, both methods fail to converge to the desired error tolerance 1E-6 within 100 iterations, which is the predefined maximum number of iterations for each time advance. In this sense, JFNK method is a more robust solver since it fails for fewer time advances.

Table 2 Performance comparison of the solvers

When the time-step size is increased to 0.05 ms, it’s a totally different story. Fixed-point method fails in most time steps and leads to incorrect waveforms. This is because the convergence of fixed-point methods is pretty sensitive to initial values, and larger time-step size induces more significant difference between current and new-time solution. For comparison, JFNK method fails in 98 time advances yet the waveforms are still acceptable. Nevertheless, the total number of the evaluations of F(x) increased to 62,298 mainly because it takes much more iterations for the inner Krylov solver to converge. Therefore, increased time-step size results in lower efficiency and of course worse accuracy.

4 Conclusions

In this manuscript, a modeling approach requiring merely the manufacturer’s datasheet is adopted for transient modeling of power diodes. Then we test two types of nonlinear solvers for resolving the nonlinearity of the diodes. Two conclusions are drawn from the numerical results. Firstly, Newton-type methods are more robust methods, yet they may be less efficient under small time-step size due to the costs for dealing with the Jacobian matrices of the nonlinear systems, either explicitly or implicitly. Secondly, deliberate choice of time-step size is crucial for successful implementations of both types of nonlinear solvers.