How can you save a 1 by 3 array in each position of a 4D array?
32 views (last 30 days)
Show older comments
Mitchell
on 15 Dec 2025 at 15:05
Commented: Mitchell
about 23 hours ago
I am working on an interpolation project where I have 4 variables, each representing a dimension of a 4D array. There are three seperate values that coincide with each coordinate of the 4 dimensional array. The only way I have been able to make this work so far is that I currently have 3 seperate 4D arrays, each with the same set of variables but with one of the 3 values stored at each coordinate. The issue is that this creates a lot of reduntanat data and significantly increases the file size, while also increasing the computational resource requirement by running the interpolation 3 seperate times. I would like to only have one 4D array, with each coordinate housing a 1x3 with all 3 data points needed. Is this possible? If so, what is the best approach? I have approached this using Cell arrays, but I still run into errors of trying to assign 1x3 in a 1x1 space or with trying to assign doubles in the cell array.
3 Comments
Accepted Answer
Matt J
about 2 hours ago
Edited: Matt J
about 1 hour ago
I would like to only have one 4D array, with each coordinate housing a 1x3 with all 3 data points needed. Is this possible?
You could have a 5D array, where the 5th dimension are the 3 values. Then you can interpolate the 5D array in one go, e.g.,
V=rand(4,4,4,4,3);
xq=linspace(1,4,8);
F=griddedInterpolant(V);
Vq = F({xq,xq,xq,xq,1:3}) ; %upsample by interpolation
whos V Vq
I'm not optimistic this will do much for you beyond keeping everything compactly in a single array variable, but on the other hand, I don't see any signs you had any inefficiency to begin with (see my comment above).
More Answers (1)
the cyclist
about 2 hours ago
This code creates a 4-dimensional cell array, and stores a 1x3 numeric vector in one of the elements
c = cell(2,3,5,7);
c{1,2,3,4} = rand(1,3);
0 Comments
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!