Clear Filters
Clear Filters

Error Using Accumarray "Requested array exceeds the maximum possible variable size"

1 view (last 30 days)
I am trying to generate a histogram but I keep on getting this error
Error using accumarray
Requested array exceeds the maximum possible variable size.
Error in Analyze (line 170)
zm=accumarray([Dfr' Zfr'],1,[nn nn]);
My code is here
n=100;
for i=1:1
ZZ=Zf{i};
DD=Df{i};
nn=repelem(n,144);
Zf2=linspace(min(ZZ(:)),max(ZZ(:)),n);
Df2=linspace(min(DD(:)),max(DD(:)),n);
Zfr=interp1(Zf2,1:numel(Zf2),ZZ,'nearest');
Dfr=interp1(Df2,1:numel(Df2),DD,'nearest');
zm=accumarray([Dfr' Zfr'],1,[nn nn]);
figure, surf(zm);
hold on
end
A segment of Df and Zf are pictured above

Accepted Answer

Walter Roberson
Walter Roberson on 25 Nov 2020
Edited: Walter Roberson on 25 Nov 2020
nn=repelem(n,144);
That is a vector of 144 copies of 100
[nn nn]
that puts two of those together, getting a 1 x 288 vector of 100's.
You are requesting that accumarray create an output that is 100^288 elements.
There are only roughly 3*10^80 particles in the observable universe.
  4 Comments
Andrew Stark
Andrew Stark on 26 Nov 2020
That yields the error
Error using accumarray
Third input SZ must be a full row vector with one element for each column of SUBS.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!