Question about the state space model SS

4 次查看(过去 30 天)
Hi everyone
I have a question about the state space model. I have linearized my equations with Taylor at first order around a stationary point. If i consider my stationary point different from zero, I obtain the following model: x_dot = Ax+Bu+E and y = Cx+Du where E is the matrix that contains only known terms related to linearization constant. So my question is if there's a way to pass from this two equations to the state space model, cause I always used sys = ss(A,B,C,D), but this time I have also the matrix E.

回答(1 个)

Abhinav Aravindan
Abhinav Aravindan 2024-2-27
编辑:Abhinav Aravindan 2024-2-27
A possible approach to model the above equations is to add an extra state to your system that represents the constant term. This state will have a derivative of 0 since it is constant.
The code snippet below illustrates this approach.
% State-space matrices (sample values)
A = [2 2 3; 1 2 1; 3 4 5];
B = [3; 4; 7];
C = [7 8 9];
D = 9;
E = [10; 11; 12];
% Number of states, inputs, and outputs
n = size(A, 1);
m = size(B, 2);
p = size(C, 1);
% Augment the A matrix with an extra column for E
A_new = [A, E; zeros(1, n), 0];
% Augment the B matrix with an extra row of zeros
B_new = [B; zeros(1, m)];
% Augment the C matrix with an extra column for effect of E on the output
C_new = [C, zeros(p, 1)];
% D matrix remains the same
D_new = D;
% Create the state-space model
sys = ss(A_new, B_new, C_new, D_new);
Output:
Please find below similar queries to yours and relevant documentation for reference:
  1 个评论
Sam Chak
Sam Chak 2024-2-27
Hi @Abhinav Aravindan, it seems that you placed the E constants into the state matrix A. What will be the initial value of augmented state ?

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Model Type and Other Transformations 的更多信息

产品


版本

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by