堆疊有堆疊的ndgrid(x1,..,xd)
d
輸出到d+1
維陣列,而無需使用像週期多維陣列在Matlab
cgrid=cell(1,d);
[cgrid{:}]=ndgrid(x1, x2, ... , xd);
agrid=zeros([d, size(cgrid{1})]);
for jj=1:d
agrid(jj,:)=reshape(cgrid{jj},size(agrid(jj,:)));
end
agrid=reshape(cell2mat(cellfun(@(c) c{:},cgrid)),[d, size(cgrid{1})])
或任何變通方式短?
在我看來,即使是使用多維數組的簡單操作也需要大量的低級命令。
檢查這個職位。這可能會有所幫助。 http://stackoverflow.com/questions/14770081/create-a-multidimensional-array-in-matlab – vkrams