1 / 9
文档名称:

能谱谱数据分解方法研究程序核数据处理课程设计.doc

格式:doc   大小:37KB   页数:9页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

能谱谱数据分解方法研究程序核数据处理课程设计.doc

上传人:rovend 2021/7/31 文件大小:37 KB

下载得到文件列表

能谱谱数据分解方法研究程序核数据处理课程设计.doc

文档介绍

文档介绍:%本次课程设计采用的谱数据为iaea-1995文件夹下iaearfnw TSTSPEC
%里面的数据。。:
% Channel Energy (keV)
%
%
%
%
%
%
%
%运行程序,其中参数选择为:选择傅里叶变换法平滑输入3,选择高斯滤波器输入2,然后A=1,FWHM=4,对称零面积法的参数是K=2,H=3,b=1寻出来
%。
clc;
clear;
[Filename,Pathname]=uigetfile('*.*','选择谱数据');
fid=fopen([Pathname Filename],'r') %fid为文件指针,r表示读操作
[array,count]=fscanf(fid,'%d',[1 inf]); %指定格式转换后返回给矩阵array,同时返回成功的读出的数据数量count,1表示读出一个元素到一个列向量,inf表示读到文件结束返回一个与文件数据元素相同的列向量
fclose(fid);
%%%%下面开始能谱平滑%%%%%%%
pinghuaxuanze=input('请选择平滑方法:\n输入1选择重心法平滑\n输入2选择多项式最小二乘移动平滑法\n输入3选择傅里叶变换法\n输入4选择小波变换:\n');
%************************重心法平滑****************************
if (pinghuaxuanze==1)
biaoji=1;
for i=1:count
array_z(i)=array(i);
end
w=input('input the width of the filter window:'); %w表示w点平滑公式
while mod(w,2)==0 %判断输入的数是否是奇数,不是则重新输入。
w=input('input odd number:');
end
m=floor(w/2);
for j=1:m
for i=1:count
if(i==1)
array_smooth(i)=*(array_z(i)+array_z(i+1)); %能谱左边界做对称镜像处理
elseif(i>1&&i<(count-1))
array_smooth(i)=*array_z(i-1)+*array_z(i)+*array_z(i+1);
else
array_smooth(i)=*(array_z(count)+array_z(count-1)); %能谱右边界做对称镜像处理
end
end