augstate
Add states to the outputs of a state-space model.
Syntax
sysaug = augstate(sys)
[Aaug, Baug, Caug, Daug] = augstate(A, B, C, D)
Inputs
- sys
- A state-space or transfer function model.
- A
- The state matrix (n x n), where n is the number of states.
- B
- The input matrix (n x p), where p is the number of inputs.
- C
- The output matrix (q x n), where q is the number of outputs.
- D
- The direct transmission matrix (q x p).
Outputs
- sysaug
- State-space model with states appended to the outputs.
- Aaug
- The state matrix (n x n), where n is the number of states.
- Baug
- The input matrix (n x p), where p is the number of inputs.
- Caug
- The output matrix ((q+n) x n), where q is the original number of outputs.
- Daug
- The direct transmission matrix ((q+n) x p).
Examples
sys = tf([1],[1 5 6 0]);
sys_ss = ss(sys);
SysAug = augstate(sys)
SysAug = object [
Scaled: 0
TimeUnit: seconds
ts: 0
a: [Matrix] 3 x 3
-5 -3 -0
2 0 0
0 1 0
b: [Matrix] 3 x 1
0.50000
0.0000
0.0000
c: [Matrix] 4 x 3
0 0 1
1 0 0
0 1 0
0 0 1
d: [Matrix] 4 x 1
0
0
0
0
e: [Matrix] 0 x 0
type: StateSpaceModel
]
SysIn = ss(-10,10,20,0)
SysAug = augstate(SysIn) object [
Scaled: 0
TimeUnit: seconds
ts: 0
a: -10
b: 10
c: [Matrix] 2 x 1
20
10
d: [Matrix] 2 x 1
0
0
e: [Matrix] 0 x 0
type: StateSpaceModel
]
Comments
Increases a 'space-state' system model by adding states to the outputs of the model.
The resulting model returns values of the state as outputs.
The derived closed-loop model can be computed using the augstate and feedback functions.