资源描述:
《系统辨识实验报告1》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、系统辨识实验报告学院:信息科学与技术学院专业:自动化日期:2016/4/26目录实验14一.实验内容及要求:4二.实验原理:4三.软件设计思想:4四.程序结构框图:5五.运行示意图:5实验28一.实验内容及要求:8二.实验原理:8三.软件设计思想:9四.程序设计框图:9五.程序运行流程图:10实验312一.实验内容及要求:12二.实验原理:12三.程序数据流程图:12四.实验运行结果:13实验414一.实验内容及要求:14二.实验原理:14三.数据递推关系图:14四.实验运行结果:15心得体会16附录(实验代码)171.LabWork1172.LabWork2213.LabW
2、ork3234.LabWork426实验1一.实验内容及要求:1.编出矩阵A与B相乘得到的矩阵R的运算计算机程序要求:(1)A和B的维数及数值可通过键盘及数据文件输入(2)计算结果R可由屏幕及文件输出2.将1改写为子程序3.查找有关的资料,读懂及调通矩阵求逆程序,并改写为子程序。二.实验原理:1.两个矩阵A、B相乘得到C矩阵,首先要满足的条件是A的列数与B行数相等,否则不能相乘。当满足条件后,根据C(i,k)=Ai,j*B(j,k)可以求得C矩阵。2.当求矩阵的逆时,首先要判断其是否为方阵,若是则可以对其进行下一步的操作。本次实验中求逆主要是通过构造一个增广矩阵(FangZ
3、
4、E)矩阵的初等行变换得到(E
5、FZNi)的这样的一个矩阵就可以求得矩阵的逆。若矩阵FangZ不是满秩矩阵时,FangZ没有FZNi。通过这样的求逆方式,避免了大方阵的求取行列式运算。三.软件设计思想:1.确定该软件的功能主要有:键盘输入两个矩阵然后相乘;文本data输入两个矩阵将结果放在文本result中;键盘输入一个方阵求得其逆矩阵。其中前两个的矩阵相乘运算部分设置为一个函数Mul。2.在main函数中提供两个关于矩阵的选择:multiplitation;invertion。其相对应的子函数为MulOp(a,b,c),Inv()。3.在MulOp(a,b,c)子函数中,有两
6、种输入矩阵的方式:way1,way2。相对应的功能为键盘输入,文本输入。并且两者在处理矩阵时,都调用了Mul函数。4.在Inv()子函数中,输入和显示原矩阵,和其相应的逆矩阵。调用qiuni(doubleFangZ[][M],doubleFZNi[][M],intn)子函数,可以都得到原矩阵的逆矩阵。但当原矩阵不可逆时,系统输出为”Thearrayisnotinvertible!“。四.程序结构框图:way1键盘输入矩阵Mul矩阵乘积子函数MulOp子函数矩阵乘积way2文本输入矩阵main函数Inv子函数矩阵求逆qiuni子函数退出程序五.运行示意图:1.main函数的主界
7、面:2.MulOp子函数的界面:1.Inv子函数的界面:2.通过键盘操作计算两个矩阵的乘积:3.求方阵的逆矩阵:实验2一.实验内容及要求:编写并调试动态模型仿真程序:模型:y(k)-1.5y(k-1)+0.7y(k-2)=u(k-1)+0.5u(k-2)+v(k)已知:白噪声{v(k)}数据文件为DV,数据长度为L=500要求:(1)产生长度为L的M序列数据文件DU(2)产生长度为L的模型输出数据文件DY二.实验原理:由于在现实中,白噪声序列很难求,所以寻找到M序列在一定程度上可以代替白色噪声序列。由L=500,所以n=9。根据M序列的特征方程:fx=c0+c1*x+c2*x
8、2+…+cnx^n可知9阶移位寄存器的多项式为fx=x9+x4+1,及可得c=[0,0,0,1,0,0,0,0,1]9级线性移位寄存器:+++C8C1C0输出a0a1a8a7图中Ci表示反馈的两种可能连接方式,Ci=1表示连线接通,第9-i级加入反馈中;Ci=0表示连线断开,第9-i级未参加反馈。系统产生M序列的结构流程图:初始化寄存器a=[1,1,0,0,0,1,0,1,0]移位寄存器c=[0,0,0,1,0,0,0,0,1]M序列的长度为L=500i=1Y输出M序列i9、.该软件的主要功能是:产生M序列赋给u(k)保存在DU.txt文件中;由u(k)和v(k)求得y(k)保存在DY.txt文件中。2.在main函数中给出3个选择:求u(k);求y(k);退出程序。其相对应的函数名称为gener,ouput,exit。3.在gener子函数中产生M序列u(k)保存到DU.txt文本文件中。4.在output子函数中,通过对input子函数(读入v(k),u(k)的数据)、deal子函数(由公式y(k)-1.5y(k-1)+0.7y(k-2)=u(k-1)+0.5u(k-2