东华理工核数据处理课程设计_第1页
东华理工核数据处理课程设计_第2页
东华理工核数据处理课程设计_第3页
东华理工核数据处理课程设计_第4页
东华理工核数据处理课程设计_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 核数据处理课程设计题 目: 关于能谱寻峰、边界道的确定以及峰面积计算学生姓名: 班 级: 学 号: 指导教师:吴 和 喜 二零一二年六月 核数据处理课程设计报告 -能谱寻峰、边界道以及峰面积计算 摘要:本文简述两种不同的平滑过程与寻峰方法,简单比较法寻峰方法和导数法寻峰的对比分析,试用采用八阶高斯函数拟合后公式求导后对寻峰以及峰面积结果分析。关键词:能谱、峰面积、导数法、寻峰、边界道、拟合Abstract:This method of derivative spectroscopy data after smoothing peak search, and compare order der

2、ivative France to find the peak derivative method for the spectroscopy data the peak search and compare different fitting formula derivation on the peak search and peak areaanalysis of results.Keywords: spectroscopy, peak area, the derivative method,peak search, boundary Road, fitting 一、实验原理:1、采用高斯函

3、数的平滑方法如果把谱数据中的统计涨落看成是“白噪声”,当使用匹配滤波器进行滤波时,可以得到最佳的信号噪声比。所谓匹配滤波器,就是该滤波器在道域中冲击响应函数与峰函数互为镜象。一般情况下,谱中的峰函数可以近似为高斯函数。由于高斯函数是偶函数,所以匹配滤波器在道域中的响应函数也应该是高斯函数。2、简单比较法寻峰 简单比较法是一种最直观又快速的寻峰方法。其基本思想是:在谱数据中,若某一道的数据比其他相邻的几道大很多,则可认为该道存在一个峰。连续检索光滑后的谱数据,如果在第m道同时满足下列关系式 则第m道附近有一个峰。式中,k是寻峰阈值,通常取1-1.5:m=2i+1为寻峰窗口宽度,一般i去1或2。在

4、第m道附近的谱数据中用二阶差值多项式计算出精确峰位。 简单比较法适于寻找强单峰,在高本底上导找弱峰和分辨重峰的能力都比较差。但算法简单,程序运行速度较快。 导数是一条光沿曲线上数值的微商或微商函数,在数学上称它为曲线上 各 点 的 斜率。在导数光谱术中导数吸收光谱是指光强度或吸光强度对波长 的变化率曲线。当将原吸收曲线进 行一阶、二阶直至四 阶求导时,便可得到各阶导数光谱。导数光谱的基本特征(1)对原曲线的极值求一、二阶导数时通过原点,求二阶导数时为极小值,四阶导数为极大值,并恢复至原位置。据此特征可以准确的测定最大的吸收峰位。(2)极值数目随求导阶数的增加而增加。如当原曲线有一个极大值时 ,

5、求n阶导数就有n+1个极大值和极小值,而原曲线有两个极大值时,则出现n+3个极值。(3)随求导阶数的增加,谱带变窄和复杂化。两组分组合的吸收曲线原光小的吸收谱带为大的吸收谱带所掩蔽,经二阶求导之后,原曲线中的小 “卫星”峰就变成极小值,四阶导数变为极大值。这时改善了谱线的分辨率,导数光谱更加明显。在射线衍射分析中各衍射谱也有类似的特征,不过这时的衍射曲线是晶体衍射强度 4 相对于衍射角5的一条光滑曲线,通常它是高斯、柯西和修正的洛仑兹函数形式,或其复合形式的分布函数。其一阶导数曲线通过零点 ,对应于衍射线的峰位3而二阶导数分布曲线的极小值也对应于峰位。由于一阶导数的零点确定峰位比较困难,特别是

6、在多相衍射线重叠的情况下,一阶导数定峰不如二阶导数明显、准确,因此一般采用经光滑处理求二阶、四阶以至偶数阶导数的定峰方法。这是一种简便而有效的精确测定衍射峰位的方法。导数方法可以准确测定衍射峰位和重叠衍射峰的数目。因此,我们也称它为导数定峰法。所谓导数定峰法就是利用一条光滑衍射曲线上各点的数值微商(或求导)方式来确定重叠衍射峰位的方法。 能谱分析对寻峰方法的基本要求如下:(1) 识别弱峰(2) 剔除假峰(3) 分辨重峰(4) 不仅能计算出峰位的整数道址,还能计算出峰位的精确值,某些情况下要求峰位的误差小于0.1道。一、导数法寻峰原理 一阶导数法:经过平滑后的能谱我们可以很容易的计算其各阶导数。

7、一阶导数计算过程如下:(1) 采用五点三次平滑公式的一阶导数公式: (2)沿道指i方向检索一阶导数从正变负,其零点值对应的道址为峰位。(3)再利用峰高判断条件:0.8FWHM<W<3FWHM时才认为可能是一个真峰,否则(2)中找到的峰位全是假峰,必须剔除。由于统计涨落的影响,峰高判定条件必需加以修正。 这就是一阶导数寻峰程序中实际应用的峰高判定条件。一阶导数法寻峰时最常用的一种方法,用这种方法能找出大部分峰,计算简单,运行书度也快,但主要缺点是不能分辨很近的重峰。二阶导数法:二阶导数和一阶导数法比较,二阶导数寻峰方法具有更高的重峰分辨能力。具体过程如下:(1) 先计算平滑数据二阶导

