Skip to main content
NIHPA Author Manuscripts logoLink to NIHPA Author Manuscripts
. Author manuscript; available in PMC: 2011 May 1.
Published in final edited form as: Appl Comput Harmon Anal. 2010 May;28(3):296–312. doi: 10.1016/j.acha.2009.11.003

Reference Free Structure Determination through Eigenvectors of Center of Mass Operators

Ronald R Coifman *, Yoel Shkolnisky , Fred J Sigworth , Amit Singer §
PMCID: PMC2860334  NIHMSID: NIHMS161328  PMID: 20436952

Abstract

Recovering the three-dimensional structure of molecules is important for understanding their functionality. We describe a spectral graph algorithm for reconstructing the three-dimensional structure of molecules from their cryo-electron microscopy images taken at random unknown orientations.

We first identify a one-to-one correspondence between radial lines in three-dimensional Fourier space of the molecule and points on the unit sphere. The problem is then reduced to determining the coordinates of points on the sphere given a subset of their pairwise geodesic distances. To recover those coordinates, we exploit the special geometry of the problem, as rendered by the Fourier projection-slice theorem, to construct a weighted graph whose vertices are the radial Fourier lines and whose edges are linked using the common line property. The graph organizes the radial lines on the sphere in a global manner that reveals the acquisition direction of each image. This organization is derived from a global computation of a few eigenvectors of the graph's sparse adjacency matrix. Once the directions are obtained, the molecule can be reconstructed using classical tomography methods.

The presented algorithm is direct (as opposed to iterative refinement schemes), does not require any prior model for the reconstructed object, and is shown to have favorable computational and numerical properties. Moreover, the algorithm does not impose any assumption on the distribution of the projection orientations. Physically, this means that the algorithm is applicable to molecules that have unknown spatial preference.

1 Introduction

“Three-dimensional electron microscopy” [1] is the name commonly given to methods in which the three-dimensional structures of macromolecular complexes are obtained from sets of images taken by an electron microscope. The most widespread and general of these methods is single-particle reconstruction (SPR). In SPR the three-dimensional structure is determined from images of randomly oriented and positioned identical macromolecular “particles”, typically complexes 200 kDa or larger in size. The SPR method has been applied to images of negatively stained specimens, and to images obtained from frozen-hydrated, unstained specimens [2]. In the latter technique, called cryo-electron microscopy (cryo-EM) the sample of macromolecules is rapidly frozen in a thin (~ 100 nm) layer of vitreous ice, and maintained at liquid nitrogen temperature throughout the imaging process.

SPR from cryo-EM images is of particular interest because it promises to be an entirely general technique. It does not require crystallization or other special preparation of the complexes to be imaged, and in the future it is likely to reach sufficient resolution (~ 0.4 nm) to allow the polypeptide chain to be traced and residues identified in protein molecules [3]. Even at the present best resolutions of 0.9–0.6 nm, many important features of protein molecules can be determined [4].

Much progress has been made in algorithms that, given a starting three-dimensional structure, are able to refine that structure on the basis of a set of negative-stain or cryo-EM images, which are taken to be projections of the thee-dimensional object. Datasets typically range from 104 to 105 particle images, and refinements require tens to thousands of CPU-hours. As the starting point for the refinement process, however, some sort of ab initio estimate of the three-dimensional structure must be made. Present algorithms are based on the “Angular Reconstitution” method of van Heel [5] in which a coordinate system is established from three projections, and the orientation of the particle giving rise to each image is deduced from common lines among the images.

We propose Globally Consistent Angular Reconstitution (GCAR), a reconstruction algorithm that does not assume any ab initio model and establishes a globally consistent coordinate system from all projections. The special geometry of the problem rendered by the Fourier projection-slice theorem [6] is incorporated by GCAR into a weighted directed graph whose vertices are the radial Fourier lines and whose edges are linked using the common line property. Radial lines are viewed as points on the sphere and are networked through “spider-like” connections. The graph organizes the radial lines on the sphere in a global manner that reveals the projection directions. Such an organization is derived from the eigenvectors of the graph's sparse adjacency matrix. This global averaging property makes GCAR robust to both noise and false detections of common lines. GCAR is extremely fast because it requires only the computation of a few eigenvectors of a sparse matrix. Once the orientation of each projection is revealed by the eigenvectors, the reconstruction may be performed using any tomographic reconstruction method (see [6] for a review of the classical methods).

Many of the recent and successful algorithms for nonlinear dimensionality reduction of high-dimensional data, such as locally linear embedding (LLE) [7], Hessian LLE [8], Laplacian eigenmap [9] and diffusion maps [10, 11] involve the computation of eigenvectors of data-dependent sparse kernel matrices. However, such algorithms fail to solve the cryo-EM problem, because the reduced coordinate system that each of them obtains does not agree with the projection directions. On the other hand, GCAR finds the desired coordinate system of projection images, because it is tailored to the geometry of the problem through the Fourier projection-slice theorem. We have successfully applied similar graph-based approaches to the reconstruction of 2D structures, such as the Shepp-Logan phantom, from noisy 1D projection “images” taken at unknown random directions [12].

The organization of this paper is as follows. In Section 2 we introduce the structure determination problem in cryo-electron microscopy. This problem has a special underlying geometry, presented in Section 3 and exploited in Section 4 to construct the GCAR operator. We also prove in Section 4 that the eigenvectors of the GCAR operator reveal the projection orientations, and show its relation to the spherical harmonics. The algorithm for recovering the projection orientations is then summarized in Section 5, together with a few implementation details. Examples of applying our algorithm to simulated datasets are given in Section 6. We conclude in Section 7 with a summary and description of future work.

2 Problem setup

The goal in cryo-EM structure determination is to find the three-dimensional structure of a molecule given a finite number of its two-dimensional projection images, taken from unknown random directions. The intensity of pixels in each projection image corresponds to line integrals of the electric potential induced by the molecule along the path of the imaging electrons. The highly intense electron beam destroys the molecule, and it is therefore impractical to take projection images of the same molecule at known directions, as in the case of classical computerized tomography. In other words, a single molecule can be imaged only once. By using many copies of the same molecule, we obtain many projection images of the same underlying structure. However, there is usually no way of aligning all molecules in the same direction, as each molecule is free to move in the liquid medium until its orientation is fixed at the moment of freezing. Thus, every image is a projection of the same molecule but at an unknown random orientation. In this formulation, all molecules are assumed to have the exact same structure; they differ only by their spatial orientation.

