Variable lamb1 appears to change size on every loop iteration

1 visualizzazione (ultimi 30 giorni)
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 Commenti
Smitesh Patil
Smitesh Patil il 19 Lug 2021
Are you appending maximag to lamb1 inside a loop? Its not very clear from the example here.
nidhi humnekar
nidhi humnekar il 19 Lug 2021
Modificato: KSSV il 19 Lug 2021
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

Accedi per commentare.

Risposte (2)

KSSV
KSSV il 19 Lug 2021
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 Commenti
nidhi humnekar
nidhi humnekar il 19 Lug 2021
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 il 19 Lug 2021
Show us your complete code...If j1, i1 are your idnices then you have to preallocate/ initialize lamb1.

Accedi per commentare.


Smitesh Patil
Smitesh Patil il 19 Lug 2021
This article on Preallocation of arrays should be helpful

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by