I am getting this preallocation warning
조회 수: 1(최근 30일)
표시 이전 댓글

답변(2개)
Steven Lord
2022년 11월 19일
This is a Code Analyzer warning not a run-time warning.
If you're not sure what preallocation is, why it can be important, or how to do it see the first example on this documentation page.
Jan
2022년 11월 19일
Moved: Jan
2022년 11월 19일
Seriously? If I ask Google, I get e.g.:
- https://www.mathworks.com/help/matlab/matlab_prog/preallocating-arrays.html
- https://www.mathworks.com/matlabcentral/answers/99124-how-do-i-pre-allocate-memory-when-using-matlab
For your code:
...
maxIter = 1000;
x = zeros(maxIter, 1);
y = zeros(maxIter, 1);
while norm(J) > e && i < maxIter
...
end
x = x(1:i); % Crop unused elements
y = y(1:i);
댓글 수: 2
Jan
2022년 11월 19일
What does "long" mean? Seconds or hours?
Symbolic calculations need some time. You can use the profiler to find the bottleneck:
doc profile
참고 항목
범주
Find more on Get Started with MATLAB 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!