File: index.html

package info (click to toggle)
apbs 1.0.0-2
  • links: PTS, VCS
  • area: main
  • in suites: lenny
  • size: 38,840 kB
  • ctags: 7,893
  • sloc: ansic: 44,537; xml: 21,399; sh: 20,613; fortran: 17,796; yacc: 2,922; python: 2,804; makefile: 567; lex: 294; sed: 205; java: 134; awk: 26
file content (2387 lines) | stat: -rw-r--r-- 228,831 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>APBS 1.0.0 User Guide</title><meta name="generator" content="DocBook XSL Stylesheets V1.71.1"><link rel="start" href="#id342635" title="APBS 1.0.0 User Guide"><link rel="next" href="#introduction-sect" title="Chapter1.Introduction"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="id342635"></a>APBS 1.0.0 User Guide</h1></div><div><h2 class="subtitle">Adaptive Poisson-Boltzmann Solver</h2></div><div><div class="author"><h3 class="author"><span class="firstname">Nathan</span> <span class="othername">A</span> <span class="surname">Baker</span></h3><div class="affiliation"><span class="orgname">Washington University in St. Louis<br></span> <span class="orgdiv">Department of Biochemistry and Molecular Biophysics<br></span><span class="orgdiv">Center for Computational Biology<br></span></div></div></div><div><p class="copyright">Copyright  2002, 2003, 2004, 2005, 2006, 2007, 2008 Washington University in St. Louis</p></div><div><div class="legalnotice"><a name="id451928"></a><p>This file is part of APBS.</p><p>
						</p><div class="literallayout"><p>Copyright(c)2002-2008,WashingtonUniversityinSt.Louis.<br>
		PortionsCopyright(c)2002-2008.NathanA.Baker<br>
		PortionsCopyright(c)1999-2002.TheRegentsoftheUniversityofCalifornia.<br>
		PortionsCopyright(c)1995.MichaelHolst.</p></div><p> All rights reserved. </p><p> Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
						</p><div class="itemizedlist"><ul type="disc"><li>Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.</li><li>Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.</li><li> Neither the name of Washington University in St. Louis nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.</li></ul></div><p>
					</p><p> THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</p></div></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="#introduction-sect">1. Introduction</a></span></dt><dt><span class="chapter"><a href="#installation-sect">2. Installation</a></span></dt><dd><dl><dt><span class="sect1"><a href="#obtaining-sect">2.1. Availability</a></span></dt><dt><span class="sect1"><a href="#id453133">2.2. Binary installation</a></span></dt><dt><span class="sect1"><a href="#id453216">2.3. Source installation</a></span></dt><dd><dl><dt><span class="sect2"><a href="#prerequisites-sect">2.3.1. Prerequisites</a></span></dt><dt><span class="sect2"><a href="#tested-systems">2.3.2. Tested systems</a></span></dt><dt><span class="sect2"><a href="#setup-sect">2.3.3. Preparation for installation</a></span></dt><dt><span class="sect2"><a href="#id453538">2.3.4. Configuring, compiling, and installing</a></span></dt><dt><span class="sect2"><a href="#install-dirs">2.3.5. APBS directory structure</a></span></dt><dt><span class="sect2"><a href="#id453746">2.3.6. System-specific notes</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#contents-sect">3. Overview</a></span></dt><dd><dl><dt><span class="sect1"><a href="#id456745">3.1. Invocation</a></span></dt><dt><span class="sect1"><a href="#id457277">3.2. Other tools</a></span></dt><dd><dl><dt><span class="sect2"><a href="#parameterization">3.2.1. Parameterization</a></span></dt><dt><span class="sect2"><a href="#problem-setup">3.2.2. Problem setup</a></span></dt><dt><span class="sect2"><a href="#id457578">3.2.3. Output data processing</a></span></dt><dt><span class="sect2"><a href="#viz-tools">3.2.4. Data visualization</a></span></dt><dt><span class="sect2"><a href="#acc">3.2.5. Solvent accessibility</a></span></dt><dt><span class="sect2"><a href="#id457956">3.2.6. Coulomb's Law and Generalized Born calculations</a></span></dt><dt><span class="sect2"><a href="#id458089">3.2.7. Eigenvalue analysis</a></span></dt><dt><span class="sect2"><a href="#id458115">3.2.8. Python development tools</a></span></dt></dl></dd><dt><span class="sect1"><a href="#examples-sect">3.3. Examples and tutorial</a></span></dt><dt><span class="sect1"><a href="#documentation-sect">3.4. Documentation</a></span></dt><dt><span class="sect1"><a href="#id458318">3.5. Source code</a></span></dt></dl></dd><dt><span class="chapter"><a href="#executable-sect">4. Using APBS</a></span></dt><dd><dl><dt><span class="sect1"><a href="#id456734">4.1. Invocation</a></span></dt><dt><span class="sect1"><a href="#apbs-input">4.2. Input files</a></span></dt><dd><dl><dt><span class="sect2"><a href="#read">4.2.1. READ statements</a></span></dt><dt><span class="sect2"><a href="#elec">4.2.2. ELEC statements</a></span></dt><dt><span class="sect2"><a href="#apolar">4.2.3. APOLAR statements</a></span></dt><dt><span class="sect2"><a href="#print">4.2.4. PRINT statements</a></span></dt></dl></dd><dt><span class="sect1"><a href="#other-programs">4.3. Using APBS with other programs</a></span></dt><dd><dl><dt><span class="sect2"><a href="#web-sect">4.3.1. Web interfaces</a></span></dt><dt><span class="sect2"><a href="#gui-sect">4.3.2. Graphical user interfaces</a></span></dt><dt><span class="sect2"><a href="#simulation-sect">4.3.3. Simulation software</a></span></dt><dt><span class="sect2"><a href="#visualization-sect">4.3.4. Visualization software</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#id502871">5. Getting help</a></span></dt><dd><dl><dt><span class="sect1"><a href="#user-forums">5.1. User Forums</a></span></dt><dt><span class="sect1"><a href="#mailing-lists">5.2. Mailing Lists</a></span></dt><dt><span class="sect1"><a href="#id503070">5.3. Bug and other problems</a></span></dt></dl></dd><dt><span class="chapter"><a href="#programming-sect">6. Programming</a></span></dt><dt><span class="appendix"><a href="#format-sect">A. File formats</a></span></dt><dd><dl><dt><span class="sect1"><a href="#pqr-format">A.1. PQR biomolecular structure format</a></span></dt><dd><dl><dt><span class="sect2"><a href="#pqr-flat-format">A.1.1.  PQR flat-file format</a></span></dt><dt><span class="sect2"><a href="#pqr-xml-format">A.1.2. PQR XML Format </a></span></dt></dl></dd><dt><span class="sect1"><a href="#param-format">A.2. Parameter file format</a></span></dt><dd><dl><dt><span class="sect2"><a href="#parm-flat-format">A.2.1. Flat-file format</a></span></dt><dt><span class="sect2"><a href="#parm-xml-format">A.2.2. XML Parameter Format </a></span></dt></dl></dd><dt><span class="sect1"><a href="#hb-format">A.3. Harwell-Boeing column-compressed matrix
			format</a></span></dt><dt><span class="sect1"><a href="#opendx-format">A.4. OpenDX scalar data format</a></span></dt><dd><dl><dt><span class="sect2"><a href="#id504516">A.4.1. Multigrid</a></span></dt><dt><span class="sect2"><a href="#id504780">A.4.2. Finite element</a></span></dt></dl></dd></dl></dd><dt><span class="appendix"><a href="#license-sect">B. License</a></span></dt></dl></div><div class="list-of-tables"><p><b>List of Tables</b></p><dl><dt>4.1. <a href="#id467275">Sensitivity of 2PHK:B solvation energy calculations
								to <span>ofrac</span> values.</a></dt></dl></div><div class="list-of-examples"><p><b>List of Examples</b></p><dl><dt>4.1. <a href="#id460177">Template for APBS input file</a></dt><dt>4.2. <a href="#id480292">PRINT statement example</a></dt></dl></div><div class="list-of-equations"><p><b>List of Equations</b></p><dl><dt>4.1. <a href="#eqn-nonpolar-energy">Nonpolar solvation potentials of mean
				force</a></dt><dt>4.2. <a href="#eqn-nonpolar-force">Nonpolar solvation
				mean forces</a></dt></dl></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="introduction-sect"></a>Chapter1.Introduction</h2></div></div></div><p>APBS is a software package for the numerical solution of the
		Poisson-Boltzmann equation (PBE), one of the most popular continuum models
		for describing electrostatic interactions between molecular solutes in
		salty, aqueous media. Continuum electrostatics plays an important role in
		several areas of biomolecular simulation, including:
		</p><div class="itemizedlist"><ul type="disc"><li><p>simulation of diffusional processes to determine ligand-protein
					and protein-protein binding kinetics,</p></li><li><p>implicit solvent molecular dynamics of biomolecules,</p></li><li><p>solvation and binding energy calculations to determine
					ligand-protein and protein-protein equilibrium binding constants and
					aid in rational drug design,</p></li><li><p>and biomolecular titration studies.</p></li></ul></div><p>
		APBS was designed to efficiently evaluate electrostatic properties for
		such simulations for a wide range of length scales to enable the investigation
		of molecules with tens to millions of atoms.</p><p>APBS uses <a href="http://www.fetk.org/" target="_top">PMG</a> to solve the
		Poisson-Boltzmann equation numerically.  PMG is developed and maintained
		by the <a href="http://www.scicomp.ucsd.edu/~mholst/" target="_top">Holst Research
			Group</a> at UC San Diego, and is designed to solve the nonlinear
		Poisson-Boltzmann equation and similar problems with linear space and time
		complexity through the use of box methods, inexact Newton methods, and
		algebraic multilevel methods.  More information about PMG may be found at
		<a href="http://www.fetk.org" target="_top">http://www.fetk.org</a>.
	</p><p>Additionally, APBS uses the "Aqua" library, a version of Holst group <a href="http://www.fetk.org/" target="_top">PMG</a> that has been specially optimized by <a href="http://koehllab.genomecenter.ucdavis.edu/" target="_top">Patrice Koehl</a> for improved memory usage and speed when solving the Poisson-Boltzmann equation.</p><p>APBS also uses <a href="http://www.fetk.org/" target="_top">FEtk</a>  to
		solve the Poisson-Boltzmann equation numerically.  FEtk is developed and
		maintained by the <a href="http://www.scicomp.ucsd.edu/~mholst/" target="_top">Holst
			Research Group</a> at UC San Diego, and is designed to solve general
		coupled systems of nonlinear partial differential equations accurately and
		efficiently using adaptive multilevel finite element methods, inexact
		Newton methods, algebraic multilevel methods.   More information about
		FEtk may be found at 
		<a href="http://www.fetk.org" target="_top">http://www.fetk.org</a>.
	</p><p><b>Financial support.</b>The development of APBS has been supported financially by:
			</p><div class="itemizedlist"><ul type="disc"><li><p><a href="http://www.nih.gov" target="_top">National Institutes of 
							Health</a> (grant GM069702-01)</p></li><li><p><a href="http://www.npaci.edu" target="_top">National Partnership for Advanced
							Computational Infrastructure</a></p></li><li><p><a href="http://nbcr.sdsc.edu" target="_top">National Biomedical Computation
							Resource</a></p></li></ul></div><p>
		</p><p><a name="citing"></a><b>Citing APBS.</b>
			Please acknowledge your use of APBS by citing:
			</p><div class="blockquote"><blockquote class="blockquote"><p> 
					<a href="http://www.pnas.org/cgi/content/abstract/98/18/10037" target="_top"> 
						Baker NA, Sept D, Joseph S, Holst MJ, McCammon JA.  Electrostatics
						of nanosystems: application to microtubules and the ribosome.
						<em class="citetitle">Proc Natl Acad Sci USA</em> 98, 10037-10041, 2001.
					</a>  
				</p></blockquote></div><p>
		</p><p><a name="citing2"></a><b>Citing FEtk and PMG.</b>
			Please acknowledge your use of PMG and FEtk by citing:
			</p><div class="blockquote"><blockquote class="blockquote"><p> 
					M. Holst and F. Saied, Multigrid solution of the Poisson-Boltzmann
					equation.  <em class="citetitle">J. Comput. Chem.</em>, 14 (1993), pp.
					105-113.
				</p><p>
					M. Holst and F. Saied, Numerical solution of the nonlinear
					Poisson-Boltzmann equation: Developing more robust and efficient
					methods.  <em class="citetitle">J. Comput. Chem.</em>, 16 (1995), pp.
					337-364.
				</p><p>
					M. Holst, Adaptive numerical treatment of elliptic systems on
					manifolds. <em class="citetitle">Advances in Computational
						Mathematics</em>, 15 (2001), pp. 139-191.
				</p><p>
					R. Bank and M. Holst, A New Paradigm for Parallel Adaptive Meshing
					Algorithms. <em class="citetitle">SIAM Review</em>, 45 (2003), pp.
					291-323.
				</p></blockquote></div><p>
		</p><p><a name="authors"></a><b>Contributing authors.</b>APBS was primarily written by Nathan Baker during his graduate work
			with J. Andrew McCammon and Michael Holst and extensively developed over
			the subsequent years.  APBS uses several libraries written by Mike Holst
			and members of the Holst group, including:  
			<a href="http://scicomp.ucsd.edu/~mholst/codes/pmg/index.html" target="_top">PMG</a> 
			(multigrid solver for Cartesian mesh discretization), 
			<a href="http://www.fetk.org" target="_top">FEtk</a> 
			(provides finite element framework, error estimators, and solvers), and 
			<a href="http://scicomp.ucsd.edu/~mholst/codes/maloc/index.html" target="_top">MALOC
			</a> (hardware abstraction library for code portability).
			Additionally, a number of people have made important contributions to enhance
			APBS functionality and usability.  The full author list (in alphabetical
			order) is:
			</p><div class="itemizedlist"><ul type="disc"><li><p>Nathan A. Baker</p><p>Primary author</p></li><li><p>Steve Bond</p><p>Contributor:  FEtk library compatibility and Vopot functions</p></li><li><p>Larry Canino</p><p>Contributor: solvent accessibility function modification</p></li><li><p>Todd Dolinsky</p><p>Developer and contributor: Python
						wrappers, PDB2PQR, output
						logging, examples, and other
						tools</p></li><li><p>Adrian Elcock</p><p>Contributor: parameter files</p></li><li><p>David Gohara</p><p>Developer</p></li><li><p>Michael J. Holst</p><p>Advisor and author of several routines scattered about APBS,
						and author of PMG (the multigrid library used by this code), author
						of MALOC (hardware abstraction library used by this code), author
						of FEtk (finite element library incorporated in developmental
						versions of this code)
					</p></li><li><p>Adrian Kaats</p><p>Contributor:  multivalue.c</p></li><li><p>Robert Konecny</p><p>Contributor: parameters, CHARMM FORTRAN interface</p></li><li><p>Jung-Hsin Lin</p><p>Contributor:  OpenDX to MOLMOL conversion</p></li><li><p>Chiansan Ma</p><p>Contributor: format conversion scripts</p></li><li><p>J. Andrew McCammon</p><p>Advisor, financial and equipment support, functionality
						suggestions</p></li><li><p>Jens Nielsen</p><p>Contributor: PDB2PQR</p></li><li><p>Jay Ponder</p><p>Contributor:  TINKER Interface</p></li><li><p>Michael Schnieders</p><p>Contributor:  Polarizable atomic multipole routines, TINKER 
						interface</p></li><li><p>David Sept</p><p> Contributor:  scripts and tools, VMD compatibility, general
						suggestions about functionality </p></li><li><p>Tongye Shen</p><p>Contributor:  finite element mesh generation</p></li><li><p>Justin Xiang</p><p>Contributor:  generalized Born
						Python utilities</p></li></ul></div><p>
		</p></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="installation-sect"></a>Chapter2.Installation</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="#obtaining-sect">2.1. Availability</a></span></dt><dt><span class="sect1"><a href="#id453133">2.2. Binary installation</a></span></dt><dt><span class="sect1"><a href="#id453216">2.3. Source installation</a></span></dt><dd><dl><dt><span class="sect2"><a href="#prerequisites-sect">2.3.1. Prerequisites</a></span></dt><dt><span class="sect2"><a href="#tested-systems">2.3.2. Tested systems</a></span></dt><dt><span class="sect2"><a href="#setup-sect">2.3.3. Preparation for installation</a></span></dt><dt><span class="sect2"><a href="#id453538">2.3.4. Configuring, compiling, and installing</a></span></dt><dt><span class="sect2"><a href="#install-dirs">2.3.5. APBS directory structure</a></span></dt><dt><span class="sect2"><a href="#id453746">2.3.6. System-specific notes</a></span></dt></dl></dd></dl></div><p>The following sections outline the installation of APBS on a generic
		UNIX platform as well as installation instructions for various specific
		machines.</p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="obtaining-sect"></a>2.1.Availability</h2></div></div></div><p>The latest version of APBS can always be found at <a href="http://apbs.sourceforge.net/" target="_top">
				http://apbs.sourceforge.net</a>.  APBS is available in both source code form and
			binaries for a variety of architectures.</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id453133"></a>2.2.Binary installation</h2></div></div></div><p>
			We currently offer binaries for the RedHat Linux platform on a variety of architectures as well as command line binaries for WinXP and Mac OS X.  Binaries can be downloaded from the <a href="http://agave.wustl.edu/apbs/download" target="_top">APBS download page</a>.  For all other systems, please install from source on your particular platform and feel free to contact the <a href="#mailing-lists" title="5.2.Mailing Lists">APBS users mailing list</a> for more help and/or to request a binary for that system.
		</p><p>
			APBS binaries are provided in compressed tar format (*.tgz).  On most systems, the binaries can be unarchived by simply double-clicking or opening the archive.  This can also be accomplished on the comamnd line by
			</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>gzip -dc apbs-1.0.0-XYZ.tgz | tar xvf -</code></strong>
			</pre><p>
			where <strong class="userinput"><code>XYZ</code></strong> is the particular architecture of the binary you downloaded.
			Note that this will expand into a directory called <code class="filename">apbs-1.0.0-XYZ</code>.  The contents of this directory can be placed anywhere on your system that you prefer (and have access to).  The specific sub-directory of this archive is described in <a href="#install-dirs" title="2.3.5.APBS directory structure">Section2.3.5, &#8220;APBS directory structure&#8221;</a>, which contains information about the location of documentation, examples, libraries, header files, and binaries.  The APBS binaries do not contain dependencies on special data files, etc. and can be moved out of this directory structure without causing any problems for APBS execution.
		</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id453216"></a>2.3.Source installation</h2></div></div></div><p>If you were unable to find the binary pacakge for your system, or would like to compile APBS
			yourself, you'll need to read the instructions in this section.</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="prerequisites-sect"></a>2.3.1.Prerequisites</h3></div></div></div><p>In order to install APBS from the source code, you will need:
				</p><div class="itemizedlist"><ul type="disc"><li><p>C and Fortran compilers</p></li><li><p>The APBS source code (see 
							<a href="#obtaining-sect" title="2.1.Availability">above</a>)</p></li></ul></div><p>
				</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p> Note that the <a href="http://www.scicomp.ucsd.edu/~mholst" target="_top">Holst
							group</a> <a href="http://www.scicomp.ucsd.edu/~mholst/codes/maloc/index.html" target="_top">MALOC</a>
						source code is now provided with APBS to facilitate installation.</p></td></tr></table></div><p>
				It may also be useful to have:
				</p><div class="itemizedlist"><ul type="disc"><li><p>A version of MPI (try <a href="http://www-unix.mcs.anl.gov/mpi/mpich/" target="_top">MPICH</a>)
							for parallel jobs.  
							</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>
									MPI isn't strictly necessary if the <a href="#elec-async"><code class="option">async</code></a>
									option is used.
								</p></td></tr></table></div><p>
						</p></li><li><p>A vendor-supplied version of BLAS for optimal performance.  APBS
							will attempt to locate common BLAS libraries during the
							configuration process.</p></li></ul></div><p>
			</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="tested-systems"></a>2.3.2.Tested systems</h3></div></div></div><p> Source-code-based installation has been tested on the following systems
				</p><div class="itemizedlist"><ul type="disc"><li> AMD 64 (Opteron) running Fedora Core 6 Linux </li><li> IBM Power4 running RedHat Enterprise Linux 3 </li><li> SGI Itanium2 (Altix) running IRIX/Linux </li><li> Apple PowerPC running Mac OS X </li><li> Apple x86_64 running Mac OS X </li></ul></div><p>
				However, the installation procedure is rather generic and generally works on most
				UNIX-based systems.  System-specific installation notes and caveats are provided in
				<a href="#machine-sect">Section2.3.6, &#8220;System-specific notes&#8221;</a>.
			</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="setup-sect"></a>2.3.3.Preparation for installation</h3></div></div></div><p>In what follows, I'll be assuming you're using 
				<a href="http://www.gnu.org/software/bash/bash.html" target="_top">bash</a>, a shell available
				on most platforms (UNIX and non-UNIX).</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id453400"></a>2.3.3.1.Compiler variables</h4></div></div></div><p>First, please look at <a href="#machine-sect">Section2.3.6, &#8220;System-specific notes&#8221;</a> section of this document for
					appropriate compiler flags, etc. to be set via pre-configuration environmental
					variables.  This section outlines generic installation procedures with default
					compilers and options.</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id453421"></a>2.3.3.2.Installation directories</h4></div></div></div><p>There are a few directories you'll need to identify prior to installation.  The
					first, which we'll call <em class="parameter"><code>APBS_SRC</code></em>, will contain the APBS
					and MALOC source code.  This directory can be deleted after installation, if you
					wish.  The second directory will be the permanent location for APBS and MALOC;
					we'll call this <em class="parameter"><code>APBS_PREFIX</code></em>.  If you have root
					permission, you could pick a global directory such as
					<code class="filename">/usr/local</code> for this; otherwise, pick a directory for which
					you have write permission.  The following commands set up the directories and
					environmental which point to them:
					</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>export APBS_SRC=/home/soft/src</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>export APBS_PREFIX=/home/soft</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>mkdir -p ${APBS_SRC} ${APBS_PREFIX}</code></strong>
					</pre><p>
				</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id453497"></a>2.3.3.3.Unpacking the source code</h4></div></div></div><p>You're now ready to unpack the source code:
					</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>cd ${APBS_SRC}</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>gzip -dc apbs-1.0.0.tar.gz | tar xvf -</code></strong>
					</pre><p>
				</p></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id453538"></a>2.3.4.Configuring, compiling, and installing</h3></div></div></div><p> Before compiling/installing APBS, you need to configure with the autoconf
				<code class="literal">configure</code> script.  You can examine the various configure options with
				the <code class="option">--help</code> option.  For many platforms, no options need to be
				specified.  Therefore, most users <span class="emphasis"><em>who want single-CPU (not parallel)
					binaries</em></span> can configure as follows:
				</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>cd ${APBS_SRC}/apbs</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>./configure --prefix=${APBS_PREFIX}</code></strong>
				</pre><p>
				Other configuration options, including the compilation of parallel binaries and the use
				of machine-specific compilers and Python usage, are discussed in <a href="#machine-sect">Section2.3.6, &#8220;System-specific notes&#8221;</a>.
			</p><p>
				Assuming all has gone well with the configuration (you'll generally get an error message
				if configuration fails), you're ready to compile 
				</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>make all</code></strong>
				</pre><p>
				and install APBS:
				</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>make install</code></strong>
				</pre><p>
			</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-dirs"></a>2.3.5.APBS directory structure</h3></div></div></div><p>
				The APBS installation process (whether compiled from source or installed as pre-compiled binaries) will create several directories under
				<em class="parameter"><code>${APBS_PREFIX}</code></em>:
				</p><div class="itemizedlist"><ul type="disc"><li><p> <code class="filename">bin</code>, where the main
							<code class="filename">apbs</code> binary resides</p></li><li><p> <code class="filename">share</code>, which contains the documentation (user guide, tutorial, programmer's guide) as well as a number of
							examples and test cases for APBS </p></li><li><p> <code class="filename">include</code>, which contains header files for
							using APBS libraries with other applications </p></li><li><p> <code class="filename">lib</code>, which contains library files for
							using APBS libraries with other applications </p></li><li><p> <code class="filename">tools</code>, which contains a number of "helper"
							applications for use with APBS. </p></li></ul></div><p>
				At this point you are ready to use APBS; either by calling the binary directly or adding
				the above directory to your path.  As mentioned above, there are also several tools
				provided with APBS that remain in the APBS directory; these are described in later
				portions of this manual.  You may wish to copy these to a global location (or the same
				place as your APBS binary) at this time.
			</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id453746"></a>2.3.6.System-specific notes</h3></div></div></div><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Important"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="images/important.png"></td><th align="left">Important</th></tr><tr><td align="left" valign="top"><p> If you have tips or tricks on improving APBS performance and/or installation on
					your machine, please <a href="#mailing-lists" title="5.2.Mailing Lists">let us know!</a> </p></td></tr></table></div><p>This section provides tips on compiling APBS on specific platforms and outlines some of
				the basic options available for parallel execution, Python linkage, etc.  Note that many
				aspects of this section have changed from previous releases.  In particular, APBS now
				tries to detect the optimal compilers and BLAS libraries on most systems without user
				intervention.
			</p><p>
				As described above, the default configure-make-install procedure is
				</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>./configure --prefix=${APBS_PREFIX}</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>make </code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>make install</code></strong>
				</pre><p>
				The configure script includes a number of generic options to manually set default
				compilers, link behaviors, preprocessors, etc.  These can be reviewed by running
				</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>./configure --help</code></strong>
				</pre><p>
			</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id453842"></a>2.3.6.1.Using an external BLAS library</h4></div></div></div><p>If an optimized (vendor) BLAS library is available, it should be used with APBS since it will generally provide better performance.  This can be enabled by the <code class="code">--with-blas=...</code> option.  The configure-make-install procedure is:
					</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>./configure --with-blas='-L/path/to/blas -lblas'</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>make</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>make install</code></strong>
					</pre><p>
					where <strong class="userinput"><code>/path/to/blas</code></strong> is the location of a library named <strong class="userinput"><code>libblas.a</code></strong>.
				</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id453911"></a>2.3.6.2.Python support</h4></div></div></div><p>Python libraries and related tools can be enabled at configure-time.  Currently,
					Python libraries compile on most Linux and Mac systems.  Other systems are
					untested.  The configure-make-install procedure is:
					</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>./configure --enable-python --prefix=${APBS_PREFIX}</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>make </code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>make install</code></strong>
					</pre><p>
				</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id453964"></a>2.3.6.3.Parallel (MPI) support</h4></div></div></div><p> APBS uses MPI for parallel execution.  In general, MPI support requires informing
					the APBS configure script about:
					</p><div class="itemizedlist"><ul type="disc"><li><p> MPI compiler options.  For most MPI implementations, you
								simply need to set the <em class="parameter"><code>CC</code></em> and
								<em class="parameter"><code>F77</code></em> variables to point to the
								MPI-savvy C and FORTRAN compilers.  However, it is
								occasionally necessary to manually specify compiler
								options by setting 
								<em class="parameter"><code>CFLAGS</code></em>,
								<em class="parameter"><code>CPPFLAGS</code></em>,
								<em class="parameter"><code>FFLAGS</code></em>, and
								<em class="parameter"><code>LDFLAGS</code></em> before configuration.
							</p></li><li><p> MPI library/header file locations.  As outlined below,
								paths to the library and header files for <a href="http://www.lam-mpi.org/" target="_top">LAM</a> and
								<a href="http://www-unix.mcs.anl.gov/mpi/" target="_top">MPICH</a>
								implementations of MPI can be specified with the
								<code class="option">--with-lam</code>,
								<code class="option">--with-mpich</code>, or
								<code class="option">--with-mpich2</code> configure options.  Other
								MPI implementations will require the 
								<em class="parameter"><code>CFLAGS</code></em>,
								<em class="parameter"><code>CPPFLAGS</code></em>,
								<em class="parameter"><code>FFLAGS</code></em>, and
								<em class="parameter"><code>LDFLAGS</code></em> variables to be set
								correctly before configuration to locate the required
								headers and libraries. </p></li></ul></div><p>
				</p><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="id454084"></a>2.3.6.3.1.LAM MPI</h5></div></div></div><p> It is important that you enable FORTRAN support and use the same
						compilers you will use to compile APBS when installing/compiling 
						<a href="http://www.lam-mpi.org/" target="_top">LAM MPI</a>.  For example, if
						your C compiler is set in the environmental variable
						<em class="parameter"><code>${CC}</code></em> and your FORTRAN compiler is set in the
						environmental variable <em class="parameter"><code>${F77}</code></em>, then you should
						configure <span class="emphasis"><em>LAM</em></span> with the command
						</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>./configure --prefix=${MPI_PREFIX} --with-fc=${F77}</code></strong>
						</pre><p>
					</p><p> Let <em class="parameter"><code>${MPI_PREFIX}</code></em> be an environmental variable
						pointing to the directory where <a href="http://www.lam-mpi.org/" target="_top">LAM MPI</a> is installed.  
						In
						other words, <code class="filename">${MPI_PREFIX}/lib</code> should contain the
						LAM MPI libraries and <code class="filename">${MPI_PREFIX}/include</code> should
						contain the LAM MPI header files.  The configure-make-install procedure
						is then
						</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>export CC=${MPI_PREFIX}/bin/mpicc</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>export F77=${MPI_PREFIX}/bin/mpif77</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>./configure --with-lam=${MPI_PREFIX} --prefix=${APBS_PREFIX}</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>make </code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>make install</code></strong>
						</pre><p>
						This procedure was tested with LAM MPI 7.2.1.
					</p></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="id454503"></a>2.3.6.3.2.MPICH1</h5></div></div></div><p> It is important that you enable FORTRAN support and use the same
						compilers you will use to compile APBS when installing/compiling 
						<a href="http://www-unix.mcs.anl.gov/mpi/mpich1/" target="_top">MPICH1</a>.
						For example, if your C compiler is set in the environmental variable
						<em class="parameter"><code>${CC}</code></em> and your FORTRAN compiler is set in the
						environmental variable <em class="parameter"><code>${F77}</code></em>, then you should
						configure <span class="emphasis"><em>MPICH1</em></span> with the command
						</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>./configure --prefix=${MPI_PREFIX} ... --enable-f77</code></strong>
						</pre><p>
						where <code class="option">...</code> denotes other machine-specific options such as 
						<code class="option">--with-device=ch_p4</code> or
						<code class="option">--with-arch=LINUX</code>.
					</p><p> Let <em class="parameter"><code>${MPI_PREFIX}</code></em> be an environmental variable
						pointing to the directory where 
						<a href="http://www-unix.mcs.anl.gov/mpi/mpich1/" target="_top">MPICH1</a> 
						is installed.  In other words, <code class="filename">${MPI_PREFIX}/lib</code>
						should contain the
						MPICH1 
						libraries and <code class="filename">${MPI_PREFIX}/include</code> should contain
						the 
						MPICH1 
						header files.  The configure-make-install procedure
						is then
						</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>export CC=${MPI_PREFIX}/bin/mpicc</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>export F77=${MPI_PREFIX}/bin/mpif77</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>./configure --with-mpich=${MPI_PREFIX} --prefix=${APBS_PREFIX}</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>make </code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>make install</code></strong>
						</pre><p>
						This procedure was tested with MPICH2 1.0.6p1.
					</p></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="id454666"></a>2.3.6.3.3.MPICH2</h5></div></div></div><p> It is important that you enable FORTRAN support and use the same
						compilers you will use to compile APBS when installing/compiling 
						<a href="http://www-unix.mcs.anl.gov/mpi/mpich1/" target="_top">MPICH2</a>.
					</p><p> Let <em class="parameter"><code>${MPI_PREFIX}</code></em> be an environmental variable
						pointing to the directory where 
						<a href="http://www-unix.mcs.anl.gov/mpi/mpich2/" target="_top">MPICH2</a> 
						is installed.  In other words, <code class="filename">${MPI_PREFIX}/lib</code>
						should contain the
						MPICH2 
						libraries and <code class="filename">${MPI_PREFIX}/include</code> should contain
						the 
						MPICH2 
						header files.  The configure-make-install procedure
						is then
						</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>export CC=${MPI_PREFIX}/bin/mpicc</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>export F77=${MPI_PREFIX}/bin/mpif77</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>./configure --with-mpich2=${MPI_PREFIX} --prefix=${APBS_PREFIX}</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>make </code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>make install</code></strong>
						</pre><p>
						This procedure was tested with MPICH1 1.2.7p1.
					</p></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id454781"></a>2.3.6.4.FEtk support</h4></div></div></div><p> 
					In order to enable support for the finite element features in APBS, you must
					compile it against the <a href="http://www.fetk.org" target="_top">FEtk</a> libraries.
					<span class="emphasis"><em>Please use the same compilers for both APBS and FEtk.</em></span>
					Let <em class="parameter"><code>${FETK_PREFIX}</code></em> be an environmental variable pointing
					to the directory where FEtk was installed.  In other words,
					<code class="filename">${FETK_PREFIX}/lib</code> should contain the FEtk machine-specific
					library directories and <code class="filename">${FETK_PREFIX}/include</code> should
					contain the FEtk header files.  You'll first need to identify the appropriate
					library directory for your system in <code class="filename">${FETK_PREFIX}/lib</code>.
					For the purposes of this example, let's suppose this directory is
					<code class="filename">${FETK_PREFIX}/lib/x86_64-unknown-linux-gnu</code>.
					The configure-make-install procedure for APBS is then
					</p><pre class="screen">
<code class="prompt">$</code> <strong class="userinput"><code>./configure --with-fetk-include=${FETK_PREFIX}/include --with-fetk-library=${FETK_PREFIX}/lib/x86_64-unknown-linux-gnu --prefix=${APBS_PREFIX}</code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>make </code></strong>
<code class="prompt">$</code> <strong class="userinput"><code>make install</code></strong>
					</pre><p>
				</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id454882"></a>2.3.6.5.Windows</h4></div></div></div><p>We are happy to now provide native APBS command line binaries for Windows.  The
					binary is probably the best option available, but if you would still like to
					compile your own binaries you will need to use either the Cygwin or MinGW
					environments.  Binaries compiled under Cygwin tend to require Cygwin DLLs and
					thus can only be run on systems with Cygwin.  Performance for the Windows
					binaries and all compiled systems will be fairly mediocre as they depend on the
					GNU compilers.</p><p>If you do choose to use Cygwin and compile your own code, compilation should be
					rather straightforward.</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id454897"></a>2.3.6.6.Macintosh</h4></div></div></div><p>We are happy to now provide a Mac install package for Mac OS 10.4 
					(Tiger).  Unfortunately this is the only binary for Mac that we have
					available, so users on OS 10.3 may have to compile binaries for themselves - you
					may want to examine the
					<a href="http://sourceforge.net/mailarchive/forum.php?forum=apbs-users" target="_top">apbs-users 
						mailing list</a> which has a number of threads which discuss
					installation on Mac OS platforms.  Alternatively you can try using
					Fink for the installation - please see Bill Scott's excellent 
					guidelines at <a href="http://chemistry.ucsc.edu/~wgscott/xtal" target="_top"> 
						http://chemistry.ucsc.edu/~wgscott/xtal</a>. </p><p>A few notes about compiling on Macintosh:
					</p><div class="orderedlist"><ol type="1"><li><p>It has become apparent from the mailing lists that some
								"packages" of the GNU development software available for MacOS
								contain different major versions of the C and FORTRAN compilers.  
								This is very bad; APBS will not compile with different versions of 
								the C and FORTRAN compilers. If you use GCC 4.0, for instance,
								gfortran 4.0 will work while g77 3.3 will not. If you see link 
								errors involving "restFP" or "saveFP" this is most likely the 
								cause.</p></li><li><p>In gcc 4.0 (included in <a href="http://www.apple.com/macosx/features/xcode/" target="_top">Xcode</a>
								2.0 and higher) the -fast option turns on the -fast-math flag.
								This flag optimizes by using rounding, and thus can lead to
								inaccuate results and should be avoided.</p></li><li><p>As it stands now the autoconf script does not support using
								the native vecLib framework as an architecture-tuned BLAS 
								replacement.  In testing there were only slight timing 
								improvements over using the MALOC-supplied BLAS as it is.</p></li><li><p>We have had success using IBM's XLF for Mac in conjunction
								with GCC 4.0, although the corresponding XLC compilers do not 
								seem to work under Tiger.</p></li></ol></div><p>  
				</p><p> Finally, Dave Gohara has prepared 
					<a href="http://www.macresearch.org/tutorial_building_configure_make_projects_in_xcode" target="_top">a
						nice tutorial</a>
					on building APBS from within <a href="http://www.apple.com/macosx/features/xcode/" target="_top">Xcode</a> to take
					advantage of its development and debugging features.
				</p></div></div></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="contents-sect"></a>Chapter3.Overview</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="#id456745">3.1. Invocation</a></span></dt><dt><span class="sect1"><a href="#id457277">3.2. Other tools</a></span></dt><dd><dl><dt><span class="sect2"><a href="#parameterization">3.2.1. Parameterization</a></span></dt><dt><span class="sect2"><a href="#problem-setup">3.2.2. Problem setup</a></span></dt><dt><span class="sect2"><a href="#id457578">3.2.3. Output data processing</a></span></dt><dt><span class="sect2"><a href="#viz-tools">3.2.4. Data visualization</a></span></dt><dt><span class="sect2"><a href="#acc">3.2.5. Solvent accessibility</a></span></dt><dt><span class="sect2"><a href="#id457956">3.2.6. Coulomb's Law and Generalized Born calculations</a></span></dt><dt><span class="sect2"><a href="#id458089">3.2.7. Eigenvalue analysis</a></span></dt><dt><span class="sect2"><a href="#id458115">3.2.8. Python development tools</a></span></dt></dl></dd><dt><span class="sect1"><a href="#examples-sect">3.3. Examples and tutorial</a></span></dt><dt><span class="sect1"><a href="#documentation-sect">3.4. Documentation</a></span></dt><dt><span class="sect1"><a href="#id458318">3.5. Source code</a></span></dt></dl></div><p>
		This chapter gives an overview of the binaries, tools, etc. distributed as part of the APBS software package.  It is organized by directory; later chapters provide a more in-depth description on tools specific to particular applications.
	</p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id456745"></a>3.1.Invocation</h2></div></div></div><p>As mentioned in the 
		<a href="#installation-sect" title="Chapter2.Installation">Installation intructions</a>, the main
		APBS binary is installed in
		<code class="filename">${FETK_PREFIX}/bin/${prefix}/</code> where
		<code class="filename">${prefix}</code> is a machine-specific directory.  Of course,
		you can move the binary to any directory you choose.  APBS is invoked with a
		very simple syntax:
		</p><div class="cmdsynopsis"><p><code class="command">apbs</code>  [options]  <a href="#apbs-input" title="4.2.Input files">input-file</a> </p></div><p>

		Command line options include:
		</p><div class="variablelist"><dl><dt><span class="term"><code class="literal">--outputfile=</code><em class="replaceable"><code>name</code></em></span></dt><dd><p>Sets the output logging path (as described in the 
						output logging section of 
						the manual) to <em class="replaceable"><code>name</code></em>, or
						<em class="replaceable"><code>name_N</code></em> for parallel runs, where 
						<code class="literal">N</code> is the processor ID.
						If <code class="literal">--outputformat</code> is not specified, flat-file
						format will be used as the default.
					</p></dd><dt><span class="term"><code class="literal">--outputformat=</code><em class="replaceable"><code>type</code></em></span></dt><dd><p>Sets the output logging format.  Accepted values are:
						</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>flat</code></em></span></dt><dd><p>Flat-file format (default).</p></dd><dt><span class="term"><em class="replaceable"><code>xml</code></em></span></dt><dd><p>XML format</p></dd></dl></div><p>
					</p></dd><dt><span class="term"><code class="literal">--help</code></span></dt><dd><p>Displays command line usage</p></dd><dt><span class="term"><code class="literal">--version</code></span></dt><dd><p>Displays the current APBS version</p></dd></dl></div><p>

		<em class="parameter"><code>input-file</code></em> is an input file with a
		specific syntax described in <a href="#apbs-input" title="4.2.Input files">Section4.2, &#8220;Input files&#8221;</a>.
		Besides the output files specified in
		<code class="literal">input-file</code> and optional logs as specified by
		use of the <code class="literal">--output-file</code> command line
		option, APBS writes data to three additional places:
		</p><div class="itemizedlist"><ul type="disc"><li><p>Standard output.  This will appear on your screen (if you don't
					redirect it somewhere) and will contain all the basic information about
					the electrostatics calculation.</p></li><li><p>Standard error.  This will also appear on your screen (if you don't
					redirect it somewher) and will contain warnings and error
					messages.</p></li><li><p>The file <code class="filename">io.mc</code> (or
					<code class="filename">io.mc_N</code> for parallel runs, where
					<code class="literal">N</code> is the processor ID.  This gives you detailed
					information about the progress of the run with a particular focus on
					the numerical solver.</p></li></ul></div><p>
	</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id457277"></a>3.2.Other tools</h2></div></div></div><p>
			APBS contains a number of tools to facilitate the preparation of APBS runs and analysis of the results.  
			</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>NOTE:  In addition to the tools provided with APBS, there are a number of other programs which interoperate with our code.  Please see the <a href="#other-programs" title="4.3.Using APBS with other programs">Other Programs</a> section of this manual for more information.  </p></td></tr></table></div><p>
		</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="parameterization"></a>3.2.1.Parameterization</h3></div></div></div><p> Unfortunately, the majority of problems encountered during
				electrostatics calculations arise in  process of taking a structure
				from the Protein Data Bank and transforming into a file that can be
				used by the APBS software.  The PDB2PQR service was orginally developed
				in conjunction with Jens Nielsen and Andy McCammon to address these
				issues.  The service has since evolved and has been completely
				rewritten by Todd Dolinsky and Nathan Baker.  PDB2PQR is able to:
				</p><div class="itemizedlist"><ul type="disc"><li><p>Fill in missing atoms in the PDB (within reason)</p></li><li><p>Add hydrogens to the structure to optimize the
							hydrogen-bonding network.</p></li><li><p>Calculate side-chain pKas</p></li><li><p>Assign charges and radii according to one of the
							following force fields:  CHARMM23, AMBER02, or PARSE</p></li><li><p>Return the results in <a href="#pqr-format" title="A.1.PQR biomolecular structure format">PQR
								format</a></p></li><li><p>Generate <a href="#apbs-input" title="4.2.Input files">APBS
								input
								files.</a></p></li></ul></div><p>
			</p><p>Please visit the PDB2PQR home page (
				<a href="http://pdb2pqr.sourceforge.net" target="_top"> 
					http://pdb2pqr.sourceforge.net</a>) for more information, 
				links to available servers, and download options.</p><p> Additionally, APBS provides the ability to read plain PDB-format
				files and assign charges and radii from user-supplied parameter files.
				These features are described in the <a href="#parm">READ
					PARAM</a> command description.</p><p>Finally, APBS provides a few other miscellaneous tools for
				converting and parameterizing structures:
				</p><div class="itemizedlist"><ul type="disc"><li><p><code class="filename">tools/conversion/qcd2pqr.awk</code></p><p>Convert a QCD file (UHBD format for a molecule) to PQR
							format.</p></li><li><p><code class="filename">tools/conversion/amber2charmm.sh</code></p><p>A script which converts a PDB file with AMBER atom names to a
							PDB file with CHARMM atom names. Useful for preprocessing files
							before converting with pdb2pqr.</p></li><li><p><code class="filename">tools/conversion/WHATIF2AMBER.sed</code></p><p>A sed script for converting a PDB file with WHATIF atom names
							to a PDB file with AMBER atom names. Useful for preprocessing
							files before converting with pdb2pqr. Contributed by Chiansan
							Ma.</p></li></ul></div><p>
			</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="problem-setup"></a>3.2.2.Problem setup</h3></div></div></div><p>In addition to parameterization of the molecule, there are several
				common operations which are performed to setup the calculation. This
				section reviews some of the tools available for these
				operations.  Please note that PDB2PQR (see
				<a href="#parameterization" title="3.2.1.Parameterization">Section3.2.1, &#8220;Parameterization&#8221;</a> above) also
				prepares APBS input files.</p><p>The following scripts help generate or transform APBS input files:
				</p><div class="itemizedlist"><ul type="disc"><li><p><a name="psize"></a><code class="filename">tools/manip/psize.py</code></p><p>Get the dimensions and center of a molecule in 
							<a href="#pqr-format" title="A.1.PQR biomolecular structure format">PQR format</a>.
							Very useful for setting up input files (i.e., grid dimensions,
							lengths, spacings, etc.) for APBS calculations. Written by Todd
							Dolinsky and Nathan Baker.</p></li><li><p><code class="filename">apbs/tools/manip/inputgen.py</code></p><p>Generate an APBS input file from 
							<a href="#pqr-format" title="A.1.PQR biomolecular structure format">PQR format</a> 
							data using "suggested" parameters. Also can decouple a parallel
							calculation into a series of sequential (asynchronous)
							calculations to be performed on a single processor.
							Written by Todd Dolinsky and
							Nathan Baker.</p></li><li><p><code class="filename">tools/mesh/mgmesh</code></p><p>List acceptable grid dimensions/multigrid levels combinations
							for 
							<a href="#mg-manual" title="4.2.2.3.Manual multigrid calculation (mg-manual)">mg-manual</a>
							calculations. Written by Nathan Baker</p></li></ul></div><p>
			</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id457578"></a>3.2.3.Output data processing</h3></div></div></div><p>The following tools perform typical analyses of the output data,
				usually in 
				<a href="#opendx-format" title="A.4.OpenDX scalar data format">OpenDX format</a>. 
				These scripts are not meant to be comprehensive; instead, they provide
				templates for users to generate their own tools.
			</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="conversion-sect"></a>3.2.3.1.Conversion</h4></div></div></div><div class="itemizedlist"><ul type="disc"><li><p><code class="filename">tools/mesh/uhbd_asc2bin</code></p><p>Converts UHBD-format grid files from ASCII to binary.
							Contributed by Dave Sept.</p></li><li><p><code class="filename">tools/mesh/dx2mol</code></p><p>Converts 
							<a href="#opendx-format" title="A.4.OpenDX scalar data format">OpenDX format</a>
							data to <a href="http://www.mol.biol.ethz.ch/wuthrich/software/molmol/" target="_top">MOLMOL format</a>. 
							Contributed by Jung-Hsin Lin with bug fixes by Fred Damberger.</p></li><li><p><code class="filename">tools/mesh/dx2uhbd</code></p><p>Converts 
							<a href="#opendx-format" title="A.4.OpenDX scalar data format">OpenDX format</a>
							data to UHBD format. 
							Contributed by Robert Konecny.</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id457677"></a>3.2.3.2.Manipulation</h4></div></div></div><div class="itemizedlist"><ul type="disc"><li><p><code class="filename">tools/mesh/mergedx</code></p><p>Merge 
							<a href="#opendx-format" title="A.4.OpenDX scalar data format">OpenDX format</a>
							data from several domains (e.g., from a 
							<a href="#mg-para" title="4.2.2.2.Automatic parallel focusing multigrid calculation (mg-para)">mg-para</a>
							calculation into a single file.  This
							program is deprecated (replaced by
							<code class="filename">mergedx2</code> and will be
							removed in an upcoming release.  Contributed
							by Steve Bond.</p></li><li><p><code class="filename">tools/mesh/mergedx2</code></p><p>Merge <a href="#opendx-format" title="A.4.OpenDX scalar data format">OpenDX
								format</a>
							data from several domains (e.g., from a 
							<a href="#mg-para" title="4.2.2.2.Automatic parallel focusing multigrid calculation (mg-para)">mg-para</a>
							calculation into a single file while
							allowing resampling of the data to
							increase/decrease resolution.  This function
							will eventually replace
							<code class="filename">mergedx</code>.  Contributed
							by Dave Gohara.</p></li><li><p><code class="filename">tools/mesh/smooth</code></p><p>Apply a very inefficient Gaussian filter to 
							<a href="#opendx-format" title="A.4.OpenDX scalar data format">OpenDX format</a>
							data from APBS. Written by Nathan Baker.</p></li></ul></div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="viz-tools"></a>3.2.4.Data visualization</h3></div></div></div><p>This section describes the data visualization tools provided with
				APBS. A more complete discussion of the various ways to visualize APBS
				output is presented in the 
				<a href="#visualization-sect" title="4.3.4.Visualization software">Visualization section</a>
				of this manual.</p><div class="itemizedlist"><ul type="disc"><li><p><code class="filename">tools/visualization/vmd</code></p><p>This directory contains scripts which facilitate the
						visualization of APBS data with 
						<a href="http://www.ks.uiuc.edu/Research/vmd/" target="_top">VMD</a>.
						</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>NOTE:  As described in the 
								<a href="#visualization-sect" title="4.3.4.Visualization software">Visualization
									section</a>,
								a much more elegant interface has been developed for APBS and
								is available from the 
								<a href="http://www.ks.uiuc.edu/Research/vmd/plugins/apbsrun/" target="_top">VMD plugins page</a>.  
							</p></td></tr></table></div><p>
						The version distributed with APBS was written by Nathan Baker and
						Dave Sept based on example Tcl scripts by John Stone. The file
						<code class="filename">loadstuff.vmd</code> is the command file to be
						modified to the users' tastes and loaded into VMD. The file
						<code class="filename">read_dx</code> contains the Tcl
						functions needed to read the APBS output.</p></li><li><p><code class="filename">tools/visualization/opendx</code></p><p>This directory contains the 
						<a href="http://www.opendx.org" target="_top">OpenDX</a>
						program files (<code class="filename">*.net</code>) required to visualize
						APBS data with OpenDX. In particular, one can visualize single-file
						potential isocontours (<code class="filename">pot.*</code>), single-file
						potential data mapped onto molecular surfaces
						(<code class="filename">potacc.*</code>), or multiple-file potential data
						(<code class="filename">multipot.*</code>).</p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="acc"></a>3.2.5.Solvent accessibility</h3></div></div></div><p>The main APBS executable calculates molecular volumes, surface areas,
				and other surface-based properties from <a href="#pqr-format" title="A.1.PQR biomolecular structure format">PQR-format</a> structural data.
				Such calculations are often used to determine apolar solvation
				contributions to binding events, etc. See the new <a href="#apolar" title="4.2.3.APOLAR statements">APOLAR</a> keyword for more
				documentation on this APBS feature.
			</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id457956"></a>3.2.6.Coulomb's Law and Generalized Born calculations</h3></div></div></div><p>These utilities are provided for occasional use and are
				<span class="emphasis"><em>definitely not</em></span> optimized for speed.
			</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>NOTE:  Many of these tools will be incorporated into the main
					APBS executable during upcoming releases!</p></td></tr></table></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id457979"></a>3.2.6.1.Coulomb's Law calculations</h4></div></div></div><p>The program <code class="filename">tools/manip/coulomb</code> calculates
					<span class="emphasis"><em>vacuum</em></span> Coulomb law energies from a PQR file.  It
					has a number of options which can be viewed by running the 
					<code class="filename">coulomb</code> program with no arguments.</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id458007"></a>3.2.6.2.Generalized Born calculations</h4></div></div></div><p>The program <code class="filename">tools/manip/born</code> is a crude,
					non-optimal, buggy program (are you still reading?!?) for calculating
					Generalized Born electrostatic energies.  This is only intended for
					hacking and general comparison with Poisson-Boltzmann results.</p><p>The Python-based program <code class="filename">tools/python/runGB.py</code>
					is a test program designed to
					calculate generalized Born radii from
					APBS Poisson-Boltzmann calculations
					following the general methods of
					Onufriev A, Case DA, Bashford D.
					Effective Born radii in the generalized
					Born approximation: The importance of
					being perfect.  J Comput Chem.  23
					(14), 1297-304, 2002.  <a href="http://dx.doi.org/10.1002/jcc.10126" target="_top">http://dx.doi.org/10.1002/jcc.10126</a>.
					More information on this program can be
					obtained by running it from the command
					line with the <code class="literal">--help</code>
					option.
				</p><p>
					The Python-based program
					<code class="filename">tools/python/readGB.py</code>
					is a test program designed to use radii
					calculated from
					<code class="filename">runGB.py</code> (see
					above) and print out solvation
					energies.  More information on this
					program can be obtained by running it
					from the command line with the
					<code class="literal">--help</code> option.
				</p><p>
					Both of these Python-based programs
					were written by Justin Xiang.
				</p></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id458089"></a>3.2.7.Eigenvalue analysis</h3></div></div></div><p><code class="filename">tools/arpack/driver</code></p><p>If APBS is linked with ARPACK (see <code class="literal">configure
					--help</code>), this routine will perform eigenvalue analyses of
				matrices produced by APBS.</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id458115"></a>3.2.8.Python development tools</h3></div></div></div><p>There are a number of example Python tools and wrappers provided in
				the tools/python directory. These tools all make use of the APBS SWIG
				wrappers developed by Todd Dolinsky, Nathan Baker, Alex Gillet, and
				Michel Sanner. The SWIG wrappers are compiled by default during normal
				installation. The Python scripts which link to the wrappers (and
				thereby illustrate their use) include:</p><div class="itemizedlist"><ul type="disc"><li><p><code class="filename">tools/python/main.py</code></p><p>Drop-in replacement for main APBS executable. Only permits
						sequential runs.</p></li><li><p><code class="filename">tools/python/noinput.py</code></p><p>Similar to main.py, but adds the ability to read input
						files and PQR files as Python strings and return energies and
						forces as Python lists.  This makes it a very useful tool for 
						working with APBS via Python without dealing with a great deal
						of file I/O.</p></li><li><p><code class="filename">tools/python/vgrid/</code></p><p>Python wrappers for Vgrid class to allow OpenDX format file I/O
						in Python scripts</p></li></ul></div></div></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="examples-sect"></a>3.3.Examples and tutorial</h2></div></div></div><p>The APBS sub-directory <code class="filename">examples</code> contains
			several test systems which show how to use APBS for
			binding energy, solvation energy, and force calculations. The file
			<code class="filename">examples/README.html</code> contains descriptions of the
			test cases and links to anticipated results.  Examples can be run
			and compared to expected results by running <code class="filename">make test</code>
			in each example directory.
		</p><p>Additional examples are provided as part of the APBS tutorial
			(<code class="filename">doc/html/tutorial/</code>), described in more detail in
			the <a href="#documentation-sect" title="3.4.Documentation">Documentation section</a>.
		</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="documentation-sect"></a>3.4.Documentation</h2></div></div></div><p>The APBS sub-directory <code class="filename">doc</code> contains guides for
			using APBS and developing code based on APBS libraries.  The
			subdirectories include:
			</p><div class="itemizedlist"><ul type="disc"><li><p><a href="../user-guide/index.html" target="_top"><code class="filename">doc/html/user-guide/index.html</code></a></p><p>HTML-format User Guide </p></li><li><p><a href="../programmer/index.html" target="_top"><code class="filename">doc/html/programmer/index.html</code></a></p><p>HTML-format Programmer Guide </p></li><li><p><a href="../tutorial/index.html" target="_top"><code class="filename">doc/html/tutorial/index.html</code></a></p><p>HTML-format APBS tutorial </p></li></ul></div><p>
		</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id458318"></a>3.5.Source code</h2></div></div></div><p>The APBS sub-directory <code class="filename">src</code> contains the source
			code for the APBS libraries and main executable.  These files are
			described in more detailed in the 
			<a href="#programming-sect" title="Chapter6.Programming">Programming section</a>.
		</p></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="executable-sect"></a>Chapter4.Using APBS</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="#id456734">4.1. Invocation</a></span></dt><dt><span class="sect1"><a href="#apbs-input">4.2. Input files</a></span></dt><dd><dl><dt><span class="sect2"><a href="#read">4.2.1. READ statements</a></span></dt><dt><span class="sect2"><a href="#elec">4.2.2. ELEC statements</a></span></dt><dt><span class="sect2"><a href="#apolar">4.2.3. APOLAR statements</a></span></dt><dt><span class="sect2"><a href="#print">4.2.4. PRINT statements</a></span></dt></dl></dd><dt><span class="sect1"><a href="#other-programs">4.3. Using APBS with other programs</a></span></dt><dd><dl><dt><span class="sect2"><a href="#web-sect">4.3.1. Web interfaces</a></span></dt><dt><span class="sect2"><a href="#gui-sect">4.3.2. Graphical user interfaces</a></span></dt><dt><span class="sect2"><a href="#simulation-sect">4.3.3. Simulation software</a></span></dt><dt><span class="sect2"><a href="#visualization-sect">4.3.4. Visualization software</a></span></dt></dl></dd></dl></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id456734"></a>4.1.Invocation</h2></div></div></div><p>As mentioned in the 
		<a href="#installation-sect" title="Chapter2.Installation">Installation intructions</a>, the main
		APBS binary is installed in
		<code class="filename">${FETK_PREFIX}/bin/${prefix}/</code> where
		<code class="filename">${prefix}</code> is a machine-specific directory.  Of course,
		you can move the binary to any directory you choose.  APBS is invoked with a
		very simple syntax:
		</p><div class="cmdsynopsis"><p><code class="command">apbs</code>  [options]  <a href="#apbs-input" title="4.2.Input files">input-file</a> </p></div><p>

		Command line options include:
		</p><div class="variablelist"><dl><dt><span class="term"><code class="literal">--outputfile=</code><em class="replaceable"><code>name</code></em></span></dt><dd><p>Sets the output logging path (as described in the 
						output logging section of 
						the manual) to <em class="replaceable"><code>name</code></em>, or
						<em class="replaceable"><code>name_N</code></em> for parallel runs, where 
						<code class="literal">N</code> is the processor ID.
						If <code class="literal">--outputformat</code> is not specified, flat-file
						format will be used as the default.
					</p></dd><dt><span class="term"><code class="literal">--outputformat=</code><em class="replaceable"><code>type</code></em></span></dt><dd><p>Sets the output logging format.  Accepted values are:
						</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>flat</code></em></span></dt><dd><p>Flat-file format (default).</p></dd><dt><span class="term"><em class="replaceable"><code>xml</code></em></span></dt><dd><p>XML format</p></dd></dl></div><p>
					</p></dd><dt><span class="term"><code class="literal">--help</code></span></dt><dd><p>Displays command line usage</p></dd><dt><span class="term"><code class="literal">--version</code></span></dt><dd><p>Displays the current APBS version</p></dd></dl></div><p>

		<em class="parameter"><code>input-file</code></em> is an input file with a
		specific syntax described in <a href="#apbs-input" title="4.2.Input files">Section4.2, &#8220;Input files&#8221;</a>.
		Besides the output files specified in
		<code class="literal">input-file</code> and optional logs as specified by
		use of the <code class="literal">--output-file</code> command line
		option, APBS writes data to three additional places:
		</p><div class="itemizedlist"><ul type="disc"><li><p>Standard output.  This will appear on your screen (if you don't
					redirect it somewhere) and will contain all the basic information about
					the electrostatics calculation.</p></li><li><p>Standard error.  This will also appear on your screen (if you don't
					redirect it somewher) and will contain warnings and error
					messages.</p></li><li><p>The file <code class="filename">io.mc</code> (or
					<code class="filename">io.mc_N</code> for parallel runs, where
					<code class="literal">N</code> is the processor ID.  This gives you detailed
					information about the progress of the run with a particular focus on
					the numerical solver.</p></li></ul></div><p>
	</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="apbs-input"></a>4.2.Input files</h2></div></div></div><p> APBS input files are loosely-formatted files which contain
		information about the input, parameters, and output for each calculation.
		These files are whitespace- or linefeed-delimited.  Comments can be added
		to the input files via the <code class="literal">#</code> character; all text
		between the <code class="literal">#</code> and the end of the line is not parsed by
		APBS.  Specific examples of APBS input are described in the 
		<a href="#examples-sect" title="3.3.Examples and tutorial">Examples section</a>.</p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.png"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top"><p>Please note that there are several tools which help
			prepare APBS input files based on molecular structures,
			memory constraints, etc.  These tools are described in
			more detail in <a href="#problem-setup" title="3.2.2.Problem setup">Section3.2.2, &#8220;Problem setup&#8221;</a>.</p></td></tr></table></div><p> APBS input files contain three basic sections which can be repeated
		any number of times:
		</p><div class="itemizedlist"><ul type="disc"><li><p>
					<a href="#read" title="4.2.1.READ statements"><span><strong class="command">READ</strong></span></a>:  
					section for specifying input.</p></li><li><p>
					<a href="#elec" title="4.2.2.ELEC statements"><span><strong class="command">ELEC</strong></span></a>:  
					section for specifying polar solvation
					(electrostatics) calculation parameters.</p></li><li><p>
					<a href="#apolar" title="4.2.3.APOLAR statements"><span><strong class="command">APOLAR</strong></span></a>:
					section for specifying apolar solvation
					calculation parameters.</p></li><li><p>
					<a href="#print" title="4.2.4.PRINT statements"><span><strong class="command">PRINT</strong></span></a>:  
					section for specifying summary output.</p></li></ul></div><p>
		The APBS input file is constructed from these sections in the following
		format:
		</p><div class="example"><a name="id460177"></a><p class="title"><b>Example4.1.Template for APBS input file</b></p><div class="example-contents"><pre class="programlisting">
				READ
				...
				END
				ELEC
				...
				END
				APOLAR
				...
				END
				ELEC
				...
				END
				APOLAR
				...
				END
				PRINT
				...
				END
				QUIT
			</pre></div></div><p><br class="example-break">
	</p><p>These sections can occur in any order, however, they are clearly
		interdependent. For example, <span><strong class="command">PRINT</strong></span> requires
		<span><strong class="command">ELEC</strong></span> and/or <span><strong class="command">APOLAR</strong></span> while
		<span><strong class="command">ELEC</strong></span> requires one or more
		<span><strong class="command">READ</strong></span> sections. Sections can also be
		repeated; several <span><strong class="command">READ</strong></span> statements may be
		used to load molecules and multiple <span><strong class="command">ELEC</strong></span> or
		<span><strong class="command">APOLAR</strong></span> sections would specify various
		electrostatics calculations on one or more molecules.</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="read"></a>4.2.1.READ statements</h3></div></div></div><div class="cmdsynopsis"><p><code class="command">READ</code>  [<em class="replaceable"><code>keywords</code></em>...]<br><code class="command">END</code> </p></div><p>One of these sections must be present for every molecule involved in the
	APBS calculation. Molecule and "map" IDs are assigned implicitly assigned for
	each molecule/map read, based on order and starting at 1.  This section has
	the following keywords:</p><div class="itemizedlist"><ul type="disc"><li><div class="cmdsynopsis"><p><a name="read-mol"></a><code class="command">mol</code>  {<em class="replaceable"><code>format</code></em>} {<em class="replaceable"><code>path</code></em>}</p></div><p>This command specifies the molecular data to be read into APBS.  The
			arguments are: 
			</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>format</code></em></span></dt><dd><p>The format of the input data.  Acceptable flags include:
							</p><div class="variablelist"><dl><dt><span class="term"><span class="type">pqr</span></span></dt><dd><p>Molecular data is in <a href="#pqr-format" title="A.1.PQR biomolecular structure format">PQR format</a> 
										</p></dd><dt><span class="term"><span class="type">pdb</span></span></dt><dd><p>Molecular data is in <a href="http://www.rcsb.org/pdb/info.html#File_Formats_and_Standards" target="_top">PDB format</a>.
											</p><div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Warning"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="images/warning.png"></td><th align="left">Warning</th></tr><tr><td align="left" valign="top"><p>We do not completely follow the PDB format, as
													specified in the above link.  Specifically, we allow
													general whitespace-, tab-, or newline-delimited
													format, thereby permitting the manipulation of
													molecules with coordinates outside the 999
													range.  </p></td></tr></table></div><p>

										</p></dd></dl></div><p>
							</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>Beginning with APBS 0.5.0, the optional use of the
									chain ID field is now supported in both PDB and PQR formats.</p></td></tr></table></div><p>
						</p></dd><dt><span class="term"><em class="replaceable"><code>path</code></em></span></dt><dd><p>The location of the molecular data file.  This pathname should not include spaces. </p></dd></dl></div><p>
		</p></li><li><div class="cmdsynopsis"><p><a name="parm"></a><code class="command">parm</code>  {<em class="replaceable"><code>format</code></em>} {<em class="replaceable"><code>path</code></em>}</p></div><p>This command specifies the charge and radius data to be used with
			PDB-format molecule files.  The arguments are: 
			</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>format</code></em></span></dt><dd><p>The format of the parameter file.  Acceptable flags include:
							</p><div class="variablelist"><dl><dt><span class="term"><span class="type">flat</span></span></dt><dd><p>APBS
											<a href="#parm-flat-format" title="A.2.1.Flat-file format">flat-file
												parameter
												format</a></p></dd><dt><span class="term"><span class="type">xml</span></span></dt><dd><p>APBS
											<a href="#parm-xml-format" title="A.2.2.XML Parameter Format">XML
												parameter
												format</a></p></dd></dl></div><p>
						</p></dd><dt><span class="term"><em class="replaceable"><code>path</code></em></span></dt><dd><p>The location of the parameter data file.  This pathname should not include spaces. </p></dd></dl></div><p>
		</p></li><li><div class="cmdsynopsis"><p><a name="diel"></a><code class="command">diel</code>  {<em class="replaceable"><code>format</code></em>} {<em class="replaceable"><code>path-x</code></em>} {<em class="replaceable"><code>path-y</code></em>} {<em class="replaceable"><code>path-z</code></em>}</p></div><p>This command allows APBS to read the dielectric function 
			<img src="images/epsilon_of_x.gif">
			mapped to 3 meshes shifted by one-half grid spacing in the x, y, and z
			directions.  The inputs are maps of dielectric variables between the
			solvent and biomolecular dieletric constants; these values are unitless.
			In general, this command will read dielectric maps written by 
			<a href="#elec-write"><span><strong class="command">write</strong></span></a>
			commands in earlier APBS calculations.  
			</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>NOTE:  if you choose this option and have a non-zero ionic
					strength, you must also include a 
					<a href="#kappa"><span><strong class="command">read kappa</strong></span></a>
					statement</p></td></tr></table></div><p>
			Arguments for this command are:
			</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>format</code></em></span></dt><dd><p>The format of the dielectric map.  Acceptable values include:
							</p><div class="variablelist"><dl><dt><span class="term"><span class="type">dx</span></span></dt><dd><p> <a href="#opendx-format" title="A.4.OpenDX scalar data format">OpenDX format</a>
											(see <a href="#opendx-format" title="A.4.OpenDX scalar data format">Formats
												section</a>)</p></dd></dl></div><p>
						</p></dd><dt><span class="term"><em class="replaceable"><code>path-x</code></em></span></dt><dd><p>The location of the x-shifted dielectric map file.  This pathname should not include spaces. </p></dd><dt><span class="term"><em class="replaceable"><code>path-y</code></em></span></dt><dd><p>The location of the y-shifted dielectric map file.  This pathname should not include spaces. </p></dd><dt><span class="term"><em class="replaceable"><code>path-z</code></em></span></dt><dd><p>The location of the z-shifted dielectric map file.  This pathname should not include spaces. </p></dd></dl></div><p>
		</p></li><li><div class="cmdsynopsis"><p><a name="kappa"></a><code class="command">kappa</code>  {<em class="replaceable"><code>format</code></em>} {<em class="replaceable"><code>path</code></em>}</p></div><p>This command allows APBS to read the ion-accessibility function 
			<img src="images/overline_kappa_2_of_x.gif">
			mapped to a mesh.  The inputs are maps of ion accessibility values which
			range between 0 and the build Debye-Hckel screening parameter;
			these values have units of <sup>-2</sup>.  In
			general, this command will read kappa-maps written by 
			<a href="#elec-write"><span><strong class="command">write</strong></span></a>
			commands in earlier APBS calculations.  
			</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>NOTE:  if you choose this option, you must also include a 
					<a href="#diel"><span><strong class="command">read diel</strong></span></a>
					statement</p></td></tr></table></div><p>
			Arguments for this command are:
			</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>format</code></em></span></dt><dd><p>The format of the kappa map.  Acceptable values include:
							</p><div class="variablelist"><dl><dt><span class="term"><span class="type">dx</span></span></dt><dd><p><a href="#opendx-format" title="A.4.OpenDX scalar data format">OpenDX format</a>
											(see <a href="#opendx-format" title="A.4.OpenDX scalar data format">Formats section</a>)
										</p></dd></dl></div><p>
						</p></dd><dt><span class="term"><em class="replaceable"><code>path</code></em></span></dt><dd><p>The location of the kappa map file. This pathname should not include spaces.</p></dd></dl></div><p>
		</p></li><li><div class="cmdsynopsis"><p><a name="charge"></a><code class="command">charge</code>  {<em class="replaceable"><code>format</code></em>} {<em class="replaceable"><code>path</code></em>}</p></div><p>This command allows APBS to read the fixed (molecular) charge density
			function mapped to a mesh.  The inputs are maps of charge densities; 
			these values have units of e<sub>c</sub> (electron charge) per
			Angstrom<sup>3</sup>.
			In general, this command will read charge-maps written by 
			<a href="#elec-write"><span><strong class="command">write</strong></span></a>
			commands in earlier APBS calculations.  Arguments for this command are:
			</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>format</code></em></span></dt><dd><p>The format of the charge map.  Acceptable values include:
							</p><div class="variablelist"><dl><dt><span class="term"><span class="type">dx</span></span></dt><dd><p> <a href="#opendx-format" title="A.4.OpenDX scalar data format">OpenDX format</a>
											(see <a href="#opendx-format" title="A.4.OpenDX scalar data format">Formats section</a>)
										</p></dd></dl></div><p>
						</p></dd><dt><span class="term"><em class="replaceable"><code>path</code></em></span></dt><dd><p>The location of the charge map file.  This pathname should not include spaces. </p></dd></dl></div><p>
		</p></li><li><div class="cmdsynopsis"><p><a name="mesh"></a><code class="command">mesh</code>  {<em class="replaceable"><code>format</code></em>} {<em class="replaceable"><code>path</code></em>}</p></div><p>This command allows APBS to read a finite element mesh to use as a starting point for <a href="#fe-manual" title="4.2.2.4.Manual adaptive finite element calculation (fe-manual)">finite element</a> calculations.  The input is simply the mesh geometry; e.g., as produced by a finite element mesh generation program such as <a href="http://ccvweb.csres.utexas.edu/ccv/projects/project.php?proID=10" target="_top">LBIE-Mesher</a> or <a href="http://fetk.org/codes/gamer/index.html" target="_top">GAMer</a>.
			Arguments for this command are:
			</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>format</code></em></span></dt><dd><p>The format of the input mesh.  Acceptable values include:
							</p><div class="variablelist"><dl><dt><span class="term"><span class="type">mcsf</span></span></dt><dd><p> MCSF format (description coming soon!) </p></dd></dl></div><p>
						</p></dd><dt><span class="term"><em class="replaceable"><code>path</code></em></span></dt><dd><p>The location of the meshes file.  This path should not include spaces.</p></dd></dl></div><p>
		</p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="elec"></a>4.2.2.ELEC statements</h3></div></div></div><div class="cmdsynopsis"><p><code class="command">ELEC</code>  [name <em class="replaceable"><code>id</code></em>] {<em class="replaceable"><code>type</code></em>} [<em class="replaceable"><code>keywords</code></em>...]<br><code class="command">END</code> </p></div><p>This section is the main component for polar solvation calculations in
	APBS runs. There may be several <span><strong class="command">ELEC</strong></span> sections,
	operating on different molecules or using different parameters for
	multiple runs on the same molecule. The order of the
	<span><strong class="command">ELEC</strong></span> statement matters (see above); the arguments
	are:
	</p><div class="variablelist"><dl><dt><span class="term"> name <em class="replaceable"><code>id</code></em> </span></dt><dd><p>This optional command allows users to
					assign an alphanumeric string to the
					calculation to facilitate later
					operations (particularly in the 
					<a href="#print" title="4.2.4.PRINT statements"><span><strong class="command">PRINT</strong></span></a> statements).
				</p></dd><dt><span class="term"> <em class="replaceable"><code>type</code></em> </span></dt><dd><p>Specify the type of electrostatics calculation to perform (these are described in greater detail below):
					</p><div class="itemizedlist"><ul type="disc"><li><p><span><strong class="command"><a href="#mg-auto" title="4.2.2.1.Automatic sequential focusing multigrid calculation (mg-auto)">mg-auto</a></strong></span>
								for automatically-configured sequential focusing multigrid
								calculations.</p></li><li><p><span><strong class="command"><a href="#mg-para" title="4.2.2.2.Automatic parallel focusing multigrid calculation (mg-para)">mg-para</a></strong></span> 
								for automatically-configured parallel focusing multigrid
								calculations.</p></li><li><p><span><strong class="command"><a href="#mg-manual" title="4.2.2.3.Manual multigrid calculation (mg-manual)">mg-manual</a></strong></span> 
								for manually-configured multigrid calculations.</p></li><li><p><span><strong class="command"><a href="#fe-manual" title="4.2.2.4.Manual adaptive finite element calculation (fe-manual)">fe-manual</a></strong></span> 
								for manually-configured adaptive finite element
								calculations.</p></li><li><p><span><strong class="command"><a href="#mg-dummy" title="4.2.2.5.Manual non-numerical calculations (mg-dummy)">mg-dummy</a></strong></span>
								for calculations of surface and charge distribution properties
								which do not require solution of the PBE.</p></li></ul></div><p>
				</p></dd><dt><span class="term"> <em class="replaceable"><code>keywords</code></em> </span></dt><dd><p>Keywords describing the parameters of the electrostatic
					calculation.  These are described in the 
					<a href="#elec-keywords-sect" title="4.2.2.6.Keyword descriptions">Keywords section</a> below.
				</p></dd></dl></div><p>
</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="mg-auto"></a>4.2.2.1.Automatic sequential focusing multigrid
		calculation (<span><strong class="command">mg-auto</strong></span>)</h4></div></div></div><p> This automatically sets up and performs a string of single-point PBE
		calculations to "focus" on a region of interest (binding site, etc.) in a
		system. It is basically an automated version of mg-manual designed for
		easier use. Most users should probably use this version of
		<span><strong class="command">ELEC</strong></span>.</p><p> The keywords for this command (described in more detail in the 
		<a href="#elec-keywords-sect" title="4.2.2.6.Keyword descriptions">Keywords section</a>) are listed
		below.  All keywords are required (no default values!) unless otherwise
		noted:
		<span class="simplelist">
				<span><strong class="command"><a href="#elec-dime">dime</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-cglen">cglen</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-fglen">fglen</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-cgcent">cgcent</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-fgcent">fgcent</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-mol">mol</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-lpbe">lpbe</a></strong></span>
				or
				<span><strong class="command"><a href="#elec-npbe">npbe</a></strong></span>
				or
				<span><strong class="command"><a href="#elec-smpbe">smpbe</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-bcfl">bcfl</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-ion">ion</a></strong></span>
				(optional)
			, 
				<span><strong class="command"><a href="#elec-pdie">pdie</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-sdie">sdie</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-chgm">chgm</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-usemap">usemap</a></strong></span> (optional)
			, 
				<span><strong class="command"><a href="#elec-useaqua">useaqua</a></strong></span> (optional)
			, 
				<span><strong class="command"><a href="#elec-sdens">sdens</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-srfm">srfm</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-srad">srad</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-swin">swin</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-temp">temp</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-calcenergy">calcenergy</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-calcforce">calcforce</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-write">write</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-writemat">writemat</a></strong></span>
			</span>
	</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="mg-para"></a>4.2.2.2.Automatic parallel focusing multigrid calculation
		(<span><strong class="command">mg-para</strong></span>)</h4></div></div></div><p> This calculation closely resembles 
		<a href="#mg-auto" title="4.2.2.1.Automatic sequential focusing multigrid calculation (mg-auto)"><span><strong class="command">mg-auto</strong></span></a> in syntax.
		However, it is basically designed to perform single-point calculations on
		systems in a parallel focusing fashion. While this method does provide
		support for decreasing the domain size from a coarse (large) global grid to
		a fine (smaller) global grid, it should not be used to look at subsets of
		biomolecules such as titration sites, etc. Such subset calculations require
		more complicated energy evaluation which is not yet supported by
		<span><strong class="command">mg-para</strong></span>. However, since parallel focusing was designed
		to provide detailed evaluation of the electrostatic potential on a large
		scale, such subset calculations are better left to traditional focusing via
		the <span><strong class="command">mg-auto</strong></span> keyword.
		</p><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Important"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="images/important.png"></td><th align="left">Important</th></tr><tr><td align="left" valign="top"><p> Please note that some of the parameters change
				in meaning a bit for this type of calculation.
				In particular, <a href="#elec-dime">dime</a>
				should be interpreted as the number of grid
				points <span class="emphasis"><em>per processor</em></span>.
				This interpretation helps manage the amount of
				memory per-processor -- generally the limiting
				resource for most calculations. </p></td></tr></table></div><p>
	</p><p> The keywords for this command (described in more detail in the 
		<a href="#elec-keywords-sect" title="4.2.2.6.Keyword descriptions">Keywords section</a>) are listed
		below.  All keywords are required (no default values!) unless otherwise
		noted:
		<span class="simplelist">
				<span><strong class="command"><a href="#elec-dime">dime</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-ofrac">ofrac</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-pdime">pdime</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-async">async</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-cglen">cglen</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-fglen">fglen</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-cgcent">cgcent</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-fgcent">fgcent</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-mol">mol</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-lpbe">lpbe</a></strong></span>
				or
				<span><strong class="command"><a href="#elec-npbe">npbe</a></strong></span>
				or
				<span><strong class="command"><a href="#elec-smpbe">smpbe</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-bcfl">bcfl</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-ion">ion</a></strong></span>
				(optional)
			, 
				<span><strong class="command"><a href="#elec-pdie">pdie</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-sdie">sdie</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-chgm">chgm</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-usemap">usemap</a></strong></span> (optional)
			, 
				<span><strong class="command"><a href="#elec-useaqua">useaqua</a></strong></span> (optional)
			, 
				<span><strong class="command"><a href="#elec-sdens">sdens</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-srfm">srfm</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-srad">srad</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-swin">swin</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-temp">temp</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-calcenergy">calcenergy</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-calcforce">calcforce</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-write">write</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-writemat">writemat</a></strong></span>
			</span>
	</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="mg-manual"></a>4.2.2.3.Manual multigrid calculation
		(<span><strong class="command">mg-manual</strong></span>)</h4></div></div></div><p>This is the standard single-point PBE calculation performed by
		most solvers. The <span><strong class="command">mg-manual</strong></span> calculation
		offers the most control of parameters to the user. Several of
		these calculations can be strung together to perform focusing
		calculations by judicious choice of the <a href="#elec-bcfl"><span><strong class="command">bcfl</strong></span></a> flag,
		however, the setup of the focusing is not automated as it is in
		<a href="#mg-auto" title="4.2.2.1.Automatic sequential focusing multigrid calculation (mg-auto)"><span><strong class="command">mg-auto</strong></span></a> and
		<a href="#mg-para" title="4.2.2.2.Automatic parallel focusing multigrid calculation (mg-para)"><span><strong class="command">mg-para</strong></span></a>
		calculations and therefore this command should only be used by
		more experienced users.</p><p> The keywords for this command (described in more detail in the 
		<a href="#elec-keywords-sect" title="4.2.2.6.Keyword descriptions">Keywords section</a>) are listed
		below.  All keywords are required (no default values!) unless otherwise
		noted:
		<span class="simplelist">
				<span><strong class="command"><a href="#elec-dime">dime</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-nlev">nlev</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-glen">glen</a></strong></span> or
				<span><strong class="command"><a href="#elec-grid">grid</a></strong></span> 
			, 
				<span><strong class="command"><a href="#elec-gcent">gcent</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-mol">mol</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-lpbe">lpbe</a></strong></span>
				or
				<span><strong class="command"><a href="#elec-npbe">npbe</a></strong></span>
				or
				<span><strong class="command"><a href="#elec-smpbe">smpbe</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-bcfl">bcfl</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-ion">ion</a></strong></span>
				(optional)
			, 
				<span><strong class="command"><a href="#elec-pdie">pdie</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-sdie">sdie</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-chgm">chgm</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-usemap">usemap</a></strong></span>
				(optional)
			, 
				<span><strong class="command"><a href="#elec-useaqua">useaqua</a></strong></span> (optional)
			, 
				<span><strong class="command"><a href="#elec-sdens">sdens</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-srfm">srfm</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-srad">srad</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-swin">swin</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-temp">temp</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-calcenergy">calcenergy</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-calcforce">calcforce</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-write">write</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-writemat">writemat</a></strong></span>
			</span>
	</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="fe-manual"></a>4.2.2.4.Manual adaptive finite element calculation
		(<span><strong class="command">fe-manual</strong></span>)</h4></div></div></div><p>This is a single-point PBE calculation performed by our adaptive
		finite element PBE solver.  It requires that APBS was linked to the
		Holst group FEtk finite element library 
		(<a href="http://www.fetk.org/" target="_top">http://www.fetk.org</a>) during
		compilation. 
	</p><p>
		The finite element solver uses a "solve-estimate-refine" cycle.
		Specifically, starting from an initial mesh, it performs the following
		iteration:
		</p><div class="orderedlist"><ol type="1"><li><p> solve the problem </p></li><li><p> estimate the error in the solution </p></li><li><p> adaptively refine the mesh </p></li></ol></div><p>
		until a global error tolerance is reached.
	</p><p>
		</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>These methods are most useful for a select set of problems which
				can benefit from adaptive refinement of the solution.  Furthermore,
				this implementation is experimental.   In general, the sequential and
				parallel focusing multigrid methods offer the most efficient solution
				of the PBE for most systems</p></td></tr></table></div><p>
	</p><p> The keywords for this command (described in more detail in the 
		<a href="#elec-keywords-sect" title="4.2.2.6.Keyword descriptions">Keywords section</a>) are listed
		below.  All keywords are required (no default values!) unless otherwise
		noted:
		<span class="simplelist">
				<span><strong class="command"><a href="#elec-domainLength">domainLength</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-usemesh">usemesh</a></strong></span> (optional)
			, 
				<span><strong class="command"><a href="#elec-etol">etol</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-ekey">ekey</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-akeyPRE">akeyPRE</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-akeySOLVE">akeySOLVE</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-targetNum">targetNum</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-targetRes">targetRes</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-maxsolve">maxsolve</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-maxvert">maxvert</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-mol">mol</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-lpbe">lpbe</a></strong></span>
				or
				<span><strong class="command"><a href="#elec-npbe">npbe</a></strong></span>
				or
				<span><strong class="command"><a href="#elec-lrpbe">lrpbe</a></strong></span>
				or
				<span><strong class="command"><a href="#elec-nrpbe">nrpbe</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-bcfl">bcfl</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-ion">ion</a></strong></span>
				(optional)
			, 
				<span><strong class="command"><a href="#elec-pdie">pdie</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-sdie">sdie</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-chgm">chgm</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-usemap">usemap</a></strong></span>
				(optional)
			, 
				<span><strong class="command"><a href="#elec-useaqua">useaqua</a></strong></span> (optional)
			, 
				<span><strong class="command"><a href="#elec-sdens">sdens</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-srfm">srfm</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-srad">srad</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-swin">swin</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-temp">temp</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-calcenergy">calcenergy</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-calcforce">calcforce</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-write">write</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-writemat">writemat</a></strong></span>
			</span>
	</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="mg-dummy"></a>4.2.2.5.Manual non-numerical calculations
		(<span><strong class="command">mg-dummy</strong></span>)</h4></div></div></div><p>This allows users to write out 
		<a href="#diel">dielectric</a>, 
		<a href="#kappa">ion-accessibility</a>, and
		<a href="#charge">charge distribution</a> maps based on
		biomolecular geometry without actually solving the PB equation.
		The syntax is identical to <a href="#mg-dummy" title="4.2.2.5.Manual non-numerical calculations (mg-dummy)">mg-dummy</a>.
	</p><p> The keywords for this command (described in more detail in the 
		<a href="#elec-keywords-sect" title="4.2.2.6.Keyword descriptions">Keywords section</a>) are listed
		below.  All keywords are required (no default values!) unless otherwise
		noted:
		<span class="simplelist">
				<span><strong class="command"><a href="#elec-dime">dime</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-nlev">nlev</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-glen">cglen</a></strong></span> or
				<span><strong class="command"><a href="#elec-grid">grid</a></strong></span> 
			, 
				<span><strong class="command"><a href="#elec-gcent">gcent</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-mol">mol</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-lpbe">lpbe</a></strong></span>
				or
				<span><strong class="command"><a href="#elec-npbe">npbe</a></strong></span>
				or
				<span><strong class="command"><a href="#elec-smpbe">smpbe</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-bcfl">bcfl</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-ion">ion</a></strong></span>
				(optional)
			, 
				<span><strong class="command"><a href="#elec-pdie">pdie</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-sdie">sdie</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-chgm">chgm</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-usemap">usemap</a></strong></span>
				(optional)
			, 
				<span><strong class="command"><a href="#elec-useaqua">useaqua</a></strong></span> (optional)
			, 
				<span><strong class="command"><a href="#elec-sdens">sdens</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-srfm">srfm</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-srad">srad</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-swin">swin</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-temp">temp</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-calcenergy">calcenergy</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-calcforce">calcforce</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-write">write</a></strong></span>
			, 
				<span><strong class="command"><a href="#elec-writemat">writemat</a></strong></span>
			</span>
	</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="elec-keywords-sect"></a>4.2.2.6.Keyword descriptions</h4></div></div></div><p>
		This is a list of keywords used in the <span><strong class="command">ELEC</strong></span> statements
		of APBS.  Note that not all keywords are used in every
		<span><strong class="command">ELEC</strong></span> statement; see above.
	</p><div class="itemizedlist"><ul type="disc"><li><a name="elec-akeyPRE"></a><div class="cmdsynopsis"><p><code class="command">akeyPRE</code>  {<em class="replaceable"><code>key</code></em>}</p></div><p>Specify how the initial finite element mesh should be constructed
				(from refinement of a very coarse 8-tetrahedron mesh prior to the
				solve-estimate-refine iteration.  This allows for various
				<span class="foreignphrase"><em class="foreignphrase">a priori</em></span> refinement schemes.
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>key</code></em> </span></dt><dd><p>The method used to guide initial refinement:
								</p><div class="variablelist"><dl><dt><span class="term"> unif </span></dt><dd><p>Uniform refinement</p></dd><dt><span class="term"> geom </span></dt><dd><p>Geometry-based refinement at molecular surfaces
												and charges</p></dd></dl></div><p>
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-akeySOLVE"></a><div class="cmdsynopsis"><p><code class="command">akeySOLVE</code>  {<em class="replaceable"><code>key</code></em>}</p></div><p>Specify how the the finite element mesh should be adaptively
				subdivided during the solve-estimate-refine iterations.  This allows
				for various <span class="foreignphrase"><em class="foreignphrase">a posteriori</em></span> refinement
				schemes.  
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>key</code></em> </span></dt><dd><p>The method used to guide adpative refinement:
								</p><div class="variablelist"><dl><dt><span class="term"> resi </span></dt><dd><p>Residual-based <span class="foreignphrase"><em class="foreignphrase">a
													posteriori</em></span> refinement</p></dd></dl></div><p>
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-async"></a><div class="cmdsynopsis"><p><code class="command">async</code>  { <em class="replaceable"><code>rank</code></em> }</p></div><p> This optional keyword allows users to perform the different tasks
				in a parallel run asynchronously. Specifically, a processor masquerades
				as process <em class="replaceable"><code>rank</code></em> in a parallel focusing run
				and provides output (data files and energies/forces) appropriate to
				that processor's local partition. The user must then assemble the
				results after all processes complete. First, this option is useful for
				scheduling on-demand resources: this makes it easy for users to
				backfill into the available processes in a queue.  Second, this option
				is useful for running on limited resources: this enables users without
				access to large parallel machines to still perform the same
				calculations. 
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>rank</code></em> </span></dt><dd><p> The ID of the particular processor to masquerade as.
								Processor IDs range from 0 to <em class="replaceable"><code>N</code></em>-1,
								where <em class="replaceable"><code>N</code></em> is the total number of
								processors in the run (see 
								<a href="#elec-pdime"><span><strong class="command">pdime</strong></span></a>).
								Processor ranks are related to their position in the overall
								grid by
								</p><div class="informalequation"><div><img src="images/proc_rank.gif"></div></div><p>
								where 
								n<sub>x</sub> is the number of processors in the
								x-direction,
								n<sub>y</sub> is the number of processors in the
								y-direction,
								n<sub>z</sub> is the number of processors in the
								z-direction,
								i is the index of the processor in the x-direction,
								j is the index of the processor in the y-direction,
								k is the index of the processor in the z-direction, and
								p is the overall rank of the processor.
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-bcfl"></a><div class="cmdsynopsis"><p><code class="command">bcfl</code>  {<em class="replaceable"><code>flag</code></em>}</p></div><p>Specify the type of boundary conditions used to solve the
				Poisson-Boltzmann equation:
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>flag</code></em></span></dt><dd><p>The flag specifying the boundary condition definition:
								</p><div class="variablelist"><dl><dt><span class="term">zero</span></dt><dd><p>"Zero" boundary condition.  Potential at boundary
												is set to zero.  This condition is not commonly used
												and can result in large errors if used
												inappropriately.</p></dd><dt><span class="term">sdh</span></dt><dd><p>"Single Debye-Hckel" boundary condition.
												Potential at boundary is set to the values prescribed
												by a Debye-Hckel model for a single sphere with a
												point charge, dipole, and quadrupole.  The sphere 
												radius is set to the radius of the biomolecule and the 
												sphere charge, dipole, and quadrupole are set to the
												total moments of the protein.  This condition works 
												best when the boundary is sufficiently far from the
												biomolecule.</p></dd><dt><span class="term">mdh</span></dt><dd><p>"Multiple Debye-Hckel" boundary condition.
												Potential at boundary is set to the values prescribed
												by a Debye-Hckel model for a multiple,
												non-interacting spheres with a point charges.  The
												sphere radii are set to the atomic radii of the
												biomolecule and the sphere charges are set to the total
												charge of the protein.  This condition works better
												than sdh for closer boundaries but can be
												<span class="emphasis"><em>very slow</em></span> for large
												biomolecules.</p></dd><dt><span class="term">focus</span></dt><dd><p>"Focusing" boundary condition.
												Potential at boundary is set to the values computed by
												the previous (usually lower-resolution) PB calculation.
												This is used in sequential focusing performed manually
												in 
												<a href="#mg-manual" title="4.2.2.3.Manual multigrid calculation (mg-manual)"><span><strong class="command">mg-manual</strong></span></a>
												calculations.  All of the boundary points should lie
												within the domain of the previous calculation for best
												accuracy; if any boundary points lie outside, their
												values are computed using single Debye-Hckel
												boundary conditions (see above).</p></dd></dl></div><p>
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-calcenergy"></a><div class="cmdsynopsis"><p><code class="command">calcenergy</code>  { <em class="replaceable"><code>flag</code></em> }</p></div><p>
				This optional keyword controls electrostatic energy output from a PBE
				calculation.
				</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p> Note that this option must be used consistently for all
						calculations that will appear in subsequent 
						<a href="#print" title="4.2.4.PRINT statements"><span><strong class="command">PRINT</strong></span></a> statements.
						For example, if the statement <code class="literal">print energy 1 - 2
							end</code> appears in the input file, then both calculations 1
						and 2 must have <span><strong class="command">calcenergy</strong></span> keywords present with
						the same values for <em class="replaceable"><code>flag</code></em>.
					</p></td></tr></table></div><p>
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>flag</code></em> </span></dt><dd><p>Specify the types of energy values to be returned:
								</p><div class="variablelist"><dl><dt><span class="term">no</span></dt><dd><p>(Deprecated) don't calculate any energies.</p></dd><dt><span class="term">total</span></dt><dd><p>Calculate and return total electrostatic energy for
												the entire molecule.</p></dd><dt><span class="term">comps</span></dt><dd><p>Calculate and return total electrostatic energy for
												the entire molecule as well as electrostatic energy
												components for each atom.</p></dd></dl></div><p>
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-calcforce"></a><div class="cmdsynopsis"><p><code class="command">calcforce</code>  { <em class="replaceable"><code>flag</code></em> }</p></div><p>
				This optional keyword controls electrostatic and apolar force output
				from a PBE calculation.
				</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p> Note that this option must be used consistently for all
						calculations that will appear in subsequent 
						<a href="#print" title="4.2.4.PRINT statements"><span><strong class="command">PRINT</strong></span></a> statements.
						For example, if the statement <code class="literal">print force 1 - 2
							end</code> appears in the input file, then both calculations 1
						and 2 must have <span><strong class="command">calcforce</strong></span> keywords present with
						the same values for <em class="replaceable"><code>flag</code></em>.
					</p></td></tr></table></div><p>
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>flag</code></em> </span></dt><dd><p>Specify the types of force values to be returned:
								</p><div class="variablelist"><dl><dt><span class="term">no</span></dt><dd><p>(Deprecated) don't calculate any forces.</p></dd><dt><span class="term">total</span></dt><dd><p>Calculate and return total electrostatic and apolar
												forces for the entire molecule.</p></dd><dt><span class="term">comps</span></dt><dd><p>Calculate and return total electrostatic and apolar
												forces for the entire molecule as well as force
												components for each atom.</p></dd></dl></div><p>
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-cgcent"></a><div class="cmdsynopsis"><p><code class="command">cgcent</code>  { mol <em class="replaceable"><code>id</code></em>  |   <em class="replaceable"><code>xcent ycent zcent</code></em> }</p></div><p>Specify the center of the coarse grid (in a focusing calculation)
				based on a molecule's center or absolute coordinates. The arguments for
				this keyword are:
				</p><div class="variablelist"><dl><dt><span class="term">mol <em class="replaceable"><code>id</code></em></span></dt><dd><p>Center the grid on molecule with ID
								<em class="replaceable"><code>id</code></em>; as assigned in the 
								<a href="#read" title="4.2.1.READ statements"><span><strong class="command">READ</strong></span></a> section.
								Molecule IDs are assigned in the order they're read, starting
								at 1. 
							</p></dd><dt><span class="term"><em class="replaceable"><code>xcent ycent zcent</code></em></span></dt><dd><p>The coordinates (in ) at which the grid is
								centered.  Based on the PDB coordinate frame.</p></dd></dl></div><p>
			</p></li><li><a name="elec-cglen"></a><div class="cmdsynopsis"><p><code class="command">cglen</code>  {<em class="replaceable"><code>xlen ylen zlen</code></em>}</p></div><p>Specify the coarse mesh domain lengths in a focusing calculation;
				this may be different in each direction.  This is the starting mesh, so
				it should be large enough to complete enclose the biomolecule
				<span class="emphasis"><em>and</em></span> ensure that the chosen boundary condition (see
				<a href="#elec-bcfl"><span><strong class="command">bcfl</strong></span></a>) is appropriate.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>xlen ylen zlen</code></em></span></dt><dd><p>Grid lengths in the x-, y-, and z-directions in .</p></dd></dl></div><p>
			</p></li><li><a name="elec-chgm"></a><div class="cmdsynopsis"><p><code class="command">chgm</code>  {<em class="replaceable"><code>flag</code></em>}</p></div><p>Specify the method by which the biomolecular point charges (i.e.,
				Dirac delta functions) are mapped onto the grid.  As we are
				attempting to model delta functions, the support (domain) of these
				discretized charge distributions is always a function of the grid
				spacing.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>flag</code></em></span></dt><dd><p>
								Discretization method (options have multiple declarations for
								backward-compatibility):
								</p><div class="variablelist"><dl><dt><span class="term"> spl0 </span></dt><dd><p>
												Traditional trilinear interpolation (linear splines).
												The charge is mapped onto the nearest-neighbor grid
												points.  Resulting potentials are very sensitive to
												grid spacing, length, and position.
											</p></dd><dt><span class="term"> spl2 </span></dt><dd><p>
												Cubic B-spline discretization.
												The charge is mapped onto the nearest- and
												next-nearest-neighbor grid points.  Resulting
												potentials are somewhat less sensitive (than spl0) to
												grid spacing, length, and position.
											</p></dd><dt><span class="term"> spl4 </span></dt><dd><p>
												Quintic B-spline discretization. Similar to spl2, 
												except the charge/multipole is additionally mapped to 
												include next-next-nearest neighbors (125 grid points 
												receive charge density).
											</p></dd></dl></div><p>
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-dime"></a><div class="cmdsynopsis"><p><code class="command">dime</code>  {<em class="replaceable"><code>nx ny nz</code></em>}</p></div><p>Number of grid points <span class="emphasis"><em>per
					processor</em></span> for grid-based discretization.  For 
				<a href="#mg-manual" title="4.2.2.3.Manual multigrid calculation (mg-manual)"><span><strong class="command">mg-manual</strong></span></a>, the
				arguments are dependent on the choice of 
				<a href="#elec-nlev"><span><strong class="command">nlev</strong></span></a> by the formula
				</p><div class="informalequation"><div><img src="images/nlev_dime.gif"></div></div><p>
				where <code class="varname">n</code> is the <span><strong class="command">dime</strong></span> argument,
				<code class="varname">c</code> is a non-zero integer, <code class="varname">l</code> is the
				<span><strong class="command">nlev</strong></span> value.  The most common values for grid
				dimensions are 65, 97, 129, and 161 (they can be different in each
				direction); these are all compatible with a <span><strong class="command">nlev</strong></span>
				value of 4.  If you happen to pick a "bad" value for the dimensions
				(i.e., mismatch with <span><strong class="command">nlev</strong></span>), the code will adjust the
				specified dime downwards to more appropriate values. This means that
				"bad" values will typically result in lower resolution/accuracy
				calculations!  The arguments for this keyword are:
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>nx ny nz</code></em></span></dt><dd><p>Number of grid points in the x-, y-, and z-directions.</p></dd></dl></div><p>
			</p><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Important"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="images/important.png"></td><th align="left">Important</th></tr><tr><td align="left" valign="top"><p> Please note that some of the parameters change in meaning a bit for this <a href="#mg-para" title="4.2.2.2.Automatic parallel focusing multigrid calculation (mg-para)">mg-para</a> calculations.  In particular, <a href="#elec-dime">dime</a> should be interpreted as the number of grid points <span class="emphasis"><em>per processor</em></span>.  This interpretation helps manage the amount of memory per-processor -- generally the limiting resource for most calculations. </p></td></tr></table></div></li><li><a name="elec-domainLength"></a><div class="cmdsynopsis"><p><code class="command">domainLength</code>  {<em class="replaceable"><code>xlen ylen zlen</code></em>}</p></div><p>Specify the rectangular finite element mesh domain lengths; this may be different in each
				direction.  If the <a href="#elec-usemesh"><span><strong class="command">usemesh</strong></span></a> keyword is included, then this command is ignored.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>xlen ylen zlen</code></em></span></dt><dd><p>Mesh lengths in the x-, y-, and z-directions in .</p></dd></dl></div><p>
			</p></li><li><a name="elec-ekey"></a><div class="cmdsynopsis"><p><code class="command">ekey</code>  { <em class="replaceable"><code>flag</code></em> }</p></div><p>
				Specify the method used to determine the error tolerance in the
				solve-estimate-refine iterations of the finite element solver.
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>flag</code></em> </span></dt><dd><p>Tolerance is interpreted as...
								</p><div class="variablelist"><dl><dt><span class="term"> simp </span></dt><dd><p>
												...per-simplex error limit
											</p></dd><dt><span class="term"> global </span></dt><dd><p>
												...global (whole domain) error limit
											</p></dd><dt><span class="term"> frac </span></dt><dd><p>
												...fraction of simplices you'd like to see refined
											</p></dd></dl></div><p>
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-etol"></a><div class="cmdsynopsis"><p><code class="command">etol</code>  { <em class="replaceable"><code>tol</code></em> }</p></div><p>Specify the tolerance for error-based adaptive refinement during
				the solve-estimate-refine iterations of the finite element solver.  See
				also:  <a href="#elec-ekey"><span><strong class="command">ekey</strong></span></a>.
			</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>tol</code></em> </span></dt><dd><p>The error tolerance for adaptive finite element refinement.
							The exact definition of this tolerance is determined by the value
							of <span><strong class="command">ekey</strong></span>.</p></dd></dl></div></li><li><a name="elec-fgcent"></a><div class="cmdsynopsis"><p><code class="command">fgcent</code>  { mol <em class="replaceable"><code>id</code></em>  |   <em class="replaceable"><code>xcent ycent zcent</code></em> }</p></div><p>Specify the center of the fine grid (in a focusing calculation)
				based on a molecule's center or absolute coordinates. The arguments for
				this keyword are:
				</p><div class="variablelist"><dl><dt><span class="term">mol <em class="replaceable"><code>id</code></em></span></dt><dd><p>Center the grid on molecule with ID
								<em class="replaceable"><code>id</code></em>; as assigned in the 
								<a href="#read" title="4.2.1.READ statements"><span><strong class="command">READ</strong></span></a> section.
								Molecule IDs are assigned in the order they're read, starting
								at 1. 
							</p></dd><dt><span class="term"><em class="replaceable"><code>xcent ycent zcent</code></em></span></dt><dd><p>The coordinates (in ) at which the grid is
								centered.  Based on the PDB coordinate frame.</p></dd></dl></div><p>
			</p></li><li><a name="elec-fglen"></a><div class="cmdsynopsis"><p><code class="command">fglen</code>  {<em class="replaceable"><code>xlen ylen zlen</code></em>}</p></div><p>Specify the fine mesh domain lengths in a focusing calculation;
				this may be different in each direction.  This should enclose the
				region of interest in the molecule.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>xlen ylen zlen</code></em></span></dt><dd><p>Grid lengths in the x-, y-, and z-directions in .</p></dd></dl></div><p>
			</p></li><li><a name="elec-gcent"></a><div class="cmdsynopsis"><p><code class="command">gcent</code>  { mol <em class="replaceable"><code>id</code></em>  |   <em class="replaceable"><code>xcent ycent zcent</code></em> }</p></div><p>Specify the center of the grid based on a molecule's center or
				absolute coordinates. The arguments for this keyword are:
				</p><div class="variablelist"><dl><dt><span class="term">mol <em class="replaceable"><code>id</code></em></span></dt><dd><p>Center the grid on molecule with ID
								<em class="replaceable"><code>id</code></em>; as assigned in the 
								<a href="#read" title="4.2.1.READ statements"><span><strong class="command">READ</strong></span></a> section.
								Molecule IDs are assigned in the order they're read, starting
								at 1. 
							</p></dd><dt><span class="term"><em class="replaceable"><code>xcent ycent zcent</code></em></span></dt><dd><p>The coordinates (in ) at which the grid is
								centered.  Based on the PDB coordinate frame.</p></dd></dl></div><p>
			</p></li><li><a name="elec-glen"></a><div class="cmdsynopsis"><p><code class="command">glen</code>  {<em class="replaceable"><code>xlen ylen zlen</code></em>}</p></div><p>Specify the mesh domain lengths; this may be different in each
				direction.  For some invocations of APBS, either this key or 
				<a href="#elec-grid"><span><strong class="command">grid</strong></span></a> must be specified.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>xlen ylen zlen</code></em></span></dt><dd><p>Grid lengths in the x-, y-, and z-directions in .</p></dd></dl></div><p>
			</p></li><li><a name="elec-grid"></a><div class="cmdsynopsis"><p><code class="command">grid</code>  {<em class="replaceable"><code>hx hy hz</code></em>}</p></div><p>Specify the mesh grid spacings; this may be different in each
				direction.  For some invocations of APBS, either this key or 
				<a href="#elec-glen"><span><strong class="command">glen</strong></span></a> must be specified.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>hx hy hz</code></em></span></dt><dd><p>Grid spacings in the x-, y-, and z-directions in
								.</p></dd></dl></div><p>
			</p></li><li><a name="elec-ion"></a><div class="cmdsynopsis"><p><code class="command">ion</code> <br><code class="command">charge</code>  {<em class="replaceable"><code>charge</code></em>}<br><code class="command">charge</code>  {<em class="replaceable"><code>conc</code></em>}<br><code class="command">radius</code>  {<em class="replaceable"><code>radius</code></em>}</p></div><p>Specify the mobile ion species present in the system.  This command
				can be repeated as necessary to specify multiple types of ions;
				however, only the largest ionic radius is used to determine the
				ion-accessibility function. 
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>charge</code></em></span></dt><dd><p>Mobile ion species charge (in
								e<sub>c</sub>)</p></dd><dt><span class="term"><em class="replaceable"><code>conc</code></em></span></dt><dd><p>Mobile ion species concentration (in M)</p></dd><dt><span class="term"><em class="replaceable"><code>radius</code></em></span></dt><dd><p>Mobile ion species radius (in )</p></dd></dl></div><p>
			</p><div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Warning"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="images/warning.png"></td><th align="left">Warning</th></tr><tr><td align="left" valign="top"><p>Note that the old command syntax of
					<span><strong class="command">ion</strong></span>
					 {<em class="replaceable"><code>charge</code></em>}
					 {<em class="replaceable"><code>conc</code></em>}
					 {<em class="replaceable"><code>radius</code></em>}
					is deprecated and will go away "soon".
				</p></td></tr></table></div></li><li><a name="elec-lpbe"></a><div class="cmdsynopsis"><p><code class="command">lpbe</code> </p></div><p>Specifies that the linearized PBE should be solved. Either this
				keyword or
				</p><div class="itemizedlist"><ul type="circle"><li><a href="#elec-npbe"><span><strong class="command">npbe</strong></span></a></li><li><a href="#elec-nrpbe"><span><strong class="command">nrpbe</strong></span></a></li><li><a href="#elec-lrpbe"><span><strong class="command">lrpbe</strong></span></a></li><li><a href="#elec-smpbe"><span><strong class="command">smpbe</strong></span></a></li></ul></div><p>
				must be present (based on the calculation type).</p></li><li><a name="elec-lrpbe"></a><div class="cmdsynopsis"><p><code class="command">lrpbe</code> </p></div><p> Specifies the linearized form of the regularized PBE equation
				(RPBE). The regularized PBE equation replaces the point charge
				distribution with the corresponding Green's function. As a result of
				this replacement, the solution corresponds to the reaction field
				instead of the total potential; the total potential can be recovered by
				adding the appropriate Coulombic terms to the solution. Likewise, this
				equation immediately yields the solvation energy without the need for
				reference calculations. Either this keyword or 
				</p><div class="itemizedlist"><ul type="circle"><li><a href="#elec-npbe"><span><strong class="command">npbe</strong></span></a></li><li><a href="#elec-nrpbe"><span><strong class="command">nrpbe</strong></span></a></li><li><a href="#elec-lrpbe"><span><strong class="command">lrpbe</strong></span></a></li><li><a href="#elec-smpbe"><span><strong class="command">smpbe</strong></span></a></li></ul></div><p>
				must be present (based on the calculation type).
				</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>This function is only available for FEM-based solvers.</p></td></tr></table></div><p>
			</p></li><li><a name="elec-maxsolve"></a><div class="cmdsynopsis"><p><code class="command">maxsolve</code>  { <em class="replaceable"><code>num</code></em> }</p></div><p>Specify the number of times to perform the solve-estimate-refine
				iteration of the finite element solver.  
				See also:  
				<a href="#elec-maxvert"><span><strong class="command">maxvert</strong></span></a>,
				<a href="#elec-targetRes"><span><strong class="command">targetRes</strong></span></a>,
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>num</code></em> </span></dt><dd><p>Maximum number of iterations.</p></dd></dl></div><p>
			</p></li><li><a name="elec-maxvert"></a><div class="cmdsynopsis"><p><code class="command">maxvert</code>  { <em class="replaceable"><code> num </code></em> }</p></div><p>
				Specify the maximum number of vertices to allow during
				solve-estimate-refine cycle of finite element solver.  This places a
				limit on the memory that can be used by the solver.
				See also:  
				<a href="#elec-targetRes"><span><strong class="command">targetRes</strong></span></a>,
				<a href="#elec-maxsolve"><span><strong class="command">maxsolve</strong></span></a>.
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>num</code></em> </span></dt><dd><p>Maximum number of vertices.</p></dd></dl></div><p>
			</p></li><li><a name="elec-mol"></a><div class="cmdsynopsis"><p><code class="command">mol</code>  {<em class="replaceable"><code>id</code></em>}</p></div><p>Specify the molecule for which the PBE is to be solved.  IDs are
				based on the order in which molecules are read by 
				<a href="#read-mol"><span><strong class="command">read mol</strong></span></a> statements,
				starting from 1.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>id</code></em></span></dt><dd><p>The ID of the molecule for which the PBE is to be
								solved.</p></dd></dl></div><p>
			</p></li><li><a name="elec-nlev"></a><div class="cmdsynopsis"><p><code class="command">nlev</code>  {<em class="replaceable"><code>lev</code></em>}</p></div><p>Specify the depth of the multilevel hierarchy used in the multigrid
				solver.  See <a href="#elec-dime"><span><strong class="command">dime</strong></span></a> for a
				discussion of how <span><strong class="command">nlev</strong></span> relates to grid
				dimensions.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>lev</code></em></span></dt><dd><p>Depth of the multigrid hierarchy.</p></dd></dl></div><p>
			</p></li><li><a name="elec-npbe"></a><div class="cmdsynopsis"><p><code class="command">npbe</code> </p></div><p>Specifies that the nonlinear (full) PBE should be solved. Either
				this keyword or 
				</p><div class="itemizedlist"><ul type="circle"><li><a href="#elec-npbe"><span><strong class="command">npbe</strong></span></a></li><li><a href="#elec-nrpbe"><span><strong class="command">nrpbe</strong></span></a></li><li><a href="#elec-lrpbe"><span><strong class="command">lrpbe</strong></span></a></li><li><a href="#elec-smpbe"><span><strong class="command">smpbe</strong></span></a></li></ul></div><p>
				must be present (based on the calculation type).</p></li><li><a name="elec-nrpbe"></a><div class="cmdsynopsis"><p><code class="command">nrpbe</code> </p></div><p> Specifies the nonlinear form of the regularized PBE equation
				(RPBE). The regularized PBE equation replaces the point charge
				distribution with the corresponding Green's function. As a result of
				this replacement, the solution corresponds to the reaction field
				instead of the total potential; the total potential can be recovered by
				adding the appropriate Coulombic terms to the solution. Likewise, this
				equation immediately yields the solvation energy without the need for
				reference calculations. Either this keyword or 
				</p><div class="itemizedlist"><ul type="circle"><li><a href="#elec-npbe"><span><strong class="command">npbe</strong></span></a></li><li><a href="#elec-nrpbe"><span><strong class="command">nrpbe</strong></span></a></li><li><a href="#elec-lrpbe"><span><strong class="command">lrpbe</strong></span></a></li><li><a href="#elec-smpbe"><span><strong class="command">smpbe</strong></span></a></li></ul></div><p>
				must be present (based on the calculation type).
				</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>This function is only available for FEM-based solvers.</p></td></tr></table></div><p>
			</p></li><li><a name="elec-pdie"></a><div class="cmdsynopsis"><p><code class="command">pdie</code>  {<em class="replaceable"><code>diel</code></em>}</p></div><p>Specify the dielectric constant of the biomolecule.  This is
				usually a value between 2 to 20, where lower values consider only
				electronic polarization and higher values consider additional
				polarization due to intramolecular motion.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>diel</code></em></span></dt><dd><p>Biomolecular dielectric constant (unitless)</p></dd></dl></div><p>
			</p></li><li><a name="elec-pdime"></a><div class="cmdsynopsis"><p><code class="command">pdime</code>  {<em class="replaceable"><code>npx npy npz</code></em>}</p></div><p>Specify the processor array to be used in a parallel focusing
				calculation.  The product 
				<em class="replaceable"><code>npx</code></em> 
				<em class="replaceable"><code>npy</code></em> 
				<em class="replaceable"><code>npz</code></em> should be less than or equal to the
				total number of processors with which APBS was invoked (usually via
				<span><strong class="command">mpirun</strong></span>).  If more processors are provided at
				invocation than actually used during the run, the extra processors are
				not used in the calculation.  The processors are tiled across the
				domain in a Cartesian fashion with a specified amount of overlap (see
				<a href="#elec-ofrac"><span><strong class="command">ofrac</strong></span></a>) between each
				processor to ensure continuity of the solution.  Each processor's subdomain will contain the number of grid points specified by the <a href="#elec-dime">dime</a> keyword.
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>npx npy npz</code></em> </span></dt><dd><p>The number of processors to be used in the x-, y- and
								z-directions of the system.
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-ofrac"></a><div class="cmdsynopsis"><p><code class="command">ofrac</code>  {<em class="replaceable"><code>frac</code></em>}</p></div><p>Specify the amount of overlap to include between the individual
				processors meshes in a parallel focusing calculation (see 
				<a href="#elec-ofrac"><span><strong class="command">ofrac</strong></span></a>).  This should be
				a value between 0 and 1.
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>frac</code></em> </span></dt><dd><p>Amount of overlap between processor meshes; a value between
								0 and 1.</p></dd></dl></div><p>
				</p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.png"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top"><p>
						Empirical evidence suggests that an <span><strong class="command">ofrac</strong></span> value
						of 0.1 is sufficient to generate stable energies.  However, this
						value may not be sufficient to generate stable forces and/or good
						quality isocontours.  For example, the following table illustrates
						the change in energies and visual artifacts in isocontours as a
						function of <span><strong class="command">ofrac</strong></span> values for a small peptide 
						(<a href="http://www.rcsb.org/pdb/cgi/explore.cgi?job=chains&amp;pdbId=2PHK" target="_top">2PHK</a>:B).
						</p><div class="table"><a name="id467275"></a><p class="title"><b>Table4.1.Sensitivity of 2PHK:B solvation energy calculations
								to <span>ofrac</span> values.</b></p><div class="table-contents"><table summary="Sensitivity of 2PHK:B solvation energy calculations
								to ofrac values." border="1"><colgroup><col><col><col></colgroup><thead><tr><th><span><strong class="command">ofrac</strong></span> value</th><th>Energy (kJ/mol)</th><th>Visual artifact in  1 kT/e iscontour?</th></tr></thead><tbody><tr><td>0.05</td><td>342.79</td><td>No</td></tr><tr><td>0.06</td><td>342.00</td><td>No</td></tr><tr><td>0.07</td><td>341.12</td><td>Yes</td></tr><tr><td>0.08</td><td>341.14</td><td>Yes</td></tr><tr><td>0.09</td><td>342.02</td><td>Yes</td></tr><tr><td>0.10</td><td>340.84</td><td>Yes</td></tr><tr><td>0.11</td><td>339.67</td><td>No</td></tr><tr><td>0.12</td><td>341.10</td><td>No</td></tr><tr><td>0.13</td><td>341.10</td><td>No</td></tr><tr><td>0.14</td><td>341.32</td><td>No</td></tr><tr><td>0.15</td><td>341.54</td><td>No</td></tr></tbody></table></div></div><p><br class="table-break">
					</p></td></tr></table></div><p>
			</p></li><li><a name="elec-sdie"></a><div class="cmdsynopsis"><p><code class="command">sdie</code>  {<em class="replaceable"><code>diel</code></em>}</p></div><p>Specify the dielectric constant of the solvent.  Bulk water at
				biologically-relevant temperatures is usually modeled with a dielectric
				constant of 78-80.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>diel</code></em></span></dt><dd><p>Solvent dielectric constant (unitless)</p></dd></dl></div><p>
			</p></li><li><a name="elec-sdens"></a><div class="cmdsynopsis"><p><code class="command">sdens</code>  {<em class="replaceable"><code>density</code></em>}</p></div><p>Specify the number of grid points per square-angstrom to use 
				in surface constructions (e.g., molecular
				surface, solvent-accessible surface, etc.). Ignored when srad is 0.0 (see 
				<a href="#elec-srad"><span><strong class="command">srad</strong></span></a>) or srfm is 
				spl2 (see <a href="#elec-srfm"><span><strong class="command">srfm</strong></span></a>).
				There is a direct correlation between this value 
				used for the surface sphere density, the
				accuracy of the surface calculations,, 
				and the APBS calculation time.  APBS
				"suggested" value is 10.0.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>density</code></em></span></dt><dd><p>Surface sphere density (in grid points/<sup>2
							</sup>).</p></dd></dl></div><p>
			</p></li><li><a name="elec-smpbe"></a><div class="cmdsynopsis"><p><code class="command">smpbe</code> <br><code class="command">vol</code>  { <em class="replaceable"><code>volume</code></em> }<br><code class="command">size</code>  { <em class="replaceable"><code>number</code></em> }</p></div><p>
				Specifies that the size-modified PBE should be solved as described by Chu V, et al <em class="citetitle">Biophys J</em>, in press (<a href="http://dx.doi.org/10.1529/biophysj.106.099168" target="_top">doi:10.1529/biophysj.106.099168</a>).
				The parameter <em class="replaceable"><code>radius</code></em> controls the lattice size (in Angstroms) used in the SMPBE formalism; each lattice site has a volume equal to <em class="replaceable"><code>radius</code></em><sup>3</sup>.  The parameter <em class="replaceable"><code>size</code></em> controls the relative size of the ions (in Angstroms) such that each lattice site can contain a single ion of volume <em class="replaceable"><code>radius</code></em><sup>3</sup> or <em class="replaceable"><code>size</code></em> ions of volume <em class="replaceable"><code>radius</code></em><sup>3</sup>/<em class="replaceable"><code>size</code></em>.
				Either this keyword or
				</p><div class="itemizedlist"><ul type="circle"><li><a href="#elec-npbe"><span><strong class="command">npbe</strong></span></a></li><li><a href="#elec-nrpbe"><span><strong class="command">nrpbe</strong></span></a></li><li><a href="#elec-lrpbe"><span><strong class="command">lrpbe</strong></span></a></li><li><a href="#elec-smpbe"><span><strong class="command">smpbe</strong></span></a></li></ul></div><p>
				must be present (based on the calculation type).</p></li><li><a name="elec-srad"></a><div class="cmdsynopsis"><p><code class="command">srad</code>  {<em class="replaceable"><code>radius</code></em>}</p></div><p>Specify the radius of the solvent molecules; this parameter is used
				to define the dielectric function (see 
				<a href="#elec-srfm"><span><strong class="command">srfm</strong></span></a>).  This value is
				usually set to 1.4  for water.  This keyword is ignored when any of the spline-based surfaces are used (e.g., spl2, see <a href="#elec-srfm"><span><strong class="command">srfm</strong></span></a>).
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>radius</code></em></span></dt><dd><p>Solvent radius (in ).</p></dd></dl></div><p>
			</p></li><li><a name="elec-swin"></a><div class="cmdsynopsis"><p><code class="command">swin</code>  {<em class="replaceable"><code>win</code></em>}</p></div><p>Specify the size of the support (i.e., the rate of change) for
				spline-based surface definitions 
				(see <a href="#elec-srfm"><span><strong class="command">srfm</strong></span></a>).  
				Usually 0.3 .
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>win</code></em></span></dt><dd><p>Spline window (in ).</p></dd></dl></div><p>
			</p></li><li><a name="elec-srfm"></a><div class="cmdsynopsis"><p><code class="command">srfm</code>  {<em class="replaceable"><code>flag</code></em>}</p></div><p>
				Specify the model used to construct the dielectric ion-accessibility
				coefficients.  
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>flag</code></em></span></dt><dd><p>
								The coefficient model:
								</p><div class="variablelist"><dl><dt><span class="term">mol</span></dt><dd><p>The dielectric coefficient 
												<img src="images/epsilon_of_x.gif">
												is defined based on 
												a molecular surface definition.  The problem domain is
												divided into two spaces.  The "free volume" space is
												defined by the union of solvent-sized spheres (see 
												<a href="#elec-srad"><span><strong class="command">srad</strong></span></a>)
												which do not overlap with biomolecular atoms.  This
												free volume is assigned bulk solvent dielectric values.
												The complement of this space is assigned biomolecular
												dielectric values.  With a non-zero solvent radius
												(<span><strong class="command">srad</strong></span>), this choice of coefficient
												corresponds to the traditional definition used for PB
												calculations.  When the solvent radius is set to zero,
												this corresponds to a van der Waals surface
												definition.</p><p>The ion-accessibility coefficient
												<img src="images/overline_kappa_2_of_x.gif">
												is defined by an "inflated" van der Waals model.
												Specifically, the radius of each biomolecular atom is
												increased by the radius of the ion species.  The
												problem domain is then divided into two spaces.  The
												space inside the union of these inflated atomic spheres
												is assigned an ion-accessibility value of 0; the
												complement space is assigned bulk ion accessibility
												values.
											</p></dd><dt><span class="term">smol</span></dt><dd><p>
												The dielectric and ion-accessibility coefficients are
												defined as for mol (see above).  However, they are then
												"smoothed" by a 9-point harmonic averaging to somewhat
												reduce sensitivity to the grid setup as described by
												Bruccoleri et al. <em class="citetitle">J Comput Chem</em> 
												18 268-276, 1997 (<a href="http://dx.doi.org/10.1002/(SICI)1096-987X(19970130)18:2&gt;268::AID-JCC11&gt;3.0.CO;2-E" target="_top">doi:10.1002/(SICI)1096-987X(19970130)18:2&gt;268::AID-JCC11&gt;3.0.CO;2-E</a>).
											</p></dd><dt><span class="term">spl2</span></dt><dd><p>
												The dielectric 
												<img src="images/epsilon_of_x.gif">
												and ion-accessibility
												<img src="images/overline_kappa_2_of_x.gif">
												coefficients are defined by a cubic-spline surface as
												described by Im et al, <em class="citetitle">Comp Phys
													Commun</em> 111 (1-3) 59-75, 1998 
												(<a href="http://dx.doi.org/10.1016/S0010-4655(98)00016-2" target="_top">doi:10.1016/S0010-4655(98)00016-2</a>).
												These spline-based surface definitions are very stable
												with respect to grid parameters and therefore ideal for
												calculating forces.  However, they require substantial
												reparameterization of the force field; interested users
												should consult Nina et al, <em class="citetitle">Biophys
													Chem</em> 78 (1-2) 89-96, 1999 
												(<a href="http://dx.doi.org/10.1016/S0301-4622(98)00236-1" target="_top">doi:10.1016/S0301-4622(98)00236-1</a>).
												Additionally, these surfaces can generate unphysical
												results with non-zero ionic strengths; this is an
												on-going area of development.
											</p></dd><dt><span class="term">spl4</span></dt><dd><p>
												The dielectric and ion-accessibility coefficients are 
												defined by a 7th order polynomial. This surface 
												definition has characteristics similar to spl2, but
												provides higher order continuity necessary for stable 
												force calculations with atomic multipole force fields 
												(up to quadrupole).
											</p></dd></dl></div><p>
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-targetRes"></a><div class="cmdsynopsis"><p><code class="command">targetRes</code>  { <em class="replaceable"><code>res</code></em> }</p></div><p>
				Specify the target resolution of the simplices in the mesh; refinement
				will continue until the longest edge of every simplex is below this
				value.  See also:
				<a href="#elec-maxvert"><span><strong class="command">maxvert</strong></span></a>,
				<a href="#elec-maxsolve"><span><strong class="command">maxsolve</strong></span></a>,
				<a href="#elec-targetNum"><span><strong class="command">targetNum</strong></span></a>
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>res</code></em> </span></dt><dd><p>
								Target resolution for longest edges of simplices in mesh (in
								).
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-targetNum"></a><div class="cmdsynopsis"><p><code class="command">targetNum</code>  { <em class="replaceable"><code>num</code></em> }</p></div><p>
				Specify the target number of vertices in the
				<span class="emphasis"><em>initial</em></span> mesh; intiial refinement
				will continue until this number is reached or the the longest edge of
				every simplex is below 
				<a href="#elec-targetNum"><span><strong class="command">targetNum</strong></span>.</a>
				See also:
				<a href="#elec-targetRes"><span><strong class="command">targetRes</strong></span></a>
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>num</code></em> </span></dt><dd><p>
								Target number of vertices in initial mesh.
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-temp"></a><div class="cmdsynopsis"><p><code class="command">temp</code>  { <em class="replaceable"><code>T</code></em> }</p></div><p>Temperature for PBE calculation.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>T</code></em></span></dt><dd><p>Temperature (in K)</p></dd></dl></div><p>
			</p></li><li><a name="elec-useaqua"></a><div class="cmdsynopsis"><p><code class="command">useaqua</code> </p></div><p>This enables <span class="emphasis"><em>experimental</em></span> support for Aqua, a verison of the Holst group <a href="http://www.fetk.org/" target="_top">FEtk PMG</a> multigrid library optimized by <a href="http://koehllab.genomecenter.ucdavis.edu/" target="_top">Patrice Koehl</a> for improved memory usage and speed when solving the Poisson-Boltzmann equation.  <span class="emphasis"><em>This keyword is temporary and will eventually disappear as Aqua becomes the default multigrid solver for APBS.</em></span>
			</p></li><li><a name="elec-usemap"></a><div class="cmdsynopsis"><p><code class="command">usemap</code>  {<em class="replaceable"><code>type</code></em>} {<em class="replaceable"><code>id</code></em>}</p></div><p>Specify pre-calculated coefficient maps to be used in the PB
				calculation.  These must have been input via an earlier 
				<a href="#read" title="4.2.1.READ statements"><span><strong class="command">read map</strong></span></a> statement.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>type</code></em></span></dt><dd><p>
								Specify the type of pre-calculated map to be read in:
								</p><div class="variablelist"><dl><dt><span class="term">diel</span></dt><dd><p>Dielectric function map (as read by <span><strong class="command">read
													map</strong></span> <em class="replaceable"><code>dielx diely
													dielx</code></em>); this causes the
												<a href="#elec-pdie"><span><strong class="command">pdie</strong></span></a>,
												<a href="#elec-sdie"><span><strong class="command">sdie</strong></span></a>,
												<a href="#elec-srad"><span><strong class="command">srad</strong></span></a>, 
												<a href="#elec-swin"><span><strong class="command">swin</strong></span></a>, and
												<a href="#elec-srfm"><span><strong class="command">srfm</strong></span></a>
												parameters and the radii of the biomolecular atoms to be
												ignored when computing dielectric values for the PBE.
											</p></dd><dt><span class="term">kappa</span></dt><dd><p>Mobile ion-accessibility function map (as read by
												<span><strong class="command">read map</strong></span>
												<em class="replaceable"><code>kappa</code></em>); this causes the
												<a href="#elec-swin"><span><strong class="command">swin</strong></span></a> and 
												<a href="#elec-srfm"><span><strong class="command">srfm</strong></span></a>
												parameters and the radii of the biomolecular atoms to be
												ignored when computing mobile ion values for the PBE.
												The 
												<a href="#elec-ion"><span><strong class="command">ion</strong></span></a>
												parameter is not ignored and will still be used.
											</p></dd><dt><span class="term">charge</span></dt><dd><p>Charge distribution map (as read by 
												<span><strong class="command">read map</strong></span>
												<em class="replaceable"><code>charge</code></em>); this causes the
												<a href="#elec-chgm"><span><strong class="command">chgm</strong></span></a>
												parameter and the charges of the biomolecular atoms to
												be ignored when assembling the fixed charge
												distribution for the PBE.
											</p></dd></dl></div><p>
							</p></dd><dt><span class="term"><em class="replaceable"><code>id</code></em></span></dt><dd><p>
								This ID specifies the particular map read in with <span><strong class="command">read
									map</strong></span>.  These IDs are assigned sequentially, starting
								from 1, for each map type read by APBS.
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-usemesh"></a><div class="cmdsynopsis"><p><code class="command">usemesh</code>  {<em class="replaceable"><code>id</code></em>}</p></div><p>Specify the external finite element mesh to be used in the <a href="#fe-manual" title="4.2.2.4.Manual adaptive finite element calculation (fe-manual)">finite element</a> PB calculation.  These must have been input via an earlier <a href="#read" title="4.2.1.READ statements"><span><strong class="command">read mesh</strong></span></a> statement.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>id</code></em></span></dt><dd><p>
								This ID specifies the particular map read in with <span><strong class="command">read
									mesh</strong></span>.  These IDs are assigned sequentially, starting
								from 1, for each mesh read by APBS.
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-write"></a><div class="cmdsynopsis"><p><code class="command">write</code>  {type} {format} {stem}</p></div><p>
				This controls the output of scalar data calculated during the PB run.
				This keyword can be repeated several times to provide various types of
				data.
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>type</code></em> </span></dt><dd><p>
								What type of data to output:
								</p><div class="variablelist"><dl><dt><span class="term">charge</span></dt><dd><p>
												Write out the biomolecular charge distribution in
												units of e<sub>c</sub> (electron charge)
												per Angstrom<sup>3</sup> (multigrid
												only).
											</p></dd><dt><span class="term">pot</span></dt><dd><p>
												Write out the electrostatic potential in units of
												k<sub>b</sub>T/e<sub>c</sub>
												(multigrid and finite element)
											</p></dd><dt><span class="term">smol</span></dt><dd><p>
												Write out the solvent accessibility defined by the
												molecular surface definition (see 
												<a href="#elec-srfm"><span><strong class="command">srfm</strong></span> 
													smol</a>).
												Values are unitless and range from 0 (inaccessible) to 1
												(accessible).  (multigrid and finite element)
											</p></dd><dt><span class="term">sspl</span></dt><dd><p>
												Write out the spline-based solvent accessibility
												(see
												<a href="#elec-srfm"><span><strong class="command">srfm</strong></span> 
													spl2</a>).
												Values are unitless and range from 0 (inaccessible) to
												1 (accessible).  (multigrid and finite element)
											</p></dd><dt><span class="term">vdw</span></dt><dd><p>
												Write out the van der Waals-based solvent
												accessibility (see 
												<a href="#elec-srfm"><span><strong class="command">srfm</strong></span> 
													smol</a>
												with
												<a href="#elec-srad"><span><strong class="command">srad</strong></span>
													smol</a>).  Values are unitless and range from 0
												(inaccessible) to 1 (accessible).  (multigrid and
												finite element)
											</p></dd><dt><span class="term">ivdw</span></dt><dd><p>
												Write out the inflated van der Waals-based ion
												accessibility (see 
												<a href="#elec-srfm"><span><strong class="command">srfm</strong></span> 
													smol</a>).
												Values are unitless and range from 0 (inaccessible) to 1
												(accessible).  (multigrid and finite element)
											</p></dd><dt><span class="term">lap</span></dt><dd><p>
												Write out the Laplacian of the potential
												</p><div class="informalequation"><div><img src="images/lap.gif"></div></div><p>
												in units of
												k<sub>B</sub>T/e<sub>c</sub>/<sup>2</sup>
												(multigrid only).
											</p></dd><dt><span class="term">edens</span></dt><dd><p>
												Write out the "energy density"
												</p><div class="informalequation"><div><img src="images/edens.gif"></div></div><p>
												in units of
												k<sub>B</sub>T/e<sub>c</sub>/<sup>2</sup>
												(multigrid only).
											</p></dd><dt><span class="term">ndens</span></dt><dd><p>
												Write out the mobile ion number density
												</p><div class="informalequation"><div><img src="images/ndens.gif"></div></div><p>
												for <em class="replaceable"><code>m</code></em> ion species
												in units of M (multigrid only).
											</p></dd><dt><span class="term">qdens</span></dt><dd><p>
												Write out the mobile charge density
												</p><div class="informalequation"><div><img src="images/qdens.gif"></div></div><p>
												for <em class="replaceable"><code>m</code></em> ion species in units
												of e<sub>c</sub> M (multigrid only).
											</p></dd><dt><span class="term">dielx</span></dt><dd><p>Write out the dielectric map shifted by 1/2 grid
												spacing in the x-direction (see 
												<a href="#read" title="4.2.1.READ statements"><span><strong class="command">read</strong></span> 
													diel</a>).
												The values are unitless (multigrid only).
											</p></dd><dt><span class="term">diely</span></dt><dd><p>Write out the dielectric map shifted by 1/2 grid
												spacing in the y-direction (see 
												<a href="#read" title="4.2.1.READ statements"><span><strong class="command">read</strong></span> 
													diel</a>).
												The values are unitless (multigrid only).
											</p></dd><dt><span class="term">dielz</span></dt><dd><p>Write out the dielectric map shifted by 1/2 grid
												spacing in the z-direction (see 
												<a href="#read" title="4.2.1.READ statements"><span><strong class="command">read</strong></span> 
													diel</a>).
												The values are unitless (multigrid only).
											</p></dd><dt><span class="term">kappa</span></dt><dd><p>Write out the ion-accessibility kappa map (see 
												<a href="#read" title="4.2.1.READ statements"><span><strong class="command">read</strong></span> 
													kappa</a>).
												The values are in units of
												<sup>-2</sup> (multigrid only).
											</p></dd></dl></div><p>
							</p></dd><dt><span class="term"> <em class="replaceable"><code>format</code></em> </span></dt><dd><p>Specify the format for writing out the data.
								</p><div class="variablelist"><dl><dt><span class="term"> dx </span></dt><dd><p>Write out data in 
												<a href="#opendx-format" title="A.4.OpenDX scalar data format">OpenDX format</a>.
												This is the preferred format for APBS I/O. (multigrid
												and finite element).
											</p></dd><dt><span class="term"> avs </span></dt><dd><p>Write out data in 
												<a href="http://www.avs.com" target="_top">AVS UCD
													format</a>.  (finite element only)
											</p></dd><dt><span class="term"> uhbd </span></dt><dd><p>Write out data in UHBD format.  (multigrid only)
											</p></dd></dl></div><p>
							</p></dd><dt><span class="term"> <em class="replaceable"><code>stem</code></em> </span></dt><dd><p>
								Specify the path for the output; files are written to
								<em class="replaceable"><code>stem</code></em><code class="filename">.XXX</code>, where
								<code class="filename">XXX</code> is determined by the file format (and
								processor rank for parallel calculations).  This pathname should not include spaces.
							</p></dd></dl></div><p>
			</p></li><li><a name="elec-writemat"></a><div class="cmdsynopsis"><p><code class="command">writemat</code>  {type} {stem}</p></div><p>
				This controls the output of the mathematical operators in the PBE as
				matrices in <a href="#hb-format" title="A.3.Harwell-Boeing column-compressed matrix format">Harwell-Boeing format</a>
				(multigrid only)
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>type</code></em> </span></dt><dd><p>
								What type of operator to output:
								</p><div class="variablelist"><dl><dt><span class="term">poission</span></dt><dd><p>Write out the Poisson operator.</p></dd><dt><span class="term">pot</span></dt><dd><p>Write out the Gateaux (functional) derivative of the
												full PBE operator evaluated at the current
												solution.</p></dd></dl></div><p>
							</p></dd><dt><span class="term"> <em class="replaceable"><code>stem</code></em> </span></dt><dd><p>
								Specify the path for the output; files are written to
								<em class="replaceable"><code>stem</code></em><code class="filename">.mat</code>.  This pathname should not include spaces.
							</p></dd></dl></div><p>
			</p></li></ul></div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="apolar"></a>4.2.3.APOLAR statements</h3></div></div></div><div class="cmdsynopsis"><p><code class="command">APOLAR</code>  [name <em class="replaceable"><code>id</code></em>] [<em class="replaceable"><code>keywords</code></em>...]<br><code class="command">END</code> </p></div><p>This section is the main component for apolar solvation calculations in
	APBS runs. There may be several <span><strong class="command">APOLAR</strong></span> sections,
	operating on different molecules or using different parameters for
	multiple runs on the same molecule. The order of the
	<span><strong class="command">APOLAR</strong></span> statement matters (see above); the arguments
	are:
	</p><div class="variablelist"><dl><dt><span class="term"> name <em class="replaceable"><code>id</code></em> </span></dt><dd><p>This optional command allows users to
					assign an alphanumeric string to the
					calculation to facilitate later
					operations (particularly in the 
					<a href="#print" title="4.2.4.PRINT statements"><span><strong class="command">PRINT</strong></span></a> statements).
				</p></dd><dt><span class="term"> <em class="replaceable"><code>keywords</code></em> </span></dt><dd><p>Keywords describing the parameters of the
					apolar calculation.  These are
					described in
					<a href="#apolar-keywords-sect" title="4.2.3.2.Keyword descriptions">Section4.2.3.2, &#8220;Keyword descriptions&#8221;</a>.
				</p></dd></dl></div><p>
</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="apolar-basic"></a>4.2.3.1.Basic apolar solvation calculations</h4></div></div></div><p>
		APBS apolar calculations follow the very generic framework
		described in:
	</p><p>
		Wagoner JA, Baker NA. Assessing implicit models for nonpolar
		mean solvation forces: the importance of dispersion and volume
		terms. Proc Natl Acad Sci USA, 103, 8331-8336, 2006.
		(<a href="http://dx.doi.org/10.1073/pnas.0600118103" target="_top">http://dx.doi.org/10.1073/pnas.0600118103</a>)
	</p><p>In particular, nonpolar solvation potentials of mean force
		(energies) are calculated according to <a href="#eqn-nonpolar-energy" title="Equation4.1.Nonpolar solvation potentials of mean
				force">Equation4.1, &#8220;Nonpolar solvation potentials of mean
				force&#8221;</a>.
		</p><div class="equation"><a name="eqn-nonpolar-energy"></a><p class="title"><b>Equation4.1.Nonpolar solvation potentials of mean
				force</b></p><div class="equation-contents"><div><img src="images/nonpolar-energy.png"></div></div></div><p><br class="equation-break">
		Mean nonpolar solvation forces are calculated according to
		<a href="#eqn-nonpolar-force" title="Equation4.2.Nonpolar solvation
				mean forces">Equation4.2, &#8220;Nonpolar solvation
				mean forces&#8221;</a>.
		</p><div class="equation"><a name="eqn-nonpolar-force"></a><p class="title"><b>Equation4.2.Nonpolar solvation
				mean forces</b></p><div class="equation-contents"><div><img src="images/nonpolar-force.png"></div></div></div><p><br class="equation-break">
		In these equations, 
		gamma (see <a href="#apolar-gamma">gamma</a> below) 
		is the repulsive (hard sphere) solvent surface tension, 
		A is the conformation-dependent solute surface area
		(see <a href="#apolar-srad">srad</a> 
		and <a href="#apolar-srfm">srfm</a> below),
		p (see <a href="#apolar-press">press</a> below) 
		is the repulsive (hard sphere) solvent pressure, 
		V is the conformation-dependent solute volume
		(see <a href="#apolar-srad">srad</a> 
		and <a href="#apolar-srfm">srfm</a> below),
		rho (see <a href="#apolar-bconc">bconc</a> below) 
		is the bulk solvent density, 
		and the integral involves the
		attractive portion (defined in a Weeks-Chandler-Andersen sense)
		of the Lennard-Jones interactions between the solute and the
		solvent integrated over the region of the problem domain
		<span class="emphasis"><em>outside</em></span> the solute volume V
		(see <a href="#apolar-srad">srad</a> 
		and <a href="#apolar-srfm">srfm</a> below).
		Lennard-Jones parameters are taken from APBS parameter files
		(see <a href="#parm-xml-format" title="A.2.2.XML Parameter Format ">SectionA.2.2, &#8220;XML Parameter Format &#8221;</a>) as read in through an
		APBS input file <a href="#read" title="4.2.1.READ statements">READ</a> statement.
	</p><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Important"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="images/important.png"></td><th align="left">Important</th></tr><tr><td align="left" valign="top"><p>All apolar calculations require a <a href="#param-format" title="A.2.Parameter file format">parameter file</a>
			which contains Lennard-Jones radius and well-depth
			parameters for all the atoms in the solute PDB.  This
			parameter file must also contain radius and well-depth
			parameters for water (specifically:  residue "WAT" and
			atom "OW").</p></td></tr></table></div><p>
		Note that the above expressions can easily be reduced to
		simpler apolar solvation formalisms by setting one or more of
		the coefficients (gamma, rho, and p) to zero through the
		keywords below.
	</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="apolar-keywords-sect"></a>4.2.3.2.Keyword descriptions</h4></div></div></div><p>
		This is a list of keywords used in the <span><strong class="command">APOLAR</strong></span> statements of APBS.  
	</p><div class="itemizedlist"><ul type="disc"><li><a name="apolar-bconc"></a><div class="cmdsynopsis"><p><code class="command">bconc</code>  {<em class="replaceable"><code>bulk solvent
						density</code></em>}</p></div><p>Specify the bulk solvent density in
				<sup>-3</sup>. This
				coefficient multiplies the integral term of the
				apolar model discussed above and can be set to
				zero to eliminate integral contributions to the
				apolar solvation calculation.</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>bulk solvent
							density</code></em></span></dt><dd><p>Bulk solvent density
							(in
							<sup>-3</sup>)</p></dd></dl></div></li><li><a name="apolar-calcenergy"></a><div class="cmdsynopsis"><p><code class="command">calcenergy</code>  { <em class="replaceable"><code>flag</code></em> }</p></div><p>
				This optional keyword controls electrostatic
				energy output from an apolar solvation calculation.
				</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p> Note that this option must be used consistently for all
						calculations that will appear in subsequent 
						<a href="#print" title="4.2.4.PRINT statements"><span><strong class="command">PRINT</strong></span></a> statements.
						For example, if the statement <code class="literal">print energy 1 - 2
							end</code> appears in the input file, then both calculations 1
						and 2 must have <span><strong class="command">calcenergy</strong></span> keywords present with
						the same values for <em class="replaceable"><code>flag</code></em>.
					</p></td></tr></table></div><p>
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>flag</code></em> </span></dt><dd><p>Specify the types of energy values to be returned:
								</p><div class="variablelist"><dl><dt><span class="term">no</span></dt><dd><p>(Deprecated) don't calculate any energies.</p></dd><dt><span class="term">total</span></dt><dd><p>Calculate
												and
												return
												total
												apolar energy for
												the entire molecule.</p></dd><dt><span class="term">comps</span></dt><dd><p>Calculate
												and
												return
												total
												apolar energy for
												the entire molecule as well as electrostatic energy
												components for each atom.</p></dd></dl></div><p>
							</p></dd></dl></div><p>
			</p></li><li><a name="apolar-calcforce"></a><div class="cmdsynopsis"><p><code class="command">calcforce</code>  { <em class="replaceable"><code>flag</code></em> }</p></div><p>
				This optional keyword controls apolar force output.
				</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p> Note that this option must be used consistently for all
						calculations that will appear in subsequent 
						<a href="#print" title="4.2.4.PRINT statements"><span><strong class="command">PRINT</strong></span></a> statements.
						For example, if the statement <code class="literal">print force 1 - 2
							end</code> appears in the input file, then both calculations 1
						and 2 must have <span><strong class="command">calcforce</strong></span> keywords present with
						the same values for <em class="replaceable"><code>flag</code></em>.
					</p></td></tr></table></div><p>
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>flag</code></em> </span></dt><dd><p>Specify the types of force values to be returned:
								</p><div class="variablelist"><dl><dt><span class="term">no</span></dt><dd><p>(Deprecated) don't calculate any forces.</p></dd><dt><span class="term">total</span></dt><dd><p>Calculate and return total apolar forces for the entire molecule.</p></dd><dt><span class="term">comps</span></dt><dd><p>Calculate and return total apolar forces for the entire molecule as well as force components for each atom.</p></dd></dl></div><p>
							</p></dd></dl></div><p>
			</p></li><li><a name="apolar-dpos"></a><div class="cmdsynopsis"><p><code class="command">dpos</code>  {<em class="replaceable"><code>displacement</code></em>}</p></div><p>This is the displacement used for
				finite-difference-based calculations of surface
				area derivatives.  I know:  this is a terrible
				way to calculate surface area derivatives --
				we're working on replacing it with an analytic
				version.  In the meantime, please use this
				parameter with caution.  
			</p><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Important"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="images/important.png"></td><th align="left">Important</th></tr><tr><td align="left" valign="top"><p>This parameter is very dependent on <a href="#apolar-sdens">sdens</a>; e.g., smaller values of <code class="literal">dpos</code> require larger values of <a href="#apolar-sdens">sdens</a>.</p></td></tr></table></div><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>dispalcement</code></em></span></dt><dd><p>Finite difference
							displacement for force
							(surface area
							derivative) 
							calculations in units
							of .  </p></dd></dl></div></li><li><a name="apolar-gamma"></a><div class="cmdsynopsis"><p><code class="command">gamma</code>  { <em class="replaceable"><code>value</code></em> }</p></div><p>
				The coefficient (surface tension) for solvent-accesisble surface area
				(SASA) models of apolar solvation.    This term
				can be set to zero to eliminate SASA
				contributions to the apolar solvation
				calculations.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>value</code></em></span></dt><dd><p>SASA-based apolar coefficient (in kJ/mol/).</p></dd></dl></div><p>
			</p></li><li><a name="apolar-grid"></a><div class="cmdsynopsis"><p><code class="command">grid</code>  {<em class="replaceable"><code>hx hy hz</code></em>}</p></div><p>Specify the quadrature grid spacing for volume integral calculations.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>hx hy hz</code></em></span></dt><dd><p>Quadrature spacing in the x-, y-, and z-directions in .</p></dd></dl></div><p>
			</p></li><li><a name="apolar-mol"></a><div class="cmdsynopsis"><p><code class="command">mol</code>  {<em class="replaceable"><code>id</code></em>}</p></div><p>Specify the molecule for which the apolar
				calculation is to be performed.  IDs are based
				on the order in which molecules are read by 
				<a href="#read-mol"><span><strong class="command">read mol</strong></span></a> statements,
				starting from 1.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>id</code></em></span></dt><dd><p>The ID of the
								molecule for
								which the
								apolar
								calculation is
								to be
								performed.</p></dd></dl></div><p>
			</p></li><li><a name="apolar-press"></a><div class="cmdsynopsis"><p><code class="command">press</code>  {<em class="replaceable"><code>solvent pressure</code></em>}</p></div><p>Specify the solvent pressure in kJ
				mol<sup>-1</sup>
				<sup>-3</sup>. This
				coefficient multiplies the volume term of the
				apolar model discussed above and can be set to
				zero to eliminate volume contributions to the
				apolar solvation calculation.</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>solvent pressure</code></em></span></dt><dd><p>Solvent pressure
							(in kJ
							mol<sup>-1</sup>
							<sup>-3</sup>)</p></dd></dl></div></li><li><a name="apolar-sdens"></a><div class="cmdsynopsis"><p><code class="command">sdens</code>  {<em class="replaceable"><code>surface
						discretization density</code></em>}</p></div><p>Specify the number of grid points per square-angstrom to use 
				in surface calculations (e.g., molecular
				surface, solvent accesible surface). Ignored when srad is 0.0 (see 
				<a href="#apolar-srad"><span><strong class="command">srad</strong></span></a>) or srfm is 
				spl2 (see <a href="#apolar-srfm"><span><strong class="command">srfm</strong></span></a>).
				Users beware:  there is a direct correlation
				between the value used for the sphere density,
				the accuracy of the results, and the APBS
				calculation time.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>surface
								discretization density</code></em></span></dt><dd><p>Surface sphere density (in grid points/<sup>2
							</sup>).</p></dd></dl></div><p>
			</p></li><li><a name="apolar-srad"></a><div class="cmdsynopsis"><p><code class="command">srad</code>  {<em class="replaceable"><code>radius</code></em>}</p></div><p>Specify the radius of the solvent molecules; this parameter is used
				to define various solvent-related surfaces and
				volumes (see <a href="#apolar-srfm"><span><strong class="command">srfm</strong></span></a>).
				This value is usually set to 1.4  for
				water.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>radius</code></em></span></dt><dd><p>Solvent radius (in ).</p></dd></dl></div><p>
			</p></li><li><a name="apolar-swin"></a><div class="cmdsynopsis"><p><code class="command">swin</code>  {<em class="replaceable"><code>win</code></em>}</p></div><p>Specify the size of the support (i.e., the rate of change) for
				spline-based surface definitions 
				(see <a href="#apolar-srfm"><span><strong class="command">srfm</strong></span></a>).  
				Usually 0.3 .
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>win</code></em></span></dt><dd><p>Spline window (in ).</p></dd></dl></div><p>
			</p></li><li><a name="apolar-srfm"></a><div class="cmdsynopsis"><p><code class="command">srfm</code>  {<em class="replaceable"><code>flag</code></em>}</p></div><p>
				Specify the model used to construct the
				solvent-related surface and volume
				</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>Under construction:  we're in the
						process of adding additional
						surface definitions.</p></td></tr></table></div><p>
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>flag</code></em></span></dt><dd><p>
								The
								surface/volume model:
								</p><div class="variablelist"><dl><dt><span class="term">sacc</span></dt><dd><p>Solvent-accessible
												(also
												called
												"probe-inflated")
												surface
												and
												volume.
											</p></dd></dl></div><p>
							</p></dd></dl></div><p>
			</p></li><li><a name="apolar-temp"></a><div class="cmdsynopsis"><p><code class="command">temp</code>  { <em class="replaceable"><code>T</code></em> }</p></div><p>Temperature for calculation.
				</p><div class="variablelist"><dl><dt><span class="term"><em class="replaceable"><code>T</code></em></span></dt><dd><p>Temperature (in K)</p></dd></dl></div><p>
			</p></li></ul></div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="print"></a>4.2.4.PRINT statements</h3></div></div></div><div class="cmdsynopsis"><p><code class="command">PRINT</code>  {<em class="replaceable"><code>what</code></em>} [<em class="replaceable"><code>id op id op</code></em>...]<br><code class="command">END</code> </p></div><p>
	This is a very simple section that allows linear combinations of calculated
	properties to be written to standard output.  It has the following variables:
	</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>what</code></em> </span></dt><dd><p>
					Specify which quantities to manipulate/print:
					</p><div class="variablelist"><dl><dt><span class="term"> energy </span></dt><dd><p>
									Print energies as calculated with an earlier
									<a href="#elec-calcenergy"><span><strong class="command">calcenergy</strong></span></a>
									<a href="#elec" title="4.2.2.ELEC statements"><span><strong class="command">ELEC</strong></span></a> command.
								</p><div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Warning"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="images/warning.png"></td><th align="left">Warning</th></tr><tr><td align="left" valign="top"><p>This usage is deprecated and will be replaced in the next release.  Please use "elecEnergy" or "apolEnergy" as appropriate.  For now, this will return the old results of "elecEnergy".</p></td></tr></table></div></dd><dt><span class="term"> force </span></dt><dd><p>
									Print forces as calculated with an earlier
									<a href="#elec-calcforce"><span><strong class="command">calcforce</strong></span></a>
									<span><strong class="command">ELEC</strong></span> command.
								</p><div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Warning"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="images/warning.png"></td><th align="left">Warning</th></tr><tr><td align="left" valign="top"><p>This usage is deprecated and will be replaced in the next release.  Please use "elecForce" or "apolForce" as appropriate.  For now, this will return the old results of "elecEnergy".</p></td></tr></table></div></dd><dt><span class="term"> elecEnergy </span></dt><dd><p>
									Print energies as calculated with an earlier
									<a href="#elec-calcenergy"><span><strong class="command">calcenergy</strong></span></a>
									<a href="#elec" title="4.2.2.ELEC statements"><span><strong class="command">ELEC</strong></span></a> command.
								</p></dd><dt><span class="term"> elecForce </span></dt><dd><p>
									Print forces as calculated with an earlier
									<a href="#elec-calcforce"><span><strong class="command">calcforce</strong></span></a>
									<a href="#elec" title="4.2.2.ELEC statements"><span><strong class="command">ELEC</strong></span></a> command.
								</p></dd><dt><span class="term"> apolEnergy </span></dt><dd><p>
									Print energies as calculated with an earlier
									<a href="#apolar-calcenergy"><span><strong class="command">calcenergy</strong></span></a>
									<a href="#apolar" title="4.2.3.APOLAR statements"><span><strong class="command">APOLAR</strong></span></a> command.
								</p></dd><dt><span class="term"> apolForce </span></dt><dd><p>
									Print forces as calculated with an earlier
									<a href="#apolar-calcforce"><span><strong class="command">calcforce</strong></span></a>
									<a href="#apolar" title="4.2.3.APOLAR statements"><span><strong class="command">APOLAR</strong></span></a> command.
								</p></dd></dl></div><p>
				</p></dd><dt><span class="term"> <em class="replaceable"><code>id</code></em> </span></dt><dd><p>The ID of a particular <span><strong class="command">ELEC</strong></span> calculation as
					specified with the 
					<a href="#elec" title="4.2.2.ELEC statements"><span><strong class="command">ELEC name</strong></span></a>
					<em class="replaceable"><code>id</code></em> command.  If the
					<em class="replaceable"><code>id</code></em> variables are not set explicitly, they
					are assigned sequential integers, starting at 1, based on the order of
					the <span><strong class="command">ELEC</strong></span> statements.
				</p></dd><dt><span class="term"> <em class="replaceable"><code>op</code></em> </span></dt><dd><p>Specify the arthimetic operation to be performed on the calculated
					quantities:
					</p><div class="variablelist"><dl><dt><span class="term"> + </span></dt><dd><p>Addition</p></dd><dt><span class="term"> - </span></dt><dd><p>Subtraction</p></dd></dl></div><p>
				</p></dd></dl></div><p>
</p><p>Given all these options, a typical declaration might look like:</p><div class="example"><a name="id480292"></a><p class="title"><b>Example4.2.PRINT statement example</b></p><div class="example-contents"><pre class="programlisting">
		# Energy change due to binding
		print energy complex - ligand - protein end
		# Energy change due to solvation
		print energy solvated - reference end
		# Solvation energy change due to binding
		print energy 
		complex_solv - complex_ref 
		- ligand_solv + ligand_ref 
		- protein_solv + protein_ref 
		end
	</pre></div></div><br class="example-break"><p>
	See the APBS <code class="filename">examples/</code> directory for more examples.
</p></div></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="other-programs"></a>4.3.Using APBS with other programs</h2></div></div></div><p>APBS was designed to facilitate use with other programs.  This
			section outlines some of the programs with which APBS is known to
			work.  However, it is likely that applications which use APBS have been
			inadvertantly omitted from this list.  If you know of software that uses
			APBS and is not listed here, please contact Nathan Baker 
			<code class="email">&lt;<a href="mailto:baker@biochem.wustl.edu">baker@biochem.wustl.edu</a>&gt;</code>.
		</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="web-sect"></a>4.3.1.Web interfaces</h3></div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id491427"></a>4.3.1.1.Gemstone</h4></div></div></div><p>The Gemstone extension (<a href="http://gemstone.mozdev.org/" target="_top">http://gemstone.mozdev.org/</a>)
					for the Firefox web browser provides a very easy-to-use
					interface to older versions of APBS (0.4.0) with all of the functionality of the
					command-line interface.  This extension currently uses web
					services provided by <a href="http://nbcr.net" target="_top">NBCR</a>).
				</p><p>
					The NBCR Web Services portal (<a href="http://ws.nbcr.net:8080/opal/GetServicesList.do" target="_top">http://ws.nbcr.net:8080/opal/GetServicesList.do</a>) provides an off-site alternative for running computationally-expensive APBS calculations that won't fit on local resources.  This portal is currently running APBS 1.0.0.
				</p><p>
					The NBCR Opal Web Services client for APBS (<a href="http://nbcr.net/services/#Software" target="_top">http://nbcr.net/services/#Software</a>) provides a more basic interface which allows users to execute APBS jobs remotely via Python or build such functionality into their own software.
				</p></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="gui-sect"></a>4.3.2.Graphical user interfaces</h3></div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id491492"></a>4.3.2.1.PyMOL</h4></div></div></div><p>PyMOL (<a href="http://pymol.sourceforge.net/" target="_top">http://pymol.sourceforge.net/</a>)
					is a molecular visualization and animation package which
					provides an interface to APBS.  The APBS plugin to PyMOL
					(developed by Michael George Lerner)  permits isocontour and
					surface map visualization of APBS results.
				</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id491512"></a>4.3.2.2.VMD</h4></div></div></div><p>VMD (<a href="http://www.ks.uiuc.edu/Research/vmd/" target="_top">http://www.ks.uiuc.edu/Research/vmd/</a>)
					is a molecular visualization and animation package which provides an
					interface to APBS.  It permits visualization of APBS results as isocontours, electric field lines, or on 
					biomolecular surfaces.  VMD also a graphical plugin to setup APBS calculations and execute them either
					locally or remotely via BioCoRE.  More information is available at 
					<a href="http://www.ks.uiuc.edu/Research/vmd/plugins/apbsrun/" target="_top">http://www.ks.uiuc.edu/Research/vmd/plugins/apbsrun/</a>.
				</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id491543"></a>4.3.2.3.PMV</h4></div></div></div><p>PMV 
					(<a href="http://www.scripps.edu/~sanner/python" target="_top">http://www.scripps.edu/~sanner/python</a>)
					is a Python-based molecular visualization package which provides an
					interface to APBS.  It not only permits visualization of APBS results
					but it also integrates setup and executation of APBS calculations.
					The PMV/APBS interface 
					(<a href="http://mccammon.ucsd.edu/pmv_apbs/" target="_top">http://mccammon.ucsd.edu/pmv_apbs/</a>)
					is under active development and future versions will offer even more
					setup, visualization, and analysis
					functionality.
				</p><p>The APBS interface is distributed with recent beta versions of
					PMV, avalaible from 
					<a href="http://www.scripps.edu/~sanner/python" target="_top">http://www.scripps.edu/~sanner/python</a>.
					Additional documention for using APBS with PMV is provided at 
					<a href="http://mccammon.ucsd.edu/~jswanson/apbsDoc/command_doc2.html" target="_top">http://mccammon.ucsd.edu/~jswanson/apbsDoc/command_doc2.html</a>.
				</p></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="simulation-sect"></a>4.3.3.Simulation software</h3></div></div></div><p> 
				Robert Konecny (<a href="http://mccammon.ucsd.edu" target="_top">McCammon
					Group</a>) has developed <a href="http://mccammon.ucsd.edu/iapbs/" target="_top">iAPBS</a> (<a href="http://mccammon.ucsd.edu/iapbs/" target="_top">http://mccammon.ucsd.edu/iapbs/</a>),
				an interface between APBS and the simulation packages AMBER,
				CHARMM, and NAMD.  More information is available from the iAPBS
				homepage:  <a href="http://mccammon.ucsd.edu/iapbs/" target="_top">http://mccammon.ucsd.edu/iapbs/
				</a>.
			</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="visualization-sect"></a>4.3.4.Visualization software</h3></div></div></div><p>Electrostatic potentials are commonly visualized in the context of
				biomolecular structure to better understand functional aspects of
				biological systems.  This section describes molecular graphics software
				which can display potentials and other data output from APBS.  Note
				that this set of programs also includes the <a href="#gui-sect" title="4.3.2.Graphical user interfaces">graphical users interfaces</a> listed above.
			</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id491664"></a>4.3.4.1.Dino3D</h4></div></div></div><p>Dino3D (<a href="http://www.dino3d.org/" target="_top">http://www.dino3d.org/</a>
					is a molecular graphics program which can read UHBD-format
					electrostatic data.  APBS can write multigrid results in UHBD format
					(see the <a href="#elec-write"><span><strong class="command">write</strong></span></a>
					<span><strong class="command">ELEC</strong></span> command) and therefore can be used with
					Dino3D.
				</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id491700"></a>4.3.4.2.MOLMOL</h4></div></div></div><p>MOLMOL (<a href="http://www.mol.biol.ethz.ch/wuthrich/software/molmol/" target="_top">http://www.mol.biol.ethz.ch/wuthrich/software/molmol/</a>)
					is a molecular graphics package with an emphasis on NMR-generated
					structural data.  A program is provided with APBS (see
					<code class="filename">tools/mesh</code> and the
					<a href="#conversion-sect" title="3.2.3.1.Conversion">Data conversion tools</a> in this
					manual) which converts OpenDX data to MOLMOL format.
				</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id491735"></a>4.3.4.3.OpenDX</h4></div></div></div><p>OpenDX (<a href="http://www.opendx.org" target="_top">http://www.opendx.org</a>)
					is a general data visualization package which can read APBS output
					using the scripts provided in
					<code class="filename">tools/visualization/opendx</code> (see the discussion
					of <a href="#viz-tools" title="3.2.4.Data visualization">Data visualization tools</a> in this
					manual).  However, as there is no straightforward way to
					visualizate the potential in the context of the atomic structure,
					OpenDX should not a first choice for APBS visualization.
				</p></div></div></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="id502871"></a>Chapter5.Getting help</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="#user-forums">5.1. User Forums</a></span></dt><dt><span class="sect1"><a href="#mailing-lists">5.2. Mailing Lists</a></span></dt><dt><span class="sect1"><a href="#id503070">5.3. Bug and other problems</a></span></dt></dl></div><p>APBS follows an open source software development model and relies
    heavily on the user community for feedback to enhance the software,
    identify bugs, etc. </p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="user-forums"></a>5.1.User Forums</h2></div></div></div><p> The <a href="http://sourceforge.net/projects/apbs" target="_top">SourceForge project page</a> offers many user forums for discussion on APBS topics.  Users are encouraged to post bugs and request for support and features via the following forums:
      </p><div class="itemizedlist"><ul type="disc"><li><p><a href="http://sourceforge.net/tracker/?group_id=148472&amp;atid=771704" target="_top">
	  Bugs</a> - A forum for listing and displaying progress on APBS 
	  bugs.</p></li><li><p><a href="http://sourceforge.net/tracker/?group_id=148472&amp;atid=771705" target="_top">
	  Support Requests</a> - A forum for requesting support for 
	  installation on various architectures and general APBS usage. </p></li><li><p><a href="http://sourceforge.net/tracker/?group_id=144228&amp;atid=758146" target="_top">
	  Feature Requests</a> - A forum for feature requests and other 
	  desired additions to APBS. </p></li></ul></div><p>
   </p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="mailing-lists"></a>5.2.Mailing Lists</h2></div></div></div><p> 
      There are additionally two mailing lists for the APBS software:
      </p><div class="variablelist"><dl><dt><span class="term"> Announcements 
          </span></dt><dd><p>
              This is a very low-traffic list to inform users of new APBS
              releases and APBS-related software (PDB2PQR, etc.).
              news (updates, bugs, etc.) on this low-traffic list.
              </p><div class="itemizedlist"><ul type="disc"><li><p>List information:  
                    <a href="http://lists.sourceforge.net/lists/listinfo/apbs-announce" target="_top">http://lists.sourceforge.net/lists/listinfo/apbs-announce</a>
                  </p></li><li><p>List archives:  
                    <a href="http://sourceforge.net/mailarchive/forum.php?forum=apbs-announce" target="_top">http://sourceforge.net/mailarchive/forum.php?forum=apbs-announce</a>
                  </p></li></ul></div><p>
            </p></dd><dt><span class="term"> User discussion </span></dt><dd><p>
              This higher-traffic list is the primary forum for discussion of
              APBS functionality, usage, possible enhancements, and bugs.
              </p><div class="itemizedlist"><ul type="disc"><li><p>List information:  
                    <a href="http://lists.sourceforge.net/lists/listinfo/apbs-users" target="_top">http://lists.sourceforge.net/lists/listinfo/apbs-users</a>
                  </p></li><li><p>List archives:  <a href="http://sourceforge.net/mailarchive/forum.php?forum=apbs-users" target="_top">http://sourceforge.net/mailarchive/forum.php?forum=apbs-users</a>
                  </p></li></ul></div><p>
            </p></dd></dl></div><p>
    </p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id503070"></a>5.3.Bug and other problems</h2></div></div></div><p> 
      Bugs or potential bugs, problems, etc. should either be posted to the
      <a href="http://sourceforge.net/tracker/?group_id=148472&amp;atid=771704" target="_top"> 
      SourceForge bug tracker forum</a> or reported to the
      apbs-users 
      (<a href="http://lists.sourceforge.net/lists/listinfo/apbs-users" target="_top">http://lists.sourceforge.net/lists/listinfo/apbs-users</a>)
      mailing list.  Please see the 
      <a href="#user-forums" title="5.1.User Forums">user forums</a> or 
      <a href="#mailing-lists" title="5.2.Mailing Lists">mailing list</a> sections of the 
      documentation for more information.
    </p></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="programming-sect"></a>Chapter6.Programming</h2></div></div></div><p>Users who are interested in developing code for or with APBS should
    consult the Programmer's Guide, available in HTML format at
    <code class="filename">
      <a href="../programmer/index.html" target="_top">doc/html/programmer/index.html</a>
    </code>.
  </p></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="format-sect"></a>AppendixA.File formats</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="#pqr-format">A.1. PQR biomolecular structure format</a></span></dt><dd><dl><dt><span class="sect2"><a href="#pqr-flat-format">A.1.1.  PQR flat-file format</a></span></dt><dt><span class="sect2"><a href="#pqr-xml-format">A.1.2. PQR XML Format </a></span></dt></dl></dd><dt><span class="sect1"><a href="#param-format">A.2. Parameter file format</a></span></dt><dd><dl><dt><span class="sect2"><a href="#parm-flat-format">A.2.1. Flat-file format</a></span></dt><dt><span class="sect2"><a href="#parm-xml-format">A.2.2. XML Parameter Format </a></span></dt></dl></dd><dt><span class="sect1"><a href="#hb-format">A.3. Harwell-Boeing column-compressed matrix
			format</a></span></dt><dt><span class="sect1"><a href="#opendx-format">A.4. OpenDX scalar data format</a></span></dt><dd><dl><dt><span class="sect2"><a href="#id504516">A.4.1. Multigrid</a></span></dt><dt><span class="sect2"><a href="#id504780">A.4.2. Finite element</a></span></dt></dl></dd></dl></div><p>This section introduces some of the input and output file formats which
		are used by APBS.</p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="pqr-format"></a>A.1.PQR biomolecular structure format</h2></div></div></div><p>
			The PQR format is the primary input format for biomolecular structure in
			APBS package.
		</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="pqr-flat-format"></a>A.1.1. PQR flat-file format</h3></div></div></div><p>
				This format is a modification of the 
				<a href="http://www.rcsb.org/pdb/info.html#File_Formats_and_Standards" target="_top">PDB format</a>
				which allows users to add charge and radius parameters to existing PDB data
				while keeping it in a format amenable to visualization with standard
				molecular graphics programs.  The origins of the PQR format are somewhat
				uncretain, but has been used by several computational biology software
				programs, including MEAD and AutoDock.  UHBD uses a very similar format
				called QCD.
			</p><p>
				APBS reads very loosely-formatted PQR files:  all fields are
				whitespace-delimited, thereby allowing coordinates which are larger/smaller
				than  999 .  
			</p><p>
				APBS reads data on a per-line basis from PQR files using the following
				format:
				</p><div class="literallayout"><p><br>
					<code class="literal">Field_name</code><code class="literal">Atom_number</code><code class="literal">Atom_name</code><code class="literal">Residue_name</code><em class="replaceable"><code>Chain_ID</code></em><code class="literal">Residue_number</code><code class="literal">X</code><code class="literal">Y</code><code class="literal">Z</code><code class="literal">Charge</code><code class="literal">Radius</code><br>
				</p></div><p>
				where the whitespace is the most important feature of this format.  The
				fields are:
				</p><div class="variablelist"><dl><dt><span class="term"> <code class="literal">Field_name</code> </span></dt><dd><p>A string which specifies the type of PQR entry and should
								either be <code class="literal">ATOM</code> or <code class="literal">HETATM</code> in
								order to be parsed by APBS.</p></dd><dt><span class="term"> <code class="literal">Atom_number</code> </span></dt><dd><p>
								An integer which provides the atom index.
							</p></dd><dt><span class="term"> <code class="literal">Atom_name</code> </span></dt><dd><p>
								A string which provides the atom name.
							</p></dd><dt><span class="term"> <code class="literal">Residue_name</code> </span></dt><dd><p>
								A string which provides the residue name.
							</p></dd><dt><span class="term"> <em class="replaceable"><code>Chain_ID</code></em> </span></dt><dd><p>
								An optional string which provides the chain ID of the atom.
								</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>NOTE:  Chain ID support is a new feature
										of APBS 0.5.0 and later versions.</p></td></tr></table></div><p>
							</p></dd><dt><span class="term"> <code class="literal">Residue_number</code> </span></dt><dd><p>
								An integer which provides the residue index.
							</p></dd><dt><span class="term"> <code class="literal">X Y Z</code> </span></dt><dd><p>
								3 floats which provide the atomic coordiantes.
							</p></dd><dt><span class="term"> <code class="literal">Charge</code> </span></dt><dd><p>
								A float which provides the atomic charge (in electrons).
							</p></dd><dt><span class="term"> <code class="literal">Radius</code> </span></dt><dd><p>
								A float which provides the atomic radius (in ).
							</p></dd></dl></div><p>
				Clearly, this format can deviate wildly from PDB, particularly when large
				coordinate values are used.  However, in order to maintain compatibility
				with most molecular graphics programs, the PDB2PQR utilities provided with
				apbs (see the <a href="#parameterization" title="3.2.1.Parameterization">Parameterization
					section</a>) attempt to preserve the PDB format as much as possible.
			</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="pqr-xml-format"></a>A.1.2.PQR XML Format </h3></div></div></div><p> 
				The PQR XML format was designed to remediate some of the shortcomings
				of the flat-file format.  By use of XML, issues related to extra
				fields in the file or columns merging together can easily be remedied.
				Additionally, APBS will only parse the necessary information from the
				XML file and will ignore all other information, so users wishing to
				store extra data related to a residue or atom can do so inline without
				affecting APBS.
			</p><p> This data format has the following form:
				</p><pre class="programlisting">
					# <em class="replaceable"><code>Comments</code></em>	
					<em class="replaceable"><code>&lt;roottag&gt;</code></em>
					<em class="replaceable"><code>&lt;residue&gt;</code></em>
					...
					<code class="literal">&lt;atom&gt;</code>
					<code class="literal">&lt;x&gt;</code><em class="replaceable"><code>x</code></em><code class="literal">&lt;/x&gt;</code>
					<code class="literal">&lt;y&gt;</code><em class="replaceable"><code>y</code></em><code class="literal">&lt;/y&gt;</code>
					<code class="literal">&lt;z&gt;</code><em class="replaceable"><code>z</code></em><code class="literal">&lt;/z&gt;</code>
					<code class="literal">&lt;charge&gt;</code><em class="replaceable"><code>charge</code></em><code class="literal">&lt;/charge&gt;</code>
					<code class="literal">&lt;radius&gt;</code><em class="replaceable"><code>radius</code></em><code class="literal">&lt;/radius&gt;</code>
					<code class="literal">&lt;/atom&gt;</code>
					...
					<em class="replaceable"><code>&lt;/residue&gt;</code></em>
					...
					<em class="replaceable"><code>&lt;/roottag&gt;</code></em>
				</pre><p>
			</p><p>
				Note that the <code class="literal">residue</code> tag and its elements are
				completely optional - APBS only reads in atom data.  Fields such
				as residue name, chain ID, and other residue-specific data will
				be ignored.
			</p><p>
				The variables in this example are:
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>Comments</code></em> </span></dt><dd><p>Any number of comment lines, each line starting with the "#" symbol</p></dd><dt><span class="term"> <em class="replaceable"><code>roottag</code></em> </span></dt><dd><p>This is the root element of the XML file.  The value is not important to
								APBS - APBS simply checks that it is closed at the end of the file.</p></dd><dt><span class="term"> <em class="replaceable"><code>x</code></em> </span></dt><dd><p>A float giving the x-coordinate of the atom.</p></dd><dt><span class="term"> <em class="replaceable"><code>y</code></em> </span></dt><dd><p>A float giving the y-coordinate of the atom.</p></dd><dt><span class="term"> <em class="replaceable"><code>z</code></em> </span></dt><dd><p>A float giving the z-coordinate of the atom.</p></dd><dt><span class="term"> <em class="replaceable"><code>charge</code></em> </span></dt><dd><p>A float giving the atomic charge (in electrons).</p></dd><dt><span class="term"> <em class="replaceable"><code>atomradius</code></em> </span></dt><dd><p>A float giving the atomic Radius (in ).</p></dd></dl></div><p>
			</p></div></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="param-format"></a>A.2.Parameter file format</h2></div></div></div><p>APBS uses parameter files with the <span><strong class="command"><a href="#parm">READ parm</a></strong></span>
			command. 
		</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="parm-flat-format"></a>A.2.1.Flat-file format</h3></div></div></div><p>The parameter file is a series of lines of the format:
				</p><div class="literallayout"><p><br>
					<em class="replaceable"><code>Residue_name</code></em><em class="replaceable"><code>Atom_name</code></em><em class="replaceable"><code>Charge</code></em><em class="replaceable"><code>Radius</code></em><em class="replaceable"><code>Epsilon</code></em><br>
				</p></div><p>
				where the whitespaces are important and denote separation between the
				fields.  The fields here are:
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>Residue_name</code></em> </span></dt><dd><p>A string giving the residue name, as provided in the PDB file
								to be parameterized.</p></dd><dt><span class="term"> <em class="replaceable"><code>Atom_name</code></em> </span></dt><dd><p>A string giving the atom name, as provided in the PDB file to
								be parameterized.</p></dd><dt><span class="term"> <em class="replaceable"><code>Charge</code></em> </span></dt><dd><p>A float giving the atomic charge (in electrons).</p></dd><dt><span class="term"> <em class="replaceable"><code>Radius</code></em> </span></dt><dd><p>A float giving the atomic Radius (in ).</p></dd><dt><span class="term"> <em class="replaceable"><code>Epsilon</code></em> </span></dt><dd><p>A float giving the Lennard-Jones well depth (in kJ/mol).  This is used for the calculation of
								WCA energies in apolar solvation energies and forces.  We assume that the Lennard-Jones potential
								is defined in the "AMBER style":
								</p><div class="informalequation"><div><img src="images/lennard-jones.png"></div></div><p>
							</p></dd></dl></div><p>
			</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="parm-xml-format"></a>A.2.2.XML Parameter Format </h3></div></div></div><p> This data format has the following form:
				</p><pre class="programlisting">
					# <em class="replaceable"><code>Comments</code></em>	
					<em class="replaceable"><code>&lt;ffname&gt;</code></em>
					<code class="literal">&lt;residue&gt;</code>
					<code class="literal">&lt;name&gt;</code><em class="replaceable"><code>resname</code></em><code class="literal">&lt;/name&gt;</code>
					<code class="literal">&lt;atom&gt;</code>
					<code class="literal">&lt;name&gt;</code><em class="replaceable"><code>atomname</code></em><code class="literal">&lt;/name&gt;</code>
					<code class="literal">&lt;charge&gt;</code><em class="replaceable"><code>atomcharge</code></em><code class="literal">&lt;/charge&gt;</code>
					<code class="literal">&lt;radius&gt;</code><em class="replaceable"><code>atomradius</code></em><code class="literal">&lt;/radius&gt;</code>
					<code class="literal">&lt;epsilon&gt;</code><em class="replaceable"><code>atomepsilon</code></em><code class="literal">&lt;/epsilon&gt;</code>
					<code class="literal">&lt;/atom&gt;</code>
					...
					<code class="literal">&lt;/residue&gt;</code>
					...
					<em class="replaceable"><code>&lt;/ffname&gt;</code></em>
				</pre><p>
				The variables in this example are:
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>Comments</code></em> </span></dt><dd><p>Any number of comment lines, each line starting with the "#" symbol</p></dd><dt><span class="term"> <em class="replaceable"><code>ffname</code></em> </span></dt><dd><p>The name of the forcefield.  This is the root element of the XML file.</p></dd><dt><span class="term"> <em class="replaceable"><code>resname</code></em> </span></dt><dd><p>A string giving the residue name, as provided in the PDB file to be parameterized.</p></dd><dt><span class="term"> <em class="replaceable"><code>atomname</code></em> </span></dt><dd><p>A string giving the atom name, as provided in the PDB file to be parameterized.</p></dd><dt><span class="term"> <em class="replaceable"><code>atomcharge</code></em> </span></dt><dd><p>A float giving the atomic charge (in electrons).</p></dd><dt><span class="term"> <em class="replaceable"><code>atomradius</code></em> </span></dt><dd><p>A float giving the atomic Radius (in ).</p></dd><dt><span class="term"> <em class="replaceable"><code>atomepsilon</code></em> </span></dt><dd><p>A float giving the Lennard-Jones well depth (in kJ/mol).  This is used for the
								calculation of WCA energies in apolar solvation energies and forces.  We assume that the
								Lennard-Jones potential is defined in the "AMBER style": 
								</p><div class="informalequation"><div><img src="images/lennard-jones.png"></div></div><p>
							</p></dd></dl></div><p>
			</p></div></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="hb-format"></a>A.3.Harwell-Boeing column-compressed matrix
			format</h2></div></div></div><p>This is the sparse matrix output format used by APBS for analyses of
			the matrix operators which are constructed during PB solution.  This
			format was implemented so matrix operators could by decomposed with
			SuperLU and ARPACK.
		</p><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Important"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="images/important.png"></td><th align="left">Important</th></tr><tr><td align="left" valign="top"><p>Details of the format are complicated; this section is under
				construction.  
			</p></td></tr></table></div></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="opendx-format"></a>A.4.OpenDX scalar data format</h2></div></div></div><p>We output most discretized scalar data (e.g., potential,
			accessibility, etc.) from APBS in the data format used by the OpenDX
			software package
			(<a href="http://www.opendx.org" target="_top">http://www.opendx.org</a>).  The
			OpenDX data format is very flexible; the following sections describe the
			application of this format for APBS multigrid and finite element
			datasets.
		</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id504516"></a>A.4.1.Multigrid</h3></div></div></div><p>
				This data format has the following form:
				</p><pre class="programlisting">
					# <em class="replaceable"><code>Comments</code></em>
					<code class="literal">object 1 class gridpositions counts</code> <em class="replaceable"><code>nx ny nz</code></em>
					<code class="literal">origin</code> <em class="replaceable"><code>xmin ymin zmin</code></em>
					<code class="literal">delta</code> <em class="replaceable"><code>hx</code></em> 0.0 0.0
					<code class="literal">delta</code> 0.0 <em class="replaceable"><code>hy</code></em> 0.0 
					<code class="literal">delta</code> 0.0 0.0 <em class="replaceable"><code>hz</code></em>
					<code class="literal">object 2 class gridconnections counts</code> <em class="replaceable"><code>nx ny nz</code></em>
					<code class="literal">object 3 class array type double rank 0 times</code> <em class="replaceable"><code>n data follows</code></em>
					<em class="replaceable"><code>u(0,0,0) u(0,0,1) u(0,0,2)</code></em>
					...
					<em class="replaceable"><code>u(0,0,nz-3) u(0,0,nz-2) u(0,0,nz-1)</code></em>
					<em class="replaceable"><code>u(0,1,0) u(0,1,1) u(0,1,2)</code></em>
					...
					<em class="replaceable"><code>u(0,1,nz-3) u(0,1,nz-2) u(0,1,nz-1)</code></em>
					...
					<em class="replaceable"><code>u(0,ny-1,nz-3) u(0,ny-1,nz-2) u(0,ny-1,nz-1)</code></em>
					<em class="replaceable"><code>u(1,0,0) u(1,0,1) u(1,0,2)</code></em>
					...
					<code class="literal">attribute "dep" string "positions"</code>
					<code class="literal">object "regular positions regular connections" class field</code>
					<code class="literal">component "positions" value 1</code>
					<code class="literal">component "connections" value 2</code>
					<code class="literal">component "data" value 3</code>
				</pre><p>
				The variables in this example are:
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>Comments</code></em> </span></dt><dd><p>Any number of comment lines, each line starting with the
								"#" symbol</p></dd><dt><span class="term"> <em class="replaceable"><code>nx ny nz</code></em> </span></dt><dd><p>
								The number of grid points in the x-, y-, and z-directions.
							</p></dd><dt><span class="term"> <em class="replaceable"><code>xmin ymin zmin</code></em> </span></dt><dd><p>
								The coordinates of the grid lower corner.
							</p></dd><dt><span class="term"> <em class="replaceable"><code>hx hy hz</code></em> </span></dt><dd><p>
								The grid spacings in the x-, y-, and z-directions.
							</p></dd><dt><span class="term"> <em class="replaceable"><code>n</code></em> </span></dt><dd><p>
								The total number of grid points; 
								<em class="replaceable"><code>n</code></em> =
								<em class="replaceable"><code>nx</code></em> *
								<em class="replaceable"><code>ny</code></em> *
								<em class="replaceable"><code>nz</code></em> 
							</p></dd><dt><span class="term"> <em class="replaceable"><code>u(*,*,*)</code></em> </span></dt><dd><p>
								The data values, ordered with the z-index increasing most
								quickly, followed by the y-index, and then the x-index.
							</p></dd></dl></div><p>
			</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id504780"></a>A.4.2.Finite element</h3></div></div></div><p>For finite element solutions, the OpenDX format takes the following
				form:
				</p><pre class="programlisting">
					<code class="literal">object 1 class array type float rank 1 shape 3 items</code> <em class="replaceable"><code>N</code></em>
					<em class="replaceable"><code>v1x v1y v1z</code></em>
					<em class="replaceable"><code>v2x v2y v2z</code></em>
					...
					<em class="replaceable"><code>vNx vNy vNz</code></em>
					<code class="literal">object 2 class array type int rank 1 shape 4 items</code> <em class="replaceable"><code>M</code></em>
					<em class="replaceable"><code>s1a s1b s1c s1d</code></em>
					<em class="replaceable"><code>s2a s2b s2c s2d</code></em>
					...
					<em class="replaceable"><code>sMa sMb sMc sMd</code></em>
					<code class="literal">attribute "element type" string "tetrahedra"</code>
					<code class="literal">object 3 class array type float rank 0 items</code> <em class="replaceable"><code>N</code></em>
					<em class="replaceable"><code>u1</code></em>
					<em class="replaceable"><code>u2</code></em>
					...
					<em class="replaceable"><code>uN</code></em>
					<code class="literal">attribute "dep" string "positions"</code>
					<code class="literal">object "irregular positions irregular connections" class field</code>
					<code class="literal">component "positions" value 1</code>
					<code class="literal">component "connections" value 2</code>
					<code class="literal">component "data" value 3</code>
					<code class="literal">end</code>
				</pre><p>
				where the variables are:
				</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>N</code></em></span></dt><dd><p>Number of vertices</p></dd><dt><span class="term"> <em class="replaceable"><code>vix viy viz</code></em></span></dt><dd><p>Coordinates of vertex <em class="replaceable"><code>i</code></em></p></dd><dt><span class="term"> <em class="replaceable"><code>M</code></em></span></dt><dd><p>Number of simplices</p></dd><dt><span class="term"> <em class="replaceable"><code>sia sib sic sid</code></em></span></dt><dd><p>
								IDs of vertices in simplex <em class="replaceable"><code>i</code></em>
							</p></dd><dt><span class="term"> <em class="replaceable"><code>ui</code></em></span></dt><dd><p>
								Data value associated with vertex <em class="replaceable"><code>i</code></em>
							</p></dd></dl></div><p>
			</p></div></div></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="license-sect"></a>AppendixB.License</h2></div></div></div><p>APBS is covered under the <a href="http://www.opensource.org/licenses/bsd-license.php" target="_top">New BSD open source license</a>,
which basically means you can copy it, change it, use subsets of it,
redistribute it, etc.; <span class="emphasis"><em>however</em></span>, you need to give credit to
the original source.
</p><p>Here is the specific licensing information:</p><div class="blockquote"><blockquote class="blockquote"><p>
		</p><div class="literallayout"><p>APBS--AdaptivePoisson-BoltzmannSolver<br>
NathanA.Baker(baker@biochem.wustl.edu)<br>
Dept.ofBiochemistryandMolecularBiophysics<br>
CenterforComputationalBiology<br>
WashingtonUniversityinSt.Louis</p></div><p>
	</p><p>Additional contributing authors listed in the <a href="#authors">Contributing Authors chapter</a>.</p><div class="literallayout"><p>Copyright(c)2002-2008,WashingtonUniversityinSt.Louis.<br>
PortionsCopyright(c)2002-2008.NathanA.Baker<br>
PortionsCopyright(c)1999-2002.TheRegentsoftheUniversityofCalifornia.<br>
PortionsCopyright(c)1995.MichaelHolst.</p></div><p> All rights reserved. </p><p> Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
		</p><div class="itemizedlist"><ul type="disc"><li>Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.</li><li>Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.</li><li> Neither the name of Washington University in St. Louis nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.</li></ul></div><p>
	</p><p> THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</p></blockquote></div></div></div></body></html>