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

📄 two_dimensional_psd.m

📁 二维功率谱密度计算程序 使用傅里叶变换
💻 M
字号:
% % %%%%%此程序为处理 二维 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向实际高度
% % %****************计算实际高度结束*******************%
% % % % clear;close;%清内存,关闭图
% % % % z=load ('taijie.txt');%读AFM数据,之前应先去除文件头的说明文字,仅剩数据
% % % % L=40;            %取样长度,请先设定
% % % % N=256;                          %根据文件头的说明文字找出相应的采样点数
% % % % % % % % **********以上为数据的导入*********
%计算二维PSD
window=(8/3)*hanning(N)*hanning(N)';%加能量归一化后的二维汉宁窗
% window=1;                         %矩形窗
% x=linspace(0,20,length(data_lg));
% [x,y]=meshgrid(x);
% surf(x,y,z.*window); 
% shading interp;
figure(2);
fz=fftshift(fft2(z.*window));%2D FFT运算且用fftshift移位 
tfz=((L/(N-1))^2)*abs(fz).*abs(fz)/(N*N);%PSD算 unit:mm2*nm2
x=linspace(-N/(2*L),N/(2*L),N);
[x,y]=meshgrid(x);
surf(x,y,tfz); 
shading interp;
h1=xlabel('Tangential Spatial Frequency (1/μm)');
h2=ylabel('Sagittal Spatial Frequency (1/μm)');zlabel('Two-dimensional PSD, nm^2μm^2');
set(h1,'rotation',15);
set(h2,'rotation',-25);
title('Two-dimensional PSD');
% view(2);

⌨️ 快捷键说明

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