基于MATLAB的圆度评定方法_周剑平

基于MATLAB的圆度评定方法_周剑平
基于MATLAB的圆度评定方法_周剑平

基于M AT LAB 的圆度评定方法

The Method o f Roundness Assessment Based on MATLAB

周剑平

(黄石理工学院机械与动力工程系,湖北黄石435003)

摘 要:本文利用M ATLAB 优化工具箱,采用最小区域圆法、最小二乘圆法、最小外接圆法和最大内接圆法进行圆度的评定。并给出了 参考程序和运行结果。

关键词:圆度;优化;最小区域圆;最小二乘圆;最小外接圆;最大内接圆;M ATLAB

在GB7234-875圆度测量术语、定义及参数6中,圆度误差的评定方法有:最小区域圆法、最小二乘圆法、最小外接圆法和最大内接圆法。用最小区域圆评定准则所评定的圆度误差值为最小,且具有唯一性;最小二乘圆评定准则所评定的圆度误差值也具有唯一性,但数值不是最小;其它两种准则在我国应用较少,我国标准规定圆度误差必须按最小区域圆评定准则进行评定。在技术条件允许的情况下,也可应用最小二乘圆评定准则予以评定。如果这些问题用其它高级语言(如:VC,VB,FORTRAM 等)求解,不但相应的计算程序编制的难度较大,而且很容易出错。M atlab 拥有强大的科学计算及数据处理能力,600多个数学运算函数,可以方便地实现各种计算功能,本文利用MAT LAB 提供的优化工具箱,轻松地完成圆度评定工作。1 圆度评定数学模型1.1

最小区域圆法

图1 最小条件圆心和圆度值

在进行形状误差评定时,必须遵循国家标准GB1598-805形状和位置公差)检测规定6中提出的/最小条件原则0,即评定时被测要素

相对其理想要素的最大变动量应为最小。采用基于/最小条件原则0的最小区域法评定圆度误差的方法如下:如图1所示,o 是实际轮廓图形的坐标原点,P i (x i ,y i )(i =1,2,,,n)为n 个测得的点坐标值,o c 为最小条件圆心,其坐标为(a,b),令目标函数F (a,b )

F (a,b )=R m ax -R mi n =(x m ax -a)2+(y m ax -b)2-(x mi n -a)2

+(y mi n -b)

2

(1)

式中:R m ax :R min ;从(a,b )点到轮廓最远和最近被测点的半径;x max ,y m ax :和R max 相对应的坐标;x min ,y min :和R m i n 相对应的坐标。

式(1)的含义是包容实际轮廓两同心圆A 和B 的半径差。当用优化方法求得F (a ,b )的最小值F m i n 时,则(a,b )就是满足最小条件的最小区域圆的圆心坐标值,而F m i n 就是最小区域圆度误差值。1.2 最小二乘圆法

图2 最小二乘圆心和半径

最小二乘圆评定法的目标函数可由图2建立。图中o 点为实际轮廓图形的坐标原点,o c 、R 为最小二乘圆的圆心和半径,P i (x i ,y i )(i =1,2,,,n)为n 个测得的点坐标值,令目标函数F(a,b,R )

F(a ,b,R )=E n

i =1

(R i -R )2

=E n

i =1

((x i -a )2+(y i -b )2-R )2

(2)

式(2)的含义是实际轮廓各测点到最小二乘圆距离的平方和为最小。当用优化方法求得F (a,b,R )的最小值时,则(a,b )就是满足最小条件的最小二乘圆的圆心坐标值,从最小二乘圆心作包容实际轮廓的两同心圆,则两同心圆的半径差f 就是最小二乘圆度误差值。1.3 最小外接圆法和最小内切圆法

仿照上面的分析方法,可以得到最小外接圆法和最小内切圆法的目标函数分别为式(3)和式(4)所示。

F(a ,b)=r max =

(x max -a)2

+(y max -b)

2(3)

F(a ,b)=r m i m =(x min -a)2+(y min -b)2

(4)当用优化方法求得式(3)中F(a,b )的最小值时,则(a,b )就是满足最小条件的最小外接圆的圆心坐标值,则最小外接圆的圆度误差值f 为

f =R max -R m i n

R max ,R min 是从最小外接圆心到最远和最近被测点

周剑平:基于M AT L AB 的圆度评定方法

5

的半径。当用优化方法求得式(4)中F(a,b)的最大值时,则(a,b)就是满足最小条件的最大内切圆的圆心坐标值,则最大内切圆的圆度误差值f为

f=R m ax-R min

R m ax,R min是从最大内切圆心到最远和最近被测点的半径。

2用M atlab求解

M atlab6.0的优化工具箱(Optim ization Toolbox)中含有一系列的优化算法函数,可以用于解决以下工程实际问题:

(1)求解无约束条件非线性极小值;

(2)求解约束条件非线性极小值,包括目标逼近问题、极大-极小值问题,以及半无限极小值问题;

(3)求解二次规划和线性规划问题;

(4)非线性最小二乘逼迫和曲线拟合;

(5)非线性系统的方程求解;

(6)约束条件下的线性最小二乘优化;

(7)求解复杂结构的大规模优化问题。

本类问题可属于求解无约束条件非线性极小值以及非线性最小二乘逼迫和曲线拟合问题。只要正确地建立问题的数学模型,调用相应的函数,即可求得结果,无需编写求解的程序,因此,求解过程非常简单。

用于求解无约束条件非线性极小值的函数有:fmin-serch和fm inunc,本文用的是fminun,用法介绍如下: [x,fval,exitflag,output]=fminun(fun,x0,options)

x:最优解

fun:是目标函数;

x0:初始解;

options:设置优化选项参数;

fval:返回目标函数在最优解x点的函数值;

exitflag:返回算法终止标志;

output:返回优化算法信息的一个数据结构。

3应用实例

已知实际测量结果如下:

x=[49.9996,47.5512,40.4510,29.3894,15.4505,0.0000, -15.4512,-29.3892,-40.4511,-47.5530,-49.9998,

-47.5535,-40.4504,-29.3905,-15.4508,-0.0000,

15.4512,29.3893,40.4508,47.5520];

y=[0.0000,15.4503,29.3893,40.4511,47.5517,50.0012, 47.5540,40.4508,29.3895,15.4509,0.0000,-15.4511,

-29.3889,-40.4526,-47.5527,-50.0001,-47.5538,

-40.4509,-29.3892,-15.4506];

试用最小区域圆法、最小二乘圆法、最小外接圆法和最大内接圆法进行圆度的评定

3.1最小区域圆法

按式(1)构造目标函数,并编写F(a,b)的.m文件如下:

function z=m yfun1(x)

m=[49.9996,47.5512,40.4510,29.3894,15.4505,0.0000, -15.4512,-29.3892,-40.4511,-47.5530,-49.9998,

-47.5535,-40.4504,-29.3905,-15.4508,-0.0000,

15.4512,29.3893,40.4508,47.5520];

n=[0.0000,15.4503,29.3893,40.4511,47.5517,50.0012, 47.5540,40.4508,29.3895,15.4509,0.0000,-15.4511,

-29.3889,-40.4526,-47.5527,-50.0001,-47.5538,

-40.4509,-29.3892,-15.4506;

r max=-1000;

r min=1000;

for k=1:20

r(k)=sqrt((m(k)-x(1)).^2+(n(k)-x (2)).^2)

if r(k)>r max

r max=r(k)

end

if r(k)

r m i n=r(k)

end

end

z=r m ax-r min

然后调用函数fminunc:

x0=[0,0];

[x,fval,exitflag,output]=fm inunc(@myfun1, x0)

运行结果如下:

x=1.0e-003*-0.4572-0.3729

fval=0.0027

output=iterations:39

funcCount:202

stepsize: 6.7061e-011

firstorderopt:0.8090

algorithm:c medium-scale:Quasi-New ton line search c

这里,M atlab采用拟牛顿法优化,迭代次数是39次。最小区域圆的圆心坐标是(-0.4572,-0.3729) * 1.0e-003,最小区域圆的圆度误差为0.0027。与三坐标测量仪结果一致,但圆心坐标不一样。根据定义,最小区域圆的圆度误差值是最小的,且是唯一的。可见,误差值唯一,但圆心坐标并不唯一。

3.2其余三种评定方法

其余三种评定方法只是分别按式(2)、(3)、(4)构造

65计量与测试技术62005年第32卷第2期

的目标函数,调用函数fm inunc 就可得到相应的圆度误差值。

3.2.1 最小二乘圆法

function z=m yfun2(x)sqsum=0for k=1:20

r(k)=(sqrt ((m (k)-x (1)).^2+(n (k)-x (2)).^2)-x(3)).^2

sqsum =sqsum+r(k)

end

最小二乘圆圆心坐标为(-4.6568e-004,-1.0896e -004),半径为50.0001,圆度误差为0.0031。与三坐标测量仪结论一致,但圆心坐标不一样。根据定义,最小二乘圆的圆度误差值不是最小的,但是唯一的。可见,误差值唯一,但圆心坐标并不唯一。3.2.2 最小外接圆法

function z=m yfun3(x)z=-1000

for k=1:20

r (k)=sqrt((m (k )-x (1)).^2+(n(k)-x (2)).^2)

if r(k)>z z=r(k) end end

最小外接圆圆心坐标为(-0.0013,-0.0001),圆度误差为0.0030。与三坐标测量仪结论一致。

3.2.3 最大内切圆法

function z=m yfun4(x)

z=1000for k=1:20

r (k)=sqrt ((m (k)-x (1)).^2+(n (k)-x (2)).^2)

if r(k)

最大内切圆圆心坐标为(-0.0010,0.0004),圆度误差为0.0031。三坐标测量仪为0.0029。4 结论

利用Matlab 优化工具箱进行圆度评定,简单易行,还可以利用M atlab 的图形功能实现可视化。笔者开发了圆度评定的软件,用户只要输入测点的数据,选择评定方法,就可得到圆度误差值,并显示类似图1、2的误差图形。

参考文献

[1]黄福芸,廖念钊,卓兴仁等.形状误差测量[M ].北京:中国计量出版社,1987.

[2]飞思科技产品研发中心.M AT LAB6.0辅助优化计算与设计[M ].北京:电子工业出版社,2003.

[3]袁亚湘,孙文瑜.最优化理论与方法[M ].北京:科学出版社,1997.作者简介:周剑平,女,讲师,研究方向:机电一体化、技术测量。工作单位:黄石理工学院机械与动力工程系。通讯地址:435003湖北省黄石市。收稿时间:2005-01-14

(上接第4页)(3)尾架主轴为被动轴,由一对向心球轴承支承,主轴右端装有进口西班牙FAGR 公司高精度圆光栅编码器,尾架可在水平面内旋转90度,满足输入和输出相互垂直谐波减速器的测量,尾架结构如图3

所示。

图3 尾架

3 谐波减速器传动链误差测量仪控制系统

控制系统可分为旋转输入的交流伺服控制和计算机对瞬时输入转角和瞬时输出转角的数据连续采样处理。测量仪控制系统选用西班牙FAGR101S 控制系统与配套单元,配备高精度圆光栅编码器,实现了闭环控制与比较测量,选用了品牌商用计算机作自动采样与数据处理,配备了打印机,可方便打印出测量结果报告单。4 结束语

谐波减速器传动链误差自动测量仪,集现代测量技术于一身,并设计开发有成套的测量专业软件和人性化操作界面,基本实现了智能化测量,测量效率比原来提高10倍以上,测量精度小于?10d 。

作者简介:严金榜,男,工程师,咸阳机床厂总质量师,主要从事新产品设计研发和质量管理工作。工作单位:咸阳机床厂。通讯地址:712000陕西省咸阳市文汇西路12号。

收稿时间:2004-12-15

周剑平:基于M AT L AB 的圆度评定方法

7

常用相关分析方法及其计算

二、常用相关分析方法及其计算 在教育与心理研究实践中,常用的相关分析方法有积差相关法、等级相关法、质量相关法,分述如下。 (一)积差相关系数 1. 积差相关系数又称积矩相关系数,是英国统计学家皮尔逊(Pearson )提出的一种计算相关系数的方法,故也称皮尔逊相关。这是一种求直线相关的基本方法。 积差相关系数记作XY r ,其计算公式为 ∑∑∑===----= n i i n i i n i i i XY Y y X x Y y X x r 1 2 1 2 1 ) ()() )(( (2-20) 式中i x 、i y 、X 、Y 、n 的意义均同前所述。 若记X x x i -=,Y y y i -=,则(2-20)式成为 Y X XY S nS xy r ∑= (2-21) 式中n xy ∑称为协方差,n xy ∑的绝对值大小直观地反映了两列变量的一致性程 度。然而,由于X 变量与Y 变量具有不同测量单位,不能直接用它们的协方差 n xy ∑来表示两列变量的一致性,所以将各变量的离均差分别用各自的标准差 除,使之成为没有实际单位的标准分数,然后再求其协方差。即: ∑∑?= = )()(1Y X Y X XY S y S x n S nS xy r

Y X Z Z n ∑?= 1 (2-22) 这样,两列具有不同测两单位的变量的一致性就可以测量计算。 计算积差相关系数要求变量符合以下条件:(1)两列变量都是等距的或等比的测量数据;(2)两列变量所来自的总体必须是正态的或近似正态的对称单峰分布;(3)两列变量必须具备一一对应关系。 2. 积差相关系数的计算 利用公式 (2-20)计算相关系数,应先求两列变量各自的平均数与标准差,再求离中差的乘积之和。在统计实践中,为方便使用数据库的数据格式,并利于计算机计算,一般会将(2-20)式改写为利用原始数据直接计算XY r 的公式。即: ∑∑∑∑∑∑∑---= 2 22 2 ) () (i i i i i i i i XY y y n x x n y x y x n r (2-23) (二)等级相关 在教育与心理研究实践中,只要条件许可,人们都乐于使用积差相关系数来度量两列变量之间的相关程度,但有时我们得到的数据不能满足积差相关系数的计算条件,此时就应使用其他相关系数。 等级相关也是一种相关分析方法。当测量得到的数据不是等距或等比数据,而是具有等级顺序的测量数据,或者得到的数据是等距或等比的测量数据,但其所来自的总体分布不是正态的,出现上述两种情况中的任何一种,都不能计算积差相关系数。这时要求两列变量或多列变量的相关,就要用等级相关的方法。 1. 斯皮尔曼(Spearman)等级相关 斯皮尔曼等级相关系数用R r 表示,它适用于两列具有等级顺序的测量数据,或总体为非正态的等距、等比数据。

matlab工具箱

至于工具箱的安装说明参见: https://www.360docs.net/doc/5113888995.html,/viewthread.php?tid=120&page=1&fromuid=4481#p id123 Maplesoft《Maple Toolbox for MATLAB》 https://www.360docs.net/doc/5113888995.html,/thread-236-1-1.html Sergiy Iglin《Graph Theory Toolbox》(图论工具 箱)https://www.360docs.net/doc/5113888995.html,/thread-295-1-1.html Koert Kuipers《Branch And Bound toolbox 2.0》(BNB20分支定界工具 箱)https://www.360docs.net/doc/5113888995.html,/thread-226-1-1.html Howard Wilson《Numerical Integration Toolbox》(NIT数值积分工具 箱)https://www.360docs.net/doc/5113888995.html,/thread-225-1-1.html Anton Zaicenco《FEM toolbox for solid mechanics》(固体力学有限元工具箱)https://www.360docs.net/doc/5113888995.html,/thread-219-1-1.html Nicholas J. Higham《The Matrix Computation Toolbox》(矩阵计算工具箱) https://www.360docs.net/doc/5113888995.html,/thread-422-1-1.html Paolo Di Prodi《robotic toolbox》(机器人工具 箱)https://www.360docs.net/doc/5113888995.html,/thread-274-1-1.html Moein Mehrtash《GPS Navigation Toolbox 》(GPS导航工具箱) https://www.360docs.net/doc/5113888995.html,/thread-228-1-1.html J.Divahar 《Airfoil_Analyzer_toolbox》(翼型分析工具箱) https://www.360docs.net/doc/5113888995.html,/thread-218-1-1.html Rasmus Anthin《Multivariable Calculus Toolbox 》(多变量微积分工具 箱)https://www.360docs.net/doc/5113888995.html,/thread-251-1-1.html 《Time frequency analysis toolbox》(时频分析工具 箱)https://www.360docs.net/doc/5113888995.html,/thread-439-1-1.html

Matlab频谱分析程序

Matlab频谱分析程序

Matlab 信号处理工具箱 谱估计专题 频谱分析 Spectral estimation (谱估计)的目标是基于一个有限的数据集合描述一个信号的功率(在频率上的)分布。功率谱估计在很多场合下都是有用的,包括对宽带噪声湮没下的信号的检测。 从数学上看,一个平稳随机过程n x 的power spectrum (功率谱)和correlation sequence (相关序列)通过discrete-time Fourier transform (离散时间傅立叶变换)构成联系。从normalized frequency (归一化角频率)角度看,有下式 ()()j m xx xx m S R m e ωω∞ -=-∞ = ∑ 注:()() 2 xx S X ωω=,其中 ()/2 /2 lim N j n n N N X x e N ωω=-=∑ πωπ -<≤。 其matlab 近似为X=fft(x,N)/sqrt(N),在下文中()L X f 就是指matlab fft 函数的计算结果了 使用关系2/s f f ωπ=可以写成物理频率f 的函数,

其中s f 是采样频率 ()()2/s jfm f xx xx m S f R m e π∞ -=-∞ = ∑ 相关序列可以从功率谱用IDFT 变换求得: ()()()/2 2//2 2s s s f jfm f j m xx xx xx s f S e S f e R m d df f πωππ ωωπ- -= =?? 序列n x 在整个Nyquist 间隔上的平均功率可以 表示为 ()()() /2 /2 02s s f xx xx xx s f S S f R d df f ππ ωωπ- -= =?? 上式中的 ()()2xx xx S P ωωπ = 以及()()xx xx s S f P f f = 被定义为平稳随机信号n x 的power spectral density (PSD)(功率谱密度) 一个信号在频带[]1 2 1 2 ,,0ωωωω π ≤<≤上的平均功率 可以通过对PSD 在频带上积分求出 []()()2 1 121 2 ,xx xx P P d P d ωωωωωω ωωωω-- = +?? 从上式中可以看出()xx P ω是一个信号在一个无 穷小频带上的功率浓度,这也是为什么它叫做功率谱密度。

matlab工具箱如何安装

matlab工具箱如何安装 在matlab的file下面的set path把它加上,把路径加进去后在: file→Preferences→General的Toolbox Path Caching里点击update Toolbox Path Cache更新一下。 以下是我在别的地方看到的,转过来你参考一下吧。 首先说说添加到matlab搜索路径好处:1 对n——你只需要存储一个副本,就可以在其他地方使用。具体来说,假设你在数据盘D上新建了两个目录abc和def,这两个工程(每个目录下的所有程序相应地称为一个工程)都需要调用同一个(些)函数(简称工具箱),这时候,如果你没有把该工具箱添加到matlab 的搜索路径下,则需要分别把工具箱中所有用到的文件都复制到目录abc和def下才能正确运行。这显然浪费空间,所以,matlab提供了一个搜索路径(默认在matlab安装目录下的toolbox中),只要把工具箱对应的整个文件夹复制到搜索路径对应的目录下,并且通知matlab一声(把该路径正确添加到搜索路径中),就可以在abc和def中使用这个工具箱了(即无论你的工程文件在哪个目录(有效的目录)下都可以访问这个工具箱中的函数)。下面就以matlab安装目录下的toolbox目录作为默认的添加路径进行详细说明。 1. 如何添加工具箱? 以下是添加工具箱的方法: 如果是Matlab安装光盘上的工具箱,重新执行安装程序,选中即可。如果是单独下载的工具箱,则需要把新的工具箱(以下假设工具箱名字为svm)解压到toolbox目录下,然后用addpath或者pathtool 把该工具箱的路径添加到matlab的搜索路径中,最后用which newtoolbox_command.m来检验是否可以访问。如果能够显示新设置的路径,则表明该工具箱可以使用了。具体请看工具箱自己代的README 文件。 1.1 举例: 要添加的工具箱为svm,则解压后,里边有一个目录svm,假设matlab安装在D:\MATLAB6p5,将svm目录拷贝至D:\MATLAB6p5\toolbox,然后运行matlab,在命令窗口输入addpath D:\MATLAB6p5\toolbox\svm回车,来添加路径。然后在svm目录下,任意找一个m文件,以svcinfo.m 为例,在命令窗口中输入which svcinfo.m。如果显示出该文件路径,如D:\MATLAB6p5\toolbox\svm\svcinfo.m,则安装成功,当然也可以在命令窗口输入path来查看。 上面的说明和例子基本上介绍了在matlab中如何添加工具箱,下面是其他补充: 1.2 添加方式总结: 事实上,有两种添加工具箱到matlab搜索路径的方法:其一是用代码,其二是用界面。其实无论用哪种方法,都是修改pathdef.m这个文件,阁下如果是高手,可以直接打开该文件修改,呵呵,对此这里不作讨论。 1.2.1 代码方式: 适用于添加下载的工具箱(别人的): 在命令窗口输入addpath D:\MATLAB6p5\toolbox\svm 或者addpath(‘D:\MATLAB6p5\toolbox\svm’); 但是这种方法只能添加svm目录,如果该目录下有其他子文件夹,并且运行时候“隐式”调用到这些子文件夹(例如假设svm目录下存在子文件夹matdata,该子文件夹下有logo.mat这个文件,且在m文件代码中使用了诸如load logo 这样的句子,即没有显式给出logo.mat的具体路径,则称为“隐式”),则不能正确访问。因此,有必要在添加时使用以下语句把svm目录下所有文件夹都添加到搜索路径中:500){this.resized=true;;}"> 程序代码 addpath(genpath(D:\MATLAB6p5\toolbox\svm)); 另外,如果只使用以上代码,则退出matlab后,新添加的路径不会被保存下来,下次重新启动matlab

最新matlab优化工具箱介绍

m a t l a b优化工具箱介 绍

matlab优化工具箱介绍 分类: Matlab2007-11-03 20:27 6405人阅读评论(0) 收藏举报在生活和工作中,人们对于同一个问题往往会提出多个解决方案,并通过各方面的论证从中提取最佳方案。最优化方法就是专门研究如何从多个方案中科学合理地提取出最佳方案的科学。由于优化问题无所不在,目前最优化方法的应用和研究已经深入到了生产和科研的各个领域,如土木工程、机械工程、化学工程、运输调度、生产控制、经济规划、经济管理等,并取得了显著的经济效益和社会效益。 用最优化方法解决最优化问题的技术称为最优化技术,它包含两个方面的内容: 1)建立数学模型即用数学语言来描述最优化问题。模型中的数学关系式反映了最优化问题所要达到的目标和各种约束条件。 2)数学求解数学模型建好以后,选择合理的最优化方法进行求解。 最优化方法的发展很快,现在已经包含有多个分支,如线性规划、整数规划、非线性规划、动态规划、多目标规划等。 9.1 概述 利用Matlab的优化工具箱,可以求解线性规划、非线性规划和多目标规划问题。具体而言,包括线性、非线性最小化,最大最小化,二次规划,半无限问题,线性、非线性方程(组)的求解,线性、非线性的最小二乘问题。另外,该工具箱还提供了线性、非线性最小化,方程求解,曲线拟合,二次规划等问

