Feedback Systems

(Author: Jorge Finke)

Clear All

Reachability

ss =StateSpaceModel[{(({{-1, 1, 0}, {0, -1, 1}, {0, 0, -1}})),(({{1}, {1}, {0}})), (({{1, 0, 0}}))}]
ControllabilityMatrix[ss]//MatrixForm

ControllableModelQ[ss]

A=(({{0, 0, 0, 0}, {(Subscript[a, 21]), 0, 0, 0}, {(Subscript[a, 31]), 0, 0, (Subscript[a, 34])}, {(Subscript[a, 42]), 0, 0, 0}})); B=(({{(Subscript[b, 1]), 0}, {0, (Subscript[b, 2])}, {0, 0}, {0, 0}}));
ControllabilityMatrix[StateSpaceModel[{A,B}]]//MatrixForm;
ControllableModelQ[StateSpaceModel[{A,B}]]

Reachability of Networks

g=WeightedAdjacencyGraph[(Transpose[{{∞,∞,∞,∞,4,∞,∞,∞,4,∞},{∞,∞,∞,∞,∞,∞,∞,∞,∞,∞},{∞,4,∞,4,5,∞,∞,∞,∞,4},{5,∞,∞,∞,∞,∞,∞,∞,4,∞},{∞,∞,∞,∞,∞,∞,∞,∞,4,∞},{5,∞,∞,5,∞,∞,∞,5,5,5},{5,5,∞,5,∞,5,∞,4,∞,∞},{5,∞,∞,5,∞,∞,∞,∞,∞,∞},{∞,∞,∞,∞,∞,∞,5,∞,∞,∞},{4,4,∞,4,∞,∞,5,4,5,∞}}]),VertexSize->Automatic,VertexLabels->{1->"Felipe",2->"Guillermo",3->"Francisco",4->"Jorge",5->"Sergio Nicolas",6->"Yulieth",7->"Marco",8->"Juan",9->"Jose",10->"Sergio Camilo"}];

AdM=WeightedAdjacencyMatrix[g];
HighlightGraph[g,Table[Style[VertexList[g][[i]],ColorData["TemperatureMap"][Total[AdM][[i]]/Max[Total[AdM]]]],{i,VertexCount[g]}],ImageSize->500]

B=(({{0}, {1}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}})); ControllableModelQ[StateSpaceModel[{Transpose[AdM],B}]]

Observability

ss =StateSpaceModel[{(({{-1, 1, 0}, {0, -1, 1}, {0, 0, -1}})),(({{1}, {1}, {0}})), (({{1, 0, 0}}))}]
ObservabilityMatrix[ss]//MatrixForm

ObservableModelQ[ss]