Wolfram Language Paclet Repository

Community-contributed installable additions to the Wolfram Language

Primary Navigation

    • Cloud & Deployment
    • Core Language & Structure
    • Data Manipulation & Analysis
    • Engineering Data & Computation
    • External Interfaces & Connections
    • Financial Data & Computation
    • Geographic Data & Computation
    • Geometry
    • Graphs & Networks
    • Higher Mathematical Computation
    • Images
    • Knowledge Representation & Natural Language
    • Machine Learning
    • Notebook Documents & Presentation
    • Scientific and Medical Data & Computation
    • Social, Cultural & Linguistic Data
    • Strings & Text
    • Symbolic & Numeric Computation
    • System Operation & Setup
    • Time-Related Computation
    • User Interface Construction
    • Visualization & Graphics
    • Random Paclet
    • Alphabetical List
  • Using Paclets
    • Get Started
    • Download Definition Notebook
  • Learn More about Wolfram Language

SystemofSystems

Guides

  • Guide to ZigangPan`SystemofSystems`

Symbols

  • EZDCFSS
  • interconnectionpropertyQ
  • robustMRACdesignSystemofSystems
  • systemofsystems
ZigangPan`SystemofSystems`
robustMRACdesignSystemofSystems
​
{picontroller,picontrollerIS}=robustMRACdesignSystemofSystems[{gy,gu},systemsdata,ub,γ,choice]
gy
: is the (directed) graph representation of the composite system with the outputs y.
gu
: is the (directed) graph representation of the composite system with the inputs ua.
gy
and
gu
must have the same vertex list.
systemdata
: is a list of length
p
= VertexCount[
gy
], each containing the data for the subsystem
sj
among the composite system.
ub
: is the vector
ub
that enters into every subsystem.
γ
: is the desired disturbance attenuation level.
choice
: is a boolean variable, True for the optimal
ξc
design, and False for the suboptimal design. Returned variables:
picontroller
: is the NLsystem model for the robust adaptive controller.
picontrollerIS
: is the initial condition for the robust adaptive controller. If the inputs are of rational coefficients, then the returned variables are of rational coefficients. Design is guaranteed to work for the composite system if it is minimum phase and it satisfies the interconnection property. For subsystem
sj
, the data required are as follows. If
rj
=0, then the data is the list {
mj
,
rj
,
wchkj
,
aj
,{
bjl
's (l ∍. the edge
sl

sj
∈
gu
, or l=j)},
bchkbj
,{
achkjl
's (l ∍. the edge
sl

sj
∈
gy
and l≠j)},
dchkj
,
dj
,{
a2111jl
's (l ∍. the edge
sl

sj
∈
gy
or l=j)},
a2112j
,
a2113j
, {
a212jl
's (l ∍. the edge
sl

sj
∈
gu
, or l=j)},
cj
,
ej
,
bj0
,
c12j
,
c13j
,
θj
,
pθj
,
qj
,
qj0
,
Φj0
,
θchkj0
,
xchkj0
,
βΔj
,
Δinij1
,
kccoeffj
,
ρoj
,
Yinij
,
referencemodelj
,
xdj0
} where
mj
: is output dimension.
rj
: is the uniform vector relative degree of the design model, must equal to 0.
wchkj
: is the
qchkj
-dimensional measured disturbance vector.
aj
: is the
nOj×nOj
-dimensional system matrix.
bjl
: is the
nOj×ml
-dimensional matrix, l ∍. the edge
sl

sj
∈
gu
, or l=j
bchkbj
: is the
nOj×pchk
-dimensional matrix.
achkjl
: is the
nOj×ml
-dimensional matrix, l ∍. the edge
sl

sj
∈
gy
or l≠j
dchkj
: is the
nOj×qchkj
-dimensional matrix.
dj
: is the
nOj×qbj
-dimensional matrix.
a2111jl
: is the
nOj×σj×ml
-dimensional tensor, l ∍. the edge
sl

sj
∈
gy
or l=j
a2112j
: is the
nOj×σj×pchk
-dimensional tensor.
a2113j
: is the
nOj×σj×qchkj
-dimensional tensor.
a212jl
: is the
nOj×σj×ml
-dimensional tensor, l ∍. the edge
sl

