I am getting this preallocation warning
이전 댓글 표시

댓글 수: 5
Vânia Gonçalves
2022년 11월 19일
Vânia Gonçalves
2022년 11월 19일
Jan
2022년 11월 19일
@Vânia Gonçalves: A general hint is to search in the net at first. Asking an internet search engine for "Matlab preallocate" shows useful explanations already.
Vânia Gonçalves
2022년 11월 19일
답변 (2개)
Steven Lord
2022년 11월 19일
1 개 추천
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.
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
Vânia Gonçalves
2022년 11월 19일
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
카테고리
도움말 센터 및 File Exchange에서 Programming에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!