参见:https://www.mathworks.com/matlabcentral/fileexchange/68939-adaptive-mpc-design-with-simulink?s_tid=FX_rc1_behav
这里讲到adaptive MPC需要的是离散得系统模型--对连续系统进行了离散化从而对看到这种方法:
clc;clear;close all;
A = [-0.0285 -0.0014; -0.0371 -0.1476];
B = [-0.0850 0.0238; 0.0802 0.4462];
C = [0 1; 1 0];
D = zeros(2,2);
CSTR = ss(A,B,C,D);
% generate discrete-time model
% method one
Ts =0.1;
sysd =c2d(CSTR,Ts,'z');
[A1,B1,C1,D1]=ssdata(sysd)
% Generate discrete-time model
% method two
nx = size(A,1);
nu = size(B,2);
M = expm([[A B]*Ts; zeros(nu,nx+nu)]);
A2 = M(1:nx,1:nx)
B2 = M(1:nx,nx+1:nx+nu)
C2 = C
D2 = D