2D Interpolation with different sized matrices
1 view (last 30 days)
Show older comments
x = [1 2 3 4 5];
y = [1 2 3 4 5];
z = [1 2 1 2 3; 3 4 3 4 5; 5 6 5 6 7; 3 4 3 4 5; 1 2 1 2 3];
]
Hello,
Is there a method to obtain the corresponding x value when the y and z values are provided? I tried interp2 which gives the value of z when x and y are given. The command does not offer me the expected option. Can somebody guide me to solve my problem?
Thanks in advance.
1 Comment
Answers (1)
Jan
on 18 Jan 2021
A bold guess of what "corresponding x value when the y and z values are provided" means:
x = [1 2 3 4 5];
y = [1 2 3 4 5];
z = [1 2 1 2 3; 3 4 3 4 5; 5 6 5 6 7; 3 4 3 4 5; 1 2 1 2 3];
yWant = 2;
zWant = 3;
match = (y == yWant) & (z == zWant); % Auto-expand, Matlab >= R2016b
xResult = x(any(match, 1));
3 Comments
Jan
on 19 Jan 2021
My code does only find exact matchs, so it is not an interpolation. Therefore I asked for examples of inputs and the wanted outputs. Please answer this question for clarification, because it is required to understand, what you want to get. I cannot guess, what you want as output for the inputs y=2.5 and z=4.5 .
See Also
Categories
Find more on Interpolation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!