Skip to main content
The Journal of Chemical Physics logoLink to The Journal of Chemical Physics
. 2013 Aug 13;139(12):121922. doi: 10.1063/1.4817660

Dynamic simulation of concentrated macromolecular solutions with screened long-range hydrodynamic interactions: Algorithm and limitations

Tadashi Ando 1, Edmond Chow 2, Jeffrey Skolnick 1
PMCID: PMC3758360  PMID: 24089734

Abstract

Hydrodynamic interactions exert a critical effect on the dynamics of macromolecules. As the concentration of macromolecules increases, by analogy to the behavior of semidilute polymer solutions or the flow in porous media, one might expect hydrodynamic screening to occur. Hydrodynamic screening would have implications both for the understanding of macromolecular dynamics as well as practical implications for the simulation of concentrated macromolecular solutions, e.g., in cells. Stokesian dynamics (SD) is one of the most accurate methods for simulating the motions of N particles suspended in a viscous fluid at low Reynolds number, in that it considers both far-field and near-field hydrodynamic interactions. This algorithm traditionally involves an O(N3) operation to compute Brownian forces at each time step, although asymptotically faster but more complex SD methods are now available. Motivated by the idea of hydrodynamic screening, the far-field part of the hydrodynamic matrix in SD may be approximated by a diagonal matrix, which is equivalent to assuming that long range hydrodynamic interactions are completely screened. This approximation allows sparse matrix methods to be used, which can reduce the apparent computational scaling to O(N). Previously there were several simulation studies using this approximation for monodisperse suspensions. Here, we employ newly designed preconditioned iterative methods for both the computation of Brownian forces and the solution of linear systems, and consider the validity of this approximation in polydisperse suspensions. We evaluate the accuracy of the diagonal approximation method using an intracellular-like suspension. The diffusivities of particles obtained with this approximation are close to those with the original method. However, this approximation underestimates intermolecular correlated motions, which is a trade-off between accuracy and computing efficiency. The new method makes it possible to perform large-scale and long-time simulation with an approximate accounting of hydrodynamic interactions.

INTRODUCTION

How can we describe the dynamical motions of molecules in a fluid? This simple question has been one of the fundamental topics in various fields including fluid mechanics, chemical engineering, and biology. In biology, since intracellular transport and diffusive mechanisms underlie almost all cellular processes, answering this question is essential to understanding the mechanisms of cellular dynamics. In this regard, molecular dynamics (MD) is an important tool for simulating molecular motions in a fluid.1 MD provides detailed information on the dynamical behavior of solute as well as solvent molecules at an atomic level of description. However, even though we are interested in the long-time dynamical behavior of solute molecules, to account for the effect of the solvent molecules on the solute requires a large number of solvent molecules and short time steps to handle their fast motions. This makes the simulations very expensive. In such a case, an approximate approach may be adopted. Pioneering work on coarse-grained simulations as applied to biological macromolecules was carried out by Ermak and McCammon in 1978, who developed a Brownian dynamics (BD) algorithm that can incorporate hydrodynamics.2 In BD, solute molecules are treated as Brownian particles and solvent molecules are not treated explicitly; rather, their dynamical effects on the solute are incorporated in a stochastic manner consistent with hydrodynamics.2 Their BD algorithm can include the simplest hydrodynamic interactions (HI) through a position-dependent inter-particle diffusion tensor such as the Oseen3 and Rotne-Prager-Yamakawa4, 5 (RPY) tensors. However, these tensors only represent the far-field part of HI, and thus, they are only valid for dilute solutions. To overcome this limitation, Stokesian dynamics (SD) was developed by Brady's group in 1987.6 In SD, both many-body far-field HI and the near-field HI (so-called “lubrication forces”) are modeled. SD can reproduce the properties of monodisperse suspensions at high volume fractions.7 SD has been successfully applied to the rheology of the Brownian particles under flow.8, 9 Recently, we applied the SD method to explore the nature of macromolecular dynamics in crowded intracellular environments comprised of a polydisperse collection of macromolecules.10 Our simulations with coarse-grained models of macromolecules showed that excluded volume effects and HI are both required to account for the large reduction in diffusion coefficient from that at infinite dilution that is observed in experiments.10 We also observed collective intermolecular motions in such dense systems, which were not seen in simulations without HI.

While SD is accurate, it is computationally demanding, which limits the size of systems that can be simulated in practice to about one thousand particles. Overcoming this limitation is especially important for biological applications; the complexity of these systems is much higher than simple colloidal suspensions and long-time simulations are typically required for analyzing relevant biological motions. In SD, each time step involves solves with a hydrodynamic matrix which is a dense matrix due to the long-range nature of HI, decaying with particle distance r as 1/r.6, 11 To take account of Brownian motions, the square root of the matrix is required to calculate the random forces. Both calculations typically require O(N3) operations for an N particle system. To tackle the computational complexity, several ideas have been proposed. To update each time step, iterative solution methods have been suggested to solve the linear systems of equations.12, 13, 14 To calculate the random forces, a Chebyshev polynomial approximation was introduced by Fixman.15 We recently proposed using Krylov subspace methods to compute the Brownian displacement for BD, which scales very nearly as O(N2).16 These methods are related to the Chebyshev method, but do not require eigenvalue estimates. These iterative and polynomial methods involve O(N2) matrix-vector multiplications for dense matrix cases. For efficient multiplication with the dense hydrodynamic matrix, particle-mesh Ewald (PME)12, 13 and smooth PME17 methods can be employed for periodic boundary conditions, which scale as Nlog(N). Brady's group implemented a version of PME into SD for non-Brownian suspensions called accelerated SD (ASD)13 and for Brownian suspensions called ASDB12 that scales N1.25logN. Fast-multipole methods might compute the multiplication with O(N) computational cost for free-boundary conditions. Recently developed methods, such as general geometry Ewald-like method (GGEM)18 and immersed boundary GGEM,19 are able to calculate long-range hydrodynamic effects with O(NlogN) or O(N) computational cost for complex geometries in a confined space.

