我正在尝试获得宽度为83.66的方波。看到我正在使用去卷积,我希望它是准确的。以下是我到目前为止的情况:
width = 83.66;
x = linspace(-400,400,10000);
a2 = 1.205e+004 ;
al = 1.778e+005 ;
b1 = 94.88 ;
c1 = 224.3 ;
d = 4.077 ;
measured = al*exp(-((abs((x-b1)./c1).^d)))+a2;
p = 33*sinc( (x)/(2*width) );
slit = abs(fftshift(ifft(p)));
我对我的数据进行了测量,并希望用宽度为83.66的切口对其进行去卷积。我尝试构建这个的傅里叶变换,然后使用ifft()
,但这只是给了我一个delta函数。它可能是一个顶部有一点曲线的高峰,但是当我放大时我看不到它。另外,我的切口应该是~84宽。
关于如何准确表示狭缝的任何想法。我的另一个想法是:
slit = zeros(length(x))
slit(1:1+width) = 1
答案 0 :(得分:3)
所以,我会使用rect
函数设置一个切口,如下所示:
x = linspace(-400,400,10000);
width = 83.66;
% create a rect function
rect = @(x) 0.5*(sign(x+0.5) - sign(x-0.5));
% create the time domain slit function
rt = rect(x/83.66);
plot( x, rt);
% change it to a causal rect
x0 = width/2 + 20; % move the left edge to be 20 units to the right of the origin
plot( x, rect( (x-x0)/width ) )