Home | History | Annotate | Download | only in lmfit
      1 lmfit-6.1, released 2dec15:
      2 
      3 - docs:
      4   - new man page lmfit(7)
      5   - 'BUGS' section in man pages
      6 - code cleanup:
      7   - lmcurve_tyd in separate source file
      8 
      9 lmfit-6.0, released 24nov15:
     10 
     11 - API changes:
     12   - a few more 'const' qualifiers in lmmin and lmcurve.
     13   - new wrapper function lmcurve_tyd, for use in GROMACS
     14 - code cleanup:
     15   - further unify code layout
     16   - use temporary variable for readability in lmcurve (suggested by T. Klauser)
     17 
     18 lmfit-5.3, released 24nov15:
     19 
     20 - autotools:
     21   - set default optimization -O3
     22 - monitoring:
     23   - detect if norm is not finite, new outcome code 12 = "found nan"
     24   - print parameters before invoking callback functiion
     25 - docs:
     26   - correct typo in lmmin(3)
     27 - code cleanup:
     28   - uniform code layout, starting from clang-format
     29   - correct and improve comments, especially in qrfac
     30   - uppercase matrix names
     31 - testing:
     32   - new unit test directory test/, for development purposes only
     33 
     34 lmfit-5.2, released 23oct14:
     35 
     36 - bug fix:
     37   - correct man page (5.0 API change)
     38 - acceleration(?):
     39   - revert to just one malloc for all workspaces, now based on a char array
     40 
     41 lmfit-5.1, released 29aug13:
     42 
     43 - bug fix:
     44   - FILE** initialization from &stdout was not standard compliant
     45     (report by Jan Krieger, cf http://stackoverflow.com/questions/18505530);
     46     now FILE* initialized to NULL
     47 - code cleanup:
     48   - better wrapper for "extern C" declaration
     49 
     50 lmfit-5.0, released 9aug13:
     51 
     52 - API changes:
     53   - removed callback function for printout
     54   - removed control structure for printout; some par's go to lm_control_struct
     55   - pivoting can no longer be switched off
     56   - from now on, addition of par's to lm_control_struct is not an API change
     57 - bug fix:
     58   - correct memory leak introduced by reversal of mallock trick
     59   - restore default scale_diag=1
     60 - monitoring:
     61   - improved text messages ("success" -> "converged", we should not say more)
     62 - demo: reworked examples
     63   - new example nonlin1: solution of 2 nonlinear equations in 2 variables
     64   - example surface1 improved and included in man page lmmin(3)
     65   - otherwise testsuite started as new project fittest
     66 - packaging: configure now supports pkg-config
     67 
     68 lmfit-4.0, released 16jul13:
     69 
     70 - binary library renamed: lmmin -> lmfit
     71 - API changes:
     72   - lmcurve.h no longer depends on lmmin.h, but only on new lmstruct.h
     73   - low-level API lmdif is removed (code integrated in lmmin)
     74   - lmcurve_fit -> lmcurve
     75   - new control parameter 'pivot' (default: pivoting is used, as before)
     76   - new structure lm_princon_struct, generalizing printflags
     77   - in consequence thereof, new parameter lists for lmcurve and lmmin
     78 - code cleanup:
     79   - ensure strict C90 compliance: no C++ comments; replace non-standard
     80     struct assignement (reported by Elio Mazzocca, using LCC)
     81   - revert malloc trick of release 3.4 (readability is more important)
     82   - source code comment blocks moved around, to reduce duplications
     83 - build scripts cleanup:
     84   - demo programs are no longer installed to $bindir
     85   - configure.ac: cleaned up, and inserted comments
     86 - documentation:
     87   - new web location: apps.jcns.fz-juelich.de/lmfit
     88   - new entry page (dokuwiki) instead of man page
     89   - man page split and largely rewritten: lmcurve(3), lmmin(3)
     90 
     91 lmfit-3.5, released 3feb13:
     92 
     93 - changed overall license to FreeBSD to facilitate inclusion in Linux
     94   distributions (request by M. Hroncok)
     95 - directory doc renamed man
     96 
     97 lmfit-3.4, released 21jan13:
     98 
     99 - only one malloc call to allocate all arrays (proposal by F. Polchow)
    100 - liblmmin_la_LDFLAGS += -lm (required by Ubuntu, report by J. M. Agosta)
    101 - there is now an alternative ruby binding, using inline instead of swig
    102   (contribution by I. Drozdov)
    103 - long message for degenerate case now suggests increasing epsilon
    104   (suggestion by Nghia Ho)
    105 
    106 lmfit-3.3, released 12sep12:
    107 
    108 - moved "int" declarations to top of lm_printout_std() and lmmin()
    109   (required by Visual Studio 2005: bug report M. Beek)
    110 - corrected typo 0.55 -> 0.5 (bug reports M. Kardas and D. Pescia)
    111 - man pages now produced by make; finally got rid of dmake
    112 - untabified code (hint by W. Pimenta)
    113 
    114 lmfit-3.2, released 28mar10 (preview 27mar10):
    115 
    116 - shared library is given correct version number (set in configure.ac)
    117 - man page lmfit(3) is copied by dmake to lmmin(3) and lmcurve_fit(3)
    118 
    119 lmfit-3.1, released 12mar10:
    120 
    121 - debian directory not part of tgz distribution
    122 - temporarily removed lmmin.3 (was symlink -> lmfit.3)
    123 
    124 lmfit-3.0, released 2mar10 (preview 27feb10):
    125 
    126 - for parameter close to zero, change step width for calculation of jabobian
    127 - outer iteration counter starting at zero (C style)
    128 - replace BUG by LMFIT_DEBUG_MESSAGES and .._MATRIX to allow control by -D
    129 - remove redundant calculation by exchanging workspaces and lm_lmpar output
    130 - eliminate unncessary wa1 = -wa1 computation
    131 - avoid passing wa3 to wa1, choose better names for work arrays in lm_par
    132 - migrate documentation from brain-damaged asciidoc to pod
    133 - rewrote interface documentation
    134 - API changes:
    135   -- eliminate lm_initialize_control, provide defaults for float and double
    136   -- separate limits and status records
    137   -- separate generic minimization and one-dimensional curve fitting
    138   -- simplify the latter
    139 - replace curve-fitting demo
    140 - provide surface-fitting demo (correspondence M. Rudolphi)
    141 - provide vector minimization demos
    142 - test for fnorm<=LM_DWARF, renumbered info values 0, 10, 11
    143 
    144 lmfit-2.6, released 29sep09:
    145 
    146 - nfev incrementation even if printout=0 (bug report C. Tanner)
    147 - correct t->tvec, y->yvec in man page  (bug report C. Tanner)
    148 
    149 lmfit-2.5, released 20sep09:
    150 
    151 - malloc==NULL ? (suggestion R. Strickland)
    152 - allow printout=NULL (suggestion J. Lodewyck)
    153 - improve infmsg (correspondence B. McHoull)
    154 - eliminate some static variables (p25, p5, p75, ..)
    155 - eliminate function data types; they obscure more than they help
    156 
    157 lmfit-2.4, released 27jul08:
    158 
    159 - clearer file headers
    160 - clearer licence (everything has ever been in the public domain)
    161 - machine-dependent arithmetic constants from float.h (suggestion M. Bydder)
    162 - minor improvements of comments
    163 
    164 lmfit-2.3, released 5apr08:
    165 
    166 - fixed bug sf#1817631: replaced confusing variable names in lmmin.c:lm_qrsolv()
    167 - accepted feature request 1814970: inclusion protection in headers
    168 - accepted feature request 1814976: cplusplus wrapper in headers
    169 - fixed bug sf#1868399: typos in debug messages
    170 - accepted proposal from M. Bydder:
    171      improved calculation of differences in lmmin, lines 415-417
    172 - reverted comments in lmmin.c to pure C style
    173 - improved documentation of interfaces
    174 
    175 lmfit-2.2, released 20sep07:
    176 
    177 - no change log has been maintained,
    178   there are just the sourceforge release notes
    179