sj
∈
gu
, or l=j
cj
: is the
mj×nOj
-dimensional matrix.
ej
: is the
mj×qbj
-dimensional matrix.
bj0
: is the
mj×mj
-dimensional matrix.
c12j
: is the
mj×σj×mj
-dimensional tensor.
c13j
: is the
mj×σj×qchkj
-dimensional tensor.
θj
: is the
σj
-dimensional vector of unknown parameters for sj.
pθj
: is a pure function such that Apply[
pθj
,
θj
]≤1 for true values
θj
.
qj
: is the
mj×mj
-dimensional positive definite weighting matrix for the tracking error.
qj0
: is the positive definite weighting matrix for the initial parameter estimation error:
θ-θchk0
.
Φj0
: is the initial value for the matrix
Φj
.
θchkj0
: is the initial estimate for
θj
.
xchkj0
: is the initial estimate for the system states (in the design model).
βΔj
: is a nonnegative real value.
Δinij1
: is the initial value for
Δ1
. (The program will yield all rational number coefficients in the controller, there is no approximation in the controller.)
kccoeffj
: is a real value that is greater than or equal to 1, and sets Kcj=
kccoeffj
*
γ
^2*Tr[
qj0
]. When
kccoeffj=1
, then
Σj
and
sΣj
are constant matrix and constant scalar, respectively.
ρoj
: is a real value that is greater than 1.
Yinij
: is the initial value for
Yj
. (The program will yield all rational number coefficients in the controller, there is no approximation in the controller.)
referencemodelj
: is a NLsystem model describing the reference model of the system.
xdj0
: is the initial state for the reference model. If
rj>0
, then the data is the list {
mj
,
rj
,
wchkj
,
aj1
,{
bjl
's (l ∍. the edge slsj ∈ gu, or l=j)},
bchkbj
,{
achkjl
's (l ∍. the edge slsj ∈
gy
or l=j)},
dchkj
,
dj1
,{
a2111jl
's (l ∍. the edge slsj ∈
gy
or l=j)},
a2112j
,
a2113j
, {
a212jl
's (l ∍. the edge slsj ∈ gu, or l=j)},
ej1
,
θj
,
pθj
,
qj0
,
Φj0
,
θchkj0
,
xchkj0
,
βΔj
,
Δinij1
,
kccoeffj
,
ρoj
,
Yinij
,
referencemodelj
,
xdj0
,
γsj
,
βsj
} where
mj
: is output dimension.
rj
: is the uniform vector relative degree of the design model.
wchkj
: is the
qchkj
-dimensional measured disturbance vector.
aj1
: is the
nj×nj
-dimensional system matrix.
bjl
: is the
njmj×ml
-dimensional matrix, l ∍. the edge slsj ∈ gu, or l=j
bchkbj
: is the
njmj×pchk
-dimensional matrix.
achkjl
: is the
njmj×ml
-dimensional matrix, l ∍. the edge slsj ∈
gy
or l=j
dchkj
: is the
njmj×qchkj
-dimensional matrix.
dj1
: is the
nj×qbj
-dimensional matrix.
a2111jl
: is the
njmj×σj×ml
-dimensional tensor, l ∍. the edge slsj ∈
gy
or l=j
a2112j
: is the
njmj×σj×pchk
-dimensional tensor.
a2113j
: is the
njmj×σj×qchkj
-dimensional tensor.
a212jl
: is the
njmj×σj×ml
-dimensional tensor, l ∍. the edge slsj ∈ gu or l=j
ej1
: is the
1×qbj
-dimensional matrix.
θj
: is the
σj
-dimensional vector of unknown parameters for sj.
pθj
: is a pure function such that Apply[
pθj
,
θj
]≤1 for true values
θj
.
qj0
: is the positive definite weighting matrix for the initial parameter estimation error:
θj-θchkj0
.
Φj0
: is the initial value for the matrix
Φj
.
θchkj0
: is the initial estimate for
θj
.
xchkj0
: is the initial estimate for the system states (in the design model).
βΔj
: is a nonnegative real value.
Δinij1
: is the initial value for
Δj1
. (The program will yield all rational number coefficients in the controller, there is no approximation in the controller.)
kccoeffj
: is a real value that is greater than or equal to 1, and sets Kcj =
kccoeffj
*
γ
^2*Tr[
qj0
]. When
kccoeff=1
, then
Σj
and
sΣj
are constant matrix and constant scalar, respectively.
ρoj
: is a real value that is greater than 1.
Yinij
: is the initial value for
Yj
. (The program will yield all rational number coefficients in the controller, there is no approximation in the controller.)
referencemodelj
: is a NLsystem model describing the reference model of the system.
xdj0
: is the initial state for the reference model.
γsj
: is a list of length
rj
of positive definite matrices (formula that may depend on
θchkj
) used in the backstepping design as the additive value function.
βsj
: is a list of length
rj
of positive definite matrices (formula that may depend on
θchkj
) used in the backstepping design as the negative drift.
​
Examples  
(0)
SeeAlso
systemofsystems
 
▪
interconnectionpropertyQ
 
▪
EZDCFSS
RelatedGuides
▪
Guide to ZigangPan`SystemofSystems`

System 1.

