Borrar filtros
Borrar filtros

The variable in parfor cant classified

1 visualización (últimos 30 días)
htrh5
htrh5 el 11 de Jul. de 2015
Comentada: htrh5 el 12 de Jul. de 2015
parpool(3)
parfor n = 1:N
a=n/60;
for u_p=1:length(t)
x_a(n,u_p)=sqrt(1-1i*cot(a*pi/2)) *integral(@(u) ...
rectpuls(u).*exp(1i*pi* ( cot(a*pi/2)*t(u_p)^2 -2*csc(a*pi/2)*u*t(u_p) +cot(a*pi/2)*u.^2 )) ,- HalfDur,HalfDur );
end
end
Pretty sure I do not access the same location, but I might be wrong. What am I doing wrong?
on a side note, how can I write that inner loop better? i couldnt vector it

Respuesta aceptada

Walter Roberson
Walter Roberson el 12 de Jul. de 2015
parfor requires that it be obvious that the same location cannot be written to multiple times.
You should write your output to a vector indexed just by n. You can then reshape the vector afterwards.
  5 comentarios
Walter Roberson
Walter Roberson el 12 de Jul. de 2015
Consider using the ArrayValued option of integral()
htrh5
htrh5 el 12 de Jul. de 2015
Thanks, that's it.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Parallel Computing Fundamentals en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by