Tensor Product According to Input (Dynamically)

1 view (last 30 days)
Hello:
I am trying to use tensor product according to inout number d
How can I write this code better? I am asking that becuase if I have 100 for d I cant write if by hand I want to write more clever things with for but I dont know
function A = td(d)
sigma_x = [0,1;1,0];
if d ==2
A = sigma_x;
if d ==4
A = kron(sigma_x,sigma_x);
end
if d == 8
A = kron(kron(sigma_x,sigma_x),sigma_x);
end
if d ==16
A = kron(kron(kron(sigma_x,sigma_x),sigma_x),sigma_x);
end

Answers (1)

Sulaymon Eshkabilov
Sulaymon Eshkabilov on 6 Jul 2020
If your variable sigma_x is 90 rotated eye matrix, then you can use
A = rot90(eye(d));
Good luck

Categories

Find more on Operating on Diagonal Matrices in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!