While hydrodynamic interactions are long range and decay like 1/r, these bare interactions may be screened by many-body effects in colloidal suspensions, resulting in effective pair interactions that are no longer long range. There are several studies on hydrodynamic screening. The theory of the dynamics of semidilute polymer solutions, originally due to DeGennes, established that as polymer solutions become more concentrated, hydrodynamic interactions are screened beyond a polymer concentration dependent screening length, and then the dynamics becomes Rouse like, viz., the free draining approximation holds and long range hydrodynamic interactions can be ignored.20 The mechanism of this screening has been studied by computer simulations.21 In a porous medium, long-range hydrodynamic interactions are screened and decay faster than 1/r, and appear to decay as 1/r3 as described by the Brinkman equation,22 which is also seen by simulation.23 Snook, van Megen, and Tough introduced a simple volume fraction-dependent screened two-body tensor, which provides reasonably accurate descriptions of various properties of diffusive particles compared with experimental results.24, 25, 26, 27, 28 However, theoretical analysis suggested that hydrodynamic screening does not occur for freely moving diffusive particles.29 Here, we examine the validity of the screening of far-field hydrodynamic interactions in the context of dense, polydisperse solutions of macromolecules. If this approximation were shown to be valid, this would not only provide insight into the forces dominating macromolecular motion, but would have significant practical consequences as it would significantly reduce the computational burden.

For periodic boundary conditions, since the long-range nature of HI is similar to electrostatic interactions, Ewald summation of the Oseen or RPY tensors to obtain the far-field hydrodynamic matrix is necessary not only for accuracy but also to ensure that the matrix is positive definite.11 Otherwise, the transport properties of the system are non-physical, e.g., a negative diffusion coefficient results. If hydrodynamic interactions are strongly screened, the far-field hydrodynamic matrix can be approximated by a diagonal matrix, corresponding to the neglect of intermolecular, long range hydrodynamic interactions. The idea of using a diagonal approximation for the far-field hydrodynamic matrix is not new. This approximation was already used to develop fast SD algorithms for non-Brownian14 and Brownian particles.30, 31, 32, 33 Hereafter, using the name coined by Bybee,32 we call these methods Fast Lubrication Dynamics (FLD). Combining the diagonal approximation with a sparse iterative solver for linear systems, such as the conjugate gradient (CG) method, as well as the Chebyshev method for computing Brownian forces, FLD methods can reduce the computational cost to O(N). Banchio and Brady used the approximation only for computing Brownian quantities in the ASD framework called ASDB-nf, which scales as O(NlogN) for non-equilibrium suspensions and as O(N) for equilibrium suspensions.12 In the previous studies using FLD, monodisperse suspensions were used for algorithm development. The purpose of this work is to design an alternative O(N) computational method for FLD and to see limitations of the diagonal approximation idea. We evaluate this approximation in a polydisperse suspension, which is essential for coarse-grained simulations of biological systems. In our FLD method, a Krylov subspace method is used for computing Brownian forces, where we use preconditioning to accelerate the computations, a possibility that is not well known in this context. Our FLD algorithms are described in Sec. 2. The computational efficiency of the algorithms and simulation results for a model of the intracellular environment are shown in Sec. 3. Our conclusions are presented in Sec. 4.

THEORY AND METHOD

In this paper, we compared several algorithms for simulating Brownian particles. For clarity, we summarize names of the algorithms used here. SD denotes the Stokesian dynamics method that considers both many-body far-field HI and near-field lubrication forces at low Reynolds number that was introduced by Brady et al.11 The original SD algorithm denotes a simulation algorithm involving an O(N3) matrix inversion and Cholesky factorization of dense matrices. BD represents the simulation algorithm considering HI at the level of Oseen or RPY tensors developed by Ermak and McCammon.2 Free-draining simulations (FD) are BD simulations without HI, where the diffusion matrix only has diagonal elements and these are constant. FLD is the method where the far-field hydrodynamic matrix is approximated by a diagonal matrix and the lubrication forces are explicitly considered.

We first describe the original SD algorithm and then introduce our FLD approximations. Throughout the paper, we only consider particle translation and forces, and ignore particle rotations and torques. This corresponds to the so-called “F version” of the SD paper.7

Stokesian dynamics for Brownian particles

For a system of N Brownian particles suspended in an incompressible Newtonian fluid, the translational motion of particles is represented by the coupled N-body Langevin equation:34, 35

mdudt=fH+fP+fB, (1)

where m is the 3N × 3N mass tensor, u is the particle translational velocity vector of length 3N, and on the right-hand side are the forces acting on the particles, which can be split into three parts: the hydrodynamic forces fH, the deterministic non-hydrodynamic forces fP, and the stochastic Brownian forces fB; all are vectors of length 3N. When the particle Reynolds number is small, the hydrodynamic forces acting on the particles in the absence of an external bulk flow are given by

fH=Ru. (2)

Here R is the configuration dependent hydrodynamic resistance tensor, with size 3N × 3N. The deterministic non-hydrodynamic forces are arbitrary and can include electrostatic and van der Waals forces. The Brownian forces fB arise from thermal fluctuations in the fluid and are characterized by the fluctuation-dissipation theorem36

fB=0,fB(0)fB(t)=2kBTRδ(t), (3)

where the angle brackets denote an ensemble average over independent configurations, kB is Boltzmann's constant, T is the absolute temperature, t is time, and δ(t) is the Dirac delta function.

The time evolution equation of the particles is obtained by following Ermark and McCammon and integrating Eq. 1 over a time step Δt that is larger than the inertial relaxation time, (τB = m/6πηa, for a particle of radius a and mass m, and solvent viscosity η), but smaller than the time over which the forces change significantly.2 This leads to

r=r0+kBT(·(R0)1)Δt+(R0)1fP,0Δt+x0(Δt) (4)

with

x0(Δt)=0,x0(Δt)x0(Δt)=2kBT(R0)1Δt. (5)

Here, r is the particle position vector of 3N length, xt) is a random displacement due to Brownian noise, and the superscript “0” indicates that each quantity is computed at the beginning of the time interval. The inverse of the resistance matrix is the N-particle mobility matrix M, which, when multiplied by kBT, is the N-particle diffusion tensor

kBTR1=kBTM=D. (6)

Using this relation, Eq. 4 is identical to the Ermak and McCammon algorithm for Brownian dynamics with HI.2 These matrices are symmetric and should be positive definite. The simplest way to compute xt) is through the use of a Cholesky factorization, CCT = R−1, which is an O(N3) operation.

Hydrodynamic interactions

Hydrodynamic interactions between particles are described by the matrix R (or M or D). The RPY diffusion or mobility tensor is commonly used to model the HI in dynamic simulations because this tensor retains positive definiteness even when particles overlap.2, 37, 38 The RPY tensor contains the two-body and long-range or far-field contributions to the particle mobility up to order 1/r3. For dilute systems, two-body interactions may be sufficient, but in concentrated systems, e.g., the inside of cells, far-field many-body HI as well as near-field lubrication forces play important roles in determining mobility. Durlofsky, Brady, and Bossis developed a method to include not only the far-field HI but also the many-body and near-field HI in simulations, which is the key idea of SD.6, 11, 35 The resistance tensor R could be described by the sum of far-field HI and near-field lubrication interactions as

