Skip to content
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
33 lines (17 sloc) 1.23 KB

Converting from older code for GooFit 2.1

The primary change in GooFit 2.1 was the addition of Python bindings, but there are several changes to watch out for. The ModernizeGooFit script will try to help, but it can't understand the details of your code. The options for the script have been expanded, check with -h. To run:

./scripts/ -v 2.1

Variables and Observables

The three argument Variable("name", min, max) independent variable constructor has been separated out into a new class, Observable, which is now required everywhere for independent variables. The API should help you transition, since it's a compiler error to use one in place of the other.

Variables and observables are now passed by copy almost everywhere; they internally have shared pointers that keep each one synchronised.


The DecayInfo structs are now split up into four structs:

  • DecayInfo3
  • DecayInfo3t
  • DecayInfo4
  • DecayInfo4t

These are passed around by copy; but warning; they do hold raw pointers (explicitly handled by the python bindings).

Resonances and Lineshapes

Resonances and Lineshapes are now separate constructors in Resonances:: and Lineshapes::. The old enums were removed.

You can’t perform that action at this time.