# Talk:Chromosome structure via Euclidean Distance Matrices

### From Wikimization

(Difference between revisions)

(→E.coli realization) |
Current revision (02:39, 10 January 2009) (edit) (undo)m (Protected "Talk:Chromosome structure via Euclidean Distance Matrices" [edit=autoconfirmed:move=autoconfirmed]) |
||

(9 intermediate revisions not shown.) | |||

Line 1: | Line 1: | ||

- | <pre> | ||

- | %%% Ronan Fleming, E.coli molecule data | ||

- | %%% -Jon Dattorro, August 2008 | ||

- | clear all | ||

- | load ecoli | ||

- | frame = 4; % 1 through 12 | ||

- | G = her49imfs12movfull(frame).cdata; % uint8 | ||

- | G = (double(G)-128)/128; % Gram matrix | ||

- | N = size(G,1); | ||

- | |||

- | D = diag(G)*ones(N,1)' + ones(N,1)*diag(G)' - 2*G; % EDM D | ||

- | |||

- | clear her49imfs12movfull G; | ||

- | |||

- | Vn = [-ones(1,N-1); speye(N-1)]; | ||

- | VDV = (-Vn'*D*Vn)/2; | ||

- | |||

- | clear D Vn | ||

- | |||

- | [evec evals flag] = eigs(VDV, [], 20, 'LR'); | ||

- | if flag, disp('convergence problem'), return, end; | ||

- | |||

- | close all | ||

- | |||

- | Xs = sqrt(real(evals(1:3,1:3)))*real(evec(:,1:3))'; % Projection of -VDV on PSD cone rank 3 | ||

- | plot3(Xs(1,:), Xs(2,:), Xs(3,:), '.') | ||

- | </pre> | ||

- | |||

- | == E.coli realization == | ||

- | [[Image:E.coli-4.jpg|thumb|right|560px|Test image E.coli]] | ||

- | I regard the autocorrelation data you provided as a Gram matrix. | ||

- | |||

- | Then conversion to an EDM is straightforward - Chapter 5.4.2 of [http://meboo.convexoptimization.com/BOOK/EuclideanDistanceMatrix.pdf Convex Optimization & Distance Geometry]. | ||

- | |||

- | The program calculates only the first 20 eigenvalues of the projection of the EDM on a positive semidefinite (PSD) cone. | ||

- | |||

- | You can see at runtime that there are many significant eigenvalues; which means, the Euclidean body (the molecule) lives in a space higher than dimension 3, assuming I have interpreted the E.coli data correctly. | ||

- | |||

- | To get a picture corresponding to physical reality, we project the EDM on the PSD cone, rank 3 subset; this means, precisely, we truncate eigenvalues. | ||

- | |||

- | It is unlikely that this picture is an accurate representation unless the number of eigenvalues of the EDM projection approaches 3 to begin with. | ||

- | |||

- | Matlab Figures allow 3D rotation in real time, so you can get a good idea of the body's shape. | ||

- | |||

- | I include a low-resolution figure here (frame 4) for reference. |