If anybody could make this work in two loops so that ı understand how it works it would be great
substracting every row from each other
1 view (last 30 days)
Show older comments
I am trying to substract every other row using 2 loops, what is wrong with this code?
Here is the code,
% these are the coordinates I am using
coor=[x' y' z'];
%number of the rows is my atomnumber
atomnum=size(x,2);
contactmapdistance=zeros;
for i=atomnum : 1
for j= 1:atomnum
contactmapdistance(i,3)=coor(i,:) - coor(j,:);
i=i-1;
end
j=j+1;
end
Accepted Answer
More Answers (1)
Image Analyst
on 6 Jun 2020
Edited: Image Analyst
on 6 Jun 2020
Do you mean like this:
% Initialize data
% numRows = 5
x = randi(9, numRows, 1);
y = randi(9, numRows, 1);
z = randi(9, numRows, 1);
% These are the coordinates I am using
coor = [x(:), y(:), z(:)]
% number of the rows is my atomnumber
% atomnum = size(x, 2)
contactMapDistance = zeros(ceil(numRows/2) - 1, 3);
% Subtract row 1 from row 3, row 3 from row 5, row 5 from row 7, etc.
cRow = 1;
for row = 1 : 2 : numRows - 2
contactMapDistance(cRow, :) = coor(row+2, :) - coor(row, :);
cRow = cRow + 1;
end
contactMapDistance % Show in command window
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!