The Code Does not Compute the other elements of Matrix

1 visualización (últimos 30 días)
Gözde Üstün
Gözde Üstün el 13 de Jul. de 2020
Comentada: Gözde Üstün el 13 de Jul. de 2020
Hello,
I am trying to compute value of probabilitiy distribution The formula is ok, code is working I have no error but some values are coming as 0. However I should have a value except zero
Here is my code:
function P = Prob(A_ax,B_by,rho)
d=size(A_ax,1);
m=size(A_ax,4);
bcount=size(A_ax,3);
P = zeros(d,d,bcount,m);
for x=1:bcount %m->bcount
for y=1:bcount %m->bcount
for a=1:m %d
for b=1:m %d
for dim=1:d
for dim2=1:d
%P(dim,dim2,x,y) = real( trace(kron(A_ax(dim,dim2,x,a),B_by(dim,dim2,y,b))*rho));
P(a,b,x,y) = real( trace(kron(A_ax(:,:,x,a),B_by(:,:,y,b))*rho));
end
end
end
end
end
end
As you can see the other values are 0. Where am I doing wrong?

Respuestas (1)

KSSV
KSSV el 13 de Jul. de 2020
Editada: KSSV el 13 de Jul. de 2020
function P = Prob(A_ax,B_by,rho)
d=size(A_ax,1);
m=size(A_ax,4);
bcount=size(A_ax,3);
P = zeros(d,d,bcount,bcount); %% Changed here
for x=1:bcount %m->bcount
for y=1:bcount %m->bcount
for a=1:d
for b=1:d
P(a,b,x,y) = real( trace(kron(A_ax(:,:,x,a),B_by(:,:,y,b))*rho));
end
end
end
end
  3 comentarios
KSSV
KSSV el 13 de Jul. de 2020
run the loop till d, a = 1:d, b = 1:d
Gözde Üstün
Gözde Üstün el 13 de Jul. de 2020
I cannot because since we thought A(4,4,2,2) I have not 4 for the a value so I have an error (A_ax(:,:,x,a))

Iniciar sesión para comentar.

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by