Re: Getting scipy.interpolate.pchip_interpolate to return the first derivative of a pchip interpolation
Samuel Dupree <[email protected]> Mon, 23 Jan 2023 18:28:04 -0500
| Newsgroups | gmane.comp.python.scientific.user |
|---|---|
| Organization | XayDeltaOne |
| Message-ID | <[email protected]> |
QWZ0ZXIgc29tZSBhZGRpdGlvbmFsIHRob3VnaHQsIEkgZm9yZ290IHRoYXQgdHJpZ29ub21ldHJp YyBkZXJpdmF0aXZlcyANCnJlcXVpcmUgdGhhdCB0aGUgaW5kZXBlbmRlbnQgdmFyaWFibGUgbXVz dCBiZSBpbiByYWRpYW5zLiBJbiB1c2luZyANCmRlZ3JlZXMgYXMgdGhlIHVuaXRzIGZvciB0aGUg aW5kZXBlbmRlbnQgdmFyaWFibGUsIHRoZSBpbnRlcnBvbGF0ZWQgDQpkZXJpdmF0aXZlIGlzIHNj YWxlZCBieSB0aGUgZmFjdG9yIHBpLzE4MCB3aGVuIHRoZSBudW1lcmljYWwgZGVyaXZhdGl2ZSAN CmlzIGNvbXB1dGVkLg0KDQpNeXN0ZXJ5IHNvbHZlZC4NCg0KU2FtIER1cHJlZS4NCg0KT24gMS8y My8yMyAxODowNywgU2FtdWVsIER1cHJlZSB3cm90ZToNCj4gVGhhbmsgeW91IGZvciBhbGwgdGhl IHJlc3BvbnNlcywgaG93ZXZlciBteSBxdWVzdGlvbiBzdGlsbCByZW1haW5zOiANCj4gaG93IGRv ZXMgcGNoaXBfaW50ZXJwb2xhdGUga25vdyB0aGUgaWRlbnRpdHkgb2YgdGhlIGZ1bmN0aW9uIHRo YXQgDQo+IGdlbmVyYXRlZCB0aGUgZGF0YSBhbmQgdGhlIGZpcnN0IGRlcml2YXRpdmUgdG8gYmUg aW50ZXJwb2xhdGVkPyBJdCANCj4gY2FuJ3QgYmVjYXVzZSBhbGwgcGNoaXBfaW50ZXJwb2xhdGUg Z2V0cyBpcyBhIGxpc3Qgb2YgbnVtYmVycy4gVGhlIA0KPiBpZGVudGl0eSBvZiB0aGUgZnVuY3Rp b25zIGFyZSBub3QgcGFzc2VkIHRvIGl0IHVubGVzcyB0aGVyZSBpcyBhIHdheSANCj4gcGNoaXBf aW50ZXJwb2xhdGUga25vd3MuDQo+DQo+IFNhbSBEdXByZWUuDQo+DQo+DQo+IE9uIDEvMjMvMjMg MTQ6MzUsIHNjaXB5LXVzZXItcmVxdWVzdEBweXRob24ub3JnIHdyb3RlOg0KPj4gU2VuZCBTY2lQ eS1Vc2VyIG1haWxpbmcgbGlzdCBzdWJtaXNzaW9ucyB0bw0KPj4gwqDCoMKgwqBzY2lweS11c2Vy QHB5dGhvbi5vcmcNCj4+DQo+PiBUbyBzdWJzY3JpYmUgb3IgdW5zdWJzY3JpYmUgdmlhIHRoZSBX b3JsZCBXaWRlIFdlYiwgdmlzaXQNCj4+IMKgwqDCoMKgaHR0cHM6Ly9tYWlsLnB5dGhvbi5vcmcv bWFpbG1hbjMvbGlzdHMvc2NpcHktdXNlci5weXRob24ub3JnLw0KPj4gb3IsIHZpYSBlbWFpbCwg c2VuZCBhIG1lc3NhZ2Ugd2l0aCBzdWJqZWN0IG9yIGJvZHkgJ2hlbHAnIHRvDQo+PiDCoMKgwqDC oHNjaXB5LXVzZXItcmVxdWVzdEBweXRob24ub3JnDQo+Pg0KPj4gWW91IGNhbiByZWFjaCB0aGUg cGVyc29uIG1hbmFnaW5nIHRoZSBsaXN0IGF0DQo+PiDCoMKgwqDCoHNjaXB5LXVzZXItb3duZXJA cHl0aG9uLm9yZw0KPj4NCj4+IFdoZW4gcmVwbHlpbmcsIHBsZWFzZSBlZGl0IHlvdXIgU3ViamVj dCBsaW5lIHNvIGl0IGlzIG1vcmUgc3BlY2lmaWMNCj4+IHRoYW4gIlJlOiBDb250ZW50cyBvZiBT Y2lQeS1Vc2VyIGRpZ2VzdC4uLiINCj4+DQo+PiBUb2RheSdzIFRvcGljczoNCj4+DQo+PiDCoMKg wqAgMS4gUmU6IFNjaVB5LVVzZXIgRGlnZXN0LCBWb2wgMjMxLCBJc3N1ZSAxIChTYW11ZWwgRHVw cmVlKQ0KPj4gwqDCoMKgIDIuIFJlOiBTY2lQeS1Vc2VyIERpZ2VzdCwgVm9sIDIzMSwgSXNzdWUg MSAoRXZnZW5pIEJ1cm92c2tpKQ0KPj4gwqDCoMKgIDMuIFJlOiBTY2lQeS1Vc2VyIERpZ2VzdCwg Vm9sIDIzMSwgSXNzdWUgMSAoUnVzdHkgR2VudGlsZSkNCj4+DQo+Pg0KPj4gLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQ0KPj4NCj4+IE1lc3NhZ2U6IDENCj4+IERhdGU6IE1vbiwgMjMgSmFuIDIwMjMgMTM6MjU6NTAg LTA1MDANCj4+IEZyb206IFNhbXVlbCBEdXByZWUgPHNkdXByZWVAc3BlYWtlYXN5Lm5ldD4NCj4+ IFN1YmplY3Q6IFtTY2lQeS1Vc2VyXSBSZTogU2NpUHktVXNlciBEaWdlc3QsIFZvbCAyMzEsIElz c3VlIDENCj4+IFRvOiBzY2lweS11c2VyQHB5dGhvbi5vcmcsIHNjaXB5LXVzZXItcmVxdWVzdEBw eXRob24ub3JnDQo+PiBNZXNzYWdlLUlEOiA8ZWZiZjM3NTAtZjdkMy01NDY5LTE5NzgtODE4OGJl ZmFlMTUwQHNwZWFrZWFzeS5uZXQ+DQo+PiBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJz ZXQ9VVRGLTg7IGZvcm1hdD1mbG93ZWQNCj4+DQo+PiBUaGUgcHJvYmxlbSBJIGhhdmUgaXMgaWYg dGhlIGludGVycG9sYXRvciBvbmx5IHNlZXMgbnVtYmVycy4gVW5sZXNzDQo+PiB0aGVyZSBpcyBz b21lIHVuZGVyY292ZXIgbWVhbnMgYnkgd2hpY2ggdGhlIGludGVycG9sYXRvciBzZWVzIHRoZQ0K Pj4gZnVuY3Rpb24gdXNlZCB0byBnZW5lcmF0ZSB0aGUgbnVtYmVycyBwYXNzZWQgdG8gaXQsIGhv dyBkb2VzIGl0IGtub3cgdGhlDQo+PiBjb252ZXJzaW9uIGZhY3RvciBpcyB1c2VkIGFyZ3VtZW50 IHRvIHRoZSBzaW5lIGZ1bmN0aW9uPyBGdXJ0aGVybW9yZSwgSWYNCj4+IEkgd2VyZSB0byByZXdy aXRlIHRoZSBwcm9ncmFtIGFzIGZvbGxvd3MsIEkgc3RpbGwgZ2V0IHRoZSBzYW1lIHJlc3VsdHMu DQo+Pg0KPj4NCj4+DQo+PiBpbXBvcnQgbnVtcHkgYXMgbnANCj4+IGltcG9ydCBtYXRwbG90bGli LnB5cGxvdCBhcyBwbHQNCj4+IGZyb20gc2NpcHkuaW50ZXJwb2xhdGUgaW1wb3J0IHBjaGlwX2lu dGVycG9sYXRlDQo+Pg0KPj4geF9vYnNlcnZlZMKgwqDCoCA9IG5wLmxpbnNwYWNlKDAuMCwgMzYw LjAsIDEwMCkNCj4+IHh4X29ic2VydmVkwqDCoCA9IG5wLnBpKnhfb2JzZXJ2ZWQvMTgwDQo+Pg0K Pj4geV9vYnNlcnZlZMKgwqDCoCA9IG5wLnNpbih4eF9vYnNlcnZlZCkNCj4+IGR5ZHhfb2JzZXJ2 ZWQgPSBucC5jb3MoeHhfb2JzZXJ2ZWQpDQo+Pg0KPj4geMKgwqDCoCA9IG5wLmxpbnNwYWNlKG1p bih4X29ic2VydmVkKSwgbWF4KHhfb2JzZXJ2ZWQpLCBudW09MTAwKQ0KPj4gecKgwqDCoCA9IHBj aGlwX2ludGVycG9sYXRlKHhfb2JzZXJ2ZWQsIHlfb2JzZXJ2ZWQsIHgsIGRlcj0wLCBheGlzPTAp DQo+PiBkeWR4ID0gcGNoaXBfaW50ZXJwb2xhdGUoeF9vYnNlcnZlZCwgeV9vYnNlcnZlZCwgeCwg ZGVyPTEsIGF4aXM9MCkNCj4+DQo+Pg0KPj4gbmRpbSA9IGxlbiggZHlkeCApDQo+PiBwcmludCgp DQo+PiBmb3IgaSBpbiByYW5nZSgwLG5kaW0pOg0KPj4gwqAgwqDCoMKgwqAgcHJpbnQoIGR5ZHhf b2JzZXJ2ZWRbaV0sICLCoCAiLCBkeWR4W2ldICkNCj4+DQo+Pg0KPj4gcGx0LnBsb3QoeF9vYnNl cnZlZCzCoMKgwqAgeV9vYnNlcnZlZCwgImJvIiAsIGxhYmVsPSJvYnNlcnZhdGlvbiBmdW5jdCIp DQo+PiBwbHQucGxvdCh4X29ic2VydmVkLCBkeWR4X29ic2VydmVkLCAicngiICwgbGFiZWw9Im9i c2VydmF0aW9uIGRlcml2IikNCj4+DQo+PiBwbHQucGxvdCh4wqDCoMKgwqDCoMKgwqDCoCAsIHnC oMKgwqDCoMKgwqDCoMKgwqDCoMKgICwgImMtIiwgbGFiZWw9InBjaGlwIGludGVycG9sYXRpb24g DQo+PiBmdW5jdCIpDQo+PiBwbHQucGxvdCh4wqDCoMKgwqDCoMKgwqDCoCAsIGR5ZHjCoMKgwqDC oMKgwqDCoMKgICwgImstIiwgbGFiZWw9InBjaGlwIGludGVycG9sYXRpb24gDQo+PiBkZXJpdiIp DQo+PiBwbHQubGVnZW5kKCkNCj4+IHBsdC5ncmlkKCkNCj4+IHBsdC5zYXZlZmlnKCJwY2hpcF9l eGFtcGxlXzAxLnBuZyIpDQo+PiBwbHQuc2hvdygpDQo+Pg0KPj4NCj4+IEFueSB0aG91Z2h0cz8N Cj4+DQo+PiBTYW0gRHVwcmVlLg0KPj4NCj4+DQo+IHtzbmlwXQ0KPj4NCj4+IF9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQo+PiBTY2lQeS1Vc2VyIG1haWxp bmcgbGlzdCAtLSBzY2lweS11c2VyQHB5dGhvbi5vcmcNCj4+IFRvIHVuc3Vic2NyaWJlIHNlbmQg YW4gZW1haWwgdG8gc2NpcHktdXNlci1sZWF2ZUBweXRob24ub3JnDQo+PiBodHRwczovL21haWwu cHl0aG9uLm9yZy9tYWlsbWFuMy9saXN0cy9zY2lweS11c2VyLnB5dGhvbi5vcmcvDQo+Pg0KPj4N Cj4+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPj4NCj4+IEVuZCBvZiBTY2lQeS1V c2VyIERpZ2VzdCwgVm9sIDIzMSwgSXNzdWUgMg0KPj4gKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqIA0KDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpTY2lQeS1Vc2VyIG1haWxpbmcgbGlzdCAtLSBzY2lweS11c2VyQHB5dGhv bi5vcmcKVG8gdW5zdWJzY3JpYmUgc2VuZCBhbiBlbWFpbCB0byBzY2lweS11c2VyLWxlYXZlQHB5 dGhvbi5vcmcKaHR0cHM6Ly9tYWlsLnB5dGhvbi5vcmcvbWFpbG1hbjMvbGlzdHMvc2NpcHktdXNl ci5weXRob24ub3JnLwpNZW1iZXIgYWRkcmVzczogZ2Nwc3Utc2NpcHktdXNlckBtLmdtYW5lLW14 Lm9yZwo=