86 lines
5.2 KiB
Plaintext
86 lines
5.2 KiB
Plaintext
/*********************************************************************************************
|
|
|
|
name: musrfit.dox
|
|
|
|
created by: Andreas Suter, 2010/05/31
|
|
|
|
content: Description of musrfit framework.
|
|
|
|
**********************************************************************************************/
|
|
|
|
/**
|
|
|
|
\mainpage musrfit - a framework to analyse muSR data.
|
|
|
|
<p>This pages here are meant to explain the software structure of the musrfit framework.
|
|
|
|
<p>People merely interested in the handling of the programs should check this link:
|
|
\htmlonly
|
|
<a href="http://lmu.web.psi.ch/musrfit/user/html/index.html">musrfit user manual</a>
|
|
\endhtmlonly
|
|
\latexonly
|
|
musrfit user manual: \texttt{http://lmu.web.psi.ch/musrfit/user/html/index.html}
|
|
\endlatexonly
|
|
|
|
<p>People which would like to know how to install the musrfit framework, please check this link:
|
|
\htmlonly
|
|
<a href="http://lmu.web.psi.ch/musrfit/user/html/setup-standard.html">How to setup musrfit on different platforms</a>
|
|
\endhtmlonly
|
|
\latexonly
|
|
How to setup musrfit on different platforms: \texttt{http://lmu.web.psi.ch/musrfit/user/html/setup-standard.html}
|
|
\endlatexonly
|
|
|
|
//****************************************************************************************************
|
|
\section overview Overview
|
|
|
|
<p>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
|
|
\htmlonly <a href="http://root.cern.ch">ROOT</a>\endhtmlonly \latexonly ROOT: \texttt{http://root.cern.ch}\endlatexonly framework from CERN
|
|
|
|
<p>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.
|
|
Only bug fixing will be done on this version, and if you have >= Qt4.6 available you should use musredit instead.
|
|
- **musredit**: an editor to handle msr-files, calling musrfit, etc. from within a simple text editor, based on >= Qt4.6. A technical documentation of musredit can be found
|
|
\htmlonly <a href="./musredit/html/index.html">here.</a>\endhtmlonly
|
|
- **musrWiz** (beta): allows to create an initial msr-file by a step-by-step instruction wizard.
|
|
- **musrStep**: allows to efficiently deal with initial step values of msr-files. Especially useful for msr-files dealing with many runs/detectors.
|
|
- **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
|
|
\htmlonly <a href="./mupp/html/index.html">here.</a>\endhtmlonly
|
|
- **MuSRFit**: a graphical user interface based on PerlQt (written by Z. Salman) for an easy to use interface to the musrfit framework.
|
|
Compared to the more general approach of writing msr-files, it has some limitations, though it might be easier for a first user of the musrfit framework.
|
|
- **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.
|
|
|
|
\section roadmap Road map and missing features
|
|
|
|
<p>The following features should eventually be implemented, but are still missing:
|
|
- non-muSR: The plan is to add an option to fit/plot \f$f(x_1,\ldots,x_n)\f$ versus \f$g(x_1,\ldots,x_n)\f$, where \f$x_i\f$ is a given data set element.
|
|
- add an interface to maxent
|
|
|
|
\section shortComings Short comings of the current musrfit design
|
|
|
|
<p>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.
|
|
|
|
\section bugs How to report bugs
|
|
|
|
<p>Bugs, unexpected features, can be reported directly to me: \verbatim andreas.suter@psi.ch, \endverbatim or entered in the bug-tracking tool at
|
|
bitbkucket \verbatim https://bitbucket.org/muonspin/musrfit/issues \endverbatim.
|
|
|
|
*/
|