5.大型方法的演示函数

9.1.3 参数设置 利用optimset函数,可以创建和编辑参数结构;利用optimget函数,可以获得options优化参数。 ● optimget函数 功能:获得options优化参数。 语法: val = optimget(options,'param') val = optimget(options,'param',default) 描述: val = optimget(options,'param') 返回优化参数options中指定的参数的 值。只需要用参数开头的字母来定义参数就行了。 val = optimget(options,'param',default) 若options结构参数中没有定义 指定参数,则返回缺省值。注意,这种形式的函数主要用于其它优化 函数。 举例:

相关性分析

相关性分析 相关性分析是指对两个或多个具备相关性的变量元素进行分析,从而衡量两个变量因素的相关密切程度。相关性的元素之间需要存在一定的联系或者概率才可以进行相关性分析。相关性不等于因果性,也不是简单的个性化,相关性所涵盖的范围和领域几乎覆盖了我们所见到的方方面面,相关性在不同的学科里面的定义也有很大的差异。 差时,他们的相关性就会受到削弱。 世界上的任何事物之间存在的关系无非三种: 1、函数关系,如时间和距离, 2、没有关系,如你老婆的头发颜色和目前的房价 3、相关关系,两者之间有一定的关系,但不是函数关系。这种密切程度可以用一个数值来表示,|1|表示相关关系达到了函数关系,从1到-1之间表示两者之间关系的密切程度,例如0.8。 相关分析用excel可以实现 说判定有些严格,其实就是观察一下各个指标的相关程度。一般来说相关性越是高,做主成分分析就越是成功。主成分分析是通过降低空间维度来体现所有变量的特征使得样本点分散程度极大,说得直观一点就是寻找多个变量的一个加权平均来反映所有变量的一个整体性特征。 评价相关性的方法就是相关系数,由于是多变量的判定,则引出相关系数矩阵。 评价主成分分析的关键不在于相关系数的情况,而在于贡献率,也就是根据主成分分析的原理,计算相关系数矩阵的特征值和特征向量。 相关系数越是高,计算出来的特征值差距就越大,贡献率等于前n个大的特征值除以全部特征值之和,贡献率越是大说明主成分分析的效果越好。反之,变量之间相关性越差。 举个例子来说,在二维平面内,我们的目的就是把它映射(加权)到一条直线上并使得他们分散的最开(方差最大)达到降低维度的目的,如果所有样本点都在一条直线上(也就是相关系数等于1或者-1),这样的效果是最好的。再假设样本点呈现两条垂直的形状(相关系数等于零),你要找到一条直线来做映射就很难了。 SPSS软件的特点 一、集数据录入、资料编辑、数据管理、统计分析、报表制作、图形绘制为一体。从理论上说,只要计算机硬盘和内存足够大,SPSS可以处理任意大小的数据文件,无论文件中包含多少个变量,也不论数据中包含多少个案例。 二、统计功能囊括了《教育统计学》中所有的项目,包括常规的集中量数和差异量数、相关分析、回归分析、方差分析、卡方检验、t检验和非参数检验;也包括近期发展的多元统计技术,如多元回归分析、聚类分析、判别分析、主成分分析和因子分析等方法,并能在屏幕(或打印机)上显示(打印)如正态分布图、直方图、散点图等各种统计 大数据并不是说它大,而是指其全面。它收集全方位的信息来交叉验证,应用在各个领域。比如银行,你可以去银行贷款,而银行可能会把钱借给你,为什么??因为在大数据时代,它可以通过一系列信息,通过交叉复现得知你很多东西,比如你的住址,是什么样的校区?

