I'm still playing around with Julia's interpolation options after the 
pointers I got from Tim Holy and Kyle Barbary in this thread. 
<https://groups.google.com/forum/#!topic/julia-users/57SztZSCjLc>
The one thing I haven't been able to do is a shape preserving 
interpolation. In economics, the concavity of (say) a utility function is 
often central to the problems at hand, and hence crucial to preserve during 
interpolation. My attempts with some of the interpolation routines can be 
found in this git, 
<https://github.com/nilshg/LearningModels/blob/master/Test_Interpolations.jl> 
but none of them really achieve what I want. The code on git should be self 
contained and produces graphs displaying the interpolation of the function 
-(1/x) in one dimension and -(1/(y+z)) in two dimensions on rather coarse 
grids. 

As I see it, there are two issues with my approach: (i) using regular grids 
is clearly not a great idea here, as all the curvature of the function is 
between 0 and 10, while only few points would suffice to reasonably 
approximate the function for large values of x, and (ii) quadratic splines 
don't preserve concavity of the function. 

Are there any other packages in Julia that would support irregularly spaced 
grids and/or do a shape-preserving interpolation, such as piecewise cubic 
Hermite (like Matlab's pchip), biharmonic or thin splate (as in Matlab's 
griddata)? 

Also, as you might be able to tell from the git, I haven't succeded in 
using the ApproXD package, mainly because of the lack of documentation. 
Does anyone have a simple example of how to use it?

Many thanks,
Nils

Reply via email to