Ticket #10200 (closed: fixed)

Opened 6 years ago

Last modified 5 years ago

Add property LeastMaxPeakObsY to FindPeaks

Reported by: Wenduo Zhou Owned by: Wenduo Zhou
Priority: critical Milestone: Release 3.3
Component: Diffraction Keywords:
Cc: petersonpf@… Blocked By:
Blocking: Tester: Roman Tolchenov

Description

Add property LeastMaxPeakObsY to FindPeaks. This property will specify the minimum value of the maximum Y value of peak within specified range. By it, a peak with small maximum counts on Y can be excluded. It is useful for EventWorkspace with integer counts on each bin.

Propagate this new property to GetDetOffsetsMultiPeaks and CalibrateRectangularDetector.

Attachments

verify10200.py (684 bytes) - added by Wenduo Zhou 6 years ago.

Change History

comment:1 Changed 6 years ago by Peter Peterson

That is a pretty bad name. How about "MinimumPeakHeightObs" since it is parallel to "MinimumPeakHeight".

comment:2 Changed 6 years ago by Wenduo Zhou

Refs #10200. Added property MinimumPeakHeightObs.

To FindPeaks, GetDetOffsetsMultiPeak and CalibrateRectangularDetectors. On branch feature/10200_findpeaks_min_maxobsy Changes to be committed:

modified: ../Mantid/Framework/Algorithms/inc/MantidAlgorithms/FindPeaks.h modified: ../Mantid/Framework/Algorithms/inc/MantidAlgorithms/GetDetOffsetsMultiPeaks.h modified: ../Mantid/Framework/Algorithms/src/FindPeaks.cpp modified: ../Mantid/Framework/Algorithms/src/GetDetOffsetsMultiPeaks.cpp modified: ../Mantid/Framework/PythonInterface/plugins/algorithms/CalibrateRectangularDetectors.py

Changeset: 3d0dd68a3ec9b3efff298516ea95271fb5f089ab

comment:3 Changed 6 years ago by Wenduo Zhou

  • Status changed from new to assigned

comment:4 Changed 6 years ago by Wenduo Zhou

  • Status changed from assigned to inprogress

comment:5 Changed 6 years ago by Wenduo Zhou

For tester

The purpose of this ticket is to add one more criteria on finding peaks. With the new property MinimumPeakHeightOBs, the peaks, whose maximum observed intensities are lower than specified value, will not be considered. It is good to avoid to fit noise as peak.

You can download verify10200.py. Inside the script, a mockup workspace is created. Peaks are fit with and without the new option. You can tell the difference easily.

Changed 6 years ago by Wenduo Zhou

comment:6 Changed 6 years ago by Wenduo Zhou

  • Status changed from inprogress to verify
  • Resolution set to fixed

comment:7 Changed 6 years ago by Roman Tolchenov

  • Status changed from verify to verifying
  • Tester set to Roman Tolchenov

comment:8 follow-up: ↓ 9 Changed 6 years ago by Roman Tolchenov

A couple of questions:

  • FindPeaks with the new option leaves a row filled with zeros. Is it possible not to output this row at all?
  • I ran FindPeaks without PeaksPositions. The new option doesn't make a difference. Is it expected?

comment:9 in reply to: ↑ 8 Changed 6 years ago by Wenduo Zhou

Replying to Roman Tolchenov:

A couple of questions:

  • FindPeaks with the new option leaves a row filled with zeros. Is it possible not to output this row at all?

FindPeaks is called intensively by GetDetOffsetsMultiPeaks, which specifies a list of peak positions to find. I used the zero-value row to indicate that the fit to a certain peak fails, i.e., no peak is found at that position. Such that it won't be considered. Without the zero-value row, it is difficult to have the mapping between input peaks positions and output fitted peak positions.

  • I ran FindPeaks without PeaksPositions. The new option doesn't make a difference. Is it expected?

It is an expected behavior. If FindPeaks is run without PeakPositions, then an algorithm is used to search peak automatically. Usually it'd rather miss a peak than fit to tiny peak close to noise.

comment:10 Changed 6 years ago by Roman Tolchenov

  • Status changed from verifying to closed

Merge remote-tracking branch 'origin/feature/10200_findpeaks_min_maxobsy'

Full changeset: 280f1ba70bf8f9ea31e4210f4933144598242ed8

comment:11 Changed 6 years ago by Roman Tolchenov

Merge remote-tracking branch 'origin/feature/10200_findpeaks_min_maxobsy'

Full changeset: 280f1ba70bf8f9ea31e4210f4933144598242ed8

comment:12 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 11042

Note: See TracTickets for help on using tickets.