信号检测与估值matlab仿真报告

信号检测与估值 仿真报告 题目信号检测与估值的MATLAB仿真学院通信工程学院 专业通信与信息系统 学生姓名 学号 导师姓名

作业1 试编写程序,画出相干移频键控、非相干移频键控(无衰落)和瑞利衰落信道下非相干移频键控的性能曲线。 (1)根据理论分析公式画性能曲线; (2)信噪比范围(0dB-10dB),间隔是1dB; (3)信噪比计算SNR=10lg(Es/N0) 一、脚本文件 1、主程序 %******************************************************** %二元移频信号检测性能曲线(理论分析) %FSK_theo.m %******************************************************** clear all; clc; SNRindB=0:1:20; Pe_CFSK=zeros(1,length(SNRindB)); Pe_NCFSK=zeros(1,length(SNRindB)); Pe_NCFSK_Rayleigh=zeros(1,length(SNRindB)); for i=1:length(SNRindB) EsN0=exp(SNRindB(i)*log(10)/10); Es_aveN0=exp(SNRindB(i)*log(10)/10); Pe_CFSK(i)=Qfunct(sqrt(EsN0));%相干移频键控系统 Pe_NCFSK(i)=0.5*exp(-EsN0/2);%非相干移频键控系统(无衰落) Pe_NCFSK_Rayleigh(i)=1/(2+Es_aveN0);%非相干移频键控系统(瑞利衰落)end semilogy(SNRindB,Pe_CFSK,'-o',SNRindB,Pe_NCFSK,'-*',SNRindB,Pe_NCFSK_Rayleigh ,'-'); xlabel('Es/No或平均Es/No(dB)'); ylabel('最小平均错误概率Pe'); legend('相干移频','非相干移频(无衰落)','非相干移频(瑞利衰落)'); title('二元移频信号检测性能曲线'); axis([0 20 10^-7 1]); grid on; 2、调用子函数 %******************************************************** %Q函数 %Qfunct.m %********************************************************

