| Literature DB >> 28068773 |
Félix Aviat1, Antoine Levitt2, Benjamin Stamm3,4, Yvon Maday5,6,7, Pengyu Ren8, Jay W Ponder9, Louis Lagardère1,10, Jean-Philip Piquemal1,6.
Abstract
We introduce a new class of methods, denoted as Truncated Conjugate Gradient(TCG), to solve the many-body polarization energy and its associated forces in molecular simulations (i.e. molecular dynamics (MD) and Monte Carlo). The method consists in a fixed number of Conjugate Gradient (CG) iterations. TCG approaches provide a scalable solution to the polarization problem at a user-chosen cost and a corresponding optimal accuracy. The optimality of the CG-method guarantees that the number of the required matrix-vector products are reduced to a minimum compared to other iterative methods. This family of methods is non-empirical, fully adaptive, and provides analytical gradients, avoiding therefore any energy drift in MD as compared to popular iterative solvers. Besides speed, one great advantage of this class of approximate methods is that their accuracy is systematically improvable. Indeed, as the CG-method is a Krylov subspace method, the associated error is monotonically reduced at each iteration. On top of that, two improvements can be proposed at virtually no cost: (i) the use of preconditioners can be employed, which leads to the Truncated Preconditioned Conjugate Gradient (TPCG); (ii) since the residual of the final step of the CG-method is available, one additional Picard fixed point iteration ("peek"), equivalent to one step of Jacobi Over Relaxation (JOR) with relaxation parameter ω, can be made at almost no cost. This method is denoted by TCG-n(ω). Black-box adaptive methods to find good choices of ω are provided and discussed. Results show that TPCG-3(ω) is converged to high accuracy (a few kcal/mol) for various types of systems including proteins and highly charged systems at the fixed cost of four matrix-vector products: three CG iterations plus the initial CG descent direction. Alternatively, T(P)CG-2(ω) provides robust results at a reduced cost (three matrix-vector products) and offers new perspectives for long polarizable MD as a production algorithm. The T(P)CG-1(ω) level provides less accurate solutions for inhomogeneous systems, but its applicability to well-conditioned problems such as water is remarkable, with only two matrix-vector product evaluations.Entities:
Mesh:
Year: 2016 PMID: 28068773 PMCID: PMC5228058 DOI: 10.1021/acs.jctc.6b00981
Source DB: PubMed Journal: J Chem Theory Comput ISSN: 1549-9618 Impact factor: 6.006
Figure 1Evolution of the total energy of a water box of 27 molecules computed with PCG and different convergence thresholds (AMOEBA), and with the TPCG2(ωfit) method, with P = diag. The drift on the total energy is fully related to the polarization contribution, the TPCG2(ωfit) converges to the 10–7 PCG results without any drift.
Figure 2Norm of the increment as a function of the number of iterations for different iterative methods (AMOEBA), computed on ubiquitin.
Figure 3Evolution of the extreme eigenvalues of αT for S3 and ubiquitin.
Figure 4Evolution of ωopt for S3 and ubiquitin.
Polarization Energies of Water Systems
| water box | S1 | S2 | S3 |
|---|---|---|---|
| ref | –81.03 | –803.33 | –15229.87 |
| ExPT | –69.54 | –660.95 | –12822.79 |
| TCG1 | –73.50 | –728.73 | –13814.35 |
| TCG2 | –80.69 | –800.32 | –15173.15 |
| TCG3 | –81.24 | –805.20 | –15265.65 |
| TPCG1 (P = diag) | –74.98 | –741.91 | –14028.18 |
| TPCG2 (P = diag) | –80.81 | –801.61 | –15194.87 |
| TPCG3 (P = diag) | –81.20 | –805.26 | –15268.43 |
| TPCG1 (P = Skeel) | –78.63 | –779.17 | –14743.48 |
| TPCG2 (P = Skeel) | –81.03 | –803.11 | –15222.53 |
| TPCG3 (P = Skeel) | –81.06 | –803.64 | –15236.03 |
RMS of the Dipole Vector Compared to the Reference for Water Systems, Using a Peek-Step
| water box | S1 | S2 | S3 |
|---|---|---|---|
| TCG1(ω = 1) | 3.6 × 10–3 | 3.9 × 10–3 | 3.7 × 10–3 |
| TCG2(ω = 1) | 1.5 × 10–3 | 1.7 × 10–3 | 1.8 × 10–3 |
| TCG3(ω = 1) | 4.6 × 10–4 | 4.9 × 10–4 | 4.8 × 10–4 |
| TPCG1(P = diag)(ω = 1) | 2.2 × 10–3 | 2.6 × 10–3 | 2.7 × 10–3 |
| TPCG2 (P = diag)(ω = 1) | 4.1 × 10–4 | 5.0 × 10–4 | 5.2 × 10–4 |
| TPCG3 (P = diag)(ω = 1) | 1.3 × 10–4 | 1.5 × 10–4 | 1.6 × 10–4 |
| TPCG1 (P = diag)(ωopt) | 2.3 × 10–3 | 2.7 × 10–3 | 2.8 × 10–3 |
| TPCG2 (P = diag)(ωopt) | 3.9 × 10–4 | 4.6 × 10–4 | 4.7 × 10–4 |
| TPCG1 (P = diag)(ωfit) | 2.6 × 10–3 | 3.0 × 10–3 | 3.0 × 10–3 |
| TPCG2 (P = diag)(ωfit) | 5.3 × 10–4 | 7.0 × 10–4 | 1.0 × 10–3 |
Polarization Energies of Protein Droplet and Ionic Liquids
| system | ncp7 | ubiquitin | dhfr | [dmim+][Cl−] |
|---|---|---|---|---|
| ref | –24202.54 | –11154.87 | –28759.01 | –1476.79 |
| ExPT | –27362.70 | –10919.77 | –28076.62 | –5841.73 |
| TCG1 | –21733.63 | –9897.22 | –25583.50 | –1428.35 |
| TCG2 | –23922.79 | –11031.67 | –28463.51 | –1420.00 |
| TCG3 | –24262.87 | –11174.93 | –28812.99 | –1450.22 |
| TPCG1 (P = diag) | –21438.14 | –9907.09 | –25588.07 | –1465.66 |
| TPCG2 (P = diag) | –23613.31 | –10948.32 | –28206.73 | –1462.22 |
| TPCG3 (P = diag) | –24219.49 | –11164.62 | –28775.53 | –1469.89 |
| TPCG1 (P = Skeel) | –22489.55 | –10458.44 | –27030.86 | –1424.49 |
| TPCG2 (P = Skeel) | –24056.53 | –11090.36 | –28637.35 | –1469.05 |
| TPCG3 (P = Skeel) | –24208.22 | –11144.53 | –28763.55 | –1477.02 |
RMS of the Dipole Vector Compared to the Reference for Protein Droplets and Ionic Liquids, Using a Peek-Step
| water box | ncp7 | ubiquitin | dhfr | [dmim+][Cl-] |
|---|---|---|---|---|
| TCG1(ω = 1) | 4.6 × 10–3 | 4.4 × 10–3 | 4.5 × 10–3 | 7.0 × 10–3 |
| TCG2(ω = 1) | 2.9 × 10–3 | 2.5 × 10–3 | 2.5 × 10–3 | 5.5 × 10–3 |
| TCG3(ω = 1) | 1.6 × 10–3 | 1.1 × 10–3 | 1.1 × 10–3 | 4.1 × 10–3 |
| TPCG1 (P = diag)(ω = 1) | 4.4 × 10–3 | 3.9 × 10–3 | 4.1 × 10–3 | 3.2 × 10–3 |
| TPCG2 (P = diag)(ω = 1) | 1.7 × 10–3 | 1.4 × 10–3 | 1.7 × 10–3 | 1.6 × 10–3 |
| TPCG3 (P = diag)(ω = 1) | 4.3 × 10–4 | 3.8 × 10–4 | 4.8 × 10–4 | 4.5 × 10–4 |
| TPCG1 (P = diag)(ωopt) | 5.1 × 10–3 | 4.7 × 10–3 | 4.8 × 10–3 | 3.8 × 10–3 |
| TPCG2 (P = diag)(ωopt) | 1.3 × 10–3 | 1.0 × 10–3 | 1.1 × 10–3 | 1.9 × 10–3 |
| TPCG1 (Jacobi)(ωfit) | 4.9 × 10–3 | 4.5 × 10–3 | 4.6 × 10–3 | 4.5 × 10–3 |
| TPCG2 (Jacobi)(ωfit) | 2.2 × 10–3 | 1.7 × 10–3 | 2.1 × 10–3 | 2.0 × 10–3 |
Polarization Energies of Water Systems, Using a Peek-Step
| water box | S1 | S2 | S3 |
|---|---|---|---|
| ref | –81.03 | –803.33 | –15229.87 |
| TCG1(ω = 1) | –81.41 | –806.83 | –15315.13 |
| TCG2(ω = 1) | –80.23 | –794.49 | –15061.22 |
| TCG3(ω = 1) | –80.78 | –800.83 | –15181.55 |
| TPCG1 (P = diag)(ω = 1) | –79.88 | –791.51 | –15001.40 |
| TPCG2 (P = diag)(ω = 1) | –80.98 | –802.74 | –15218.27 |
| TPCG3 (P = diag)(ω = 1) | –81.03 | –803.27 | –15228.74 |
| TPCG1 (P = diag)(ωopt) | –78.98 | –780.94 | –14789.04 |
| TPCG2 (P = diag)(ωopt) | –80.95 | –802.50 | –15213.17 |
| TPCG1 (P = diag)(ωfit) | –81.06 | –803.42 | –15230.10 |
| TPCG2 (P = diag)(ωfit) | –81.02 | –803.06 | –15231.14 |
RMS of the dipole vector compared to the reference for water systems
| water box | S1 | S2 | S3 |
|---|---|---|---|
| ExPT | 1.4 × 10–2 | 2.5 × 10–2 | 2.6 × 10–2 |
| TCG1 | 6.3 × 10–3 | 7.0 × 10–3 | 7.1 × 10–3 |
| TCG2 | 1.7 × 10–3 | 1.9 × 10–3 | 1.9 × 10–3 |
| TCG3 | 4.7 × 10–4 | 5.4 × 10–4 | 5.5 × 10–4 |
| TPCG1 (P = diag) | 4.9 × 10–3 | 5.6 × 10–3 | 5.8 × 10–3 |
| TPCG2 (P = diag) | 9.2 × 10–4 | 1.1 × 10–3 | 1.1 × 10–3 |
| TPCG3 (P = diag) | 3.8 × 10–4 | 3.8 × 10–4 | 3.9 × 10–4 |
| TPCG1(P = Skeel) | 2.2 × 10–3 | 2.6 × 10–3 | 2.7 × 10–3 |
| TPCG2 (P = Skeel) | 3.0 × 10–4 | 3.9 × 10–4 | 4.2 × 10–4 |
| TPCG3 (P = Skeel) | 6.6 × 10–5 | 9.5 × 10–5 | 1.0 × 10–4 |
Polarization Energies of Protein Droplet and Ionic Liquids, Using a Peek-Step
| system | ncp7 | ubiquitin | dhfr | [dmim+][Cl-] |
|---|---|---|---|---|
| ref | –24202.54 | –11154.87 | –28759.01 | –1476.79 |
| TCG1(ω = 1) | –24481.14 | –11231.35 | –28986.08 | –1477.08 |
| TCG2(ω = 1) | –23965.96 | –11009.06 | –28384.49 | –1465.73 |
| TCG3(ω = 1) | –24121.02 | –11105.78 | –28635.73 | –1441.95 |
| TPCG1 (P = diag)(ω = 1) | –23532.73 | –10829.84 | –27972.41 | –1493.58 |
| TPCG2 (P = diag)(ω = 1) | –24123.65 | –11128.14 | –28683.52 | –1471.34 |
| TPCG3 (P = diag)(ω = 1) | –24194.37 | –11150.95 | –28749.68 | –1478.83 |
| TPCG1 (P = diag)(ωopt) | –22773.65 | –10513.24 | –27079.47 | –1484.24 |
| TPCG2 (P = diag)(ωopt) | –23938.70 | –11066.44 | –28504.96 | –1468.29 |
| TPCG1 (P = diag)(ωfit) | –24161.11 | –11162.02 | –28766.40 | –1479.06 |
| TPCG2 (P = diag)(ωfit) | –24205.30 | –11154.21 | –28753.60 | –1475.08 |
RMS of the Dipole Vector Compared to the Reference for Protein Droplets and Ionic Liquids
| water box | ncp7 | ubiquitin | dhfr | [dmim+][Cl-] |
|---|---|---|---|---|
| ExPT | 8.1 × 10–2 | 5.2 × 10–2 | 5.4 × 10–2 | 1.3 × 10–1 |
| TCG1 | 8.9 × 10–3 | 8.8 × 10–3 | 8.8 × 10–3 | 1.1 × 10–2 |
| TCG2 | 3.5 × 10–3 | 3.2 × 10–3 | 3.2 × 10–3 | 7.2 × 10–3 |
| TCG3 | 2.1 × 10–3 | 1.7 × 10–3 | 1.7 × 10–3 | 5.3 × 10–3 |
| TPCG1 (P = diag) | 8.6 × 10–3 | 8.0 × 10–3 | 8.1 × 10–3 | 6.9 × 10–3 |
| TPCG2 (P = diag) | 2.5 × 10–3 | 2.0 × 10–3 | 2.2 × 10–3 | 3.4 × 10–3 |
| TPCG3 (P = diag) | 7.1 × 10–4 | 6.5 × 10–4 | 7.2 × 10–4 | 7.9 × 10–4 |
| TPCG1 (P = Skeel) | 5.5 × 10–3 | 4.4 × 10–3 | 4.5 × 10–3 | 5.6 × 10–3 |
| TPCG2 (P = Skeel) | 9.0 × 10–4 | 7.7 × 10–4 | 7.8 × 10–4 | 1.5 × 10–3 |
| TPCG3 (P = Skeel) | 2.1 × 10–4 | 1.8 × 10–4 | 1.9 × 10–4 | 3.2 × 10–4 |