Chapter 7
State Space Systems Constructions
The commands in this section facilitate working with linear dynamic systems.
Most of the entries below require Mathematica’s Control System Professional package available
from Wolfram Research. To change the (commutative) standard Control System Professional
Package for use with NCAlgebra first load in the Control System Professional and then simply load
in the file NCControl.m
The file
NC/NCAlgebra/NCControlSPDemo.nb
contains several examples which illustrate the use of CSP package with non commutative
systems.
The linear system
is
written in Control/Mathematica notation as
where A,B,C, and D are matrices made up of symbolic noncommuting indeterminates. For
example,
Series1 = StateSpace[ {{a}}, {{b}}, {{c}}, {{d}}]

or
Series1 = StateSpace[ {{a11, a12}, {a21,a22}}, {{b1}, {b2}}, {{c1, c2}}, {{d}}].

7.1 System Interconnections
The following commands allow one to connect two systems in various ways
7.1.1 SeriesConnect[ System1, System2 ]

 Aliases: none

 Description: SeriesConnect[ sys1 , sys2 ] creates a system which is the series connection of
the two linear dynamic systems, sys1 and sys2 .

 Arguments: System1,System2

 Comments / Limitations: More complete documentation can be found in the Control
Systems Professional manual.
7.1.2 FeedbackConnect[ System1, System2 ]

 Aliases: none

 Description: FeedbackConnect[System1,System2] creates a system which is the feedback
connection of the two linear dynamic systems, System1 and System2.

 Arguments: System1,System2

 Comments / Limitations: More complete documentation can be found in the Control
Systems Professional manual.
7.1.3 ParallelConnect[ System1, System2 ]

 Aliases: none

 Description: ParallelConnect[System1,System2] creates a system which is the parallel
connection of the two linear dynamic systems, System1 and System2 .

 Arguments: System1,System2

 Comments / Limitations: More complete documentation can be found in the Control
Systems Professional manual.
7.2 Continuous vs. Discrete
The following commands allow one to determine the whether a system is discrete or
continuous.
7.2.1 ContinuousTimeQ[ System1]

 Aliases: none

 Description: ContinuousTimeQ[ System1 ] returns True if System1 is a continuous
dynamic system and False otherwise.

 Arguments: System1

 Comments / Limitations: More complete documentation can be found in the Control
Systems Professional manual.
7.2.2 DiscreteTimeQ[ System1]

 Aliases: none

 Description: DiscreteTimeQ[System1] returns True if System1 is a discrete dynamic
system and False otherwise.

 Arguments: System1

 Comments / Limitations: More complete documentation can be found in the Control
Systems Professional manual.
7.3 Transfer Function
The following command will return the transfer function of a system
7.3.1 TransferFunction[ System1]

 Aliases: none

 Description: TransferFunction[System1] returns the transfer function associated with the
state space representation of System1.

 Arguments: System1

 Comments / Limitations: More complete documentation can be found in the Control
Systems Professional manual. Changes to the CSP II package, since the CSP I require
that inside NCControl.m we set the option
ReductionMethod → NCInverse
for TransferFunction. For systems with commutative entries one still gets a correct
answer from TransferFunction even with this option set. However, it may look different
from that produced by CSP. Thus for a commutative [A,B,C,D] system, one may
want use the option
ReductionMethod → DeterminantExpansion
which gives the same answer as the CSP default.
7.4 Systems from Systems
The following commands will return the new system associated with the argument
7.4.1 Dual[ System1]

 Aliases: none

 Description: Dual[System1] returns the dual system to System1

 Arguments: System1

 Comments / Limitations: More complete documentation can be found in the Control
Systems Professional manual.
7.4.2 InverseSystem[ System1]

 Aliases: none

 Description: InverseSystem[System1] returns the system which is the inverse of System1

 Arguments: System1

 Comments / Limitations: This function does not require the Control Systems Professional
manual.