So I have the following data:
[[-344 13771 4600 ] [-275.2 12478 6410 ] [-206.4 19443 830 ] [-137.6 69392 3830 ] [ -68.8 143737 3780 ] [ 0 189278 16870 ] [ 68.8 184486 5090 ] [ 137.6 188466 9380 ] [ 206.4 185023 21680 ] [ 275.2 128133 1460 ] [ 344 51288 1950 ] [ 412.8 10854 4290 ]]
First column is the x value (position in microns). Second value is the recorded data point (y), and the third column is the error (noise).
I am wondering how I can find the response of my device if the data I record is known to be a convolution of the response and a slit of width 83.6666 (plus noise).
My attempt was to use the convolution theorem of fourier transforms and use MatLab's
fft() to solve for the desired function, but I could not figure out how to get everything the same length. I also thought about being blunt and using
deconv() but that gave me something very strange, (with my rect function defined as
>> x=-344:1:412; >> h=zeros(size(x)); >> h(300:386)=1;
So I used
deconv(h,y) and got a very strange looking plot that was not a function.
So I was hoping someone could give me some advice on how to perform this mathematically (code or no code). Especially with the addition of noise.