matlab中SVM工具箱的使用方法资料

包已经解压到文件夹F:\R2009b\toolbox\svm matlab中SVM工具箱的使用方法 1,下载SVM工具箱:https://www.360docs.net/doc/5113888995.html,/faculty/chzheng/bishe/indexfiles/indexl.htm 2,安装到matlab文件夹中 1)将下载的SVM工具箱的文件夹放在\matlab71\toolbox\下 2)打开matlab->File->Set Path中添加SVM工具箱的文件夹 现在,就成功的添加成功了. 可以测试一下:在matlab中输入which svcoutput 回车,如果可以正确显示路径,就证明添加成功了,例如: C:\Program Files\MATLAB71\toolbox\svm\svcoutput.m 3,用SVM做分类的使用方法 1)在matlab中输入必要的参数:X,Y,ker,C,p1,p2 我做的测试中取的数据为: N = 50; n=2*N; randn('state',6); x1 = randn(2,N) y1 = ones(1,N); x2 = 5+randn(2,N); y2 = -ones(1,N); figure; plot(x1(1,:),x1(2,:),'bx',x2(1,:),x2(2,:),'k.'); axis([-3 8 -3 8]); title('C-SVC') hold on; X1 = [x1,x2]; Y1 = [y1,y2]; X=X1'; Y=Y1'; 其中,X是100*2的矩阵,Y是100*1的矩阵 C=Inf;