8、数数值。采用五点三次平滑公式的二阶导数公式:(2) 沿道指i增加方向检索二阶导数值,(3) 找出二阶导数局部负的极小值对应的道指。如果这个负极大值的绝对值大于改导数的标准差的若干倍,则认为该道指是一个真峰。(4) 为了进一步剔除假峰,采用判定条件 二阶导数重叠峰导数图对于二阶导数法,其峰边界为真正的极大值点对应的道址三阶导数法三阶导数计算方法其峰位为其三阶导数值从负变为正的零点所对应的道址,峰的边界为三阶导数从正变为负的零点对应的道址。三阶导数可以确定重峰区的各个组分峰的峰位,而且能够狠灵敏的分辨重峰。 一阶导,峰位处由正到负过零点,边界处由负到正过零点 ;二阶导,峰位处负的局部最小值,边界道

9、为正的极大值;三阶导,峰位处由负到正过零点,边界处由正到负过零点。3、 实验过程: 流程图:第一种方法,先高斯函数平滑,简单比较法寻峰开始获取能谱数据高斯函数法对能谱进行平滑得到平滑后的能谱数据结束简单比较法寻峰得到计算峰面积matlab编程程序如下:clc;clear;Filename,Pathname=uigetfile('*.txt','选择谱数据');fid=fopen(Pathname Filename,'r');array,count=fscanf(fid,'%d',inf);fclose(fid); x=1:coun

10、t;plot(x,array)peak_position=; %峰位置信息%谱光滑 采用高斯函数光滑 y=0.2438 0.205 0.1218 0.05126k1=4; for i=1:count if(i<=k1) for i=1:k1 array_smooth(i)=0.2438*array(i)+0.205*(array(i+1)+array(i+1)+0.1218*(array(i+2)+array(i+2)+0.05126*(array(i+3)+array(i+3); %对称做镜像处理 end elseif(i>k1&i<(count-k1) array

11、_smooth(i)=0.2438*array(i)+0.205*(array(i-1)+array(i+1)+0.1218*(array(i-2)+array(i+2)+0.05126*(array(i-3)+array(i+3); else array_smooth(i)=0.2438*array(i)+0.205*(array(i-1)+array(i-1)+0.1218*(array(i-2)+array(i-2)+0.05126*(array(i-3)+array(i-3); endendx2=1:count;plot(x2,array_smooth)p=ones(1,count);

12、 m=1; %控制参数1j=2; %控制参数2for i=1+j:count-j-m p(i)=(array_smooth(i)*array_smooth(i+m)/(array_smooth(i-j)*array_smooth(i+m+j);endk=1.5; %峰判断控制参数 for i=1:count upper(i)=1+k/sqrt(array_smooth(i); lower(i)=1-k/sqrt(array_smooth(i); end%简单比较法寻峰factor=1; for i=1+factor:count-factor if(p(i)>upper(i)&p(

13、i)>p(i+1)&p(i)>p(i-1) peak_position=peak_position i; endendplot(array_smooth,'b*');hold on;peak=array(peak_position)plot(peak_position,peak,'r+');实验结果如下:四、本文第二种思想:gauss8阶函数拟合法,此方法的主要思想是:不将数据平滑处理自然就没有了平滑公式,直接用八阶高斯函数拟合源数据,在对拟合后的函数进行求导,一阶导,峰位处由正到负过零点,边界处由负到正过零点 ;二阶导,峰位处负的局部最小值

14、,边界道为正的极大值;三阶导,峰位处由负到正过零点,边界处由正到负过零点。其他过程都与前面的计算方法相同。开始获取能谱数据高斯函数法对能谱进行拟合对拟合后的函数求导结束导数法的寻峰得到计算峰面积五、MATLAB实验程序如下:六、实验结果输出:七、各阶导数寻峰效果比较:(1)一阶导数法寻峰时最常用的一种方法,用这种方法能找出大部分峰,计算简单,运行书度也快,对孤立峰有良好分辨能力,但主要缺点是不能分辨很近的重峰(2) 二阶导数寻峰方法具有更高的重峰分辨能力,但灵敏度差。(3) 三阶导数可以确定重峰区的各个组分峰的峰位,有很灵敏的重峰分辨能力,但是寻峰速度慢。八、不同拟合函数的效果比较:采用平滑后

15、的多项式曲线平滑公式的寻峰效果更好,由于数据跳跃性太大,采用八阶高斯函数拟合法可能剔除弱峰,无法分辨重峰,误差比较大,但是平滑本来就会丢失弱峰和重峰,所以相比平滑公式求导寻峰高斯函数拟合法也是可以的。虽然老师上课没有讲这种拟合函数的方法,但是我认为在一般的数据分析中(单个或者几个强峰的分析)效果还是可行的。9、 实验心得体会: 在本次核数据处理课程设计中我深刻体会到了这门课的难度,由于对MATLAB软件不熟悉,我几乎是从零学起,每一个语句都来之不易,上课的理论知识还算比较扎实,编程的思想我很清楚,我知道自己要干什么,但却无法用MATLAB语句写出来。最终,在这些天不断的摸索中我终于初步掌握了MATLAB的编程,学会了用MATLAB对核数据的一般处理,平滑(拟合曲线)求导寻峰确定边界道计算峰面积等等。总之,在这次课程设计中我学到了很多,学会了将理论知识应用到实践当中去,理论知识掌握得

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论