R=(M)1+R lub (7)

with

R lub =R2BR2B. (8)

Here, (M)−1 represents the contribution of many-body, far-field interactions, which is the inverse of the RPY mobility matrix. Rlub contains the near-field lubrication forces, which is formed in a pair wise additive fashion of two-body HI. R2B, which represents the exact two-body HI, includes both near-field and far-field interactions.R2B is the resistance tensor that represents two-body, far-field interactions. The far-field part has already been included in (M)−1. Thus, in order not to count these interactions twice, we must subtract these two-body interactions. This is the standard method to correct for the lubrication effects in the resistance tensor.

M can be estimated by the Ewald summation of the Oseen or RPY tensor developed by Hasimoto39 and Beenakker,40 respectively, for the case of periodic boundary conditions. Due to the long-range nature of HI, use of the Ewald summation technique is necessary not only for accuracy but also for obtaining positive definite matrices in the calculation of the mobility tensor under periodic boundary conditions. In addition, inverting M corresponds to including many-body interactions.6R2B is calculated by the exact two-body solution of Jeffrey and Onishi.41R2B is obtained by simply inverting a two-body mobility matrix containing terms to the same order as 1/r in M. The far-field M is a dense matrix, and its explicit construction and inversion require O(N2) and O(N3) computations, respectively. Due to the near-field interactions of lubrication interactions, on the other hand, Rlub is sparse and its construction is an O(N) computational task using a cut-off method.

Mid-point algorithm

The positions of Brownian particles can be computed through the evolution equations 4, 5. For BD simulations with the RPY and Oseen tensors, since the matrices have the property of ∇ · M = ∇ · R−1 = 0, we can neglect the second term on the right-hand side of Eq. 4.2 In contrast, for SD simulations, the divergence term must be taken into account, whose explicit computation is O(N3). To avoid this expensive calculation, one can use instead the “mid-point algorithm” introduced by Banchio and Brady,12 following an idea of Fixman.42 In this method, Eqs. 4, 5 are re-written as

r=r0+kBT(·(R0)1)Δt+(R0)1(fP,0+fB,0)Δt (9)

with

fB=0,fB(0)fB(t)=2kBTRδ(t). (10)

The procedure for this mid-point algorithm is the following steps:

  1. Compute the resistance matrix R0 using an initial configuration r0
    R0=(M,0)1+R lub 0. (11)
  2. Compute the deterministic forces fP,0 and Brownian forces fB,0. The latter is given by
    fB,0=2kBTΔtBz, (12)
    where z is a standard normal vector and B is
    R0=BBT. (13)
    The most conventional way to compute B is use of the Cholesky factorization.
  3. Compute the velocity u0 of 3N length at r0 by solving the linear equation
    R0u0=fP,0+fB,0. (14)
  4. Move the particles to intermediate positions r by a small fraction of a time step, Δt/n
    r=r0+Δtnu0, (15)
    where n is typically on the order of 100.
  5. Calculate a resistance matrix, R, at the intermediate positions r.

  6. Calculate a new velocity u at the intermediate positions using the forces evaluated at r0
    Ru=fP,0+fB,0. (16)
  7. Calculate the drift velocity, udrift,
    u drift =n2(uu0). (17)
  8. Finally, update the positions of the particles for time step Δt,
    r=r0+(u0+u drift )Δt. (18)

Computational cost in original SD

In the mid-point algorithm just presented, the computations that scale as O(N2) or worse are the following:

  1. Construction of M at steps (I) and (V): O(N2);

  2. Inversion of matrix M at step (I) and (V): O(N3);

  3. Cholesky factorization of R0 at step (II): O(N3);

  4. Solving linear equations at steps (III) and (VI): O(N3).

However, there are several ways to avoid these computations without any advanced techniques. First, since M is less sensitive to small changes of particle positions compared to Rlub, the inverse of the matrix calculated at step (I) can be reused at step (V) without significant accuracy loss. Furthermore, infrequent construction of the mobility tensor and its inversion are possible.35 Second, the linear equation at step (III) can be solved by O(N2) operations by using the Cholesky factor B obtained in the previous step. Third, the second linear equation at step (VI) could be simply solved by iterative methods, such as the CG method.43, 44 For this case, since R is not significantly changed from R0, the Cholesky factor B obtained at step (II), would work as a preconditioner for solving the equation by the iterative method.43, 44 These three ideas significantly reduce computational cost of the original SD method. However, an O(N3) Cholesky factorization is still required at each time step, which prohibits large scale SD simulations. Construction of M and its inversion are also a problem for large systems.

Approximations

We introduce three approximations into the original SD algorithm: (1) the diagonal approximation of far-field HI, (2) a preconditioned Krylov subspace approximation for computing Brownian forces, and (3) a preconditioned conjugate gradient method for solving linear equations. We explain each approximation in the following sections.

The diagonal approximation of far-field HI

In dense systems, such as inside of cells, lubrication interactions between particles are more important than the precise details of the far-field HI. For such cases, mean-field-like approximations for the far-field interactions have been proposed, in which M is replaced by a diagonal matrix12, 14, 30, 31, 32, 33

M16πηFaI. (19)

Here, ηF is a parameter representing the “effective far-field viscosity” and I is the identity matrix. This is equivalent to ignoring long range HI, except in a mean field sense. We now avoid the computationally intensive matrix inversions and M construction in the original SD algorithm. The resistance matrix R is now sparse. This is particularly advantageous since the iterative methods introduced in the next sections involve matrix-vector multiplies with the matrix R.

For monodisperse suspensions, ηF may be chosen by the Einstein viscosity ηF = η(1 + 5ϕ/2) with volume fraction ϕ.14 In our case, since the RPY tensor in M contains terms up to O(1/r3) and Rlub contains the rest of the higher order terms, reduction of the effective viscosity is completely included in the lubrication correction term. Therefore, we simply use

Mii16πηaiI, (20)

where Mii is the 3 × 3 diagonal block for the ith particle in M and ai is the radius of particle i.

Preconditioned Krylov subspace method for computing Brownian forces

The Brownian force in SD is computed as the square root of the resistance matrix times an uncorrelated random vector with mean zero. Hence, we may use Krylov subspace methods proposed for computing the function of a matrix times a vector, see for example Refs 45 and 46, and the references therein. We recently introduced and studied the use of Krylov subspace methods for computing Brownian displacements in the BD algorithm at the level of the RPY diffusion tensor.16 Here, the method approximates the product of the principal square root of a given symmetric positive definite matrix and a random vector via a Lanczos process, that is,

y=M1/2zz2VmHm1/2e1, (21)