ker='linear'; global p1 p2 p1=3; p2=1; 然后,在matlab中输入:[nsv alpha bias] = svc(X,Y,ker,C),回车之后,会显示: Support Vector Classification _____________________________ Constructing ... Optimising ... Execution time: 1.9 seconds Status : OPTIMAL_SOLUTION |w0|^2 : 0.418414 Margin : 3.091912 Sum alpha : 0.418414 Support Vectors : 3 (3.0%) nsv = 3 alpha = 0.0000 0.0000 0.0000 0.0000 0.0000 2)输入预测函数,可以得到与预想的分类结果进行比较. 输入:predictedY = svcoutput(X,Y,X,ker,alpha,bias),回车后得到: predictedY = 1 1 1 1 1 1 1

music 方位估计 实验报告三 MATLAB 代码

实验报告三 实验目的: 实现常规波束形成及基于MUSIC 方法的方位估计。 实验内容: 1)若干阵元的接收阵,信号频率为10KHz ,波束主轴12度,仿真给出常规波束形成的波束图。 2)16个阵元的均匀线列阵,信号频率为10KHz ,信号方位为12度,用MUSIC 方法完成目标定向,信噪比-5dB ,0dB ,5dB 。 i) 波束形成时的阵型设计为两种,一种是均匀线列阵,阵元16个;一种是均匀圆阵,阵元数为16个,比较这两种阵型的波束图。 ii )比较不同信噪比下MUSIC 方法估计的性能(统计100次)。 实验原理: i)常规波束形成: 如图所示,基阵的输出),(θt v 。 ∑∑=*=* ==M m i i M m i i w t x t x w t v 1 1 ) ()()()(),(θθθ 采用向量符号则有, )()()()(),(H H θθθw x x w t t t v == 式中,x(t)和w(q )分别为观测数据向量和加权系数向量, ) ,(θt v 图 1 波束形成器基本原理图

T M 21])()()([)(t x t x t x t Λ=x T M 21])()()([)(θθθθw w w Λ =w 基阵输出端的空间功率谱表示为: ) ()( )()]()([)( )]()()()([ )],(),([ ] ),([)(H H H H H *2 θθθθθθθθθθRw w w x x w w x x w =====t t E t t E t v t v E t v E P 式中,R 为观测数据的协方差矩阵。 ii )基于MUSIC 方法的方位估计: )()()()(1 t n t s a t x i d i +=∑=θ T M 21])()()([)(t x t x t x t Λ =x )()()()(t n t s A t x +=θ 假设: (1 ) 信号源的数目d 是已知的, 且d < M ; (2 ) 各信号的方向矢量是相互独立的, 即)(θA 是一个列满秩矩阵; (3 ) 噪声)(t n 是空间平稳随机过程, 为具有各态历经性的均值为零、方差为σ2n 的高斯过程; (4 ) 噪声各取样间是统计独立的。 在上述假设条件下, 基阵输出的协方差矩阵可表示为: I A AR t x t x E R H s H 2])()([α+== 其中, R s 为信号的协方差矩阵;I 为单位矩阵。对R 进行特征分解, 并以特 征值降值排列可得 H m m M d m m H m m d m m e e e e R ∑∑+==+ =1 1λ λ 信号子空间与噪声子空间正交。 若噪声子空间记为E N , 即 ∑+== M d m H m m N e e E 1

Matlab频谱分析程序

Matlab 信号处理工具箱 谱估计专题 频谱分析 Spectral estimation (谱估计)的目标是基于一个有限的数据集合描述一个信号的功率(在频率上的)分布。功率谱估计在很多场合下都是有用的,包括对宽带噪声湮没下的信号的检测。 从数学上看,一个平稳随机过程n x 的power spectrum (功率谱)和correlation sequence (相关序列)通过discrete-time Fourier transform (离散时间傅立叶变换)构成联系。从normalized frequency (归一化角频率)角度看,有下式 ()()j m xx xx m S R m e ωω∞ -=-∞ = ∑ 注:()() 2 xx S X ωω=,其中( )/2 /2 lim N j n n N n N X x e ωω=-=∑ πωπ-<≤。其matlab 近似为X=fft(x,N)/sqrt(N),在下文中()L X f 就是指matlab fft 函数的计算结果了 使用关系2/s f f ωπ=可以写成物理频率f 的函数,其中s f 是采样频率 ()()2/s jfm f xx xx m S f R m e π∞ -=-∞ = ∑ 相关序列可以从功率谱用IDFT 变换求得: ()()()/2 2//2 2s s s f jfm f j m xx xx xx s f S e S f e R m d df f πωπ π ωωπ--= =? ? 序列n x 在整个Nyquist 间隔上的平均功率可以表示为 ()()() /2 /2 02s s f xx xx xx s f S S f R d df f π π ωωπ--= =? ?

matlab工具箱的安装方法 ROBOT工具箱精解

robotic toolbox for matlab工具箱下载地址: https://www.360docs.net/doc/5113888995.html,/source/940770 1. PUMA560的MATLAB仿真 要建立PUMA560的机器人对象,首先我们要了解PUMA560的D-H参数,之后我们可以利用Robotics Toolbox工具箱中的link和robot函数来建立 PUMA560的机器人对象。 其中link函数的调用格式: L = LINK([alpha A theta D]) L =LINK([alpha A theta D sigma]) L =LINK([alpha A theta D sigma offset]) L =LINK([alpha A theta D], CONVENTION) L =LINK([alpha A theta D sigma], CONVENTION) L =LINK([alpha A theta D sigma offset], CONVENTION) 参数CONVENTION可以取‘standard’和‘modified’,其中‘standard’代表采用标准的D-H参数,‘modified’代表采用改进的D-H参数。参数‘alpha’代表扭转角,参数‘A’代表杆件长度,参数‘theta’代表关节角,参数‘D’代表横距,参数‘sigma’代表关节类型:0代表旋转关节,非0代表移动关节。另外LINK还有一些数据域: LINK.alpha %返回扭转角 LINK.A %返回杆件长度 LINK.theta %返回关节角 LINK.D %返回横距 LINK.sigma %返回关节类型 LINK.RP %返回‘R’(旋转)或‘P’(移动) LINK.mdh %若为标准D-H参数返回0,否则返回1 LINK.offset %返回关节变量偏移 LINK.qlim %返回关节变量的上下限[min max] LINK.islimit(q) %如果关节变量超限,返回-1, 0, +1 LINK.I %返回一个3×3 对称惯性矩阵

(完整版)MATLAB模拟2ASK调制误码率与信噪比关系曲线的程序

%模拟2ASK % Pe=zeros(1,26); jishu=1; for snr=-10:0.5:15 max = 10000; s=round(rand(1,max));%长度为max的随机二进制序列 f=100;%载波频率 nsamp = 1000;每个载波的取样点数 tc=0:2*pi/999:2*pi;tc的个数应与nsamp相同 cm=zeros(1,nsamp*max); cp=zeros(1,nsamp*max); mod=zeros(1,nsamp*max); for n=1:max; if s(n)==0; m=zeros(1,nsamp); b=zeros(1,nsamp); else if s(n)==1; m=ones(1,nsamp); b=ones(1,nsamp); end end c = sin(f*tc); cm((n-1)*nsamp+1:n*nsamp)=m; cp((n-1)*nsamp+1:n*nsamp)=b; mod((n-1)*nsamp+1:n*nsamp)=c; end tiaoz=cm.*mod;%2ASK调制 t = linspace(0,length(s),length(s)*nsamp); tz=awgn(tiaoz,snr);%信号tiaoz中加入白噪声,信噪比为SNR=10dB jiet = 2*mod.*tz; %相干解调 [N,Wn]=buttord(0.2,0.3,1,15); [b,a]=butter(N,Wn); dpsk=filter(b,a,jiet);%低通滤波 % 抽样判决,判决门限为0.5 depsk = zeros(1,nsamp*max); for m = nsamp/2:nsamp:nsamp*max; if dpsk(m) < 0.5; for i = 1:nsamp depsk((m-500)+i) = 0; end

matlab新工具箱安装

至于Matlab工具箱安装中涉及到了Matlab的搜索路径、工作目录、当前路径、用户路径等好多术语,我这里不想多说什么 感兴趣的网友,可以直接查看Matlab的帮助系统,在那里你可以得到最直接的答复,但是你需要一定的英文基础哦 添加工具箱的方法很多,所有方法都是为了达到同一个目的,将工具箱的所在路径添加到Matlab的搜索路径下就可以了 下面介绍一种最简单的操作吧,下面以安装mathmodl(数学建模工具箱)为例进行说明 a、将你所需要安装的工具箱解压到$MatlabRoot\toolbox中(其实任意路径都是可以的,但是为了方便管理,我们一般都安装在这里),$MatlabRoot是你的Matlab安装路径,你可以在Matlab中输入matlabroot命令获取 (1)在Matlab输入如下内容(当然你可以直接使用资源管理器进入toolbox目录) 1.>> matlabroot 2. 3.ans = 4. 5.D:\Program Files\MATLAB\R2008a 6. 7.>> winopen(ans) 复制代码 (2)此时会自动跳到Matlab的安装目录下,双击打开目录下的toolbox文件夹 (3)将mathmodl工具箱复制到toolbox中

b.将刚才mathmodl的路径添加到Matlab搜索路径下(可以使用Matlab命令行,也可是用Matlab菜单操作,为了简便我们这里使用第二种) (1)在Matlab中如下操作,File——>Set Path...——>点击Add with subfolders... (2)在浏览文件中,选择刚才的安装路径$MatlabRoot/toolbox/mathmodl后,点击确定

matlab工具箱安装教程

1.1 如果是Matlab安装光盘上的工具箱,重新执行安装程序,选中即可; 1.2 如果是单独下载的工具箱,一般情况下仅需要把新的工具箱解压到某个目录。 2 在matlab的file下面的set path把它加上。 3 把路径加进去后在file→Preferences→General的Toolbox Path Caching里点击update Toolbox Path Cache更新一下。 4 用which newtoolbox_command.m来检验是否可以访问。如果能够显示新设置的路径,则表明该工具箱可以使用了。 把你的工具箱文件夹放到安装目录中“toolbox”文件夹中,然后单击“file”菜单中的“setpath”命令,打开“setpath”对话框,单击左边的“ADDFolder”命令,然后选择你的那个文件夹,最后单击“SAVE”命令就OK了。 MATLAB Toolboxes ============================================

https://www.360docs.net/doc/5113888995.html,/zsmcode.html Binaural-modeling software for MATLAB/Windows https://www.360docs.net/doc/5113888995.html,/home/Michael_Akeroyd/download2.html Statistical Parametric Mapping (SPM) https://www.360docs.net/doc/5113888995.html,/spm/ext/ BOOTSTRAP MATLAB TOOLBOX https://www.360docs.net/doc/5113888995.html,.au/downloads/bootstrap_toolbox.html The DSS package for MATLAB DSS Matlab package contains algorithms for performing linear, deflation and symmetric DSS. http://www.cis.hut.fi/projects/dss/package/ Psychtoolbox https://www.360docs.net/doc/5113888995.html,/download.html Multisurface Method Tree with MATLAB https://www.360docs.net/doc/5113888995.html,/~olvi/uwmp/msmt.html A Matlab Toolbox for every single topic ! https://www.360docs.net/doc/5113888995.html,/~baum/toolboxes.html eg. BrainStorm - MEG and EEG data visualization and processing CLAWPACK is a software package designed to compute numerical solutions to hyperbolic partial differential equations using a wave propagation approach https://www.360docs.net/doc/5113888995.html,/~claw/ DIPimage - Image Processing Toolbox PRTools - Pattern Recognition Toolbox (+ Neural Networks) NetLab - Neural Network Toolbox FSTB - Fuzzy Systems Toolbox Fusetool - Image Fusion Toolbox http://www.metapix.de/toolbox.htm

Matlab命令行安装CRP工具箱

CRP Matlab工具箱的安装方法 在下载安装网页:http://tocsy.pik-potsdam.de/CRPtoolbox/中,只有两句话:Start Matlab and change into the folder, where the downloaded files are located. Call the command install from the Matlab command line; the toolbox will be automatically added to the startup.m file. 意思是需要在Matlab命令行中安装,怎么做呢? 看了它说的安装方法是:在Matlab 命令窗口直接输入:install,但是我的Matlab2010b没反应,提示信息是没有这个变量或者.m文件。经过查询及摸索,安装步骤如下: 第一步,打开Matlab,在File->Set path中添加install.m的路径 第二步:打开cmd 输入:matlab -nodesktop -nosplash -r install 首次安装会提示出错: MATLAB Toolbox Path Cache is out of date and is not being used. 通过help toolbox_path_cache就可以知道原因了,如果没有设置好,要按照提示更改设置。 第三步,在cmd 中国再次输入:matlab -nodesktop -nosplash -r install 就可以看到开始安装,中间会有几个选择项,一个是问是否永远安装,一个是问是否删除安装文件,这个自己选择; 第四步:安装成功,界面如下: Creating private\logo.mat Creating workspace\.metadata\.log > Delete installation file? Y/N [Y]: N Installation finished! ---------------------------- The printable manual is crp_man.pdf. For an overview type: helpwin crptool 第五步:使用时,在命令窗口调用工具箱函数;若重新运行cmd,输入matlab,

matlab中SVM工具箱的使用方法

matlab 中SVM工具箱的使用方法 井幷享 标签:2008-03-18 14:43 1, 下载SVM工具箱: 2, 安装到matlab 文件夹中 1) 将下载的SVM工具箱的文件夹放在下 2) 打开matlab->File->Set Path 中添加SVM工具箱的文件夹 现在,就成功的添加成功了. 可以测试一下:在matlab 中输入which svcoutput 回车,如果可以正确显示路径成功 ,就证明添加了,例如: C:\Program Files\MATLAB71\toolbox\svm\svcoutput.m 3, 用SVM做分类的使用方法 1)在matlab 中输入必要的参数:X,Y,ker,C,p1,p2 我做的测试中取的数据为: N = 50; n=2*N; randn ('state',6); x1 = randn( 2,N) y1 = on es(1,N); x2 = 5+ra ndn (2,N); y2 = -on es(1,N); figure; plot(x1(1,:),x1(2,:),'bx',x2(1,:),x2(2,:),k'); axis([-3 8 -3 8]); title('C-SVC') hold on; X1 = [x1,x2]; Y1 = [y1,y2]; X=X1'; Y=Y1';

其中,X 是100*2 的矩阵,Y 是100*1 的矩阵 C=Inf; ker='linear'; global p1 p2 p1=3; p2=1; 然后,在matlab 中输入:[nsv alpha bias] = svc(X,Y,ker,C), 回车之后,会显示Support Vector Classification Constructing ... Optimising ... Execution time: 1.9 seconds Status : OPTIMAL_SOLUTION |w0|A2 : 0.418414 Margin : 3.091912 Sum alpha : 0.418414 Support Vectors : 3 (3.0%) nsv = 3 alpha = 0.0000 0.0000 0.0000 0.0000 0.0000 2) 输入预测函数, 可以得到与预想的分类结果进行比较 输入:predictedY = svcoutput(X,Y,X,ker,alpha,bias),回车后得到

