c2d
Computes a discrete-time state-space model from a continuous-time state-space model.
Syntax
SYSD = c2d(SYSC, Ts)
SYSD = c2d(SYSC, Ts, METHOD)
SYSD = c2d(SYSC, Ts, 'prewarp', W0)
Inputs
- SYSC
- Continuous-time state-space model.
- Ts
- Sampling time in seconds.
- METHOD
- A string to specify the method used to convert the SYSC model to
the SYSD model.
- zoh
- Zero-Order-Hold method (default method).
- prewarp
- Pre-warp method. This method requires W0.
- tustin
- Tustin approximation method.
- bilin
- Bilinear transformation.
- W0
- The pre-warp frequency.
Outputs
- SYSD
- A discrete-time state-space model.
Example
Default method:
A = [10.0 5;
5 10 ];
B = [0.0 -10;
10 0.0 ];
C = [-10 0.0;
0.0 10 ];
D = [10 0.0;
0.0 -10 ];
ResSys1 = c2d (ss (A, B, C, D), 2, 'zoh')
ResSys1 = object [
Scaled: 0
TimeUnit: seconds
ts: 2
a: [Matrix] 2 x 2
5.34324e+12 5.34324e+12
5.34324e+12 5.34324e+12
b: [Matrix] 2 x 2
3.56216e+12 -3.56216e+12
3.56216e+12 -3.56216e+12
c: [Matrix] 2 x 2
-10 0
0 10
d: [Matrix] 2 x 2
10 0
0 -10
e: [Matrix] 0 x 0
type: StateSpaceModel
]
Using the pre-warp method:
ResSys2 = c2d (ss (A, B, C, D), 2, 'prewarp',0.5) %For the same state space matrices given above
ResSys2 = object [
Scaled: 0
TimeUnit: seconds
ts: 2
a: [Matrix] 2 x 2
-1.28904 0.15908
0.15908 -1.28904
b: [Matrix] 2 x 2
1.17581 2.13639
-2.13639 -1.17581
c: [Matrix] 2 x 2
2.13639 -1.17581
1.17581 -2.13639
d: [Matrix] 2 x 2
1.30930 -15.79057
-15.79057 -18.69070
e: [Matrix] 0 x 0
type: StateSpaceModel
]
Comments
Computes a discrete-time state-space model from a continuous-time state-space model.
SYSD = c2d(SYS, Ts, METHOD) computes the discrete-time approximation of the continuous-time systems models SYS, with sampling period T's using METHOD.
Based on the SLICOT library functions ab04md and expm.