Ticket #139 (closed: wontfix)

Opened 12 years ago

Last modified 5 years ago

Peak fitting algorithms

Reported by: Nick Draper Owned by:
Priority: major Milestone: Iteration 20
Component: Keywords:
Cc: Blocked By:
Blocking: Tester:

Description (last modified by Nick Draper) (diff)

Need to get a list of 8 algorithms from the steering committee.

Also the structure should allow for user defined algorithms.

1D peak fitting is fine initially.

We already bind to GSL which has some peak fitting functionality. We should be able to wrap up some of that into one or more algorithms to do this.

The steering committee members are: Perring, TG (Toby) Radaelli, PG (Paolo) Soper, AK (Alan) Pratt, FL (Francis) Langridge, S (Sean) Ramirez-Cuesta, AJ (Timmy) -- wasn't present at the meeting Charlton, TR (Timothy) Hughes, AV (Arwel)

Change History

comment:1 Changed 12 years ago by Nick Draper

  • Description modified (diff)

comment:2 Changed 12 years ago by Nick Draper

  • Priority changed from major to critical

comment:3 Changed 12 years ago by Nick Draper

  • Owner set to Anders Markvardsen
  • Description modified (diff)

comment:4 Changed 12 years ago by Nick Draper

  • Milestone changed from Iteration 9 to Iteration 10

comment:5 Changed 12 years ago by Anders Markvardsen

(In [1184]) Added GSL based least squares algorithm to fit spectrum to a Gaussian. Refs #139.

comment:6 Changed 12 years ago by Anders Markvardsen

(In [1185]) Debug versions of GSL libraries added. Refs #139.

comment:7 Changed 12 years ago by Matt Clarke

(In [1189]) Adjusted GaussLeastSquaresFit to build on Linux. Refs #139

comment:8 Changed 12 years ago by Nick Draper

(In [1192]) re #139

Corrected debug GSL lib files so they allowed runtime loading of Algorithms dll

comment:9 Changed 12 years ago by Anders Markvardsen

(In [1219]) Output summary from Gaussian fit to (output) properties. Refs #139.

comment:10 Changed 12 years ago by Anders Markvardsen

(In [1221]) Changed some friend method declarations to standard function declarations to better cross-platform compiling.... Refs #139.

comment:11 Changed 12 years ago by Anders Markvardsen

(In [1225]) Fixed (or at least I think I have) a recurring painful linking problem with gsl under windows. In debug mode changed dependency from gsl.dll to gsl_d.dll. Refs #139.

comment:12 Changed 12 years ago by Anders Markvardsen

(In [1228]) Modified gauss LS alg. so that initial values for the input parameters are required (otherwise assumed to be zero for now). Refs #139.

comment:13 Changed 12 years ago by Anders Markvardsen

(In [1233]) Added algorithm for back-to-back exponential peak shape function. Note, currently the added fitting appears to give a better fit compared to using QTIPLOT. It is currently not understood why there is this discrepancy. Refs #139.

comment:14 Changed 12 years ago by Anders Markvardsen

(In [1235]) Refs #139.

comment:15 Changed 12 years ago by Anders Markvardsen

(In [1243]) Moved FitData structure into .cpp files. This fixed issue with including multiple fitting algorithm header files. Refs #139.

comment:16 Changed 12 years ago by Russell Taylor

(In [1244]) Fix conflicting output workspace names in tests. Re #139.

comment:17 Changed 12 years ago by Nick Draper

  • Milestone changed from Iteration 10 to Iteration 11

comment:18 Changed 12 years ago by Anders Markvardsen

(In [1329]) Changes to remove some Doxygen warnings. Refs #139.

comment:19 Changed 12 years ago by Anders Markvardsen

(In [1334]) Added addition test to GaussLeastSquaresFit and code to take mid-point values for histogram data. Refs #139.

comment:20 Changed 12 years ago by Nick Draper

  • Milestone changed from Iteration 11 to Iteration 12

comment:21 Changed 12 years ago by Nick Draper

  • Milestone changed from Iteration 12 to Iteration 13

comment:22 Changed 12 years ago by Anders Markvardsen

(In [1556]) Renaming of curve fitting algorithms as a consequence of these now living in separate CurveFitting project. Refs #139.

comment:23 Changed 12 years ago by Anders Markvardsen

(In [1570]) Changed the names of the fitting parameters for the Gaussian fitting function: xc->peakCentre, A->height, w->sigma, y0->bg0 and brought the documentation for this class up-to-date in the .h and .cpp files. Refs #139.

comment:24 Changed 12 years ago by Anders Markvardsen

(In [1573]) GSL may accept a gaussian fit with a negative sigma. For now deal with this by changing the status from 'success' to 'failure: sigma parameter fitted to a value <= 0.0' when this happen. Refs #139.

comment:25 Changed 12 years ago by Anders Markvardsen

(In [1574]) Modified Gaussian fitting so that 1/sigma2 is least squared fitted instead of sigma directly. This will hopefully avoid the pathological case of GSL reporting a successful fit with a negative sigma... Refs #139.

comment:26 Changed 12 years ago by Nick Draper

  • Milestone changed from Iteration 13 to Iteration 14

comment:27 Changed 12 years ago by Anders Markvardsen

(In [1746]) Removed unnecessary reference to background fitting parameter in gauss_df. Refs #139.

comment:28 Changed 12 years ago by Nick Draper

  • Priority changed from critical to major
  • Milestone changed from Iteration 14 to Unassigned

moved to unassigned.

The majority of curve fits people want seems to be covered by Gaussian at the moment. We will add other as necessary

comment:29 Changed 12 years ago by Nick Draper

  • Owner Anders Markvardsen deleted

comment:30 Changed 12 years ago by Nick Draper

  • Status changed from new to closed
  • Resolution set to wontfix

comment:31 Changed 7 years ago by Nick Draper

  • Milestone changed from Unassigned to Iteration 20

comment:32 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 987

Note: See TracTickets for help on using tickets.