The locations of the microscope (source) and the camera/film (detectors) are fixed, with different images corresponding to different spatial rotations of the molecule. Every image is thus associated with an element of the rotation group SO(3). If the electric potential of the molecule in some fixed reference coordinate system is ϕ(r), r = (x, y, z), then, rotating the molecule by g ∈ SO(3) results in the potential ϕg(r) = ϕ(g−1r). We assume without loss of generality that the coordinate system of the microscope is given by the standard basis vectors x,y,z. The projection image Pg(x, y) is formed on the xy plane by integrating ϕg(r)along the z-direction (the source-detector direction)

Pg(x,y)=ϕg(x,y,z)dz. (1)

It is assumed that all integrals hereinafter exist, by requiring, for example that ϕL1(R3). Also, since ϕ represents a physical object, it must be band limited for all practical purposes. We denote the band limit by B, and in practice, it is determined by the characteristics of the imaging setup. After digitization, each projection image is a digital picture given as a p × p grid of pixels Pg(xi,yj), i, j = 1, . . . , p, where p is also determined by the characteristics of the imaging setup. The projection operator (1) is also known as the X-ray transform [6]. Figure 1 is a schematic illustration of the cryo-EM setting.

Figure 1.

Figure 1

Illustration of the cryo-EM imaging process: each projection image corresponds the line integrals of an unknown molecule rotated by an unknown three-dimensional rotation.

The cryo-EM problem is thus stated as follows: find ϕ(x, y, z) given a collection of K projections {Pgk}k=1K, where gk are unknown rotations. If the rotations {gk}k=1K were known, then the reconstruction of ϕ(x, y, z) could be performed by classical tomography methods. Therefore, the cryo-EM problem is reduced to estimating the rotations {gk}k=1K given the dataset {Pgk}k=1K.

For convenience, we adopt the following equivalent point of view. Instead of having the microscope fixed and the molecule oriented randomly in space, we think of the molecule as being fixed, and the microscope being the one that is randomly rotated in space. The orientation of the microscope that corresponds to some rotation g ∈ SO(3) of the molecule is given by a beaming direction τg=g1zS2, and an in-plane rotation angle αg ∈ [0, 2π) of the camera. The image is then formed on the plane τg. Using this convention, the projection operator in (1) becomes

Pg(u)=τgϕ(s+u)ds,uτg. (2)

3 Geometry of the problem – correspondence between Fourier rays and the unit sphere

For a fixed function ϕ, the operator in (2) defines a mapping from SO(3) into L1(R2). Given the projection images, the structure determination problem is nothing else than the inverse problem of recovering the source in SO(3) of each projection image. We show that it is sufficient to consider a map from S2 into Cn (n will be defined below), given that all projection images can be properly discretized. In this section we also review the Fourier projection-slice theorem, which relates the X-ray transform (2) with the Fourier transform. Using the Fourier projection-slice theorem, we determine the discretization of Fourier space and the mapping of Fourier space into S2.

The two-dimensional Fourier transform of a projection image Pg(u) (see (2)) is given by the double integral

P^g(ω)=1(2π)2τgeiuωPg(u)du,ωτg. (3)

The three-dimensional Fourier transform of the molecule is given by the triple integral

ϕ^(ξ)=1(2π)3R3eirξϕ(r)dr,ξR3. (4)

One of the cornerstones of tomography is the Fourier projection-slice theorem, which states that the two-dimensional Fourier transform of a projection image is the planar slice τg (the slice perpendicular to the beaming direction τg) of the three-dimensional Fourier transform of the molecule (see, e.g., [6, p. 11]). Specifically, taking ωτg, combining (2) and (3) and writing an arbitrary point rR3 as

r=u+s,uτg,sτg, (5)

we get

P^g(ω)=1(2π)2τgduτgdsϕ(u+s)eıuω=1(2π)2R3drϕ(r)eırω=2πϕ^(ω), (6)

since by (5) we have that u · ω = r · ω. An immediate consequence of the Fourier projection-slice theorem (6) is that the Fourier transforms of any two projection images share a common line, i.e., the intersection line of the two planes; if η is a unit vector such that ητg1τg2 then P^g1(η)=P^g2(η).

Note that the effect of rotating the camera (changing αg) while fixing the beaming direction τg is an in-plane rotation of the slice without changing its position.

The Fourier transform of each projection image can be considered in polar coordinates as a set of planar radial lines in two-dimensional Fourier space. As a result of the Fourier projection-slice theorem, every planar radial line is also a radial line in the three-dimensional frequency space. This gives a one-to-one correspondence between those Fourier radial lines and points on the unit sphere S2, by mapping each radial line to its direction vector in R3 (see (9) below). The radial lines of a single projection image correspond to a great circle (a geodesic circle) on S2. Thus, to every projection image Pgk there corresponds a unique great circle Ck over S2, and the common line property is restated as follows: any two different geodesic circles over S2 intersect at exactly two antipodal points.

If the projection directions (the gk's or the (τgk, αgk)'s) are known, then the Fourier transform of the projection images gives the values of ϕ^(ξ) on different planes through the origin, as stated by (6). Inverting the Fourier transform ϕ^(ξ) would then reconstruct the molecule ϕ. In practice, however, inverting the Fourier transform on a non-regular grid is a subtle numerical process; due to space constraints, we do not include the details of this procedure. However, in the cryo-EM problem, the slices are unorganized. Neither their directions τgk nor their in-plane rotations αgk are known.

We next explain the discretization of Fourier space and derive a mapping between the discretized Fourier space and points on the unit sphere S2. Such a mapping would allow us to proceed by exploiting the geometry of S2.

Let Pg1 (x, y), . . . , PgK (x, y) be K projection images. Upon writing the Fourier transform in (3) in polar frequency coordinates, we obtain

P^gk(ρ,γ)=1(2π)2Pgk(x,y)ei(xρcosγ+yρsinγ)dxdy,k=1,,K. (7)

For digital implementations we discretize ρ and γ, and compute (7) using a nonequally-spaced FFT [13, 14]. We denote by L the angular discretization of γ (angular resolution), and sample ρ in n equally-spaced points. That is, we split each transformed projection into L radial lines Λk,0,,Λk,L1Cn, each represented by a set of n equispaced points

