Post Reply 
Euclidian distance matrix
04-17-2016, 11:07 AM
Post: #6
RE: Euclidian distance matrix
That's very good work, Didier! I envy your skill at the details.

You might also like to include the example data for making a "default" distance matrix in Didier's CDM program, (for future reference), as Didier initially described:


Code:

EXPORT CDM(DM)
BEGIN
  LOCAL CM,j,k;

  IF DM==0 then 
    M1:=[[1.1,3.1],[2.1,4.1],[3.4,3.2]];
    M2:=[[0.7,2.1],[1.6,3.6],[3.2,1.6],[3.5,2.1],[3.1,4]];
    DM:=MAKEMAT(√((M1(I,1)-M2(J,1))^2+(M1(I,2)-M2(J,2))^2),rowDim(M1),rowDim(M2));
  END;
  
  CM:=MAKEMAT(0,rowDim(DM),colDim(DM));
  FOR j FROM 1 TO rowDim(DM) DO
    FOR k FROM 1 TO colDim(DM) DO
      IF (j==1) AND (k==1) THEN 
        CM(j,k):=DM(j,k); 
      END;
      IF (j==1) AND (k>1) THEN
        CM(j,k):=DM(j,k)+CM(j,k-1);
      END;
      IF (j>1) AND (k==1) THEN
        CM(j,k):=DM(j,k)+CM(j-1,k);
      END;
      IF (j>1) AND (k>1) THEN
        CM(j,k):=DM(j,k)+MIN(CM(j-1,k-1),CM(j-1,k),CM(j,k-1)); 
      END;
    END;
  END;
  RETURN CM;
END;
[code]
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
Euclidian distance matrix - in06khattab - 04-16-2016, 10:20 AM
RE: Euclidian distance matrix - DrD - 04-17-2016 11:07 AM



User(s) browsing this thread: 1 Guest(s)