Scattered Interpolant possible with multiple sample value vectors?

Hey guys,
I'm trying to build an interpolant which should give me interpolants for 8 different sample value vectors. I have an 95374*8 double list of sample values (UF). Corresponding to which there are two 95374*1 double coordinate lists (xe & ye).
I'm trying to build a loop in which the scatteredinterpolant F is constructed for each of these 8 sample value lists. Thing is that I don't know if it is even possible to create a scatteredinterpolant which consists of more than one value list?
Matlab tells me my F (if i take one set of values) is 1x1. So is it possible to make it 1x8? That looks like this:
%if true
F=scatteredInterpolant(xe,ye,UF(:,1),'natural');
I've tried making something like this, but it won't work as I cant tell matlab to put the values next to the already existing ones:
if true
for i=1:8
F(:,:,i)=scatteredInterpolant(xe,ye,UF(:,i),'natural');
end
The error this yields after the first iteration is: Error using scatteredInterpolant/subsasgn Invalid arguments in indexing operation.
If you guys could help me out that would be awesome! Thanks in advance.

 Respuesta aceptada

Please try this:
F = cell(8,1);
for ii =1:8
F{ii} = scatteredInterpolant(xe,ye,UF(:,ii),'natural');
end

3 comentarios

Yes that solved the problem! Thanks a lot for your quick answer :)
The problem that comes up now is that when I try to evaluate a certain point in one of the cells of F, an error comes up because Matlab now reads it as a single cell in stead of a scatteredpinterpolant.
if true
for i=1:8
% FF=cell2mat(F(:,i)) this operation doesnt work either.
FF=F(:,1);
T(:,1)=XX(:,i);
T(:,2)=YY(:,i);
T=double(T);
UFI(:,i)=FF(T)
end
end
The error i get is: Subscript indices must either be real positive integers or logicals. Line 254 UFI(:,i)=FF(T)
Any clue on how to solve this?
UFI = zeros(size(XX,1),8);
for jj = 1:8
UFI(:,jj) = F{jj}(XX(:,jj),YY(:,jj));
end

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Interpolation en Centro de ayuda y File Exchange.

Preguntada:

el 20 de Mzo. de 2015

Comentada:

el 22 de Mzo. de 2015

Community Treasure Hunt

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

Start Hunting!

Translated by