Λk,l=(P^gk(Bn,2πlL),P^gk(2Bn,2πlL),,P^gk(B,2πlL))Cn, (8)

1 ≤ kK, 0 ≤ lL − 1, where B is the band limit of the projection images. Note that the DC term (ρ = 0 in (7)) is shared by all lines independently of the image and is therefore ignored.

Let

Λ(β)=(2πϕ^(βBn),2πϕ^(2βBn),,2πϕ^(nβBn))Cn (9)

be n samples from a ray through the origin in three-dimensional Fourier space, in a direction given by the unit vector βS2. This defines a map Λ:S2Cn that maps each unit vector in R3 to n samples of the Fourier ray in that direction. According to the Fourier projection-slice theorem, there exist βk,lS2, k = 1, . . . , K, l = 0, . . . , L−1 such that

Λk,l=Λ(βk,l), (10)

that is, the radial lines Λk,l in (8) are the evaluations of the function Λ(β) at the points βk,l. The function Λ(β) is unknown, because so is ϕ^. The point βk,lS2 is the orientation of the ray Λk,l in three-dimensional Fourier space. Our goal is to find the sources βk,l of the overall KL radial lines. The L sources {βk,l}l=0L1 (k fixed) are equidistant points on the great circle CkS2, and the normal to their common plane is the projection orientation τgk corresponding to projection Pgk.

As mentioned earlier, the Fourier transforms of any two projections share a common line. After sampling the Fourier transform of each projection along a finite number L of rays, the true common line between gk1 and gk2 is not necessarily one of the L computed Fourier rays. However, since the frequency content of each projection is limited, if we choose L large enough, then the common line property asserts that for any k1 and k2 there exist l1 and l2 such that ∥Λk1,l1 − Λk2,l2∥ < ε. That is, for all practical purposes, for each k1 and k2, there exist l1 and l2 such that the pair (Λk1,l1, Λk2,l2) is the common line between projections k1 and k2. To denote that the common line between the Fourier transforms of projections k1 and k2 is the pair (Λk1,l1, Λk2,l2), we write Λk1,l1 ≈ Λk2,l2. Note that according to (8), each Fourier ray starts at a frequency with radial component B/n. Thus, any two projections share two common Fourier rays with antipodal directions (this is of course equivalent to one common line through the origin). See Fig. 2 for an illustration of the Fourier projection-slice theorem and the geometry induced on S2. Although l1 and l2 are not guaranteed to be unique, it is unlikely that two different Fourier rays of the same projection will coincide. However, even if such non-uniqueness of common lines occurs in a few projections, it can be considered as noise and does not affect the outcome of the algorithm (see Section 6).

Figure 2.

Figure 2

Fourier projection-slice theorem and its induced geometry. The Fourier transform of each projection gk corresponds to a planar slice, at orientation determined by gk, through the three-dimensional Fourier transform ϕ^ of the molecule. The Fourier transforms of any two projections gk1 and gk2 share a common line Λk1,l1 ≈ Λk2,l2, which is also a ray of the three-dimensional Fourier transform ϕ^. Each Fourier ray Λk1,l1 can be mapped to its direction vector βk1,l1S2. The direction vectors of the common lines Λk1,l1 ≈ Λk2,l2 must coincide, that is, βk1,l1 = βk2,l2.

4 Orientation revealing operator

In this section we introduce the GCAR operator, whose eigenvectors reveal the orientation of each projection. The GCAR operator is a graph with each node representing a ray in Fourier space, and whose edges are determined by the common line property. The formal construction of this graph is presented in Section 4.1. The normalized adjacency matrix of the graph can be viewed as an averaging operator for functions defined on the nodes of the graph, as explained in Section 4.2. Analyzing the eigenvectors of this operator in Section 4.3 shows that they encode the projection orientations. We conclude the construction of the GCAR operator by showing in Section 4.4 that the eigenvectors of the GCAR matrix are intimately related to the spherical harmonics.

4.1 GCAR graph

Given K projection images, we denote by Λk,l, k = 1, . . . , K, l = 0, . . . , L − 1 the KL Fourier rays computed from the K projection images (see (8)). To construct the directed graph G = (V, E) associated with the set of radial lines {Λk,l}, we define the set of vertices V to be

V={(k,l):1kK,0lL1}.

The number of vertices is |V| = KL. In essence, we think of the radial lines as vertices of a graph, where each radial line Λk,l and its source βk,lS2 are identified with the vertex indexed by the pair (k, l). Once we specify the set of directed edges EV×V, the graph will be represented using a sparse adjacency matrix W of size KL × KL by

W(k1,l1),(k2,l2)={1if((k1,l1),(k2,l2))E0if((k1,l1),(k2,l2))E}. (11)

For each radial line Λk,l (or alternatively, for each source βk,lS2) there corresponds exactly one row in W. The edges in the graph are introduced according to the following rules:

  1. For each vertex (k1, l1), 1 ≤ k1K, 0 ≤ l1L − 1, add to E the edges ((k1, l1), (k1, l1 + l)), −JlJ, where J is some fixed constant (say 10) and addition is taken modulo L:
    (k1,l1),{((k1,l1),(k1,l1+l))},JlJ}E. (12)
  2. Whenever Λk1,l1 and Λk2,l2 (k1k2) are common radial lines, that is, Λk1,l1 ≈ Λk2,l2, add to E the edges ((k1, l1), (k2, l2 + l)), −JlJ (again addition is taken modulo L):
    Λk1,l1Λk2,l2{((k1,l1),(k2,l2+l)),JlJ}E. (13)

In general, the adjacency matrix W is not symmetric: ((k1, l1), (k2, l2)) ∈ E (for k1k2) reflects the fact that the circle Ck2 containing (k2, l2) passes nearby the point (k1, l1). However, Ck1 does not necessarily passes nearby (k2, l2) so ((k2, l2), (k1, l1)) ∉ E. Symmetry occurs only within the same circle, that is, ((k,l1),(k,l2))E((k,l2),(k,l1))E, which happens whenever |l1l2| ≤ J. Although the size of the matrix W is KL × KL, which is potentially computationally prohibitive, by choosing J << L we force it to be sparse. Its number of nonzero entries is only

E=(2J+1)KL+2K(K1)(2J+1). (14)

