第一步,我想我总算找到用Matlab计算"卷积"以及,进行"可逆"的"解卷积"的途径了

 

首先, 这会使得Fourier transform self-deconvolution 在振动光谱中的练习成为可能;

 

其次, 我要尝试, 这次是否把Fourier deconvolution用于temperature modulated differential scanning calorimetry曲线的解析中是否能够得到至少是近似的可用的rapid reverse和rapid non-reverse部分的分解...

 

 close all
clear
clc
x1 = 1:300;
s1=0.923*exp(-0.5*((x1-105)/25).^2)/sqrt(2*pi*(25^2));
s2=0.6*exp(-4*((x1-200)/30).^2)/sqrt(2*pi*30^2);
s=s1+s2;
plot(x1,s1,'b:',x1,s2,'g:',x1,s,'r+');

break
x2 = 1:100
h1= exp(-0.5*((x2-25.18)/45.13).^2)/sqrt(2*pi*(45.13^2));

S=fft([s,zeros(1, length(h1)-1)]);
H=fft([h1,zeros(1,length(s)-1)]);
y=ifft(S.*H);
%y=conv(s, h1);

hold on, plot(y)

y=y+rand(size(y))*.005;

h2= exp(-0.8*((x2-40)/50).^2)/sqrt(2*pi*(50^2));

Lx=length(y)-length(h1)+1;  %
Lx2=pow2(nextpow2(Lx));    % Find smallest power of 2 that is > Lx
Y=fft(y, Lx2);     % Fast Fourier transform
H=fft(h1, Lx2);     % Fast Fourier transform
X=Y./H;             %
x=real(ifft(X, Lx2));      % Inverse fast Fourier transform
x=x(1:1:Lx); 

你可能感兴趣的:(第一步,我想我总算找到用Matlab计算"卷积"以及,进行"可逆"的"解卷积"的途径了)