AlabamaASRL / asset_asrl

https://alabamaasrl.github.io/asset_asrl/
Apache License 2.0
29 stars 6 forks source link

Multi-Dimensional Interpolation #22

Open jbpezent opened 1 year ago

jbpezent commented 1 year ago

At present, we support interpolating tabular data defined on 1 and 2 dimensional grids. We should add support for N-dimensional grids. This should probably be done as two new separate classes for 3-d and N-d grids. I'd imagine that there is a cleaner/more efficient algorithm for the 3d case that would merit a standalone implementation, and that we could get out the door quicker. @jdsikes1 , this aligns with your current work so you get this one.

jbpezent commented 1 year ago

@jdsikes1 , while making some improvements to the 1 and 2D interpolators, I went ahead and implemented the 3D interpolator class in #23. Implementation is based on the paper below.

link

May be of use to you in the N-d case.

wgledbetter commented 1 year ago

I'm planning to add Kriging and Radial Basis Functions from my old dissertation branch sometime in the next month-ish.

wgledbe commented 1 year ago

N-dimensional splines complete in C++.

wgledbe commented 12 months ago

Second derivatives implemented and (mostly) verified for Radial Basis Functions and Kriging.

jbpezent commented 3 months ago

@wgledbe I'll go ahead and 4-d splines to hold us over until N-d are ready.

wgledbe commented 3 months ago

Don't hold your breath. Kriging and RBF are solid, but the current approach to ND splines may not be scalable. Spline reference: http://www.cds.caltech.edu/~marsden/bib/2005/08-LeMa2005/LeMa2005.pdf

jbpezent commented 3 months ago

4-D Spline tables implemented and merged. Usage is pretty much the same as the 3-D case.