У меня есть 2D массив данных размером 7426x32 от 1deg цилиндрического среза. Он содержит: X, Y, Z и 29 переменных, таких как температура, плотность, давление и т. Д. В направлении X есть 79 узлов сетки, 2 - в Y и 47 в Z. Это одна «линия» объема ячейки в направлении Y. Данные записываются в этой манере:Interpolate 3d Data in Matlab
do Z = 1,47
do Y = 1,2
do X = 1,79
X,Y,Z, then the other 29 variables at each node
enddo
enddo
enddo
мне нужно интерполировать переменные, чтобы получить среднее значение переменной в каждом объеме клеток (что делает 3713 значения), умножать каждый к объему содержащейся в каждой ячейке , а затем суммировать все. Я понимаю, что могу использовать interp3 в Matlab, но я не уверен, как заставить функцию работать с данными, которые у меня есть.
«Gut инстинкт» говорит мне, что я должен иметь:
Vq = interp3(A(1:79,1),A(1:79,2),A(1:79,3),A(1:79,30))
Чтобы получить переменную в 30-м столбце. Но это не работает, и я не уверен, как это работает с тем, как мои данные упорядочены. Может ли кто-нибудь указать мне в правильном направлении?
спасибо!
Что такое переменная 'A'? – Karlo