where M is the 3N × 3N mobility matrix, z is a Gaussian random noise vector, and ∥z2 is the 2-norm of vector z. Vm is a 3N × m orthonormal basis for the Krylov subspace, Hm is the m × m symmetric tridiagonal matrix equaling VmTMVm computed after m Lanczos steps, and e1 is the first column of the m × m identity matrix. The approximation is based on computing the matrix square root on a much smaller subspace, of dimension m ≪ 3N, where it is inexpensive to compute exactly, and then mapping the result to the original space. A more accurate approximation is attained for larger dimensions m of the Krylov subspace. See our previous paper16 for details.

The convergence of the above approximation with m can be improved through preconditioning. This possibility has been suggested in the past,47, 48, 49 but has not been applied to Brownian simulations. The approach is analogous to preconditioning for accelerating the convergence of iterative methods for solving systems of linear equations. To explain this method for SD, we first note that Brownian forces can be expressed as

FB,0=2kBTΔtR1/2z=2kBTΔty. (22)

In this case, M in Eq. 21 is the resistance tensor R. To emphasize the generality of the method, the notation A is used in this section. Now, consider the approximation LLTA. It is required that one can readily solve with L, for example, L may be a sparse triangular matrix. Let us denote

L1ALT=X. (23)

Since X is a symmetric positive definite matrix, X has a unique principal square root. Then A can be decomposed by

A=LXLT=LX1/2X1/2LT=(LX1/2)(LX1/2)T=SST. (24)

The matrix S is not symmetric or triangular matrix in general, but can be used like B for calculating Brownian forces described in Eq. 13. Then, y is given by

y=Sz=LX1/2z. (25)

To compute the approximation y˜=Sz, we first compute y˜=X1/2z via Eq. 21. This involves the matrix L−1ALT, which is designed to be well-conditioned, and thus the Krylov subspace approximation converges quickly. Finally, y˜=Ly˜ is computed. Note that matrices S and X are never formed in the method. The factorization LLTA may be considered a “preconditioner.”

The overall algorithm for the approximate correlated vector y is shown in the Appendix. The most expensive operations are the matrix-vector multiplication and solving linear equations with the triangular matrix L, which are both O(N2) operations for the dense matrix case. If the matrix A contains O(N) nonzero elements, which is the case in our FLD algorithm, then the time for one iteration scales linearly with N.

The Krylov subspace method iteratively improves the accuracy of the approximate correlated vector. We use the following quantity based on two consecutive iterates for monitoring the convergence of the method:16

Ek=y˜ky˜k12y˜k12, (26)

where k is the iteration number. We also checked the relative norm of the exact error of the kth approximation as

Ek exact =y˜kLX1/2z2LX1/2z2, (27)

where z is the same standard normal vector used to compute y˜. This of course cannot be computed in practice.

Solving linear equations with a preconditioned iterative method

For solving linear systems Ru = f at steps (III) and (VI) of the mid-point algorithm, the preconditioned CG method can be used as mentioned above. The preconditioner L used for the Krylov subspace method at step (II) can be reused for solving these linear systems. For the second linear equation at step (VI), the solution u0 obtained at step (III) could be used as an initial guess. On the other hand, calculating an initial guess for the first linear equation is nontrivial, since the Brownian forces on the right-hand side do not have correlations at different time steps. However, by using the fact that the resistance matrix on the left-hand side is slightly perturbed between consecutive time steps, initial guesses for the first linear system can be efficiently constructed.50 When a basis for the Krylov subspace for the Brownian forces is available, an alternative way of constructing initial guesses for u0 is possible with almost no additional computational cost. To explain this method, first note that in the absence of non-hydrodynamic forces, that is fP = 0, the first linear equation is written as

R0u0=fB. (28)

Given the preconditioner L, the above equation is equivalent to

(L1R0LT)(LTu0)=L1fB. (29)

Using X = L−1R0LT and fB = αLX1/2z with α=2kBT/Δt, then the solution u0 is written as

X(LTu0)=L1(αLX1/2z)X(LTu0)=αX1/2zLTu0=αX1/2zu0=αLTX1/2z. (30)

Then, the approximate u0 is calculated by

u0u˜0=αz2LTVmHm1/2e1. (31)

The additional computational cost to compute u˜0 is negligible, since Vm and Hm are already calculated in the Lanczos process for computing the Brownian forces. This initial guess may reduce the number of iterations required for solving the first linear equation of each time step. We will see the results of this in Sec. 3.

Simulation models

To validate our approximations, we used two models: (1) an intracellular-like polydisperse suspension and (2) monodisperse particle suspensions. The former is the same model that we used in our previous study of a model of a cell cytosol.10 The latter was used to evaluate the scaling of our algorithm. The intracellular-like suspension model has a total of 1152 particles, comprised of 15 different particle radii ranging from 21 Å to 115 Å, placed in a (100 nm)3 box giving a volume fraction ϕ of 0.51. Each particle radius corresponds to Stokes radius of a representative protein or tRNA molecule estimated by a rigid-particle theory. See our previous paper10 for details. The time step was set to 20 ps, which is obtained from ∼0.0005 (amin)2/D0min, where amin and D0min are the smallest radius in the system and its self-diffusion coefficient at infinite dilution (D0 = kBT/6πηa), respectively. For the monodisperse suspension model, the number of particles N ranges from 200 to 4000 at a volume fraction ϕ = 0.5. For this model, a time step of 0.0005 a2/D0 was used. All simulations were done at 298 K under periodic boundary conditions. In the mid-point algorithm, n was set to 100. In calculating the lubrication forces, a cut-off distance in units of s = 2rij/(ai + aj) = 4 was used. For each condition, 10 independent simulations were done with different initial configurations. For the intracellular-like suspension model, simulations were done for 108 steps and the first 2.5 × 105 steps were discarded from the analysis. Deterministic non-hydrodynamic forces were not included; that is, fP = 0. It is worth mentioning that particles do not overlap in the presence of lubrication forces. Simulations using the original SD algorithm were also performed for comparison. For these cases, the far-field HI M was estimated by Ewald summation of the RPY tensor.40M was updated every 200 steps. All timing tests were performed on an AMD Opteron processor Model 2387. The Intel Math Kernel Library was used for computing matrix factorizations, matrix-matrix multiplications, and matrix-vector multiplications.

The short-time and long-time self-diffusion coefficients for translational motion of a particle (DS and DL, respectively) were estimated as in Ref. 35. It is known that the translational diffusion coefficients estimated by the Ewald summation technique under periodic boundary conditions show a N−1/3 dependence.7 To correct for this finite-size effect, the formula proposed by Ladd is used for homogeneous monodisperse suspensions.51 In principle, it may be possible to correct these values even for the heterogeneous systems in this study using the same formula. To check this dependency, we calculated DS for systems having varying numbers of particles, with N > 9000. However, a clear N−1/3 dependence was not observed. Additionally, since the number of particles in the systems considered here is more than 1000, finite-size effects might be small. Therefore, we will show uncorrected data.

