Mathieu G
2007-08-22 08:42:38 UTC
Hello,
I have a set of discrete data, representing a peak.
I would like to compute the Full Width at Half Maximum (FWHM) of this peak.
For that I would like to know which points correspond to half the peak value.
SO far I was considering using an interpolating function, but this does
not seem to work:
DataFile = Import["FFT.dat"];
CleanDataFile = Part[DataFile, 2 ;; Length[DataFile]];
WorkingData = CleanDataFile[[All, {1, 3}]];
ListLinePlot[WorkingData, PlotRange -> All]
MaximumFFTY = Max[WorkingData[[All, 2]]];
MaximumFFTPosition = Position[WorkingData, MaximumFFTY][[1, 1]];
MaximumFFTX = WorkingData[[MaximumFFTPosition, 1]];
DataInterpolation = Interpolation[WorkingData];
Solve[DataInterpolation[x] == MaximumFFTValue/2, x]
Can you help me please? How would you do that?
I then want to compute the area under the peak:
Integrate[DataInterpolation[x], {x, BegFWHM, EndFWHM}]
Which works fine with the interpolating function.
Thank you for your help!
Mathieu
I have a set of discrete data, representing a peak.
I would like to compute the Full Width at Half Maximum (FWHM) of this peak.
For that I would like to know which points correspond to half the peak value.
SO far I was considering using an interpolating function, but this does
not seem to work:
DataFile = Import["FFT.dat"];
CleanDataFile = Part[DataFile, 2 ;; Length[DataFile]];
WorkingData = CleanDataFile[[All, {1, 3}]];
ListLinePlot[WorkingData, PlotRange -> All]
MaximumFFTY = Max[WorkingData[[All, 2]]];
MaximumFFTPosition = Position[WorkingData, MaximumFFTY][[1, 1]];
MaximumFFTX = WorkingData[[MaximumFFTPosition, 1]];
DataInterpolation = Interpolation[WorkingData];
Solve[DataInterpolation[x] == MaximumFFTValue/2, x]
Can you help me please? How would you do that?
I then want to compute the area under the peak:
Integrate[DataInterpolation[x], {x, BegFWHM, EndFWHM}]
Which works fine with the interpolating function.
Thank you for your help!
Mathieu