Description
The nonlinear RC-ladder is an electronic test circuit first introduced in [1], and its variant is also introduced in [2]. These nonlinear first-order system model a resistor-capacitor network that exhibits a distinct nonlinear behaviour caused by either the nonlinear resistors consisting of a parallel connected resistor with a diode (see the right figure) or the nonlinear resistors connected parallel to the capacitor (see Fig. 7 in [2]).
Model 1
First, we discuss the modelling of an RC circuit, where the nonlinear resistors consist of a parallel connected resistor with a diode as shown in the above figure. For this, the underlying model is given by a SISO gradient system of the form [3]:
\[ \dot{x}(t) = \begin{pmatrix} -g(x_1(t)) - g(x_1(t) - x_2(t)) \\ g(x_1(t)-x_2(t)) - g(x_2(t)-x_3(t)) \\ \vdots \\ g(x_{k-1}(t) - x_k(t)) - g(x_k(t) - x_{x+1}(t)) \\ \vdots \\ g(x_{N-1}(t) - x_N(t)) \end{pmatrix}+\begin{pmatrix}u(t) \\ 0 \\ \vdots \\ 0 \\ \vdots \\ 0 \end{pmatrix}, \]
\[ y(t) = x_1(t), \]
where the \(g\) is a mapping \(g(x_i):\mathbb{R} \to \mathbb{R}\):
\[ g(x_i) = g_D(x_i) + x_i, \]
which combines the effect of a diode and a resistor.
Nonlinearity
The nonlinearity \(g_D\) models a diode as a nonlinear resistor, based on the Shockley model [4]:
\[ g_D(x_i) = i_S (\exp(u_P x_i) - 1), \]
with material parameters \(i_S > 0\) and \(u_P > 0\).
For this benchmark the parameters are selected as\[i_S = 1\] and \(u_P = 40\) as in [1].
Model 2
Second, we discuss the modelling of an RC circuit, where the nonlinear resistors are connected parallel to the capacitors (see Fig. 7 in [2]). For this, the underlying model is also given by a SISO gradient system of the form [2]:
\[ \dot{x}(t) = \begin{pmatrix} -2 & 1& & \\ 1 & -2 & 1 & \\ & \ddots & \ddots & \ddots\\ & & 1 & -2 \end{pmatrix} x(t) + g(x), \]
and the output function:
\[ y(t) = x_1(t), \]
where the \(g\) is a mapping \(g(x_i):\mathbb{R} \to \mathbb{R}\), respresenting the effect of a nonlinear resistor.
\[ g(x_i) = a\cdot \text{sgn}(x_i)\cdot x_i^2 \]
which represents the effect of a nonlinear resistor, and sgn denotes the sign function.
Nonlinearity
The nonlinearity \(g_D\) models a diode as a nonlinear resistor [2]:
\[ g(x_i) = a\cdot \text{sgn}(x_i)\cdot x_i^2 \]
which represents the effect of a nonlinear resistor, and sgn denotes the sign function.
For this benchmark the parameters are selected as\[a = 1\] as in [1].
Alternatively, the variant from [5] can be used, featuring the nonlinearity:
\[ g(x_i) = \frac{x_i^2}{2} + \frac{x_i^3}{3}. \]
This represents practically a resistor-inductor cascade with nonlinear resistors.
Model 3
Third, a circuit of chained inverter gates, a so-called inverter chain [6], is presented. This is a SISO system, given by:
\[ \dot{x}(t) = -x(t) + \begin{pmatrix} 0 \\ g(x_1(t)) \\ \vdots \\ g(x_{N-1}(t)) \end{pmatrix} + \begin{pmatrix} u(t) \\ 0 \\ \vdots \\ 0 \end{pmatrix}, \]
and the output function:
\[ y(t) = x_N(t). \]
Nonlinearity
The nonlinear function \(g\) is a mapping \(g(x_i):\mathbb{R} \to \mathbb{R}\) describing the inverter characteristic:
\[ g(x_i) = v \tanh(a x_i), \]
being a parameterized hyperbolic tangent with the supply voltage \(v=1\) and a physical parameter \(a\), i.e. \(a=5\).
Input
As an external input, several alternatives are presented in [7], which are listed next. A simple step function is given by: \[ u_1(t)=\begin{cases}0 & t < 4 \\ 1 & t \geq 4 \end{cases}, \]
an exponential decaying input is provided by: \[ u_2(t) = e^{-t}. \]
Additional input sources are given by conjunction of sine waves with different periods [8]: \[ u_3(t) = \sin(2\pi 50t)+\sin(2\pi 1000t), \]
\[ u_4(t) = \sin(2\pi 50t) \sin(2\pi 1000t). \]
Data
A sample procedural MATLAB implementation for order \(N\) for all three models is given by:
function [f,B,C] = nrc(N,model)
%% Procedural generation of "Nonlinear RC Ladder" benchmark system
B = sparse(1,1,1,N,1); % input matrix
C = sparse(1,1,1,1,N); % output matrix
switch lower(model)
case 'shockley'
g = @(x) exp(40.0*x) + x - 1.0;
A0 = sparse(1,1,1,N,N);
A1 = spdiags(ones(N-1,1),-1,N,N) - speye(N);
A1(1,1) = 0;
A2 = spdiags([ones(N-1,1);0],0,N,N) - spdiags(ones(N,1),1,N,N);
f = @(x) -g(A0*x) + g(A1*x) - g(A2*x);
case 'sign'
A = gallery('tridiag',N,1,-2,1);
f = @(x) A*x - sign(x).*(x.*x);
case 'ind'
A = gallery('tridiag',N,1,-2,1);
f = @(x) A*x - ((x.^2)./2 + (x.^3)./3);
case 'inv'
f = @(x) [0;tanh(x(2:end))] - x;
C = sparse(1,N,1,1,N);
otherwise
error('Choose shockley, sign, ind or inv');
end
end
Here the vector field is realized in a vectorized form as a closure.
Dimensions
System structure: \[ \begin{align} \dot{x}(t) &= f(x(t)) + Bu(t), \\ y(t) &= Cx(t). \end{align} \]
System dimensions\[f : \mathbb{R}^N \to \mathbb{R}^N\], \(B \in \mathbb{R}^{N \times 1}\), \(C \in \mathbb{R}^{1 \times N}\).
Citation
To cite these benchmarks, use the following references:
- For the benchmark itself and its data:
- The MORwiki Community, Nonlinear RC Ladder. MORwiki - Model Order Reduction Wiki, 2018. http://modelreduction.org/index.php/Nonlinear_RC_Ladder
@MISC{morwiki_modNonRCL,
author = {{The MORwiki Community}},
title = {Nonlinear RC Ladder},
howpublished = {{MORwiki} -- Model Order Reduction Wiki},
url = {https://modelreduction.org/morwiki/Nonlinear_RC_Ladder},
year = 2018
}
- For the background on the benchmarks:
References
- ↑ 1.0 1.1 1.2 Y. Chen, "Model Reduction for Nonlinear Systems", Master Thesis, 1999.
- ↑ 2.0 2.1 2.2 2.3 2.4 M. Rewienski and J. White, "A trajectory piecewise-linear approach to model order reduction and fast simulation of nonlinear circuits and micromachined devices", IEEE Transactions on computer-aided design of integrated circuits and systems 22(2): 155--170, 2003.
- ↑ M. Condon and R. Ivanov, "Empirical Balanced Truncation for Nonlinear Systems", Journal of Nonlinear Science 14(5):405--414, 2004.
- ↑ T. Reis. "Mathematical Modeling and Analysis of Nonlinear Time-Invariant RLC Circuits", In: Large-Scale Networks in Engineering and Life Sciences. Modeling and Simulation in Science, Engineering and Technology: 125--198, 2014.
- ↑ Y. Kawano, J.M.A. Scherpen. "Empirical Differential Gramians for Nonlinear Model Reduction", arXiv (cs.SY): 1902.09836, 2019.
- ↑ C. Gu, "Model Order Reduction of Nonlinear Dynamical Systems", PhD Thesis (University of California, Berkeley), 2012.
- ↑ Y. Chen and J. White, "A Quadratic Method for Nonlinear Model Order Reduction", Int. Conference on Modelling and Simulation of Microsystems Semiconductors, Sensors and Actuators, 2000.
- ↑ M. Condon and R. Ivanov, "Model Reduction of Nonlinear Systems", COMPEL 23(2): 547--557, 2004