Finally, to analyze the correlations between particles in time and space, we calculated the normalized pair correlation function, Cij, described in Ref. 10. Cij ranges from −1.0 to 1.0. When two particles are positively correlated, Cij assumes a positive value and when negatively correlated, Cij is negative.

RESULTS AND DISCUSSION

In this section, we first show the convergence of the two iterative approximation methods, the preconditioned Krylov subspace method for computing Brownian noise vectors, and preconditioned CG methods for solving linear systems involving sparse resistance matrices. Then, we present simulation results obtained by the new SD method and discuss the limitations of the approximations.

Convergence in the iterative methods

Convergence rate and error estimates for computing Brownian noise

In Fig. 1, the effect of preconditioning on the convergence of the preconditioned Krylov subspace method measured by Ekexact is shown for the intracellular-like suspension. Here, we first employ the simplest preconditioner that just consists of the diagonal of the matrix, which works if the matrix is diagonal dominant. This reduces the number of iterations only slightly. The next preconditioner we employ is an incomplete Cholesky factorization, which was also used in previous studies.12, 13, 14 The incomplete Cholesky factor of a positive definite matrix A, which we will denote by L0, is given by a sparse lower triangular matrix that approximates the complete Cholesky factor, but is as sparse as A.44 As suggested by Torres and Gilbert,14 the reverse Cuthill-McKee ordering52 was applied to the sparse matrix not only to improve convergence but also to minimize breakdown in calculating the preconditioner. Use of the incomplete Cholesky preconditioner dramatically accelerates the convergence rate in the preconditioned Krylov subspace method. For a stopping tolerance of Ekexact = 10−4, this preconditioning reduces the number of iterations by a factor of 20.

Figure 1.

Figure 1

Effect of preconditioning on the convergence rate in the Krylov subspace method for computing Brownian forces. For this test, an intracellular suspension of 1152 particles with a volume fraction of 0.51 is used.

The Ekexact and Ek estimates during the preconditioned Krylov subspace iterations with the incomplete Cholesky factor for the intracellular-like suspension are shown in Fig. 2. Although Ek underestimates the exact errors by one order of magnitude throughout the iterations, it monotonically decreases and follows Ekexact as was previously seen in the BD case.16 This result suggests that Ek is useful for estimating the accuracy of the preconditioned Krylov subspace approximation. The iterations can be stopped when the estimate Ek falls below a user-supplied threshold.

Figure 2.

Figure 2

Comparison of Ekexact and Ek in the preconditioned Krylov subspace method for computing Brownian noise. An incomplete Cholesky preconditioner was used. The simulated system is an intracellular-like suspension. Ek with k = 1 was set to 1.

Convergence rate for solving linear systems

Once the correlated Brownian force vector is obtained, the next computationally demanding task in the mid-point algorithm is solving the two linear systems at steps (III) and (VI). To solve these systems, we use the preconditioned CG method, in which we can reuse the preconditioner constructed for the Krylov Brownian noise approximation at step (II). Also, as explained in Sec. 2, we may calculate initial guesses u˜0 for the first linear system without additional computational cost; this may reduce the number of necessary iterations in the CG process.

Timings and iteration counts for our simulation method, FLD, are summarized in Table 1. Different preconditioners are tested, as well as the use of initial guesses. The simulated system is the intracellular-like suspension model. The results show that the incomplete Cholesky preconditioner significantly reduces the number of iterations (by a factor of about 25) required to achieve convergence of the linear solutions. The initial guesses for the first linear system of each time step also reduces the number of iterations required to achieve the desired accuracy, from 10 to an average of 5.7 iterations. The initial guesses for the second linear system of each time step are the solutions from the first linear system. The results show that this second linear system can generally be solved with fewer than half the number of iterations when this initial guess is used. From the viewpoint of total computational time, the use of incomplete Cholesky preconditioning and the use of initial guesses give the best results among all the options tested. We note in particular that these results indicate that the incomplete Cholesky factors work very well in our model.

Table 1.

Breakdown of computational time for FLD with different preconditioning methods, and with and without initial guesses for the first linear system. Timings are shown in seconds. Iteration counts are shown in brackets. For iterative convergence criteria, Ek < 10−3 for the Brownian noise approximation and the relative residual norm < 10−6 for CG are used. The simulated system is an intracellular suspension of 1152 particles with volume fraction 0.51. Occupancy of non-zero elements in the resistance tensor is 2%. All values are averaged over ten independent calculations using different particle configurations.

  No preconditioner
Diagonal preconditioner
Incomplete Cholesky
  No initial guess With initial guess No initial guess With initial guess No initial guess With initial guess
Preconditioner construction   Negligible   0.08  
Krylov Brownian noise approximation 0.05 (21)   0.06 (22)   0.04 (4.1)  
CG for the first linear system 0.15 (238) 0.13 (210) 0.12 (192) 0.10 (164) 0.02 (10) 0.01 (5.7)
CG for the second linear system 0.06 (101)   0.05 (75)   0.01 (5.0)  
Total 0.26 0.24 0.23 0.21 0.15 0.14

Since the quality of the initial guess for the first linear system of each time step depends on the size of the Krylov subspace used for computing the Brownian noise vector, we investigate the effect of different values of the threshold Ek (which affects the size of the Krylov subspace) on the number of iterations required to solve the first linear system. These results are shown in Table 2. As expected, the number of iterations required for computing Brownian vectors increases with smaller values of Ek. For solving the first linear system, the number of iterations is reduced. Interestingly, the total number of iterations as well as the total computational time of the two iterative methods remains almost constant. The two methods compensate each other in computational cost via the initial guess u˜0. To obtain more accurate solutions in an iterative method, more iterations are required in general, resulting in an increase of total computational cost. However, our result indicates that in the mid-point algorithm with the above iterative approximation methods employed, we generally do not incur additional computational time for computing Brownian forces with higher accuracy.

Table 2.

Number of iterations (and time in units of seconds) in the Krylov Brownian noise approximation for various convergence criteria Ek and the subsequent preconditioned CG method using the initial guesses constructed from the available Krylov subspace. Convergence criterion of preconditioned CG is relative residual norm < 10−6. For this test, an intracellular suspension of 1152 particles with a volume fraction of 0.51 is used. All values are averaged over ten independent calculations using different particle configurations.

  Ek = 0.1 Ek = 0.01 Ek = 0.001 Ek = 0.0001
