#------------------------------------------------------------------------ # ToDo.txt # Andreas Suter, 2007/11/28 # $Id$ #------------------------------------------------------------------------ --------------------- short term: --------------------- * dump data and theory after fit (ascii/root): **DONE** for now done for ascii/root asymmetry && single histo: all the rest is missing * migrate all typedef's and defines -> PMusr.h **DONE** * Since rootcint cannot handle the spirit include files I will try to remove all the root dictionary related stuff since almost for sure, nobody will use the classes from the cint interpreter level 2007/12/27 **DONE** * begin with the implementation of the FUNCTIONS block using the spirit parser framework **DONE** * 2007/12/30: implement functions in PTheory **DONE** 08-01-02 * 2008/01/02: nice function block output needed. **DONE** 08-01-02 * write a little standalone program which is converting the old msr-files to the new ones. **DONE** 08-01-04 * implement max.likelihood fits **DONE** 08-02-06 (for Single Histo only. For the others not clear how to do it.) * fix problems in FUNCTIONS of the form (sin(par1)) **DONE** 08-02-18 * fix output problems of the mlog files **DONE** 08-02-22 * if a parameter is not used at all, minuit is still varying it!! This is stupid. Check the minuit manual, there must be a function to "remove" these parameters, i.e. forcing minuit to ignore them. checked the manual: use fix() (see p.31) **DONE** 08-03-10 * implement table based theory functions (LF stuff) static GKT LF **DONE** 08-03-12 * setup startup handler with infos like: data path, symbol list, color list, ... **DONE** 08-04-04 * at the moment that startup handler is looked for in the directory where musrfit/musrview is executed, this is stupid. Define a place where to look for it. **DONE** 08-04-08 * do I need to cleanup AddText() objects from TPaveText etc myself? -> YES **DONE** 08-04-17 * need a CLEAN concept for handling data/theory generation for kView!! **DONE** 08-04-17 * something is strange with the coordinate system in TPaveText! **CHECK** * something is wrong with lifetimecorrection plot of musrview (up shifted data) **FIXED** 08-05-16 * implement access to user-function, i.e. functions not defined within musrfit, using the ROOT dictionary feature to look for them and use them. **DONE** * tshift implementation under way. Wrong and needs to be fixed: **FIXED** 08-06-16 * faulty dependency check in the Makefile when handling the PSI-Bin-Class stuff. Needs to be fixed! **FIXED** 08-06-16 * implement NonMuSR stuff **DONE** 08-06-20, some more testing needed * nonMusr: db-file format should be added. That this is going to work, in the RUN block part, a new entry is needed, namely xy-data. Indices or label are used to pick to proper data from the db-file. xy-data T asym <- labels or xy-data 3 6 <- indices **DONE** 08-08-08 * Minuit2: name length is now unlimited and hence the 10 char restriction can be lifted. **DONE** 08-08-08 * musrfit: switch "--keep-output-mn2" and "-k" needed. It will rename the MINUIT2.OUTPUT and MINUIT2.root files to fln-mn2.output and fln-mn2.root. This is sometimes nice to have. **DONE** 08-09-01 * PFitter.cpp: the value of the parabolic error in the MINUIT2.OUTPUT is wrong (only MIGRAD is called and neither HESSE nor MINOS). Suspect the problem in the ExecuteSave() routine. Needs to be checked. **DONE** 08-09-01 * PFitter.cpp: implement HESSE **DONE** 08-09-01 * implement FFT with msr-interface --------------------- intermediate term: --------------------- * start writing docu, i.e. transferring WKM doc from German -> English and describe new features with examples! * introduce error numbers with corresponding docu/explanation in the latex-docu. * implement RRF stuff --------------------- long term: --------------------- * implement ROOT based wkmview, i.e. all the graphical stuff needed including event handler, etc. * implement FFT with msr-interface * switch from make to cmake * add the possibility for cuts to db-files * add the possibility for variable transformations to db-files --------------------- bugs: --------------------- * when having multiple plots: closing some of the plots and finally pressing 'q' will lead to a crash since root already eliminated the closed canvas plot. --------------------- problems: --------------------- * rootcint cannot handle spirit framework includes, hence FUNCTIONS related stuff cannot be included into a root dictionary. --------------------- fixes: --------------------- * Needed to change some part of the Minuit2 source code, otherwise I got a strange linker error message. In MnMinos.h the constructors (3 overloaded versions) are defined implicitly. When linking against libPMusr.so which is using libMinuit2Base.so, I got the error message from the linker that is cannot find the reference to the second constructor. When transferring the implicit definition from the header file to the cxx, the problem was gone. Since to fiddle in the Minuit2 source code directly is ugly, I should look for a way to build libPMusr.so which doesn't have this problem. -> This problem has been resolved cleanly by using minuit2 delivered with root!