Variable lamb1 appears to change size on every loop iteration

2 次查看(过去 30 天)
maximag=max(imag(ee));
lamb1(i1,j1)=maximag;
hello sir i m getting warning as lamb1 changes the size in every loop,because of this warning my program became very slow,can you please help me out.
  2 个评论
Smitesh Patil
Smitesh Patil 2021-7-19
Are you appending maximag to lamb1 inside a loop? Its not very clear from the example here.
nidhi humnekar
nidhi humnekar 2021-7-19
编辑:KSSV 2021-7-19
ee = eig(AA,BB);
maximag=max(imag(ee));
lamb1(j1,i1)=maximag;
switch ivary
case 1
str = 'b-';
case 2
str = 'r-.';
case 3
str = 'k:';
[RA,DA]=meshgrid(Rac,Dac);
contour(RA,DA,lamb1',[0,0],str)
hold on
set(gca,'ytick','log')
set(gca,'xtick',0:5000:35000)
xlabel('Ra')
ylabel('log_10 Da')
% grid on

请先登录,再进行评论。

回答(2 个)

KSSV
KSSV 2021-7-19
You have to initialize that variable before using it in a llop to save/ fill the values.
lamb1 = zeros(m,n) ; % specify your dimensions
  3 个评论
nidhi humnekar
nidhi humnekar 2021-7-19
thank you so much sir,but when i m not definig index for lamb1 it is showing
Error using contour (line 48)
Z must be at least a 2x2 matrix.
contour(RA,ALPHA,lamb1',[0,0],str)
KSSV
KSSV 2021-7-19
Show us your complete code...If j1, i1 are your idnices then you have to preallocate/ initialize lamb1.

请先登录,再进行评论。


Smitesh Patil
Smitesh Patil 2021-7-19
This article on Preallocation of arrays should be helpful

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by