Krylov Brownian noise approximation 2.0 (0.022) 3.0 (0.027) 4.1 (0.037) 5.2 (0.042)
Preconditioned CG for the first linear system 7.8 (0.029) 6.9 (0.018) 5.7 (0.013) 4.7 (0.010)
Total 9.8 (0.051) 9.9 (0.045) 9.8 (0.050) 9.9 (0.052)

Timing and scaling

We now turn to the scaling of the computational time of FLD as the number of simulated particles increases. For the following timing tests, the monodisperse suspension model was used. Figure 3 shows the computational time required for 10 time steps for simulated systems from 200 to 4000 particles. Timings for the original SD algorithm are also shown for comparison, where the far-field HI and its inverse were calculated only in the first time step and the second linear system was solved by the CG preconditioned by the complete Cholesky factor obtained for computing Brownian forces. The results show that FLD scales very nearly as O(N) over the range of N tested. Although the number of iterations generally grows with N for many types of linear systems arising from physical problems, this was not observed in our tests, probably because only a small number of iterations were required. The original SD method scales as O(N3) for large N, which is expected due to using the Cholesky factorization at each time step and the inversion of the far-field HI matrix M. For small N, the Ewald summation of far-field HI, which is an O(N2) operation, dominates the computational time in original SD. Thus, the observed scaling for small N is less than cubic.

Figure 3.

Figure 3

Scaling of computational time for 10 time steps of FLD and SD simulations of a monodisperse suspension model at a volume fraction of 0.5 with periodic boundary conditions. In the SD simulation, the far-field hydrodynamic interaction term and its inverse were calculated only in the first time step. Dashed lines are a guide to the eye to show the approximate scaling with the number of particles.

SD simulations using the approximation methods

In this section, we evaluate FLD with respect to diffusion coefficients and the pair correlation function using the intracellular-like suspension model. In this examination, the stopping threshold Ek is fixed to 0.001. For this value of Ek, the long-time self-diffusion coefficient DL and inter-particle correlated motions obtained from the simulations were almost indistinguishable from the results when very stringent values of Ek are used. It is worth noting that the simulation with Ek = 0.1 was numerically unstable due to the inaccuracy of Brownian forces. In the following, we show simulation results using the original SD, FLD, and BD without HI (FD).

We first evaluate the short-time and long-time self-diffusion coefficients of particles. Figure 4 shows normalized short-time diffusion coefficients (DS/D0) and long-time diffusion coefficients (DL/D0) obtained from the SD simulations, where D0 is the value at infinite dilution. Here, DS was calculated using 100 different configurations randomly picked from the trajectories. The diagonal approximation to M overestimates the short-time diffusivity compared to results with the original M estimated by the Ewald method, with the deviation being most obvious for the smaller particles (∼12% for the smallest particle). The same trend is observed in the long-time diffusivity. FLD provides slightly higher DL for small particles (∼15% for the smallest particle). However, these values are much more accurate than those from FD simulations. Although FLD gives slightly larger diffusion coefficients for small particles, the method still well represents the effects of HI on particle diffusivity. Thus, with regards to the both the short time and long time diffusion constants, long range hydrodynamic interactions are effectively screened.

Figure 4.

Figure 4

(Upper) Normalized short-time and (lower) long-time diffusion coefficients of various particle radii in the intracellular-like suspension model obtained from SD, FLD, and FD simulations.

Next, the normalized pair correlation function, Cij, for particles are evaluated. Inter-particle correlated motions in time and space are also an important property caused by HI. In Fig. 5, Cij for 24 Å–24 Å and 66 Å–66 Å particle pairs, which correspond to green fluorescent protein pairs and RNA-polymerase pairs, respectively, are shown as examples. In this figure, time and surface distance are normalized by a2/D0 and a, respectively. In SD simulations, correlated motions are obvious for both pairs. For small particle pairs, the correlated motions (Cij > 0.2) range up to 2 in time and 0.75 in surface distance, which correspond to 110 ns and 18 Å, respectively. For large particle pairs, the correlation spans 12 in time and 0.4 in surface distance, which correspond to 14 μs and 26 Å, respectively. On the other hand, Cij from FLD simulations are much smaller than in the original SD and are intermediate between the original SD and FD simulations. This underestimation is obvious for the small particle pair. Since small particles readily diffuse away from each other as compared to large particles and their time to stay near to each other is relatively short, they are sensitive to the absence of cross coupling terms of the far-field HI. This underestimation is a clear limitation of using a diagonal approximation for M.

Figure 5.

Figure 5

Normalized pair correlation function, Cij, for the 24 Å–24 Å and 66 Å–66 Å pairs in the intracellular-like suspension model obtained from SD, FLD, and FD simulations. Time and surface distance are normalized by a2/D0 and a, respectively.

In the FD simulation, the correlations for both pairs are very weak and almost zero. For the large pairs in the FD simulation, weak but obvious correlated motions spanning 2 in time and 0.25 in surface distance are seen even in the absence of HI, which may be caused by a depletion attraction as described by Asakura-Oosawa theory on entropic forces between particles suspended in a solution of macromolecules.53

CONCLUSIONS

In this paper, we have described an efficient algorithm for performing large scale Stokesian dynamics simulations of Brownian particles that scales as O(N). This new method reproduces the diffusive properties of the particles obtained with original SD. The key advance in our method is the use of preconditioning in various ways to reduce overall computation time. The preconditioner, an incomplete Cholesky factorization in our case, is computed once and used three times per time step, to accelerate the Brownian noise calculation and the solves of two linear systems. (Although not demonstrated in this paper, the preconditioner may also be reused for several time steps, which amortizes the cost of the constructing the preconditioner.) Additionally, the Krylov subspace generated for computing Brownian noise can be used to construct a good initial guess for the first linear system of each time step. We computed initial guesses under the assumption that fP = 0, but the technique may work even in the presence of non-hydrodynamic forces. We note that since our resistance matrix approximation is sparse, sparse direct methods, i.e., complete sparse Cholesky factorization, may also be used for computing Brownian noise and solving linear systems. These methods may be expected to be faster than our preconditioned iterative approach for small numbers of particles, but we expect the iterative approach to be faster for large scale simulations, particularly when exploiting reuse of the preconditioner as described in this paper.