In[3]:=
θbar1={θb11,θb12,θb13};
In[4]:=
system1={{x11,x12,x13,x14,x15},{u11,u12,u21,y31,y32,wg1,wg2,wg3,wg4,wg5,wg6},{y11,y12,z11,z12},​​{{0,1,0,θb11,0,2θb11,θb12,0,θb11,-θb12,0,0,0,0,0,θb11},​​{0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0},​​{0,-θb13,0,0,0,0,0,0,0,0,0,0,0,0,0,0},​​{-1,0,0,-2,1,-θb11,-θb12,0,θb11,θb12,0,0,0,0,0,θb12},​​{0,0,0,-1/2,-1,0,0,1/6*θb12,θb11,-θb12,0,0,0,0,0,θb12},​​{1,0,0,0,0,θb11,θb12,0,0,0,1,0,0,0,0,0},​​{0,0,0,1,0,-θb12,θb11,0,0,0,0,1,0,0,0,0},​​{1,0,0,0,0,θb11,θb12,0,0,0,0,0,0,0,0,0},​​{0,0,0,1,0,-θb12,θb11,0,0,0,0,0,0,0,0,0}},{1,2},{1,2},{1,2},{3,4,5,6,7,8,9,10,11},{1,2},{3,4}}​​
Out[4]=
{x11,x12,x13,x14,x15},{u11,u12,u21,y31,y32,wg1,wg2,wg3,wg4,wg5,wg6},{y11,y12,z11,z12},{0,1,0,θb11,0,2θb11,θb12,0,θb11,-θb12,0,0,0,0,0,θb11},{0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{0,-θb13,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{-1,0,0,-2,1,-θb11,-θb12,0,θb11,θb12,0,0,0,0,0,θb12},0,0,0,-
1
2
,-1,0,0,
θb12
6
,θb11,-θb12,0,0,0,0,0,θb12,{1,0,0,0,0,θb11,θb12,0,0,0,1,0,0,0,0,0},{0,0,0,1,0,-θb12,θb11,0,0,0,0,1,0,0,0,0},{1,0,0,0,0,θb11,θb12,0,0,0,0,0,0,0,0,0},{0,0,0,1,0,-θb12,θb11,0,0,0,0,0,0,0,0,0},{1,2},{1,2},{1,2},{3,4,5,6,7,8,9,10,11},{1,2},{3,4}
In[5]:=
systemoperation[system1,{"View"}];
Active
a1
a2
Type
s1
s2
s3
s4
s5
c1
c2
d1
d2
d3
d4
d5
d6
d7
d8
d9
names
x11
x12
x13
x14
x15
u11
u12
u21
y31
y32
wg1
wg2
wg3
wg4
wg5
wg6
s1
x11
0
1
0
θb11
0
2θb11
θb12
0
θb11
-θb12
0
0
0
0
0
θb11
s2
x12
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
s3
x13
0
-θb13
0
0
0
0
0
0
0
0
0
0
0
0
0
0
s4
x14
-1
0
0
-2
1
-θb11
-θb12
0
θb11
θb12
0
0
0
0
0
θb12
s5
x15
0
0
0
-
1
2
-1
0
0
θb12
6
θb11
-θb12
0
0
0
0
0
θb12
a1
m1
y11
1
0
0
0
0
θb11
θb12
0
0
0
1
0
0
0
0
0
a2
m2
y12
0
0
0
1
0
-θb12
θb11
0
0
0
0
1
0
0
0
0
c1
z11
1
0
0
0
0
θb11
θb12
0
0
0
0
0
0
0
0
0
c2
z12
0
0
0
1
0
-θb12
θb11
0
0
0
0
0
0
0
0
0
In[6]:=
systemcheck[system1]
Out[6]=
True
In[7]:=
$Assumptions=True
Out[7]=
True
In[8]:=
$Assumptions=$Assumptions&&assumeReal[Join[θbar1,system1〚1〛,system1〚2〛,system1〚3〛]]
Out[8]=
θb11∈&&θb12∈&&θb13∈&&x11∈&&x12∈&&x13∈&&x14∈&&x15∈&&u11∈&&u12∈&&u21∈&&y31∈&&y32∈&&wg1∈&&wg2∈&&wg3∈&&wg4∈&&wg5∈&&wg6∈&&y11∈&&y12∈&&z11∈&&z12∈
In[9]:=
{r1,highfrequencygain1,systemaddI1,systemaddO1,transformation1,zerodynamics1}=EZDCFAD[system1,θbar1]

System 2.

System 3

Parallel interconnection.

© 2025 Wolfram. All rights reserved.

  • Legal & Privacy Policy
  • Contact Us
  • WolframAlpha.com
  • WolframCloud.com