The first summand corresponds to the edges added according to rule 1 above, namely, 2J + 1 edges for each of the KL vertices. The second summand corresponds to edges between different images added according to rule 2. Any two circles intersect at exactly two antipodal points, so there are 2(K2)=K(K1) intersection points. Every intersection point, that is, every common line Λk1,l1 ≈ Λk2,l2, contributes 2J + 1 nonzero elements to row (k1, l1) of W, and 2J + 1 nonzero elements to row (k2, l2). In practice, the number of edges in E is smaller than the number in (14), as explained in Section 5.

If we take row (k1, l1) from W and plot on S2 all points βk2,l2S2 for which W(k1,l1),(k2,l2), = 1, we get a “spider-like” picture as in Fig. 3a. To better understand this special geometry induced on S2 by the matrix W, we now explain in detail how Fig. 3a was generated. To that end, we took K = 200 simulated electron-microscope projections of a known molecule, whose orientations were sampled from the uniform distribution over SO(3), and computed L = 100 Fourier rays in each projection. We then searched for the common line between each pair of Fourier-transformed images, and constructed the matrix W in (11) with J = 10. This corresponds to using K = 200 random geodesic circles on S2, with L = 100 points on each geodesic circle, and J = 10. Since we know the projection orientation of each projection, we also know the positions βk,l of each Fourier ray such that (10) holds. To produce Fig. 3a we set k1 = 1, and plotted a small bead at each point βk2,l2S2 for which W(k1,l1),(k2,l2) = 1. Points βk2,l2 that correspond to the same k2 (come from the same projection image) are plotted with the same color. The reason for the “spider-like” structure can be seen in the bottom right part of Fig. 2 – each common line Λk1,l1 ≈ Λk2,l2 induces two intersecting arcs on S2 centered at βk1,l1. In light of Fig. 3a, we refer to each row of W as the “spider that corresponds to the point (k1, l1)”. The point βk1,l1 is the head (center) of the spider. Figure 3b shows two rows of W plotted on S2, from which we can see how different spiders interact. This interaction is essential for the global consistent assignment of coordinates explained below.

Figure 3.

Figure 3

Mapping the nonzero entries of rows of W to S2.

4.2 Averaging operator

When constructing the matrix W, different spiders may have different number of legs, that is, different rows of W may have different row sums. We therefore normalize the adjacency matrix W to have constant row sums by dividing each row by its sum. Specifically, we define the outdegree dk,l of the (k, l)'th vertex as the sum of its corresponding row in W

dk,l=(k,l)VW(k,l),(k,l)={(k,l):((k,l),(k,l))E}, (15)

and divide the matrix W by the diagonal matrix D given by

D(k,l),(k,l)=dk,l. (16)

This normalization results in the operator

A=D1W. (17)

The operator A:CVCV takes any discrete complex-valued function f:VC (realized as a vector in CKL) and assigns to the head of each spider the average of f over the entire spider

(Af)(k1,l1)=1dk1,l1((k1,l1),(k2,l2))Ef(k2,l2). (18)

To see that, consider an arbitrary vector fCKL. The (k1, l1) coordinate of the vector Af is given by the dot product of row (k1, l1) of A with the vector f. By construction, the only nonzero entries in row (k1, l1) of A are in columns (k2, l2) for which W(k1,l1),(k2,l2) = 1, that is, ((k1, l1), (k2, l2)) ∈ E; the entries in these columns are 1dk1,l1, due to the normalization (17). By definition, the set {((k1, l1), (k2, l2)) ∈ E} is exactly the spider neighborhood of (k1, l1). We therefore regard A as an averaging operator over CV.

The matrix A is row stochastic (the row sums of A all equal 1), and therefore, the constant function ψ0(v) = 1 ∀vV is an eigenvector with λ0 = 1: 0 = ψ0. The remaining eigenvectors may be complex and come in conjugate pairs, because A is real but not symmetric: Aψ=λψAψ=λψ. As of the spectrum of A, λ0 = 1 is the largest eigenvalue, and whenever the directed graph G is connected, the remaining eigenvalues reside inside the complex unit disk |λ| < 1, due to Perron-Frobenius theorem [15, Chapter 8].

4.3 Coordinate eigenvectors

The operator A has many interesting properties. For the cryo-EM problem, the most important property is that the coordinates of the sources βk,l are eigenvectors of the averaging operator A, sharing the same eigenvalue. Explicitly, we have the following theorem.

Theorem. Let the matrix A be defined by (17). Let ex,ey,ez:R3R be the coordinate functions in R3. Then, the vectors x,y,zRKL defined by

x=ex(βk,l),y=ey(βk,l),z=ez(βk,l), (19)

k = 1, . . . , K, l = 0, . . . , L − 1 satisfy

Ax=λx,Ay=λy,Az=λz, (20)

where

λ=12J+1l=JJcos2πlL. (21)

This remarkable fact is a consequence of the following observation: the center of mass of every spider is in the direction of the spider's head, because any pair of opposite legs balance each other. In other words, for any spider, the average of the coordinates of its points is a vector in the direction of the spider's head. For example, the center of mass of a spider whose head is located at the north pole lies just beneath it. We now give a formal proof of this theorem.

Proof. Suppose f(u, v, w) = a1u + a2v + a3w = a · β is a linear function, where a = (a1, a2, a3)T and β = (u, v, w)TS2. Consider a spider whose head is at the point β1 = (u1, v1, w1)TS2, where the value of the function f is f(u1, v1, w1) = a · β1. Let β2, β3 be two unit vectors that complete β1 into an orthonormal system of R3. In other words, the 3 × 3 matrix U whose columns are β1, β2, β3 is orthogonal. We express any point β = (u, v, w)T on the unit sphere as a linear combination β = u′β1 + v′β2 + w′β3 = Uβ′, where β′ = (u′, v′, w′)T are the coordinates of β in a rotated coordinate system. We apply a change of variable ββ′ in f to obtain the linear function f′(u′, v′, w′) = f(u, v, w) = a · β = a · Uβ′ = a′ · β′, where a=UTa=(a1,a2,a3)T. The parametrization of a great circle going through β1 is

cosθβ1+sinθcosφ0β2+sinθsinφ0β3,

where θ ∈ (−π, π] and φ0 is a fixed parameter that determines the normal to the plane of the circle. On that circle, f is a function of the single parameter θ

f(θ)=f(cosθ,sinθcosφ0,sinθsinφ0)=a(cosθ,sinθcosφ0,sinθsinφ0)T.

The average of f over the two discrete opposite legs of that circle is