Banchio and Brady also proposed an O(N) SD algorithm, where M is replaced by a diagonal matrix and the incomplete Cholesky preconditioned CG method is used to solve linear equations.12 The main difference between their algorithm and our algorithm is how to compute Brownian forces. In their algorithm, the Brownian forces are calculated as a pairwise sum over all near neighbors. An advantage of using a Krylov subspace method here is that this subspace can be reused to generate a good initial guess for the first linear equation of each time step without additional computational cost as described in Sec. 2B3. The use of the initial guess reduced the number of iterations in the preconditioned CG for the equation by 50% as shown in Sec. 3A2.

The generality of the Krylov subspace approximation for computing Brownian noise is also an important point. The approximation is not only valid for the SD algorithm, but one can use this idea in the BD algorithm as well. Here, the diffusion matrix is dense; thus, each iteration involves an O(N2) matrix-vector multiplication. We observed that the simple diagonal preconditioner slightly accelerates the convergence rate for polydisperse suspensions (data not shown). We are looking for proper preconditioners for large-scale and long-time BD simulations.

Fixman's Chebyshev method has been used in the past for computing Brownian noise in large scale simulations.15 In principle, we can apply the preconditioning idea to this method in the same manner we did for the Krylov subspace approximation. In addition, the Chebyshev method can also be used to construct initial guesses for the first linear system by computing these guesses at the same time as when Brownian noise is calculated. However, the major advantage of the Krylov subspace approximation over the Chebyshev approximation is that the former method does not require estimates of the extreme eigenvalues of a given matrix. This is a very important point when the Krylov subspace method is applied to approximate the square root of the resistance matrix R, since the lubrication interactions are sensitive to small changes in particle distances so that the eigenvalue spectra of R frequently change. If the Chebyshev approximation is applied to the problem, we must update these estimates frequently or suffer degraded convergence rates when conservative eigenvalue bounds are estimated a priori and then used throughout the simulation.

Although the diagonal approximation of the far-field HI may give particle diffusion constants within a reasonable error range, thereby implying neglect of long range HI is a reasonable approximation to describe diffusion, intermolecular correlated motions, especially for small particles, are significantly underestimated in the intracellular-like suspension. A similar deficiency was observed in monodisperse suspensions at low volume fractions (data not shown). If we optimize the diagonal elements of M, the method may provide a diffusivity of particles that more closely match the SD results. However, this does not recover correlated motions in FLD. One way to fix this problem while keeping the overall scaling of the algorithm as low as possible is the use of PME method to treat the far-field HI, which scale as Nlog(N).12, 13, 17 In this case, computation of the Brownian forces with covariance R can be done by separately computing two Brownian forces with covariance (M)−1 and Rlub.12 The Krylov subspace method can be adapted for (M)−1 by seeking an approximation to the inverse square root of M.

In conclusion, SD is an important simulation technique for understanding the dynamical motions of particles in fluids comprised not only of colloidal particles but also biological molecules. We proposed an SD algorithm based on iterative methods and the diagonal approximation of the hydrodynamic matrix for large-scale and long-time SD simulations. The method scales as O(N). With regards to diffusion, long-range HI are significantly screened. However, the neglect of long range HI significantly underestimates intermolecular dynamical correlations. The complete hydrodynamic screening for freely moving particles is not theoretically validated. Therefore, the use of the diagonal approximation in our model has its limitations. We need further improvements to address this issue in an approach that retains the computational complexity of FLD and yet includes the appropriate level of HI so as to retain the temporal and spatial dependence of the intermolecular correlations.

ACKNOWLEDGMENTS

This research was supported in part by NIH Grant No. GM-37408 of the Division of General Medical Sciences of the National Institutes of Health.

APPENDIX: PRECONDITIONED KRYLOV SUBSPACE ALGORITHM FOR COMPUTING BROWNIAN FORCES

The preconditioned Krylov subspace algorithm for computing approximate vector y˜Sz with SST = A is described in the following.

Algorithm: Preconditioned Krylov subspace algorithm for computing
y˜N(0,A)
1  Generate random zN(0,I)
2  v1 = z/∥z2
3  for j = 1 to m do
4   w = L−1ALTvj
5   if j > 1 then
6    w = whj-1, jvj-1
7   end
8   hj, j = wTvj
9   if j < m then
10    w = whj, jvj
11    hj+1, j = hj, j+1 = ∥w2
12    vj+1 = w/hj+1, j
13   end
14  end
15  return y˜=z2LVmHm1/2e1

