Compare commits
1201 Commits
patch_26Ja
...
patch_1Sep
| Author | SHA1 | Date | |
|---|---|---|---|
| 2b9646097c | |||
| f58088ae61 | |||
| 21893539cb | |||
| dd101db79c | |||
| 81ba181349 | |||
| 6195b3c0f6 | |||
| de0fdbed6c | |||
| dea92fbf52 | |||
| 6db3bd87ee | |||
| b6c93f96cf | |||
| 7b7a5076d0 | |||
| 1536eb5de5 | |||
| f7a0a6eb70 | |||
| d80a6cbd31 | |||
| c4b37039ab | |||
| b52efa2850 | |||
| e88ff8d6f9 | |||
| 97edf90a73 | |||
| 12150ffa73 | |||
| 57aafba7c3 | |||
| cdfb1aa043 | |||
| b80752a40c | |||
| 79d5ca669d | |||
| 26c15140be | |||
| 090c792d90 | |||
| 24c00b1f7a | |||
| 5a0c3aea8a | |||
| d1a0c040c9 | |||
| f5b8f722ee | |||
| 39e51df2c0 | |||
| c895df73d6 | |||
| 4dc1195cd8 | |||
| 35fd82b602 | |||
| c5ce3ffe60 | |||
| aa1ce09b12 | |||
| f945d4567d | |||
| 44ccdb86df | |||
| 2e6a928aa3 | |||
| 6f66e6c454 | |||
| d671a04274 | |||
| bf7cff73d4 | |||
| 9e85b3178a | |||
| b11fe2eddb | |||
| 7ddcb6812b | |||
| 76cd61350d | |||
| fa3c0c61d6 | |||
| c46d5ff422 | |||
| dd67989c76 | |||
| 00aafef1a8 | |||
| 7175abcc71 | |||
| e34b20405c | |||
| 1d4d2155a2 | |||
| cee87d7a54 | |||
| 60e14f1490 | |||
| 81e7d4a942 | |||
| 0b3f1b8a15 | |||
| b209a4e246 | |||
| 27553283c3 | |||
| df56b2d6a4 | |||
| c6d923b6c8 | |||
| 6d24be8bb7 | |||
| 52bec0f380 | |||
| 8c16ea1bfc | |||
| c8741f3a01 | |||
| 2a7d2dee36 | |||
| f68c6254d4 | |||
| da01be7c18 | |||
| 146aa4cdbd | |||
| 2f3747eb6e | |||
| 2bc6ad80d4 | |||
| f9a515efd3 | |||
| 5b55744209 | |||
| 0dc3cbaa8a | |||
| ce62c41252 | |||
| 4e97b57508 | |||
| 7f437d7690 | |||
| 77a628e4ef | |||
| f01103dd08 | |||
| 81f4d7ecb5 | |||
| 210a77c5a0 | |||
| 3e9b41c6b7 | |||
| 6780c73907 | |||
| be25a7d9a4 | |||
| 691d1b730d | |||
| 95ece8a6c0 | |||
| b7b1257b01 | |||
| 30431d4edb | |||
| 8a7a831bd6 | |||
| c53a84a967 | |||
| b7b62f6893 | |||
| d2b0c287d2 | |||
| b3244f9c98 | |||
| 8bba29d91e | |||
| 135b1650f1 | |||
| 0a54c34e34 | |||
| a8f6a95cba | |||
| e0f9a7c34c | |||
| aaf17bde3f | |||
| 5ad8a3332d | |||
| ca7a3a6316 | |||
| 163ed27618 | |||
| 23ca0099f7 | |||
| 59ac6ef573 | |||
| 2fa16bcd4c | |||
| e84b6d8067 | |||
| 96d3712817 | |||
| b395ef00b4 | |||
| 5cd1dc93dc | |||
| d3169eeab3 | |||
| 71553cf732 | |||
| 93190a548a | |||
| 72f50c91ee | |||
| 408d9d99a9 | |||
| 8431ca5fec | |||
| 13f2d39f55 | |||
| 9bfd9267fa | |||
| 7d0d701eaf | |||
| 841a92c7fa | |||
| 85120842dd | |||
| 3ebf561e0d | |||
| ffb778cf9b | |||
| f3850da9fe | |||
| 7edb294b44 | |||
| e7d9aabca6 | |||
| e3973796ba | |||
| c494ec35e2 | |||
| 6d0a228624 | |||
| 8e834d8be1 | |||
| 8f59c0e188 | |||
| acf6d54ec1 | |||
| 0427f6205e | |||
| 72419b6313 | |||
| da7a5f55d3 | |||
| 934cbbbeca | |||
| 2806f070a4 | |||
| 715c797df0 | |||
| fd6e11f821 | |||
| f7a243a4d9 | |||
| f0d286358e | |||
| 51a06334ad | |||
| aa5ea95a0f | |||
| 60c67b07dc | |||
| 0231cc38a3 | |||
| c3c9f357fd | |||
| 76fb4e0815 | |||
| d3fa882280 | |||
| 557e5b964a | |||
| 633ca33f2f | |||
| 6716de5320 | |||
| f2023431f6 | |||
| a59b7e4d56 | |||
| 2eaea2d274 | |||
| 1ddace4dba | |||
| af3d0ca381 | |||
| aa60ef6ed8 | |||
| a71f5a0c20 | |||
| c24e316baa | |||
| 2c6e177d5c | |||
| 126d9cd3bc | |||
| 7b2182833f | |||
| 1afab981b0 | |||
| 1af937e99d | |||
| 4e0a249e27 | |||
| edc756a65f | |||
| 8d485ea128 | |||
| f4b6b67f6e | |||
| 8ed881947f | |||
| a477f26477 | |||
| b1b399d5c3 | |||
| 74deeeca58 | |||
| c010edc4fd | |||
| 3d1d0c58c7 | |||
| 00474ab09d | |||
| 733ea61bf1 | |||
| 5c13b087e4 | |||
| ec23aef20b | |||
| 61b1487cbd | |||
| e8e9ea8392 | |||
| 3449d42267 | |||
| e53583d9c6 | |||
| c88d1e5510 | |||
| 551001f172 | |||
| 5dbe2df854 | |||
| 427ca88dd4 | |||
| 3f83396837 | |||
| 59db5f6a17 | |||
| 1749d643c7 | |||
| f037f89f5f | |||
| 1b704bab18 | |||
| c98f6140e7 | |||
| 5031f5b807 | |||
| 9d0d90c038 | |||
| 66154e8a8b | |||
| d2f76ae394 | |||
| 3cd597e948 | |||
| eca61226c2 | |||
| fac3e3daa2 | |||
| 72e5f537c8 | |||
| 84065dde21 | |||
| bdd2f3a6b2 | |||
| a351977c59 | |||
| 8499e72cdc | |||
| ef9fb944c7 | |||
| 187a80be77 | |||
| 488609a5fd | |||
| 01bcb79bdc | |||
| babba1870e | |||
| 355aad9691 | |||
| a99e3ef4f0 | |||
| c95db97b83 | |||
| ec42a60587 | |||
| ee6cac826e | |||
| f181a0bfab | |||
| 52a1c54d50 | |||
| fcf9607a66 | |||
| 2961ba7ebb | |||
| e2ad4fa745 | |||
| acbc60319f | |||
| e6f5f77edf | |||
| 864fd9cd87 | |||
| 4d65c327f5 | |||
| 81f342aafa | |||
| c3d9786616 | |||
| 7ccb0d37cd | |||
| 03cd4c5255 | |||
| 148364949e | |||
| 17aff29fe2 | |||
| f96b9e0dcf | |||
| a9eaeb4d95 | |||
| 5cbaf7ca1d | |||
| 02572a4099 | |||
| 49b4cf9a77 | |||
| 49e6c2eb7d | |||
| 1b34bec81a | |||
| a92d792537 | |||
| 9df61b642e | |||
| 3c88b2a980 | |||
| 085cbee116 | |||
| 4ad9528999 | |||
| 358915d16e | |||
| d9186c8fde | |||
| bc5186bc30 | |||
| c083d5d6f3 | |||
| c3a2ed0d1b | |||
| 23033404b0 | |||
| 3c3baf34c4 | |||
| 8bc3184611 | |||
| 050a82af58 | |||
| 99f5f82b02 | |||
| a3885b78ad | |||
| 08c920029f | |||
| 2411192ab4 | |||
| 5ee2c31038 | |||
| bda0730169 | |||
| 1c1a1db366 | |||
| 80e4448614 | |||
| 385c6f7f2b | |||
| fc1be074b2 | |||
| 7605f72c9a | |||
| 22ecd9b8d2 | |||
| 7dd5068740 | |||
| fa0f8a9e2a | |||
| d6f05ea309 | |||
| b6385d6ce2 | |||
| 2978cce8db | |||
| 9991f679ae | |||
| fc2e8b3c5e | |||
| bb87bd4ac7 | |||
| d50b62837b | |||
| c64424754d | |||
| 992ce79701 | |||
| c549a16a85 | |||
| 140182fb0b | |||
| 742eee1966 | |||
| 4812d4c659 | |||
| 95d9d32307 | |||
| f50a757dc6 | |||
| 01f5136584 | |||
| fa1f38596c | |||
| 23540cfc94 | |||
| fdb5ccefc7 | |||
| 629f112915 | |||
| acd315e97a | |||
| d7355801df | |||
| 4ec07422f0 | |||
| b15f75d37b | |||
| 5e841bfe15 | |||
| 3f297382ac | |||
| d079b2f758 | |||
| 54f2b02ac8 | |||
| 0a6e9c8bf6 | |||
| b85979503f | |||
| c7e218f310 | |||
| 335ef11a7b | |||
| 296e572e69 | |||
| cc9b3864bf | |||
| d5dcb3d329 | |||
| c07adac22d | |||
| e4e1252152 | |||
| 842dc1b58c | |||
| bbb4d63db9 | |||
| 1c92eecea7 | |||
| a04711b21f | |||
| e084d4dad6 | |||
| 522bc13d67 | |||
| 14f1d646ad | |||
| 3b1134c164 | |||
| 4d4c03a1e4 | |||
| e5405cdb04 | |||
| 8a1db83b73 | |||
| a566419ca6 | |||
| fdd3d802f0 | |||
| a86b0d4c1b | |||
| 7f1789a0c4 | |||
| bfb449cec9 | |||
| de45a46529 | |||
| 32ca58bdf2 | |||
| 111786e92e | |||
| 132cee9840 | |||
| 609c8b1e87 | |||
| 9988030409 | |||
| fc36754ca2 | |||
| 3a46c34c2f | |||
| cb935730c0 | |||
| 983eb0e80d | |||
| fc6c10c9a9 | |||
| a3a0c9b144 | |||
| b64849d574 | |||
| e58bcd8b4a | |||
| ef2f4980e9 | |||
| d3a45f6d50 | |||
| d0cc1dfbb8 | |||
| de8d417aec | |||
| 0af9203fdc | |||
| 6b19016deb | |||
| c24fca61f3 | |||
| 01e848387a | |||
| 734729b0a4 | |||
| a419c7c57c | |||
| 69d97fa60c | |||
| a9ff593763 | |||
| ddc9621325 | |||
| f717a70638 | |||
| f7f4a24930 | |||
| 338fc28970 | |||
| 5a1e020bf0 | |||
| c8939d8df6 | |||
| cdac5f496c | |||
| 8c9db3ea00 | |||
| e30c5fc956 | |||
| c29e8fba9b | |||
| 8d592f4b9e | |||
| c9a0d38a3e | |||
| b5e9e90bb6 | |||
| 92395e9bb4 | |||
| ea2b01e83b | |||
| 34fe2273f6 | |||
| 77c60189b8 | |||
| 1c6533e53d | |||
| 68206079da | |||
| 71ddcaf0b6 | |||
| fe888e4622 | |||
| b0be8b24ea | |||
| 16fc2d6fe1 | |||
| 7193fffe0d | |||
| 4339379948 | |||
| 23925b3a57 | |||
| 423e3b6389 | |||
| 87af3b1fd9 | |||
| 8be6d5bfd8 | |||
| a62eb43791 | |||
| 33be51af54 | |||
| 47649ff50f | |||
| 0423971205 | |||
| 4ee7c6f5ca | |||
| 7f63c09667 | |||
| a5234d7aea | |||
| fa469ae1d0 | |||
| e493b6a648 | |||
| be8360ac4b | |||
| 4de9cec1b6 | |||
| 8c3f6947ad | |||
| 894e0c3cf5 | |||
| 09ad293425 | |||
| e625e79171 | |||
| f1088a5003 | |||
| d451dbb1a0 | |||
| 6eddc1a2ee | |||
| 1bf1cb150f | |||
| ea4f16bd79 | |||
| 9fa4588eb7 | |||
| f5440a777b | |||
| 92831f185b | |||
| 8e279d4ec8 | |||
| cbd8f99754 | |||
| b720f39163 | |||
| ff761d639a | |||
| d2f7f4843a | |||
| 7e42af18bc | |||
| 74d63c24fd | |||
| 769870cfc9 | |||
| e0521f27b4 | |||
| 5eb5391b20 | |||
| d3b8e688c9 | |||
| 67d474df2a | |||
| d0a397d6cb | |||
| f670dba3d0 | |||
| 6fc0a94e87 | |||
| 5c0c8bb4cd | |||
| 9eeb97b039 | |||
| 9ca9b5e2ff | |||
| db73eca29f | |||
| 2d1941ed9b | |||
| e634c5a2de | |||
| 22f3db4723 | |||
| a1574fc03d | |||
| d68fb1cbb8 | |||
| 060e32973e | |||
| a4a15f24bd | |||
| 883b7aaa0e | |||
| 1fff30af90 | |||
| a490e04d24 | |||
| b445f8eadf | |||
| b79044d4f6 | |||
| 711afe5062 | |||
| 3bf2c60276 | |||
| d5119b2d75 | |||
| b2b621a2e1 | |||
| b5250d11f6 | |||
| 9dad95d101 | |||
| f6faad335c | |||
| 5548704700 | |||
| e0939ac795 | |||
| d5921e9fb9 | |||
| aa3f4b7690 | |||
| 38075455b6 | |||
| fa30635465 | |||
| 0c2f7c74be | |||
| 91bce7ccf9 | |||
| d0470799ac | |||
| 076990c28a | |||
| 661e51b607 | |||
| d076040471 | |||
| 2f9c0a3b8e | |||
| b9d213ee2b | |||
| fa3c7727e1 | |||
| 9fec8a0470 | |||
| b889776557 | |||
| 8fca667e4b | |||
| f7077d9672 | |||
| f89a7266bf | |||
| 1257955662 | |||
| 1370385c8c | |||
| 2240c3d7d3 | |||
| 4fcbd58d5a | |||
| c2c6dc1458 | |||
| 18983c307e | |||
| 25a5d12af3 | |||
| 05fbf93455 | |||
| 73b948dcfc | |||
| 374eef2b17 | |||
| dc7243838b | |||
| 57d5cfede3 | |||
| feb500b526 | |||
| a714b57741 | |||
| c5430b0a26 | |||
| c081d383d1 | |||
| f8364342c2 | |||
| 488d1b7a79 | |||
| dadd1c8b4d | |||
| 60c3f3d64c | |||
| 7a4a569859 | |||
| 4fc3f4f7e5 | |||
| f092da80a9 | |||
| b0ddabbcde | |||
| b9029ada77 | |||
| de3157f720 | |||
| 0c6a751751 | |||
| 612b44a895 | |||
| 684b7334a5 | |||
| 1fc2eb1e3e | |||
| e69ef56f10 | |||
| 7dc380b113 | |||
| f47aaa5f3c | |||
| 5e165e6782 | |||
| 02625b2855 | |||
| 1a77135ed6 | |||
| f45c7e1fb0 | |||
| 0cfe8980d4 | |||
| 2988508cee | |||
| 15c596153a | |||
| e13c94ed4f | |||
| 812f1a8fab | |||
| 218bc92c82 | |||
| ffa906de6f | |||
| cccf72a21d | |||
| 87c028ed02 | |||
| bb47fa8783 | |||
| c79dc53c6a | |||
| 72a1364d85 | |||
| 198fe7ecd7 | |||
| 84b530cca1 | |||
| 50c9167913 | |||
| d2610d9e7c | |||
| 326a8a1289 | |||
| b5300724bb | |||
| e129f18e6f | |||
| 8c54fcd1b6 | |||
| f5047ac3c7 | |||
| 164cedf353 | |||
| 3c329d1707 | |||
| b687d16177 | |||
| 9d3e34e492 | |||
| 8988b692a3 | |||
| c97415aefa | |||
| a9f3f90025 | |||
| 9b8de3ba29 | |||
| cd88b31450 | |||
| 9b9f6d6fe2 | |||
| c1b0b1b3f9 | |||
| bc0241576f | |||
| 2a6f026853 | |||
| 8728a8ddae | |||
| 9aa450b832 | |||
| 0588c382f0 | |||
| d3c90f3c14 | |||
| b62d526cc9 | |||
| 1a29048940 | |||
| 0a6b3f8790 | |||
| 7227bc415d | |||
| a4bc233d86 | |||
| 5c5b4ffadb | |||
| 30177c4eae | |||
| 178eff237b | |||
| 576b7f1d97 | |||
| 86369fec6b | |||
| 79341ac5d1 | |||
| 66945294a9 | |||
| 9a7207e34c | |||
| d41c617d1d | |||
| 1ec9e588ff | |||
| 3c7417fb59 | |||
| 34cfc7bd51 | |||
| c98bb7fa5f | |||
| 77ca68a2b4 | |||
| 06fe703eed | |||
| 8500a197ae | |||
| 1f17e8ebbb | |||
| fcc387f232 | |||
| e7634a44f4 | |||
| 3214d639aa | |||
| 0ad66ecb89 | |||
| e139a7fd45 | |||
| d7646aeeed | |||
| 5f9341813d | |||
| 8441307185 | |||
| 720af5c360 | |||
| eeff0b8633 | |||
| 32b967ed9c | |||
| 3d066283b6 | |||
| 29e60fa53a | |||
| 11751521e7 | |||
| 7a05d87f7c | |||
| b01143102d | |||
| e530ba46f4 | |||
| 420db44596 | |||
| cfeb9b5ba5 | |||
| 0c805d0b70 | |||
| 6b289b0794 | |||
| 078f2a0a47 | |||
| bdd908c303 | |||
| b45a95107d | |||
| 9f852f5f58 | |||
| fea28d8028 | |||
| afed8bb978 | |||
| 03c93b31d6 | |||
| d3f31547f9 | |||
| 7c7468ffc2 | |||
| bab292b551 | |||
| daa77176ad | |||
| 8f18c284d3 | |||
| 06915162b0 | |||
| a849f35dcd | |||
| 4c69bbcf5c | |||
| dd44189d1f | |||
| 2f6bbcfbbc | |||
| 2686b7f830 | |||
| d3a863e7af | |||
| 64e8000720 | |||
| c160d0cd5e | |||
| 9222278fb5 | |||
| bdf03757e6 | |||
| c81bc108f9 | |||
| 10d2e7c380 | |||
| bd83c7c7f9 | |||
| d51cee1b82 | |||
| be476c9e1d | |||
| 0ecdb99885 | |||
| 00ce15d043 | |||
| 5c1d17d1c0 | |||
| afd4f5b0a6 | |||
| 31a734b03d | |||
| 2e728972e2 | |||
| 36c8b26fef | |||
| 99ef36f440 | |||
| a2edef7c9c | |||
| 1f9504c546 | |||
| 04ebd81ac5 | |||
| 5cb56796a2 | |||
| 0c1b87c8cf | |||
| cd67eaa5f4 | |||
| 18dee3f78e | |||
| 13643e185c | |||
| 06c8e95774 | |||
| d437650c77 | |||
| 46c5cbae8f | |||
| deff6c666e | |||
| 3a01836325 | |||
| 0034d2db35 | |||
| ed50bd2254 | |||
| 90ca0852c7 | |||
| 968de8548c | |||
| 95d6f05a76 | |||
| ff58ccac28 | |||
| e03cc99467 | |||
| f59ee5bd62 | |||
| af5f19604c | |||
| 3025996407 | |||
| d2b6559039 | |||
| 3c0cef9927 | |||
| 937cf0b996 | |||
| f57f1efdff | |||
| 2b3c124e61 | |||
| 85e917ae52 | |||
| 0be2cd3d43 | |||
| 066123007c | |||
| 167a51538e | |||
| 5c6f63d8b4 | |||
| 03ab8d0f48 | |||
| 75b567a457 | |||
| cace3e3530 | |||
| 286d4f2743 | |||
| 952b18fc02 | |||
| 816fa93429 | |||
| f4f975edd6 | |||
| cff4e4a837 | |||
| 32db4660bd | |||
| 22fdb1fc14 | |||
| 412cb8f089 | |||
| 092806ad4f | |||
| 4ae314731d | |||
| 4b8d2e829c | |||
| d93938f7e1 | |||
| c904cfb8bc | |||
| 32c87f3131 | |||
| ba0ddea5e1 | |||
| c0339120d2 | |||
| 5a23d2d1da | |||
| de446ace2f | |||
| 2055110e05 | |||
| 5b1e582f03 | |||
| f1ec6dc41a | |||
| c3f6e27bfe | |||
| 0a2fe70511 | |||
| 53e7fee5b7 | |||
| 5291f2ed6e | |||
| 99a68e487f | |||
| 271431ab18 | |||
| 88d4150d2b | |||
| 0e3cfbc007 | |||
| 5345ad2da7 | |||
| ead05f81c0 | |||
| 4f9e7cbd16 | |||
| bb890941ca | |||
| 4002dce639 | |||
| c801cdd81f | |||
| 9008a31190 | |||
| bdfb7c69ea | |||
| 084626e60b | |||
| a7d790a827 | |||
| 8a630ff4ec | |||
| 617ca4e0c8 | |||
| 62601678cd | |||
| 081910adbc | |||
| f73fd0625d | |||
| 06a4f47a4c | |||
| 7185db98b4 | |||
| 4780d72809 | |||
| 3fd91a239f | |||
| 8bc829c7f1 | |||
| 97d3c843c4 | |||
| 546aed7ccd | |||
| 6ef79d3715 | |||
| c2bf3269ac | |||
| aca16745e4 | |||
| a5110d81ea | |||
| 2225fce94e | |||
| 9593e05c9e | |||
| 941b737319 | |||
| 654e09e999 | |||
| 8751850eca | |||
| 0f88348917 | |||
| d4ee03c778 | |||
| 069f3e746b | |||
| b28ecd44c2 | |||
| 9db9fc9de3 | |||
| 6ac9b7a1b0 | |||
| 34dbf6b225 | |||
| 26d71b66e4 | |||
| 65eacb6b90 | |||
| cb3344a337 | |||
| 5d38cbbce9 | |||
| 30babd8157 | |||
| aa09f45b7e | |||
| 4b61cf6f52 | |||
| 683f3d9d2a | |||
| ce18524251 | |||
| 95dae9737b | |||
| 8daba01151 | |||
| 640edbc1d4 | |||
| 4b1914aa1f | |||
| bd11479a16 | |||
| 0208fe9996 | |||
| 24654ad28f | |||
| 8d46aa6056 | |||
| 09f3b687f7 | |||
| 436d3fd761 | |||
| 9833f38499 | |||
| 9725708b90 | |||
| 67962b15fc | |||
| 1d48f287f0 | |||
| 43efe9e417 | |||
| 278b9f7fba | |||
| 085f3afdfb | |||
| 45becfb235 | |||
| a34c935e20 | |||
| 13e16dc3f1 | |||
| 96f0a82aa5 | |||
| 7caf6cf459 | |||
| 8936b99e9f | |||
| d2810f9f83 | |||
| 597f95fb1b | |||
| 7f9a331c73 | |||
| 35e92733e9 | |||
| c11e87618b | |||
| ca87e57129 | |||
| 66084ad1f4 | |||
| d807ba1974 | |||
| 51fc386e72 | |||
| a6f0d700f1 | |||
| 14f3deed6b | |||
| d66a696a84 | |||
| 69ccbd1562 | |||
| d9d4ef17c8 | |||
| 93cc6f4a5d | |||
| 0a40a7af7b | |||
| eb6f6a77e5 | |||
| fb7164a811 | |||
| 64cf52d3b5 | |||
| 6a1f7e61f2 | |||
| d662f5d429 | |||
| df55a90ef6 | |||
| 6e113c1eaf | |||
| f484ab6dfb | |||
| 86283c6309 | |||
| 34cc3946b8 | |||
| 6aa0250bc5 | |||
| c5db3ff401 | |||
| 06c151421c | |||
| 0008b6fc2d | |||
| b6a70ec6fd | |||
| c4d0f07093 | |||
| 93f6033061 | |||
| 110bb79b14 | |||
| d84f8898b7 | |||
| 27a6371f9b | |||
| 7c3b8e014c | |||
| a069d21621 | |||
| d7f54464c6 | |||
| 998eb44e83 | |||
| 96d1de8575 | |||
| deff6ffaac | |||
| 328ef873d8 | |||
| 4ecf876a64 | |||
| c4ac5773cb | |||
| cac1bf83ef | |||
| abeb1e096a | |||
| 9f7ce39f9f | |||
| 29ae8d4ca3 | |||
| 3f4aee1046 | |||
| d0da0639f0 | |||
| 390ceb1475 | |||
| 6c5edf6c70 | |||
| 9cd994f57c | |||
| a6e2d5b5f7 | |||
| 08ec55743e | |||
| c4f90b3841 | |||
| f8af7edf92 | |||
| a73402ad93 | |||
| d7dbff0f54 | |||
| 42531389df | |||
| f7230006fe | |||
| 754b40cb31 | |||
| ffdc8b556d | |||
| 5accce976a | |||
| 349c1443a1 | |||
| 2f71245d82 | |||
| 51c6d50268 | |||
| 6499cfcf52 | |||
| f08e206991 | |||
| fbddfe2729 | |||
| dcc5472cba | |||
| addd87c0f7 | |||
| 480727815a | |||
| 45187a0fc7 | |||
| 7409c6d781 | |||
| 11cb0212b7 | |||
| 7f49ee8fd7 | |||
| 7adc7f02e0 | |||
| f5cf1f1314 | |||
| 50c7234f26 | |||
| f58fc9488f | |||
| 408cc19885 | |||
| c76d27373e | |||
| fb08dc09f3 | |||
| 914848433a | |||
| 8bddf105bf | |||
| 31446e35b9 | |||
| 9bdc43bb66 | |||
| a0b61d17b5 | |||
| 8cc8441367 | |||
| 7d9670bc6c | |||
| b8cb80b219 | |||
| cd435c0c58 | |||
| 548c589f82 | |||
| 5c7a631988 | |||
| af74874516 | |||
| 949d61e01e | |||
| 3e60f79f1d | |||
| 8f9cb3590a | |||
| 67fced37c8 | |||
| 0565b1df5f | |||
| d73d70fa1f | |||
| cc6104aeaf | |||
| 8910ec6e59 | |||
| ddc1e4e86e | |||
| 2e1f8b4aef | |||
| 958f05a6f3 | |||
| 0ac22e034c | |||
| 197ce4580b | |||
| 8f14511831 | |||
| 396e0b5423 | |||
| 4e411364ff | |||
| f0681f7e12 | |||
| dfa9815246 | |||
| 25e8ed63a2 | |||
| 8d390100e0 | |||
| dee3536144 | |||
| 73c210b665 | |||
| 4bad52f30c | |||
| 481927ff16 | |||
| dec36e9bfe | |||
| dd90c860ee | |||
| c9bc141335 | |||
| 3cbf4f3b58 | |||
| 6c2dd7ebb1 | |||
| d3187b22c4 | |||
| 2f32fb7f8b | |||
| e6f30ebc9c | |||
| cb867ea91d | |||
| 961096f9df | |||
| 3fa9f0a27b | |||
| 05d7bc556f | |||
| 2d8bce78a6 | |||
| 9a027a01da | |||
| 4da8c1c4e2 | |||
| 49dd9449b8 | |||
| 76fd936972 | |||
| 06cebb9fb4 | |||
| b9d844ca8d | |||
| ccc9367de7 | |||
| 4c4a3fe5d1 | |||
| 84ea8a79e6 | |||
| 3d3d1061d3 | |||
| b9177fd6dc | |||
| 8051b12ffc | |||
| f19f558220 | |||
| 1ad7d856fe | |||
| d6357420ae | |||
| 62b9fa22b8 | |||
| 1725832b6c | |||
| 874944f2ec | |||
| 497a5d88af | |||
| 8993daaa31 | |||
| e190eb15f5 | |||
| b6bc33bac6 | |||
| 03a6f5237f | |||
| 28e86917a0 | |||
| 6f1bbd3cec | |||
| ae56b9ad89 | |||
| 4466d9fb4a | |||
| ac1aa9edea | |||
| c733204a70 | |||
| 1544b51dcb | |||
| 4b9d0a9566 | |||
| 0637f23875 | |||
| 9f6e126a2f | |||
| 645f56cf70 | |||
| 80e5111dca | |||
| 7e9f05b617 | |||
| 1d8f0c762d | |||
| ef6070cbde | |||
| 61f3ff1d2b | |||
| 111d350a22 | |||
| 1dfd61f532 | |||
| 5c1f5462e7 | |||
| 66a6375405 | |||
| 604afebf6f | |||
| 8afed61db1 | |||
| ee55a98103 | |||
| f8da9a866a | |||
| 28bdebd3c0 | |||
| fc51c38abb | |||
| 443ea13eff | |||
| 5feeb79c13 | |||
| a241b2d0f7 | |||
| 61e7595a94 | |||
| da9096750e | |||
| 87ea9ba661 | |||
| c041727e4f | |||
| 3feffbe1de | |||
| 04fd038d35 | |||
| 3dfe4505dd | |||
| 394e9b42b0 | |||
| e6fcaefe95 | |||
| f5a85d68ad | |||
| 277b93cb89 | |||
| 8820315ff9 | |||
| 44841f6891 | |||
| 2cdcd6d630 | |||
| 47cade2bcf | |||
| a72efbea36 | |||
| 5c9892c083 | |||
| 9ecc5c8cf7 | |||
| 47cebb0d23 | |||
| f127e428cc | |||
| 568b67eee9 | |||
| 865b41e201 | |||
| b88a749680 | |||
| 02e65900e6 | |||
| 343c9eda82 | |||
| df8dbec676 | |||
| 1075be7eca | |||
| 6d395ec511 | |||
| bf560e78f3 | |||
| daae76c465 | |||
| 1ea9a14121 | |||
| 1db5834b99 | |||
| 3070b043be | |||
| ef3f323fc4 | |||
| 43a304f564 | |||
| a79aef65e8 | |||
| dc1d93a491 | |||
| 66eb9c2486 | |||
| a14d58259c | |||
| 127597023d | |||
| 3ec16f3630 | |||
| cb9059652d | |||
| 43f27250b5 | |||
| af0b5b0e84 | |||
| c5d561a312 | |||
| 7435084375 | |||
| 734e639c5d | |||
| dcede304df | |||
| 145e682ad3 | |||
| 6482df6c2f | |||
| 0c9cd11b4e | |||
| 82d952ae0e | |||
| 47d6451d03 | |||
| e110d6961a | |||
| a42b0b7dcb | |||
| 03828b5836 | |||
| 3b44c3ff1d | |||
| 0d0c2b65f7 | |||
| 2218a9d704 | |||
| 0a6b33cd78 | |||
| ecf17621aa | |||
| f0c6ed004d | |||
| 554531a302 | |||
| d496c0fdfa | |||
| 5c39dfd740 | |||
| 5b842f0010 | |||
| 52987a3615 | |||
| b6ecfb91c4 | |||
| d04ea8653d | |||
| 2ab77caa8b | |||
| da81531906 | |||
| 5be32f5d8d | |||
| 4a90bca7a3 | |||
| 9f35b764f8 | |||
| 7ca5dce2f5 | |||
| fcc3b3bd36 | |||
| 53a3877c3d | |||
| a936b7b2ab | |||
| a91b851f3d | |||
| d31c591b60 | |||
| ae5ebf6001 | |||
| 7fb741d53d | |||
| 8e75616c14 | |||
| 411c069ba6 | |||
| ac82d041cc | |||
| 621d7d5ce0 | |||
| 1bb9c7da42 | |||
| f893104b18 | |||
| efb2a942e0 | |||
| 070ce33a13 | |||
| f604f86cfc | |||
| bed288339e | |||
| 1995f434f3 | |||
| db0281b4df | |||
| 8f37285b05 | |||
| ef72145540 | |||
| 2f5e711acd | |||
| bdb7669e27 | |||
| cda8213892 | |||
| ef940d226c | |||
| 36da9223ec | |||
| eb29ef32b1 | |||
| 29550d472d | |||
| 79cae51156 | |||
| a210867025 | |||
| 0262a54ecf | |||
| 0d8f74f0c5 | |||
| 3a2da51a82 | |||
| b1c59126f7 | |||
| 4c77838514 | |||
| f9468f46f5 | |||
| ec1778b586 | |||
| c3ce3747e0 | |||
| fdc390ad05 | |||
| 580f6b567b | |||
| 27b1c33a16 | |||
| 7a75cd111c | |||
| 23b8287933 | |||
| d17d99b9dd | |||
| 68b2a454b5 | |||
| 23c3f5622a | |||
| 6311d33a5d | |||
| e136a9db02 | |||
| 4cfe623bc1 | |||
| f871ecdc67 | |||
| 470353e320 | |||
| ffe02d20ca | |||
| f70752c18f | |||
| 07fcfd6d54 | |||
| c97feafca6 | |||
| b20d95d495 | |||
| 0b4adaa9e6 | |||
| 5fe6206638 | |||
| 65964f3b31 | |||
| b28b84d444 | |||
| a001a5ceb0 | |||
| 2ef713ea1b | |||
| 1f6c1942b3 | |||
| 683023d820 | |||
| 42d3a8f498 | |||
| 79b005dc3d | |||
| a2fa6ef452 | |||
| 920641bbff | |||
| c2aabdec22 | |||
| e4aa735a68 | |||
| 4af6557568 | |||
| 0798885bdb | |||
| 020e75e7ef | |||
| d6866f1cfd | |||
| efaa4c6710 | |||
| 08baaa9d8e | |||
| 359af419a7 | |||
| 21be86c423 | |||
| d6800405a5 | |||
| 3a054d1a82 | |||
| 007f3c66a0 | |||
| 32708860a9 | |||
| fc9eebb936 | |||
| dd76ac5010 | |||
| 17486a9319 | |||
| 778a79b8ee | |||
| 7dd60f9737 | |||
| 084d831bce | |||
| e261bef7bb | |||
| fd78486086 | |||
| 6382d3c89a | |||
| 763a00e8b0 | |||
| ce1a3f25e1 | |||
| eaf7ed7707 | |||
| 9a560b9091 | |||
| 8a0e44db83 | |||
| 1dc78a7e58 | |||
| 7a593c2fc8 | |||
| 3ac74a1d69 | |||
| 3605208a45 | |||
| 9b01949cac | |||
| 323570c920 | |||
| df13a7a003 | |||
| a1b40b902d | |||
| b921b69f47 | |||
| c0cf50bce5 | |||
| 2708c86836 | |||
| 9999f363a1 | |||
| a18b4ef4b0 | |||
| 3626496c7c | |||
| 458b6749e7 | |||
| 20a9ffe69d | |||
| 49e83b4348 | |||
| 6e89ccd522 | |||
| 53f3df5bfc | |||
| 3dbbea342a | |||
| b70c670aac | |||
| 1d17cae407 | |||
| 429264a12b | |||
| d001a09345 | |||
| cb9d42da08 | |||
| 7185ec92b3 | |||
| 1cd4c48ccc | |||
| a88136c3f5 | |||
| ce20c7ffe9 | |||
| 4a80df3a99 | |||
| 5f93fad012 | |||
| ccaec315db | |||
| c6c1852b3b | |||
| 69a8e19dc5 | |||
| 928947dcea | |||
| 904609a7a3 | |||
| fc3505fac4 | |||
| 48070011d9 | |||
| 0fb8dacc00 | |||
| 6b923476b9 | |||
| 20806dd86a | |||
| 90e5ae965d | |||
| 15008c9d18 | |||
| 33af7ab248 | |||
| 8f9b2aca06 | |||
| 383da816c2 | |||
| a323ca1edd | |||
| de4af6f15d | |||
| 0e16dc3ead | |||
| 1b3f6e257a | |||
| cb982f2f28 | |||
| 4843296d4e | |||
| 2bdda8f6c0 | |||
| 0068ef5616 | |||
| 02b0e6cc55 | |||
| fbb24c2406 | |||
| 0efd209480 | |||
| a5f830c40c | |||
| 8c074a363a | |||
| 27aca14094 | |||
| 191453e1c7 | |||
| 207adc3968 | |||
| 84c517159d | |||
| 6ca377436f | |||
| dc34a32602 | |||
| 067119f6c6 | |||
| 1834a5e46c | |||
| 6a4918b39a | |||
| 5da0d39392 | |||
| 6f92429602 | |||
| 38e0e4bb69 | |||
| daf9f95381 | |||
| 6595fde0a1 | |||
| 6bcec9c61d | |||
| 9d1991bf84 | |||
| 0a87b7443a | |||
| 7ee45ec5f3 | |||
| d4c9e2500b | |||
| 6232073d3b | |||
| ed59193d13 | |||
| 67bed8e853 | |||
| bcb1d94b9a | |||
| fbe30b5683 | |||
| 9ef55fedf7 | |||
| 997142a4c1 | |||
| 033b07fdb7 | |||
| ed0a347fbf | |||
| 51a0b6b445 | |||
| 59f4a77dd5 | |||
| 579cc6d7aa | |||
| 5afd3e995b | |||
| 2a6f5e651c | |||
| 09fc8b0bd7 | |||
| e5d0bde783 | |||
| 9daf7fb650 | |||
| b5d622c6a3 | |||
| 2023fa28e0 | |||
| 5b29515849 | |||
| 5b18421dd2 | |||
| cf95ea0709 | |||
| 6a74a81da0 | |||
| f0a4ed615d | |||
| cfe818a175 | |||
| 149f37e764 |
21
.github/CODEOWNERS
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
# This file contains file patterns that triggers automatic
|
||||||
|
# code review requests from users that are owners of these files
|
||||||
|
# Order matters, the last match has the highest precedence
|
||||||
|
|
||||||
|
# library folders
|
||||||
|
lib/colvars/* @giacomofiorin
|
||||||
|
lib/compress/* @akohlmey
|
||||||
|
lib/kokkos/* @stanmoore1
|
||||||
|
lib/molfile/* @akohlmey
|
||||||
|
lib/qmmm/* @akohlmey
|
||||||
|
lib/vtk/* @rbberger
|
||||||
|
|
||||||
|
# packages
|
||||||
|
src/KOKKOS @stanmoore1
|
||||||
|
src/USER-CGSDK @akohlmey
|
||||||
|
src/USER-COLVARS @giacomofiorin
|
||||||
|
src/USER-OMP @akohlmey
|
||||||
|
src/USER-QMMM @akohlmey
|
||||||
|
|
||||||
|
# tools
|
||||||
|
tools/msi2lmp/* @akohlmey
|
||||||
112
.github/CONTRIBUTING.md
vendored
Normal file
@ -0,0 +1,112 @@
|
|||||||
|
# Contributing to LAMMPS via GitHub
|
||||||
|
|
||||||
|
Thank your for considering to contribute to the LAMMPS software project.
|
||||||
|
|
||||||
|
The following is a set of guidelines as well as explanations of policies and workflows for contributing to the LAMMPS molecular dynamics software project. These guidelines focus on submitting issues or pull requests on the LAMMPS GitHub project.
|
||||||
|
|
||||||
|
Thus please also have a look at:
|
||||||
|
* [The Section on submitting new features for inclusion in LAMMPS of the Manual](http://lammps.sandia.gov/doc/Section_modify.html#mod-15)
|
||||||
|
* [The LAMMPS GitHub Tutorial in the Manual](http://lammps.sandia.gov/doc/tutorial_github.html)
|
||||||
|
|
||||||
|
## Table of Contents
|
||||||
|
|
||||||
|
[I don't want to read this whole thing, I just have a question!](#i-dont-want-to-read-this-whole-thing-i-just-have-a-question)
|
||||||
|
|
||||||
|
[How Can I Contribute?](#how-can-i-contribute)
|
||||||
|
* [Discussing How To Use LAMMPS](#discussing-how-to-use-lammps)
|
||||||
|
* [Reporting Bugs](#reporting-bugs)
|
||||||
|
* [Suggesting Enhancements](#suggesting-enhancements)
|
||||||
|
* [Contributing Code](#contributing-code)
|
||||||
|
|
||||||
|
[GitHub Workflows](#github-workflows)
|
||||||
|
* [Issues](#issues)
|
||||||
|
* [Pull Requests](#pull-requests)
|
||||||
|
|
||||||
|
__
|
||||||
|
|
||||||
|
## I don't want to read this whole thing I just have a question!
|
||||||
|
|
||||||
|
> **Note:** Please do not file an issue to ask a general question about LAMMPS, its features, how to use specific commands, or how perform simulations or analysis in LAMMPS. Instead post your question to the ['lammps-users' mailing list](http://lammps.sandia.gov/mail.html). You do not need to be subscribed to post to the list (but a mailing list subscription avoids having your post delayed until it is approved by a mailing list moderator). Most posts to the mailing list receive a response within less than 24 hours. Before posting to the mailing list, please read the [mailing list guidelines](http://lammps.sandia.gov/guidelines.html). Following those guidelines will help greatly to get a helpful response. Always mention which LAMMPS version you are using.
|
||||||
|
|
||||||
|
## How Can I Contribute?
|
||||||
|
|
||||||
|
There are several ways how you can actively contribute to the LAMMPS project: you can discuss compiling and using LAMMPS, and solving LAMMPS related problems with other LAMMPS users on the lammps-users mailing list, you can report bugs or suggest enhancements by creating issues on GitHub (or posting them to the lammps-users mailing list), and you can contribute by submitting pull requests on GitHub or e-mail your code
|
||||||
|
to one of the [LAMMPS core developers](http://lammps.sandia.gov/authors.html). As you may see from the aforementioned developer page, the LAMMPS software package includes the efforts of a very large number of contributors beyond the principal authors and maintainers.
|
||||||
|
|
||||||
|
### Discussing How To Use LAMMPS
|
||||||
|
|
||||||
|
The LAMMPS mailing list is hosted at SourceForge. The mailing list began in 2005, and now includes tens of thousands of messages in thousands of threads. LAMMPS developers try to respond to posted questions in a timely manner, but there are no guarantees. Please consider that people live in different timezone and may not have time to answer e-mails outside of their work hours.
|
||||||
|
You can post to list by sending your email to lammps-users at lists.sourceforge.net (no subscription required), but before posting, please read the [mailing list guidelines](http://lammps.sandia.gov/guidelines.html) to maximize your chances to receive a helpful response.
|
||||||
|
|
||||||
|
Anyone can browse/search previous questions/answers in the archives. You do not have to subscribe to the list to post questions, receive answers (to your questions), or browse/search the archives. You **do** need to subscribe to the list if you want emails for **all** the posts (as individual messages or in digest form), or to answer questions yourself. Feel free to sign up and help us out! Answering questions from fellow LAMMPS users is a great way to pay back the community for providing you a useful tool for free, and to pass on the advice you have received yourself to others. It improves your karma and helps you understand your own research better.
|
||||||
|
|
||||||
|
If you post a message and you are a subscriber, your message will appear immediately. If you are not a subscriber, your message will be moderated, which typically takes one business day. Either way, when someone replies the reply will usually be sent to both, your personal email address and the mailing list. When replying to people, that responded to your post to the list, please always included the mailing list in your replies (i.e. use "Reply All" and **not** "Reply"). Responses will appear on the list in a few minutes, but it can take a few hours for postings and replies to show up in the SourceForge archive. Sending replies also to the mailing list is important, so that responses are archived and people with a similar issue can search for possible solutions in the mailing list archive.
|
||||||
|
|
||||||
|
### Reporting Bugs
|
||||||
|
|
||||||
|
While developers writing code for LAMMPS are careful to test their code, LAMMPS is such a large and complex software, that it is impossible to test for all combinations of features under all normal and not so normal circumstances. Thus bugs do happen, and if you suspect, that you have encountered one, please try to document it and report it as an [Issue](https://github.com/lammps/lammps/issues) on the LAMMPS GitHub project web page. However, before reporting a bug, you need to check whether this is something that may have already been corrected. The [Latest Features and Bug Fixes in LAMMPS](http://lammps.sandia.gov/bug.html) web page lists all significant changes to LAMMPS over the years. It also tells you what the current latest development version of LAMMPS is, and you should test whether your issue still applies to that version.
|
||||||
|
|
||||||
|
When you click on the green "New Issue" button, you will be provided with a text field, where you can enter your message. That text field with contain a template with several headlines and some descriptions. Keep the headlines that are relevant to your reported potential bug and replace the descriptions with the information as suggested by the descriptions.
|
||||||
|
You can also attach small text files (please add the file name extension `.txt` or it will be rejected), images, or small compressed text files (using gzip, do not use RAR or 7-ZIP or similar tools that are uncommon outside of Windows machines). In many cases, bugs are best illustrated by providing a small input deck (do **not** attach your entire production input, but remove everything that is not required to reproduce the issue, and scale down your system size, that the resulting calculation runs fast and can be run on small desktop quickly).
|
||||||
|
|
||||||
|
To be able to submit an issue on GitHub, you have to register for an account (for GitHub in general). If you do not want to do that, or have other reservations against submitting an issue there, you can - as an alternative and in decreasing preference - either send an e-mail to the lammps-users mailing list, the original authors of the feature that you suspect to be affected, or one or more of the core LAMMPS developers.
|
||||||
|
|
||||||
|
### Suggesting Enhancements
|
||||||
|
|
||||||
|
The LAMMPS developers welcome suggestions for enhancements or new features. These should be submitted using the [GitHub Issue Tracker](https://github.com/lammps/lammps/issues) of the LAMMPS project. This is particularly recommended, when you plan to implement the feature or enhancement yourself, as this allows to coordinate in case there are other similar or conflicting ongoing developments.
|
||||||
|
The LAMMPS developers will review your submission and consider implementing it. Whether this will actually happen depends on many factors: how difficult it would be, how much effort it would take, how many users would benefit from it, how well the individual developer would understand the underlying physics of the feature, and whether this is a feature that would fit into a software like LAMMPS, or would be better implemented as a separate tool. Because of these factors, it matters how well the suggested enhancement is formulated and the overall benefit is argued convincingly.
|
||||||
|
|
||||||
|
To be able to submit an issue on GitHub, you have to register for an account (for GitHub in general). If you do not want to do that, or have other reservations against submitting an issue there, you can - as an alternative - send an e-mail to the lammps-users mailing list.
|
||||||
|
|
||||||
|
### Contributing Code
|
||||||
|
|
||||||
|
We encourage users to submit new features or modifications for LAMMPS to the core developers so they can be added to the LAMMPS distribution. The preferred way to manage and coordinate this is by submitting a pull request at the LAMMPS project on GitHub. For any larger modifications or programming project, you are encouraged to contact the LAMMPS developers ahead of time, in order to discuss implementation strategies and coding guidelines, that will make it easier to integrate your contribution and result in less work for everybody involved. You are also encouraged to search through the list of open issues on GitHub and submit a new issue for a planned feature, so you would not duplicate the work of others (and possibly get scooped by them) or have your work duplicated by others.
|
||||||
|
|
||||||
|
How quickly your contribution will be integrated depends largely on how much effort it will cause to integrate and test it, how much it requires changes to the core code base, and of how much interest it is to the larger LAMMPS community. Please see below for a checklist of typical requirements. Once you have prepared everything, see [this tutorial](http://lammps.sandia.gov/doc/tutorial_github.html)
|
||||||
|
for instructions on how to submit your changes or new files through a GitHub pull request
|
||||||
|
|
||||||
|
Here is a checklist of steps you need to follow to submit a single file or user package for our consideration. Following these steps will save both you and us time. See existing files in packages in the source directory for examples. If you are uncertain, please ask on the lammps-users mailing list.
|
||||||
|
|
||||||
|
* All source files you provide must compile with the most current version of LAMMPS with multiple configurations. In particular you need to test compiling LAMMPS from scratch with `-DLAMMPS_BIGBIG` set in addition to the default `-DLAMMPS_SMALLBIG` setting. Your code will need to work correctly in serial and in parallel using MPI.
|
||||||
|
* For consistency with the rest of LAMMPS and especially, if you want your contribution(s) to be added to main LAMMPS code or one of its standard packages, it needs to be written in a style compatible with other LAMMPS source files. This means: 2-character indentation per level, no tabs, no lines over 80 characters. I/O is done via the C-style stdio library, class header files should not import any system headers outside <stdio.h>, STL containers should be avoided in headers, and forward declarations used where possible or needed. All added code should be placed into the LAMMPS_NS namespace or a sub-namespace; global or static variables should be avoided, as they conflict with the modular nature of LAMMPS and the C++ class structure. Header files must not import namespaces with using. This all is so the developers can more easily understand, integrate, and maintain your contribution and reduce conflicts with other parts of LAMMPS. This basically means that the code accesses data structures, performs its operations, and is formatted similar to other LAMMPS source files, including the use of the error class for error and warning messages.
|
||||||
|
* If you want your contribution to be added as a user-contributed feature, and it is a single file (actually a `<name>.cpp` and `<name>.h` file) it can be rapidly added to the USER-MISC directory. Include the one-line entry to add to the USER-MISC/README file in that directory, along with the 2 source files. You can do this multiple times if you wish to contribute several individual features.
|
||||||
|
* If you want your contribution to be added as a user-contribution and it is several related features, it is probably best to make it a user package directory with a name like USER-FOO. In addition to your new files, the directory should contain a README text file. The README should contain your name and contact information and a brief description of what your new package does. If your files depend on other LAMMPS style files also being installed (e.g. because your file is a derived class from the other LAMMPS class), then an Install.sh file is also needed to check for those dependencies. See other README and Install.sh files in other USER directories as examples. Send us a tarball of this USER-FOO directory.
|
||||||
|
* Your new source files need to have the LAMMPS copyright, GPL notice, and your name and email address at the top, like other user-contributed LAMMPS source files. They need to create a class that is inside the LAMMPS namespace. If the file is for one of the USER packages, including USER-MISC, then we are not as picky about the coding style (see above). I.e. the files do not need to be in the same stylistic format and syntax as other LAMMPS files, though that would be nice for developers as well as users who try to read your code.
|
||||||
|
* You **must** also create or extend a documentation file for each new command or style you are adding to LAMMPS. For simplicity and convenience, the documentation of groups of closely related commands or styles may be combined into a single file. This will be one file for a single-file feature. For a package, it might be several files. These are simple text files with a specific markup language, that are then auto-converted to HTML and PDF. The tools for this conversion are included in the source distribution, and the translation can be as simple as doing "make html pdf" in the doc folder. Thus the documentation source files must be in the same format and style as other `<name>.txt` files in the lammps/doc/src directory for similar commands and styles; use one or more of them as a starting point. A description of the markup can also be found in `lammps/doc/utils/txt2html/README.html` As appropriate, the text files can include links to equations (see doc/Eqs/*.tex for examples, we auto-create the associated JPG files), or figures (see doc/JPG for examples), or even additional PDF files with further details (see doc/PDF for examples). The doc page should also include literature citations as appropriate; see the bottom of doc/fix_nh.txt for examples and the earlier part of the same file for how to format the cite itself. The "Restrictions" section of the doc page should indicate that your command is only available if LAMMPS is built with the appropriate USER-MISC or USER-FOO package. See other user package doc files for examples of how to do this. The prerequisite for building the HTML format files are Python 3.x and virtualenv, the requirement for generating the PDF format manual is the htmldoc software. Please run at least "make html" and carefully inspect and proofread the resulting HTML format doc page before submitting your code.
|
||||||
|
* For a new package (or even a single command) you should include one or more example scripts demonstrating its use. These should run in no more than a couple minutes, even on a single processor, and not require large data files as input. See directories under examples/USER for examples of input scripts other users provided for their packages. These example inputs are also required for validating memory accesses and testing for memory leaks with valgrind
|
||||||
|
* If there is a paper of yours describing your feature (either the algorithm/science behind the feature itself, or its initial usage, or its implementation in LAMMPS), you can add the citation to the *.cpp source file. See src/USER-EFF/atom_vec_electron.cpp for an example. A LaTeX citation is stored in a variable at the top of the file and a single line of code that references the variable is added to the constructor of the class. Whenever a user invokes your feature from their input script, this will cause LAMMPS to output the citation to a log.cite file and prompt the user to examine the file. Note that you should only use this for a paper you or your group authored. E.g. adding a cite in the code for a paper by Nose and Hoover if you write a fix that implements their integrator is not the intended usage. That kind of citation should just be in the doc page you provide.
|
||||||
|
|
||||||
|
Finally, as a general rule-of-thumb, the more clear and self-explanatory you make your documentation and README files, and the easier you make it for people to get started, e.g. by providing example scripts, the more likely it is that users will try out your new feature.
|
||||||
|
|
||||||
|
If the new features/files are broadly useful we may add them as core files to LAMMPS or as part of a standard package. Else we will add them as a user-contributed file or package. Examples of user packages are in src sub-directories that start with USER. The USER-MISC package is simply a collection of (mostly) unrelated single files, which is the simplest way to have your contribution quickly added to the LAMMPS distribution. You can see a list of the both standard and user packages by typing "make package" in the LAMMPS src directory.
|
||||||
|
|
||||||
|
Note that by providing us files to release, you are agreeing to make them open-source, i.e. we can release them under the terms of the GPL, used as a license for the rest of LAMMPS. See Section 1.4 for details.
|
||||||
|
|
||||||
|
With user packages and files, all we are really providing (aside from the fame and fortune that accompanies having your name in the source code and on the Authors page of the LAMMPS WWW site), is a means for you to distribute your work to the LAMMPS user community, and a mechanism for others to easily try out your new feature. This may help you find bugs or make contact with new collaborators. Note that you are also implicitly agreeing to support your code which means answer questions, fix bugs, and maintain it if LAMMPS changes in some way that breaks it (an unusual event).
|
||||||
|
|
||||||
|
To be able to submit an issue on GitHub, you have to register for an account (for GitHub in general). If you do not want to do that, or have other reservations or difficulties to submit a pull request, you can - as an alternative - contact one or more of the core LAMMPS developers and ask if one of them would be interested in manually merging your code into LAMMPS and send them your source code. Since the effort to merge a pull request is a small fraction of the effort of integrating source code manually (which would usually be done by converting the contribution into a pull request), your chances to have your new code included quickly are the best with a pull request.
|
||||||
|
|
||||||
|
If you prefer to submit patches or full files, you should first make certain, that your code works correctly with the latest patch-level version of LAMMPS and contains all bug fixes from it. Then create a gzipped tar file of all changed or added files or a corresponding patch file using 'diff -u' or 'diff -c' and compress it with gzip. Please only use gzip compression, as this works well on all platforms.
|
||||||
|
|
||||||
|
## GitHub Workflows
|
||||||
|
|
||||||
|
This section briefly summarizes the steps that will happen **after** you have submitted either an issue or a pull request on the LAMMPS GitHub project page.
|
||||||
|
|
||||||
|
### Issues
|
||||||
|
|
||||||
|
After submitting an issue, one or more of the LAMMPS developers will review it and categorize it by assigning labels. Confirmed bug reports will be labeled `bug`; if the bug report also contains a suggestion for how to fix it, it will be labeled `bugfix`; if the issue is a feature request, it will be labeled `enhancement`. Other labels may be attached as well, depending on which parts of the LAMMPS code are affected. If the assessment is, that the issue does not warrant any changes, the `wontfix` label will be applied and if the submission is incorrect or something that should not be submitted as an issue, the `invalid` label will be applied. In both of the last two cases, the issue will then be closed without further action.
|
||||||
|
|
||||||
|
For feature requests, what happens next is that developers may comment on the viability or relevance of the request, discuss and make suggestions for how to implement it. If a LAMMPS developer or user is planning to implement the feature, the issue will be assigned to that developer. For developers, that are not yet listed as LAMMPS project collaborators, they will receive an invitation to be added to the LAMMPS project as a collaborator so they can get assigned. If the requested feature or enhancement is implemented, it will usually be submitted as a pull request, which will contain a reference to the issue number. And once the pull request is reviewed and accepted for inclusion into LAMMPS, the issue will be closed. For details on how pull requests are processed, please see below.
|
||||||
|
|
||||||
|
For bug reports, the next step is that one of the core LAMMPS developers will self-assign to the issue and try to confirm the bug. If confirmed, the `bug` label and potentially other labels are added to classify the issue and its impact to LAMMPS. Before confirming, further questions may be asked or requests for providing additional input files or details about the steps required to reproduce the issue. Any bugfix is likely to be submitted as a pull request (more about that below) and since most bugs require only local changes, the bugfix may be included in a pull request specifically set up to collect such local bugfixes or small enhancements. Once the bugfix is included in the master branch, the issue will be closed.
|
||||||
|
|
||||||
|
### Pull Requests
|
||||||
|
|
||||||
|
For submitting pull requests, there is a [detailed tutorial](http://lammps.sandia.gov/doc/tutorial_github.html) in the LAMMPS manual. Thus only a brief breakdown of the steps is presented here.
|
||||||
|
Immediately after the submission, the LAMMPS continuing integration server at ci.lammps.org will download your submitted branch and perform a simple compilation test, i.e. will test whether your submitted code can be compiled under various conditions. It will also do a check on whether your included documentation translates cleanly. Whether these tests are successful or fail will be recorded. If a test fails, please inspect the corresponding output on the CI server and take the necessary steps, if needed, so that the code can compile cleanly again. The test will be re-run each the pull request is updated with a push to the remote branch on GitHub.
|
||||||
|
Next a LAMMPS core developer will self-assign and do an overall technical assessment of the submission. If you are not yet registered as a LAMMPS collaborator, you will receive an invitation for that.
|
||||||
|
You may also receive comments and suggestions on the overall submission or specific details. If permitted, additional changes may be pushed into your pull request branch or a pull request may be filed in your LAMMPS fork on GitHub to include those changes.
|
||||||
|
The LAMMPS developer may then decide to assign the pull request to another developer (e.g. when that developer is more knowledgeable about the submitted feature or enhancement or has written the modified code). It may also happen, that additional developers are requested to provide a review and approve the changes. For submissions, that may change the general behavior of LAMMPS, or where a possibility of unwanted side effects exists, additional tests may be requested by the assigned developer.
|
||||||
|
If the assigned developer is satisfied and considers the submission ready for inclusion into LAMMPS, the pull request will be assigned to the LAMMPS lead developer, Steve Plimpton (@sjplimp), who will then have the final decision on whether the submission will be included, additional changes are required or it will be ultimately rejected. After the pull request is merged, you may delete the pull request branch in your personal LAMMPS fork.
|
||||||
|
Since the learning curve for git is quite steep for efficiently managing remote repositories, local and remote branches, pull requests and more, do not hesitate to ask questions, if you are not sure about how to do certain steps that are asked of you. Even if the changes asked of you do not make sense to you, they may be important for the LAMMPS developers. Please also note, that these all are guidelines and not set in stone.
|
||||||
|
|
||||||
31
.github/ISSUE_TEMPLATE.md
vendored
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
## Summary
|
||||||
|
|
||||||
|
_Please provide a brief description of the issue_
|
||||||
|
|
||||||
|
## Type of Issue
|
||||||
|
|
||||||
|
_Is this a 'Bug Report' or a 'Suggestion for an Enhancement'?_
|
||||||
|
|
||||||
|
## Detailed Description (Enhancement Suggestion)
|
||||||
|
|
||||||
|
_Explain how you would like to see LAMMPS enhanced, what feature(s) you are looking for, provide references to relevant background information, and whether you are willing to implement the enhancement yourself or would like to participate in the implementation_
|
||||||
|
|
||||||
|
## LAMMPS Version (Bug Report)
|
||||||
|
|
||||||
|
_Please specify which LAMMPS version this issue was detected with. If this is not the latest development version, please stop and test that version, too, and report it here if the bug persists_
|
||||||
|
|
||||||
|
## Expected Behavior (Bug Report)
|
||||||
|
|
||||||
|
_Describe the expected behavior. Quote from the LAMMPS manual where needed or explain why the expected behavior is meaningful, especially when it differs from the manual_
|
||||||
|
|
||||||
|
## Actual Behavior (Bug Report)
|
||||||
|
|
||||||
|
_Describe the actual behavior, how it differs from the expected behavior, and how this can be observed. Try to be specific and do **not* use vague terms like "doesn't work" or "wrong result". Do not assume that the person reading this has any experience with or knowledge of your specific research._
|
||||||
|
|
||||||
|
## Steps to Reproduce (Bug Report)
|
||||||
|
|
||||||
|
_Describe the steps required to quickly reproduce the issue. You can attach (small) files to the section below or add URLs where to download an archive with all necessary files. Please try to create input that are as small as possible and run as fast as possible. NOTE: the less effort and time it takes to reproduce your issue, the more likely, that somebody will look into it._
|
||||||
|
|
||||||
|
## Further Information, Files, and Links
|
||||||
|
|
||||||
|
_Put any additional information here, attach relevant text or image files and URLs to external sites, e.g. relevant publications_
|
||||||
29
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
## Purpose
|
||||||
|
|
||||||
|
_Briefly describe the new feature(s), enhancement(s), or bugfix(es) included in this pull request. If this addresses an open GitHub Issue, mention the issue number, e.g. with `fixes #221` or `closes #135`, so that issue will be automatically closed when the pull request is merged_
|
||||||
|
|
||||||
|
## Author(s)
|
||||||
|
|
||||||
|
_Please state name and affiliation of the author or authors that should be credited with the changes in this pull request_
|
||||||
|
|
||||||
|
## Backward Compatibility
|
||||||
|
|
||||||
|
_Please state whether any changes in the pull request break backward compatibility for inputs, and - if yes - explain what has been changed and why_
|
||||||
|
|
||||||
|
## Implementation Notes
|
||||||
|
|
||||||
|
_Provide any relevant details about how the changes are implemented, how correctness was verified, how other features - if any - in LAMMPS are affected_
|
||||||
|
|
||||||
|
## Post Submission Checklist
|
||||||
|
|
||||||
|
_Please check the fields below as they are completed_
|
||||||
|
- [ ] The feature or features in this pull request is complete
|
||||||
|
- [ ] Suitable new documentation files and/or updates to the existing docs are included
|
||||||
|
- [ ] One or more example input decks are included
|
||||||
|
- [ ] The source code follows the LAMMPS formatting guidelines
|
||||||
|
|
||||||
|
## Further Information, Files, and Links
|
||||||
|
|
||||||
|
_Put any additional information here, attach relevant text or image files, and URLs to external sites (e.g. DOIs or webpages)_
|
||||||
|
|
||||||
|
|
||||||
8
.gitignore
vendored
@ -32,3 +32,11 @@ log.cite
|
|||||||
.Trashes
|
.Trashes
|
||||||
ehthumbs.db
|
ehthumbs.db
|
||||||
Thumbs.db
|
Thumbs.db
|
||||||
|
|
||||||
|
#cmake
|
||||||
|
/build*
|
||||||
|
/CMakeCache.txt
|
||||||
|
/CMakeFiles/
|
||||||
|
/Makefile
|
||||||
|
/cmake_install.cmake
|
||||||
|
/lmp
|
||||||
|
|||||||
2
LICENSE
@ -3,7 +3,7 @@ GNU GENERAL PUBLIC LICENSE
|
|||||||
Version 2, June 1991
|
Version 2, June 1991
|
||||||
|
|
||||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||||
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|
||||||
|
|
||||||
Everyone is permitted to copy and distribute verbatim copies of this
|
Everyone is permitted to copy and distribute verbatim copies of this
|
||||||
license document, but changing it is not allowed.
|
license document, but changing it is not allowed.
|
||||||
|
|||||||
@ -1,55 +1,21 @@
|
|||||||
These are input scripts used to run versions of several of the
|
These are input scripts used to run versions of several of the
|
||||||
benchmarks in the top-level bench directory using the GPU and
|
benchmarks in the top-level bench directory using the GPU accelerator
|
||||||
USER-CUDA accelerator packages. The results of running these scripts
|
package. The results of running these scripts on two different machines
|
||||||
on two different machines (a desktop with 2 Tesla GPUs and the ORNL
|
(a desktop with 2 Tesla GPUs and the ORNL Titan supercomputer) are shown
|
||||||
Titan supercomputer) are shown on the "GPU (Fermi)" section of the
|
on the "GPU (Fermi)" section of the Benchmark page of the LAMMPS WWW
|
||||||
Benchmark page of the LAMMPS WWW site: lammps.sandia.gov/bench.
|
site: lammps.sandia.gov/bench.
|
||||||
|
|
||||||
Examples are shown below of how to run these scripts. This assumes
|
Examples are shown below of how to run these scripts. This assumes
|
||||||
you have built 3 executables with both the GPU and USER-CUDA packages
|
you have built 3 executables with the GPU package
|
||||||
installed, e.g.
|
installed, e.g.
|
||||||
|
|
||||||
lmp_linux_single
|
lmp_linux_single
|
||||||
lmp_linux_mixed
|
lmp_linux_mixed
|
||||||
lmp_linux_double
|
lmp_linux_double
|
||||||
|
|
||||||
The precision (single, mixed, double) refers to the GPU and USER-CUDA
|
|
||||||
pacakge precision. See the README files in the lib/gpu and lib/cuda
|
|
||||||
directories for instructions on how to build the packages with
|
|
||||||
different precisions. The GPU and USER-CUDA sub-sections of the
|
|
||||||
doc/Section_accelerate.html file also describes this process.
|
|
||||||
|
|
||||||
Make.py -d ~/lammps -j 16 -p #all orig -m linux -o cpu -a exe
|
|
||||||
Make.py -d ~/lammps -j 16 -p #all opt orig -m linux -o opt -a exe
|
|
||||||
Make.py -d ~/lammps -j 16 -p #all omp orig -m linux -o omp -a exe
|
|
||||||
Make.py -d ~/lammps -j 16 -p #all gpu orig -m linux \
|
|
||||||
-gpu mode=double arch=20 -o gpu_double -a libs exe
|
|
||||||
Make.py -d ~/lammps -j 16 -p #all gpu orig -m linux \
|
|
||||||
-gpu mode=mixed arch=20 -o gpu_mixed -a libs exe
|
|
||||||
Make.py -d ~/lammps -j 16 -p #all gpu orig -m linux \
|
|
||||||
-gpu mode=single arch=20 -o gpu_single -a libs exe
|
|
||||||
Make.py -d ~/lammps -j 16 -p #all cuda orig -m linux \
|
|
||||||
-cuda mode=double arch=20 -o cuda_double -a libs exe
|
|
||||||
Make.py -d ~/lammps -j 16 -p #all cuda orig -m linux \
|
|
||||||
-cuda mode=mixed arch=20 -o cuda_mixed -a libs exe
|
|
||||||
Make.py -d ~/lammps -j 16 -p #all cuda orig -m linux \
|
|
||||||
-cuda mode=single arch=20 -o cuda_single -a libs exe
|
|
||||||
Make.py -d ~/lammps -j 16 -p #all intel orig -m linux -o intel_cpu -a exe
|
|
||||||
Make.py -d ~/lammps -j 16 -p #all kokkos orig -m linux -o kokkos_omp -a exe
|
|
||||||
Make.py -d ~/lammps -j 16 -p #all kokkos orig -kokkos cuda arch=20 \
|
|
||||||
-m cuda -o kokkos_cuda -a exe
|
|
||||||
|
|
||||||
Make.py -d ~/lammps -j 16 -p #all opt omp gpu cuda intel kokkos orig \
|
|
||||||
-gpu mode=double arch=20 -cuda mode=double arch=20 -m linux \
|
|
||||||
-o all -a libs exe
|
|
||||||
|
|
||||||
Make.py -d ~/lammps -j 16 -p #all opt omp gpu cuda intel kokkos orig \
|
|
||||||
-kokkos cuda arch=20 -gpu mode=double arch=20 \
|
|
||||||
-cuda mode=double arch=20 -m cuda -o all_cuda -a libs exe
|
|
||||||
|
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
To run on just CPUs (without using the GPU or USER-CUDA styles),
|
To run on just CPUs (without using the GPU styles),
|
||||||
do something like the following:
|
do something like the following:
|
||||||
|
|
||||||
mpirun -np 1 lmp_linux_double -v x 8 -v y 8 -v z 8 -v t 100 < in.lj
|
mpirun -np 1 lmp_linux_double -v x 8 -v y 8 -v z 8 -v t 100 < in.lj
|
||||||
@ -81,23 +47,5 @@ node via a "-ppn" setting.
|
|||||||
|
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
To run with the USER-CUDA package, do something like the following:
|
|
||||||
|
|
||||||
mpirun -np 1 lmp_linux_single -c on -sf cuda -v x 16 -v y 16 -v z 16 -v t 100 < in.lj
|
|
||||||
mpirun -np 2 lmp_linux_double -c on -sf cuda -pk cuda 2 -v x 32 -v y 64 -v z 64 -v t 100 < in.eam
|
|
||||||
|
|
||||||
The "xyz" settings determine the problem size. The "t" setting
|
|
||||||
determines the number of timesteps. The "np" setting determines how
|
|
||||||
many MPI tasks (per node) the problem will run on. The numeric
|
|
||||||
argument to the "-pk" setting is the number of GPUs (per node); 1 GPU
|
|
||||||
is the default. Note that the number of MPI tasks must equal the
|
|
||||||
number of GPUs (both per node) with the USER-CUDA package.
|
|
||||||
|
|
||||||
These mpirun commands run on a single node. To run on multiple nodes,
|
|
||||||
scale up the "-np" setting, and control the number of MPI tasks per
|
|
||||||
node via a "-ppn" setting.
|
|
||||||
|
|
||||||
------------------------------------------------------------------------
|
|
||||||
|
|
||||||
If the script has "titan" in its name, it was run on the Titan
|
If the script has "titan" in its name, it was run on the Titan
|
||||||
supercomputer at ORNL.
|
supercomputer at ORNL.
|
||||||
|
|||||||
46
bench/README
@ -71,49 +71,33 @@ integration
|
|||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
|
|
||||||
Here is a src/Make.py command which will perform a parallel build of a
|
|
||||||
LAMMPS executable "lmp_mpi" with all the packages needed by all the
|
|
||||||
examples. This assumes you have an MPI installed on your machine so
|
|
||||||
that "mpicxx" can be used as the wrapper compiler. It also assumes
|
|
||||||
you have an Intel compiler to use as the base compiler. You can leave
|
|
||||||
off the "-cc mpi wrap=icc" switch if that is not the case. You can
|
|
||||||
also leave off the "-fft fftw3" switch if you do not have the FFTW
|
|
||||||
(v3) installed as an FFT package, in which case the default KISS FFT
|
|
||||||
library will be used.
|
|
||||||
|
|
||||||
cd src
|
|
||||||
Make.py -j 16 -p none molecule manybody kspace granular rigid orig \
|
|
||||||
-cc mpi wrap=icc -fft fftw3 -a file mpi
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
|
||||||
|
|
||||||
Here is how to run each problem, assuming the LAMMPS executable is
|
Here is how to run each problem, assuming the LAMMPS executable is
|
||||||
named lmp_mpi, and you are using the mpirun command to launch parallel
|
named lmp_mpi, and you are using the mpirun command to launch parallel
|
||||||
runs:
|
runs:
|
||||||
|
|
||||||
Serial (one processor runs):
|
Serial (one processor runs):
|
||||||
|
|
||||||
lmp_mpi < in.lj
|
lmp_mpi -in in.lj
|
||||||
lmp_mpi < in.chain
|
lmp_mpi -in in.chain
|
||||||
lmp_mpi < in.eam
|
lmp_mpi -in in.eam
|
||||||
lmp_mpi < in.chute
|
lmp_mpi -in in.chute
|
||||||
lmp_mpi < in.rhodo
|
lmp_mpi -in in.rhodo
|
||||||
|
|
||||||
Parallel fixed-size runs (on 8 procs in this case):
|
Parallel fixed-size runs (on 8 procs in this case):
|
||||||
|
|
||||||
mpirun -np 8 lmp_mpi < in.lj
|
mpirun -np 8 lmp_mpi -in in.lj
|
||||||
mpirun -np 8 lmp_mpi < in.chain
|
mpirun -np 8 lmp_mpi -in in.chain
|
||||||
mpirun -np 8 lmp_mpi < in.eam
|
mpirun -np 8 lmp_mpi -in in.eam
|
||||||
mpirun -np 8 lmp_mpi < in.chute
|
mpirun -np 8 lmp_mpi -in in.chute
|
||||||
mpirun -np 8 lmp_mpi < in.rhodo
|
mpirun -np 8 lmp_mpi -in in.rhodo
|
||||||
|
|
||||||
Parallel scaled-size runs (on 16 procs in this case):
|
Parallel scaled-size runs (on 16 procs in this case):
|
||||||
|
|
||||||
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 < in.lj
|
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 -in in.lj
|
||||||
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 < in.chain.scaled
|
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 -in in.chain.scaled
|
||||||
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 < in.eam
|
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 -in in.eam
|
||||||
mpirun -np 16 lmp_mpi -var x 4 -var y 4 < in.chute.scaled
|
mpirun -np 16 lmp_mpi -var x 4 -var y 4 -in in.chute.scaled
|
||||||
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 < in.rhodo.scaled
|
mpirun -np 16 lmp_mpi -var x 2 -var y 2 -var z 4 -in in.rhodo.scaled
|
||||||
|
|
||||||
For each of the scaled-size runs you must set 3 variables as -var
|
For each of the scaled-size runs you must set 3 variables as -var
|
||||||
command line switches. The variables x,y,z are used in the input
|
command line switches. The variables x,y,z are used in the input
|
||||||
|
|||||||
547
cmake/CMakeLists.txt
Normal file
@ -0,0 +1,547 @@
|
|||||||
|
########################################
|
||||||
|
# CMake build system
|
||||||
|
# This file is part of LAMMPS
|
||||||
|
# Created by Christoph Junghans and Richard Berger
|
||||||
|
cmake_minimum_required(VERSION 3.1)
|
||||||
|
|
||||||
|
project(lammps)
|
||||||
|
set(SOVERSION 0)
|
||||||
|
set(LAMMPS_SOURCE_DIR ${CMAKE_SOURCE_DIR}/../src)
|
||||||
|
set(LAMMPS_LIB_SOURCE_DIR ${CMAKE_SOURCE_DIR}/../lib)
|
||||||
|
set(LAMMPS_LIB_BINARY_DIR ${CMAKE_BINARY_DIR}/lib)
|
||||||
|
|
||||||
|
#To not conflict with old Makefile build system, we build everything here
|
||||||
|
file(GLOB LIB_SOURCES ${LAMMPS_SOURCE_DIR}/*.cpp)
|
||||||
|
file(GLOB LMP_SOURCES ${LAMMPS_SOURCE_DIR}/main.cpp)
|
||||||
|
list(REMOVE_ITEM LIB_SOURCES ${LMP_SOURCES})
|
||||||
|
|
||||||
|
# Cmake modules/macros are in a subdirectory to keep this file cleaner
|
||||||
|
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/Modules)
|
||||||
|
|
||||||
|
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CXX_FLAGS)
|
||||||
|
#release comes with -O3 by default
|
||||||
|
set(CMAKE_BUILD_TYPE Release CACHE STRING "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel." FORCE)
|
||||||
|
endif(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CXX_FLAGS)
|
||||||
|
|
||||||
|
foreach(STYLE_FILE style_angle.h style_atom.h style_body.h style_bond.h style_command.h style_compute.h style_dihedral.h style_dump.h
|
||||||
|
style_fix.h style_improper.h style_integrate.h style_kspace.h style_minimize.h style_nbin.h style_npair.h style_nstencil.h
|
||||||
|
style_ntopo.h style_pair.h style_reader.h style_region.h)
|
||||||
|
if(EXISTS ${LAMMPS_SOURCE_DIR}/${STYLE_FILE})
|
||||||
|
message(FATAL_ERROR "There is a ${STYLE_FILE} in ${LAMMPS_SOURCE_DIR}, please clean up the source directory first")
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
enable_language(CXX)
|
||||||
|
|
||||||
|
######################################################################
|
||||||
|
# compiler tests
|
||||||
|
# these need ot be done early (before further tests).
|
||||||
|
#####################################################################
|
||||||
|
include(CheckCCompilerFlag)
|
||||||
|
|
||||||
|
########################################################################
|
||||||
|
# User input options #
|
||||||
|
########################################################################
|
||||||
|
option(BUILD_SHARED_LIBS "Build shared libs" OFF)
|
||||||
|
option(INSTALL_LIB "Install lammps library and header" ON)
|
||||||
|
include(GNUInstallDirs)
|
||||||
|
|
||||||
|
set(LAMMPS_LINK_LIBS)
|
||||||
|
option(ENABLE_MPI "Build MPI version" OFF)
|
||||||
|
if(ENABLE_MPI)
|
||||||
|
find_package(MPI REQUIRED)
|
||||||
|
include_directories(${MPI_C_INCLUDE_PATH})
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${MPI_CXX_LIBRARIES})
|
||||||
|
option(LAMMPS_LONGLONG_TO_LONG "Workaround if your system or MPI version does not recognize 'long long' data types" OFF)
|
||||||
|
if(LAMMPS_LONGLONG_TO_LONG)
|
||||||
|
add_definitions(-DLAMMPS_LONGLONG_TO_LONG)
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
file(GLOB MPI_SOURCES ${LAMMPS_SOURCE_DIR}/STUBS/mpi.c)
|
||||||
|
list(APPEND LIB_SOURCES ${MPI_SOURCES})
|
||||||
|
include_directories(${LAMMPS_SOURCE_DIR}/STUBS)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(LAMMPS_SIZE_LIMIT "LAMMPS_SMALLBIG" CACHE STRING "Lammps size limit")
|
||||||
|
set_property(CACHE LAMMPS_SIZE_LIMIT PROPERTY STRINGS LAMMPS_SMALLBIG LAMMPS_BIGBIG LAMMPS_SMALLSMALL)
|
||||||
|
add_definitions(-D${LAMMPS_SIZE_LIMIT})
|
||||||
|
|
||||||
|
set(LAMMPS_MEMALIGN "64" CACHE STRING "enables the use of the posix_memalign() call instead of malloc() when large chunks or memory are allocated by LAMMPS")
|
||||||
|
add_definitions(-DLAMMPS_MEMALIGN=${LAMMPS_MEMALIGN})
|
||||||
|
|
||||||
|
option(LAMMPS_EXCEPTIONS "enable the use of C++ exceptions for error messages (useful for library interface)" OFF)
|
||||||
|
if(LAMMPS_EXCEPTIONS)
|
||||||
|
add_definitions(-DLAMMPS_EXCEPTIONS)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
option(CMAKE_VERBOSE_MAKEFILE "Verbose makefile" OFF)
|
||||||
|
|
||||||
|
option(ENABLE_TESTING "Enable testing" OFF)
|
||||||
|
if(ENABLE_TESTING)
|
||||||
|
enable_testing()
|
||||||
|
endif(ENABLE_TESTING)
|
||||||
|
|
||||||
|
option(ENABLE_ALL "Build all default packages" OFF)
|
||||||
|
set(DEFAULT_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GRANULAR
|
||||||
|
KSPACE MANYBODY MC MEAM MISC MOLECULE PERI QEQ
|
||||||
|
REAX REPLICA RIGID SHOCK SNAP SRD)
|
||||||
|
set(OTHER_PACKAGES KIM PYTHON MSCG MPIIO VORONOI POEMS
|
||||||
|
USER-ATC USER-AWPMD USER-CGDNA
|
||||||
|
USER-CGSDK USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF
|
||||||
|
USER-FEP USER-H5MD USER-LB USER-MANIFOLD USER-MEAMC USER-MGPT USER-MISC
|
||||||
|
USER-MOLFILE USER-NETCDF USER-PHONON USER-QTB USER-REAXC USER-SMD
|
||||||
|
USER-SMTBQ USER-SPH USER-TALLY USER-VTK USER-QUIP USER-QMMM)
|
||||||
|
set(ACCEL_PACKAGES USER-OMP KOKKOS OPT USER-INTEL GPU)
|
||||||
|
foreach(PKG ${DEFAULT_PACKAGES})
|
||||||
|
option(ENABLE_${PKG} "Build ${PKG} Package" ${ENABLE_ALL})
|
||||||
|
endforeach()
|
||||||
|
foreach(PKG ${ACCEL_PACKAGES} ${OTHER_PACKAGES})
|
||||||
|
option(ENABLE_${PKG} "Build ${PKG} Package" OFF)
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
macro(pkg_depends PKG1 PKG2)
|
||||||
|
if(ENABLE_${PKG1} AND NOT ENABLE_${PKG2})
|
||||||
|
message(FATAL_ERROR "${PKG1} package needs LAMMPS to be build with ${PKG2}")
|
||||||
|
endif()
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
pkg_depends(MPIIO MPI)
|
||||||
|
pkg_depends(QEQ MANYBODY)
|
||||||
|
pkg_depends(USER-ATC MANYBODY)
|
||||||
|
pkg_depends(USER-H5MD MPI)
|
||||||
|
pkg_depends(USER-LB MPI)
|
||||||
|
pkg_depends(USER-MISC MANYBODY)
|
||||||
|
pkg_depends(USER-PHONON KSPACE)
|
||||||
|
|
||||||
|
if(ENABLE_BODY AND ENABLE_POEMS)
|
||||||
|
message(FATAL_ERROR "BODY and POEMS cannot be enabled at the same time")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
######################################################
|
||||||
|
# packages with special compiler needs or external libs
|
||||||
|
######################################################
|
||||||
|
if(ENABLE_REAX OR ENABLE_MEAM OR ENABLE_USER-QUIP OR ENABLE_USER-QMMM)
|
||||||
|
enable_language(Fortran)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_KOKKOS OR ENABLE_MSCG)
|
||||||
|
# starting with CMake 3.1 this is all you have to do to enforce C++11
|
||||||
|
set(CMAKE_CXX_STANDARD 11) # C++11...
|
||||||
|
set(CMAKE_CXX_STANDARD_REQUIRED ON) #...is required...
|
||||||
|
set(CMAKE_CXX_EXTENSIONS OFF) #...without compiler extensions like gnu++11
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_USER-OMP OR ENABLE_KOKKOS OR ENABLE_USER-INTEL)
|
||||||
|
find_package(OpenMP REQUIRED)
|
||||||
|
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
|
||||||
|
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_KSPACE)
|
||||||
|
set(FFT "KISSFFT" CACHE STRING "FFT library for KSPACE package")
|
||||||
|
set_property(CACHE FFT PROPERTY STRINGS KISSFFT FFTW3 MKL FFTW2)
|
||||||
|
if(NOT FFT STREQUAL "KISSFFT")
|
||||||
|
find_package(${FFT} REQUIRED)
|
||||||
|
add_definitions(-DFFT_${FFT})
|
||||||
|
include_directories(${${FFT}_INCLUDE_DIRS})
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${${FFT}_LIBRARIES})
|
||||||
|
endif()
|
||||||
|
set(PACK_OPTIMIZATION "PACK_ARRAY" CACHE STRING "Optimization for FFT")
|
||||||
|
set_property(CACHE PACK_OPTIMIZATION PROPERTY STRINGS PACK_ARRAY PACK_POINTER PACK_MEMCPY)
|
||||||
|
if(NOT PACK_OPTIMIZATION STREQUAL "PACK_ARRAY")
|
||||||
|
add_definitions(-D${PACK_OPTIMIZATION})
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_MISC)
|
||||||
|
option(LAMMPS_XDR "include XDR compatibility files for doing particle dumps in XTC format" OFF)
|
||||||
|
if(LAMMPS_XDR)
|
||||||
|
add_definitions(-DLAMMPS_XDR)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_MSCG OR ENABLE_USER-ATC OR ENABLE_USER-AWPMD OR ENABLE_USER-QUIP)
|
||||||
|
find_package(LAPACK)
|
||||||
|
if(LAPACK_FOUND)
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${LAPACK_LIBRARIES})
|
||||||
|
else()
|
||||||
|
enable_language(Fortran)
|
||||||
|
file(GLOB LAPACK_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/linalg/*.f)
|
||||||
|
list(APPEND LIB_SOURCES ${LAPACK_SOURCES})
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_PYTHON)
|
||||||
|
find_package(PythonInterp REQUIRED)
|
||||||
|
find_package(PythonLibs REQUIRED)
|
||||||
|
add_definitions(-DLMP_PYTHON)
|
||||||
|
include_directories(${PYTHON_INCLUDE_DIR})
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${PYTHON_LIBRARY})
|
||||||
|
if(NOT PYTHON_INSTDIR)
|
||||||
|
execute_process(COMMAND ${PYTHON_EXECUTABLE}
|
||||||
|
-c "import distutils.sysconfig as cg; print(cg.get_python_lib(1,0,prefix='${CMAKE_INSTALL_PREFIX}'))"
|
||||||
|
OUTPUT_VARIABLE PYTHON_INSTDIR OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
endif()
|
||||||
|
install(FILES ${CMAKE_SOURCE_DIR}/../python/lammps.py DESTINATION ${PYTHON_INSTDIR})
|
||||||
|
if(NOT BUILD_SHARED_LIBS)
|
||||||
|
message(FATAL_ERROR "Python package need lammps to be build shared, use -DBUILD_SHARED_LIBS=ON")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
find_package(JPEG)
|
||||||
|
if(JPEG_FOUND)
|
||||||
|
add_definitions(-DLAMMPS_JPEG)
|
||||||
|
include_directories(${JPEG_INCLUDE_DIR})
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${JPEG_LIBRARIES})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
find_package(PNG)
|
||||||
|
find_package(ZLIB)
|
||||||
|
if(PNG_FOUND AND ZLIB_FOUND)
|
||||||
|
include_directories(${PNG_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIRS})
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${PNG_LIBRARIES} ${ZLIB_LIBRARIES})
|
||||||
|
add_definitions(-DLAMMPS_PNG)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
find_program(GZIP_EXECUTABLE gzip)
|
||||||
|
find_package_handle_standard_args(GZIP REQUIRED_VARS GZIP_EXECUTABLE)
|
||||||
|
if(GZIP_FOUND)
|
||||||
|
add_definitions(-DLAMMPS_GZIP)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
find_program(FFMPEG_EXECUTABLE ffmpeg)
|
||||||
|
find_package_handle_standard_args(FFMPEG REQUIRED_VARS FFMPEG_EXECUTABLE)
|
||||||
|
if(FFMPEG_FOUND)
|
||||||
|
add_definitions(-DLAMMPS_FFMPEG)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_VORONOI)
|
||||||
|
find_package(VORO REQUIRED) #some distros
|
||||||
|
include_directories(${VORO_INCLUDE_DIRS})
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${VORO_LIBRARIES})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_USER-MOLFILE)
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${CMAKE_DL_LIBS})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_USER-NETCDF)
|
||||||
|
find_package(NetCDF REQUIRED)
|
||||||
|
include_directories(NETCDF_INCLUDE_DIR)
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${NETCDF_LIBRARY})
|
||||||
|
add_definitions(-DLMP_HAS_NETCDF -DNC_64BIT_DATA=0x0020)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_USER-SMD)
|
||||||
|
find_package(Eigen3 REQUIRED)
|
||||||
|
include_directories(${EIGEN3_INCLUDE_DIR})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_USER-QUIP)
|
||||||
|
find_package(QUIP REQUIRED)
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${QUIP_LIBRARIES} ${CMAKE_Fortran_IMPLICIT_LINK_LIBRARIES})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_USER-QMMM)
|
||||||
|
find_package(QE REQUIRED)
|
||||||
|
include_directories(${QE_INCLUDE_DIRS})
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${QE_LIBRARIES} ${CMAKE_Fortran_IMPLICIT_LINK_LIBRARIES})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_USER-AWPMD)
|
||||||
|
include_directories(${LAMMPS_LIB_SOURCE_DIR}/awpmd/systems/interact
|
||||||
|
${LAMMPS_LIB_SOURCE_DIR}/awpmd/ivutils/include)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_USER-H5MD)
|
||||||
|
find_package(HDF5 REQUIRED)
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${HDF5_LIBRARIES})
|
||||||
|
include_directories(${HDF5_INCLUDE_DIRS} ${LAMMPS_LIB_SOURCE_DIR}/h5md/include)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_USER-VTK)
|
||||||
|
find_package(VTK REQUIRED NO_MODULE)
|
||||||
|
include(${VTK_USE_FILE})
|
||||||
|
add_definitions(-DLAMMPS_VTK)
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${VTK_LIBRARIES})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_KIM)
|
||||||
|
find_package(KIM REQUIRED)
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${KIM_LIBRARIES})
|
||||||
|
include_directories(${KIM_INCLUDE_DIRS})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_MSCG)
|
||||||
|
find_package(GSL REQUIRED)
|
||||||
|
set(LAMMPS_LIB_MSCG_BIN_DIR ${LAMMPS_LIB_BINARY_DIR}/mscg)
|
||||||
|
set(MSCG_TARBALL ${LAMMPS_LIB_MSCG_BIN_DIR}/MS-CG-master.zip)
|
||||||
|
set(LAMMPS_LIB_MSCG_BIN_DIR ${LAMMPS_LIB_MSCG_BIN_DIR}/MSCG-release-master/src)
|
||||||
|
if(NOT EXISTS ${LAMMPS_LIB_MSCG_BIN_DIR})
|
||||||
|
if(NOT EXISTS ${MSCG_TARBALL})
|
||||||
|
message(STATUS "Downloading ${MSCG_TARBALL}")
|
||||||
|
file(DOWNLOAD
|
||||||
|
https://github.com/uchicago-voth/MSCG-release/archive/master.zip
|
||||||
|
${MSCG_TARBALL} SHOW_PROGRESS) #EXPECTED_MD5 cannot be due due to master
|
||||||
|
endif()
|
||||||
|
message(STATUS "Unpacking ${MSCG_TARBALL}")
|
||||||
|
execute_process(COMMAND ${CMAKE_COMMAND} -E tar xvf ${MSCG_TARBALL}
|
||||||
|
WORKING_DIRECTORY ${LAMMPS_LIB_BINARY_DIR}/mscg)
|
||||||
|
endif()
|
||||||
|
file(GLOB MSCG_SOURCES ${LAMMPS_LIB_MSCG_BIN_DIR}/*.cpp)
|
||||||
|
list(APPEND LIB_SOURCES ${MSCG_SOURCES})
|
||||||
|
foreach(MSCG_SOURCE ${MSCG_SOURCES})
|
||||||
|
set_property(SOURCE ${MSCG_SOURCE} APPEND PROPERTY COMPILE_DEFINITIONS
|
||||||
|
DIMENSION=3 _exclude_gromacs=1)
|
||||||
|
endforeach()
|
||||||
|
include_directories(${LAMMPS_LIB_MSCG_BIN_DIR} ${GSL_INCLUDE_DIRS})
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${GSL_LIBRARIES})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
########################################################################
|
||||||
|
# Basic system tests (standard libraries, headers, functions, types) #
|
||||||
|
########################################################################
|
||||||
|
include(CheckIncludeFile)
|
||||||
|
foreach(HEADER math.h)
|
||||||
|
check_include_file(${HEADER} FOUND_${HEADER})
|
||||||
|
if(NOT FOUND_${HEADER})
|
||||||
|
message(FATAL_ERROR "Could not find needed header - ${HEADER}")
|
||||||
|
endif(NOT FOUND_${HEADER})
|
||||||
|
endforeach(HEADER)
|
||||||
|
|
||||||
|
set(MATH_LIBRARIES "m" CACHE STRING "math library")
|
||||||
|
mark_as_advanced( MATH_LIBRARIES )
|
||||||
|
include(CheckLibraryExists)
|
||||||
|
foreach(FUNC sin cos)
|
||||||
|
check_library_exists(${MATH_LIBRARIES} ${FUNC} "" FOUND_${FUNC}_${MATH_LIBRARIES})
|
||||||
|
if(NOT FOUND_${FUNC}_${MATH_LIBRARIES})
|
||||||
|
message(FATAL_ERROR "Could not find needed math function - ${FUNC}")
|
||||||
|
endif(NOT FOUND_${FUNC}_${MATH_LIBRARIES})
|
||||||
|
endforeach(FUNC)
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${MATH_LIBRARIES})
|
||||||
|
|
||||||
|
######################################
|
||||||
|
# Generate Basic Style files
|
||||||
|
######################################
|
||||||
|
include(StyleHeaderUtils)
|
||||||
|
RegisterStyles(${LAMMPS_SOURCE_DIR})
|
||||||
|
|
||||||
|
##############################################
|
||||||
|
# add sources of enabled packages
|
||||||
|
############################################
|
||||||
|
foreach(PKG ${DEFAULT_PACKAGES} ${OTHER_PACKAGES})
|
||||||
|
if(ENABLE_${PKG})
|
||||||
|
set(${PKG}_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/${PKG})
|
||||||
|
|
||||||
|
# detects styles in package and adds them to global list
|
||||||
|
RegisterStyles(${${PKG}_SOURCES_DIR})
|
||||||
|
|
||||||
|
file(GLOB ${PKG}_SOURCES ${${PKG}_SOURCES_DIR}/*.cpp)
|
||||||
|
list(APPEND LIB_SOURCES ${${PKG}_SOURCES})
|
||||||
|
include_directories(${${PKG}_SOURCES_DIR})
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
##############################################
|
||||||
|
# add lib sources of (simple) enabled packages
|
||||||
|
############################################
|
||||||
|
foreach(SIMPLE_LIB REAX MEAM POEMS USER-ATC USER-AWPMD USER-COLVARS USER-H5MD
|
||||||
|
USER-MOLFILE USER-QMMM)
|
||||||
|
if(ENABLE_${SIMPLE_LIB})
|
||||||
|
string(REGEX REPLACE "^USER-" "" SIMPLE_LIB "${SIMPLE_LIB}")
|
||||||
|
string(TOLOWER "${SIMPLE_LIB}" INC_DIR)
|
||||||
|
file(GLOB_RECURSE ${SIMPLE_LIB}_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/${INC_DIR}/*.F
|
||||||
|
${LAMMPS_LIB_SOURCE_DIR}/${INC_DIR}/*.c ${LAMMPS_LIB_SOURCE_DIR}/${INC_DIR}/*.cpp)
|
||||||
|
list(APPEND LIB_SOURCES ${${SIMPLE_LIB}_SOURCES})
|
||||||
|
include_directories(${LAMMPS_LIB_SOURCE_DIR}/${INC_DIR})
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
######################################################################
|
||||||
|
# packages which selectively include variants based on enabled styles
|
||||||
|
# e.g. accelerator packages
|
||||||
|
######################################################################
|
||||||
|
if(ENABLE_USER-OMP)
|
||||||
|
set(USER-OMP_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/USER-OMP)
|
||||||
|
set(USER-OMP_SOURCES ${USER-OMP_SOURCES_DIR}/thr_data.cpp
|
||||||
|
${USER-OMP_SOURCES_DIR}/thr_omp.cpp
|
||||||
|
${USER-OMP_SOURCES_DIR}/fix_nh_omp.cpp
|
||||||
|
${USER-OMP_SOURCES_DIR}/fix_nh_sphere_omp.cpp)
|
||||||
|
set_property(GLOBAL PROPERTY "OMP_SOURCES" "${USER-OMP_SOURCES}")
|
||||||
|
|
||||||
|
# detects styles which have USER-OMP version
|
||||||
|
RegisterStylesExt(${USER-OMP_SOURCES_DIR} omp OMP_SOURCES)
|
||||||
|
|
||||||
|
get_property(USER-OMP_SOURCES GLOBAL PROPERTY OMP_SOURCES)
|
||||||
|
|
||||||
|
list(APPEND LIB_SOURCES ${USER-OMP_SOURCES})
|
||||||
|
include_directories(${USER-OMP_SOURCES_DIR})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_KOKKOS)
|
||||||
|
set(LAMMPS_LIB_KOKKOS_SRC_DIR ${LAMMPS_LIB_SOURCE_DIR}/kokkos)
|
||||||
|
set(LAMMPS_LIB_KOKKOS_BIN_DIR ${LAMMPS_LIB_BINARY_DIR}/kokkos)
|
||||||
|
add_definitions(-DLMP_KOKKOS)
|
||||||
|
add_subdirectory(${LAMMPS_LIB_KOKKOS_SRC_DIR} ${LAMMPS_LIB_KOKKOS_BIN_DIR})
|
||||||
|
|
||||||
|
set(Kokkos_INCLUDE_DIRS ${LAMMPS_LIB_KOKKOS_SRC_DIR}/core/src
|
||||||
|
${LAMMPS_LIB_KOKKOS_SRC_DIR}/containers/src
|
||||||
|
${LAMMPS_LIB_KOKKOS_SRC_DIR}/algorithms/src
|
||||||
|
${LAMMPS_LIB_KOKKOS_BIN_DIR})
|
||||||
|
include_directories(${Kokkos_INCLUDE_DIRS})
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS kokkos)
|
||||||
|
|
||||||
|
set(KOKKOS_PKG_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/KOKKOS)
|
||||||
|
set(KOKKOS_PKG_SOURCES ${KOKKOS_PKG_SOURCES_DIR}/kokkos.cpp
|
||||||
|
${KOKKOS_PKG_SOURCES_DIR}/atom_kokkos.cpp
|
||||||
|
${KOKKOS_PKG_SOURCES_DIR}/atom_vec_kokkos.cpp
|
||||||
|
${KOKKOS_PKG_SOURCES_DIR}/comm_kokkos.cpp
|
||||||
|
${KOKKOS_PKG_SOURCES_DIR}/comm_tiled_kokkos.cpp
|
||||||
|
${KOKKOS_PKG_SOURCES_DIR}/neighbor_kokkos.cpp
|
||||||
|
${KOKKOS_PKG_SOURCES_DIR}/neigh_list_kokkos.cpp
|
||||||
|
${KOKKOS_PKG_SOURCES_DIR}/neigh_bond_kokkos.cpp
|
||||||
|
${KOKKOS_PKG_SOURCES_DIR}/fix_nh_kokkos.cpp
|
||||||
|
${KOKKOS_PKG_SOURCES_DIR}/domain_kokkos.cpp
|
||||||
|
${KOKKOS_PKG_SOURCES_DIR}/modify_kokkos.cpp)
|
||||||
|
set_property(GLOBAL PROPERTY "KOKKOS_PKG_SOURCES" "${KOKKOS_PKG_SOURCES}")
|
||||||
|
|
||||||
|
# detects styles which have KOKKOS version
|
||||||
|
RegisterStylesExt(${KOKKOS_PKG_SOURCES_DIR} kokkos KOKKOS_PKG_SOURCES)
|
||||||
|
|
||||||
|
get_property(KOKKOS_PKG_SOURCES GLOBAL PROPERTY KOKKOS_PKG_SOURCES)
|
||||||
|
|
||||||
|
list(APPEND LIB_SOURCES ${KOKKOS_PKG_SOURCES})
|
||||||
|
include_directories(${KOKKOS_PKG_SOURCES_DIR})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_OPT)
|
||||||
|
set(OPT_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/OPT)
|
||||||
|
set(OPT_SOURCES)
|
||||||
|
set_property(GLOBAL PROPERTY "OPT_SOURCES" "${OPT_SOURCES}")
|
||||||
|
|
||||||
|
# detects styles which have OPT version
|
||||||
|
RegisterStylesExt(${OPT_SOURCES_DIR} opt OPT_SOURCES)
|
||||||
|
|
||||||
|
get_property(OPT_SOURCES GLOBAL PROPERTY OPT_SOURCES)
|
||||||
|
|
||||||
|
list(APPEND LIB_SOURCES ${OPT_SOURCES})
|
||||||
|
include_directories(${OPT_SOURCES_DIR})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_USER-INTEL)
|
||||||
|
set(USER-INTEL_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/USER-INTEL)
|
||||||
|
set(USER-INTEL_SOURCES ${USER-INTEL_SOURCES_DIR}/intel_preprocess.h
|
||||||
|
${USER-INTEL_SOURCES_DIR}/intel_buffers.h
|
||||||
|
${USER-INTEL_SOURCES_DIR}/intel_buffers.cpp
|
||||||
|
${USER-INTEL_SOURCES_DIR}/math_extra_intel.h
|
||||||
|
${USER-INTEL_SOURCES_DIR}/nbin_intel.h
|
||||||
|
${USER-INTEL_SOURCES_DIR}/nbin_intel.cpp
|
||||||
|
${USER-INTEL_SOURCES_DIR}/npair_intel.h
|
||||||
|
${USER-INTEL_SOURCES_DIR}/npair_intel.cpp
|
||||||
|
${USER-INTEL_SOURCES_DIR}/intel_simd.h
|
||||||
|
${USER-INTEL_SOURCES_DIR}/intel_intrinsics.h)
|
||||||
|
|
||||||
|
set_property(GLOBAL PROPERTY "USER-INTEL_SOURCES" "${USER-INTEL_SOURCES}")
|
||||||
|
|
||||||
|
# detects styles which have USER-INTEL version
|
||||||
|
RegisterStylesExt(${USER-INTEL_SOURCES_DIR} opt USER-INTEL_SOURCES)
|
||||||
|
|
||||||
|
get_property(USER-INTEL_SOURCES GLOBAL PROPERTY USER-INTEL_SOURCES)
|
||||||
|
|
||||||
|
list(APPEND LIB_SOURCES ${USER-INTEL_SOURCES})
|
||||||
|
include_directories(${USER-INTEL_SOURCES_DIR})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_GPU)
|
||||||
|
find_package(CUDA REQUIRED)
|
||||||
|
find_program(BIN2C bin2c)
|
||||||
|
if(NOT BIN2C)
|
||||||
|
message(FATAL_ERROR "Couldn't find bin2c, use -DBIN2C helping cmake to find it.")
|
||||||
|
endif()
|
||||||
|
include_directories(${CUDA_INCLUDE_DIRS})
|
||||||
|
list(APPEND LAMMPS_LINK_LIBS ${CUDA_LIBRARIES} ${CUDA_CUDA_LIBRARY})
|
||||||
|
set(GPU_PREC "SINGLE_DOUBLE" CACHE STRING "Lammps gpu precision size")
|
||||||
|
set_property(CACHE GPU_PREC PROPERTY STRINGS SINGLE_DOUBLE SINGLE_SINGLE DOUBLE_DOUBLE)
|
||||||
|
add_definitions(-D_${GPU_PREC})
|
||||||
|
add_definitions(-DNV_KERNEL -DUCL_CUDADR)
|
||||||
|
option(CUDPP_OPT "Enable CUDPP_OPT" ON)
|
||||||
|
|
||||||
|
set(GPU_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/GPU)
|
||||||
|
set(GPU_SOURCES ${GPU_SOURCES_DIR}/gpu_extra.h)
|
||||||
|
|
||||||
|
set_property(GLOBAL PROPERTY "GPU_SOURCES" "${GPU_SOURCES}")
|
||||||
|
|
||||||
|
# detects styles which have GPU version
|
||||||
|
RegisterStylesExt(${GPU_SOURCES_DIR} opt GPU_SOURCES)
|
||||||
|
|
||||||
|
get_property(GPU_SOURCES GLOBAL PROPERTY GPU_SOURCES)
|
||||||
|
|
||||||
|
file(GLOB GPU_LIB_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/gpu/*.cpp)
|
||||||
|
file(GLOB GPU_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/*.cu ${CMAKE_SOURCE_DIR}/gpu/*.cu)
|
||||||
|
file(GLOB_RECURSE GPU_NOT_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_pppm.cu)
|
||||||
|
list(REMOVE_ITEM GPU_LIB_CU ${GPU_NOT_LIB_CU})
|
||||||
|
include_directories(${GPU_SOURCES_DIR} ${LAMMPS_LIB_SOURCE_DIR}/gpu ${LAMMPS_LIB_BINARY_DIR}/gpu)
|
||||||
|
if(CUDPP_OPT)
|
||||||
|
include_directories(${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini)
|
||||||
|
add_definitions(-DCUDPP_OPT)
|
||||||
|
file(GLOB GPU_LIB_CUDPP_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini/*.cpp)
|
||||||
|
file(GLOB GPU_LIB_CUDPP_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini/*.cu)
|
||||||
|
endif()
|
||||||
|
cuda_compile(GPU_OBJS ${GPU_LIB_CU} ${GPU_LIB_CUDPP_CU} OPTIONS $<$<BOOL:${BUILD_SHARED_LIBS}>:-Xcompiler=-fPIC>)
|
||||||
|
file(MAKE_DIRECTORY ${LAMMPS_LIB_BINARY_DIR}/gpu)
|
||||||
|
foreach(CU_OBJ ${GPU_OBJS})
|
||||||
|
get_filename_component(CU_NAME ${CU_OBJ} NAME_WE)
|
||||||
|
string(REGEX REPLACE "^.*_lal_" "" CU_NAME "${CU_NAME}")
|
||||||
|
add_custom_command(OUTPUT ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h
|
||||||
|
COMMAND ${BIN2C} -c -n ${CU_NAME} ${CU_OBJ} > ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h
|
||||||
|
DEPENDS ${CU_OBJ}
|
||||||
|
COMMENT "Generating ${CU_NAME}_cubin.h")
|
||||||
|
list(APPEND LIB_SOURCES ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h)
|
||||||
|
if(${CU_NAME} STREQUAL "pppm_d") #pppm_d doesn't get linked into the lib
|
||||||
|
set(CU_FORBIDDEN_OBJ "${CU_OBJ}")
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
list(REMOVE_ITEM GPU_OBJS "${CU_FORBIDDEN_OBJ}")
|
||||||
|
list(APPEND LIB_SOURCES ${GPU_SOURCES} ${GPU_LIB_SOURCES} ${GPU_LIB_CUDPP_SOURCES} ${GPU_OBJS})
|
||||||
|
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${LAMMPS_LIB_BINARY_DIR}/gpu/*_cubin.h")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
######################################################
|
||||||
|
# Generate style headers based on global list of
|
||||||
|
# styles registered during package selection
|
||||||
|
######################################################
|
||||||
|
set(LAMMPS_STYLE_HEADERS_DIR ${CMAKE_CURRENT_BINARY_DIR}/styles)
|
||||||
|
|
||||||
|
GenerateStyleHeaders(${LAMMPS_STYLE_HEADERS_DIR})
|
||||||
|
|
||||||
|
include_directories(${LAMMPS_SOURCE_DIR})
|
||||||
|
include_directories(${LAMMPS_STYLE_HEADERS_DIR})
|
||||||
|
|
||||||
|
###########################################
|
||||||
|
# Actually add executable and lib to build
|
||||||
|
############################################
|
||||||
|
add_library(lammps ${LIB_SOURCES})
|
||||||
|
target_link_libraries(lammps ${LAMMPS_LINK_LIBS})
|
||||||
|
set_target_properties(lammps PROPERTIES SOVERSION ${SOVERSION})
|
||||||
|
if(INSTALL_LIB)
|
||||||
|
install(TARGETS lammps LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||||
|
install(FILES ${LAMMPS_SOURCE_DIR}/lammps.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||||
|
elseif(BUILD_SHARED_LIBS)
|
||||||
|
message(FATAL_ERROR "Shared library has to be installed, use -DINSTALL_LIB=ON to install lammps with a library")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
add_executable(lmp ${LMP_SOURCES})
|
||||||
|
target_link_libraries(lmp lammps)
|
||||||
|
install(TARGETS lmp DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||||
|
if(ENABLE_TESTING)
|
||||||
|
add_test(ShowHelp ${CMAKE_CURRENT_BINARY_DIR}/lmp -help)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
##################################
|
||||||
|
# Print package summary
|
||||||
|
##################################
|
||||||
|
foreach(PKG ${DEFAULT_PACKAGES} ${OTHER_PACKAGES} ${ACCEL_PACKAGES})
|
||||||
|
if(ENABLE_${PKG})
|
||||||
|
message(STATUS "Building package: ${PKG}")
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
22
cmake/Modules/FindFFTW2.cmake
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
# - Find fftw2
|
||||||
|
# Find the native FFTW2 headers and libraries.
|
||||||
|
#
|
||||||
|
# FFTW2_INCLUDE_DIRS - where to find fftw2.h, etc.
|
||||||
|
# FFTW2_LIBRARIES - List of libraries when using fftw2.
|
||||||
|
# FFTW2_FOUND - True if fftw2 found.
|
||||||
|
#
|
||||||
|
|
||||||
|
find_path(FFTW2_INCLUDE_DIR fftw.h)
|
||||||
|
|
||||||
|
find_library(FFTW2_LIBRARY NAMES fftw)
|
||||||
|
|
||||||
|
set(FFTW2_LIBRARIES ${FFTW2_LIBRARY})
|
||||||
|
set(FFTW2_INCLUDE_DIRS ${FFTW2_INCLUDE_DIR})
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
# handle the QUIETLY and REQUIRED arguments and set FFTW2_FOUND to TRUE
|
||||||
|
# if all listed variables are TRUE
|
||||||
|
|
||||||
|
find_package_handle_standard_args(FFTW2 DEFAULT_MSG FFTW2_LIBRARY FFTW2_INCLUDE_DIR)
|
||||||
|
|
||||||
|
mark_as_advanced(FFTW2_INCLUDE_DIR FFTW2_LIBRARY )
|
||||||
25
cmake/Modules/FindFFTW3.cmake
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
# - Find fftw3
|
||||||
|
# Find the native FFTW3 headers and libraries.
|
||||||
|
#
|
||||||
|
# FFTW3_INCLUDE_DIRS - where to find fftw3.h, etc.
|
||||||
|
# FFTW3_LIBRARIES - List of libraries when using fftw3.
|
||||||
|
# FFTW3_FOUND - True if fftw3 found.
|
||||||
|
#
|
||||||
|
|
||||||
|
find_package(PkgConfig)
|
||||||
|
|
||||||
|
pkg_check_modules(PC_FFTW3 fftw3)
|
||||||
|
find_path(FFTW3_INCLUDE_DIR fftw3.h HINTS ${PC_FFTW3_INCLUDE_DIRS})
|
||||||
|
|
||||||
|
find_library(FFTW3_LIBRARY NAMES fftw3 HINTS ${PC_FFTW3_LIBRARY_DIRS})
|
||||||
|
|
||||||
|
set(FFTW3_LIBRARIES ${FFTW3_LIBRARY})
|
||||||
|
set(FFTW3_INCLUDE_DIRS ${FFTW3_INCLUDE_DIR})
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
# handle the QUIETLY and REQUIRED arguments and set FFTW3_FOUND to TRUE
|
||||||
|
# if all listed variables are TRUE
|
||||||
|
|
||||||
|
find_package_handle_standard_args(FFTW3 DEFAULT_MSG FFTW3_LIBRARY FFTW3_INCLUDE_DIR)
|
||||||
|
|
||||||
|
mark_as_advanced(FFTW3_INCLUDE_DIR FFTW3_LIBRARY )
|
||||||
22
cmake/Modules/FindKIM.cmake
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
# - Find kim
|
||||||
|
# Find the native KIM headers and libraries.
|
||||||
|
#
|
||||||
|
# KIM_INCLUDE_DIRS - where to find kim.h, etc.
|
||||||
|
# KIM_LIBRARIES - List of libraries when using kim.
|
||||||
|
# KIM_FOUND - True if kim found.
|
||||||
|
#
|
||||||
|
|
||||||
|
find_path(KIM_INCLUDE_DIR KIM_API.h PATH_SUFFIXES kim-api-v1)
|
||||||
|
|
||||||
|
find_library(KIM_LIBRARY NAMES kim-api-v1)
|
||||||
|
|
||||||
|
set(KIM_LIBRARIES ${KIM_LIBRARY})
|
||||||
|
set(KIM_INCLUDE_DIRS ${KIM_INCLUDE_DIR})
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
# handle the QUIETLY and REQUIRED arguments and set KIM_FOUND to TRUE
|
||||||
|
# if all listed variables are TRUE
|
||||||
|
|
||||||
|
find_package_handle_standard_args(KIM DEFAULT_MSG KIM_LIBRARY KIM_INCLUDE_DIR)
|
||||||
|
|
||||||
|
mark_as_advanced(KIM_INCLUDE_DIR KIM_LIBRARY )
|
||||||
22
cmake/Modules/FindMKL.cmake
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
# - Find mkl
|
||||||
|
# Find the native MKL headers and libraries.
|
||||||
|
#
|
||||||
|
# MKL_INCLUDE_DIRS - where to find mkl.h, etc.
|
||||||
|
# MKL_LIBRARIES - List of libraries when using mkl.
|
||||||
|
# MKL_FOUND - True if mkl found.
|
||||||
|
#
|
||||||
|
|
||||||
|
find_path(MKL_INCLUDE_DIR mkl_dfti.h HINTS $ENV{MKLROOT}/include)
|
||||||
|
|
||||||
|
find_library(MKL_LIBRARY NAMES mkl_rt HINTS $ENV{MKLROOT}/lib $ENV{MKLROOT}/lib/intel64)
|
||||||
|
|
||||||
|
set(MKL_LIBRARIES ${MKL_LIBRARY})
|
||||||
|
set(MKL_INCLUDE_DIRS ${MKL_INCLUDE_DIR})
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
# handle the QUIETLY and REQUIRED arguments and set MKL_FOUND to TRUE
|
||||||
|
# if all listed variables are TRUE
|
||||||
|
|
||||||
|
find_package_handle_standard_args(MKL DEFAULT_MSG MKL_LIBRARY MKL_INCLUDE_DIR)
|
||||||
|
|
||||||
|
mark_as_advanced(MKL_INCLUDE_DIR MKL_LIBRARY )
|
||||||
118
cmake/Modules/FindNetCDF.cmake
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
# - Find NetCDF
|
||||||
|
# Find the native NetCDF includes and library
|
||||||
|
#
|
||||||
|
# NETCDF_INCLUDE_DIR - user modifiable choice of where netcdf headers are
|
||||||
|
# NETCDF_LIBRARY - user modifiable choice of where netcdf libraries are
|
||||||
|
#
|
||||||
|
# Your package can require certain interfaces to be FOUND by setting these
|
||||||
|
#
|
||||||
|
# NETCDF_CXX - require the C++ interface and link the C++ library
|
||||||
|
# NETCDF_F77 - require the F77 interface and link the fortran library
|
||||||
|
# NETCDF_F90 - require the F90 interface and link the fortran library
|
||||||
|
#
|
||||||
|
# Or equivalently by calling FindNetCDF with a COMPONENTS argument containing one or
|
||||||
|
# more of "CXX;F77;F90".
|
||||||
|
#
|
||||||
|
# When interfaces are requested the user has access to interface specific hints:
|
||||||
|
#
|
||||||
|
# NETCDF_${LANG}_INCLUDE_DIR - where to search for interface header files
|
||||||
|
# NETCDF_${LANG}_LIBRARY - where to search for interface libraries
|
||||||
|
#
|
||||||
|
# This module returns these variables for the rest of the project to use.
|
||||||
|
#
|
||||||
|
# NETCDF_FOUND - True if NetCDF found including required interfaces (see below)
|
||||||
|
# NETCDF_LIBRARIES - All netcdf related libraries.
|
||||||
|
# NETCDF_INCLUDE_DIRS - All directories to include.
|
||||||
|
# NETCDF_HAS_INTERFACES - Whether requested interfaces were found or not.
|
||||||
|
# NETCDF_${LANG}_INCLUDE_DIRS/NETCDF_${LANG}_LIBRARIES - C/C++/F70/F90 only interface
|
||||||
|
#
|
||||||
|
# Normal usage would be:
|
||||||
|
# set (NETCDF_F90 "YES")
|
||||||
|
# find_package (NetCDF REQUIRED)
|
||||||
|
# target_link_libraries (uses_everthing ${NETCDF_LIBRARIES})
|
||||||
|
# target_link_libraries (only_uses_f90 ${NETCDF_F90_LIBRARIES})
|
||||||
|
|
||||||
|
#search starting from user editable cache var
|
||||||
|
if (NETCDF_INCLUDE_DIR AND NETCDF_LIBRARY)
|
||||||
|
# Already in cache, be silent
|
||||||
|
set (NETCDF_FIND_QUIETLY TRUE)
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
set(USE_DEFAULT_PATHS "NO_DEFAULT_PATH")
|
||||||
|
if(NETCDF_USE_DEFAULT_PATHS)
|
||||||
|
set(USE_DEFAULT_PATHS "")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
find_path (NETCDF_INCLUDE_DIR netcdf.h
|
||||||
|
HINTS "${NETCDF_DIR}/include")
|
||||||
|
mark_as_advanced (NETCDF_INCLUDE_DIR)
|
||||||
|
set (NETCDF_C_INCLUDE_DIRS ${NETCDF_INCLUDE_DIR})
|
||||||
|
|
||||||
|
find_library (NETCDF_LIBRARY NAMES netcdf
|
||||||
|
HINTS "${NETCDF_DIR}/lib")
|
||||||
|
mark_as_advanced (NETCDF_LIBRARY)
|
||||||
|
|
||||||
|
set (NETCDF_C_LIBRARIES ${NETCDF_LIBRARY})
|
||||||
|
|
||||||
|
#start finding requested language components
|
||||||
|
set (NetCDF_libs "")
|
||||||
|
set (NetCDF_includes "${NETCDF_INCLUDE_DIR}")
|
||||||
|
|
||||||
|
get_filename_component (NetCDF_lib_dirs "${NETCDF_LIBRARY}" PATH)
|
||||||
|
set (NETCDF_HAS_INTERFACES "YES") # will be set to NO if we're missing any interfaces
|
||||||
|
|
||||||
|
macro (NetCDF_check_interface lang header libs)
|
||||||
|
if (NETCDF_${lang})
|
||||||
|
#search starting from user modifiable cache var
|
||||||
|
find_path (NETCDF_${lang}_INCLUDE_DIR NAMES ${header}
|
||||||
|
HINTS "${NETCDF_INCLUDE_DIR}"
|
||||||
|
HINTS "${NETCDF_${lang}_ROOT}/include"
|
||||||
|
${USE_DEFAULT_PATHS})
|
||||||
|
|
||||||
|
find_library (NETCDF_${lang}_LIBRARY NAMES ${libs}
|
||||||
|
HINTS "${NetCDF_lib_dirs}"
|
||||||
|
HINTS "${NETCDF_${lang}_ROOT}/lib"
|
||||||
|
${USE_DEFAULT_PATHS})
|
||||||
|
|
||||||
|
mark_as_advanced (NETCDF_${lang}_INCLUDE_DIR NETCDF_${lang}_LIBRARY)
|
||||||
|
|
||||||
|
#export to internal varS that rest of project can use directly
|
||||||
|
set (NETCDF_${lang}_LIBRARIES ${NETCDF_${lang}_LIBRARY})
|
||||||
|
set (NETCDF_${lang}_INCLUDE_DIRS ${NETCDF_${lang}_INCLUDE_DIR})
|
||||||
|
|
||||||
|
if (NETCDF_${lang}_INCLUDE_DIR AND NETCDF_${lang}_LIBRARY)
|
||||||
|
list (APPEND NetCDF_libs ${NETCDF_${lang}_LIBRARY})
|
||||||
|
list (APPEND NetCDF_includes ${NETCDF_${lang}_INCLUDE_DIR})
|
||||||
|
else ()
|
||||||
|
set (NETCDF_HAS_INTERFACES "NO")
|
||||||
|
message (STATUS "Failed to find NetCDF interface for ${lang}")
|
||||||
|
endif ()
|
||||||
|
endif ()
|
||||||
|
endmacro ()
|
||||||
|
|
||||||
|
list (FIND NetCDF_FIND_COMPONENTS "CXX" _nextcomp)
|
||||||
|
if (_nextcomp GREATER -1)
|
||||||
|
set (NETCDF_CXX 1)
|
||||||
|
endif ()
|
||||||
|
list (FIND NetCDF_FIND_COMPONENTS "F77" _nextcomp)
|
||||||
|
if (_nextcomp GREATER -1)
|
||||||
|
set (NETCDF_F77 1)
|
||||||
|
endif ()
|
||||||
|
list (FIND NetCDF_FIND_COMPONENTS "F90" _nextcomp)
|
||||||
|
if (_nextcomp GREATER -1)
|
||||||
|
set (NETCDF_F90 1)
|
||||||
|
endif ()
|
||||||
|
NetCDF_check_interface (CXX netcdfcpp.h netcdf_c++)
|
||||||
|
NetCDF_check_interface (F77 netcdf.inc netcdff)
|
||||||
|
NetCDF_check_interface (F90 netcdf.mod netcdff)
|
||||||
|
|
||||||
|
#export accumulated results to internal varS that rest of project can depend on
|
||||||
|
list (APPEND NetCDF_libs "${NETCDF_C_LIBRARIES}")
|
||||||
|
set (NETCDF_LIBRARIES ${NetCDF_libs})
|
||||||
|
set (NETCDF_INCLUDE_DIRS ${NetCDF_includes})
|
||||||
|
|
||||||
|
# handle the QUIETLY and REQUIRED arguments and set NETCDF_FOUND to TRUE if
|
||||||
|
# all listed variables are TRUE
|
||||||
|
include (FindPackageHandleStandardArgs)
|
||||||
|
find_package_handle_standard_args (NetCDF
|
||||||
|
DEFAULT_MSG NETCDF_LIBRARIES NETCDF_INCLUDE_DIRS NETCDF_HAS_INTERFACES)
|
||||||
29
cmake/Modules/FindQE.cmake
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
# - Find quantum-espresso
|
||||||
|
# Find the native QE headers and libraries.
|
||||||
|
#
|
||||||
|
# QE_INCLUDE_DIRS - where to find quantum-espresso.h, etc.
|
||||||
|
# QE_LIBRARIES - List of libraries when using quantum-espresso.
|
||||||
|
# QE_FOUND - True if quantum-espresso found.
|
||||||
|
#
|
||||||
|
|
||||||
|
find_path(QE_INCLUDE_DIR libqecouple.h PATH_SUFFIXES COUPLE/include)
|
||||||
|
|
||||||
|
find_library(QECOUPLE_LIBRARY NAMES qecouple)
|
||||||
|
find_library(PW_LIBRARY NAMES pw)
|
||||||
|
find_library(QEMOD_LIBRARY NAMES qemod)
|
||||||
|
find_library(QEFFT_LIBRARY NAMES qefft)
|
||||||
|
find_library(QELA_LIBRARY NAMES qela)
|
||||||
|
find_library(CLIB_LIBRARY NAMES clib)
|
||||||
|
find_library(IOTK_LIBRARY NAMES iotk)
|
||||||
|
|
||||||
|
|
||||||
|
set(QE_LIBRARIES ${QECOUPLE_LIBRARY} ${PW_LIBRARY} ${QEMOD_LIBRARY} ${QEFFT_LIBRARY} ${QELA_LIBRARY} ${CLIB_LIBRARY} ${IOTK_LIBRARY})
|
||||||
|
set(QE_INCLUDE_DIRS ${QE_INCLUDE_DIR})
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
# handle the QUIETLY and REQUIRED arguments and set QE_FOUND to TRUE
|
||||||
|
# if all listed variables are TRUE
|
||||||
|
|
||||||
|
find_package_handle_standard_args(QE DEFAULT_MSG QECOUPLE_LIBRARY PW_LIBRARY QEMOD_LIBRARY QEFFT_LIBRARY QELA_LIBRARY CLIB_LIBRARY IOTK_LIBRARY QE_INCLUDE_DIR)
|
||||||
|
|
||||||
|
mark_as_advanced(QE_INCLUDE_DIR QECOUPLE_LIBRARY PW_LIBRARY QEMOD_LIBRARY QEFFT_LIBRARY QELA_LIBRARY CLIB_LIBRARY IOTK_LIBRARY)
|
||||||
18
cmake/Modules/FindQUIP.cmake
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
# - Find quip
|
||||||
|
# Find the native QUIP libraries.
|
||||||
|
#
|
||||||
|
# QUIP_LIBRARIES - List of libraries when using fftw3.
|
||||||
|
# QUIP_FOUND - True if fftw3 found.
|
||||||
|
#
|
||||||
|
|
||||||
|
find_library(QUIP_LIBRARY NAMES quip)
|
||||||
|
|
||||||
|
set(QUIP_LIBRARIES ${QUIP_LIBRARY})
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
# handle the QUIETLY and REQUIRED arguments and set QUIP_FOUND to TRUE
|
||||||
|
# if all listed variables are TRUE
|
||||||
|
|
||||||
|
find_package_handle_standard_args(QUIP DEFAULT_MSG QUIP_LIBRARY)
|
||||||
|
|
||||||
|
mark_as_advanced(QUIP_LIBRARY)
|
||||||
22
cmake/Modules/FindVORO.cmake
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
# - Find voro++
|
||||||
|
# Find the native VORO headers and libraries.
|
||||||
|
#
|
||||||
|
# VORO_INCLUDE_DIRS - where to find voro++.hh, etc.
|
||||||
|
# VORO_LIBRARIES - List of libraries when using voro++.
|
||||||
|
# VORO_FOUND - True if voro++ found.
|
||||||
|
#
|
||||||
|
|
||||||
|
find_path(VORO_INCLUDE_DIR voro++.hh PATH_SUFFIXES voro++)
|
||||||
|
|
||||||
|
find_library(VORO_LIBRARY NAMES voro++)
|
||||||
|
|
||||||
|
set(VORO_LIBRARIES ${VORO_LIBRARY})
|
||||||
|
set(VORO_INCLUDE_DIRS ${VORO_INCLUDE_DIR})
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
# handle the QUIETLY and REQUIRED arguments and set VORO_FOUND to TRUE
|
||||||
|
# if all listed variables are TRUE
|
||||||
|
|
||||||
|
find_package_handle_standard_args(VORO DEFAULT_MSG VORO_LIBRARY VORO_INCLUDE_DIR)
|
||||||
|
|
||||||
|
mark_as_advanced(VORO_INCLUDE_DIR VORO_LIBRARY )
|
||||||
132
cmake/Modules/StyleHeaderUtils.cmake
Normal file
@ -0,0 +1,132 @@
|
|||||||
|
function(FindStyleHeaders path style_class file_pattern headers)
|
||||||
|
file(GLOB files "${path}/${file_pattern}*.h")
|
||||||
|
get_property(hlist GLOBAL PROPERTY ${headers})
|
||||||
|
|
||||||
|
foreach(file_name ${files})
|
||||||
|
file(STRINGS ${file_name} is_style LIMIT_COUNT 1 REGEX ${style_class})
|
||||||
|
if(is_style)
|
||||||
|
list(APPEND hlist ${file_name})
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
set_property(GLOBAL PROPERTY ${headers} "${hlist}")
|
||||||
|
endfunction(FindStyleHeaders)
|
||||||
|
|
||||||
|
function(FindStyleHeadersExt path style_class extension headers sources)
|
||||||
|
get_property(hlist GLOBAL PROPERTY ${headers})
|
||||||
|
get_property(slist GLOBAL PROPERTY ${sources})
|
||||||
|
set(ext_list)
|
||||||
|
get_filename_component(abs_path "${path}" ABSOLUTE)
|
||||||
|
|
||||||
|
foreach(file_name ${hlist})
|
||||||
|
get_filename_component(basename ${file_name} NAME_WE)
|
||||||
|
set(ext_file_name "${abs_path}/${basename}_${extension}.h")
|
||||||
|
if(EXISTS "${ext_file_name}")
|
||||||
|
file(STRINGS ${ext_file_name} is_style LIMIT_COUNT 1 REGEX ${style_class})
|
||||||
|
if(is_style)
|
||||||
|
list(APPEND ext_list ${ext_file_name})
|
||||||
|
|
||||||
|
set(source_file_name "${abs_path}/${basename}_${extension}.cpp")
|
||||||
|
if(EXISTS "${source_file_name}")
|
||||||
|
list(APPEND slist ${source_file_name})
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
list(APPEND hlist ${ext_list})
|
||||||
|
set_property(GLOBAL PROPERTY ${headers} "${hlist}")
|
||||||
|
set_property(GLOBAL PROPERTY ${sources} "${slist}")
|
||||||
|
endfunction(FindStyleHeadersExt)
|
||||||
|
|
||||||
|
function(CreateStyleHeader path filename)
|
||||||
|
math(EXPR N "${ARGC}-2")
|
||||||
|
|
||||||
|
set(temp "")
|
||||||
|
if(N GREATER 0)
|
||||||
|
math(EXPR ARG_END "${ARGC}-1")
|
||||||
|
|
||||||
|
foreach(IDX RANGE 2 ${ARG_END})
|
||||||
|
list(GET ARGV ${IDX} FNAME)
|
||||||
|
get_filename_component(FNAME ${FNAME} NAME)
|
||||||
|
set(temp "${temp}#include \"${FNAME}\"\n")
|
||||||
|
endforeach()
|
||||||
|
endif()
|
||||||
|
message(STATUS "Generating ${filename}...")
|
||||||
|
file(WRITE "${path}/${filename}.tmp" "${temp}" )
|
||||||
|
execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different "${path}/${filename}.tmp" "${path}/${filename}")
|
||||||
|
endfunction(CreateStyleHeader)
|
||||||
|
|
||||||
|
function(GenerateStyleHeader path property style)
|
||||||
|
get_property(files GLOBAL PROPERTY ${property})
|
||||||
|
#message("${property} = ${files}")
|
||||||
|
CreateStyleHeader("${path}" "style_${style}.h" ${files})
|
||||||
|
endfunction(GenerateStyleHeader)
|
||||||
|
|
||||||
|
function(RegisterStyles search_path)
|
||||||
|
FindStyleHeaders(${search_path} ANGLE_CLASS angle_ ANGLE ) # angle ) # force
|
||||||
|
FindStyleHeaders(${search_path} ATOM_CLASS atom_vec_ ATOM_VEC ) # atom ) # atom atom_vec_hybrid
|
||||||
|
FindStyleHeaders(${search_path} BODY_CLASS body_ BODY ) # body ) # atom_vec_body
|
||||||
|
FindStyleHeaders(${search_path} BOND_CLASS bond_ BOND ) # bond ) # force
|
||||||
|
FindStyleHeaders(${search_path} COMMAND_CLASS "" COMMAND ) # command ) # input
|
||||||
|
FindStyleHeaders(${search_path} COMPUTE_CLASS compute_ COMPUTE ) # compute ) # modify
|
||||||
|
FindStyleHeaders(${search_path} DIHEDRAL_CLASS dihedral_ DIHEDRAL ) # dihedral ) # force
|
||||||
|
FindStyleHeaders(${search_path} DUMP_CLASS dump_ DUMP ) # dump ) # output write_dump
|
||||||
|
FindStyleHeaders(${search_path} FIX_CLASS fix_ FIX ) # fix ) # modify
|
||||||
|
FindStyleHeaders(${search_path} IMPROPER_CLASS improper_ IMPROPER ) # improper ) # force
|
||||||
|
FindStyleHeaders(${search_path} INTEGRATE_CLASS "" INTEGRATE ) # integrate ) # update
|
||||||
|
FindStyleHeaders(${search_path} KSPACE_CLASS "" KSPACE ) # kspace ) # force
|
||||||
|
FindStyleHeaders(${search_path} MINIMIZE_CLASS min_ MINIMIZE ) # minimize ) # update
|
||||||
|
FindStyleHeaders(${search_path} NBIN_CLASS nbin_ NBIN ) # nbin ) # neighbor
|
||||||
|
FindStyleHeaders(${search_path} NPAIR_CLASS npair_ NPAIR ) # npair ) # neighbor
|
||||||
|
FindStyleHeaders(${search_path} NSTENCIL_CLASS nstencil_ NSTENCIL ) # nstencil ) # neighbor
|
||||||
|
FindStyleHeaders(${search_path} NTOPO_CLASS ntopo_ NTOPO ) # ntopo ) # neighbor
|
||||||
|
FindStyleHeaders(${search_path} PAIR_CLASS pair_ PAIR ) # pair ) # force
|
||||||
|
FindStyleHeaders(${search_path} READER_CLASS reader_ READER ) # reader ) # read_dump
|
||||||
|
FindStyleHeaders(${search_path} REGION_CLASS region_ REGION ) # region ) # domain
|
||||||
|
endfunction(RegisterStyles)
|
||||||
|
|
||||||
|
function(RegisterStylesExt search_path extension sources)
|
||||||
|
FindStyleHeadersExt(${search_path} ANGLE_CLASS ${extension} ANGLE ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} ATOM_CLASS ${extension} ATOM_VEC ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} BODY_CLASS ${extension} BODY ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} BOND_CLASS ${extension} BOND ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} COMMAND_CLASS ${extension} COMMAND ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} COMPUTE_CLASS ${extension} COMPUTE ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} DIHEDRAL_CLASS ${extension} DIHEDRAL ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} DUMP_CLASS ${extension} DUMP ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} FIX_CLASS ${extension} FIX ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} IMPROPER_CLASS ${extension} IMPROPER ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} INTEGRATE_CLASS ${extension} INTEGRATE ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} KSPACE_CLASS ${extension} KSPACE ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} MINIMIZE_CLASS ${extension} MINIMIZE ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} NBIN_CLASS ${extension} NBIN ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} NPAIR_CLASS ${extension} NPAIR ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} NSTENCIL_CLASS ${extension} NSTENCIL ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} NTOPO_CLASS ${extension} NTOPO ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} PAIR_CLASS ${extension} PAIR ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} READER_CLASS ${extension} READER ${sources})
|
||||||
|
FindStyleHeadersExt(${search_path} REGION_CLASS ${extension} REGION ${sources})
|
||||||
|
endfunction(RegisterStylesExt)
|
||||||
|
|
||||||
|
function(GenerateStyleHeaders output_path)
|
||||||
|
GenerateStyleHeader(${output_path} ANGLE angle ) # force
|
||||||
|
GenerateStyleHeader(${output_path} ATOM_VEC atom ) # atom atom_vec_hybrid
|
||||||
|
GenerateStyleHeader(${output_path} BODY body ) # atom_vec_body
|
||||||
|
GenerateStyleHeader(${output_path} BOND bond ) # force
|
||||||
|
GenerateStyleHeader(${output_path} COMMAND command ) # input
|
||||||
|
GenerateStyleHeader(${output_path} COMPUTE compute ) # modify
|
||||||
|
GenerateStyleHeader(${output_path} DIHEDRAL dihedral ) # force
|
||||||
|
GenerateStyleHeader(${output_path} DUMP dump ) # output write_dump
|
||||||
|
GenerateStyleHeader(${output_path} FIX fix ) # modify
|
||||||
|
GenerateStyleHeader(${output_path} IMPROPER improper ) # force
|
||||||
|
GenerateStyleHeader(${output_path} INTEGRATE integrate ) # update
|
||||||
|
GenerateStyleHeader(${output_path} KSPACE kspace ) # force
|
||||||
|
GenerateStyleHeader(${output_path} MINIMIZE minimize ) # update
|
||||||
|
GenerateStyleHeader(${output_path} NBIN nbin ) # neighbor
|
||||||
|
GenerateStyleHeader(${output_path} NPAIR npair ) # neighbor
|
||||||
|
GenerateStyleHeader(${output_path} NSTENCIL nstencil ) # neighbor
|
||||||
|
GenerateStyleHeader(${output_path} NTOPO ntopo ) # neighbor
|
||||||
|
GenerateStyleHeader(${output_path} PAIR pair ) # force
|
||||||
|
GenerateStyleHeader(${output_path} READER reader ) # read_dump
|
||||||
|
GenerateStyleHeader(${output_path} REGION region ) # domain
|
||||||
|
endfunction(GenerateStyleHeaders)
|
||||||
19
cmake/README
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
cmake-buildsystem
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
To use the cmake build system instead of the make-driven one, do:
|
||||||
|
```
|
||||||
|
cmake /path/to/lammps/source/cmake
|
||||||
|
```
|
||||||
|
(please note the cmake directory as the very end)
|
||||||
|
|
||||||
|
To enable package, e.g. GPU do
|
||||||
|
```
|
||||||
|
cmake /path/to/lammps/source/cmake -DENABLE_GPU=ON
|
||||||
|
```
|
||||||
|
|
||||||
|
cmake has many many options, do get an overview use the curses-based cmake interface, ccmake:
|
||||||
|
```
|
||||||
|
ccmake /path/to/lammps/source/cmake
|
||||||
|
```
|
||||||
|
(Don't forget to press "g" for generate once you are done with configuring)
|
||||||
4
cmake/gpu/lal_pppm_d.cu
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
#define grdtyp double
|
||||||
|
#define grdtyp4 double4
|
||||||
|
|
||||||
|
#include "lal_pppm.cu"
|
||||||
4
cmake/gpu/lal_pppm_f.cu
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
#define grdtyp float
|
||||||
|
#define grdtyp4 float4
|
||||||
|
|
||||||
|
#include "lal_pppm.cu"
|
||||||
1
doc/.gitignore
vendored
@ -1,4 +1,5 @@
|
|||||||
/html
|
/html
|
||||||
|
/spelling
|
||||||
/LAMMPS.epub
|
/LAMMPS.epub
|
||||||
/LAMMPS.mobi
|
/LAMMPS.mobi
|
||||||
/Manual.pdf
|
/Manual.pdf
|
||||||
|
|||||||
36
doc/Makefile
@ -6,6 +6,7 @@ BUILDDIR = /tmp/lammps-docs-$(SHA1)
|
|||||||
RSTDIR = $(BUILDDIR)/rst
|
RSTDIR = $(BUILDDIR)/rst
|
||||||
VENV = $(BUILDDIR)/docenv
|
VENV = $(BUILDDIR)/docenv
|
||||||
TXT2RST = $(VENV)/bin/txt2rst
|
TXT2RST = $(VENV)/bin/txt2rst
|
||||||
|
ANCHORCHECK = $(VENV)/bin/doc_anchor_check
|
||||||
|
|
||||||
PYTHON = $(shell which python3)
|
PYTHON = $(shell which python3)
|
||||||
HAS_PYTHON3 = NO
|
HAS_PYTHON3 = NO
|
||||||
@ -22,7 +23,7 @@ endif
|
|||||||
SOURCES=$(wildcard src/*.txt)
|
SOURCES=$(wildcard src/*.txt)
|
||||||
OBJECTS=$(SOURCES:src/%.txt=$(RSTDIR)/%.rst)
|
OBJECTS=$(SOURCES:src/%.txt=$(RSTDIR)/%.rst)
|
||||||
|
|
||||||
.PHONY: help clean-all clean epub html pdf old venv
|
.PHONY: help clean-all clean epub html pdf old venv spelling anchor_check
|
||||||
|
|
||||||
# ------------------------------------------
|
# ------------------------------------------
|
||||||
|
|
||||||
@ -36,6 +37,7 @@ help:
|
|||||||
@echo " clean remove all intermediate RST files"
|
@echo " clean remove all intermediate RST files"
|
||||||
@echo " clean-all reset the entire build environment"
|
@echo " clean-all reset the entire build environment"
|
||||||
@echo " txt2html build txt2html tool"
|
@echo " txt2html build txt2html tool"
|
||||||
|
@echo " anchor_check scan for duplicate anchor labels"
|
||||||
|
|
||||||
# ------------------------------------------
|
# ------------------------------------------
|
||||||
|
|
||||||
@ -44,12 +46,19 @@ clean-all:
|
|||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -rf $(RSTDIR) html
|
rm -rf $(RSTDIR) html
|
||||||
|
rm -rf spelling
|
||||||
|
|
||||||
html: $(OBJECTS)
|
clean-spelling:
|
||||||
|
rm -rf spelling
|
||||||
|
|
||||||
|
html: $(OBJECTS) $(ANCHORCHECK)
|
||||||
@(\
|
@(\
|
||||||
. $(VENV)/bin/activate ;\
|
. $(VENV)/bin/activate ;\
|
||||||
cp -r src/* $(RSTDIR)/ ;\
|
cp -r src/* $(RSTDIR)/ ;\
|
||||||
sphinx-build -j 8 -b html -c utils/sphinx-config -d $(BUILDDIR)/doctrees $(RSTDIR) html ;\
|
sphinx-build -j 8 -b html -c utils/sphinx-config -d $(BUILDDIR)/doctrees $(RSTDIR) html ;\
|
||||||
|
echo "############################################" ;\
|
||||||
|
doc_anchor_check src/*.txt ;\
|
||||||
|
echo "############################################" ;\
|
||||||
deactivate ;\
|
deactivate ;\
|
||||||
)
|
)
|
||||||
-rm html/searchindex.js
|
-rm html/searchindex.js
|
||||||
@ -64,6 +73,17 @@ html: $(OBJECTS)
|
|||||||
@rm -rf html/USER/*/*.[sg]*
|
@rm -rf html/USER/*/*.[sg]*
|
||||||
@echo "Build finished. The HTML pages are in doc/html."
|
@echo "Build finished. The HTML pages are in doc/html."
|
||||||
|
|
||||||
|
spelling: $(OBJECTS) utils/sphinx-config/false_positives.txt
|
||||||
|
@(\
|
||||||
|
. $(VENV)/bin/activate ;\
|
||||||
|
pip install sphinxcontrib-spelling ;\
|
||||||
|
cp -r src/* $(RSTDIR)/ ;\
|
||||||
|
cp utils/sphinx-config/false_positives.txt $(RSTDIR)/ ;\
|
||||||
|
sphinx-build -b spelling -c utils/sphinx-config -d $(BUILDDIR)/doctrees $(RSTDIR) spelling ;\
|
||||||
|
deactivate ;\
|
||||||
|
)
|
||||||
|
@echo "Spell check finished."
|
||||||
|
|
||||||
epub: $(OBJECTS)
|
epub: $(OBJECTS)
|
||||||
@mkdir -p epub
|
@mkdir -p epub
|
||||||
@rm -f LAMMPS.epub
|
@rm -f LAMMPS.epub
|
||||||
@ -80,6 +100,7 @@ epub: $(OBJECTS)
|
|||||||
|
|
||||||
pdf: utils/txt2html/txt2html.exe
|
pdf: utils/txt2html/txt2html.exe
|
||||||
@(\
|
@(\
|
||||||
|
set -e; \
|
||||||
cd src; \
|
cd src; \
|
||||||
../utils/txt2html/txt2html.exe -b *.txt; \
|
../utils/txt2html/txt2html.exe -b *.txt; \
|
||||||
htmldoc --batch lammps.book; \
|
htmldoc --batch lammps.book; \
|
||||||
@ -112,6 +133,13 @@ fetch:
|
|||||||
|
|
||||||
txt2html: utils/txt2html/txt2html.exe
|
txt2html: utils/txt2html/txt2html.exe
|
||||||
|
|
||||||
|
anchor_check : $(ANCHORCHECK)
|
||||||
|
@(\
|
||||||
|
. $(VENV)/bin/activate ;\
|
||||||
|
doc_anchor_check src/*.txt ;\
|
||||||
|
deactivate ;\
|
||||||
|
)
|
||||||
|
|
||||||
# ------------------------------------------
|
# ------------------------------------------
|
||||||
|
|
||||||
utils/txt2html/txt2html.exe: utils/txt2html/txt2html.cpp
|
utils/txt2html/txt2html.exe: utils/txt2html/txt2html.cpp
|
||||||
@ -131,12 +159,12 @@ $(VENV):
|
|||||||
@( \
|
@( \
|
||||||
virtualenv -p $(PYTHON) $(VENV); \
|
virtualenv -p $(PYTHON) $(VENV); \
|
||||||
. $(VENV)/bin/activate; \
|
. $(VENV)/bin/activate; \
|
||||||
pip install Sphinx; \
|
pip install Sphinx==1.5.6; \
|
||||||
pip install sphinxcontrib-images; \
|
pip install sphinxcontrib-images; \
|
||||||
deactivate;\
|
deactivate;\
|
||||||
)
|
)
|
||||||
|
|
||||||
$(TXT2RST): $(VENV)
|
$(TXT2RST) $(ANCHORCHECK): $(VENV)
|
||||||
@( \
|
@( \
|
||||||
. $(VENV)/bin/activate; \
|
. $(VENV)/bin/activate; \
|
||||||
(cd utils/converters;\
|
(cd utils/converters;\
|
||||||
|
|||||||
@ -464,7 +464,7 @@ the angletype option can only be assigned to a "fix style" of "shake",
|
|||||||
entirely rigid (e.g. water)
|
entirely rigid (e.g. water)
|
||||||
the angletype option enables an additional check when SHAKE constraints
|
the angletype option enables an additional check when SHAKE constraints
|
||||||
are computed: if a cluster is of size 3 and both bonds in
|
are computed: if a cluster is of size 3 and both bonds in
|
||||||
the cluster are of a bondtype specified by the 2nd paramter of
|
the cluster are of a bondtype specified by the 2nd parameter of
|
||||||
angletype, then the cluster is SHAKEn with an additional angle
|
angletype, then the cluster is SHAKEn with an additional angle
|
||||||
constraint that makes it rigid, using the equilibrium angle appropriate
|
constraint that makes it rigid, using the equilibrium angle appropriate
|
||||||
to the specified angletype
|
to the specified angletype
|
||||||
@ -476,7 +476,7 @@ IMPORTANT NOTE: the angletype option has one additional affect, namely
|
|||||||
since they will not be SHAKEn but neither will the angle force by computed
|
since they will not be SHAKEn but neither will the angle force by computed
|
||||||
for style region, a coeff of INF means + or - infinity (all the way
|
for style region, a coeff of INF means + or - infinity (all the way
|
||||||
to the boundary)
|
to the boundary)
|
||||||
an atom can be assigned to multiple constraints, the contraints will be
|
an atom can be assigned to multiple constraints, the constraints will be
|
||||||
applied in the reverse order they are assigned to that atom
|
applied in the reverse order they are assigned to that atom
|
||||||
(e.g. each timestep, the last fix assigned to an atom will be applied
|
(e.g. each timestep, the last fix assigned to an atom will be applied
|
||||||
to it first, then the next-to-last applied second, etc)
|
to it first, then the next-to-last applied second, etc)
|
||||||
@ -689,7 +689,7 @@ coeffs: types
|
|||||||
remainder
|
remainder
|
||||||
no other parameters required
|
no other parameters required
|
||||||
|
|
||||||
used with "create temp" commmand to initialize velocities of atoms
|
used with "create temp" command to initialize velocities of atoms
|
||||||
by default, the "create temp" command initializes the velocities of all atoms,
|
by default, the "create temp" command initializes the velocities of all atoms,
|
||||||
this command limits the initialization to a group of atoms
|
this command limits the initialization to a group of atoms
|
||||||
this command is only in force for the next "create temp" command, any
|
this command is only in force for the next "create temp" command, any
|
||||||
@ -1263,7 +1263,7 @@ when using constraints with the minimizer, fixes are
|
|||||||
applied when atoms move except for the following
|
applied when atoms move except for the following
|
||||||
fixes associated with temperature control are not allowed
|
fixes associated with temperature control are not allowed
|
||||||
(rescale, hoover/drag, langevin)
|
(rescale, hoover/drag, langevin)
|
||||||
the minimizer does not invoke the "fix style shake" contraints on
|
the minimizer does not invoke the "fix style shake" constraints on
|
||||||
bond lengths
|
bond lengths
|
||||||
the minimizer does not invoke pressure control or volume control settings
|
the minimizer does not invoke pressure control or volume control settings
|
||||||
for good convergence, should specify use of smooth nonbond force fields
|
for good convergence, should specify use of smooth nonbond force fields
|
||||||
@ -1566,7 +1566,7 @@ mesh dimensions that are power-of-two are fastest for FFTs, but any sizes
|
|||||||
can be used that are supported by native machine libraries
|
can be used that are supported by native machine libraries
|
||||||
this command is optional - if not used, a default
|
this command is optional - if not used, a default
|
||||||
mesh size will be chosen to satisfy accuracy criterion - if used, the
|
mesh size will be chosen to satisfy accuracy criterion - if used, the
|
||||||
specifed mesh size will override the default
|
specified mesh size will override the default
|
||||||
</PRE>
|
</PRE>
|
||||||
<HR>
|
<HR>
|
||||||
<H3>
|
<H3>
|
||||||
@ -1788,7 +1788,7 @@ if the style is 2, restart information will be written alternately to files
|
|||||||
when the minimizer is invoked this command means create a restart file
|
when the minimizer is invoked this command means create a restart file
|
||||||
at the end of the minimization with the filename filename.timestep.min
|
at the end of the minimization with the filename filename.timestep.min
|
||||||
a restart file stores atom and force-field information in binary form
|
a restart file stores atom and force-field information in binary form
|
||||||
allows program to restart from where it left off (see "read restart" commmand)
|
allows program to restart from where it left off (see "read restart" command)
|
||||||
|
|
||||||
Default = 0
|
Default = 0
|
||||||
</PRE>
|
</PRE>
|
||||||
|
|||||||
@ -167,7 +167,7 @@ tool on the small-system data file.</P>
|
|||||||
<P>
|
<P>
|
||||||
(6) flow</P>
|
(6) flow</P>
|
||||||
<P>
|
<P>
|
||||||
2-d flow of Lennard-Jones atoms in a channel using various contraint
|
2-d flow of Lennard-Jones atoms in a channel using various constraint
|
||||||
options.</P>
|
options.</P>
|
||||||
<P>
|
<P>
|
||||||
(7) polymer</P>
|
(7) polymer</P>
|
||||||
@ -201,7 +201,7 @@ The tools directory also has a F77 program called setup_chain.f
|
|||||||
(compile and link with print.c) which can be used to generate random
|
(compile and link with print.c) which can be used to generate random
|
||||||
initial polymer configurations for bead-spring models like those used
|
initial polymer configurations for bead-spring models like those used
|
||||||
in examples/polymer. It uses an input polymer definition file (see
|
in examples/polymer. It uses an input polymer definition file (see
|
||||||
examples/polymer for two sample def files) that specfies how many
|
examples/polymer for two sample def files) that specifies how many
|
||||||
chains of what length, a random number seed, etc.</P>
|
chains of what length, a random number seed, etc.</P>
|
||||||
</BODY>
|
</BODY>
|
||||||
</HTML>
|
</HTML>
|
||||||
|
|||||||
@ -40,7 +40,7 @@ Note: this file is somewhat out-of-date for LAMMPS 99.</P>
|
|||||||
<LI>
|
<LI>
|
||||||
maxtype = max # of atom types
|
maxtype = max # of atom types
|
||||||
<LI>
|
<LI>
|
||||||
maxbond = max # of bonds to compute on one procesor
|
maxbond = max # of bonds to compute on one processor
|
||||||
<LI>
|
<LI>
|
||||||
maxangle = max # of angles to compute on one processor
|
maxangle = max # of angles to compute on one processor
|
||||||
<LI>
|
<LI>
|
||||||
|
|||||||
@ -294,7 +294,7 @@ assign a group of atoms to a particular constraint
|
|||||||
use appropriate number of coeffs for a particular style
|
use appropriate number of coeffs for a particular style
|
||||||
the constraint itself is defined by the "fix style" command
|
the constraint itself is defined by the "fix style" command
|
||||||
multiple groups of atoms can be assigned to the same constraint
|
multiple groups of atoms can be assigned to the same constraint
|
||||||
an atom can be assigned to multiple constraints, the contraints will be
|
an atom can be assigned to multiple constraints, the constraints will be
|
||||||
applied in the reverse order they are assigned to that atom
|
applied in the reverse order they are assigned to that atom
|
||||||
(e.g. each timestep, the last fix assigned to an atom will be applied
|
(e.g. each timestep, the last fix assigned to an atom will be applied
|
||||||
to it first, then the next-to-last applied second, etc)
|
to it first, then the next-to-last applied second, etc)
|
||||||
@ -477,7 +477,7 @@ coeffs: types
|
|||||||
remainder
|
remainder
|
||||||
no other parameters required
|
no other parameters required
|
||||||
|
|
||||||
used with "create temp" commmand to initialize velocities of atoms
|
used with "create temp" command to initialize velocities of atoms
|
||||||
by default, the "create temp" command initializes the velocities of all atoms,
|
by default, the "create temp" command initializes the velocities of all atoms,
|
||||||
this command limits the initialization to a group of atoms
|
this command limits the initialization to a group of atoms
|
||||||
this command is only in force for the next "create temp" command, any
|
this command is only in force for the next "create temp" command, any
|
||||||
@ -1124,7 +1124,7 @@ mesh dimensions that are power-of-two are fastest for FFTs, but any size
|
|||||||
can be used that are supported by native machine libraries
|
can be used that are supported by native machine libraries
|
||||||
this command is optional - if not used, a default
|
this command is optional - if not used, a default
|
||||||
mesh size will be chosen to satisfy accuracy criterion - if used, the
|
mesh size will be chosen to satisfy accuracy criterion - if used, the
|
||||||
specifed mesh size will override the default
|
specified mesh size will override the default
|
||||||
|
|
||||||
Default = none
|
Default = none
|
||||||
</PRE>
|
</PRE>
|
||||||
@ -1343,7 +1343,7 @@ value of 0 means never create one
|
|||||||
program will toggle between 2 filenames as the run progresses
|
program will toggle between 2 filenames as the run progresses
|
||||||
so always have at least one good file even if the program dies in mid-write
|
so always have at least one good file even if the program dies in mid-write
|
||||||
restart file stores atom positions and velocities in binary form
|
restart file stores atom positions and velocities in binary form
|
||||||
allows program to restart from where it left off (see "read restart" commmand)
|
allows program to restart from where it left off (see "read restart" command)
|
||||||
|
|
||||||
Default = 0
|
Default = 0
|
||||||
</PRE>
|
</PRE>
|
||||||
|
|||||||
BIN
doc/src/Eqs/cnp_cutoff.jpg
Normal file
|
After Width: | Height: | Size: 13 KiB |
14
doc/src/Eqs/cnp_cutoff.tex
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
\documentclass[12pt,article]{article}
|
||||||
|
|
||||||
|
\usepackage{indentfirst}
|
||||||
|
\usepackage{amsmath}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{eqnarray*}
|
||||||
|
r_{c}^{fcc} & = & \frac{1}{2} \left(\frac{\sqrt{2}}{2} + 1\right) \mathrm{a} \simeq 0.8536 \:\mathrm{a} \\
|
||||||
|
r_{c}^{bcc} & = & \frac{1}{2}(\sqrt{2} + 1) \mathrm{a} \simeq 1.207 \:\mathrm{a} \\
|
||||||
|
r_{c}^{hcp} & = & \frac{1}{2}\left(1+\sqrt{\frac{4+2x^{2}}{3}}\right) \mathrm{a}
|
||||||
|
\end{eqnarray*}
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/cnp_cutoff2.jpg
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
12
doc/src/Eqs/cnp_cutoff2.tex
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
\documentclass[12pt,article]{article}
|
||||||
|
|
||||||
|
\usepackage{indentfirst}
|
||||||
|
\usepackage{amsmath}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
$$
|
||||||
|
Rc + Rs > 2*{\rm cutoff}
|
||||||
|
$$
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/cnp_eq.jpg
Normal file
|
After Width: | Height: | Size: 23 KiB |
9
doc/src/Eqs/cnp_eq.tex
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
$$
|
||||||
|
Q_{i} = \frac{1}{n_i}\sum_{j = 1}^{n_i} | \sum_{k = 1}^{n_{ij}} \vec{R}_{ik} + \vec{R}_{jk} |^2
|
||||||
|
$$
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/fix_gcmc1.jpg
Normal file
|
After Width: | Height: | Size: 5.5 KiB |
9
doc/src/Eqs/fix_gcmc1.tex
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{eqnarray*}
|
||||||
|
\mu &=&\mu^{id} + \mu^{ex}
|
||||||
|
\end{eqnarray*}
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/fix_gcmc2.jpg
Normal file
|
After Width: | Height: | Size: 10 KiB |
10
doc/src/Eqs/fix_gcmc2.tex
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{eqnarray*}
|
||||||
|
\mu^{id} &=& k T \ln{\rho \Lambda^3} \\
|
||||||
|
&=& k T \ln{\frac{\phi P \Lambda^3}{k T}}
|
||||||
|
\end{eqnarray*}
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/fix_gcmc3.jpg
Normal file
|
After Width: | Height: | Size: 7.3 KiB |
9
doc/src/Eqs/fix_gcmc3.tex
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{eqnarray*}
|
||||||
|
\Lambda &=& \sqrt{ \frac{h^2}{2 \pi m k T}}
|
||||||
|
\end{eqnarray*}
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/fix_mvv_dpd.jpg
Normal file
|
After Width: | Height: | Size: 26 KiB |
21
doc/src/Eqs/fix_mvv_dpd.tex
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
$$
|
||||||
|
v(t+\frac{\Delta t}{2}) = v(t) + \frac{\Delta t}{2}\cdot a(t),
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
r(t+\Delta t) = r(t) + \Delta t\cdot v(t+\frac{\Delta t}{2}),
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
a(t+\Delta t) = \frac{1}{m}\cdot F\left[ r(t+\Delta t), v(t) +\lambda \cdot \Delta t\cdot a(t)\right],
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
v(t+\Delta t) = v(t+\frac{\Delta t}{2}) + \frac{\Delta t}{2}\cdot a(t+\Delta t)
|
||||||
|
$$
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/fix_wall_ees.jpg
Normal file
|
After Width: | Height: | Size: 104 KiB |
10
doc/src/Eqs/fix_wall_ees.tex
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
$$
|
||||||
|
E = \epsilon \left[ \frac{2 \sigma_{LJ}^{12} \left(7 r^5+14 r^3 \sigma_{n}^2+3 r \sigma_{n}^4\right) }{945 \left(r^2-\sigma_{n}^2\right)^7} -\frac{ \sigma_{LJ}^6 \left(2 r \sigma_{n}^3+\sigma_{n}^2 \left(r^2-\sigma_{n}^2\right)\log{ \left[\frac{r-\sigma_{n}}{r+\sigma_{n}}\right]}\right) }{12 \sigma_{n}^5 \left(r^2-\sigma_{n}^2\right)} \right]\qquad \sigma_n < r < r_c
|
||||||
|
$$
|
||||||
|
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/pair_edpd_force.jpg
Normal file
|
After Width: | Height: | Size: 32 KiB |
33
doc/src/Eqs/pair_edpd_force.tex
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
$$
|
||||||
|
\mathbf{F}_{ij}^{C} = \alpha_{ij}{\omega_{C}}(r_{ij})\mathbf{e}_{ij},
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\mathbf{F}_{ij}^{D} = -\gamma {\omega_{D}}(r_{ij})(\mathbf{e}_{ij} \cdot \mathbf{v}_{ij})\mathbf{e}_{ij},
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\mathbf{F}_{ij}^{R} = \sigma {\omega_{R}}(r_{ij}){\xi_{ij}}\Delta t^{-1/2} \mathbf{e}_{ij},
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\omega_{C}(r) = 1 - r/r_c,
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\alpha_{ij} = A\cdot k_B(T_i + T_j)/2,
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\omega_{D}(r) = \omega^2_{R}(r) = (1-r/r_c)^s,
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\sigma_{ij}^2 = 4\gamma k_B T_i T_j/(T_i + T_j),
|
||||||
|
$$
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/pair_edpd_gov.jpg
Normal file
|
After Width: | Height: | Size: 17 KiB |
15
doc/src/Eqs/pair_edpd_gov.tex
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
$$
|
||||||
|
\frac{\mathrm{d}^2 \mathbf{r}_i}{\mathrm{d} t^2}=
|
||||||
|
\frac{\mathrm{d} \mathbf{v}_i}{\mathrm{d} t}
|
||||||
|
=\mathbf{F}_{i}=\sum_{i\neq j}(\mathbf{F}_{ij}^{C}+\mathbf{F}_{ij}^{D}+\mathbf{F}_{ij}^{R}),
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
C_v\frac{\mathrm{d} T_i}{\mathrm{d} t}= q_{i} = \sum_{i\neq j}(q_{ij}^{C}+q_{ij}^{V}+q_{ij}^{R}),
|
||||||
|
$$
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/pair_edpd_heat.jpg
Normal file
|
After Width: | Height: | Size: 46 KiB |
29
doc/src/Eqs/pair_edpd_heat.tex
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
$$
|
||||||
|
q_i^C = \sum_{j \ne i} k_{ij} \omega_{CT}(r_{ij}) \left( \frac{1}{T_i} - \frac{1}{T_j} \right),
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
q_i^V = \frac{1}{2 C_v}\sum_{j \ne i}{ \left\{ \omega_D(r_{ij})\left[\gamma_{ij} \left( \mathbf{e}_{ij} \cdot \mathbf{v}_{ij} \right)^2 - \frac{\left( \sigma _{ij} \right)^2}{m}\right] - \sigma _{ij} \omega_R(r_{ij})\left( \mathbf{e}_{ij} \cdot \mathbf{v}_{ij} \right){\xi_{ij}} \right\} },
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
q_i^R = \sum_{j \ne i} \beta _{ij} \omega_{RT}(r_{ij}) d {t^{ - 1/2}} \xi_{ij}^e,
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\omega_{CT}(r)=\omega_{RT}^2(r)=\left(1-r/r_{ct}\right)^{s_T},
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
k_{ij}=C_v^2\kappa(T_i + T_j)^2/4k_B,
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\beta_{ij}^2=2k_Bk_{ij},
|
||||||
|
$$
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/pair_edpd_kappa.jpg
Normal file
|
After Width: | Height: | Size: 5.5 KiB |
9
doc/src/Eqs/pair_edpd_kappa.tex
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
$$
|
||||||
|
\kappa = \frac{315k_B\upsilon }{2\pi \rho C_v r_{ct}^5}\frac{1}{Pr},
|
||||||
|
$$
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/pair_kolmogorov_crespi_z.jpg
Normal file
|
After Width: | Height: | Size: 18 KiB |
13
doc/src/Eqs/pair_kolmogorov_crespi_z.tex
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
\thispagestyle{empty}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{eqnarray*}
|
||||||
|
E & = & \frac{1}{2} \sum_i \sum_{j \neq i} V_{ij} \\
|
||||||
|
V_{ij} & = & e^{-\lambda(r_{ij} -z_0}) \left[ C + f(\rho_{ij}) + f(\rho_{ji}) \right] - A \left( \frac{r_{ij}}{z_0}\right)^{-6} + A \left( \frac{\textrm{cutoff}}{z_0}\right)^{-6} \\
|
||||||
|
\rho_{ij}^2 = \rho_{ji}^2 & = & x_{ij}^2 + y_{ij}^2 ~\hspace{2cm} (\mathbf{n_i}\equiv\hat \mathbf{z})\\
|
||||||
|
f(\rho) & = & e^{-(\rho/\delta)^2} \sum_{n=0}^2 C_{2n} \left( \rho/\delta \right) ^{2n}
|
||||||
|
\end{eqnarray*}
|
||||||
|
|
||||||
|
\end{document}
|
||||||
|
Before Width: | Height: | Size: 15 KiB |
@ -1,11 +0,0 @@
|
|||||||
\documentclass[12pt]{article}
|
|
||||||
|
|
||||||
\begin{document}
|
|
||||||
|
|
||||||
\begin{eqnarray*}
|
|
||||||
F & = & F_{\mathrm{LJ}}(r) - F_{\mathrm{LJ}}(r_{\mathrm{c}}) \qquad r < r_{\mathrm{c}} \\
|
|
||||||
E & = & E_{\mathrm{LJ}}(r) - E_{\mathrm{LJ}}(r_{\mathrm{c}}) + (r - r_{\mathrm{c}}) F_{\mathrm{LJ}}(r_{\mathrm{c}}) \qquad r < r_{\mathrm{c}} \\
|
|
||||||
\mathrm{with} \qquad E_{\mathrm{LJ}}(r) & = & 4 \epsilon \left[ \left(\frac{\sigma}{r}\right)^{12} - \left(\frac{\sigma}{r}\right)^6 \right] \qquad \mathrm{and} \qquad F_{\mathrm{LJ}}(r) = - E^\prime_{\mathrm{LJ}}(r)
|
|
||||||
\end{eqnarray*}
|
|
||||||
|
|
||||||
\end{document}
|
|
||||||
BIN
doc/src/Eqs/pair_mdpd_force.jpg
Normal file
|
After Width: | Height: | Size: 19 KiB |
17
doc/src/Eqs/pair_mdpd_force.tex
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
$$
|
||||||
|
\mathbf{F}_{ij}^C = Aw_c(r_{ij})\mathbf{e}_{ij} + B(\rho_i+\rho_j)w_d(r_{ij})\mathbf{e}_{ij},
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\mathbf{F}_{ij}^{D} = -\gamma {\omega_{D}}(r_{ij})(\mathbf{e}_{ij} \cdot \mathbf{v}_{ij})\mathbf{e}_{ij},
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\mathbf{F}_{ij}^{R} = \sigma {\omega_{R}}(r_{ij}){\xi_{ij}}\Delta t^{-1/2} \mathbf{e}_{ij},
|
||||||
|
$$
|
||||||
|
|
||||||
|
\end{document}
|
||||||
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 21 KiB |
@ -1,13 +1,14 @@
|
|||||||
\documentclass[12pt]{article}
|
\documentclass[12pt]{article}
|
||||||
|
\usepackage{amsmath}
|
||||||
|
|
||||||
\begin{document}
|
\begin{document}
|
||||||
|
|
||||||
$$
|
$$
|
||||||
E=\sum_{ij}\phi(r_{ij})+\sum_{i}U(\rho_{i}),
|
E=\sum_{i<j}\phi(r_{ij})+\sum_{i}U(n_{i}),
|
||||||
$$
|
$$
|
||||||
|
|
||||||
$$
|
$$
|
||||||
\rho_{i}=\sum_{j}\rho(r_{ij})+\sum_{jk}f(r_{ij})f(r_{ik})g[\cos(\theta_{jik})]
|
n_{i}=\sum_{j}\rho(r_{ij})+\sum_{\substack{j<k,\\j,k\neq i}}f(r_{ij})f(r_{ik})g[\cos(\theta_{jik})]
|
||||||
$$
|
$$
|
||||||
|
|
||||||
\end{document}
|
\end{document}
|
||||||
|
|||||||
BIN
doc/src/Eqs/pair_meam_spline_multicomponent.jpg
Normal file
|
After Width: | Height: | Size: 22 KiB |
14
doc/src/Eqs/pair_meam_spline_multicomponent.tex
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
\usepackage{amsmath}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
$$
|
||||||
|
E=\sum_{i<j}\phi_{ij}(r_{ij})+\sum_{i}U_i(n_{i}),
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
n_{i}=\sum_{j\ne i}\rho_j(r_{ij})+\sum_{\substack{j<k,\\j,k\neq i}}f_{j}(r_{ij})f_{k}(r_{ik})g_{jk}[\cos(\theta_{jik})]
|
||||||
|
$$
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/pair_momb.jpg
Normal file
|
After Width: | Height: | Size: 17 KiB |
13
doc/src/Eqs/pair_momb.tex
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
\documentclass[12pt,fleqn]{article}
|
||||||
|
\usepackage{amsmath}
|
||||||
|
\thispagestyle{empty}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\setlength{\jot}{2ex}
|
||||||
|
\begin{gather*}
|
||||||
|
E = D_0 [\exp^{-2 \alpha (r-r_0)} - 2\exp^{-\alpha (r-r_0)}] - s_6 \frac{C_6}{r^6} f_{damp}(r,R_r) \\
|
||||||
|
f_{damp}(r,R_r) = \frac{1}{1 + \exp^{-d(r/R_r - 1)}}
|
||||||
|
\end{gather*}
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/pair_tdpd_flux.jpg
Normal file
|
After Width: | Height: | Size: 22 KiB |
21
doc/src/Eqs/pair_tdpd_flux.tex
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
$$
|
||||||
|
Q_{ij}^D = -\kappa_{ij} w_{DC}(r_{ij}) \left( C_i - C_j \right),
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
Q_{ij}^R = \epsilon_{ij}\left( C_i + C_j \right) w_{RC}(r_{ij}) \xi_{ij},
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
w_{DC}(r_{ij})=w^2_{RC}(r_{ij}) = (1 - r/r_{cc})^{\rm power\_{cc}},
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\epsilon_{ij}^2 = m_s^2\kappa_{ij}\rho,
|
||||||
|
$$
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/pair_tdpd_force.jpg
Normal file
|
After Width: | Height: | Size: 25 KiB |
29
doc/src/Eqs/pair_tdpd_force.tex
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
$$
|
||||||
|
\mathbf{F}_{ij}^{C} = A{\omega_{C}}(r_{ij})\mathbf{e}_{ij},
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\mathbf{F}_{ij}^{D} = -\gamma {\omega_{D}}(r_{ij})(\mathbf{e}_{ij} \cdot \mathbf{v}_{ij})\mathbf{e}_{ij},
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\mathbf{F}_{ij}^{R} = \sigma {\omega_{R}}(r_{ij}){\xi_{ij}}\Delta t^{-1/2} \mathbf{e}_{ij},
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\omega_{C}(r) = 1 - r/r_c,
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\omega_{D}(r) = \omega^2_{R}(r) = (1-r/r_c)^{\rm power\_f},
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\sigma^2 = 2\gamma k_B T,
|
||||||
|
$$
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/Eqs/pair_tdpd_gov.jpg
Normal file
|
After Width: | Height: | Size: 18 KiB |
13
doc/src/Eqs/pair_tdpd_gov.tex
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
$$
|
||||||
|
\frac{\mathrm{d}^2 \mathbf{r}_i}{\mathrm{d} t^2} = \frac{\mathrm{d} \mathbf{v}_i}{\mathrm{d} t}=\mathbf{F}_{i}=\sum_{i\neq j}(\mathbf{F}_{ij}^{C}+\mathbf{F}_{ij}^{D}+\mathbf{F}_{ij}^{R}),
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\frac{\mathrm{d} C_{i}}{\mathrm{d} t}= Q_{i} = \sum_{i\neq j}(Q_{ij}^{D}+Q_{ij}^{R}) + Q_{i}^{S},
|
||||||
|
$$
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
doc/src/JPG/bow_tutorial_01.png
Executable file
|
After Width: | Height: | Size: 32 KiB |
BIN
doc/src/JPG/bow_tutorial_01_small.png
Executable file
|
After Width: | Height: | Size: 15 KiB |
BIN
doc/src/JPG/bow_tutorial_02.png
Executable file
|
After Width: | Height: | Size: 41 KiB |
BIN
doc/src/JPG/bow_tutorial_02_small.png
Executable file
|
After Width: | Height: | Size: 16 KiB |
BIN
doc/src/JPG/bow_tutorial_03.png
Executable file
|
After Width: | Height: | Size: 42 KiB |
BIN
doc/src/JPG/bow_tutorial_03_small.png
Executable file
|
After Width: | Height: | Size: 20 KiB |
BIN
doc/src/JPG/bow_tutorial_04.png
Executable file
|
After Width: | Height: | Size: 54 KiB |
BIN
doc/src/JPG/bow_tutorial_04_small.png
Executable file
|
After Width: | Height: | Size: 21 KiB |
BIN
doc/src/JPG/bow_tutorial_05.png
Executable file
|
After Width: | Height: | Size: 16 KiB |
BIN
doc/src/JPG/bow_tutorial_06.png
Executable file
|
After Width: | Height: | Size: 13 KiB |
BIN
doc/src/JPG/bow_tutorial_07.png
Executable file
|
After Width: | Height: | Size: 9.7 KiB |
BIN
doc/src/JPG/bow_tutorial_08.png
Executable file
|
After Width: | Height: | Size: 24 KiB |
BIN
doc/src/JPG/bow_tutorial_09.png
Executable file
|
After Width: | Height: | Size: 18 KiB |
BIN
doc/src/JPG/bow_tutorial_10.png
Executable file
|
After Width: | Height: | Size: 7.6 KiB |
BIN
doc/src/JPG/examples_edpd.jpg
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
doc/src/JPG/examples_mdpd.gif
Normal file
|
After Width: | Height: | Size: 895 KiB |
BIN
doc/src/JPG/examples_mdpd_first.jpg
Normal file
|
After Width: | Height: | Size: 113 KiB |
BIN
doc/src/JPG/examples_mdpd_last.jpg
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
doc/src/JPG/examples_tdpd.jpg
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
doc/src/JPG/fix_wall_ees_image.jpg
Normal file
|
After Width: | Height: | Size: 5.9 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 20 KiB |
@ -1,7 +1,7 @@
|
|||||||
<!-- HTML_ONLY -->
|
<!-- HTML_ONLY -->
|
||||||
<HEAD>
|
<HEAD>
|
||||||
<TITLE>LAMMPS Users Manual</TITLE>
|
<TITLE>LAMMPS Users Manual</TITLE>
|
||||||
<META NAME="docnumber" CONTENT="26 Jan 2017 version">
|
<META NAME="docnumber" CONTENT="1 Sep 2017 version">
|
||||||
<META NAME="author" CONTENT="http://lammps.sandia.gov - Sandia National Laboratories">
|
<META NAME="author" CONTENT="http://lammps.sandia.gov - Sandia National Laboratories">
|
||||||
<META NAME="copyright" CONTENT="Copyright (2003) Sandia Corporation. This software and manual is distributed under the GNU General Public License.">
|
<META NAME="copyright" CONTENT="Copyright (2003) Sandia Corporation. This software and manual is distributed under the GNU General Public License.">
|
||||||
</HEAD>
|
</HEAD>
|
||||||
@ -21,7 +21,7 @@
|
|||||||
<H1></H1>
|
<H1></H1>
|
||||||
|
|
||||||
LAMMPS Documentation :c,h3
|
LAMMPS Documentation :c,h3
|
||||||
26 Jan 2017 version :c,h4
|
1 Sep 2017 version :c,h4
|
||||||
|
|
||||||
Version info: :h4
|
Version info: :h4
|
||||||
|
|
||||||
@ -39,7 +39,7 @@ directory name created when you unpack a tarball, and at the top of
|
|||||||
the first page of the manual (this page).
|
the first page of the manual (this page).
|
||||||
|
|
||||||
If you browse the HTML doc pages on the LAMMPS WWW site, they always
|
If you browse the HTML doc pages on the LAMMPS WWW site, they always
|
||||||
describe the most current version of LAMMPS. :ulb,l
|
describe the most current [development] version of LAMMPS. :ulb,l
|
||||||
|
|
||||||
If you browse the HTML doc pages included in your tarball, they
|
If you browse the HTML doc pages included in your tarball, they
|
||||||
describe the version you have. :l
|
describe the version you have. :l
|
||||||
@ -67,7 +67,7 @@ Labs and Temple University:
|
|||||||
|
|
||||||
"Steve Plimpton"_sjp, sjplimp at sandia.gov :ulb,l
|
"Steve Plimpton"_sjp, sjplimp at sandia.gov :ulb,l
|
||||||
Aidan Thompson, athomps at sandia.gov :l
|
Aidan Thompson, athomps at sandia.gov :l
|
||||||
Stan Moore, stamoore at sandia.gov :l
|
Stan Moore, stamoor at sandia.gov :l
|
||||||
"Axel Kohlmeyer"_ako, akohlmey at gmail.com :l
|
"Axel Kohlmeyer"_ako, akohlmey at gmail.com :l
|
||||||
:ule
|
:ule
|
||||||
|
|
||||||
@ -79,7 +79,7 @@ bug reports and feature requests are mainly coordinated through the
|
|||||||
"LAMMPS project on GitHub."_https://github.com/lammps/lammps
|
"LAMMPS project on GitHub."_https://github.com/lammps/lammps
|
||||||
The lammps.org domain, currently hosting "public continuous integration
|
The lammps.org domain, currently hosting "public continuous integration
|
||||||
testing"_https://ci.lammps.org/job/lammps/ and "precompiled Linux
|
testing"_https://ci.lammps.org/job/lammps/ and "precompiled Linux
|
||||||
RPM and Windows installer packages"_http://rpm.lammps.org is located
|
RPM and Windows installer packages"_http://packages.lammps.org is located
|
||||||
at Temple University and managed by Richard Berger,
|
at Temple University and managed by Richard Berger,
|
||||||
richard.berger at temple.edu.
|
richard.berger at temple.edu.
|
||||||
|
|
||||||
@ -158,12 +158,11 @@ END_RST -->
|
|||||||
2.1 "What's in the LAMMPS distribution"_start_1 :ulb,b
|
2.1 "What's in the LAMMPS distribution"_start_1 :ulb,b
|
||||||
2.2 "Making LAMMPS"_start_2 :b
|
2.2 "Making LAMMPS"_start_2 :b
|
||||||
2.3 "Making LAMMPS with optional packages"_start_3 :b
|
2.3 "Making LAMMPS with optional packages"_start_3 :b
|
||||||
2.4 "Building LAMMPS via the Make.py script"_start_4 :b
|
2.4 "Building LAMMPS as a library"_start_4 :b
|
||||||
2.5 "Building LAMMPS as a library"_start_5 :b
|
2.5 "Running LAMMPS"_start_5 :b
|
||||||
2.6 "Running LAMMPS"_start_6 :b
|
2.6 "Command-line options"_start_6 :b
|
||||||
2.7 "Command-line options"_start_7 :b
|
2.7 "Screen output"_start_7 :b
|
||||||
2.8 "Screen output"_start_8 :b
|
2.8 "Tips for users of previous versions"_start_8 :ule,b
|
||||||
2.9 "Tips for users of previous versions"_start_9 :ule,b
|
|
||||||
"Commands"_Section_commands.html :l
|
"Commands"_Section_commands.html :l
|
||||||
3.1 "LAMMPS input script"_cmd_1 :ulb,b
|
3.1 "LAMMPS input script"_cmd_1 :ulb,b
|
||||||
3.2 "Parsing rules"_cmd_2 :b
|
3.2 "Parsing rules"_cmd_2 :b
|
||||||
@ -262,7 +261,6 @@ END_RST -->
|
|||||||
:link(start_6,Section_start.html#start_6)
|
:link(start_6,Section_start.html#start_6)
|
||||||
:link(start_7,Section_start.html#start_7)
|
:link(start_7,Section_start.html#start_7)
|
||||||
:link(start_8,Section_start.html#start_8)
|
:link(start_8,Section_start.html#start_8)
|
||||||
:link(start_9,Section_start.html#start_9)
|
|
||||||
|
|
||||||
:link(cmd_1,Section_commands.html#cmd_1)
|
:link(cmd_1,Section_commands.html#cmd_1)
|
||||||
:link(cmd_2,Section_commands.html#cmd_2)
|
:link(cmd_2,Section_commands.html#cmd_2)
|
||||||
|
|||||||
@ -56,7 +56,7 @@ timings; you can simply extrapolate from short runs.
|
|||||||
|
|
||||||
For the set of runs, look at the timing data printed to the screen and
|
For the set of runs, look at the timing data printed to the screen and
|
||||||
log file at the end of each LAMMPS run. "This
|
log file at the end of each LAMMPS run. "This
|
||||||
section"_Section_start.html#start_8 of the manual has an overview.
|
section"_Section_start.html#start_7 of the manual has an overview.
|
||||||
|
|
||||||
Running on one (or a few processors) should give a good estimate of
|
Running on one (or a few processors) should give a good estimate of
|
||||||
the serial performance and what portions of the timestep are taking
|
the serial performance and what portions of the timestep are taking
|
||||||
@ -226,16 +226,16 @@ re-build LAMMPS |
|
|||||||
make machine |
|
make machine |
|
||||||
prepare and test a regular LAMMPS simulation |
|
prepare and test a regular LAMMPS simulation |
|
||||||
lmp_machine -in in.script; mpirun -np 32 lmp_machine -in in.script |
|
lmp_machine -in in.script; mpirun -np 32 lmp_machine -in in.script |
|
||||||
enable specific accelerator support via '-k on' "command-line switch"_Section_start.html#start_7, |
|
enable specific accelerator support via '-k on' "command-line switch"_Section_start.html#start_6, |
|
||||||
only needed for KOKKOS package |
|
only needed for KOKKOS package |
|
||||||
set any needed options for the package via "-pk" "command-line switch"_Section_start.html#start_7 or "package"_package.html command, |
|
set any needed options for the package via "-pk" "command-line switch"_Section_start.html#start_6 or "package"_package.html command, |
|
||||||
only if defaults need to be changed |
|
only if defaults need to be changed |
|
||||||
use accelerated styles in your input via "-sf" "command-line switch"_Section_start.html#start_7 or "suffix"_suffix.html command | lmp_machine -in in.script -sf gpu
|
use accelerated styles in your input via "-sf" "command-line switch"_Section_start.html#start_6 or "suffix"_suffix.html command | lmp_machine -in in.script -sf gpu
|
||||||
:tb(c=2,s=|)
|
:tb(c=2,s=|)
|
||||||
|
|
||||||
Note that the first 4 steps can be done as a single command, using the
|
Note that the first 4 steps can be done as a single command with
|
||||||
src/Make.py tool. This tool is discussed in "Section
|
suitable make command invocations. This is discussed in "Section
|
||||||
2.4"_Section_start.html#start_4 of the manual, and its use is
|
4"_Section_packages.html of the manual, and its use is
|
||||||
illustrated in the individual accelerator sections. Typically these
|
illustrated in the individual accelerator sections. Typically these
|
||||||
steps only need to be done once, to create an executable that uses one
|
steps only need to be done once, to create an executable that uses one
|
||||||
or more accelerator packages.
|
or more accelerator packages.
|
||||||
|
|||||||
@ -281,12 +281,12 @@ the "minimize"_minimize.html command. A parallel tempering
|
|||||||
|
|
||||||
3.4 Commands listed by category :link(cmd_4),h4
|
3.4 Commands listed by category :link(cmd_4),h4
|
||||||
|
|
||||||
This section lists all LAMMPS commands, grouped by category. The
|
This section lists core LAMMPS commands, grouped by category.
|
||||||
"next section"_#cmd_5 lists the same commands alphabetically. The
|
The "next section"_#cmd_5 lists all commands alphabetically. The
|
||||||
next section also includes (long) lists of style options for entries
|
next section also includes (long) lists of style options for entries
|
||||||
that appear in the following categories as a single command (fix,
|
that appear in the following categories as a single command (fix,
|
||||||
compute, pair, etc). Commands that are added by user packages are not
|
compute, pair, etc). Commands that are added by user packages are not
|
||||||
included in these categories, but they are in the next section.
|
included in the categories here, but they are in the next section.
|
||||||
|
|
||||||
Initialization:
|
Initialization:
|
||||||
|
|
||||||
@ -361,7 +361,7 @@ Settings:
|
|||||||
"timer"_timer.html,
|
"timer"_timer.html,
|
||||||
"timestep"_timestep.html
|
"timestep"_timestep.html
|
||||||
|
|
||||||
Operations within timestepping (fixes) and diagnositics (computes):
|
Operations within timestepping (fixes) and diagnostics (computes):
|
||||||
|
|
||||||
"compute"_compute.html,
|
"compute"_compute.html,
|
||||||
"compute_modify"_compute_modify.html,
|
"compute_modify"_compute_modify.html,
|
||||||
@ -527,9 +527,9 @@ These are additional commands in USER packages, which can be used if
|
|||||||
"LAMMPS is built with the appropriate
|
"LAMMPS is built with the appropriate
|
||||||
package"_Section_start.html#start_3.
|
package"_Section_start.html#start_3.
|
||||||
|
|
||||||
"dump custom/vtk"_dump_custom_vtk.html,
|
"dump netcdf"_dump_netcdf.html,
|
||||||
"dump nc"_dump_nc.html,
|
"dump netcdf/mpiio"_dump_netcdf.html,
|
||||||
"dump nc/mpiio"_dump_nc.html,
|
"dump vtk"_dump_vtk.html,
|
||||||
"group2ndx"_group2ndx.html,
|
"group2ndx"_group2ndx.html,
|
||||||
"ndx2group"_group2ndx.html,
|
"ndx2group"_group2ndx.html,
|
||||||
"temper/grem"_temper_grem.html :tb(c=3,ea=c)
|
"temper/grem"_temper_grem.html :tb(c=3,ea=c)
|
||||||
@ -618,6 +618,7 @@ USER-INTEL, k = KOKKOS, o = USER-OMP, t = OPT.
|
|||||||
"press/berendsen"_fix_press_berendsen.html,
|
"press/berendsen"_fix_press_berendsen.html,
|
||||||
"print"_fix_print.html,
|
"print"_fix_print.html,
|
||||||
"property/atom"_fix_property_atom.html,
|
"property/atom"_fix_property_atom.html,
|
||||||
|
"python"_fix_python.html,
|
||||||
"qeq/comb (o)"_fix_qeq_comb.html,
|
"qeq/comb (o)"_fix_qeq_comb.html,
|
||||||
"qeq/dynamic"_fix_qeq.html,
|
"qeq/dynamic"_fix_qeq.html,
|
||||||
"qeq/fire"_fix_qeq.html,
|
"qeq/fire"_fix_qeq.html,
|
||||||
@ -684,9 +685,11 @@ package"_Section_start.html#start_3.
|
|||||||
"drude"_fix_drude.html,
|
"drude"_fix_drude.html,
|
||||||
"drude/transform/direct"_fix_drude_transform.html,
|
"drude/transform/direct"_fix_drude_transform.html,
|
||||||
"drude/transform/reverse"_fix_drude_transform.html,
|
"drude/transform/reverse"_fix_drude_transform.html,
|
||||||
|
"edpd/source"_fix_dpd_source.html,
|
||||||
"eos/cv"_fix_eos_cv.html,
|
"eos/cv"_fix_eos_cv.html,
|
||||||
"eos/table"_fix_eos_table.html,
|
"eos/table"_fix_eos_table.html,
|
||||||
"eos/table/rx"_fix_eos_table_rx.html,
|
"eos/table/rx"_fix_eos_table_rx.html,
|
||||||
|
"filter/corotate"_fix_filter_corotate.html,
|
||||||
"flow/gauss"_fix_flow_gauss.html,
|
"flow/gauss"_fix_flow_gauss.html,
|
||||||
"gle"_fix_gle.html,
|
"gle"_fix_gle.html,
|
||||||
"grem"_fix_grem.html,
|
"grem"_fix_grem.html,
|
||||||
@ -702,6 +705,9 @@ package"_Section_start.html#start_3.
|
|||||||
"meso"_fix_meso.html,
|
"meso"_fix_meso.html,
|
||||||
"manifoldforce"_fix_manifoldforce.html,
|
"manifoldforce"_fix_manifoldforce.html,
|
||||||
"meso/stationary"_fix_meso_stationary.html,
|
"meso/stationary"_fix_meso_stationary.html,
|
||||||
|
"mvv/dpd"_fix_mvv_dpd.html,
|
||||||
|
"mvv/edpd"_fix_mvv_dpd.html,
|
||||||
|
"mvv/tdpd"_fix_mvv_dpd.html,
|
||||||
"nve/dot"_fix_nve_dot.html,
|
"nve/dot"_fix_nve_dot.html,
|
||||||
"nve/dotc/langevin"_fix_nve_dotc_langevin.html,
|
"nve/dotc/langevin"_fix_nve_dotc_langevin.html,
|
||||||
"nve/manifold/rattle"_fix_nve_manifold_rattle.html,
|
"nve/manifold/rattle"_fix_nve_manifold_rattle.html,
|
||||||
@ -715,7 +721,7 @@ package"_Section_start.html#start_3.
|
|||||||
"phonon"_fix_phonon.html,
|
"phonon"_fix_phonon.html,
|
||||||
"pimd"_fix_pimd.html,
|
"pimd"_fix_pimd.html,
|
||||||
"qbmsst"_fix_qbmsst.html,
|
"qbmsst"_fix_qbmsst.html,
|
||||||
"qeq/reax"_fix_qeq_reax.html,
|
"qeq/reax (ko)"_fix_qeq_reax.html,
|
||||||
"qmmm"_fix_qmmm.html,
|
"qmmm"_fix_qmmm.html,
|
||||||
"qtb"_fix_qtb.html,
|
"qtb"_fix_qtb.html,
|
||||||
"reax/c/bonds"_fix_reax_bonds.html,
|
"reax/c/bonds"_fix_reax_bonds.html,
|
||||||
@ -730,9 +736,12 @@ package"_Section_start.html#start_3.
|
|||||||
"smd/move/triangulated/surface"_fix_smd_move_triangulated_surface.html,
|
"smd/move/triangulated/surface"_fix_smd_move_triangulated_surface.html,
|
||||||
"smd/setvel"_fix_smd_setvel.html,
|
"smd/setvel"_fix_smd_setvel.html,
|
||||||
"smd/wall/surface"_fix_smd_wall_surface.html,
|
"smd/wall/surface"_fix_smd_wall_surface.html,
|
||||||
|
"tdpd/source"_fix_dpd_source.html,
|
||||||
"temp/rescale/eff"_fix_temp_rescale_eff.html,
|
"temp/rescale/eff"_fix_temp_rescale_eff.html,
|
||||||
"ti/spring"_fix_ti_spring.html,
|
"ti/spring"_fix_ti_spring.html,
|
||||||
"ttm/mod"_fix_ttm.html :tb(c=6,ea=c)
|
"ttm/mod"_fix_ttm.html,
|
||||||
|
"wall/ees"_fix_wall_ees.html,
|
||||||
|
"wall/region/ees"_fix_wall_ees.html :tb(c=6,ea=c)
|
||||||
|
|
||||||
:line
|
:line
|
||||||
|
|
||||||
@ -771,6 +780,7 @@ KOKKOS, o = USER-OMP, t = OPT.
|
|||||||
"erotate/sphere"_compute_erotate_sphere.html,
|
"erotate/sphere"_compute_erotate_sphere.html,
|
||||||
"erotate/sphere/atom"_compute_erotate_sphere_atom.html,
|
"erotate/sphere/atom"_compute_erotate_sphere_atom.html,
|
||||||
"event/displace"_compute_event_displace.html,
|
"event/displace"_compute_event_displace.html,
|
||||||
|
"fragment/atom"_compute_cluster_atom.html,
|
||||||
"global/atom"_compute_global_atom.html,
|
"global/atom"_compute_global_atom.html,
|
||||||
"group/group"_compute_group_group.html,
|
"group/group"_compute_group_group.html,
|
||||||
"gyration"_compute_gyration.html,
|
"gyration"_compute_gyration.html,
|
||||||
@ -829,8 +839,10 @@ package"_Section_start.html#start_3.
|
|||||||
|
|
||||||
"ackland/atom"_compute_ackland_atom.html,
|
"ackland/atom"_compute_ackland_atom.html,
|
||||||
"basal/atom"_compute_basal_atom.html,
|
"basal/atom"_compute_basal_atom.html,
|
||||||
|
"cnp/atom"_compute_cnp_atom.html,
|
||||||
"dpd"_compute_dpd.html,
|
"dpd"_compute_dpd.html,
|
||||||
"dpd/atom"_compute_dpd_atom.html,
|
"dpd/atom"_compute_dpd_atom.html,
|
||||||
|
"edpd/temp/atom"_compute_edpd_temp_atom.html,
|
||||||
"fep"_compute_fep.html,
|
"fep"_compute_fep.html,
|
||||||
"force/tally"_compute_tally.html,
|
"force/tally"_compute_tally.html,
|
||||||
"heat/flux/tally"_compute_tally.html,
|
"heat/flux/tally"_compute_tally.html,
|
||||||
@ -863,6 +875,7 @@ package"_Section_start.html#start_3.
|
|||||||
"smd/ulsph/stress"_compute_smd_ulsph_stress.html,
|
"smd/ulsph/stress"_compute_smd_ulsph_stress.html,
|
||||||
"smd/vol"_compute_smd_vol.html,
|
"smd/vol"_compute_smd_vol.html,
|
||||||
"stress/tally"_compute_tally.html,
|
"stress/tally"_compute_tally.html,
|
||||||
|
"tdpd/cc/atom"_compute_tdpd_cc_atom.html,
|
||||||
"temp/drude"_compute_temp_drude.html,
|
"temp/drude"_compute_temp_drude.html,
|
||||||
"temp/eff"_compute_temp_eff.html,
|
"temp/eff"_compute_temp_eff.html,
|
||||||
"temp/deform/eff"_compute_temp_deform_eff.html,
|
"temp/deform/eff"_compute_temp_deform_eff.html,
|
||||||
@ -887,8 +900,8 @@ KOKKOS, o = USER-OMP, t = OPT.
|
|||||||
"hybrid"_pair_hybrid.html,
|
"hybrid"_pair_hybrid.html,
|
||||||
"hybrid/overlay"_pair_hybrid.html,
|
"hybrid/overlay"_pair_hybrid.html,
|
||||||
"adp (o)"_pair_adp.html,
|
"adp (o)"_pair_adp.html,
|
||||||
"airebo (o)"_pair_airebo.html,
|
"airebo (oi)"_pair_airebo.html,
|
||||||
"airebo/morse (o)"_pair_airebo.html,
|
"airebo/morse (oi)"_pair_airebo.html,
|
||||||
"beck (go)"_pair_beck.html,
|
"beck (go)"_pair_beck.html,
|
||||||
"body"_pair_body.html,
|
"body"_pair_body.html,
|
||||||
"bop"_pair_bop.html,
|
"bop"_pair_bop.html,
|
||||||
@ -922,23 +935,27 @@ KOKKOS, o = USER-OMP, t = OPT.
|
|||||||
"dpd/tstat (go)"_pair_dpd.html,
|
"dpd/tstat (go)"_pair_dpd.html,
|
||||||
"dsmc"_pair_dsmc.html,
|
"dsmc"_pair_dsmc.html,
|
||||||
"eam (gkiot)"_pair_eam.html,
|
"eam (gkiot)"_pair_eam.html,
|
||||||
"eam/alloy (gkot)"_pair_eam.html,
|
"eam/alloy (gkiot)"_pair_eam.html,
|
||||||
"eam/fs (gkot)"_pair_eam.html,
|
"eam/fs (gkiot)"_pair_eam.html,
|
||||||
"eim (o)"_pair_eim.html,
|
"eim (o)"_pair_eim.html,
|
||||||
"gauss (go)"_pair_gauss.html,
|
"gauss (go)"_pair_gauss.html,
|
||||||
"gayberne (gio)"_pair_gayberne.html,
|
"gayberne (gio)"_pair_gayberne.html,
|
||||||
"gran/hertz/history (o)"_pair_gran.html,
|
"gran/hertz/history (o)"_pair_gran.html,
|
||||||
"gran/hooke (o)"_pair_gran.html,
|
"gran/hooke (o)"_pair_gran.html,
|
||||||
"gran/hooke/history (o)"_pair_gran.html,
|
"gran/hooke/history (o)"_pair_gran.html,
|
||||||
|
"gw"_pair_gw.html,
|
||||||
|
"gw/zbl"_pair_gw.html,
|
||||||
"hbond/dreiding/lj (o)"_pair_hbond_dreiding.html,
|
"hbond/dreiding/lj (o)"_pair_hbond_dreiding.html,
|
||||||
"hbond/dreiding/morse (o)"_pair_hbond_dreiding.html,
|
"hbond/dreiding/morse (o)"_pair_hbond_dreiding.html,
|
||||||
"kim"_pair_kim.html,
|
"kim"_pair_kim.html,
|
||||||
"lcbop"_pair_lcbop.html,
|
"lcbop"_pair_lcbop.html,
|
||||||
"line/lj"_pair_line_lj.html,
|
"line/lj"_pair_line_lj.html,
|
||||||
"lj/charmm/coul/charmm (ko)"_pair_charmm.html,
|
"lj/charmm/coul/charmm (kio)"_pair_charmm.html,
|
||||||
"lj/charmm/coul/charmm/implicit (ko)"_pair_charmm.html,
|
"lj/charmm/coul/charmm/implicit (ko)"_pair_charmm.html,
|
||||||
"lj/charmm/coul/long (giko)"_pair_charmm.html,
|
"lj/charmm/coul/long (gkio)"_pair_charmm.html,
|
||||||
"lj/charmm/coul/msm"_pair_charmm.html,
|
"lj/charmm/coul/msm"_pair_charmm.html,
|
||||||
|
"lj/charmmfsw/coul/charmmfsh"_pair_charmm.html,
|
||||||
|
"lj/charmmfsw/coul/long"_pair_charmm.html,
|
||||||
"lj/class2 (gko)"_pair_class2.html,
|
"lj/class2 (gko)"_pair_class2.html,
|
||||||
"lj/class2/coul/cut (ko)"_pair_class2.html,
|
"lj/class2/coul/cut (ko)"_pair_class2.html,
|
||||||
"lj/class2/coul/long (gko)"_pair_class2.html,
|
"lj/class2/coul/long (gko)"_pair_class2.html,
|
||||||
@ -957,7 +974,7 @@ KOKKOS, o = USER-OMP, t = OPT.
|
|||||||
"lj/expand (gko)"_pair_lj_expand.html,
|
"lj/expand (gko)"_pair_lj_expand.html,
|
||||||
"lj/gromacs (gko)"_pair_gromacs.html,
|
"lj/gromacs (gko)"_pair_gromacs.html,
|
||||||
"lj/gromacs/coul/gromacs (ko)"_pair_gromacs.html,
|
"lj/gromacs/coul/gromacs (ko)"_pair_gromacs.html,
|
||||||
"lj/long/coul/long (o)"_pair_lj_long.html,
|
"lj/long/coul/long (io)"_pair_lj_long.html,
|
||||||
"lj/long/dipole/long"_pair_dipole.html,
|
"lj/long/dipole/long"_pair_dipole.html,
|
||||||
"lj/long/tip4p/long"_pair_lj_long.html,
|
"lj/long/tip4p/long"_pair_lj_long.html,
|
||||||
"lj/smooth (o)"_pair_lj_smooth.html,
|
"lj/smooth (o)"_pair_lj_smooth.html,
|
||||||
@ -969,7 +986,7 @@ KOKKOS, o = USER-OMP, t = OPT.
|
|||||||
"lubricateU/poly"_pair_lubricateU.html,
|
"lubricateU/poly"_pair_lubricateU.html,
|
||||||
"meam"_pair_meam.html,
|
"meam"_pair_meam.html,
|
||||||
"mie/cut (o)"_pair_mie.html,
|
"mie/cut (o)"_pair_mie.html,
|
||||||
"morse (got)"_pair_morse.html,
|
"morse (gkot)"_pair_morse.html,
|
||||||
"nb3b/harmonic (o)"_pair_nb3b_harmonic.html,
|
"nb3b/harmonic (o)"_pair_nb3b_harmonic.html,
|
||||||
"nm/cut (o)"_pair_nm.html,
|
"nm/cut (o)"_pair_nm.html,
|
||||||
"nm/cut/coul/cut (o)"_pair_nm.html,
|
"nm/cut/coul/cut (o)"_pair_nm.html,
|
||||||
@ -979,8 +996,9 @@ KOKKOS, o = USER-OMP, t = OPT.
|
|||||||
"peri/pmb (o)"_pair_peri.html,
|
"peri/pmb (o)"_pair_peri.html,
|
||||||
"peri/ves"_pair_peri.html,
|
"peri/ves"_pair_peri.html,
|
||||||
"polymorphic"_pair_polymorphic.html,
|
"polymorphic"_pair_polymorphic.html,
|
||||||
|
"python"_pair_python.html,
|
||||||
"reax"_pair_reax.html,
|
"reax"_pair_reax.html,
|
||||||
"rebo (o)"_pair_airebo.html,
|
"rebo (oi)"_pair_airebo.html,
|
||||||
"resquared (go)"_pair_resquared.html,
|
"resquared (go)"_pair_resquared.html,
|
||||||
"snap"_pair_snap.html,
|
"snap"_pair_snap.html,
|
||||||
"soft (go)"_pair_soft.html,
|
"soft (go)"_pair_soft.html,
|
||||||
@ -1013,9 +1031,12 @@ package"_Section_start.html#start_3.
|
|||||||
"dpd/fdt/energy"_pair_dpd_fdt.html,
|
"dpd/fdt/energy"_pair_dpd_fdt.html,
|
||||||
"eam/cd (o)"_pair_eam.html,
|
"eam/cd (o)"_pair_eam.html,
|
||||||
"edip (o)"_pair_edip.html,
|
"edip (o)"_pair_edip.html,
|
||||||
|
"edip/multi"_pair_edip.html,
|
||||||
|
"edpd"_pair_meso.html,
|
||||||
"eff/cut"_pair_eff.html,
|
"eff/cut"_pair_eff.html,
|
||||||
"exp6/rx"_pair_exp6_rx.html,
|
"exp6/rx"_pair_exp6_rx.html,
|
||||||
"gauss/cut"_pair_gauss.html,
|
"gauss/cut"_pair_gauss.html,
|
||||||
|
"kolmogorov/crespi/z"_pair_kolmogorov_crespi_z.html,
|
||||||
"lennard/mdf"_pair_mdf.html,
|
"lennard/mdf"_pair_mdf.html,
|
||||||
"list"_pair_list.html,
|
"list"_pair_list.html,
|
||||||
"lj/charmm/coul/long/soft (o)"_pair_charmm.html,
|
"lj/charmm/coul/long/soft (o)"_pair_charmm.html,
|
||||||
@ -1029,10 +1050,13 @@ package"_Section_start.html#start_3.
|
|||||||
"lj/sdk (gko)"_pair_sdk.html,
|
"lj/sdk (gko)"_pair_sdk.html,
|
||||||
"lj/sdk/coul/long (go)"_pair_sdk.html,
|
"lj/sdk/coul/long (go)"_pair_sdk.html,
|
||||||
"lj/sdk/coul/msm (o)"_pair_sdk.html,
|
"lj/sdk/coul/msm (o)"_pair_sdk.html,
|
||||||
"lj/sf (o)"_pair_lj_sf.html,
|
"mdpd"_pair_meso.html,
|
||||||
|
"mdpd/rhosum"_pair_meso.html,
|
||||||
|
"meam/c"_pair_meam.html,
|
||||||
"meam/spline (o)"_pair_meam_spline.html,
|
"meam/spline (o)"_pair_meam_spline.html,
|
||||||
"meam/sw/spline"_pair_meam_sw_spline.html,
|
"meam/sw/spline"_pair_meam_sw_spline.html,
|
||||||
"mgpt"_pair_mgpt.html,
|
"mgpt"_pair_mgpt.html,
|
||||||
|
"momb"_pair_momb.html,
|
||||||
"morse/smooth/linear"_pair_morse.html,
|
"morse/smooth/linear"_pair_morse.html,
|
||||||
"morse/soft"_pair_morse.html,
|
"morse/soft"_pair_morse.html,
|
||||||
"multi/lucy"_pair_multi_lucy.html,
|
"multi/lucy"_pair_multi_lucy.html,
|
||||||
@ -1042,8 +1066,12 @@ package"_Section_start.html#start_3.
|
|||||||
"oxdna/hbond"_pair_oxdna.html,
|
"oxdna/hbond"_pair_oxdna.html,
|
||||||
"oxdna/stk"_pair_oxdna.html,
|
"oxdna/stk"_pair_oxdna.html,
|
||||||
"oxdna/xstk"_pair_oxdna.html,
|
"oxdna/xstk"_pair_oxdna.html,
|
||||||
|
"oxdna2/coaxstk"_pair_oxdna2.html,
|
||||||
|
"oxdna2/dh"_pair_oxdna2.html,
|
||||||
|
"oxdna2/excv"_pair_oxdna2.html,
|
||||||
|
"oxdna2/stk"_pair_oxdna2.html,
|
||||||
"quip"_pair_quip.html,
|
"quip"_pair_quip.html,
|
||||||
"reax/c (k)"_pair_reax_c.html,
|
"reax/c (ko)"_pair_reaxc.html,
|
||||||
"smd/hertz"_pair_smd_hertz.html,
|
"smd/hertz"_pair_smd_hertz.html,
|
||||||
"smd/tlsph"_pair_smd_tlsph.html,
|
"smd/tlsph"_pair_smd_tlsph.html,
|
||||||
"smd/triangulated/surface"_pair_smd_triangulated_surface.html,
|
"smd/triangulated/surface"_pair_smd_triangulated_surface.html,
|
||||||
@ -1057,6 +1085,7 @@ package"_Section_start.html#start_3.
|
|||||||
"sph/taitwater/morris"_pair_sph_taitwater_morris.html,
|
"sph/taitwater/morris"_pair_sph_taitwater_morris.html,
|
||||||
"srp"_pair_srp.html,
|
"srp"_pair_srp.html,
|
||||||
"table/rx"_pair_table_rx.html,
|
"table/rx"_pair_table_rx.html,
|
||||||
|
"tdpd"_pair_meso.html,
|
||||||
"tersoff/table (o)"_pair_tersoff.html,
|
"tersoff/table (o)"_pair_tersoff.html,
|
||||||
"thole"_pair_thole.html,
|
"thole"_pair_thole.html,
|
||||||
"tip4p/long/soft (o)"_pair_lj_soft.html :tb(c=4,ea=c)
|
"tip4p/long/soft (o)"_pair_lj_soft.html :tb(c=4,ea=c)
|
||||||
@ -1076,7 +1105,7 @@ KOKKOS, o = USER-OMP, t = OPT.
|
|||||||
"none"_bond_none.html,
|
"none"_bond_none.html,
|
||||||
"zero"_bond_zero.html,
|
"zero"_bond_zero.html,
|
||||||
"hybrid"_bond_hybrid.html,
|
"hybrid"_bond_hybrid.html,
|
||||||
"class2 (o)"_bond_class2.html,
|
"class2 (ko)"_bond_class2.html,
|
||||||
"fene (iko)"_bond_fene.html,
|
"fene (iko)"_bond_fene.html,
|
||||||
"fene/expand (o)"_bond_fene_expand.html,
|
"fene/expand (o)"_bond_fene_expand.html,
|
||||||
"harmonic (ko)"_bond_harmonic.html,
|
"harmonic (ko)"_bond_harmonic.html,
|
||||||
@ -1091,7 +1120,8 @@ package"_Section_start.html#start_3.
|
|||||||
|
|
||||||
"harmonic/shift (o)"_bond_harmonic_shift.html,
|
"harmonic/shift (o)"_bond_harmonic_shift.html,
|
||||||
"harmonic/shift/cut (o)"_bond_harmonic_shift_cut.html,
|
"harmonic/shift/cut (o)"_bond_harmonic_shift_cut.html,
|
||||||
"oxdna/fene"_bond_oxdna_fene.html :tb(c=4,ea=c)
|
"oxdna/fene"_bond_oxdna.html,
|
||||||
|
"oxdna2/fene"_bond_oxdna.html :tb(c=4,ea=c)
|
||||||
|
|
||||||
:line
|
:line
|
||||||
|
|
||||||
@ -1109,7 +1139,7 @@ USER-OMP, t = OPT.
|
|||||||
"zero"_angle_zero.html,
|
"zero"_angle_zero.html,
|
||||||
"hybrid"_angle_hybrid.html,
|
"hybrid"_angle_hybrid.html,
|
||||||
"charmm (ko)"_angle_charmm.html,
|
"charmm (ko)"_angle_charmm.html,
|
||||||
"class2 (o)"_angle_class2.html,
|
"class2 (ko)"_angle_class2.html,
|
||||||
"cosine (o)"_angle_cosine.html,
|
"cosine (o)"_angle_cosine.html,
|
||||||
"cosine/delta (o)"_angle_cosine_delta.html,
|
"cosine/delta (o)"_angle_cosine_delta.html,
|
||||||
"cosine/periodic (o)"_angle_cosine_periodic.html,
|
"cosine/periodic (o)"_angle_cosine_periodic.html,
|
||||||
@ -1145,7 +1175,8 @@ USER-OMP, t = OPT.
|
|||||||
"zero"_dihedral_zero.html,
|
"zero"_dihedral_zero.html,
|
||||||
"hybrid"_dihedral_hybrid.html,
|
"hybrid"_dihedral_hybrid.html,
|
||||||
"charmm (ko)"_dihedral_charmm.html,
|
"charmm (ko)"_dihedral_charmm.html,
|
||||||
"class2 (o)"_dihedral_class2.html,
|
"charmmfsw"_dihedral_charmm.html,
|
||||||
|
"class2 (ko)"_dihedral_class2.html,
|
||||||
"harmonic (io)"_dihedral_harmonic.html,
|
"harmonic (io)"_dihedral_harmonic.html,
|
||||||
"helix (o)"_dihedral_helix.html,
|
"helix (o)"_dihedral_helix.html,
|
||||||
"multi/harmonic (o)"_dihedral_multi_harmonic.html,
|
"multi/harmonic (o)"_dihedral_multi_harmonic.html,
|
||||||
@ -1177,7 +1208,7 @@ USER-OMP, t = OPT.
|
|||||||
"none"_improper_none.html,
|
"none"_improper_none.html,
|
||||||
"zero"_improper_zero.html,
|
"zero"_improper_zero.html,
|
||||||
"hybrid"_improper_hybrid.html,
|
"hybrid"_improper_hybrid.html,
|
||||||
"class2 (o)"_improper_class2.html,
|
"class2 (ko)"_improper_class2.html,
|
||||||
"cvff (io)"_improper_cvff.html,
|
"cvff (io)"_improper_cvff.html,
|
||||||
"harmonic (ko)"_improper_harmonic.html,
|
"harmonic (ko)"_improper_harmonic.html,
|
||||||
"umbrella (o)"_improper_umbrella.html :tb(c=4,ea=c)
|
"umbrella (o)"_improper_umbrella.html :tb(c=4,ea=c)
|
||||||
@ -1209,7 +1240,7 @@ USER-OMP, t = OPT.
|
|||||||
"msm/cg (o)"_kspace_style.html,
|
"msm/cg (o)"_kspace_style.html,
|
||||||
"pppm (go)"_kspace_style.html,
|
"pppm (go)"_kspace_style.html,
|
||||||
"pppm/cg (o)"_kspace_style.html,
|
"pppm/cg (o)"_kspace_style.html,
|
||||||
"pppm/disp"_kspace_style.html,
|
"pppm/disp (i)"_kspace_style.html,
|
||||||
"pppm/disp/tip4p"_kspace_style.html,
|
"pppm/disp/tip4p"_kspace_style.html,
|
||||||
"pppm/stagger"_kspace_style.html,
|
"pppm/stagger"_kspace_style.html,
|
||||||
"pppm/tip4p (o)"_kspace_style.html :tb(c=4,ea=c)
|
"pppm/tip4p (o)"_kspace_style.html :tb(c=4,ea=c)
|
||||||
|
|||||||
@ -22,7 +22,7 @@ either conceptually, or as printed out by the program.
|
|||||||
|
|
||||||
12.1 Common problems :link(err_1),h4
|
12.1 Common problems :link(err_1),h4
|
||||||
|
|
||||||
If two LAMMPS runs do not produce the same answer on different
|
If two LAMMPS runs do not produce the exact same answer on different
|
||||||
machines or different numbers of processors, this is typically not a
|
machines or different numbers of processors, this is typically not a
|
||||||
bug. In theory you should get identical answers on any number of
|
bug. In theory you should get identical answers on any number of
|
||||||
processors and on any machine. In practice, numerical round-off can
|
processors and on any machine. In practice, numerical round-off can
|
||||||
@ -71,7 +71,7 @@ style", with ... being fix, compute, pair, etc, it means that you
|
|||||||
mistyped the style name or that the command is part of an optional
|
mistyped the style name or that the command is part of an optional
|
||||||
package which was not compiled into your executable. The list of
|
package which was not compiled into your executable. The list of
|
||||||
available styles in your executable can be listed by using "the -h
|
available styles in your executable can be listed by using "the -h
|
||||||
command-line argument"_Section_start.html#start_7. The installation
|
command-line argument"_Section_start.html#start_6. The installation
|
||||||
and compilation of optional packages is explained in the "installation
|
and compilation of optional packages is explained in the "installation
|
||||||
instructions"_Section_start.html#start_3.
|
instructions"_Section_start.html#start_3.
|
||||||
|
|
||||||
@ -80,12 +80,24 @@ order. If you mess this up, LAMMPS will often flag the error, but it
|
|||||||
may also simply read a bogus argument and assign a value that is
|
may also simply read a bogus argument and assign a value that is
|
||||||
valid, but not what you wanted. E.g. trying to read the string "abc"
|
valid, but not what you wanted. E.g. trying to read the string "abc"
|
||||||
as an integer value of 0. Careful reading of the associated doc page
|
as an integer value of 0. Careful reading of the associated doc page
|
||||||
for the command should allow you to fix these problems. Note that
|
for the command should allow you to fix these problems. In most cases,
|
||||||
some commands allow for variables to be specified in place of numeric
|
where LAMMPS expects to read a number, either integer or floating point,
|
||||||
constants so that the value can be evaluated and change over the
|
it performs a stringent test on whether the provided input actually
|
||||||
course of a run. This is typically done with the syntax {v_name} for
|
is an integer or floating-point number, respectively, and reject the
|
||||||
a parameter, where name is the name of the variable. This is only
|
input with an error message (for instance, when an integer is required,
|
||||||
allowed if the command documentation says it is.
|
but a floating-point number 1.0 is provided):
|
||||||
|
|
||||||
|
ERROR: Expected integer parameter in input script or data file :pre
|
||||||
|
|
||||||
|
Some commands allow for using variable references in place of numeric
|
||||||
|
constants so that the value can be evaluated and may change over the
|
||||||
|
course of a run. This is typically done with the syntax {v_name} for a
|
||||||
|
parameter, where name is the name of the variable. On the other hand,
|
||||||
|
immediate variable expansion with the syntax ${name} is performed while
|
||||||
|
reading the input and before parsing commands,
|
||||||
|
|
||||||
|
NOTE: Using a variable reference (i.e. {v_name}) is only allowed if
|
||||||
|
the documentation of the corresponding command explicitly says it is.
|
||||||
|
|
||||||
Generally, LAMMPS will print a message to the screen and logfile and
|
Generally, LAMMPS will print a message to the screen and logfile and
|
||||||
exit gracefully when it encounters a fatal error. Sometimes it will
|
exit gracefully when it encounters a fatal error. Sometimes it will
|
||||||
@ -562,11 +574,11 @@ group of atoms correctly. :dd
|
|||||||
|
|
||||||
{Bad quadratic solve for particle/line collision} :dt
|
{Bad quadratic solve for particle/line collision} :dt
|
||||||
|
|
||||||
This is an internal error. It should nornally not occur. :dd
|
This is an internal error. It should normally not occur. :dd
|
||||||
|
|
||||||
{Bad quadratic solve for particle/tri collision} :dt
|
{Bad quadratic solve for particle/tri collision} :dt
|
||||||
|
|
||||||
This is an internal error. It should nornally not occur. :dd
|
This is an internal error. It should normally not occur. :dd
|
||||||
|
|
||||||
{Bad real space Coulomb cutoff in fix tune/kspace} :dt
|
{Bad real space Coulomb cutoff in fix tune/kspace} :dt
|
||||||
|
|
||||||
@ -900,7 +912,7 @@ Atoms can not be added afterwards to this fix option. :dd
|
|||||||
|
|
||||||
{Cannot append atoms to a triclinic box} :dt
|
{Cannot append atoms to a triclinic box} :dt
|
||||||
|
|
||||||
The simulation box must be defined with edges alligned with the
|
The simulation box must be defined with edges aligned with the
|
||||||
Cartesian axes. :dd
|
Cartesian axes. :dd
|
||||||
|
|
||||||
{Cannot balance in z dimension for 2d simulation} :dt
|
{Cannot balance in z dimension for 2d simulation} :dt
|
||||||
@ -980,7 +992,7 @@ file. :dd
|
|||||||
|
|
||||||
LAMMPS failed to compute an initial guess for the PPPM_disp g_ewald_6
|
LAMMPS failed to compute an initial guess for the PPPM_disp g_ewald_6
|
||||||
factor that partitions the computation between real space and k-space
|
factor that partitions the computation between real space and k-space
|
||||||
for Disptersion interactions. :dd
|
for Dispersion interactions. :dd
|
||||||
|
|
||||||
{Cannot create an atom map unless atoms have IDs} :dt
|
{Cannot create an atom map unless atoms have IDs} :dt
|
||||||
|
|
||||||
@ -1315,7 +1327,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
This file is created when you use some LAMMPS features, to indicate
|
This file is created when you use some LAMMPS features, to indicate
|
||||||
what paper you should cite on behalf of those who implemented
|
what paper you should cite on behalf of those who implemented
|
||||||
the feature. Check that you have write priveleges into the directory
|
the feature. Check that you have write privileges into the directory
|
||||||
you are running in. :dd
|
you are running in. :dd
|
||||||
|
|
||||||
{Cannot open log.lammps for writing} :dt
|
{Cannot open log.lammps for writing} :dt
|
||||||
@ -1993,7 +2005,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Cannot use fix reax/bonds without pair_style reax} :dt
|
{Cannot use fix reax/bonds without pair_style reax} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Cannot use fix rigid npt/nph and fix deform on same component of stress tensor} :dt
|
{Cannot use fix rigid npt/nph and fix deform on same component of stress tensor} :dt
|
||||||
|
|
||||||
@ -2076,7 +2088,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Cannot use lines with fix srd unless overlap is set} :dt
|
{Cannot use lines with fix srd unless overlap is set} :dt
|
||||||
|
|
||||||
This is because line segements are connected to each other. :dd
|
This is because line segments are connected to each other. :dd
|
||||||
|
|
||||||
{Cannot use multiple fix wall commands with pair brownian} :dt
|
{Cannot use multiple fix wall commands with pair brownian} :dt
|
||||||
|
|
||||||
@ -2119,7 +2131,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Cannot use newton pair with born/gpu pair style} :dt
|
{Cannot use newton pair with born/gpu pair style} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Cannot use newton pair with buck/coul/cut/gpu pair style} :dt
|
{Cannot use newton pair with buck/coul/cut/gpu pair style} :dt
|
||||||
|
|
||||||
@ -2279,7 +2291,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Cannot use newton pair with zbl/gpu pair style} :dt
|
{Cannot use newton pair with zbl/gpu pair style} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Cannot use non-zero forces in an energy minimization} :dt
|
{Cannot use non-zero forces in an energy minimization} :dt
|
||||||
|
|
||||||
@ -2629,11 +2641,11 @@ uses a pairwise neighbor list. :dd
|
|||||||
|
|
||||||
{Compute chunk/atom bin/cylinder radius is too large for periodic box} :dt
|
{Compute chunk/atom bin/cylinder radius is too large for periodic box} :dt
|
||||||
|
|
||||||
Radius cannot be bigger than 1/2 of a non-axis periodic dimention. :dd
|
Radius cannot be bigger than 1/2 of a non-axis periodic dimension. :dd
|
||||||
|
|
||||||
{Compute chunk/atom bin/sphere radius is too large for periodic box} :dt
|
{Compute chunk/atom bin/sphere radius is too large for periodic box} :dt
|
||||||
|
|
||||||
Radius cannot be bigger than 1/2 of any periodic dimention. :dd
|
Radius cannot be bigger than 1/2 of any periodic dimension. :dd
|
||||||
|
|
||||||
{Compute chunk/atom compute array is accessed out-of-range} :dt
|
{Compute chunk/atom compute array is accessed out-of-range} :dt
|
||||||
|
|
||||||
@ -2694,15 +2706,15 @@ It will only store IDs if its compress option is enabled. :dd
|
|||||||
|
|
||||||
{Compute chunk/atom stores no coord1 for compute property/chunk} :dt
|
{Compute chunk/atom stores no coord1 for compute property/chunk} :dt
|
||||||
|
|
||||||
Only certain binning options for comptue chunk/atom store coordinates. :dd
|
Only certain binning options for compute chunk/atom store coordinates. :dd
|
||||||
|
|
||||||
{Compute chunk/atom stores no coord2 for compute property/chunk} :dt
|
{Compute chunk/atom stores no coord2 for compute property/chunk} :dt
|
||||||
|
|
||||||
Only certain binning options for comptue chunk/atom store coordinates. :dd
|
Only certain binning options for compute chunk/atom store coordinates. :dd
|
||||||
|
|
||||||
{Compute chunk/atom stores no coord3 for compute property/chunk} :dt
|
{Compute chunk/atom stores no coord3 for compute property/chunk} :dt
|
||||||
|
|
||||||
Only certain binning options for comptue chunk/atom store coordinates. :dd
|
Only certain binning options for compute chunk/atom store coordinates. :dd
|
||||||
|
|
||||||
{Compute chunk/atom variable is not atom-style variable} :dt
|
{Compute chunk/atom variable is not atom-style variable} :dt
|
||||||
|
|
||||||
@ -2723,11 +2735,11 @@ is used to find clusters. :dd
|
|||||||
|
|
||||||
{Compute cna/atom cutoff is longer than pairwise cutoff} :dt
|
{Compute cna/atom cutoff is longer than pairwise cutoff} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Compute cna/atom requires a pair style be defined} :dt
|
{Compute cna/atom requires a pair style be defined} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Compute com/chunk does not use chunk/atom compute} :dt
|
{Compute com/chunk does not use chunk/atom compute} :dt
|
||||||
|
|
||||||
@ -2735,7 +2747,7 @@ The style of the specified compute is not chunk/atom. :dd
|
|||||||
|
|
||||||
{Compute contact/atom requires a pair style be defined} :dt
|
{Compute contact/atom requires a pair style be defined} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Compute contact/atom requires atom style sphere} :dt
|
{Compute contact/atom requires atom style sphere} :dt
|
||||||
|
|
||||||
@ -2748,7 +2760,7 @@ since those atoms are not in the neighbor list. :dd
|
|||||||
|
|
||||||
{Compute coord/atom requires a pair style be defined} :dt
|
{Compute coord/atom requires a pair style be defined} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Compute damage/atom requires peridynamic potential} :dt
|
{Compute damage/atom requires peridynamic potential} :dt
|
||||||
|
|
||||||
@ -2778,7 +2790,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Compute erotate/asphere requires extended particles} :dt
|
{Compute erotate/asphere requires extended particles} :dt
|
||||||
|
|
||||||
This compute cannot be used with point paritlces. :dd
|
This compute cannot be used with point particles. :dd
|
||||||
|
|
||||||
{Compute erotate/rigid with non-rigid fix-ID} :dt
|
{Compute erotate/rigid with non-rigid fix-ID} :dt
|
||||||
|
|
||||||
@ -2823,7 +2835,7 @@ Cannot compute order parameter beyond cutoff. :dd
|
|||||||
|
|
||||||
{Compute hexorder/atom requires a pair style be defined} :dt
|
{Compute hexorder/atom requires a pair style be defined} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Compute improper/local used when impropers are not allowed} :dt
|
{Compute improper/local used when impropers are not allowed} :dt
|
||||||
|
|
||||||
@ -2869,11 +2881,11 @@ Cannot compute order parameter beyond cutoff. :dd
|
|||||||
|
|
||||||
{Compute orientorder/atom requires a pair style be defined} :dt
|
{Compute orientorder/atom requires a pair style be defined} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Compute pair must use group all} :dt
|
{Compute pair must use group all} :dt
|
||||||
|
|
||||||
Pair styles accumlate energy on all atoms. :dd
|
Pair styles accumulate energy on all atoms. :dd
|
||||||
|
|
||||||
{Compute pe must use group all} :dt
|
{Compute pe must use group all} :dt
|
||||||
|
|
||||||
@ -2923,7 +2935,7 @@ The style of the specified compute is not chunk/atom. :dd
|
|||||||
{Compute property/local cannot use these inputs together} :dt
|
{Compute property/local cannot use these inputs together} :dt
|
||||||
|
|
||||||
Only inputs that generate the same number of datums can be used
|
Only inputs that generate the same number of datums can be used
|
||||||
togther. E.g. bond and angle quantities cannot be mixed. :dd
|
together. E.g. bond and angle quantities cannot be mixed. :dd
|
||||||
|
|
||||||
{Compute property/local does not (yet) work with atom_style template} :dt
|
{Compute property/local does not (yet) work with atom_style template} :dt
|
||||||
|
|
||||||
@ -3067,7 +3079,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Compute temp/asphere requires extended particles} :dt
|
{Compute temp/asphere requires extended particles} :dt
|
||||||
|
|
||||||
This compute cannot be used with point paritlces. :dd
|
This compute cannot be used with point particles. :dd
|
||||||
|
|
||||||
{Compute temp/body requires atom style body} :dt
|
{Compute temp/body requires atom style body} :dt
|
||||||
|
|
||||||
@ -3512,12 +3524,12 @@ path and name are correct. :dd
|
|||||||
|
|
||||||
{Could not process Python file} :dt
|
{Could not process Python file} :dt
|
||||||
|
|
||||||
The Python code in the specified file was not run sucessfully by
|
The Python code in the specified file was not run successfully by
|
||||||
Python, probably due to errors in the Python code. :dd
|
Python, probably due to errors in the Python code. :dd
|
||||||
|
|
||||||
{Could not process Python string} :dt
|
{Could not process Python string} :dt
|
||||||
|
|
||||||
The Python code in the here string was not run sucessfully by Python,
|
The Python code in the here string was not run successfully by Python,
|
||||||
probably due to errors in the Python code. :dd
|
probably due to errors in the Python code. :dd
|
||||||
|
|
||||||
{Coulomb PPPMDisp order has been reduced below minorder} :dt
|
{Coulomb PPPMDisp order has been reduced below minorder} :dt
|
||||||
@ -3626,7 +3638,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Cutoffs missing in pair_style buck/long/coul/long} :dt
|
{Cutoffs missing in pair_style buck/long/coul/long} :dt
|
||||||
|
|
||||||
Self-exlanatory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Cutoffs missing in pair_style lj/long/coul/long} :dt
|
{Cutoffs missing in pair_style lj/long/coul/long} :dt
|
||||||
|
|
||||||
@ -4373,7 +4385,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Fix ave/chunk does not use chunk/atom compute} :dt
|
{Fix ave/chunk does not use chunk/atom compute} :dt
|
||||||
|
|
||||||
The specified conpute is not for a compute chunk/atom command. :dd
|
The specified compute is not for a compute chunk/atom command. :dd
|
||||||
|
|
||||||
{Fix ave/chunk fix does not calculate a per-atom array} :dt
|
{Fix ave/chunk fix does not calculate a per-atom array} :dt
|
||||||
|
|
||||||
@ -4605,11 +4617,11 @@ An index for the array is out of bounds. :dd
|
|||||||
|
|
||||||
{Fix ave/time compute does not calculate a scalar} :dt
|
{Fix ave/time compute does not calculate a scalar} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Fix ave/time compute does not calculate a vector} :dt
|
{Fix ave/time compute does not calculate a vector} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Fix ave/time compute does not calculate an array} :dt
|
{Fix ave/time compute does not calculate an array} :dt
|
||||||
|
|
||||||
@ -4684,9 +4696,9 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Fix bond/create induced too many angles/dihedrals/impropers per atom} :dt
|
{Fix bond/create induced too many angles/dihedrals/impropers per atom} :dt
|
||||||
|
|
||||||
See the read_data command for info on setting the "extra angle per
|
See the read_data command for info on using the "extra/angle/per/atom",
|
||||||
atom", etc header values to allow for additional angles, etc to be
|
(or dihedral, improper) keywords to allow for additional
|
||||||
formed. :dd
|
angles, dihedrals, and impropers to be formed. :dd
|
||||||
|
|
||||||
{Fix bond/create needs ghost atoms from further away} :dt
|
{Fix bond/create needs ghost atoms from further away} :dt
|
||||||
|
|
||||||
@ -4958,7 +4970,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Fix langevin angmom requires extended particles} :dt
|
{Fix langevin angmom requires extended particles} :dt
|
||||||
|
|
||||||
This fix option cannot be used with point paritlces. :dd
|
This fix option cannot be used with point particles. :dd
|
||||||
|
|
||||||
{Fix langevin omega is not yet implemented with kokkos} :dt
|
{Fix langevin omega is not yet implemented with kokkos} :dt
|
||||||
|
|
||||||
@ -6159,7 +6171,7 @@ map command will force an atom map to be created. :dd
|
|||||||
|
|
||||||
{Initial temperatures not all set in fix ttm} :dt
|
{Initial temperatures not all set in fix ttm} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Input line quote not followed by whitespace} :dt
|
{Input line quote not followed by whitespace} :dt
|
||||||
|
|
||||||
@ -6187,7 +6199,7 @@ Eigensolve for rigid body was not sufficiently accurate. :dd
|
|||||||
|
|
||||||
{Insufficient Jacobi rotations for triangle} :dt
|
{Insufficient Jacobi rotations for triangle} :dt
|
||||||
|
|
||||||
The calculation of the intertia tensor of the triangle failed. This
|
The calculation of the inertia tensor of the triangle failed. This
|
||||||
should not happen if it is a reasonably shaped triangle. :dd
|
should not happen if it is a reasonably shaped triangle. :dd
|
||||||
|
|
||||||
{Insufficient memory on accelerator} :dt
|
{Insufficient memory on accelerator} :dt
|
||||||
@ -6451,15 +6463,15 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Invalid attribute in dump custom command} :dt
|
{Invalid attribute in dump custom command} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Invalid attribute in dump local command} :dt
|
{Invalid attribute in dump local command} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Invalid attribute in dump modify command} :dt
|
{Invalid attribute in dump modify command} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Invalid basis setting in create_atoms command} :dt
|
{Invalid basis setting in create_atoms command} :dt
|
||||||
|
|
||||||
@ -6725,7 +6737,7 @@ or cause multiple files to be written. :dd
|
|||||||
Filenames used with the dump xyz style cannot be binary or cause files
|
Filenames used with the dump xyz style cannot be binary or cause files
|
||||||
to be written by each processor. :dd
|
to be written by each processor. :dd
|
||||||
|
|
||||||
{Invalid dump_modify threshhold operator} :dt
|
{Invalid dump_modify threshold operator} :dt
|
||||||
|
|
||||||
Operator keyword used for threshold specification in not recognized. :dd
|
Operator keyword used for threshold specification in not recognized. :dd
|
||||||
|
|
||||||
@ -6739,7 +6751,7 @@ The fix is not recognized. :dd
|
|||||||
|
|
||||||
{Invalid fix ave/time off column} :dt
|
{Invalid fix ave/time off column} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Invalid fix box/relax command for a 2d simulation} :dt
|
{Invalid fix box/relax command for a 2d simulation} :dt
|
||||||
|
|
||||||
@ -7301,7 +7313,7 @@ Self-explanatory. Check the input script or data file. :dd
|
|||||||
|
|
||||||
{LJ6 off not supported in pair_style buck/long/coul/long} :dt
|
{LJ6 off not supported in pair_style buck/long/coul/long} :dt
|
||||||
|
|
||||||
Self-exlanatory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Label wasn't found in input script} :dt
|
{Label wasn't found in input script} :dt
|
||||||
|
|
||||||
@ -7349,7 +7361,7 @@ This should not occur. Report the problem to the developers. :dd
|
|||||||
Lost atoms are checked for each time thermo output is done. See the
|
Lost atoms are checked for each time thermo output is done. See the
|
||||||
thermo_modify lost command for options. Lost atoms usually indicate
|
thermo_modify lost command for options. Lost atoms usually indicate
|
||||||
bad dynamics, e.g. atoms have been blown far out of the simulation
|
bad dynamics, e.g. atoms have been blown far out of the simulation
|
||||||
box, or moved futher than one processor's sub-domain away before
|
box, or moved further than one processor's sub-domain away before
|
||||||
reneighboring. :dd
|
reneighboring. :dd
|
||||||
|
|
||||||
{MEAM library error %d} :dt
|
{MEAM library error %d} :dt
|
||||||
@ -7514,7 +7526,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Molecule template ID for create_atoms does not exist} :dt
|
{Molecule template ID for create_atoms does not exist} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Molecule template ID for fix deposit does not exist} :dt
|
{Molecule template ID for fix deposit does not exist} :dt
|
||||||
|
|
||||||
@ -7540,7 +7552,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
Self-explanatory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Molecule toplogy/atom exceeds system topology/atom} :dt
|
{Molecule topology/atom exceeds system topology/atom} :dt
|
||||||
|
|
||||||
The number of bonds, angles, etc per-atom in the molecule exceeds the
|
The number of bonds, angles, etc per-atom in the molecule exceeds the
|
||||||
system setting. See the create_box command for how to specify these
|
system setting. See the create_box command for how to specify these
|
||||||
@ -7780,7 +7792,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Must use variable energy with fix addforce} :dt
|
{Must use variable energy with fix addforce} :dt
|
||||||
|
|
||||||
Must define an energy vartiable when applyting a dynamic
|
Must define an energy variable when applying a dynamic
|
||||||
force during minimization. :dd
|
force during minimization. :dd
|
||||||
|
|
||||||
{Must use variable energy with fix efield} :dt
|
{Must use variable energy with fix efield} :dt
|
||||||
@ -7864,18 +7876,20 @@ See the setting for tagint in the src/lmptype.h file. :dd
|
|||||||
|
|
||||||
{New bond exceeded bonds per atom in create_bonds} :dt
|
{New bond exceeded bonds per atom in create_bonds} :dt
|
||||||
|
|
||||||
See the read_data command for info on setting the "extra bond per
|
See the read_data command for info on using the "extra/bond/per/atom"
|
||||||
atom" header value to allow for additional bonds to be formed. :dd
|
keyword to allow for additional bonds to be formed
|
||||||
|
|
||||||
{New bond exceeded bonds per atom in fix bond/create} :dt
|
{New bond exceeded bonds per atom in fix bond/create} :dt
|
||||||
|
|
||||||
See the read_data command for info on setting the "extra bond per
|
See the read_data command for info on using the "extra/bond/per/atom"
|
||||||
atom" header value to allow for additional bonds to be formed. :dd
|
keyword to allow for additional bonds to be formed :dd
|
||||||
|
|
||||||
{New bond exceeded special list size in fix bond/create} :dt
|
{New bond exceeded special list size in fix bond/create} :dt
|
||||||
|
|
||||||
See the special_bonds extra command for info on how to leave space in
|
See the "read_data extra/special/per/atom" command
|
||||||
the special bonds list to allow for additional bonds to be formed. :dd
|
(or the "create_box extra/special/per/atom" command)
|
||||||
|
for info on how to leave space in the special bonds
|
||||||
|
list to allow for additional bonds to be formed. :dd
|
||||||
|
|
||||||
{Newton bond change after simulation box is defined} :dt
|
{Newton bond change after simulation box is defined} :dt
|
||||||
|
|
||||||
@ -8030,7 +8044,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Non digit character between brackets in variable} :dt
|
{Non digit character between brackets in variable} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Non integer # of swaps in temper command} :dt
|
{Non integer # of swaps in temper command} :dt
|
||||||
|
|
||||||
@ -8651,7 +8665,7 @@ not be invoked by bond_style quartic. :dd
|
|||||||
{Pair style does not support compute group/group} :dt
|
{Pair style does not support compute group/group} :dt
|
||||||
|
|
||||||
The pair_style does not have a single() function, so it cannot be
|
The pair_style does not have a single() function, so it cannot be
|
||||||
invokded by the compute group/group command. :dd
|
invoked by the compute group/group command. :dd
|
||||||
|
|
||||||
{Pair style does not support compute pair/local} :dt
|
{Pair style does not support compute pair/local} :dt
|
||||||
|
|
||||||
@ -8878,6 +8892,14 @@ This is a requirement to use this potential. :dd
|
|||||||
|
|
||||||
See the newton command. This is a restriction to use this potential. :dd
|
See the newton command. This is a restriction to use this potential. :dd
|
||||||
|
|
||||||
|
{Pair style vashishta/gpu requires atom IDs} :dt
|
||||||
|
|
||||||
|
This is a requirement to use this potential. :dd
|
||||||
|
|
||||||
|
{Pair style vashishta/gpu requires newton pair off} :dt
|
||||||
|
|
||||||
|
See the newton command. This is a restriction to use this potential. :dd
|
||||||
|
|
||||||
{Pair style tersoff/gpu requires atom IDs} :dt
|
{Pair style tersoff/gpu requires atom IDs} :dt
|
||||||
|
|
||||||
This is a requirement to use the tersoff/gpu potential. :dd
|
This is a requirement to use the tersoff/gpu potential. :dd
|
||||||
@ -8936,11 +8958,11 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Pair yukawa/colloid requires atom style sphere} :dt
|
{Pair yukawa/colloid requires atom style sphere} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Pair yukawa/colloid requires atoms with same type have same radius} :dt
|
{Pair yukawa/colloid requires atoms with same type have same radius} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Pair yukawa/colloid/gpu requires atom style sphere} :dt
|
{Pair yukawa/colloid/gpu requires atom style sphere} :dt
|
||||||
|
|
||||||
@ -9154,7 +9176,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Python function evaluation failed} :dt
|
{Python function evaluation failed} :dt
|
||||||
|
|
||||||
The Python function did not run succesfully and/or did not return a
|
The Python function did not run successfully and/or did not return a
|
||||||
value (if it is supposed to return a value). This is probably due to
|
value (if it is supposed to return a value). This is probably due to
|
||||||
some error condition in the function. :dd
|
some error condition in the function. :dd
|
||||||
|
|
||||||
@ -9644,9 +9666,10 @@ you are running. :dd
|
|||||||
|
|
||||||
{Special list size exceeded in fix bond/create} :dt
|
{Special list size exceeded in fix bond/create} :dt
|
||||||
|
|
||||||
See the read_data command for info on setting the "extra special per
|
See the "read_data extra/special/per/atom" command
|
||||||
atom" header value to allow for additional special values to be
|
(or the "create_box extra/special/per/atom" command)
|
||||||
stored. :dd
|
for info on how to leave space in the special bonds
|
||||||
|
list to allow for additional bonds to be formed. :dd
|
||||||
|
|
||||||
{Specified processors != physical processors} :dt
|
{Specified processors != physical processors} :dt
|
||||||
|
|
||||||
@ -9663,23 +9686,23 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Subsequent read data induced too many angles per atom} :dt
|
{Subsequent read data induced too many angles per atom} :dt
|
||||||
|
|
||||||
See the create_box extra/angle/per/atom or read_data "extra angle per
|
See the extra/angle/per/atom keyword for the create_box
|
||||||
atom" header value to set this limit larger. :dd
|
or the read_data command to set this limit larger :dd
|
||||||
|
|
||||||
{Subsequent read data induced too many bonds per atom} :dt
|
{Subsequent read data induced too many bonds per atom} :dt
|
||||||
|
|
||||||
See the create_box extra/bond/per/atom or read_data "extra bond per
|
See the extra/bond/per/atom keyword for the create_box
|
||||||
atom" header value to set this limit larger. :dd
|
or the read_data command to set this limit larger :dd
|
||||||
|
|
||||||
{Subsequent read data induced too many dihedrals per atom} :dt
|
{Subsequent read data induced too many dihedrals per atom} :dt
|
||||||
|
|
||||||
See the create_box extra/dihedral/per/atom or read_data "extra
|
See the extra/dihedral/per/atom keyword for the create_box
|
||||||
dihedral per atom" header value to set this limit larger. :dd
|
or the read_data command to set this limit larger :dd
|
||||||
|
|
||||||
{Subsequent read data induced too many impropers per atom} :dt
|
{Subsequent read data induced too many impropers per atom} :dt
|
||||||
|
|
||||||
See the create_box extra/improper/per/atom or read_data "extra
|
See the extra/improper/per/atom keyword for the create_box
|
||||||
improper per atom" header value to set this limit larger. :dd
|
or the read_data command to set this limit larger :dd
|
||||||
|
|
||||||
{Substitution for illegal variable} :dt
|
{Substitution for illegal variable} :dt
|
||||||
|
|
||||||
@ -10013,7 +10036,7 @@ make sense in between runs. :dd
|
|||||||
|
|
||||||
{Threshhold for an atom property that isn't allocated} :dt
|
{Threshhold for an atom property that isn't allocated} :dt
|
||||||
|
|
||||||
A dump threshhold has been requested on a quantity that is
|
A dump threshold has been requested on a quantity that is
|
||||||
not defined by the atom style used in this simulation. :dd
|
not defined by the atom style used in this simulation. :dd
|
||||||
|
|
||||||
{Timestep must be >= 0} :dt
|
{Timestep must be >= 0} :dt
|
||||||
@ -10075,7 +10098,7 @@ to a large size. :dd
|
|||||||
{Too many atom triplets for pair bop} :dt
|
{Too many atom triplets for pair bop} :dt
|
||||||
|
|
||||||
The number of three atom groups for angle determinations exceeds the
|
The number of three atom groups for angle determinations exceeds the
|
||||||
expected number. Check your atomic structrure to ensure that it is
|
expected number. Check your atomic structure to ensure that it is
|
||||||
realistic. :dd
|
realistic. :dd
|
||||||
|
|
||||||
{Too many atoms for dump dcd} :dt
|
{Too many atoms for dump dcd} :dt
|
||||||
@ -10143,7 +10166,7 @@ to a large size. :dd
|
|||||||
|
|
||||||
{Too many timesteps} :dt
|
{Too many timesteps} :dt
|
||||||
|
|
||||||
The cummulative timesteps must fit in a 64-bit integer. :dd
|
The cumulative timesteps must fit in a 64-bit integer. :dd
|
||||||
|
|
||||||
{Too many timesteps for NEB} :dt
|
{Too many timesteps for NEB} :dt
|
||||||
|
|
||||||
@ -10642,7 +10665,7 @@ Only atom-style variables can be used. :dd
|
|||||||
|
|
||||||
{Variable for region cylinder is invalid style} :dt
|
{Variable for region cylinder is invalid style} :dt
|
||||||
|
|
||||||
Only equal-style varaibles are allowed. :dd
|
Only equal-style variables are allowed. :dd
|
||||||
|
|
||||||
{Variable for region is invalid style} :dt
|
{Variable for region is invalid style} :dt
|
||||||
|
|
||||||
@ -10654,7 +10677,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Variable for region sphere is invalid style} :dt
|
{Variable for region sphere is invalid style} :dt
|
||||||
|
|
||||||
Only equal-style varaibles are allowed. :dd
|
Only equal-style variables are allowed. :dd
|
||||||
|
|
||||||
{Variable for restart is invalid style} :dt
|
{Variable for restart is invalid style} :dt
|
||||||
|
|
||||||
@ -10695,7 +10718,7 @@ Self-explanatory. :dd
|
|||||||
{Variable has circular dependency} :dt
|
{Variable has circular dependency} :dt
|
||||||
|
|
||||||
A circular dependency is when variable "a" in used by variable "b" and
|
A circular dependency is when variable "a" in used by variable "b" and
|
||||||
variable "b" is also used by varaible "a". Circular dependencies with
|
variable "b" is also used by variable "a". Circular dependencies with
|
||||||
longer chains of dependence are also not allowed. :dd
|
longer chains of dependence are also not allowed. :dd
|
||||||
|
|
||||||
{Variable name between brackets must be alphanumeric or underscore characters} :dt
|
{Variable name between brackets must be alphanumeric or underscore characters} :dt
|
||||||
@ -10784,7 +10807,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Variable name for fix deform does not exist} :dt
|
{Variable name for fix deform does not exist} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Variable name for fix efield does not exist} :dt
|
{Variable name for fix efield does not exist} :dt
|
||||||
|
|
||||||
@ -11071,7 +11094,7 @@ for a dihedral) and adding a small amount of stretch. :dd
|
|||||||
|
|
||||||
{Both groups in compute group/group have a net charge; the Kspace boundary correction to energy will be non-zero} :dt
|
{Both groups in compute group/group have a net charge; the Kspace boundary correction to energy will be non-zero} :dt
|
||||||
|
|
||||||
Self-explantory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Calling write_dump before a full system init.} :dt
|
{Calling write_dump before a full system init.} :dt
|
||||||
|
|
||||||
@ -11159,6 +11182,12 @@ Self-explanatory. :dd
|
|||||||
If the fix changes the timestep, the dump dcd file will not
|
If the fix changes the timestep, the dump dcd file will not
|
||||||
reflect the change. :dd
|
reflect the change. :dd
|
||||||
|
|
||||||
|
{Energy due to X extra global DOFs will be included in minimizer energies} :dt
|
||||||
|
|
||||||
|
When using fixes like box/relax, the potential energy used by the minimizer
|
||||||
|
is augmented by an additional energy provided by the fix. Thus the printed
|
||||||
|
converged energy may be different from the total potential energy. :dd
|
||||||
|
|
||||||
{Energy tally does not account for 'zero yes'} :dt
|
{Energy tally does not account for 'zero yes'} :dt
|
||||||
|
|
||||||
The energy removed by using the 'zero yes' flag is not accounted
|
The energy removed by using the 'zero yes' flag is not accounted
|
||||||
@ -11402,7 +11431,7 @@ The command options you have used caused atoms to be lost. :dd
|
|||||||
Lost atoms are checked for each time thermo output is done. See the
|
Lost atoms are checked for each time thermo output is done. See the
|
||||||
thermo_modify lost command for options. Lost atoms usually indicate
|
thermo_modify lost command for options. Lost atoms usually indicate
|
||||||
bad dynamics, e.g. atoms have been blown far out of the simulation
|
bad dynamics, e.g. atoms have been blown far out of the simulation
|
||||||
box, or moved futher than one processor's sub-domain away before
|
box, or moved further than one processor's sub-domain away before
|
||||||
reneighboring. :dd
|
reneighboring. :dd
|
||||||
|
|
||||||
{MSM mesh too small, increasing to 2 points in each direction} :dt
|
{MSM mesh too small, increasing to 2 points in each direction} :dt
|
||||||
@ -11440,7 +11469,7 @@ i.e. the first molecule in the template. :dd
|
|||||||
|
|
||||||
{Molecule template for fix shake has multiple molecules} :dt
|
{Molecule template for fix shake has multiple molecules} :dt
|
||||||
|
|
||||||
The fix shake command will only recoginze molecules of a single
|
The fix shake command will only recognize molecules of a single
|
||||||
type, i.e. the first molecule in the template. :dd
|
type, i.e. the first molecule in the template. :dd
|
||||||
|
|
||||||
{More than one compute centro/atom} :dt
|
{More than one compute centro/atom} :dt
|
||||||
@ -11525,7 +11554,7 @@ neigh_modify exclude command. :dd
|
|||||||
|
|
||||||
If a thermo_style command is used after a thermo_modify command, the
|
If a thermo_style command is used after a thermo_modify command, the
|
||||||
settings changed by the thermo_modify command will be reset to their
|
settings changed by the thermo_modify command will be reset to their
|
||||||
default values. This is because the thermo_modify commmand acts on
|
default values. This is because the thermo_modify command acts on
|
||||||
the currently defined thermo style, and a thermo_style command creates
|
the currently defined thermo style, and a thermo_style command creates
|
||||||
a new style. :dd
|
a new style. :dd
|
||||||
|
|
||||||
@ -11577,7 +11606,7 @@ This may not be what you intended. :dd
|
|||||||
|
|
||||||
{One or more dynamic groups may not be updated at correct point in timestep} :dt
|
{One or more dynamic groups may not be updated at correct point in timestep} :dt
|
||||||
|
|
||||||
If there are other fixes that act immediately after the intitial stage
|
If there are other fixes that act immediately after the initial stage
|
||||||
of time integration within a timestep (i.e. after atoms move), then
|
of time integration within a timestep (i.e. after atoms move), then
|
||||||
the command that sets up the dynamic group should appear after those
|
the command that sets up the dynamic group should appear after those
|
||||||
fixes. This will insure that dynamic group assignments are made
|
fixes. This will insure that dynamic group assignments are made
|
||||||
@ -11874,7 +11903,7 @@ Self-explanatory. :dd
|
|||||||
|
|
||||||
{Using largest cutoff for buck/long/coul/long} :dt
|
{Using largest cutoff for buck/long/coul/long} :dt
|
||||||
|
|
||||||
Self-exlanatory. :dd
|
Self-explanatory. :dd
|
||||||
|
|
||||||
{Using largest cutoff for lj/long/coul/long} :dt
|
{Using largest cutoff for lj/long/coul/long} :dt
|
||||||
|
|
||||||
|
|||||||
@ -25,9 +25,7 @@ files and image files.
|
|||||||
|
|
||||||
If you uncomment the "dump"_dump.html command in the input script, a
|
If you uncomment the "dump"_dump.html command in the input script, a
|
||||||
text dump file will be produced, which can be animated by various
|
text dump file will be produced, which can be animated by various
|
||||||
"visualization programs"_http://lammps.sandia.gov/viz.html. It can
|
"visualization programs"_http://lammps.sandia.gov/viz.html.
|
||||||
also be animated using the xmovie tool described in the "Additional
|
|
||||||
Tools"_Section_tools.html section of the LAMMPS documentation.
|
|
||||||
|
|
||||||
If you uncomment the "dump image"_dump.html command in the input
|
If you uncomment the "dump image"_dump.html command in the input
|
||||||
script, and assuming you have built LAMMPS with a JPG library, JPG
|
script, and assuming you have built LAMMPS with a JPG library, JPG
|
||||||
@ -51,11 +49,14 @@ Lists of both kinds of directories are given below.
|
|||||||
Lowercase directories :h4
|
Lowercase directories :h4
|
||||||
|
|
||||||
accelerate: run with various acceleration options (OpenMP, GPU, Phi)
|
accelerate: run with various acceleration options (OpenMP, GPU, Phi)
|
||||||
|
airebo: polyethylene with AIREBO potential
|
||||||
balance: dynamic load balancing, 2d system
|
balance: dynamic load balancing, 2d system
|
||||||
body: body particles, 2d system
|
body: body particles, 2d system
|
||||||
|
cmap: CMAP 5-body contributions to CHARMM force field
|
||||||
colloid: big colloid particles in a small particle solvent, 2d system
|
colloid: big colloid particles in a small particle solvent, 2d system
|
||||||
comb: models using the COMB potential
|
comb: models using the COMB potential
|
||||||
coreshell: core/shell model using CORESHELL package
|
coreshell: core/shell model using CORESHELL package
|
||||||
|
controller: use of fix controller as a thermostat
|
||||||
crack: crack propagation in a 2d solid
|
crack: crack propagation in a 2d solid
|
||||||
deposit: deposit atoms and molecules on a surface
|
deposit: deposit atoms and molecules on a surface
|
||||||
dipole: point dipolar particles, 2d system
|
dipole: point dipolar particles, 2d system
|
||||||
@ -64,6 +65,8 @@ eim: NaCl using the EIM potential
|
|||||||
ellipse: ellipsoidal particles in spherical solvent, 2d system
|
ellipse: ellipsoidal particles in spherical solvent, 2d system
|
||||||
flow: Couette and Poiseuille flow in a 2d channel
|
flow: Couette and Poiseuille flow in a 2d channel
|
||||||
friction: frictional contact of spherical asperities between 2d surfaces
|
friction: frictional contact of spherical asperities between 2d surfaces
|
||||||
|
gcmc: Grand Canonical Monte Carlo (GCMC) via the fix gcmc command
|
||||||
|
granregion: use of fix wall/region/gran as boundary on granular particles
|
||||||
hugoniostat: Hugoniostat shock dynamics
|
hugoniostat: Hugoniostat shock dynamics
|
||||||
indent: spherical indenter into a 2d solid
|
indent: spherical indenter into a 2d solid
|
||||||
kim: use of potentials in Knowledge Base for Interatomic Models (KIM)
|
kim: use of potentials in Knowledge Base for Interatomic Models (KIM)
|
||||||
@ -71,6 +74,7 @@ meam: MEAM test for SiC and shear (same as shear examples)
|
|||||||
melt: rapid melt of 3d LJ system
|
melt: rapid melt of 3d LJ system
|
||||||
micelle: self-assembly of small lipid-like molecules into 2d bilayers
|
micelle: self-assembly of small lipid-like molecules into 2d bilayers
|
||||||
min: energy minimization of 2d LJ melt
|
min: energy minimization of 2d LJ melt
|
||||||
|
mscg: parameterize a multi-scale coarse-graining (MSCG) model
|
||||||
msst: MSST shock dynamics
|
msst: MSST shock dynamics
|
||||||
nb3b: use of nonbonded 3-body harmonic pair style
|
nb3b: use of nonbonded 3-body harmonic pair style
|
||||||
neb: nudged elastic band (NEB) calculation for barrier finding
|
neb: nudged elastic band (NEB) calculation for barrier finding
|
||||||
@ -89,7 +93,8 @@ snap: NVE dynamics for BCC tantalum crystal using SNAP potential
|
|||||||
srd: stochastic rotation dynamics (SRD) particles as solvent
|
srd: stochastic rotation dynamics (SRD) particles as solvent
|
||||||
streitz: use of Streitz/Mintmire potential with charge equilibration
|
streitz: use of Streitz/Mintmire potential with charge equilibration
|
||||||
tad: temperature-accelerated dynamics of vacancy diffusion in bulk Si
|
tad: temperature-accelerated dynamics of vacancy diffusion in bulk Si
|
||||||
vashishta: use of the Vashishta potential :tb(s=:)
|
vashishta: use of the Vashishta potential
|
||||||
|
voronoi: Voronoi tesselation via compute voronoi/atom command :tb(s=:)
|
||||||
|
|
||||||
Here is how you can run and visualize one of the sample problems:
|
Here is how you can run and visualize one of the sample problems:
|
||||||
|
|
||||||
|
|||||||
@ -37,7 +37,7 @@ pitfalls or alternatives.
|
|||||||
|
|
||||||
Please see some of the closed issues for examples of how to
|
Please see some of the closed issues for examples of how to
|
||||||
suggest code enhancements, submit proposed changes, or report
|
suggest code enhancements, submit proposed changes, or report
|
||||||
possible bugs and how they are resoved.
|
possible bugs and how they are resolved.
|
||||||
|
|
||||||
As an alternative to using GitHub, you may e-mail the
|
As an alternative to using GitHub, you may e-mail the
|
||||||
"core developers"_http://lammps.sandia.gov/authors.html or send
|
"core developers"_http://lammps.sandia.gov/authors.html or send
|
||||||
|
|||||||
@ -54,7 +54,7 @@ restart files can be saved to disk using the "restart"_restart.html
|
|||||||
command. At a later time, these binary files can be read via a
|
command. At a later time, these binary files can be read via a
|
||||||
"read_restart"_read_restart.html command in a new script. Or they can
|
"read_restart"_read_restart.html command in a new script. Or they can
|
||||||
be converted to text data files using the "-r command-line
|
be converted to text data files using the "-r command-line
|
||||||
switch"_Section_start.html#start_7 and read by a
|
switch"_Section_start.html#start_6 and read by a
|
||||||
"read_data"_read_data.html command in a new script.
|
"read_data"_read_data.html command in a new script.
|
||||||
|
|
||||||
Here we give examples of 2 scripts that read either a binary restart
|
Here we give examples of 2 scripts that read either a binary restart
|
||||||
@ -165,9 +165,16 @@ Many of the example input scripts included in the LAMMPS distribution
|
|||||||
are for 2d models.
|
are for 2d models.
|
||||||
|
|
||||||
NOTE: Some models in LAMMPS treat particles as finite-size spheres, as
|
NOTE: Some models in LAMMPS treat particles as finite-size spheres, as
|
||||||
opposed to point particles. In 2d, the particles will still be
|
opposed to point particles. See the "atom_style
|
||||||
spheres, not disks, meaning their moment of inertia will be the same
|
sphere"_atom_style.html and "fix nve/sphere"_fix_nve_sphere.html
|
||||||
as in 3d.
|
commands for details. By default, for 2d simulations, such particles
|
||||||
|
will still be modeled as 3d spheres, not 2d discs (circles), meaning
|
||||||
|
their moment of inertia will be that of a sphere. If you wish to
|
||||||
|
model them as 2d discs, see the "set density/disc"_set.html command
|
||||||
|
and the {disc} option for the "fix nve/sphere"_fix_nve_sphere.html,
|
||||||
|
"fix nvt/sphere"_fix_nvt_sphere.html, "fix
|
||||||
|
nph/sphere"_fix_nph_sphere.html, "fix npt/sphere"_fix_npt_sphere.html
|
||||||
|
commands.
|
||||||
|
|
||||||
:line
|
:line
|
||||||
|
|
||||||
@ -197,7 +204,10 @@ documentation for the formula it computes.
|
|||||||
|
|
||||||
"bond_style"_bond_harmonic.html harmonic
|
"bond_style"_bond_harmonic.html harmonic
|
||||||
"angle_style"_angle_charmm.html charmm
|
"angle_style"_angle_charmm.html charmm
|
||||||
|
"dihedral_style"_dihedral_charmm.html charmmfsh
|
||||||
"dihedral_style"_dihedral_charmm.html charmm
|
"dihedral_style"_dihedral_charmm.html charmm
|
||||||
|
"pair_style"_pair_charmm.html lj/charmmfsw/coul/charmmfsh
|
||||||
|
"pair_style"_pair_charmm.html lj/charmmfsw/coul/long
|
||||||
"pair_style"_pair_charmm.html lj/charmm/coul/charmm
|
"pair_style"_pair_charmm.html lj/charmm/coul/charmm
|
||||||
"pair_style"_pair_charmm.html lj/charmm/coul/charmm/implicit
|
"pair_style"_pair_charmm.html lj/charmm/coul/charmm/implicit
|
||||||
"pair_style"_pair_charmm.html lj/charmm/coul/long :ul
|
"pair_style"_pair_charmm.html lj/charmm/coul/long :ul
|
||||||
@ -205,6 +215,12 @@ documentation for the formula it computes.
|
|||||||
"special_bonds"_special_bonds.html charmm
|
"special_bonds"_special_bonds.html charmm
|
||||||
"special_bonds"_special_bonds.html amber :ul
|
"special_bonds"_special_bonds.html amber :ul
|
||||||
|
|
||||||
|
NOTE: For CHARMM, newer {charmmfsw} or {charmmfsh} styles were
|
||||||
|
released in March 2017. We recommend they be used instead of the
|
||||||
|
older {charmm} styles. See discussion of the differences on the "pair
|
||||||
|
charmm"_pair_charmm.html and "dihedral charmm"_dihedral_charmm.html
|
||||||
|
doc pages.
|
||||||
|
|
||||||
DREIDING is a generic force field developed by the "Goddard
|
DREIDING is a generic force field developed by the "Goddard
|
||||||
group"_http://www.wag.caltech.edu at Caltech and is useful for
|
group"_http://www.wag.caltech.edu at Caltech and is useful for
|
||||||
predicting structures and dynamics of organic, biological and
|
predicting structures and dynamics of organic, biological and
|
||||||
@ -321,7 +337,7 @@ All of the above examples work whether you are running on 1 or
|
|||||||
multiple processors, but assumed you are running LAMMPS on a single
|
multiple processors, but assumed you are running LAMMPS on a single
|
||||||
partition of processors. LAMMPS can be run on multiple partitions via
|
partition of processors. LAMMPS can be run on multiple partitions via
|
||||||
the "-partition" command-line switch as described in "this
|
the "-partition" command-line switch as described in "this
|
||||||
section"_Section_start.html#start_7 of the manual.
|
section"_Section_start.html#start_6 of the manual.
|
||||||
|
|
||||||
In the last 2 examples, if LAMMPS were run on 3 partitions, the same
|
In the last 2 examples, if LAMMPS were run on 3 partitions, the same
|
||||||
scripts could be used if the "index" and "loop" variables were
|
scripts could be used if the "index" and "loop" variables were
|
||||||
@ -371,7 +387,7 @@ for more info on packages.
|
|||||||
In all these cases, you must run with one or more processors per
|
In all these cases, you must run with one or more processors per
|
||||||
replica. The processors assigned to each replica are determined at
|
replica. The processors assigned to each replica are determined at
|
||||||
run-time by using the "-partition command-line
|
run-time by using the "-partition command-line
|
||||||
switch"_Section_start.html#start_7 to launch LAMMPS on multiple
|
switch"_Section_start.html#start_6 to launch LAMMPS on multiple
|
||||||
partitions, which in this context are the same as replicas. E.g.
|
partitions, which in this context are the same as replicas. E.g.
|
||||||
these commands:
|
these commands:
|
||||||
|
|
||||||
@ -379,7 +395,7 @@ mpirun -np 16 lmp_linux -partition 8x2 -in in.temper
|
|||||||
mpirun -np 8 lmp_linux -partition 8x1 -in in.neb :pre
|
mpirun -np 8 lmp_linux -partition 8x1 -in in.neb :pre
|
||||||
|
|
||||||
would each run 8 replicas, on either 16 or 8 processors. Note the use
|
would each run 8 replicas, on either 16 or 8 processors. Note the use
|
||||||
of the "-in command-line switch"_Section_start.html#start_7 to specify
|
of the "-in command-line switch"_Section_start.html#start_6 to specify
|
||||||
the input script which is required when running in multi-replica mode.
|
the input script which is required when running in multi-replica mode.
|
||||||
|
|
||||||
Also note that with MPI installed on a machine (e.g. your desktop),
|
Also note that with MPI installed on a machine (e.g. your desktop),
|
||||||
@ -434,6 +450,12 @@ computations between frozen atoms by using this command:
|
|||||||
|
|
||||||
"neigh_modify"_neigh_modify.html exclude :ul
|
"neigh_modify"_neigh_modify.html exclude :ul
|
||||||
|
|
||||||
|
NOTE: By default, for 2d systems, granular particles are still modeled
|
||||||
|
as 3d spheres, not 2d discs (circles), meaning their moment of inertia
|
||||||
|
will be the same as in 3d. If you wish to model granular particles in
|
||||||
|
2d as 2d discs, see the note on this topic in "Section
|
||||||
|
6.2"_Section_howto.html#howto_2, where 2d simulations are disussed.
|
||||||
|
|
||||||
:line
|
:line
|
||||||
|
|
||||||
6.7 TIP3P water model :link(howto_7),h4
|
6.7 TIP3P water model :link(howto_7),h4
|
||||||
@ -451,7 +473,7 @@ atoms and the water molecule to run a rigid TIP3P-CHARMM model with a
|
|||||||
cutoff. The K values can be used if a flexible TIP3P model (without
|
cutoff. The K values can be used if a flexible TIP3P model (without
|
||||||
fix shake) is desired. If the LJ epsilon and sigma for HH and OH are
|
fix shake) is desired. If the LJ epsilon and sigma for HH and OH are
|
||||||
set to 0.0, it corresponds to the original 1983 TIP3P model
|
set to 0.0, it corresponds to the original 1983 TIP3P model
|
||||||
"(Jorgensen)"_#Jorgensen.
|
"(Jorgensen)"_#Jorgensen1.
|
||||||
|
|
||||||
O mass = 15.9994
|
O mass = 15.9994
|
||||||
H mass = 1.008
|
H mass = 1.008
|
||||||
@ -469,7 +491,7 @@ K of HOH angle = 55
|
|||||||
theta of HOH angle = 104.52 :all(b),p
|
theta of HOH angle = 104.52 :all(b),p
|
||||||
|
|
||||||
These are the parameters to use for TIP3P with a long-range Coulombic
|
These are the parameters to use for TIP3P with a long-range Coulombic
|
||||||
solver (e.g. Ewald or PPPM in LAMMPS), see "(Price)"_#Price for
|
solver (e.g. Ewald or PPPM in LAMMPS), see "(Price)"_#Price1 for
|
||||||
details:
|
details:
|
||||||
|
|
||||||
O mass = 15.9994
|
O mass = 15.9994
|
||||||
@ -513,7 +535,7 @@ using the "fix shake"_fix_shake.html command.
|
|||||||
|
|
||||||
These are the additional parameters (in real units) to set for O and H
|
These are the additional parameters (in real units) to set for O and H
|
||||||
atoms and the water molecule to run a rigid TIP4P model with a cutoff
|
atoms and the water molecule to run a rigid TIP4P model with a cutoff
|
||||||
"(Jorgensen)"_#Jorgensen. Note that the OM distance is specified in
|
"(Jorgensen)"_#Jorgensen1. Note that the OM distance is specified in
|
||||||
the "pair_style"_pair_style.html command, not as part of the pair
|
the "pair_style"_pair_style.html command, not as part of the pair
|
||||||
coefficients.
|
coefficients.
|
||||||
|
|
||||||
@ -573,7 +595,7 @@ LJ epsilon of O-O = 0.16275
|
|||||||
LJ sigma of O-O = 3.16435
|
LJ sigma of O-O = 3.16435
|
||||||
LJ epsilon, sigma of OH, HH = 0.0 :all(b),p
|
LJ epsilon, sigma of OH, HH = 0.0 :all(b),p
|
||||||
|
|
||||||
Note that the when using the TIP4P pair style, the neighobr list
|
Note that the when using the TIP4P pair style, the neighbor list
|
||||||
cutoff for Coulomb interactions is effectively extended by a distance
|
cutoff for Coulomb interactions is effectively extended by a distance
|
||||||
2 * (OM distance), to account for the offset distance of the
|
2 * (OM distance), to account for the offset distance of the
|
||||||
fictitious charges on O atoms in water molecules. Thus it is
|
fictitious charges on O atoms in water molecules. Thus it is
|
||||||
@ -618,7 +640,7 @@ any of the parameters above, though it becomes a different model in
|
|||||||
that mode of usage.
|
that mode of usage.
|
||||||
|
|
||||||
The SPC/E (extended) water model is the same, except
|
The SPC/E (extended) water model is the same, except
|
||||||
the partial charge assignemnts change:
|
the partial charge assignments change:
|
||||||
|
|
||||||
O charge = -0.8476
|
O charge = -0.8476
|
||||||
H charge = 0.4238 :all(b),p
|
H charge = 0.4238 :all(b),p
|
||||||
@ -737,23 +759,14 @@ LAMMPS itself does not do visualization, but snapshots from LAMMPS
|
|||||||
simulations can be visualized (and analyzed) in a variety of ways.
|
simulations can be visualized (and analyzed) in a variety of ways.
|
||||||
|
|
||||||
LAMMPS snapshots are created by the "dump"_dump.html command which can
|
LAMMPS snapshots are created by the "dump"_dump.html command which can
|
||||||
create files in several formats. The native LAMMPS dump format is a
|
create files in several formats. The native LAMMPS dump format is a
|
||||||
text file (see "dump atom" or "dump custom") which can be visualized
|
text file (see "dump atom" or "dump custom") which can be visualized
|
||||||
by the "xmovie"_Section_tools.html#xmovie program, included with the
|
by several popular visualization tools. The "dump image"_dump_image.html
|
||||||
LAMMPS package. This produces simple, fast 2d projections of 3d
|
and "dump movie"_dump_image.html styles can output internally rendered
|
||||||
systems, and can be useful for rapid debugging of simulation geometry
|
images and convert a sequence of them to a movie during the MD run.
|
||||||
and atom trajectories.
|
|
||||||
|
|
||||||
Several programs included with LAMMPS as auxiliary tools can convert
|
Several programs included with LAMMPS as auxiliary tools can convert
|
||||||
native LAMMPS dump files to other formats. See the
|
between LAMMPS format files and other formats.
|
||||||
"Section 9"_Section_tools.html doc page for details. The first is
|
See the "Section 9"_Section_tools.html doc page for details.
|
||||||
the "ch2lmp tool"_Section_tools.html#charmm, which contains a
|
|
||||||
lammps2pdb Perl script which converts LAMMPS dump files into PDB
|
|
||||||
files. The second is the "lmp2arc tool"_Section_tools.html#arc which
|
|
||||||
converts LAMMPS dump files into Accelrys' Insight MD program files.
|
|
||||||
The third is the "lmp2cfg tool"_Section_tools.html#cfg which converts
|
|
||||||
LAMMPS dump files into CFG files which can be read into the
|
|
||||||
"AtomEye"_atomeye visualizer.
|
|
||||||
|
|
||||||
A Python-based toolkit distributed by our group can read native LAMMPS
|
A Python-based toolkit distributed by our group can read native LAMMPS
|
||||||
dump files, including custom dump files with additional columns of
|
dump files, including custom dump files with additional columns of
|
||||||
@ -766,22 +779,7 @@ RasMol visualization programs. Pizza.py has tools that do interactive
|
|||||||
3d OpenGL visualization and one that creates SVG images of dump file
|
3d OpenGL visualization and one that creates SVG images of dump file
|
||||||
snapshots.
|
snapshots.
|
||||||
|
|
||||||
LAMMPS can create XYZ files directly (via "dump xyz") which is a
|
|
||||||
simple text-based file format used by many visualization programs
|
|
||||||
including "VMD"_vmd.
|
|
||||||
|
|
||||||
LAMMPS can create DCD files directly (via "dump dcd") which can be
|
|
||||||
read by "VMD"_vmd in conjunction with a CHARMM PSF file. Using this
|
|
||||||
form of output avoids the need to convert LAMMPS snapshots to PDB
|
|
||||||
files. See the "dump"_dump.html command for more information on DCD
|
|
||||||
files.
|
|
||||||
|
|
||||||
LAMMPS can create XTC files directly (via "dump xtc") which is GROMACS
|
|
||||||
file format which can also be read by "VMD"_vmd for visualization.
|
|
||||||
See the "dump"_dump.html command for more information on XTC files.
|
|
||||||
|
|
||||||
:link(pizza,http://www.sandia.gov/~sjplimp/pizza.html)
|
:link(pizza,http://www.sandia.gov/~sjplimp/pizza.html)
|
||||||
:link(vmd,http://www.ks.uiuc.edu/Research/vmd)
|
|
||||||
:link(ensight,http://www.ensight.com)
|
:link(ensight,http://www.ensight.com)
|
||||||
:link(atomeye,http://mt.seas.upenn.edu/Archive/Graphics/A)
|
:link(atomeye,http://mt.seas.upenn.edu/Archive/Graphics/A)
|
||||||
|
|
||||||
@ -863,7 +861,7 @@ boundary conditions in specific dimensions. See the command doc pages
|
|||||||
for details.
|
for details.
|
||||||
|
|
||||||
The 9 parameters (xlo,xhi,ylo,yhi,zlo,zhi,xy,xz,yz) are defined at the
|
The 9 parameters (xlo,xhi,ylo,yhi,zlo,zhi,xy,xz,yz) are defined at the
|
||||||
time the simluation box is created. This happens in one of 3 ways.
|
time the simulation box is created. This happens in one of 3 ways.
|
||||||
If the "create_box"_create_box.html command is used with a region of
|
If the "create_box"_create_box.html command is used with a region of
|
||||||
style {prism}, then a triclinic box is setup. See the
|
style {prism}, then a triclinic box is setup. See the
|
||||||
"region"_region.html command for details. If the
|
"region"_region.html command for details. If the
|
||||||
@ -982,10 +980,10 @@ used with non-orthogonal basis vectors to define a lattice that will
|
|||||||
tile a triclinic simulation box via the
|
tile a triclinic simulation box via the
|
||||||
"create_atoms"_create_atoms.html command.
|
"create_atoms"_create_atoms.html command.
|
||||||
|
|
||||||
A second use is to run Parinello-Rahman dyanamics via the "fix
|
A second use is to run Parinello-Rahman dynamics via the "fix
|
||||||
npt"_fix_nh.html command, which will adjust the xy, xz, yz tilt
|
npt"_fix_nh.html command, which will adjust the xy, xz, yz tilt
|
||||||
factors to compensate for off-diagonal components of the pressure
|
factors to compensate for off-diagonal components of the pressure
|
||||||
tensor. The analalog for an "energy minimization"_minimize.html is
|
tensor. The analog for an "energy minimization"_minimize.html is
|
||||||
the "fix box/relax"_fix_box_relax.html command.
|
the "fix box/relax"_fix_box_relax.html command.
|
||||||
|
|
||||||
A third use is to shear a bulk solid to study the response of the
|
A third use is to shear a bulk solid to study the response of the
|
||||||
@ -1032,6 +1030,10 @@ profile consistent with the applied shear strain rate.
|
|||||||
An alternative method for calculating viscosities is provided via the
|
An alternative method for calculating viscosities is provided via the
|
||||||
"fix viscosity"_fix_viscosity.html command.
|
"fix viscosity"_fix_viscosity.html command.
|
||||||
|
|
||||||
|
NEMD simulations can also be used to measure transport properties of a fluid
|
||||||
|
through a pore or channel. Simulations of steady-state flow can be performed
|
||||||
|
using the "fix flow/gauss"_fix_flow_gauss.html command.
|
||||||
|
|
||||||
:line
|
:line
|
||||||
|
|
||||||
6.14 Finite-size spherical and aspherical particles :link(howto_14),h4
|
6.14 Finite-size spherical and aspherical particles :link(howto_14),h4
|
||||||
@ -1392,7 +1394,7 @@ custom"_dump.html command.
|
|||||||
|
|
||||||
There is also a "dump local"_dump.html format where the user specifies
|
There is also a "dump local"_dump.html format where the user specifies
|
||||||
what local values to output. A pre-defined index keyword can be
|
what local values to output. A pre-defined index keyword can be
|
||||||
specified to enumuerate the local values. Two additional kinds of
|
specified to enumerate the local values. Two additional kinds of
|
||||||
keywords can also be specified (c_ID, f_ID), where a
|
keywords can also be specified (c_ID, f_ID), where a
|
||||||
"compute"_compute.html or "fix"_fix.html or "variable"_variable.html
|
"compute"_compute.html or "fix"_fix.html or "variable"_variable.html
|
||||||
provides the values to be output. In each case, the compute or fix
|
provides the values to be output. In each case, the compute or fix
|
||||||
@ -1525,7 +1527,7 @@ Variables that generate values to output :h5,link(variable)
|
|||||||
"Variables"_variable.html defined in an input script can store one or
|
"Variables"_variable.html defined in an input script can store one or
|
||||||
more strings. But equal-style, vector-style, and atom-style or
|
more strings. But equal-style, vector-style, and atom-style or
|
||||||
atomfile-style variables generate a global scalar value, global vector
|
atomfile-style variables generate a global scalar value, global vector
|
||||||
or values, or a per-atom vector, resepctively, when accessed. The
|
or values, or a per-atom vector, respectively, when accessed. The
|
||||||
formulas used to define these variables can contain references to the
|
formulas used to define these variables can contain references to the
|
||||||
thermodynamic keywords and to global and per-atom data generated by
|
thermodynamic keywords and to global and per-atom data generated by
|
||||||
computes, fixes, and other variables. The values generated by
|
computes, fixes, and other variables. The values generated by
|
||||||
@ -1585,7 +1587,7 @@ Temperature is computed as kinetic energy divided by some number of
|
|||||||
degrees of freedom (and the Boltzmann constant). Since kinetic energy
|
degrees of freedom (and the Boltzmann constant). Since kinetic energy
|
||||||
is a function of particle velocity, there is often a need to
|
is a function of particle velocity, there is often a need to
|
||||||
distinguish between a particle's advection velocity (due to some
|
distinguish between a particle's advection velocity (due to some
|
||||||
aggregate motiion of particles) and its thermal velocity. The sum of
|
aggregate motion of particles) and its thermal velocity. The sum of
|
||||||
the two is the particle's total velocity, but the latter is often what
|
the two is the particle's total velocity, but the latter is often what
|
||||||
is wanted to compute a temperature.
|
is wanted to compute a temperature.
|
||||||
|
|
||||||
@ -1640,14 +1642,14 @@ nvt/asphere"_fix_nvt_asphere.html thermostat not only translation
|
|||||||
velocities but also rotational velocities for spherical and aspherical
|
velocities but also rotational velocities for spherical and aspherical
|
||||||
particles.
|
particles.
|
||||||
|
|
||||||
DPD thermostatting alters pairwise interactions in a manner analagous
|
DPD thermostatting alters pairwise interactions in a manner analogous
|
||||||
to the per-particle thermostatting of "fix
|
to the per-particle thermostatting of "fix
|
||||||
langevin"_fix_langevin.html.
|
langevin"_fix_langevin.html.
|
||||||
|
|
||||||
Any of the thermostatting fixes can use temperature computes that
|
Any of the thermostatting fixes can use temperature computes that
|
||||||
remove bias which has two effects. First, the current calculated
|
remove bias which has two effects. First, the current calculated
|
||||||
temperature, which is compared to the requested target temperature, is
|
temperature, which is compared to the requested target temperature, is
|
||||||
caluclated with the velocity bias removed. Second, the thermostat
|
calculated with the velocity bias removed. Second, the thermostat
|
||||||
adjusts only the thermal temperature component of the particle's
|
adjusts only the thermal temperature component of the particle's
|
||||||
velocities, which are the velocities with the bias removed. The
|
velocities, which are the velocities with the bias removed. The
|
||||||
removed bias is then added back to the adjusted velocities. See the
|
removed bias is then added back to the adjusted velocities. See the
|
||||||
@ -1684,7 +1686,7 @@ nph) and Berendsen:
|
|||||||
The "fix npt"_fix_nh.html commands include a Nose-Hoover thermostat
|
The "fix npt"_fix_nh.html commands include a Nose-Hoover thermostat
|
||||||
and barostat. "Fix nph"_fix_nh.html is just a Nose/Hoover barostat;
|
and barostat. "Fix nph"_fix_nh.html is just a Nose/Hoover barostat;
|
||||||
it does no thermostatting. Both "fix nph"_fix_nh.html and "fix
|
it does no thermostatting. Both "fix nph"_fix_nh.html and "fix
|
||||||
press/bernendsen"_fix_press_berendsen.html can be used in conjunction
|
press/berendsen"_fix_press_berendsen.html can be used in conjunction
|
||||||
with any of the thermostatting fixes.
|
with any of the thermostatting fixes.
|
||||||
|
|
||||||
As with the thermostats, "fix npt"_fix_nh.html and "fix
|
As with the thermostats, "fix npt"_fix_nh.html and "fix
|
||||||
@ -1834,7 +1836,7 @@ the deformation must be chosen judiciously, and care must be taken to
|
|||||||
fully equilibrate the deformed cell before sampling the stress
|
fully equilibrate the deformed cell before sampling the stress
|
||||||
tensor. Another approach is to sample the triclinic cell fluctuations
|
tensor. Another approach is to sample the triclinic cell fluctuations
|
||||||
that occur in an NPT simulation. This method can also be slow to
|
that occur in an NPT simulation. This method can also be slow to
|
||||||
converge and requires careful post-processing "(Shinoda)"_#Shinoda
|
converge and requires careful post-processing "(Shinoda)"_#Shinoda1
|
||||||
|
|
||||||
:line
|
:line
|
||||||
|
|
||||||
@ -1870,7 +1872,7 @@ void lammps_free(void *) :pre
|
|||||||
|
|
||||||
The lammps_open() function is used to initialize LAMMPS, passing in a
|
The lammps_open() function is used to initialize LAMMPS, passing in a
|
||||||
list of strings as if they were "command-line
|
list of strings as if they were "command-line
|
||||||
arguments"_Section_start.html#start_7 when LAMMPS is run in
|
arguments"_Section_start.html#start_6 when LAMMPS is run in
|
||||||
stand-alone mode from the command line, and a MPI communicator for
|
stand-alone mode from the command line, and a MPI communicator for
|
||||||
LAMMPS to run under. It returns a ptr to the LAMMPS object that is
|
LAMMPS to run under. It returns a ptr to the LAMMPS object that is
|
||||||
created, and which is used in subsequent library calls. The
|
created, and which is used in subsequent library calls. The
|
||||||
@ -1888,7 +1890,7 @@ instances of LAMMPS to perform different calculations.
|
|||||||
|
|
||||||
The lammps_open_no_mpi() function is similar except that no MPI
|
The lammps_open_no_mpi() function is similar except that no MPI
|
||||||
communicator is passed from the caller. Instead, MPI_COMM_WORLD is
|
communicator is passed from the caller. Instead, MPI_COMM_WORLD is
|
||||||
used to instantiate LAMMPS, and MPI is initialzed if necessary.
|
used to instantiate LAMMPS, and MPI is initialized if necessary.
|
||||||
|
|
||||||
The lammps_close() function is used to shut down an instance of LAMMPS
|
The lammps_close() function is used to shut down an instance of LAMMPS
|
||||||
and free all its memory.
|
and free all its memory.
|
||||||
@ -1957,9 +1959,12 @@ The extract functions return a pointer to various global or per-atom
|
|||||||
quantities stored in LAMMPS or to values calculated by a compute, fix,
|
quantities stored in LAMMPS or to values calculated by a compute, fix,
|
||||||
or variable. The pointer returned by the extract_global() function
|
or variable. The pointer returned by the extract_global() function
|
||||||
can be used as a permanent reference to a value which may change. For
|
can be used as a permanent reference to a value which may change. For
|
||||||
the other extract functions, the underlying storage may be reallocated
|
the extract_atom() method, see the extract() method in the
|
||||||
as LAMMPS runs, so you need to re-call the function to assure a
|
src/atom.cpp file for a list of valid per-atom properties. New names
|
||||||
current pointer or returned value(s).
|
could easily be added if the property you want is not listed. For the
|
||||||
|
other extract functions, the underlying storage may be reallocated as
|
||||||
|
LAMMPS runs, so you need to re-call the function to assure a current
|
||||||
|
pointer or returned value(s).
|
||||||
|
|
||||||
The lammps_reset_box() function resets the size and shape of the
|
The lammps_reset_box() function resets the size and shape of the
|
||||||
simulation box, e.g. as part of restoring a previously extracted and
|
simulation box, e.g. as part of restoring a previously extracted and
|
||||||
@ -1975,11 +1980,20 @@ keyword as a double precision value.
|
|||||||
The lammps_get_natoms() function returns the total number of atoms in
|
The lammps_get_natoms() function returns the total number of atoms in
|
||||||
the system and can be used by the caller to allocate space for the
|
the system and can be used by the caller to allocate space for the
|
||||||
lammps_gather_atoms() and lammps_scatter_atoms() functions. The
|
lammps_gather_atoms() and lammps_scatter_atoms() functions. The
|
||||||
gather function collects atom info of the requested type (atom coords,
|
gather function collects peratom info of the requested type (atom
|
||||||
types, forces, etc) from all procsesors, orders them by atom ID, and
|
coords, types, forces, etc) from all processors, orders them by atom
|
||||||
returns a full list to each calling processor. The scatter function
|
ID, and returns a full list to each calling processor. The scatter
|
||||||
does the inverse. It distributes the same kinds of values,
|
function does the inverse. It distributes the same peratom values,
|
||||||
passed by the caller, to each atom owned by individual processors.
|
passed by the caller, to each atom owned by individual processors.
|
||||||
|
Both methods are thus a means to extract or assign (overwrite) any
|
||||||
|
peratom quantities within LAMMPS. See the extract() method in the
|
||||||
|
src/atom.cpp file for a list of valid per-atom properties. New names
|
||||||
|
could easily be added if the property you want is not listed.
|
||||||
|
A special treatment is applied for accessing image flags via the
|
||||||
|
"image" property. Image flags are stored in a packed format with all
|
||||||
|
three image flags stored in a single integer. When signaling to access
|
||||||
|
the image flags as 3 individual values per atom instead of 1, the data
|
||||||
|
is transparently packed or unpacked by the library interface.
|
||||||
|
|
||||||
The lammps_create_atoms() function takes a list of N atoms as input
|
The lammps_create_atoms() function takes a list of N atoms as input
|
||||||
with atom types and coords (required), an optionally atom IDs and
|
with atom types and coords (required), an optionally atom IDs and
|
||||||
@ -2013,7 +2027,7 @@ a simple Lennard-Jones fluid model. Also, see "this
|
|||||||
section"_Section_howto.html#howto_21 of the manual for an analogous
|
section"_Section_howto.html#howto_21 of the manual for an analogous
|
||||||
discussion for viscosity.
|
discussion for viscosity.
|
||||||
|
|
||||||
The thermal conducitivity tensor kappa is a measure of the propensity
|
The thermal conductivity tensor kappa is a measure of the propensity
|
||||||
of a material to transmit heat energy in a diffusive manner as given
|
of a material to transmit heat energy in a diffusive manner as given
|
||||||
by Fourier's law
|
by Fourier's law
|
||||||
|
|
||||||
@ -2099,7 +2113,7 @@ and grad(Vstream) is the spatial gradient of the velocity of the fluid
|
|||||||
moving in another direction, normal to the area through which the
|
moving in another direction, normal to the area through which the
|
||||||
momentum flows. Viscosity thus has units of pressure-time.
|
momentum flows. Viscosity thus has units of pressure-time.
|
||||||
|
|
||||||
The first method is to perform a non-equlibrium MD (NEMD) simulation
|
The first method is to perform a non-equilibrium MD (NEMD) simulation
|
||||||
by shearing the simulation box via the "fix deform"_fix_deform.html
|
by shearing the simulation box via the "fix deform"_fix_deform.html
|
||||||
command, and using the "fix nvt/sllod"_fix_nvt_sllod.html command to
|
command, and using the "fix nvt/sllod"_fix_nvt_sllod.html command to
|
||||||
thermostat the fluid via the SLLOD equations of motion.
|
thermostat the fluid via the SLLOD equations of motion.
|
||||||
@ -2125,7 +2139,7 @@ the rNEMD algorithm of Muller-Plathe. Momentum in one dimension is
|
|||||||
swapped between atoms in two different layers of the simulation box in
|
swapped between atoms in two different layers of the simulation box in
|
||||||
a different dimension. This induces a velocity gradient which can be
|
a different dimension. This induces a velocity gradient which can be
|
||||||
monitored with the "fix ave/chunk"_fix_ave_chunk.html command.
|
monitored with the "fix ave/chunk"_fix_ave_chunk.html command.
|
||||||
The fix tallies the cummulative momentum transfer that it performs.
|
The fix tallies the cumulative momentum transfer that it performs.
|
||||||
See the "fix viscosity"_fix_viscosity.html command for details.
|
See the "fix viscosity"_fix_viscosity.html command for details.
|
||||||
|
|
||||||
The fourth method is based on the Green-Kubo (GK) formula which
|
The fourth method is based on the Green-Kubo (GK) formula which
|
||||||
@ -2268,7 +2282,7 @@ atoms with same local defect structure | chunk ID = output of "compute centro/at
|
|||||||
Note that chunk IDs are integer values, so for atom properties or
|
Note that chunk IDs are integer values, so for atom properties or
|
||||||
computes that produce a floating point value, they will be truncated
|
computes that produce a floating point value, they will be truncated
|
||||||
to an integer. You could also use the compute in a variable that
|
to an integer. You could also use the compute in a variable that
|
||||||
scales the floating point value to spread it across multiple intergers.
|
scales the floating point value to spread it across multiple integers.
|
||||||
|
|
||||||
Spatial bins can be of various kinds, e.g. 1d bins = slabs, 2d bins =
|
Spatial bins can be of various kinds, e.g. 1d bins = slabs, 2d bins =
|
||||||
pencils, 3d bins = boxes, spherical bins, cylindrical bins.
|
pencils, 3d bins = boxes, spherical bins, cylindrical bins.
|
||||||
@ -2353,7 +2367,7 @@ largest cluster or fastest diffusing molecule. :l
|
|||||||
|
|
||||||
Example calculations with chunks :h5
|
Example calculations with chunks :h5
|
||||||
|
|
||||||
Here are eaxmples using chunk commands to calculate various
|
Here are examples using chunk commands to calculate various
|
||||||
properties:
|
properties:
|
||||||
|
|
||||||
(1) Average velocity in each of 1000 2d spatial bins:
|
(1) Average velocity in each of 1000 2d spatial bins:
|
||||||
@ -2424,7 +2438,7 @@ which both have their up- and downsides.
|
|||||||
The first approach is to set desired real-space an kspace accuracies
|
The first approach is to set desired real-space an kspace accuracies
|
||||||
via the {kspace_modify force/disp/real} and {kspace_modify
|
via the {kspace_modify force/disp/real} and {kspace_modify
|
||||||
force/disp/kspace} commands. Note that the accuracies have to be
|
force/disp/kspace} commands. Note that the accuracies have to be
|
||||||
specified in force units and are thus dependend on the chosen unit
|
specified in force units and are thus dependent on the chosen unit
|
||||||
settings. For real units, 0.0001 and 0.002 seem to provide reasonable
|
settings. For real units, 0.0001 and 0.002 seem to provide reasonable
|
||||||
accurate and efficient computations for the real-space and kspace
|
accurate and efficient computations for the real-space and kspace
|
||||||
accuracies. 0.002 and 0.05 work well for most systems using lj
|
accuracies. 0.002 and 0.05 work well for most systems using lj
|
||||||
@ -2444,7 +2458,7 @@ performance. This approach provides a fast initialization of the
|
|||||||
simulation. However, it is sensitive to errors: A combination of
|
simulation. However, it is sensitive to errors: A combination of
|
||||||
parameters that will perform well for one system might result in
|
parameters that will perform well for one system might result in
|
||||||
far-from-optimal conditions for other simulations. For example,
|
far-from-optimal conditions for other simulations. For example,
|
||||||
parametes that provide accurate and fast computations for
|
parameters that provide accurate and fast computations for
|
||||||
all-atomistic force fields can provide insufficient accuracy or
|
all-atomistic force fields can provide insufficient accuracy or
|
||||||
united-atomistic force fields (which is related to that the latter
|
united-atomistic force fields (which is related to that the latter
|
||||||
typically have larger dispersion coefficients).
|
typically have larger dispersion coefficients).
|
||||||
@ -2478,7 +2492,7 @@ arithmetic mixing rule substantially increases the computational cost.
|
|||||||
The computational overhead can be reduced using the {kspace_modify
|
The computational overhead can be reduced using the {kspace_modify
|
||||||
mix/disp geom} and {kspace_modify splittol} commands. The first
|
mix/disp geom} and {kspace_modify splittol} commands. The first
|
||||||
command simply enforces geometric mixing of the dispersion
|
command simply enforces geometric mixing of the dispersion
|
||||||
coeffiecients in kspace computations. This introduces some error in
|
coefficients in kspace computations. This introduces some error in
|
||||||
the computations but will also significantly speed-up the
|
the computations but will also significantly speed-up the
|
||||||
simulations. The second keyword sets the accuracy with which the
|
simulations. The second keyword sets the accuracy with which the
|
||||||
dispersion coefficients are approximated using a matrix factorization
|
dispersion coefficients are approximated using a matrix factorization
|
||||||
@ -2497,7 +2511,7 @@ to specify this command explicitly.
|
|||||||
6.25 Polarizable models :link(howto_25),h4
|
6.25 Polarizable models :link(howto_25),h4
|
||||||
|
|
||||||
In polarizable force fields the charge distributions in molecules and
|
In polarizable force fields the charge distributions in molecules and
|
||||||
materials respond to their electrostatic environements. Polarizable
|
materials respond to their electrostatic environments. Polarizable
|
||||||
systems can be simulated in LAMMPS using three methods:
|
systems can be simulated in LAMMPS using three methods:
|
||||||
|
|
||||||
the fluctuating charge method, implemented in the "QEQ"_fix_qeq.html
|
the fluctuating charge method, implemented in the "QEQ"_fix_qeq.html
|
||||||
@ -2551,7 +2565,7 @@ this is done by "fix qeq/dynamic"_fix_qeq.html, and for the
|
|||||||
charge-on-spring models by the methods outlined in the next two
|
charge-on-spring models by the methods outlined in the next two
|
||||||
sections. The assignment of masses to the additional degrees of
|
sections. The assignment of masses to the additional degrees of
|
||||||
freedom can lead to unphysical trajectories if care is not exerted in
|
freedom can lead to unphysical trajectories if care is not exerted in
|
||||||
choosing the parameters of the poarizable models and the simulation
|
choosing the parameters of the polarizable models and the simulation
|
||||||
conditions.
|
conditions.
|
||||||
|
|
||||||
In the core-shell model the vibration of the shells is kept faster
|
In the core-shell model the vibration of the shells is kept faster
|
||||||
@ -2573,7 +2587,7 @@ well.
|
|||||||
6.26 Adiabatic core/shell model :link(howto_26),h4
|
6.26 Adiabatic core/shell model :link(howto_26),h4
|
||||||
|
|
||||||
The adiabatic core-shell model by "Mitchell and
|
The adiabatic core-shell model by "Mitchell and
|
||||||
Finchham"_#MitchellFinchham is a simple method for adding
|
Fincham"_#MitchellFincham is a simple method for adding
|
||||||
polarizability to a system. In order to mimic the electron shell of
|
polarizability to a system. In order to mimic the electron shell of
|
||||||
an ion, a satellite particle is attached to it. This way the ions are
|
an ion, a satellite particle is attached to it. This way the ions are
|
||||||
split into a core and a shell where the latter is meant to react to
|
split into a core and a shell where the latter is meant to react to
|
||||||
@ -2667,13 +2681,16 @@ bond_coeff 1 63.014 0.0
|
|||||||
bond_coeff 2 25.724 0.0 :pre
|
bond_coeff 2 25.724 0.0 :pre
|
||||||
|
|
||||||
When running dynamics with the adiabatic core/shell model, the
|
When running dynamics with the adiabatic core/shell model, the
|
||||||
following issues should be considered. Since the relative motion of
|
following issues should be considered. The relative motion of
|
||||||
the core and shell particles corresponds to the polarization, typical
|
the core and shell particles corresponds to the polarization,
|
||||||
thermostats can alter the polarization behaviour, meaning the shell
|
hereby an instantaneous relaxation of the shells is approximated
|
||||||
will not react freely to its electrostatic environment. This is
|
and a fast core/shell spring frequency ensures a nearly constant
|
||||||
critical during the equilibration of the system. Therefore
|
internal kinetic energy during the simulation.
|
||||||
it's typically desirable to decouple the relative motion of the
|
Thermostats can alter this polarization behaviour, by scaling the
|
||||||
core/shell pair, which is an imaginary degree of freedom, from the
|
internal kinetic energy, meaning the shell will not react freely to
|
||||||
|
its electrostatic environment.
|
||||||
|
Therefore it is typically desirable to decouple the relative motion of
|
||||||
|
the core/shell pair, which is an imaginary degree of freedom, from the
|
||||||
real physical system. To do that, the "compute
|
real physical system. To do that, the "compute
|
||||||
temp/cs"_compute_temp_cs.html command can be used, in conjunction with
|
temp/cs"_compute_temp_cs.html command can be used, in conjunction with
|
||||||
any of the thermostat fixes, such as "fix nvt"_fix_nh.html or "fix
|
any of the thermostat fixes, such as "fix nvt"_fix_nh.html or "fix
|
||||||
@ -2704,44 +2721,54 @@ fix thermostatequ all nve # integrator as needed f
|
|||||||
fix_modify thermoberendsen temp CSequ
|
fix_modify thermoberendsen temp CSequ
|
||||||
thermo_modify temp CSequ # output of center-of-mass derived temperature :pre
|
thermo_modify temp CSequ # output of center-of-mass derived temperature :pre
|
||||||
|
|
||||||
|
The pressure for the core/shell system is computed via the regular
|
||||||
|
LAMMPS convention by "treating the cores and shells as individual
|
||||||
|
particles"_#MitchellFincham2. For the thermo output of the pressure
|
||||||
|
as well as for the application of a barostat, it is necessary to
|
||||||
|
use an additional "pressure"_compute_pressure compute based on the
|
||||||
|
default "temperature"_compute_temp and specifying it as a second
|
||||||
|
argument in "fix modify"_fix_modify.html and
|
||||||
|
"thermo_modify"_thermo_modify.html resulting in:
|
||||||
|
|
||||||
|
(...)
|
||||||
|
compute CSequ all temp/cs cores shells
|
||||||
|
compute thermo_press_lmp all pressure thermo_temp # pressure for individual particles
|
||||||
|
thermo_modify temp CSequ press thermo_press_lmp # modify thermo to regular pressure
|
||||||
|
fix press_bar all npt temp 300 300 0.04 iso 0 0 0.4
|
||||||
|
fix_modify press_bar temp CSequ press thermo_press_lmp # pressure modification for correct kinetic scalar :pre
|
||||||
|
|
||||||
If "compute temp/cs"_compute_temp_cs.html is used, the decoupled
|
If "compute temp/cs"_compute_temp_cs.html is used, the decoupled
|
||||||
relative motion of the core and the shell should in theory be
|
relative motion of the core and the shell should in theory be
|
||||||
stable. However numerical fluctuation can introduce a small
|
stable. However numerical fluctuation can introduce a small
|
||||||
momentum to the system, which is noticable over long trajectories.
|
momentum to the system, which is noticable over long trajectories.
|
||||||
Therefore it is recomendable to use the "fix
|
Therefore it is recommendable to use the "fix
|
||||||
momentum"_fix_momentum.html command in combination with "compute
|
momentum"_fix_momentum.html command in combination with "compute
|
||||||
temp/cs"_compute_temp_cs.html when equilibrating the system to
|
temp/cs"_compute_temp_cs.html when equilibrating the system to
|
||||||
prevent any drift.
|
prevent any drift.
|
||||||
|
|
||||||
When intializing the velocities of a system with core/shell pairs, it
|
When initializing the velocities of a system with core/shell pairs, it
|
||||||
is also desirable to not introduce energy into the relative motion of
|
is also desirable to not introduce energy into the relative motion of
|
||||||
the core/shell particles, but only assign a center-of-mass velocity to
|
the core/shell particles, but only assign a center-of-mass velocity to
|
||||||
the pairs. This can be done by using the {bias} keyword of the
|
the pairs. This can be done by using the {bias} keyword of the
|
||||||
"velocity create"_velocity.html command and assigning the "compute
|
"velocity create"_velocity.html command and assigning the "compute
|
||||||
temp/cs"_compute_temp_cs.html command to the {temp} keyword of the
|
temp/cs"_compute_temp_cs.html command to the {temp} keyword of the
|
||||||
"velocity"_velocity.html commmand, e.g.
|
"velocity"_velocity.html command, e.g.
|
||||||
|
|
||||||
velocity all create 1427 134 bias yes temp CSequ
|
velocity all create 1427 134 bias yes temp CSequ
|
||||||
velocity all scale 1427 temp CSequ :pre
|
velocity all scale 1427 temp CSequ :pre
|
||||||
|
|
||||||
It is important to note that the polarizability of the core/shell
|
To maintain the correct polarizability of the core/shell pairs, the
|
||||||
pairs is based on their relative motion. Therefore the choice of
|
kinetic energy of the internal motion shall remain nearly constant.
|
||||||
spring force and mass ratio need to ensure much faster relative motion
|
Therefore the choice of spring force and mass ratio need to ensure
|
||||||
of the 2 atoms within the core/shell pair than their center-of-mass
|
much faster relative motion of the 2 atoms within the core/shell pair
|
||||||
velocity. This allow the shells to effectively react instantaneously
|
than their center-of-mass velocity. This allows the shells to
|
||||||
to the electrostatic environment. This fast movement also limits the
|
effectively react instantaneously to the electrostatic environment and
|
||||||
timestep size that can be used.
|
limits energy transfer to or from the core/shell oscillators.
|
||||||
|
This fast movement also dictates the timestep that can be used.
|
||||||
|
|
||||||
The primary literature of the adiabatic core/shell model suggests that
|
The primary literature of the adiabatic core/shell model suggests that
|
||||||
the fast relative motion of the core/shell pairs only allows negligible
|
the fast relative motion of the core/shell pairs only allows negligible
|
||||||
energy transfer to the environment. Therefore it is not intended to
|
energy transfer to the environment.
|
||||||
decouple the core/shell degree of freedom from the physical system
|
|
||||||
during production runs. In other words, the "compute
|
|
||||||
temp/cs"_compute_temp_cs.html command should not be used during
|
|
||||||
production runs and is only required during equilibration. This way one
|
|
||||||
is consistent with literature (based on the code packages DL_POLY or
|
|
||||||
GULP for instance).
|
|
||||||
|
|
||||||
The mentioned energy transfer will typically lead to a small drift
|
The mentioned energy transfer will typically lead to a small drift
|
||||||
in total energy over time. This internal energy can be monitored
|
in total energy over time. This internal energy can be monitored
|
||||||
using the "compute chunk/atom"_compute_chunk_atom.html and "compute
|
using the "compute chunk/atom"_compute_chunk_atom.html and "compute
|
||||||
@ -2761,14 +2788,20 @@ command, to use as input to the "compute
|
|||||||
chunk/atom"_compute_chunk_atom.html command to define the core/shell
|
chunk/atom"_compute_chunk_atom.html command to define the core/shell
|
||||||
pairs as chunks.
|
pairs as chunks.
|
||||||
|
|
||||||
For example,
|
For example if core/shell pairs are the only molecules:
|
||||||
|
|
||||||
|
read_data NaCl_CS_x0.1_prop.data
|
||||||
|
compute prop all property/atom molecule
|
||||||
|
compute cs_chunk all chunk/atom c_prop
|
||||||
|
compute cstherm all temp/chunk cs_chunk temp internal com yes cdof 3.0 # note the chosen degrees of freedom for the core/shell pairs
|
||||||
|
fix ave_chunk all ave/time 10 1 10 c_cstherm file chunk.dump mode vector :pre
|
||||||
|
|
||||||
|
For example if core/shell pairs and other molecules are present:
|
||||||
|
|
||||||
fix csinfo all property/atom i_CSID # property/atom command
|
fix csinfo all property/atom i_CSID # property/atom command
|
||||||
read_data NaCl_CS_x0.1_prop.data fix csinfo NULL CS-Info # atom property added in the data-file
|
read_data NaCl_CS_x0.1_prop.data fix csinfo NULL CS-Info # atom property added in the data-file
|
||||||
compute prop all property/atom i_CSID
|
compute prop all property/atom i_CSID
|
||||||
compute cs_chunk all chunk/atom c_prop
|
(...) :pre
|
||||||
compute cstherm all temp/chunk cs_chunk temp internal com yes cdof 3.0 # note the chosen degrees of freedom for the core/shell pairs
|
|
||||||
fix ave_chunk all ave/time 10 1 10 c_cstherm file chunk.dump mode vector :pre
|
|
||||||
|
|
||||||
The additional section in the date file would be formatted like this:
|
The additional section in the date file would be formatted like this:
|
||||||
|
|
||||||
@ -2789,7 +2822,7 @@ CS-Info # header of additional section :pre
|
|||||||
6.27 Drude induced dipoles :link(howto_27),h4
|
6.27 Drude induced dipoles :link(howto_27),h4
|
||||||
|
|
||||||
The thermalized Drude model, similarly to the "core-shell"_#howto_26
|
The thermalized Drude model, similarly to the "core-shell"_#howto_26
|
||||||
model, representes induced dipoles by a pair of charges (the core atom
|
model, represents induced dipoles by a pair of charges (the core atom
|
||||||
and the Drude particle) connected by a harmonic spring. The Drude
|
and the Drude particle) connected by a harmonic spring. The Drude
|
||||||
model has a number of features aimed at its use in molecular systems
|
model has a number of features aimed at its use in molecular systems
|
||||||
("Lamoureux and Roux"_#howto-Lamoureux):
|
("Lamoureux and Roux"_#howto-Lamoureux):
|
||||||
@ -2880,19 +2913,23 @@ Fischer, Gao, Guo, Ha, et al, J Phys Chem, 102, 3586 (1998).
|
|||||||
[(Mayo)] Mayo, Olfason, Goddard III, J Phys Chem, 94, 8897-8909
|
[(Mayo)] Mayo, Olfason, Goddard III, J Phys Chem, 94, 8897-8909
|
||||||
(1990).
|
(1990).
|
||||||
|
|
||||||
:link(Jorgensen)
|
:link(Jorgensen1)
|
||||||
[(Jorgensen)] Jorgensen, Chandrasekhar, Madura, Impey, Klein, J Chem
|
[(Jorgensen)] Jorgensen, Chandrasekhar, Madura, Impey, Klein, J Chem
|
||||||
Phys, 79, 926 (1983).
|
Phys, 79, 926 (1983).
|
||||||
|
|
||||||
:link(Price)
|
:link(Price1)
|
||||||
[(Price)] Price and Brooks, J Chem Phys, 121, 10096 (2004).
|
[(Price)] Price and Brooks, J Chem Phys, 121, 10096 (2004).
|
||||||
|
|
||||||
:link(Shinoda)
|
:link(Shinoda1)
|
||||||
[(Shinoda)] Shinoda, Shiga, and Mikami, Phys Rev B, 69, 134103 (2004).
|
[(Shinoda)] Shinoda, Shiga, and Mikami, Phys Rev B, 69, 134103 (2004).
|
||||||
|
|
||||||
:link(MitchellFinchham)
|
:link(MitchellFincham)
|
||||||
[(Mitchell and Finchham)] Mitchell, Finchham, J Phys Condensed Matter,
|
[(Mitchell and Fincham)] Mitchell, Fincham, J Phys Condensed Matter,
|
||||||
5, 1031-1038 (1993).
|
5, 1031-1038 (1993).
|
||||||
|
|
||||||
|
:link(MitchellFincham2)
|
||||||
|
[(Fincham)] Fincham, Mackrodt and Mitchell, J Phys Condensed Matter,
|
||||||
|
6, 393-404 (1994).
|
||||||
|
|
||||||
:link(howto-Lamoureux)
|
:link(howto-Lamoureux)
|
||||||
[(Lamoureux and Roux)] G. Lamoureux, B. Roux, J. Chem. Phys 119, 3025 (2003)
|
[(Lamoureux and Roux)] G. Lamoureux, B. Roux, J. Chem. Phys 119, 3025 (2003)
|
||||||
|
|||||||
@ -249,8 +249,12 @@ Pizza.py WWW site"_pizza. :l
|
|||||||
|
|
||||||
Specialized features :h5
|
Specialized features :h5
|
||||||
|
|
||||||
These are LAMMPS capabilities which you may not think of as typical
|
LAMMPS can be built with optional packages which implement a variety
|
||||||
molecular dynamics options:
|
of additional capabilities. An overview of all the packages is "given
|
||||||
|
here"_Section_packages.html.
|
||||||
|
|
||||||
|
These are some LAMMPS capabilities which you may not think of as
|
||||||
|
typical classical molecular dynamics options:
|
||||||
|
|
||||||
"static"_balance.html and "dynamic load-balancing"_fix_balance.html
|
"static"_balance.html and "dynamic load-balancing"_fix_balance.html
|
||||||
"generalized aspherical particles"_body.html
|
"generalized aspherical particles"_body.html
|
||||||
@ -338,15 +342,13 @@ dynamics timestepping, particularly if the computations are not
|
|||||||
parallel, so it is often better to leave such analysis to
|
parallel, so it is often better to leave such analysis to
|
||||||
post-processing codes.
|
post-processing codes.
|
||||||
|
|
||||||
A very simple (yet fast) visualizer is provided with the LAMMPS
|
For high-quality visualization we recommend the
|
||||||
package - see the "xmovie"_Section_tools.html#xmovie tool in "this
|
|
||||||
section"_Section_tools.html. It creates xyz projection views of
|
|
||||||
atomic coordinates and animates them. We find it very useful for
|
|
||||||
debugging purposes. For high-quality visualization we recommend the
|
|
||||||
following packages:
|
following packages:
|
||||||
|
|
||||||
"VMD"_http://www.ks.uiuc.edu/Research/vmd
|
"VMD"_http://www.ks.uiuc.edu/Research/vmd
|
||||||
"AtomEye"_http://mt.seas.upenn.edu/Archive/Graphics/A
|
"AtomEye"_http://mt.seas.upenn.edu/Archive/Graphics/A
|
||||||
|
"OVITO"_http://www.ovito.org/
|
||||||
|
"ParaView"_http://www.paraview.org/
|
||||||
"PyMol"_http://www.pymol.org
|
"PyMol"_http://www.pymol.org
|
||||||
"Raster3d"_http://www.bmsc.washington.edu/raster3d/raster3d.html
|
"Raster3d"_http://www.bmsc.washington.edu/raster3d/raster3d.html
|
||||||
"RasMol"_http://www.openrasmol.org :ul
|
"RasMol"_http://www.openrasmol.org :ul
|
||||||
@ -517,7 +519,7 @@ the packages they have written are somewhat unique to LAMMPS and the
|
|||||||
code would not be as general-purpose as it is without their expertise
|
code would not be as general-purpose as it is without their expertise
|
||||||
and efforts.
|
and efforts.
|
||||||
|
|
||||||
Axel Kohlmeyer (Temple U), akohlmey at gmail.com, SVN and Git repositories, indefatigable mail list responder, USER-CG-CMM and USER-OMP packages
|
Axel Kohlmeyer (Temple U), akohlmey at gmail.com, SVN and Git repositories, indefatigable mail list responder, USER-CGSDK and USER-OMP packages
|
||||||
Roy Pollock (LLNL), Ewald and PPPM solvers
|
Roy Pollock (LLNL), Ewald and PPPM solvers
|
||||||
Mike Brown (ORNL), brownw at ornl.gov, GPU package
|
Mike Brown (ORNL), brownw at ornl.gov, GPU package
|
||||||
Greg Wagner (Sandia), gjwagne at sandia.gov, MEAM package for MEAM potential
|
Greg Wagner (Sandia), gjwagne at sandia.gov, MEAM package for MEAM potential
|
||||||
|
|||||||