f(u1,v1,w1)=12J+1l=JJf(2πlL)=a2J+1l=JJ(cos2πlL,sin2πlLcosφ0,sin2πlLsinφ0)T=[12J+1l=JJcos2πlL]a(1,0,0)T,

due to the linearity of the dot product and the fact that sin θ is an odd function. From

a(1,0,0)T=UTa(1,0,0)T=aU(1,0,0)T=aβ1=f(u1,v1,w1),

we conclude that

f(u1,v1,w1)=[12J+1l=JJcos2πlL]f(u1,v1,w1) (22)

holds for all (u1, v1, w1) and for any circle going through it. Therefore, linear functions are eigenvectors of the averaging operator A with eigenvalue λ=12J+1l=JJcos2πLL. This completes the proof.

4.4 Spherical harmonics

The eigenfunctions of the Laplacian on the sphere S2 are known to be the spherical harmonics Ylm [6, p. 195] (also known as the eigenstates of the angular momentum operator in quantum mechanics)

ΔS2Ylm=l(l+1)Ylm,l=0,1,2,,m=l,l+1,,l, (23)

where the Laplacian on S2 is given by

ΔS2=1sinθθ(sinθθ)+1sin2θ2φ2. (24)

The (non-normalized) spherical harmonics are given in terms of the associated Legendre polynomials of the zenith angle θ ∈ [0, π] and trigonometric polynomials of the azimuthal angle φ ∈ [0, 2π) by

Yl0(θ,φ)=Pl(cosθ),Ylm(θ,φ)=Plm(cosθ)cosmφ,1ml,Ylm(θ,φ)=Plm(cosθ)sinmφ,1ml.

The eigenspaces are degenerated so that the eigenvalue l(l + 1) has multiplicity 2l + 1. Alternatively, the l'th eigenspace corresponds to homogeneous polynomials of degree l restricted to S2. In particular, the first three non-trivial spherical harmonics Y1m share the same eigenvalue and are given by the three linear functions

Y11=x,Y11=y,Y10=z.

The spherical harmonics Ylm are usually derived by separating variables in (23)(24). However, the fundamental reason for which the spherical harmonics are eigenfunctions of the Laplacian is that the latter commutes with rotations. In fact, the classical Funk-Hecke theorem (see, e.g., [6, p. 195]) asserts that the spherical harmonics are the eigenfunctions of any integral operator K:L2(S2)L2(S2) that commutes with rotations. Such operators are of the form

(Kf)(β)=S2k(β,β)f(β)dSβ,

where k:[1,1]R is a kernel function that depends only on the angle between β and β′ (β, β′S2). For such integral operators we have

KYlm=λlYlm,

where the eigenvalues λl depend on the specific kernel function k(·) and are given by

λl=2π11k(t)Pl(t)dt.

For example, the spherical harmonics are the eigenfunctions of the operator that corresponds to averaging over spherical caps.

The averaging operator A defined in Section 4.2 usually does not commute with rotations, because every spider has different number of legs that go in different directions. The averaging operator A commutes with rotations only in the limit of infinite number of projection images corresponding to a uniform distribution over SO(3) (the Haar measure). Although A does not commute with rotations and the Funk-Hecke theorem is not guaranteed to hold, the coordinate vectors x,y,zRKL span an eigenspace of A, due to the center of mass property. Nevertheless, numerical simulations demonstrate that the low-order spherical harmonics are present even for moderately small K (see example below), although this behavior is not guaranteed by the explanation above.

Figure 4 depicts the first 36 eigenvalues of the operator A constructed using K = 200 simulated projections, L = 100 points on each geodesic circle, and J = 10 samples on each leg of the spider, as explained in detail at the end of Section 4.1. The threefold multiplicity corresponding to the coordinate vectors is apparent in Fig. 4. Moreover, the observed numerical multiplicities of 1 ,3, 5, 7 and 9 are explained by the spherical harmonics.

Figure 4.

Figure 4

Numerical spectra of A: K = 200, L = 100, J = 10.

5 Algorithm

The fact that the coordinates x, y, z of the sources βk,l, k = 1, . . . , K, l = 0, . . . , L − 1, form an eigenspace of A (see Section 4.2) enables to estimate the orientation of each Fourier ray by computing the first three non-trivial eigenvectors ψ1, ψ2, ψ3 of the sparse matrix A. Taking a sufficiently small J ensures that x, y, z appear immediately after ψ0 = 1 in the spectrum of A. However, due to the threefold multiplicity of the eigenvalue, the computed eigenvectors may be any linear combination of the coordinate vectors. This linear combination is easily determined (up to an orthogonal transformation) by using the fact that the coordinates correspond to points on the unit sphere, that is, βk,l = (x(k, l), y(k, l), z(k, l)) is a point on S2. To unmix x, y, z from the computed eigenvectors ψ1, ψ2, ψ3, we need to find a 3 × 3 matrix M such that

X(xTyTzT)=M(ψ1Tψ2Tψ3T)MΨ. (25)

The diagonal of the KL × KL matrix XT X is given by

(XTX)ii=x2(k,l)+y2(k,l)+z2(k,l)=βk,l2=1.

Since XT X = ΨT MT MΨ and Ψ is known (the computed eigenvectors), we get the overdetermined system of KL linear equations

(ΨTMTMΨ)ii=1, (26)

for the 9 entries of MT M. The matrix M is then obtained from the least squares solution for MT M by using SVD or Cholesky decomposition. We can recover M only up to an orthogonal transformation O ∈ O(3), because MT OT OM = MT M. Thus, any reconstruction of the molecule is up to an arbitrary rotation and possibly a reflection (the chirality or handedness cannot be determined).

The locations of the radial lines can be further refined by using the fact that same image radial lines correspond to a great circle on S2. In particular, such radial lines belong to the same plane (slice). Therefore, in the presence of misidentifications of common lines due to noise, we improve the estimation of the coordinates by using principal component analysis (PCA) for groups of L radial lines at a time. Furthermore, we equally space those radial lines on their corresponding great circle.

GCAR (Globally Consistent Angular Reconstitution) is summarized in Algorithm 1. Note that the algorithm assumes that the projection images are centered, for otherwise the Fourier projection-slice theorem no longer holds in the form (6), but instead, each projection g in (6) needs to be multiplied by phases that depend on the shift in the projection. These phase shifts alter the steps of finding common lines and three-dimensional reconstruction. The algorithm can be easily modified to handle non-centered projections. However, due to space limitations, we do not include here the details. The complexity of Algorithm 1 is completely dominated by finding common lines between projections. Using a naïve implementation, this requires O(nK2L2) operations.

