Anonymous
×
Create a new article
Write your page title here:
We currently have 106 articles on MOR Wiki. Type your article name above or click on one of the titles below and start writing!



MOR Wiki

Difference between revisions of "RLC Ladder (Gugercin/Antoulas 2004)"

Line 28: Line 28:
 
<figure id="fig1">[[File:Rlc_ladder_segment_GugA04.png|490px|thumb|right|<caption>One section of the circuit.</caption>]]</figure>
 
<figure id="fig1">[[File:Rlc_ladder_segment_GugA04.png|490px|thumb|right|<caption>One section of the circuit.</caption>]]</figure>
   
This model represents an electic circuit made of a cascade of interconnected sections. Each section consists of a simple setup as depicted in [[RLC_Ladder_(Gugercin/Antoulas_2004)#fig1|Figure 1]]. The input is the voltage V applied to the first section; the output is the current I of the first section.
+
This model represents an electic circuit made of a cascade of interconnected sections. Each section consists of a simple setup as depicted in [[RLC_Ladder_(Gugercin/Antoulas_2004)#fig1|Figure 1]]. The input is the voltage <math>V</math> applied to the first section; the output is the current <math>I</math> of the first section.
   
 
:<math>
 
:<math>
Line 44: Line 44:
   
 
==Data==
 
==Data==
The following Matlab code assembles the above described <math>A</math>, <math>B</math>, <math>C</math>, and <math>D</math>, matrices of requested dimensions. The input parameters R, Rbar, Cap and L represent the two resistances, the capacitance and the inductivity of each section of the circuit, as depicted in [[RLC_Ladder_(Gugercin/Antoulas_2004)#fig1|Figure 1]]. They default to the values from <ref name="morGugA04"/>, when omitted.
+
The following Matlab code assembles the above described <math>A</math>, <math>B</math>, <math>C</math>, and <math>D</math>, matrices of requested dimensions. The input parameters <code>R</code>, <code>Rbar</code>, <code>Cap</code> and <code>L</code> represent the two resistances, the capacitance and the inductivity of each section of the circuit, as depicted in [[RLC_Ladder_(Gugercin/Antoulas_2004)#fig1|Figure 1]]. They default to the values from <ref name="morGugA04"/>, when omitted.
   
 
<div class="thumbinner" style="width:680px;text-align:left;">
 
<div class="thumbinner" style="width:680px;text-align:left;">

Revision as of 10:56, 26 January 2026

Under Construction.png Note: This page has not been verified by our editors.


RCL Circuit Equations
Background
Benchmark ID
  • rlc_ladder_GA_n?m1q1
Category

morwiki

System-Class

LTI-FOS

Parameters
nstates
  • arbitrary
ninputs
  • 1
noutputs
  • 1
nparameters

0

components

A, B, C, D

Copyright
License

MIT

Creator

Serkan Gugercin

Editor
Location

NA


Description

Figure 1: One section of the circuit.

This model represents an electic circuit made of a cascade of interconnected sections. Each section consists of a simple setup as depicted in Figure 1. The input is the voltage \(V\) applied to the first section; the output is the current \(I\) of the first section.

\[ \begin{align} \dot x(t) &= A x(t) + B u(t), \\ y(t) &= C x(t) + D u(t), \\ x(0) &= x_0, \end{align} \]

with \(t>0\).

Origin

This model was used in the numerical experiments section of [1].

Data

The following Matlab code assembles the above described \(A\), \(B\), \(C\), and \(D\), matrices of requested dimensions. The input parameters R, Rbar, Cap and L represent the two resistances, the capacitance and the inductivity of each section of the circuit, as depicted in Figure 1. They default to the values from [1], when omitted.

function [A, B, C, D, sys_rlc] = circuit_sparse(N, R , Rbar, Cap, L)
% circuit_sparse generates a SISO RLC ladder model of prescribed dimensions
%
% The model follows the descriptioin in DOI:10.1080/00207170410001713448
% and the input parameters R, Rbar, Cap and L default to the values given
% there, when omitted. If also N is omitted the original 100 dimensional
% realization is created.
%
% The code is a sparse adaption of the original dense generator function by
% Serkan Gugercin.
%

%
% MIT License
%
% Copyright (c) 2026 The MORwiki Community
%
% Permission is hereby granted, free of charge, to any person
% obtaining a copy of this software and associated documentation files
% (the "Software"), to deal in the Software without restriction,
% including without limitation the rights to use, copy, modify, merge,
% publish, distribute, sublicense, and/or sell copies of the Software,
% and to permit persons to whom the Software is furnished to do so,
% subject to the following conditions:
%
% The above copyright notice and this permission notice shall be
% included in all copies or substantial portions of the Software.
%
% THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
% EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
% MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
% NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
% BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
% ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
% CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
% SOFTWARE.
%

if nargin < 1
    N = 100;
end

if nargin < 2
    % parameter values from DOI:10.1080/00207170410001713448
    R    = 0.1;
    Rbar = 1;
    Cap  = 0.1;
    L    = 0.1;
end

z1 =  1 / L                         * ones(N, 1);
z2 = -1 / L * Rbar * R / (Rbar + R) * ones(N, 1);
z3 = -1 / L * Rbar / (Rbar + R)     * ones(N, 1);

% Every second row needs to be adapted for the second ladder step
z3(2:2:N) = -1 / Cap;
z2(1:2:N) = -1 / Cap / (Rbar + R);
z1(2:2:N) =  1 / Cap * Rbar / (Rbar + R);

% start end end are exceptional
z2(1)     = -1 / R / Cap; % sets A(1, 1)
z3(1)     = -1 / Cap;     % sets A(1, 2)
z2(N)     = -Rbar / L;    % sets A(N, N)
z1(N - 1) =  1 / L;       % sets A(N, N-1)

A = spdiags([z1 z2 z3], -1:1, N, N);
B = [(1 / R / Cap); sparse(N - 1, 1)];
C = [(-1 / R)       sparse(1, N - 1)];
D = 1 / R;

if exist('sparss', 'file')
    sys_rlc = sparss(A, B, C, D);
else
    sys_rlc = [];
end

Citation

To cite this benchmark, use the following references:

  • For the benchmark itself and its data:
RLC Ladder (Gugercin/Antoulas 2004). hosted at MORwiki - Model Order Reduction Wiki, 2026. http://modelreduction.org/index.php/RLC_Ladder_(Gugercin/Antoulas_2004)
@MISC{morwiki_steel,
  author =       {{The MORWiki Community}},
  title =        {RLC Ladder (Gugercin/Antoulas 2004)}
  howpublished = {hosted at {MORwiki} -- Model Order Reduction Wiki},
  url =          {https://modelreduction.org/morwiki/RLC_Ladder_(Gugercin/Antoulas_2004)},
  year =         2026
}
  • For the background on the benchmark:
@Article{morGugA04,
 author =       {Gugercin, S. and Antoulas, A.~C.},
 title =        {A survey of model reduction by balanced truncation and some
                 new results},
 journal =      IntControl,
 year =         2004,
 volume =       77,
 number =       8,
 pages =        {748--766},
 doi =          {10.1080/00207170410001713448}

}

References

  1. 1.0 1.1 S. Gugercin and A.C. Antoulas, A survey of model reduction by balanced truncation and some new results, International Journal of Control, 77:8, 748-766, 2004.