资源简介
子空间辨识,来自线性系统子空间辨识这本书,matlab程序,简单好用。
代码片段和文件信息
%
% General subspace identification
% -------------------------------
%
% The algorithm ‘subid‘ identifies deterministic stochastic
% as well as combined state space systems from IO data.
%
% [ABCDKR] = subid(yui);
%
% Inputs:
% y: matrix of measured outputs
% u: matrix of measured inputs
% for stochastic systems u = []
% i: number of block rows in Hankel matrices
% (i * #outputs) is the max. order that can be estimated
% Typically: i = 2 * (max order)/(#outputs)
%
% Outputs:
% ABCDKR: combined state space system
%
% x_{k+1) = A x_k + B u_k + K e_k
% y_k = C x_k + D u_k + e_k
% cov(e_k) = R
%
% For deterministic systems: K = R = []
% For stochastic systems: B = D = []
%
% Optional:
%
% [ABCDKRAUXss] = subid(yuinAUXWsil);
%
% n: optional order estimate (default [])
% if not given the user is prompted for the order
% AUX: optional auxilary variable to increase speed (default [])
% W: optional weighting flag
% SV: Singular values based algorithm
% (default for systems with input u)
% CVA: Canonical variate based algorithm
% (default for systems without input u)
% ss: column vector with singular values
% sil: when equal to 1 no text output is generated
%
% Example:
%
% [ABCDKRAUX] = subid(yu102);
% for k=3:6
% [ABCD] = subid(yu10kAUX);
% end
%
% Reference:
%
% Subspace Identification for Linear Systems
% Theory - Implementation - Applications
% Peter Van Overschee / Bart De Moor
% Kluwer Academic Publishers 1996
% Stochastic algorithm: Figure 3.13 page 90 (positive)
% Combined algorithm: Figure 4.8 page 131 (robust)
%
% Copyright:
%
% Peter Van Overschee December 1995
% peter.vanoverschee@esat.kuleuven.ac.be
%
%
function [ABCDKRoAUXss] = subid(yuinAUXinWsil);
if (nargin < 7);sil = 0;end
mydisp(sil‘ ‘);
mydisp(sil‘ Subspace Identification‘);
mydisp(sil‘ -----------------------‘);
% Check the arguments
if (nargin < 3);error(‘subid needs at least three arguments‘);end
if (nargin < 4);n = [];end
if (nargin < 5);AUXin = [];end
% Check if its deterministic or stochastic ID
if (u == []); ds_flag = 2; % Stochastic
else; ds_flag = 1; % Deterministic
end
% Give W its default value
if (nargin < 6);W = [];end
if (W == [])
if (ds_flag == 1); W = ‘SV‘; % Deterministic: default to SV
else; W = ‘CVA‘;end % Stochastic: default to CVA
end
% Turn the data into row vectors and c
相关资源
- 阵列天线的matlab仿真
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
- k近邻算法matlab实现
- matlab识别系统
- 神经网络分类matlab程序
- matlab正弦信号发生器的设计
评论
共有 条评论