Algorithm 1.

Outline of GCAR
Input: Projection images Pgk(x, y), k = 1, 2, ..., K.
Output: Coordinates vectors x, y, and z defined by (19).
1: Compute the polar Fourier transform gk(ρ, γ) (see (7)).
2: Split each gk(ρ, γ) into L radial lines Λk,l (see (8)).
3: Find common lines Λk1,l1 ≈ Λk2, l2.
4: Construct the sparse KL × KL weight matrix W with J << L (following Section 4.1).
5: Form the averaging operator A = D–1W (see (17)).
6: Compute the first three non-trivial eigenvectors of A: i = λψi, i = 1, 2, 3.
7: Unmix x, y, z from ψ1, ψ2, ψ3.
8: Refinement: PCA and equally space same image radial lines.

The eigenvector computation is global and takes into account all the local pieces of information about common lines. Even if some common lines are misidentified, those errors are averaged out in the global eigenvector computation. Thus, GCAR should be regarded as a very efficient way of integrating the local cryo-EM geometry into a global orientation assignment.

The construction of the matrix W, as described in Section 4.1, uses all pairs of common lines. That is, for each pair of projection images k1 and k2, we find the Fourier lines Λk1,l1 and Λk2,l2 such that Λk2,l2 is closest to Λk1,l1, and use the pairs (k1, l1) and (k2, l2) to add edges to the set E according to (13). This corresponds to finding all geodesic circles on S2 that pass though βk1,l1. Note however, that the coordinate vectors are eigenvectors of A in (17) even if we use only a few of the geodesic circles that go through βk1,l1. This corresponds to using fewer legs in each spider. Moreover, the resulting matrix W is sparser, and so requires less memory, and its eigenvectors can be computed faster. The key advantage of this observation is that we do not need to use all common lines determined by the (K2) intersections of projection images. We can use only pairs of images for which the common line between projections k1 and k2 is reliable, e.g., whenever the correlation between Λk1,l1 and Λk2,l2 is above some threshold. This results in fewer misidentifications of common lines, and leads to a more accurate estimation of the orientations. This is demonstrated in the numerical examples in Section 6.

6 Numerical examples

In this section we demonstrate the performance of the GCAR algorithm using simulated data. Applying the algorithm to real datasets requires special considerations, due to the high levels of noise inherent to the imaging process. Practical considerations required for applying the algorithm to real cryo-EM datasets, which are beyond the scope of this paper, will be reported in a separate publication.

We implemented the algorithm in MATLAB, and tested it using simulated projections generated from a density map (three-dimensional volume) of the E. coli ribosome. Each simulated projection was computed by approximating the line integral (1) via the Fourier projection-slice theorem (6). Specifically, we computed the two-dimensional Fourier transform (3) of each projection on a Cartesian grid by accurately resampling the three-dimensional Fourier transform (4) of the molecule on a plane perpendicular to the projection orientation. This was implemented using a three-dimensional extension of [13, 14]. Once the two-dimensional discrete Fourier transform (DFT) of each projection was computed, the projection was obtained by a two-dimensional inverse DFT. Four noiseless simulated projections of the E. coli ribosome at random orientations are shown at the top row of Fig. 5. All projection orientations in our experiments were sampled from the uniform distribution on SO(3). The common line between each pair gk1 and gk2 of Fourier-transformed projections was detected by computing the correlations between all Fourier rays Λk1,l1 and Λk2,l2, and taking the pair (l1, l2) with the highest correlation as the common line.

Figure 5.

Figure 5

Simulated projections of the E. coli ribosome. Top row: Noiseless projections. Bottom row: Same projections as in the top row with additive Gaussian white noise with SNR=1/3.

All tests were executed on a quad core Xeon 2.33GHz running Linux. No knowledge of the orientations nor their distribution was used by the algorithm. Once the orientations were determined, the molecule was reconstructed by interpolating the KL Fourier lines into the three-dimensional pseudo-polar grid, by using nearest-neighbor interpolation, followed by an inverse three-dimensional pseudo-polar Fourier transform, implemented along the lines of [16, 17].

