Bicubic interpolation of all 2nd derivatives


Abmayr
05-24-2013, 03:43 AM
Hi everybody,

It seems that what is usually done in the literature is a bicubic interpolation algorithm that smoothly interpolates y, dy/dx1, dy/dx2, and d^2y/dx1dx2.

In my application, I also need d^2y/dx1^2 and d^2y/dx2^2, i.e. all second derivatives, not just the mixed ones.

Since I can numerically differentiate my data, I could compute (x1,x2) for d^3y/dx1^2dx2 and d^3y/dx1dx2^2 and use those in two further invocations of bcuint, but can I be sure that the results I get for the second derivatives I aim for are analytically correct?

Not that it would matter too much -- I only expect small numerical deviations -- but I'd prefer a method that would return all I need in a more consistent manner.

A search with DuckDuckGo doesn't reveal anything further, and even in-depth treatments such as Sederberg's book (Computer Aided Geometric Design; freely available on the web) don't help much. (And neither does Wikipedia.)

Any ideas? I'm happy with equations. :)

Cheers,

Woiferl

Abmayr
05-24-2013, 04:09 AM
Maybe that wasn't too good an explanation. What I meant is that, to compute for instance d^2y/dx^2, one could numerically compute dy/dx1, d^2y/dx1^2, d^2y/dx1dx2, and d^3y/dx1^2dx2, and use those as inputs to the bicubic interpolation algorithm in the book.

The interpolation of dy^2/dx1^2 would then be stored in the routine's ansy1 variable.

But as I said, this is not really what I'd want to do.