⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 psd2_2_psd1.m

📁 二维功率谱密度换算一维功率谱密度的程序,对表面质量的计算尤为使用
💻 M
字号:
%%%%%此程序为处理 从二维PSD计算一维PSD 基本程序,包含汉宁窗口算法%%%%%%%%%%
clear;close;%清内存,关闭图
% % load data_lg.dat;%读AFM数据,之前应先去除文件头的说明文字,仅剩数据
% % L=20;            %取样长度,请先设定
% % Z_scale=14.93652;               %根据文件头的说明文字找出相应的值
% % sen_Z_scale=3.948723;           %根据文件头的说明文字找出相应的值
% % N=256;                          %根据文件头的说明文字找出相应的采样点数
% % %计算实际高度
% % z=data_lg*Z_scale*sen_Z_scale./65535;%计算z向实际高度
z=load ('cjc002.txt');
N=512;
L=25;

%****************计算实际高度结束*******************%
%计算二维PSD
% window=(8/3)*hann(N)*hann(N)';%加能量归一化后的二维汉宁窗
% fz=fft2(z.*window); 
fz=fft2(z);                     %加矩形窗
psd2=((L/(N-1))^2)*abs(fz).*abs(fz)/(N*N);%PSD算 unit:mm2*nm2
%*****************计算二维PSD结束*******************%
%二维转换一维PSD
psd2=imrotate(psd2,0);       %0度时,为x向,旋转-90度时,为y向
psd=sum(psd2./L,1).*2  ;        %1为X向 对列求和

spfr1=(0:N/2)/L;%进行对应的频率转换
loglog(spfr1,psd(1:N/2+1),'r');
xlabel('Spatial Frequency (1/μm)'),ylabel('One-dimensional PSD (nm^2μm)');
% grid ;
%************-**二维转换一维PSD计算结束**************%
%%调入AFM处理数据,显示PSD
% hold on;
% load afm_la_1dpsd.txt;
% spfr1=(1:N/2)/L;%进行对应的频率转换
% loglog(spfr1,afm_la_1dpsd(:,2).*0.001,'b');
% title('Comparison of AFM & Self-developed Program ');
% h = legend('Self-developed','AFM',1);
% set(h,'Interpreter','none');
% axis([0.01 10 0.01 100]);
%***************AMF数据调入,处理结束**************%
% psd_afm=afm_la_1dpsd(:,2);

psd_afm=psd(2:N/2);
psd_2=sum(psd_afm./L);
RMS=sqrt(psd_2)

Sq=sqrt(sum(sum(z.^2))/(N*N))

Sa=sum(sum(abs(z)))/(N*N)

Rmax=abs(max(max(z)))-min(min(z))

%%调入一维平均PSD数据,处理显示PSD
% load ave_psd;
% hold on;
% spfr1=(0:N/2)/L;%进行对应的频率转换
% loglog(spfr1,ave_psd(1:N/2+1),'b');
% xlabel('Spatial Frequency (1/μm)'),ylabel('One-dimensional PSD (nm^2μm)');
% grid on;
% xxx=(psd(1:N/2))'./(afm_la_1dpsd(:,2).*0.001)   &调试用,找比例关系

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -