#---------------------------------------------------------------------
# ChangeLog
#
# $Id$
#---------------------------------------------------------------------

changes since 0.11.0
===================================
NEW 2013-09-10 add a stretched Kubo-Toyabe function to the PTheory class, including 
               an update of the docu.
NEW 2013-02-14 (i) adding t0 estimate for single histogram fits. The estimate
               procedure is documented under doc/memos/estimateN0.
	       (ii) adding a more flexible preference handling in musredit.
	       Likely it will not ported anymore to musrgui.
	       (iii) adding 'recent files' to musredit.
	       In order that this changes are working properly, the configure
	       script needs to be executed once more, sorry.
NEW 2013-01-15 adding an external spin valve related library, currently
               only containing a skewed Lorentzian.
NEW 2013-01-07 print out the estimated time needed for the Minimize,Minos, etc.
               both, to the stdout and to the MINUIT2.OUTPUT file.
NEW 2012-11-19 added a flag in the Fourier block (dc-corrected) which can
               be used to subtract a potential DC-offset before the Fourier
	       transform is carried out.
NEW 2012-10-25 (i) add PRINT_LEVEL to the command block (0='nothing' to
3='everything'). This allows to tune the Minuit2 output. (ii) added the
possibilty to give the fit range in bins. For details see the docu.  
NEW 2012-09-24 add header information for printing.
NEW 2012-05-31 added Noakes-Kalvius function (see A. Yaouanc and P. Dalmas de Reotiers, 
               "Muon Spin Rotation, Relaxation, and Resonance" Oxford, Section 6.4.1.3).
NEW 2012-05-25 musredit/musrgui: added a dump muSR data header file information. 
NEW 2012-05-22 added spin rotation angle to the LEM MusrRoot file.
NEW 2012-05-12 added dump_header. This is a little program which dumps the
               header information of a given muSR data file onto the standard
	       output. Since dump_header also includes the option of
	       nexus_dump and read_musrRoot_runHeader these latter programs
	       were removed.
NEW 2012-04-24 added a first version for negative muon fitting. At the same 
               time substaintial bug fixing has been carried out (mainly the
	       logx/logy handling).
FIXED 2013-12-16 fixed a couple of bugs on level of config. This is needed expecially
                 for Mac OS X 10.9 (Mavericks).
FIXED 2013-11-29 in the global mode of msr2data for run lists, instread of the
                 value of the global parameter, the positive error was written into
                 the DB file. This is fixed now.
FIXED 2013-11-20 suppress automatic N0 esitmate for chisq-only calculation
                 MUSR-270.
FIXED 2013-01-21 fixed any2many bug concerning input file lists as described
                 in MUSR-247. Rewrote the template browser.
FIXED 2012-12-18 fixed a shortcoming of the outdated TLemRunHeader class
                 (see MUSR-246).
FIXED 2012-11-19 fixes issue with too many t0's in the msr-file (see
                 MUSR-238).
FIXED 2012-11-19 the Fourier transform had 1 Bin too much, this is fixed now
FIXED 2012-11-06 changed to out formating of the fitting parameters such that
                 enough relevant digits are written, which was not always the
		 case previously.
FIXED 2012-10-29 fixed missing read call in PMsr2Data.
FIXED 2012-09-23 fixed wrong chisq output in musrview if expected chisq is
                 present.
FIXED 2012-05-30 fixed RRF  bug in single histo plotting.
FIXED 2012-05-18 fixed wrong forward/backward tag for ROOT-PPC (MUSR-215) 
CHANGED 2013-12-20 upgrade of cuba to version 3.2. Merge in from BMW 
CHANGED 2013-12-16 prettyfied the Noakes-Kalvius formulae. Furthermore added 
                   a sub-folder with cross checks for these formulae.
CHANGED 2013-11-12 changed normalization of log max likelihood according to S.
Backer and R.D. Cousins NIM 221, 437 (1984), in order to have a
"goodness-of-fit" criteria.
CHANGED 2012-12-11 if multiple SAVE are present in the COMMAND block, append
                   MINUIT2.OUTPUT file. Added docu for PRINT_LEVEL (MUSR-244).
CHANGED 2012-11-19 replaced hard coded gyromagnetic ratio of the muon in the
                   whole code.
CHANGED 2012-11-09 when converting to WKM, take the beamline tag to decide
                   which exact WKM flavour should be written.
CHANGED 2012-08-28 prevent LF from allocating too much memory
CHANGED 2012-06-29 changed handling of the timeout for musrfit.
CHANGED 2012-05-10 prevent any2many from overwriting an input file. At the
   some additional bug fixing of any2many has be carried out.
CHANGED 2012-05-08 updating docu

changes since 0.10.0
===================================
NEW 2012-04-15 added timeout facility for musrfit, musrview, musrt0. Adopted musredit/musrgui accordingly.
               This is at least a partial workaround until it can be pinned down why sometimes musrfit, etc.
               do not terminate properly.
NEW 2012-03-28 added a validator program (musrRootValidation) for MusrRoot files.
NEW 2012-03-22 added a first version of MusrRoot, the next muSR file format at PSI. At the same time a rewrite of 
    the low run data handling has been done which enables a proper Red/Green handling with histogram sets addressable
    either via the histogram number or the index in the data vector.
CHANGED 2012-03-22 removed outdated musrparam.cpp. This program is not needed anymore since msr2data is much
    more powerful and deals with all (and much more) options which where present in musrparam.     

changes since 0.9.0
===================================
NEW 2011-12-22 added nexus_dump. It is used to dump nexus files in an ascii
form. For instance it can be used to read header info.
NEW if the background is estimated form an interval rather than fitted, it will be added as a comment
    to the background interval tag. (MUSR-192).
