From octave-sources-request at bevo dot che dot wisc dot edu Wed Jun 18 08:18:41 2003 Subject: Re: polyfit.m patch From: "Pascal A. Dupuis" To: Paul Kienzle Cc: octave-sources at bevo dot che dot wisc dot edu Date: Wed, 18 Jun 2003 05:58:54 -0500 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime at docserver dot cac dot washington dot edu for more info. --981890363-1362771982-1055932249=:30925 Content-Type: TEXT/PLAIN; charset=US-ASCII On Fri, 13 Jun 2003, Paul Kienzle wrote: > That is not compatible with the three argument return > option of matlab's polyfit. Feel free to suggest alternative > return values from wpolyfit in octave-forge which is not > so constrained (and which already returns sigma_p). > In Matlab 5.3 there is a two arguments return (p and S). I've modified my patch to return almost compatible information: the standard deviation on p can be computed as sqrt((S.normr/S.df)*diag(inv(S.R.'*S.R))) matlab: S.R is a square matrix with S.df rows and columns octave: (S.R.'*S.R) is a square matrix with S.df rows and columns Actually, octave polyfit second argument is not compatible with matlab 5 nor 6. The least intrusive change would be to have the second argument being a structure, containing both the information to compute the standard deviations as well as the fitted values, but this would break existing programs. May be we could introduce a 'polyfitn' (new) or 'polyfitS' (structure) in octave which is closer to matlab behaviour ? I know about the octave-forge solutions, but actually, on my debian, the available octave-forge is not very up-to-date, while octave2.1 is. Best regards Pascal -- Dr. ir. Pascal Dupuis K. U. Leuven, ESAT/ELECTA (formerly ELEN): http://www.esat.kuleuven.ac.be/ Kasteelpark Arenberg, 10; B-3001 Leuven-Heverlee, Belgium Tel. +32-16-32 10 21 -- Fax +32-16-32 19 85 --981890363-1362771982-1055932249=:30925 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="polyfit.m.patch" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="polyfit.m.patch" LS0tIHBvbHlmaXQubS5vcmlnCTIwMDMtMDYtMTMgMTQ6NDI6NTYuMDAwMDAw MDAwICswMjAwDQorKysgcG9seWZpdC5tCTIwMDMtMDYtMTMgMTU6MDc6MjMu MDAwMDAwMDAwICswMjAwDQpAQCAtMTgsNyArMTgsNyBAQA0KICMjIDAyMTEx LTEzMDcsIFVTQS4NCiANCiAjIyAtKi0gdGV4aW5mbyAtKi0NCi0jIyBAZGVm dHlwZWZuIHtGdW5jdGlvbiBGaWxlfSB7W0B2YXJ7cH0sIEB2YXJ7eWZ9XSA9 fSBwb2x5Zml0IChAdmFye3h9LCBAdmFye3l9LCBAdmFye259KQ0KKyMjIEBk ZWZ0eXBlZm4ge0Z1bmN0aW9uIEZpbGV9IHtbQHZhcntwfSwgQHZhcnt5Zn0s IEB2YXJ7WH1dID19IHBvbHlmaXQgKEB2YXJ7eH0sIEB2YXJ7eX0sIEB2YXJ7 bn0pDQogIyMgUmV0dXJuIHRoZSBjb2VmZmljaWVudHMgb2YgYSBwb2x5bm9t aWFsIEB2YXJ7cH0oQHZhcnt4fSkgb2YgZGVncmVlDQogIyMgQHZhcntufSB0 aGF0IG1pbmltaXplcw0KICMjIEBpZnRleA0KQEAgLTM3LDE1ICszNywxOCBA QA0KICMjIGFuZCBAdmFye3l9IGFyZSBib3RoIHJvdyB2ZWN0b3JzOyBvdGhl cndpc2UsIHRoZXkgYXJlIHJldHVybmVkIGluIGENCiAjIyBjb2x1bW4gdmVj dG9yLg0KICMjDQotIyMgSWYgdHdvIG91dHB1dCBhcmd1bWVudHMgYXJlIHJl cXVlc3RlZCwgdGhlIHNlY29uZCBjb250YWlucyB0aGUgdmFsdWVzIG9mDQot IyMgdGhlIHBvbHlub21pYWwgZm9yIGVhY2ggdmFsdWUgb2YgQHZhcnt4fS4N CisjIyBJZiBtb3JlIHRoYW4gb25lIG91dHB1dCBhcmd1bWVudCBhcmUgcmVx dWVzdGVkLCB0aGUgc2Vjb25kIGNvbnRhaW5zDQorIyMgdGhlIHZhbHVlcyBv ZiB0aGUgcG9seW5vbWlhbCBmb3IgZWFjaCB2YWx1ZSBvZiBAdmFye3h9LiBU aGUgdGhpcmQNCisjIyBjb250YWlucyB0aGUgZGVzaWduIG1hdHJpeCwgaW4g b3JkZXIgdG8gY29tcHV0ZSBzdGFuZGFyZCBkZXZpYXRpb25zDQorIyMgb24g cG9seW5vbWlhbCBjb2VmZmljaWVudHMuDQogIyMgQGVuZCBkZWZ0eXBlZm4N CiANCiAjIyBBdXRob3I6IEtIIDxLdXJ0Lkhvcm5pa0BjaS50dXdpZW4uYWMu YXQ+DQogIyMgQ3JlYXRlZDogMTMgRGVjZW1iZXIgMTk5NA0KKyMjIE1vZGlm aWVkOiAxMyBKdW5lIDIwMDMgYnkgUC4gRHVwdWlzIHRvIHJldHVybiBkZXNp Z24gbWF0cml4Lg0KICMjIEFkYXB0ZWQtQnk6IGp3ZQ0KIA0KLWZ1bmN0aW9u IFtwLCB5Zl0gPSBwb2x5Zml0ICh4LCB5LCBuKQ0KK2Z1bmN0aW9uIFtwLCB5 ZiwgWF0gPSBwb2x5Zml0ICh4LCB5LCBuKQ0KIA0KIA0KICAgaWYgKG5hcmdp biAhPSAzKQ0KQEAgLTY2LDExICs2OSwxMSBAQA0KICAgeCA9IHJlc2hhcGUg KHgsIGwsIDEpOw0KICAgeSA9IHJlc2hhcGUgKHksIGwsIDEpOw0KIA0KLSAg WCA9ICh4ICogb25lcyAoMSwgbisxKSkgLl4gKG9uZXMgKGwsIDEpICogKDAg OiBuKSk7DQorICBYID0gKHggKiBvbmVzICgxLCBuKzEpKSAuXiAob25lcyAo bCwgMSkgKiAobiA6IC0xIDogMCkpOw0KIA0KICAgcCA9IFggXCB5Ow0KIA0K LSAgaWYgKG5hcmdvdXQgPT0gMikNCisgIGlmIChuYXJnb3V0ID4gMSkNCiAg ICAgeWYgPSBYICogcDsNCiANCiAgICAgaWYgKHlfaXNfcm93X3ZlY3RvcikN CkBAIC03OCw4ICs4MSw3IEBADQogICAgIGVuZGlmDQogICBlbmRpZg0KIA0K LSAgcCA9IGZsaXB1ZCAocCk7DQotDQorIyMgcCA9IGZsaXB1ZCAocCk7DQog ICBpZiAoeV9pc19yb3dfdmVjdG9yICYmIHJvd3MgKHgpID09IDEpDQogICAg IHAgPSBwJzsNCiAgIGVuZGlmDQo= --981890363-1362771982-1055932249=:30925--