Next: About
this document
Easy links between Mathematica Automatic Control Package and NC Algebra.
The parts of Mma Control package which we are linking to NCAlgebra.
NO Ch 3.1 fails,
YES Ch 3.2, 3.3 F.R.F. and state space.
Review Form
TransferFunction[vars, m] WE NEED TO SEE WHAT IT DOES.-
MAYBE gives transfer function??
StateSpace
Sampled Option, makes Discrete time.
ContinuousTimeQ, DiscrerteTimeQ
NOT Ch 3.4 continuous vs. discrete?? looks uncharted
(needs E(A, t)).
NOT Ch 4 Time-domain response
(does
noncom(t) dt just return itself? if yes - good)
NOT Ch 5 Plots lots
YES Ch 6 Systems Interconnections
NOT Ch 7 Controllability Observability
Gramians -makes eqs for them, discrete and continuousis automatic -use
MatMult
NCGramians[statespace, GC, GO]
NCControlabilityGramians[statespace, GC]
NCObservabilityGramians[statespace, GO]
Dual - transpose sys construction in ZDG book.
-we call it NCCongugateSystem now - can change also to make Disc and contin
time automatic
we also do InverseSys -
? Ch 9 Realization
SimilarityTransform[sys,T]
NOT Ch 9 Pole assignment
NOT Ch 10 LQG numerical -
Ch 10 we could produce Riccati equations.
This is like our NCSystems pack- Need -- NCRiccati[ sys, V] gives Riccs,
as in SYSDef1x1 . Use blocks to make 2x2 automatically.
Are there Contrl Riccs and estimation Riccs,? see HJ appendix.
SOON --JUAN make a Hamiltonian for an A,B,C,D
system. Use MatMult.so that B,C can have lotsa channels.
NOT Ch 11
Yesish Ch 12.1 Show decomposition
SETTING SYSTEMS
Sys1 and sys2 have same FRF
NCSysEqual[s1,s2 ,T]
Energy conserving[sys,V] eqs on V.
DELL's controllability maybe??
We did the Ch 7 conversions in Mma Control Package. That is, we did
the Connections.m, conversion to NCAlgebra and we found what changes are
needed. They were as follows:
In the file Connections.m Line 329 is changed from
e = Inverse[IdentityMatrix[Length[i]] - columns[cl,sts+i]];
to
e = NCMatMult`invMat2[IdentityMatrix[Length[i]] - columns[cl,sts+i]];
and Line 334 is changed from
sys = sys + columns[sys,sts+i].e.cl;
to
sys = sys + NCMatMult`MatMult[ NCMatMult`MatMult[
columns[sys,sts+i], e], cl ];
Our plan would be to use your heads such as Head StateSpace[ ]. If we simply
use it in an NC envioronment with entries declared noncommuting, then it
appears that your Connection commands will work. At this point the block
structure of NC feedback connections would be limited, but if we decide
to go ahead with this then we shall improve that (namely, generalize invMat2x2
to invMatkxk or at least invmat 4x4)
Next: About
this document
David Glickenstein
Mon Jun 21 11:55:39 PDT 1999