The purpose of the musrfit framework is to provide software to analyze muSR spectra, in a very flexible and sound way. The musrfit framework is free software, published under the General Public License Version 2 or later. It is currently running under Linux, Mac OS X, and (with some more work) under Windows. The musrfit framework heavily relies on the ROOT framework from CERN
The musrfit framework provides the following programs:
musrfit: carries out fits based on a msr-file.
musrview: is used show the data in a graphical representation.
musrFT: is used to show Fourier transforms of data without the need of a theory (raw data Fourier transform).
musrt0: is used to set graphically t0's, background and data ranges off raw histogram data.
msr2data: a program (originally written by Bastian M. Wojek). Its purpose is to process/generate multiple musrfit msr-files with the same parameters and summarize the fitting results either in a TRIUMF DB or a column ASCII file.
msr2msr: old WKM like msr-files can be transformed into musrfit style msr-files with this little program.
musrgui (obsolete): an editor to handle msr-files, calling musrfit, etc. from within the editor, based on Qt3.x.
musredit: an editor to handle msr-files, calling musrfit, etc. from within a simple text editor, based on Qt5.x (soon being deprecated) or Qt6.x. A technical documentation of musredit can be found here.
musrWiz (beta): allows to create an initial msr-file by a step-by-step instruction wizard. A technical documentation of musrWiz can be found here.
musrStep: allows to efficiently deal with initial step values of msr-files. Especially useful for msr-files dealing with many runs/detectors. A technical documentation of musrStep can be found here.
mupp: is the muSR parameter plotter. It allows to plot values in db- or dat-files (collections). A technical documentation of mupp can be found here.
addRun: allows to add runs from the command line
any2many: should be a "universal" muSR data-file-format converter.
dump_header: is a small program to dump the header information of a muSR data file to the standard output.
musrRootValidation: this is a program to validate MusrRoot files.
write_musrRoot_runHeader: Is a little example program showing how to write MusrRoot files.
Road map and missing features
The following features should eventually be implemented, but are still missing:
non-muSR: The plan is to add an option to fit/plot versus , where is a given data set element.
add an interface to maxent
Short comings of the current musrfit design
The musrfit framework has some shortcomings which will shortly discussed here:
musrfit is not fully thread save do to the current implementation of LF in PTheory. Perhaps this part should be redesigned at some point to resolve this problem.
Currently each msr-file run holds its one theory object. This is not very nice for costly user functions which will need to setup internal things for each run, even though resources could be shared.
This two points are somewhat contradictory, and currently it is not clear which way to go.
How to report bugs
Bugs, unexpected features, can be reported directly to me: