Interpolate x,y coordinates and timesteps

2 visualizaciones (últimos 30 días)
Patrick Frey
Patrick Frey el 4 de Mzo. de 2024
Comentada: Mathieu NOE el 5 de Mzo. de 2024
Heallo,
I have an array M with x, y, coordinates points in the 1st and 2nd column [x= M(2:end,1); y= M(2:end,2)]. The following columns are the values (for example temperatures) for different timesteps [timesteps = M(1,3:end].
How can I interpolate the x,y coordinates and the timesteps?
clc
clear
M(5,7)=0;
M(1,2:7)=0:10:50;
M(2:5,1)=1:4;
M(2:5,2)=1:0.5:2.5;
M(2,3:7)=100:3:112;
M(3,3:7)=110:3:122;
M(4,3:7)=120:3:132;
M(5,3:7)=120:3:132;
  5 comentarios
Patrick Frey
Patrick Frey el 5 de Mzo. de 2024
thank you for your help
Mathieu NOE
Mathieu NOE el 5 de Mzo. de 2024
my pleasure !!

Iniciar sesión para comentar.

Respuestas (1)

Florian Bidaud
Florian Bidaud el 4 de Mzo. de 2024
In your example, you only have a 2D M array, but I guess what you want is a 3D interpolation, so with another dimension in M ?
M = [[103,113,123,123]',[106,116,126,126]',[109,119,129,126]',[112,122,132,132]'];
% Building an example of a 3 dimensional array
values(:,1,:) = M;
values(:,2,:) = M*1.05;
values(:,3,:) = M*1.1;
values(:,4,:) = M*1.15;
timesteps = (20:10:50)';
x = (1:4)';
y = (1:0.5:2.5)';
% query values
x_query = [1.1 3.2];
y_query = [1.3 2.2];
time_query = [21 45];
query_values = interp3(x,y,timesteps,values,x_query,y_query,time_query)
query_values = 1×2
109.8465 144.1890
  1 comentario
Patrick Frey
Patrick Frey el 4 de Mzo. de 2024
Sorry my question was not clear. x and y-values are not independant variables. But thanks for your help

Iniciar sesión para comentar.

Categorías

Más información sobre Interpolation of 2-D Selections in 3-D Grids en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by