1D interpolation over vector of observations with linear extrapolation

I have a function, func, defined over grid. I want to evaluate this function over a vector of n observations, obs, with the ability to linearly extrapolate off grid. The obvious way to do this is to loop over n, but my goal is to avoid this because it has to be done a large amount of times.
What is an efficient alternative to the loop below?
for i=1:n
val(i) = interp1( grid, func, obs(i) ,'linear','extrap');
end

Answers (1)

The query points do not have to be scalar:
interp1(grid, func, obs ,'linear','extrap')

Categories

Find more on Interpolation in Help Center and File Exchange

Asked:

on 3 Feb 2022

Answered:

on 3 Feb 2022

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!