Contourf Z must be at least a 2x2 matrix error
9 views (last 30 days)
Show older comments
mehtap agirsoy
on 23 Aug 2021
Answered: Walter Roberson
on 23 Aug 2021
Hi all,while creating contourf plot I have Z must be at least a 2x2 matrix.I couldn't fix it. If you've any idea to fix it I'd be appreciate.Thanks in advance.
1 Comment
KSSV
on 23 Aug 2021
Unrecognized function or variable 'SPODpost'.
Error in Rainbow_POD (line 26)
mode = SPODpost(a(:,1:idx));
Accepted Answer
Walter Roberson
on 23 Aug 2021
mode = SPODpost(a(:,1:idx));
That function was not included
contourf(X,Y,Vi(:,:,mode(idx).ind(2)),10,'edgecolor','none')
For that to be valid, Vi(:,:,mode(idx).ind(2)) must be a 2D array. But...
>> whos -file POD.mat
Name Size Bytes Class Attributes
U 1x101 808 double
V 1x101 808 double
X 1x101 808 double
Y 1x101 808 double
and
% Ui,Vi,Wi,... :POD modes (spatial modes). Number of output modes depends
% on the number input velocity components. The dimension of
% the output data is the same as the input data, whereas the
% last dimension contains individual modes instead of
% snapshots.
The input V is a vector, and with the output Vi being the same size as the inputs, that means that Vi must be a vector.
Your plotting code with contourf() assumes that Vi is 3 dimensional, but it is only a vector.
You will not be able to do contouring in this situation.
0 Comments
More Answers (0)
See Also
Categories
Find more on Contour Plots 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!