Unclassified variables in a parfor loop

1 visualización (últimos 30 días)
oceanmod
oceanmod el 16 de Mzo. de 2020
Comentada: Matt J el 17 de Mzo. de 2020
I am trying to do something like the following:
parfor i= xystart:xyend
....
xycount = i - xystart + 1;
A = zeros(nx,ny); B = A;
for n=1:Nn;
for m=1:Mm;
A(m,n)= <some expression>;
B(m,n)= <some expression>;
end
end
C(xycount,:,:) = A. * B;
end
I am getting an error message saying that 'C' is an unclassified variable. The above snippet is not the actual code which is quite big. But I hope the lines above convey what am I trying to do. Any idea what am I doing wrong?
Thanks!
  1 comentario
Mohammad Sami
Mohammad Sami el 17 de Mzo. de 2020
Try initializing variable C before calling the parfor loop.

Iniciar sesión para comentar.

Respuesta aceptada

Matt J
Matt J el 17 de Mzo. de 2020
parfor i= 1:xyend-xystart+1
....
A = zeros(nx,ny); B = A;
for n=1:Nn;
for m=1:Mm;
A(m,n)= <some expression>;
B(m,n)= <some expression>;
end
end
C(i,:,:) = A. * B;
end
  2 comentarios
oceanmod
oceanmod el 17 de Mzo. de 2020
Thanks! Is there a reason why changing the loop index like this fixes the problem?
Matt J
Matt J el 17 de Mzo. de 2020
It satisfies restrictions on sliced variables listed here

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by