iFit: Credits and Contributions


  1. Credits
  2. Licensing
  3. Project cost
  4. Contributions



Credits

iFit was invented by E. Farhi and took many years to come to you. ILL, Grenoble, France <www.ill.eu>
Substantial contributions from Y. Debab and P. Willendrup.
If you produce scientific output using iFit, I'd appreciate if you cite the following reference:
iFit is a product from the Computing for Science group at the Institut Laue-Langevin, Grenoble, France.

Disclaimer:
This software is experimental, and should not be considered bullet-proof. In particular, expect many bugs - which should be reported to me [farhi (at) ill.fr] if you want them to be fixed quickly. Also, this prototype is known to be slow. This will be improved gradually...

Licensing

The iFit package is provided within the frame of the GPL 2 license.

Basically this is open-source. Use it if you find it usefull, and enrich it.
If you do produce new methods, please send them back to me so that they are added in the software and thus benefit to the community.
 
Any commercial use of this library (that is re-use of the code for commercial purposes without distributing the sources under a similar GPL) is prevented. Any inclusion into an other software must properly include the source code, and cite authors.
 
A number of additions, included in the software, where obtained from the Matlab Central contributions, and are BSD licensed.

Project cost

I am currently the only developper of this project, which has been slowly designed for 10 years before writting the iFit basic project architecture. An initial prototype, specnd, was written earlier in years 2003-2004, then re-writtem from scratch with some of the current design principles in 2006 by Y. Debab [trainee at ILL] and me. The final project contains about 55000 lines of code (as of May 10th, 2011). About 10000 lines of code are contributed form other authors (see credits list below).

CodeBase Analysis (number of lines of code) on May 10th, 2011
@iData 12355
iFiles 8343
iOptim 11746 (about 9171 contributed)
iFuncs 1028
GUI 2625 (with mcstas hooks, rest of it currently not used)
Docs 15408 (mainly HTML)
TOTAL
51505 lines of code (LOC)
LOC
42334 (excluding contributed code)
 
CoCoMo analysis <http://en.wikipedia.org/wiki/COCOMO> for 'Organic' project (excluding the contributed code in iOptim)
KLOC =  42; ab =  2.4; bb =  1.05; cb =  2.5; db =  0.38;
Effort Applied 121.5 [months-year] E=ab*KLOC^bb
Development Time 15.5 [months] D=cb*E^db
People required 7.8 [count] E/D
Estimated Cost 431 [k$]
E/D*55

Note: This clearly shows that I can work as 8 guys in a row, and I'm dramatically under-paid. Rubish... In fact I estimate I have worked about a total of one man-year on iFit over the last ten years.

Contributions

Most of contributions where extracted from Matlab Central, and are thus BSD licensed. Optimization routines have been adapted to match the Matlab fminsearch syntax.