References

  1. Allen M. P. and Tildesley D. J., Computer Simulation of Liquids (Oxford University Press, New York, 1987). [Google Scholar]
  2. Ermak D. L. and McCammon J. A., J. Chem. Phys. 69, 1352 (1978). 10.1063/1.436761 [DOI] [Google Scholar]
  3. Oseen C. W., Neuere Methoden und Ergebnisse in der Hydrodynamik (Akademische Verlagsgesellschaft, Leipzig, 1927). [Google Scholar]
  4. Rotne J. and Prager S., J. Chem. Phys. 50, 4831 (1969). 10.1063/1.1670977 [DOI] [Google Scholar]
  5. Yamakawa H., J. Chem. Phys. 53, 436 (1970). 10.1063/1.1673799 [DOI] [Google Scholar]
  6. Durlofsky L., Brady J. F., and Bossis G., J. Fluid Mech. 180, 21 (1987). 10.1017/S002211208700171X [DOI] [Google Scholar]
  7. Phillips R. J., Brady J. F., and Bossis G., Phys. Fluids 31, 3462 (1988). 10.1063/1.866914 [DOI] [Google Scholar]
  8. Foss D. R. and Brady J. F., J. Fluid Mech. 407, 167 (2000). 10.1017/S0022112099007557 [DOI] [Google Scholar]
  9. Phung T. N., Brady J. F., and Bossis G., J. Fluid Mech. 313, 181 (1996). 10.1017/S0022112096002170 [DOI] [Google Scholar]
  10. Ando T. and Skolnick J., Proc. Natl. Acad. Sci. U.S.A. 107, 18457 (2010). 10.1073/pnas.1011354107 [DOI] [PMC free article] [PubMed] [Google Scholar]
  11. Brady J. F., Phillips R. J., Lester J. C., and Bossis G., J. Fluid Mech. 195, 257 (1988). 10.1017/S0022112088002411 [DOI] [Google Scholar]
  12. Banchio A. J. and Brady J. F., J. Chem. Phys. 118, 10323 (2003). 10.1063/1.1571819 [DOI] [Google Scholar]
  13. Sierou A. and Brady J. F., J. Fluid Mech. 448, 115 (2001). 10.1017/S0022112001005912 [DOI] [Google Scholar]
  14. Torres F. E. and Gilbert J. R., “Large-Scale Stokesian Dynamics Simulations of Non-Brownian Suspensions,” Technical Report C9600004, Xerox Research Centre of Canada, 1996.
  15. Fixman M., Macromolecules 19, 1204 (1986). 10.1021/ma00158a043 [DOI] [Google Scholar]
  16. Ando T., Chow E., Saad Y., and Skolnick J., J. Chem. Phys. 137, 064106 (2012). 10.1063/1.4742347 [DOI] [PMC free article] [PubMed] [Google Scholar]
  17. Saintillan D., Darve E., and Shaqfeh E. S. G., Phys. Fluids 17, 033301 (2005). 10.1063/1.1862262 [DOI] [Google Scholar]
  18. Hernández-Ortiz J. P., de Pablo J. J., and Graham M. D., Phys. Rev. Lett. 98, 140602 (2007). 10.1103/PhysRevLett.98.140602 [DOI] [PubMed] [Google Scholar]
  19. Zhang Y., de Pablo J. J., and Graham M. D., J. Chem. Phys. 136, 014901 (2012). 10.1063/1.3672103 [DOI] [PubMed] [Google Scholar]
  20. de Gennes P. G., Macromolecules 9, 594 (1976). 10.1021/ma60052a012 [DOI] [Google Scholar]
  21. Ahlrichs P., Everaers R., and Dunweg B., Phys. Rev. E 64, 040501(R) (2001). 10.1103/PhysRevE.64.040501 [DOI] [PubMed] [Google Scholar]
  22. Brinkman H. C., Appl. Sci. Res., Sect. A 1, 27 (1949). 10.1007/BF02120313 [DOI] [Google Scholar]
  23. Durlofsky L. and Brady J. F., Phys. Fluids 30, 3329 (1987). 10.1063/1.866465 [DOI] [Google Scholar]
  24. Snook I. and van Megen W., J. Colloid Interface Sci. 100, 194 (1984). 10.1016/0021-9797(84)90425-9 [DOI] [Google Scholar]
  25. Snook I., van Megen W., and Tough R. J. A., J. Chem. Phys. 78, 5825 (1983). 10.1063/1.445427 [DOI] [Google Scholar]
  26. van Megen W. and Snook I., Faraday Discuss. 76, 151 (1983). 10.1039/dc9837600151 [DOI] [Google Scholar]
  27. van Megen W. and Snook I., J. Chem. Soc., Faraday Trans. 2 80, 383 (1984). 10.1039/f29848000383 [DOI] [Google Scholar]
  28. van Megen W. and Snook I., J. Chem. Phys. 88, 1185 (1988). 10.1063/1.454238 [DOI] [Google Scholar]
  29. Beenakker C. W. J. and Mazur P., Physica A 126, 349 (1984). 10.1016/0378-4371(84)90206-1 [DOI] [Google Scholar]
  30. Ball R. C. and Melrose J. R., Physica A 247, 444 (1997). 10.1016/S0378-4371(97)00412-3 [DOI] [Google Scholar]
  31. Kumar A. and Higdon J. J. L., Phys. Rev. E 82, 051401 (2010). 10.1103/PhysRevE.82.051401 [DOI] [PubMed] [Google Scholar]
  32. Bybee M., Ph.D. thesis, University of Illinois at Urbana-Champaign, 2009. [Google Scholar]
  33. Kumar A., Ph.D. thesis, University of Illinois at Urbana-Champaign, 2010. [Google Scholar]
  34. Bossis G. and Brady J. F., J. Chem. Phys. 87, 5437 (1987). 10.1063/1.453708 [DOI] [Google Scholar]
  35. Brady J. F. and Bossis G., Annu. Rev. Fluid Mech. 20, 111 (1988). 10.1146/annurev.fl.20.010188.000551 [DOI] [Google Scholar]
  36. Kubo R., Rep. Prog. Phys. 29, 255 (1966). 10.1088/0034-4885/29/1/306 [DOI] [Google Scholar]
  37. Schlick T., Molecular Modeling and Simulation: An Interdisciplinary Guide (Springer, New York, 2002). [Google Scholar]
  38. Szymczak P. and Cieplak M., J. Phys.: Condens. Matter 23, 033102 (2011). 10.1088/0953-8984/23/3/033102 [DOI] [PubMed] [Google Scholar]
  39. Hasimoto H., J. Fluid Mech. 5, 317 (1959). 10.1017/S0022112059000222 [DOI] [Google Scholar]
  40. Beenakker C. W. J., J. Chem. Phys. 85, 1581 (1986). 10.1063/1.451199 [DOI] [Google Scholar]
  41. Jeffrey D. J. and Onishi Y., J. Fluid Mech. 139, 261 (1984). 10.1017/S0022112084000355 [DOI] [Google Scholar]
  42. Fixman M., J. Chem. Phys. 69, 1527 (1978). 10.1063/1.436725 [DOI] [Google Scholar]
  43. Press W. H., Teukolsky S. A., Vetterling W. T., and Flannery B. P., Numerical Recipes in Fortran 90: The Art of Parallel Scientific Computing, 2nd ed. (Cambridge University Press, New York, 1996). [Google Scholar]
  44. Saad Y., Iterative Methods for Sparse Linear Systems (Society for Industrial and Applied Mathematics, Philadelphia, 2003). [Google Scholar]
  45. Druskin V. and Knizhnerman L., SIAM J. Matrix Anal. A. 19, 755 (1998). 10.1137/S0895479895292400 [DOI] [Google Scholar]
  46. Higham N. J., Functions of Matrices: Theory and Computation (Society for Industrial and Applied Mathematics, Philadelphia, 2008). [Google Scholar]
  47. Parker A. and Fox C., SIAM J. Sci. Comput. 34, B312 (2012). 10.1137/110831404 [DOI] [Google Scholar]
  48. Saad Y., private communication (2012).
  49. Schneider M. K. and Willsky A. S., Multidimens. Syst. Signal Process. 14, 295 (2003). 10.1023/A:1023530718764 [DOI] [Google Scholar]
  50. Liu X., Chow E., Vaidyanathan K., and Smelyanskiy M., IEEE 26th International Parallel and Distributed Processing Symposium (IPDPS) (IEEE, Shanghai, China, 2012), p. 36.
  51. Ladd A. J. C., J. Chem. Phys. 93, 3484 (1990). 10.1063/1.458830 [DOI] [Google Scholar]
  52. George A. and Liu J. W. W., Computer Solution of Large Sparse Positive Definite Systems (Prentice Hall Professional Technical Reference, 1981). [Google Scholar]
  53. Asakura S. and Oosawa F., J. Polym. Sci. 33, 183 (1958). 10.1002/pol.1958.1203312618 [DOI] [Google Scholar]

Articles from The Journal of Chemical Physics are provided here courtesy of American Institute of Physics

RESOURCES