kalman滤波在不同信噪比时的误码率matlab仿真程序

-20-15-10-50510152000.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5

Kalman滤波器在matlab仿真程序下的不同信噪比时的误码率: %multiuser_dectect.m clc; clear all; hold on BER_sum=zeros(1,13);%设定求和误码率的零矩阵; BER_ave=zeros(1,13); %设定平均误码率的零矩阵; for m=1:10;%m的长度为1到10 间隔为1; snr_in_db=-20:3:16;%定义信噪比的长度为-20到16 间隔为3;snr_in_db是信噪比用db表示 for i=1:length(snr_in_db);%i的长度为1到信噪比的长度 BER(i)= Kalman_S1(snr_in_db(i));%卡尔曼的误码率函数; end BER_sum=BER_sum+BER;%误码率求和的算法 end; BER_ave=0.1* BER_sum ; %误码率平均值的算法 semilogy( snr_in_db,BER_ave,'rd-');%y轴维数坐标图定义横坐标为信噪比,纵坐标为误码率; %Kalman_S1.m %Kalman algorithm %synchronous CDMA同步cdma %channel: White Gaussis Noise function [p] = Kalman_S1(snr_in_dB) SNR=10^(snr_in_dB/10); %信噪比由dB形式转化 sgma=1; % noise standard deviation is fixed 定义方差 Eb=sgma^2*SNR; A=[sqrt(Eb),sqrt(Eb),sqrt(Eb),sqrt(Eb),sqrt(Eb),sqrt(Eb),sqrt(Eb),sqrt(Eb),sqrt(Eb),sqr t(Eb),sqrt(Eb),sqrt(Eb),sqrt(Eb),sqrt(Eb),sqrt(Eb)]; K=length(A);

相关文档
最新文档