simulink仿真实验心得体会Word格式文档下载.docx
- 文档编号:14223025
- 上传时间:2022-10-20
- 格式:DOCX
- 页数:5
- 大小:19.30KB
simulink仿真实验心得体会Word格式文档下载.docx
《simulink仿真实验心得体会Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《simulink仿真实验心得体会Word格式文档下载.docx(5页珍藏版)》请在冰豆网上搜索。
但是第一次遇到问的时候是有关极化坐标下的曲线拟合。
首先是一个物理实验的问题;
在做一个关于光的偏振的实验的时候,最后的结果要在一个极化坐标下显示出来;
因为数据是离散的,所以显示出来的图像是一个折来折去的一个东东;
然后很自然的想法是对这个曲线进行插值处理。
但是极化坐标下matlab并未提供插值处理的函数,interp1这个函数只能在笛卡尔坐标系,也就是直角坐标系下使用。
然后就想到把极坐标的数据转换的直角坐标系下,pol2cart可以实现这个想法,但是随后而来,也就是最后导致整个问题失败的关键也在这里。
pol2cart以后产生的一串数据中出现了重复的数据,那么interp1这个东西也就无能为力了,因为interp1不能处理一串数据中有重复出现的情况。
最后的处理办法是把这些数据cos,sin这些东西变换一下后,使其大致规则,然后再用polar
画出极坐标下的图形。
接下来这个问题就有点超过我的范围了,可能会有点叙述不清楚。
问题可以概要为:
人脸网格插值。
这是一个用三角形网格表示的一个人脸模型。
需要通过插值使其变得光滑,当然问题的复杂之处在于,插值会改变原本的网格结构。
对于这个问题许多人都给出了解决的办法,当然是一些关于人脸识别技术和运动图像处理的范畴之内的。
主要有两种,第一种是face—ls算法。
这种算法是基于RbF(径向插值函数)和loop细分原则的一种算法,当然其精确程度比较差点。
但是速度挺好。
原理是:
基于网格上的点,产生出顶点的迭代函数,从而产生出新的定点,进行细化。
然后进行插值。
也就是引进新的顶点。
分为两个过程内部插值和边缘插值。
具体可以去看兰州大学信息工程学院的学报。
第二种也就是基本的老办法RbF。
首先解释一下什么叫做径向插值径向基函数
主要是考虑多维空间的数据插值问题,径向基函数在三维图形的变形中常常被采用,用其来变分三维人脸的时候还应结合人脸的固有特征。
确定该方法来实现三维人脸变形是可行的,但要构造好的基函数,以及解这些高维方程的解仍是难点。
插值方法:
假设大多数人脸的形状都可以由一个拓扑原型变化得来,那么,通过调整一个一般模型的构造参数可以建立不同的面部模型。
但是,这种参数模型仅仅局限于那些构造参数已知的情况,并且对特定人脸参数的调整非常困难。
在离散数据的多变量插值问题方面,径向基函数(radialbasisfunction,RbF)插值方法是一个行之有效的工具,所以也适用于类似人脸这样高维曲面的近似或平滑插值。
现有的许多方法使用了基于RbF的插值技术,将一般人脸网格变化到特定人脸的形状。
这种方法的优点在于:
(1)通过插值可以得到丢失的数据点,所以源网格和目标网格不需要相同数目的结点;
(2)如果选择了合适的匹配点,数学上可以保证能够将源网格变形到目标网格。
当然我也不是很懂,只是理解了部分。
这种方法的关键是找到一个很好的核函数来计算出新的顶点。
最后问题解决的方式是查着了一些图书馆的学报。
然后而且在网上找到了部分代码。
然后做出来的。
这是我校大四一个同学毕设中的一个东西。
其实这个事件最好的解决办法是在3d-max中,不过因为没能找到matlab与3d-max是怎么接口的,所以作罢了。
第三次遇到的问题是我在数学建模课上遇到的一个关于矩阵lu分解的问题:
matlab作出的结果和手算的结果竟然不一样。
1011
1u=一个矩阵a=经过三角分解为l=0111
因为1/为一个极大数则1—1/可以看成—1/;
设=0.000000000000000000000001%10的负24次方
从而l*u=
则最后一位1没有了变成了0
其中l=
u=
matlab程序为
epusino=0.000000000000000000000001;
u=[epusino1;
0-1/epusino];
l=[10;
1/epusino1];
l*uans=
0.0000000000000001.0000000000000001.0000000000000000
而直接用lu函数对矩阵a分解的结果为a=[epusino1;
11]a=
0.00001.00001.00001.0000
>
>
[l,u]=lu(a)l=
0.00001.00001.00000u=
1101
我们老师当时的解释是这是由于我们所用matlab是破解版的缘故,破解版的计算精度没正版的高所以导致运算结果的错误,后来我看了一些lu这个函数的help文档psychologicallylowertriangularmatrix"
(i.e.aproductoflowertriangularandpermutationmatrices)inl。
翻译过来是l是一个心理上的下三角矩阵,其实是下三角矩阵和置换矩阵也就是最后的结论。
p*a=l*u.。
由此可见这并不是什么精度的问题导致的结果只是lu分解的矩阵意义和书本上的不同而已。
以下是我自己写的一些程序的代码
1:
网络随机拓扑图
目的是要生成一个度数随机、权值随机的拓扑图。
首先的理解是利用邻接矩阵,先随机生成一个矩阵,该矩阵为一个对称矩阵。
然后画出这个矩阵就行了。
随机拓扑图
%产生数组a用来存放表示两点之间权值的矩阵a,也就是临接矩阵,那么两点之间权值不为零元素的个数即为该点的度数
deF=5;
%设定一个东东方便改变随机点的个数a=rand(deF,deF);
%产生deF*deF的随机矩阵fori=1:
deF
a(i,i)=0%将对角线上的数置为0enda=10*a;
a=floor(a);
%向下去整fori=1:
deFforj=1:
i
a(j,i)=a(i,j)%将a矩阵变为一个上三角或者下三角矩阵endend
x=100*rand(1,deF);
y=100*rand(1,deF);
%产生10个随机的点plot(x,y,r+);
fori=1:
a=find(a(i,:
)>
0)%将a矩阵每行大于0的数的在该行的地址找出来放在a中
forj=1:
length(a)
c=num2str(a(i,j));
%将a中的权值转化为字符型
ifc~=0%不显示为0的值因为a矩阵为零代表两点不相连
篇二:
matlab中simu(simulink仿真实验心得体会)link的仿真实验报告
simulink的仿真实验报告
1.实验目的:
熟悉使用simulink的各种使用方法及仿真系统
2.数学建模:
假设系统的微分方程为:
r(t)+3r(t)+2r(t)=e(t),其中e(t)=u(t)求该系统的零状态响应
令等式右边为零,则可求得方程的两个特征根为:
r1=-1,r2=-2
所以设该系统的零状态响应为:
r(t)=ae^-t+be^-2t+c
其中c为方程的一个特解,由微分方程可知,等式右边没有冲激函数及冲激函数的微分,故系统在零负到零正的过程中没有发生跳变,则c为一个常数。
将c带入方程可解得c=1/2
由于零状态响应时系统的初值都为零即r(0-)=0,r(0-)=0,且系统无跳变,则r(0+)=0.r(0+)=0.带入r(t)得:
a+b+1/2=0
-a-2b+1/2=0
解得:
a=-3/2b=1
所以系统的零状态响应为:
r(t)=-3/2e^-t+e^-2t+1/2simulink仿真:
根据系统的微分方程可编辑仿真模型如下图
打开开始按键,可以得到波形图:
验证仿真结果:
由前面得到的系统零状态响应结果:
r(t)=-3/2e^-t+e^-2t+1/2
可编辑仿真模型:
t=(0:
0.1:
10);
plot(t,((-3)/2)*exp((-1)*t)+exp((-2)*t)+1/2)
实验结论:
simulink仿真结果和函数仿真结果基本一致,所以simulink仿真是正确的。
实验心得:
1.此实验是利用matlab对一个微分方程进行建模求解,既要求我们掌握对微分方程的求解,又要求掌握用matlab对微分方程进行建模,所以要求我们对软件得熟悉。
2.信号与系统的实验主要是用matlab分析或验证书上的东西,前提当然是学好书本上的知识,再学好matlab这个软件。
3.用simulink仿真的时候,对函数用积分器较好,不知为什么用微分器做不出来,报错显示不出图形。
篇三:
simulink仿真实验
simulink仿真
二阶微分方程的求解
专业:
信息
姓名:
王钢明1031020xx8姓名:
王某某1031020xx4姓名:
何正长1031020217指导老师:
刘老师
日期:
20xx—12—25
题目:
二阶微分方程的求解
一、实验目的
1、熟悉simulink基本用法。
2、了解simulink的一些模块的意义。
3、掌握模块的选取、复制、删除操作。
4、学会simulink模块的连接以及模块参数的设置。
二、实验仪器
1、计算机
2、matlab软件环境
三、实验内容
(t)0.9x(t)0.7u(t)的方程解,其中u(t)是脉冲信号。
1、求解二阶微分方程x(t)0.4x
需要使用simulink求解x(t)。
(t)0.4x(t)0.2u(t),其中u(t)是脉冲信号。
需要使2、求解二阶微分方程x(t)0.2x
用simulink求解x(t)。
x(0)1,(t)0.8x(t)0.9u(t)的解x(t);
其中初值为3、求解二阶微分方程x(t)0.5x
(0)3x
并且u(t)cos(t)是一个余弦信号。
四、实验过程
1、求解二阶微分方程其中u(t)是x(t)0.4x(t)0.9x(t)0.7u(t)的方程解,
脉冲信号。
需要使用simulink求解x(t)。
1.1)用mat
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- simulink 仿真 实验 心得体会