Info

Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.

Call matrix for multiplication

2 Ansichten (letzte 30 Tage)
Fariba
Fariba am 15 Aug. 2012
Geschlossen: MATLAB Answer Bot am 20 Aug. 2021
I have 12 matrix: p1................p12.
these are loaded in matlab.
I wish to do p1'*P1 then p1'*p2 .......P1'*p12.
Then reapeat with p2: p2'*p3 ...........p2'*p12.
I wish to cinstruct a loop
for i=1:12
for j=i:12
pp(:,:,j)=Pi ?????????*Pj??????????
would you please let me know , how i can call pi and pj
regards

Antworten (3)

Andrei Bobrov
Andrei Bobrov am 15 Aug. 2012
Bearbeitet: Andrei Bobrov am 15 Aug. 2012
% 1. Your matrices (p1 .. p12):
for j1 = 1:12
eval(['p',num2str(j1),' = randi(10,3,4)']);
end
% 2. Solution:
p = eval(['{',sprintf('p%d,',(1:12)'),'}']);
n = nchoosek(1:12,2);
pp = zeros([size(p{1},2)*[1 1],size(n,1)]);
for j1 = 1:size(n,1)
pp(:,:,j1) = p{n(j1,1)}'*p{n(j1,2)};
end

Walter Roberson
Walter Roberson am 15 Aug. 2012

Azzi Abdelmalek
Azzi Abdelmalek am 15 Aug. 2012
Bearbeitet: Azzi Abdelmalek am 16 Aug. 2012
n=3;m=6;
for k = 1:12
p{k} = rand(n,m)
end
ind = nchoosek(1:12,2);pp=cell2mat(p(ind));
for k=1:n:size(pp,1)
result(:,:,(k+n-1)/n)=pp(k:k+n-1,1:m)'*pp(k:k+n-1,m+1:2*m)
end
  2 Kommentare
Fariba
Fariba am 15 Aug. 2012
I have find a soultion as following: for k=1:12 % load(['G:\......\G',num2str(k),'.txt']); f(:,:,k)=load(['G:\.......\G',num2str(k),'.txt']); end Thank you for all.
Azzi Abdelmalek
Azzi Abdelmalek am 15 Aug. 2012
how is that related to your question?

Diese Frage ist geschlossen.

Community Treasure Hunt

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

Start Hunting!

Translated by