NEW forward/backward accept now not only c0 c1 c2 ... cn, but also c0-cn cm-cp, or c0 c1-cn cm cx-cy, etc. (MUSR-201, improvement whish).
NEW added minimal NeXus IDF 2 support. 
NEW Added the online documentation to the repository. It can be found under "doc/html".
NEW added chisq per run block information (all fit types). The same output rules as for the expected chisq are in place.
NEW calculate expected chisq (Pearson's chisq) for single histogram fits. It always will send this information to the stdout
    but only writes it to the msr-file if a corresponding flag in the musrfit_startup.xml is enabling it. The following
    expected chisq's are calculated: total expected chisq, and the per histo expected chisq. (MUSR-194)
NEW the chi^2 calculation in single-histogram and asymmetry fits is parallelized
    if musrfit is built using a compiler supporting OpenMP (e.g. GCC >= 4.2)
    Using --disable-omp this feature can be disabled on the configure level.
NEW any2many: force the user to define the exact NeXus ouput format (HDF4,HDF5,XML)
FIXED 2012-01-05 fixed a bug in PRunAsymmetry::PrepareData relevant when combining addrun's and grouping (MUSR-209). 
      Remove some commented out stuff from PRunSingleHisto.
FIXED 2011-12-23 changed Qt parts of configure.ac in order to be compatible
with BSD MacOS X
FIXED 2011-12-22 some more work towards a proper NeXus muon data format support.
FIXED proper phase correction for Re/Im Fourier transform (MUSR-206)
FIXED when release or restore is called (command block commands), the
corresponding parameter error is set to 2% of its parameter value (MUSR-188).
FIXED the wrong normalization when using "SCALE_N0_BKG FALSE" together with view_packing (MUSR-184)
FIXED crash in non-interactive mode of musrt0 when data file doesn't exist (MUSR-133)
FIXED wrong asymmetry fit plotting if data range is not provided (MUSR-203)
FIXED broken run-list interface to msr2data in musredit/musrgui (MUSR-202)
FIXED some severe issues in the run-number-digit determination of msr2data introduced in late 2010
FIXED a musrview exception error when starting with t0's very much off to the positive side in the msr-file (MUSR-199)
FIXED a linking problem when only shared libraries are built on Cygwin
FIXED the problem that in certain environments XML files could not be parsed (MUSR-122)
FIXED crash of musrview in case the XML startup file is present but cannot be parsed correctly
FIXED crash in case a non-existing userFcn is called from an existing library (MUSR-159)
FIXED slightly wrong chisq since the 0-bin entries were treated wrongly for scaled N0/Bkg data (MUSR-193)
FIXED the evaluation of the LF depolarization functions (before numerous unnecessary calculations were performed)
FIXED casting problem between uint32 and time_t for some compilers (MUSR-185)
FIXED bug reported in MUSR-183: missing background for 2nd histo in asymmetry fits when using musrt0.
FIXED Makefiles so that the NeXus support will not be built if it has not been enabled during the configure stage
FIXED ASCII export from musrview in case of a Fourier-Power- or Fourier-Phase-difference plot
FIXED bug in asymmetry fit with fixed background
CHANGED Nonlocal: optimized the number of calculations of B(z)
CHANGED Integrated building and installing the Qt editor into the musrfit installation.
CHANGED musredit/musrgui msr2data interface such that it is hopefully closer to the command line (MUSR-162, MUSR-173)
CHANGED the behavior of msr2data so that
        * it proceeds to the next run if a fit did not converge (and does not stop as before)
        * it always tries to read the data files if the nosummary option is not present
          (before this was switched off for the next runs when the data file of the present run could not be read)
CHANGED in case first good bin (fgb) is not given, it is now fgb=t0+(10ns/time resolution) (MUSR-190) 
CHANGED improved handling of 'old' ROOT LEM data files (2006 and earlier) for any2many (MUSR-178)
CHANGED improved handling of WKM/ASCII in PRunDataHandler for any2many (MUSR-172)
CHANGED the data-file-name handling (MUSR-195).
        It is now possible to specify the full file name in the RUN block (including the extension).
CHANGED cosmetics in the musrview legend concerning the units
CHANGED the user-function dependency from libPMusr to libPUserFcnBase

musrfit 0.9.0 - changes since 0.8.0
===================================
NEW added NeXus support. Still a lot of testing will be needed, documentation updated, etc.
NEW added a magnetic proximity user function to the ASlibs
NEW added the command SCALE_N0_BKG TRUE | FALSE to the command-block. This can be used to force a single histogram fit 
    to use either 1/ns scaling for N0 and background or 1/bins one. 
NEW any2many: some more work, including the PSI-BIN write routines which are officially not released yet.
NEW extended global mode in msr2data
NEW any2many: an attempt to write the universial musr-data-file converter. Just started, needs still some work.
NEW musrt0: added the possibility to show the t0 saved in the data file 's'. Furthermore added the option
    --getT0FromPromptPeak, -g with <firstGoodBinOffset>: will, in non-interactive mode estimate the t0's from 
    the prompt peak and write it into the msr-file (MUSR-133).
FIXED formatting issues in the FUNCTIONS block (MUSR-171)
FIXED plotting issues described in MUSR-174.    
FIXED accidental casting of a NULL pointer in msr2data
FIXED crash of musrfit if a run-data-file is not found (MUSR-176)
FIXED corrected time resolution for WKM from (ns) -> (us)
FIXED the formating of fixed parameters (step=0) where wrongly formatted (connected to MUSR-167). This
      should be done correctly now.
FIXED for single histogram fits, the chisq given was wrong (not the fit-result though). I missed some needed scaling
      when normalizing to 1/ns rather than bins. The same is true for log max. likelihood. I am rather depressed that
      nobody so far found this but only R. Scheuermann pointed out there might be a problem.    
FIXED background range correction, such that it is a multiple of the proton cycle time
FIXED linking of BMWlibs on Cygwin
FIXED various bugs in msr2data
FIXED 2 little annoying problems: (i) now it is possible to zoom down to the single bin in musrview. 
     (ii) when switching between data- and difference-view, the x-range doesn't change anymore.
FIXED musrt0 crash for histogram number out of range (MUSR-157)
FIXED fixes the inadequate attempt to use log max likelihood fit for asymmetry/non-muSR fit (MUSR-148)
CHANGED the file name of the XML startup file for some of the libraries included in the BMWlibs to "BMW_startup.xml"
CHANGED added an additional layer for process killing to musrgui/musredit which hopefully should help to reduce the number of 
        musrfit/musrview corpses with high CPU load.
CHANGED the formating of the parameters such that they show the precision corresponding to the error. At the
        same time some other parameter formating is improved (MUSR-167) 
CHANGED the default behavior of msr2data for writing output-file headers (see svn-log 4758)
CHANGED the behavior of msr2data when non-existing files are encountered---as far as possible they should be ignored now
CHANGED less strict handling of empty FUNCTION block
CHANGED cosmetics in the y-labelling (MUSR-154)
CHANGED maximum possible run number for the use in msr2data to numeric_limits<unsigned int>::max() (MUSR-155)
UPDATED built-in cuba-library to version 2.1 in BMWlibs

musrfit 0.8.0 - changes since 0.7.0
===================================
NEW added y-range option to usr_fit_ranges in the PLOT block (MUSR-144).
NEW added the option to split a user function into a global and run-block related part (see MUSR-134). If the 
    global option is used, this can potentially increase the efficiency up to the number of run-blocks since 
    the time consuming calculations are done only once per changed parameter set. Examples where this approach
    is profitable are: Abrikosov vortex lattice fits, Nonlocal Meissner screening.
FIXED compilation of BMWlibs with gcc 3.x
FIXED hanging musrt0's should be eliminated now (MUSR-153)
FIXED wrong WARNING message for use_fit_ranges
FIXED bug in event handling leading to crash for non-muSR when switching between view and difference view
CHANGED improved y-range scaling for Fourier

musrfit 0.7.0 - changes since 0.6.0
===================================
NEW added FIT_RANGE RESET | start end | s1 e1 s2 e2 .. sN eN command to the COMMAND block
NEW added FIX/RELEASE/RESTORE minuit2 command to the COMMAND block 
NEW implemented more checks on the integrity of the msr-file
NEW [MUSRGUI/MUSREDIT] msr2data default option flags in musredit_startup.xml
NEW 'global fit' option for msr2data
NEW implementation of SCAN/CONTOURS/MNPLOT (MUSR-100)
NEW possibility to use sqrt() and pow(base, exponent) in the FUNCTIONS block
NEW grouping of histograms
NEW [MUSREDIT] port of musrgui (Qt3.x) to musredit (Qt4.6)
NEW [MUSRGUI] better handling of font changes, and adding the possibility to define default font and font size in musrgui_startup.xml (MUSR-105)
NEW RRF option for single histograms and asymmetry plot
NEW integration of a few external musrfit plug-ins into the standard build process (disabled by default, see log of svn rev 4313)
NEW default estimates for 'data' and 'background' entries in RUN blocks
NEW directory with some msr- and data-files for quick testing of new musrfit installations
NEW option to musrt0: the key 'T' will set the t0 cursor to the maximum of the histogram
FIXED chisq/maxLH labels in the statistics block are properly handled now (MUSR-148)
FIXED y-unzoom failure for musrt0 (MUSR-77)
FIXED fitting issue for boundaries none/none (MUSR-136)
FIXED formatting of the ASCII fit output file for long parameter names (MUSR-142)
FIXED time window frame bug in musrview (MUSR-138)
FIXED calculation of LF relaxation functions for big static widths (MUSR-139)
FIXED minor msr2msr issue concerning the statistic block
FIXED Abragam function
FIXED removed phase parameter in Fourier power plots (MUSR-116)
FIXED segmentation fault in musrview when pressing d-f-d (MUSR-115)
FIXED wrong 'fixed background feeding'
FIXED [MUSRGUI] system variable access bugs
FIXED bug in lifetimecorrection-plot (MUSR-123)
FIXED axis labeling in non-muSR-plot (MUSR-124)
FIXED non-muSR ascii export first point missing (MUSR-119)
FIXED handling of wrong run numbers in PLOT block (MUSR-121)
FIXED reading of MUD data files in 64-bit environments (at least for EM64T)
FIXED compilation with GCC 4.4/4.5
FIXED [MUSRGUI] problems if started with an msr-file from the command line which is not in the current directory (MUSR-117)
FIXED [MUSRGUI] calls to musrview, musrt0 and msr<->mlog when paths contain spaces, etc.
FIXED usage of signs in the FUNCTIONS block
FIXED difference of Fourier != Fourier of difference (MUSR-107)
FIXED handling such that the proper initial phase is fitted
FIXED segmentation fault if number of histograms is smaller as the specified histogram number (MUSR-110)
FIXED warning messages
FIXED db data tag reading error
FIXED usage of BOOST >= 1.38.0
FIXED the extraction of the time resolution for the mud data format, since MUD_getHistFsPerBin seems sometimes to return just crap.
CHANGED musredit: change into the msr-file directory before calling musrview. This is needed if userFcn's are using startup XMLs.
CHANGED musredit: improved file system watcher notification mechanism to prevent multiple user notifications.
CHANGED fit range decimal precision handling of PMsrHandler improved (MUSR-150 request). It is now
        handling up to 4 decimal places.
CHANGED musredit: now it is keeping the directory from which the last msr-file has been loaded. This directory is 
        used when a new open dialog is called.
CHANGED another attempt to get proper zooming/unzooming. This time I tried to disentangle the rather messy PMusrCanvas class.
        Most of the checks seems to work, though still for non-muSR style, musrview is crashing once in a while which seems to 
	come from root rather than musrview. I will try to investigate that on root macro level. 
CHANGED in root-5.27.04 the zooming/unzooming handling was modified which forced me to add some more code for 
        proper zooming/unzooming via 'u' key
CHANGED write the ROOT histogram of the correlation matrix to the output file as well as not only the graph
CHANGED allow case insensitive 'run' as first entry in a runlist-file as input to msr2data
CHANGED [MUSRGUI/MUSREDIT] '(Un)comment' is splitted into 'Comment' and 'Uncomment'
CHANGED handling for invalid MUSRFITPATH
CHANGED build process: checks for MINUIT2, disable static libraries, disable F77 checks
CHANGED stricter handling of ADDRUN (MUSR-106)
CHANGED ASCII export from musrview
CHANGED check for subsequent numbered parameters (MUSR-103)
CHANGED WKMFULLDATAPATH to MUSRFULLDATAPATH
UPDATED triumf mud file support. Now the mud source from triumf is officially published under LGPL
UPDATED source code documentation
UPDATED PSIBIN/MDU class from AA/AR

musrfit 0.6.0 - changes since 0.5.2
===================================
NEW support for reading PSI MDU-ASCII data files
NEW estimate of t0 for the case it is not present, neither in the msr-file nor in the data-file (MUSR-73).
FIXED 0/1 problem in data and background ranges
FIXED crash of musrfit in case no 'background' line is present in the RUN-block (MUSR-99)
FIXED bug with t0 handling in case of ADDRUN and missing t0's in the msr-file, but t0's present in the data file (MUSR-94)
FIXED 'unwanted empty line problem of mlog-files' (MUSR-95)
FIXED building of PSI-BIN library on MacOSX
FIXED severe memory leaks
FIXED bug in the spin glass function for negative times
CHANGED improved handling for musrt0
CHANGED musrfit_startup.xml, added ALC and LEM AFS paths to the default paths
CHANGED ascii export: Produce now two files, one for the data and one for the theory (MUSR-87, MUSR-92)
CHANGED encapsulation of data structures in classes
REMOVED 'save db' support from musrview

musrfit 0.5.2 - changes since 0.5.1
===================================
NEW initial support for reading TRIUMF MUD data files

musrfit 0.5.1 - changes since 0.5.0
===================================
NEW Read _measured_ temperature(s) from data files (ROOT, PSIBIN, WKM)
NEW msr2data rewritten in C++
NEW in msr2data added support for taking parameters like temperatures and the applied field from the data files (PSIBIN, WKM)
NEW in msr2data LEM-data RA-HVs are taken from the RunSummary in the ROOT file (if present) - other data is taken from the TLemRunHeader

musrfit 0.5.0
=============
NEW Initial release supporting building by autotools on Linux, MS Windows (Cygwin), Mac OS X

#---------------------------------------------------------------------
# this is the end ...
#---------------------------------------------------------------------