Sliceomatic by Eric Ludlam <eludlam@mathworks.com>
(Matlab Central)
is used as a plotter for 3D volume data
<http://www.mathworks.com/matlabcentral/fileexchange/764>
fscatter3 by Felix Morsdorf, Jan 2003, Remote Sensing Laboratory Zuerich
used in plot
vol3d by Joe Conti, 2004
used in plot
<http://www.mathworks.com/matlabcentral/fileexchange/4927-vol3d-m-vol3dtool-m>
genopt by Douglas M. Schwarz 2006
used in iData binary operators
hPSO by Alexandros Leontitsis leoaleq@yahoo.com Ioannina, Greece 2004
used in fminswarmhybrid and fminswarm
modified to handle a no-hybrid optimization (pure swarm in fminswarm)
Simplex by F. Sigworth, 15 March 2003, S. H. Heinemann, 1987 and M. Caceci and W. Cacheris, Byte, p. 340, May 1984.
used in fminsimplex
powell by Argimiro R. Secchi (arge@enq.ufrgs.br) 2001
used in fminpowell
ossrs by Sheela V. Belur(sbelur@csc.com) 1998
used in fmingradrand
ga/gaconstrain by Javad Ivakpour javad7@gmail.com, May 2006
used in fminga
cmaes by Nikolaus Hansen, 2001-2007. e-mail: hansen@bionik.tu-berlin.de
used in fmicmaes (CMA-ES)
solvopt by Alexei Kuntsevich and Franz Kappel , Graz (Austria) 1997
used in fminralg
hooke by Kelley, 1998, Iterative Methods for Optimization, SIAM Frontier in Applied Mathematics 18
used in fminhooke
<http://www.siam.org/books/kelley/fr18/index.php>
imfil by Kelley, 1998, Iterative Methods for Optimization, SIAM Frontier in Applied Mathematics 18
used in fminimfil
<http://www.siam.org/books/kelley/fr18/index.php>
PSO by Brecht Donckels, BIOMATH, brecht.donckels@ugent.be 2006
used in fminpso
sce by Brecht Donckels, BIOMATH, brecht.donckels@ugent.be 2006
used in fminsce
LMFsolve by Miroslav Balda, balda AT cdm DOT cas DOT cz 2009
used in fminlm
<http://www.mathworks.com/matlabcentral/fileexchange/17534-lmfnlsq-solution-of-nonlinear-least-squares>
netcdf by Paul Spencer, 2007
used in iFiles
<http://www.mathworks.com/matlabcentral/fileexchange/15177-netcdf-reader>
plot2svg by  Juerg Schwizer, 22-Jan-2006
used in iFiles
<http://www.mathworks.com/matlabcentral/fileexchange/7401-scalable-vector-graphics-svg-export-of-figures>
hdf5extract by Daniel Buckton, 28 Mar 2007
used in iFiles
<http://www.mathworks.com/matlabcentral/fileexchange/14447-hdf-5-data-extractor>
pmedf_read and pmedfwrite by Petr Mikulik, Masaryk University, Brno, 11.8.2010
used in iLoad and iData/saveas
<http://www.sci.muni.cz/~mikulik/Soft4Synchro.html>
export3Dline2VTK (xyz line), exportTriangulation2VTK (2D surface) from David Gingras, January 2009
used in iData/saveas VTK
<http://www.mathworks.com/matlabcentral/fx_files/22602/2/exportTriangulation2VTK.zip>
<http://www.mathworks.com/matlabcentral/fileexchange/22603-export-3d-line-to-paraview>
writeVTK (3D object) by Tim 24 Mar 2009
used in iData/saveas VTK
<http://www.mathworks.com/matlabcentral/fileexchange/23416-writetovtk>
anneal by Joachim Vandekerckhove, 2006
use in fminanneal
<http://www.mathworks.com/matlabcentral/fileexchange/10548>
bfgswopt by Kelley, 1998, Iterative Methods for Optimization, SIAM Frontier in Applied Mathematics 18
used in fminbfgs
<http://www.siam.org/books/kelley/fr18/index.php>
ntrust by Kelley, 1998, Iterative Methods for Optimization, SIAM Frontier in Applied Mathematics 18
used in fminnewton
<http://www.siam.org/books/kelley/fr18/index.php>
ukfopt by Yi Cao at Cranfield University, 08 January 2008
used in fminkalman
<http://www.mathworks.com/matlabcentral/fileexchange/18217-learning-the-unscented-kalman-filter>
buscarnd by Argimiro R. Secchi (arge@enq.ufrgs.br) and Giovani Tonel(giovani.tonel@ufrgs.br) on September 2006
used in fminrand
<http://www.mathworks.com/matlabcentral/fileexchange/12776-ramdomic-search>
PDBRead by Sachin A. Nikumbh (snikumbh@mathworks.com) 05 Feb 2002
used as File importer
<http://www.mathworks.com/matlabcentral/fileexchange/1288>
ReadINX by J. Ollivier (ollivier@ill.eu) 2007
used as file importer.


E. Farhi - iFit Credits - $Date: 2011-10-24 17:10:14 $ $Revision: 1.21 $ - back to Main iFit Page ILL, Grenoble, France <www.ill.eu>