{"_id":"curve-fitting","_rev":"10-fe8fef427a1aeccd5a09ff40575c8f0f","name":"curve-fitting","description":"Levenberg Marquardt curve-fitting: minimize sum of weighted squared residuals","dist-tags":{"latest":"0.0.5"},"versions":{"0.0.1":{"name":"curve-fitting","version":"0.0.1","description":"Levenberg Marquardt curve-fitting: minimize sum of weighted squared residuals","main":"src/index.js","directories":{"lib":"src","test":"test"},"scripts":{"test":"mocha --require should-approximately-deep --reporter mocha-better-spec-reporter --recursive","build":"gulp build"},"repository":{"type":"git","url":"git+https://github.com/mljs/curve-fitting.git"},"keywords":["optimization","nelder","mead","numerical","methods","analysis","machine","learning"],"author":{"name":"Andres Castillo"},"license":"MIT","bugs":{"url":"https://github.com/mljs/curve-fitting/issues"},"homepage":"https://github.com/mljs/curve-fitting","dependencies":{"ml-matrix":"../matrix"},"devDependencies":{"browserify":"^8.1.3","del":"^1.1.1","gulp":"^3.8.11","gulp-header":"^1.2.2","gulp-rename":"^1.2.0","gulp-sourcemaps":"^1.3.0","gulp-uglify":"^1.1.0","mocha":"^2.2.5","mocha-better-spec-reporter":"^2.1.1","should":"^7.0.2","should-approximately-deep":"^1.1.0","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.0.0"},"gitHead":"cb820ceb08524467ee20b8cab3e805035fe61970","_id":"curve-fitting@0.0.1","_shasum":"41330b90f6b95f7650516d0efa7fc9eb8af8084e","_from":".","_npmVersion":"2.11.3","_nodeVersion":"0.12.7","_npmUser":{"name":"andcastillo","email":"andcastillo@gmail.com"},"dist":{"shasum":"41330b90f6b95f7650516d0efa7fc9eb8af8084e","tarball":"https://registry.npmjs.org/curve-fitting/-/curve-fitting-0.0.1.tgz","integrity":"sha512-Ufg1lBRqVD6trJsdBoLJK0z2HWc+S7vVal8UAvrR6Uv0CYvLfMz+DSUk8EBTC8PxxCxhfXu+eAJOEnBe+3znUw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDi9jrlwVc9E0BpmbXj3dspo81t8dq1/sQPAMbvicwIKAiBmzj9QbI/qnZFtc68UJg7c0OW0jsBGiMHnPn5xWsRKww=="}]},"maintainers":[{"name":"andcastillo","email":"andcastillo@gmail.com"}]},"0.0.2":{"name":"curve-fitting","version":"0.0.2","description":"Levenberg Marquardt curve-fitting: minimize sum of weighted squared residuals","main":"src/index.js","directories":{"lib":"src","test":"test"},"scripts":{"test":"mocha --require should-approximately-deep --reporter mocha-better-spec-reporter --recursive","build":"gulp build"},"repository":{"type":"git","url":"git+https://github.com/mljs/curve-fitting.git"},"keywords":["optimization","nelder","mead","numerical","methods","analysis","machine","learning"],"author":{"name":"Andres Castillo"},"license":"MIT","bugs":{"url":"https://github.com/mljs/curve-fitting/issues"},"homepage":"https://github.com/mljs/curve-fitting","dependencies":{"ml-matrix":"latest"},"devDependencies":{"browserify":"^8.1.3","del":"^1.1.1","gulp":"^3.8.11","gulp-header":"^1.2.2","gulp-rename":"^1.2.0","gulp-sourcemaps":"^1.3.0","gulp-uglify":"^1.1.0","mocha":"^2.2.5","mocha-better-spec-reporter":"^2.1.1","should":"^7.0.2","should-approximately-deep":"^1.1.0","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.0.0"},"gitHead":"a274b85b021503c8ab59c1fd9130afcfacc7805f","_id":"curve-fitting@0.0.2","_shasum":"ab232034843dba22056f61070cb96dbef5e5b396","_from":".","_npmVersion":"2.11.3","_nodeVersion":"0.12.7","_npmUser":{"name":"andcastillo","email":"andcastillo@gmail.com"},"dist":{"shasum":"ab232034843dba22056f61070cb96dbef5e5b396","tarball":"https://registry.npmjs.org/curve-fitting/-/curve-fitting-0.0.2.tgz","integrity":"sha512-4yEUBmkylTfvqDQJ1WzLJTrFOm9c7yZJhO5rshV4WrQt9I4I6JhEGCNDkQ6v0IgA6rJ6AHazdKHFntBfenTc4A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDu9jWTpKePiCzQYQCa9zo8Rce06HvQyNqRUr8aMiIB2AIhAJd0stTekjXoQiOUfd5NrkQbOzRWADaiqfX+6pGhUy2i"}]},"maintainers":[{"name":"andcastillo","email":"andcastillo@gmail.com"}]},"0.0.3":{"name":"curve-fitting","version":"0.0.3","description":"Levenberg Marquardt curve-fitting: minimize sum of weighted squared residuals","main":"src/index.js","directories":{"lib":"src","test":"test"},"scripts":{"test":"mocha --require should-approximately-deep --reporter mocha-better-spec-reporter --recursive","build":"gulp build"},"repository":{"type":"git","url":"git+https://github.com/mljs/curve-fitting.git"},"keywords":["optimization","nelder","mead","numerical","methods","analysis","machine","learning"],"author":{"name":"Andres Castillo"},"license":"MIT","bugs":{"url":"https://github.com/mljs/curve-fitting/issues"},"homepage":"https://github.com/mljs/curve-fitting","dependencies":{"ml-matrix":"latest"},"devDependencies":{"browserify":"^8.1.3","del":"^1.1.1","gulp":"^3.8.11","gulp-header":"^1.2.2","gulp-rename":"^1.2.0","gulp-sourcemaps":"^1.3.0","gulp-uglify":"^1.1.0","mocha":"^2.2.5","mocha-better-spec-reporter":"^2.1.1","should":"^7.0.2","should-approximately-deep":"^1.1.0","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.0.0"},"gitHead":"4c26fb62a9fa265086e5572d4b0cc3180a01b685","_id":"curve-fitting@0.0.3","_shasum":"ccc0a86c4365f3a10130a7dff0f04b66f7c7c753","_from":".","_npmVersion":"2.11.3","_nodeVersion":"0.12.7","_npmUser":{"name":"andcastillo","email":"andcastillo@gmail.com"},"dist":{"shasum":"ccc0a86c4365f3a10130a7dff0f04b66f7c7c753","tarball":"https://registry.npmjs.org/curve-fitting/-/curve-fitting-0.0.3.tgz","integrity":"sha512-kBKNo6Uf1fINPCPubCc5sTiZywdvZ2Rvmdr0ef9ml6DhZiMEuTpEq20M8fu+LGFTHB+iVZBMH3976kgBFBrDCw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDESwp7yXeOHf6MfODUPVPRVpqur/eGyNhrzjFsWZ60WAIgdHr2Ba9AgTeTAoBu/E81FG9JHV3KeU+fnfR9MFHOXY0="}]},"maintainers":[{"name":"andcastillo","email":"andcastillo@gmail.com"}]},"0.0.4":{"name":"curve-fitting","version":"0.0.4","description":"Levenberg Marquardt curve-fitting: minimize sum of weighted squared residuals","main":"src/index.js","directories":{"lib":"src","test":"test"},"scripts":{"test":"mocha --require should-approximately-deep --reporter mocha-better-spec-reporter --recursive","build":"gulp build"},"repository":{"type":"git","url":"git+https://github.com/mljs/curve-fitting.git"},"keywords":["optimization","Levenberg","Marquardt","curve","fitting","numerical","methods","analysis","machine","learning"],"author":{"name":"Andres Castillo"},"license":"MIT","bugs":{"url":"https://github.com/mljs/curve-fitting/issues"},"homepage":"https://github.com/mljs/curve-fitting","dependencies":{"ml-matrix":"latest"},"devDependencies":{"browserify":"^8.1.3","del":"^1.1.1","gulp":"^3.8.11","gulp-header":"^1.2.2","gulp-rename":"^1.2.0","gulp-sourcemaps":"^1.3.0","gulp-uglify":"^1.1.0","mocha":"^2.2.5","mocha-better-spec-reporter":"^2.1.1","should":"^7.0.2","should-approximately-deep":"^1.1.0","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.0.0"},"gitHead":"2f6d47a093228554298c052547321252d5bb2eef","_id":"curve-fitting@0.0.4","_shasum":"50012855c109b13462f530b42c35466c6c520434","_from":".","_npmVersion":"2.11.3","_nodeVersion":"0.12.7","_npmUser":{"name":"andcastillo","email":"andcastillo@gmail.com"},"dist":{"shasum":"50012855c109b13462f530b42c35466c6c520434","tarball":"https://registry.npmjs.org/curve-fitting/-/curve-fitting-0.0.4.tgz","integrity":"sha512-1j17Mjc3XupWg5mtuQ+N0NSghqwzjZr6K2Ww2SvsHTsUbdyvErFWKCGsp/SY5fe50TWdb29HLypVTHYDR4zD9w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDYlrr1fAog7Y0kjb4nUTiknIERZfFRDwxvwgcndrhrgwIhAOIFIfcvVaJtWephzCV9JQqLbu2tDD7Sx9mXXan8WbmX"}]},"maintainers":[{"name":"andcastillo","email":"andcastillo@gmail.com"}]},"0.0.5":{"name":"curve-fitting","version":"0.0.5","description":"Levenberg Marquardt curve-fitting: minimize sum of weighted squared residuals","main":"src/index.js","directories":{"lib":"src","test":"test"},"scripts":{"test":"mocha --require should-approximately-deep --reporter mocha-better-spec-reporter --recursive","build":"gulp build"},"repository":{"type":"git","url":"git+https://github.com/mljs/curve-fitting.git"},"keywords":["optimization","Levenberg","Marquardt","curve","fitting","numerical","methods","analysis","machine","learning"],"author":{"name":"Andres Castillo"},"license":"MIT","bugs":{"url":"https://github.com/mljs/curve-fitting/issues"},"homepage":"https://github.com/mljs/curve-fitting","dependencies":{"ml-matrix":"0.1.0"},"devDependencies":{"browserify":"^8.1.3","del":"^1.1.1","gulp":"^3.8.11","gulp-header":"^1.2.2","gulp-rename":"^1.2.0","gulp-sourcemaps":"^1.3.0","gulp-uglify":"^1.1.0","mocha":"^2.2.5","mocha-better-spec-reporter":"^2.1.1","should":"^7.0.2","should-approximately-deep":"^1.1.0","vinyl-buffer":"^1.0.0","vinyl-source-stream":"^1.0.0","ml-matrix":"../matrix"},"gitHead":"0d4513d20343614dba5569453e81828b32d4f71d","_id":"curve-fitting@0.0.5","_shasum":"5f7d8933154cc0ed7ebe8f6877504ebb466bced7","_from":".","_npmVersion":"2.13.3","_nodeVersion":"3.3.0","_npmUser":{"name":"andcastillo","email":"andcastillo@gmail.com"},"dist":{"shasum":"5f7d8933154cc0ed7ebe8f6877504ebb466bced7","tarball":"https://registry.npmjs.org/curve-fitting/-/curve-fitting-0.0.5.tgz","integrity":"sha512-5aUsc1hwxh7oT1SetLEAZX5k13W/4Dvsiv5KhxYT4y+8qW+ACA8YkFe9rEdhIIoz5tCBRIk0pukpqtVrJ5dX+A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDfoHUh9zj0DD8vu6L8M5Q8zGIUK9NG4yAmZwIDmvMgiAiAN2ApAO/0Wxnjqj9AJbUMtIlyP04jb5bWYLrGt4aRhKw=="}]},"maintainers":[{"name":"andcastillo","email":"andcastillo@gmail.com"}]}},"readme":"# Levenberg Marquardt curve-fitting\n\nminimize sum of weighted squared residuals. Javascript version of matlab library from Henri Gavin.\n\nSee example for usage\n\n## ---------  INPUT  VARIABLES  -----------\n \n func   = function of n independent variables, 't', and m parameters, 'p',\n \n returning the simulated model: y_hat = func(t,p,c)\n \n p      = n-vector of initial guess of parameter values\n \n t      = m-vectors or matrix of independent variables (used as arg to func)\n \n y_dat  = m-vectors or matrix of data to be fit by func(t,p)\n \n weight = weighting vector for least squares fit ( weight >= 0 ) ...\n \n inverse of the standard measurement errors\n \n Default:  sqrt(d.o.f. / ( y_dat' * y_dat ))\n \n dp     = fractional increment of 'p' for numerical derivatives\n \n dp(j)>0 central differences calculated\n \n dp(j)<0 one sided 'backwards' differences calculated\n \n dp(j)=0 sets corresponding partials to zero; i.e. holds p(j) fixed\n \n Default:  0.001;\n \n p_min  = n-vector of lower bounds for parameter values\n \n p_max  = n-vector of upper bounds for parameter values\n \n c      = an optional matrix of values passed to func(t,p,c)\n \n opts   = vector of algorithmic parameters\n \n parameter    defaults    meaning\n \n opts(1)  =  prnt            3        >1 intermediate results; >2 plots\n \n opts(2)  =  MaxIter      10*Npar     maximum number of iterations\n \n opts(3)  =  epsilon_1       1e-3     convergence tolerance for gradient\n \n opts(4)  =  epsilon_2       1e-3     convergence tolerance for parameters\n \n opts(5)  =  epsilon_3       1e-3     convergence tolerance for Chi-square\n \n opts(6)  =  epsilon_4       1e-2     determines acceptance of a L-M step\n \n opts(7)  =  lambda_0        1e-2     initial value of L-M paramter\n \n opts(8)  =  lambda_UP_fac   11       factor for increasing lambda\n \n opts(9)  =  lambda_DN_fac    9       factor for decreasing lambda\n \n opts(10) =  Update_Type      1       1: Levenberg-Marquardt lambda update\n \n 2: Quadratic update\n \n 3: Nielsen's lambda update equations\n \n\n##----------  OUTPUT  VARIABLES  -----------\n\n p       = least-squares optimal estimate of the parameter values\n \n X2      = Chi squared criteria\n \n\n Henri Gavin, Dept. Civil & Environ. Engineering, Duke Univ. 22 Sep 2013\n modified from: [http://octave.sourceforge.net/optim/function/leasqr.html]\n using references by\n \n Press, et al., Numerical Recipes, Cambridge Univ. Press, 1992, Chapter 15.\n \n Sam Roweis      [http://www.cs.toronto.edu/~roweis/notes/lm.pdf]\n \n Manolis Lourakis [http://www.ics.forth.gr/~lourakis/levmar/levmar.pdf]\n \n Hans Nielson     [http://www2.imm.dtu.dk/~hbn/publ/TR9905.ps]\n \n Mathworks        optimization toolbox reference manual\n \n K. Madsen, H.B., Nielsen, and O. Tingleff\n \n [http://www2.imm.dtu.dk/pubdb/views/edoc_download.php/3215/pdf/imm3215.pdf]\n","maintainers":[{"name":"andcastillo","email":"andcastillo@gmail.com"},{"name":"lpatiny","email":"lpatiny@gmail.com"},{"name":"ml-bot","email":"admin@cheminfo.org"}],"time":{"modified":"2022-06-14T06:06:36.185Z","created":"2015-08-25T16:11:01.904Z","0.0.1":"2015-08-25T16:11:01.904Z","0.0.2":"2015-08-25T17:01:06.546Z","0.0.3":"2015-08-31T15:44:09.657Z","0.0.4":"2015-08-31T15:53:31.698Z","0.0.5":"2015-09-07T06:41:27.980Z"},"homepage":"https://github.com/mljs/curve-fitting","keywords":["optimization","Levenberg","Marquardt","curve","fitting","numerical","methods","analysis","machine","learning"],"repository":{"type":"git","url":"git+https://github.com/mljs/curve-fitting.git"},"author":{"name":"Andres Castillo"},"bugs":{"url":"https://github.com/mljs/curve-fitting/issues"},"license":"MIT","readmeFilename":"README.md","users":{"andcastillo":true}}