In the first experiment, we generated K = 200 projections, and computed L = 72 Fourier rays for each projection. This corresponds to an angular resolution of 5°. We then constructed the operator A in (17) using J = 10 and computed its spectrum (all eigenvalues and eigenvectors were computed using MATLAB's eigs function). Figure 6a shows the inverted spectrum of A, that is |1 − λi| for i = 1, . . . , 15. As expected, due to the row stochastic normalization of A, the first eigenvalue is one (zero in the bar plot). The eigenspace of dimension three is apparent, and its corresponding eigenvalue agrees with (21). The orientations βk,l of each Fourier ray were then estimated by un-mixing the eigenvectors corresponding to this eigenspace, as explained in Section 5. We thus estimate each βk,l as (x(k, l), y(k, l), z(k, l)), where x, y, and z are the unmixed coordinate eigenvectors. Figure 7a shows the estimated direction vectors βk,l of the Fourier rays that correspond to the first 10 projections. Each estimated orientation is a point on S2, and points that correspond to Fourier rays from the same projection are displayed in the same color. Figure 7b shows the refined embedding of the same Fourier rays (see Section 5 for details on the unmixing and refinement procedures). It is clear that even without refinement, same image Fourier rays are embedded to the same plane.

Figure 6.

Figure 6

Applying the GCAR algorithm on K = 200 simulated projections, with L = 72 Fourier rays in each projection, and J = 10. (a) Inverted spectrum of A (bar plot of |1 − λi|). The first bar (corresponding to eigenvalue 1) is of height 0, and was pulled above zero only for display purposes. (b) Embedding error (in degrees) – histogram of the angle between the true direction vector in R3 of each Fourier ray and its refined estimated direction.

Figure 7.

Figure 7

Embedding the first 10 projections out of K = 200 projections on S2. (a) Estimated coordinates of Fourier rays that correspond to the first 10 projections, as obtained from the eigenvectors of the operator A after unmixing. (b) Refined embedding of the first 10 projections.

Figure 8 shows a plot of the estimated coordinate eigenvectors x, y, and z on S2. Figure 8a was generated by coloring each point βk,lS2 (the true orientation of the (k, l) Fourier ray) by the value x(k, l). Figures 8b and 8c were generated in a similar way using y(k, l) and z(k, l), respectively. It is clear from Fig. 8 that the eigenvectors x, y, and z vary along three perpendicular axes, that is, they are indeed coordinates in an orthogonal coordinate system. We thus define the direction of variation of x in Fig. 8a as the x axis. Similarly, we define the direction of variation of y and z as the y and z axes, respectively. Note however, that these axes do not align with the canonical x, y, and z axes, illustrated by the overlaid grid, due to the arbitrary O(3) transformation inherent to the unmixing procedure.

Figure 8.

Figure 8

Unmixed eigenvectors of the operator A plotted of S2. After computing the coordinate vectors x, y, and z by solving (25), we color each point βk,lS2 (the true orientation of the (k, l) Fourier ray) on the spheres in (a), (b), and (c), by the value of x(k, l), y(k, l), and z(k, l), respectively.

To demonstrate the accuracy of the algorithm, we show in Fig. 6b the histogram of the angles estimation error, that is, the histogram of the angle (in degrees) between the true orientation βk,l and its refined embedding for each Fourier ray. Finally, Fig. 9 shows a two-dimensional view of the original and reconstructed volumes.

Figure 9.

Figure 9

(a) Two-dimensional view of the original volume. (b) View of the volume reconstructed using K = 200 projections and the refined estimated orientations.

Next, in order to demonstrate that the algorithm is independent of the number of projections K, we repeated the previous experiment with K = 20 projections, and with L = 72 and J = 10 as before. The spectrum of the operator A is shown in Fig. 10a. Again, the eigenspace of dimension three is apparent, and its eigenvalue is as predicted by (21). Note however, that while the second eigenspace in Fig. 6a is of dimension 5, the second eigenspace in Fig. 10a is no longer of dimension 5, as the convergence of the eigenspaces of dimensions 5 and up to the spherical harmonics does depend on K. The embedding errors for the case K = 20, shown in Fig. 10b, are roughly the same as those for K = 200, shown in Fig. 6b. In both cases the error is way below 2.5° (half the angular resolution), which can be thought of as the roundoff error inherent to the embedding due to the angular discretization. According to (20) and the averaging properties of A, each coordinate is obtained as the average of its neighboring coordinates. Thus, the error in each coordinate is reduced by averaging out the errors of its neighbors. The larger K the more neighbors get averaged, and so the error decreases. This is the reason for the slight difference between the histograms for K = 200 and K = 20 (Figs. 6b and 10b, respectively).

Figure 10.

Figure 10

Applying the GCAR algorithm on K = 20 simulated projections, with L = 72 Fourier rays in each projection, and J = 10. See Fig. 6 for a detailed description.

To further demonstrate this point, we show in Fig. 11 the results of using K = 200 projections, with L = 360 Fourier rays per projection, and J = 10. Figure 11a shows that the eigenvalue corresponding to the eigenspace of dimension three has changed according to (21), and Fig. 11b shows that the embedding error has decreased. The optimal value for L is determined by the frequency content of the projections. In practice, due to noise, there is no point in choosing L too large, as the high frequencies contain mostly noise. Reducing L, however, means faster detection of common lines, as fewer correlations need to be computed for each pair of projections.

Figure 11.

Figure 11

Applying the GCAR algorithm on K = 200 simulated projections, with L = 360 Fourier rays in each projection, and J = 10. See Fig. 6 for a detailed description.

We next demonstrate the robustness of our algorithm to noisy projections. To that end, we generated K = 200 projections to which we added additive white Gaussian noise with SNR=1/3, that is, the energy of the noise is three times larger than the energy of the signal. Several noisy projections are illustrated at the bottom row of Fig. 5. We then applied the same algorithm as in the previous experiments, with L = 72 and J = 10, obtaining the results in Figs. 1214. The only difference in the current experiment is that instead of using all common lines, we constructed the operator A using only common lines whose correlation is among the 50% of highest correlations. The advantage of this pruning procedure is explained in Section 5.

Figure 12.

Figure 12

K = 200 noisy simulated projections with SNR=1/3. (a) Inverted spectrum of the operator A. The first bar (corresponding to eigenvalue 1) is of height 0, and was pulled above zero only for display purposes. (b) Sorted dissimilarities between all pairs of common lines (the dissimilarity is defined as the absolute value of one minus the correlation).

Figure 14.

Figure 14

K = 200 noisy simulated projections with SNR=1/3. (a) Histogram of the embedding error (in degrees). The embedding error is small in spite of the noisy projections, due to the averaging properties of the eigenvector computation. (b) View of the volume reconstructed using the K = 200 noisy projections and the refined estimated orientations.

Figure 12a shows the spectrum of the operator A constructed using the noisy projections. The noise in the projections results in misidentifications of common lines, which is translated into errors in the matrix A. Those errors cause slight deviation from the threefold degeneracy of the second eigenspace, as can be observed in Fig. 12a. Also, the next eigenspace is no longer of dimension 5. To illustrate the pruning procedure of Section 5, we plot in Fig. 12b the dissimilarity between each pair of common lines Λk1,l1 and Λk2,l2, for each pair of images k1 and k2, sorted from the smallest (most similar) to the largest (most different). Such a plot allows us to pick the threshold for filtering the GCAR matrix, thus using trustworthy common lines.

The errors in the matrix A obviously result in perturbation of the coordinate eigenvectors. This is demonstrated in Fig. 13a, which shows the embedding on S2 of all Fourier rays corresponding to the first 10 projections. This embedding is noisier than the embedding in Fig. 7a, as for example, same image rays no longer lie exactly on the same plane, and the spacing between them is less regular. This noise, however, is removed by refining the embedding using PCA, as shown in Fig. 13b. The resulting embedding errors are depicted in Fig 14a, showing that even in the presence of noisy projections with SNR=1/3, most embedding errors are concentrated around 1°. Finally, we used the refined orientations estimated by the algorithm together with the noisy projections to reconstruct the three-dimensional volume. A view of the reconstructed volume is shown in Fig. 14b. This reconstructed volume is rotated compared to the original volume in Fig. 9a, due to the arbitrary O(3) transformation inherent to the unmixing procedure, as explained in Section 5.

Figure 13.

Figure 13

K = 200 noisy simulated projections with SNR=1/3. (a) Linear eigenvectors of A after unmixing. The resulting embedding is noisy due to the errors in A. (b) Refined embedding.

7 Summary and future work

We introduced a new algorithm for three-dimensional cryo-EM structure determination. Our GCAR algorithm incorporates the Fourier projection-slice theorem into a novel construction of a graph, followed by an efficient calculation of a few eigenvectors of its normalized sparse adjacency matrix. The resulting eigenvectors reveal the projection orientations in a globally consistent manner, as was demonstrated using simulated projection images.

Although the construction of the GCAR operator seems tightly coupled to the cryo-EM problem, the underlying idea of encoding geometrical information using center-of-mass relations is quite general. For example, a similar approach is used in [18] for solving the localization problem of scattered points in Euclidean space given a subset of their noisy distances.

Handling real cryo-EM projections is non-trivial due to the noise inherent to the imaging process. The noise in real cryo-EM projections is not only very high (SNR ~ 1/100), but also has special properties, due to, for example, the contrast transfer function of the microscope.

Detecting common lines between projections is the main challenge in the presence of noise: out of all detected common lines, only a small percentage is actually true common lines. Whenever the percentage of correctly detected common lines is too small, the resulting embedding found by the GCAR algorithm is distorted and cannot be used directly to reveal the orientations. However, it can be iteratively improved using geometrical considerations, until convergence to a globally consistent embedding is obtained. In each iteration, we ignore common lines that do not agree with the previously obtained embedding. This iterative procedure, which resembles well known procedures in robust estimation, such as the iterative weighted least squares procedure, cleans up the noisy graph and enables successful reconstructions.

Due to space constraints, it is impossible to include here all the extensions and implementation details required for dealing with real cryo-EM projections. Those details, including the iterative refinement procedure and the translational alignment of non-centered projections will be reported in a subsequent publication.

Acknowledgments

The project described was supported by Award Number R01GM090200 from the National Institute of General Medical Sciences. The content is solely the responsibility of the authors and does not necessarily represent the offcial views of the National Institute of General Medical Sciences or the National Institutes of Health.

Footnotes

Publisher's Disclaimer: This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final citable form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

References

  • 1.Frank J. Three-Dimensional Electron Microscopy of Macromolecular Assemblies: Visualization of Biological Molecules in Their Native State. Oxford: 2006. [Google Scholar]
  • 2.Wang L, Sigworth FJ. Cryo-em and single particles. Physiology (Bethesda) 2006;21:13–8. doi: 10.1152/physiol.00045.2005. Review. PMID: 16443818 [PubMed - indexed for MEDLINE] [DOI] [PubMed] [Google Scholar]
  • 3.Henderson R. Realizing the potential of electron cryo-microscopy. Q Rev Biophys. 2004;37(1):3–13. doi: 10.1017/s0033583504003920. Review. PMID: 17390603 [PubMed - indexed for MEDLINE] [DOI] [PubMed] [Google Scholar]
  • 4.Chiu W, Baker ML, Jiang W, Dougherty M, Schmid MF. Electron cryomicroscopy of biological machines at subnanometer resolution. Structure. 2005;13(3):363–372. doi: 10.1016/j.str.2004.12.016. Review. PMID: 15766537 [PubMed - indexed for MEDLINE] [DOI] [PubMed] [Google Scholar]
  • 5.Van Heel M. Angular reconstitution: a posteriori assignment of projection directions for 3D reconstruction. Ultramicroscopy. 1987;21(2):111–123. doi: 10.1016/0304-3991(87)90078-7. PMID: 12425301 [PubMed - indexed for MEDLINE] [DOI] [PubMed] [Google Scholar]
  • 6.Natterer F. Classics in Applied Mathematics. Society for Industrial and Applied Mathematics; SIAM: 2001. The Mathematics of Computerized Tomography. [Google Scholar]
  • 7.Roweis ST, Saul LK. Nonlinear dimensionality reduction by locally linear embedding. Science. 2000;290(5500):2323–2326. doi: 10.1126/science.290.5500.2323. [DOI] [PubMed] [Google Scholar]
  • 8.Donoho DL, Grimes C. Hessian eigenmaps: Locally linear embedding techniques for high-dimensional data. Proceedings of the National Academy of Sciences. 2003;100(10):5591–5596. doi: 10.1073/pnas.1031596100. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 9.Belkin M, Niyogi P. Laplacian eigenmaps for dimensionality reduction and data representation. Neural Computation. 2003;15:1373–1396. [Google Scholar]
  • 10.Coifman RR, Lafon S. Diffusion maps. Applied and Computational Harmonic Analysis. 2006;21(1):5–30. [Google Scholar]
  • 11.Coifman RR, Lafon S, Lee AB, Maggioni M, Nadler B, Warner F, Zucker SW. Geometric diffusions as a tool for harmonic analysis and structure definition of data: Diffusion maps. Proceedings of the National Academy of Sciences. 2005;102(21):7426–7431. doi: 10.1073/pnas.0500334102. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 12.Coifman RR, Shkolnisky Y, Sigworth FJ, Singer A. Graph laplacian tomography from unknown random projection. IEEE Transactions on Image Processing. 2008;17(10):1891–1899. doi: 10.1109/TIP.2008.2002305. [DOI] [PubMed] [Google Scholar]
  • 13.Dutt A, Rokhlin V. Fast Fourier transforms for nonequispaced data. SIAM Journal on Scientific Computing. 1993;14(6):1368–1393. [Google Scholar]
  • 14.Greengard L, Lee J-Y. Accelerating the nonuniform fast Fourier transform. SIAM Review. 2004;46(3):443–454. [Google Scholar]
  • 15.Horn RA, Johnson CR. Matrix Analysis. Cambridge University Press; 1990. [Google Scholar]
  • 16.Averbuch A, Shkolnisky Y. 3D Fourier based discrete radon transform. Applied and Computational Harmonic Analysis. 2003;15(1):33–69. [Google Scholar]
  • 17.Averbuch A, Coifman RR, Donoho DL, Israeli M, Shkolnisky Y. A framework for discrete integral transformations I – the pseudo-polar Fourier transform. SIAM Journal on Scientific Computing. 2008;30(2):764–784. [Google Scholar]
  • 18.Singer A. A remark on global positioning from local distances. Proceedings of the National Academy of Sciences. 2008;105(28):9507–9511. doi: 10.1073/pnas.0709842104. [DOI] [PMC free article] [PubMed] [Google Scholar]

RESOURCES