Input Files for Force Field X (FFX) Calculations
The FFX software package contains a very powerful and ever expanding library of functions to aid in a variety of computational chemistry endeavors. It is difficult to utilize FFX without properly formatted input files. The following is a brief and general guide on how to set up files for an FFX command.
Necessary Files
In general, FFX commands need coordinates to perform their function. The standard FFX coordinate file follows TINKER1 XYZ file format conventions (however most FFX commands also function with PDB files). The first line of an XYZ file contains the number of atoms within the structure followed by an identifier (this identifier is handled as a comment). Optionally, the next line can contain lattice parameters for a crystal that is produced with the provided coordinates (space group is specified within the properties file). Finally, the remaining lines consist of specific atoms. The atomic coordinate lines contain the following information from left to right: atom number, atomic label, x-coordinate, y-coordinate, z-coordinate, atom type, and bonded atoms. Contents of the file "CBZ.xyz" are provided below as an example:
30 CBZ.xyz
10.32830623 10.95565862 17.24348658 90.00000000 86.28198726 90.00000000
1 O 3.80927596 1.34427638 0.60716888 415 14
2 N 2.81747690 1.03638807 -1.57326561 407 4 5 14
3 N 3.37765424 -0.75657908 -0.16702976 409 14 29 30
4 C 2.49090571 2.40659604 -1.86571082 402 2 6 10
5 C 2.03565503 0.12640028 -2.41840836 402 2 7 11
6 C 1.16225543 2.88826730 -1.49404155 406 4 8 12
7 C 0.60983897 -0.01518350 -2.33704738 406 5 9 13
8 C 0.21565062 2.02225648 -0.83539346 404 6 9 19
9 C -0.04625716 0.76418164 -1.25711359 404 7 8 20
10 C 3.39292036 3.28514942 -2.51085999 408 4 15 21
11 C 2.71013427 -0.70305940 -3.35553573 408 5 16 22
12 C 0.83676064 4.23291832 -1.76894534 403 6 17 23
13 C -0.06386162 -0.85693639 -3.23715672 403 7 18 24
14 C 3.36416024 0.61469239 -0.31033724 401 1 2 3
15 C 3.04253626 4.61212300 -2.74187904 405 10 17 25
16 C 2.02730138 -1.50085488 -4.23375119 405 11 18 26
17 C 1.79008186 5.10526234 -2.35301895 410 12 15 27
18 C 0.59592378 -1.57566716 -4.23801013 410 13 16 28
19 H -0.39097751 2.36441559 -0.00063083 414 8
20 H -0.88106295 0.23645393 -0.75844449 414 9
21 H 4.37373437 2.92419678 -2.72332680 412 10
22 H 3.74724689 -0.70451346 -3.34950963 412 11
23 H -0.18755136 4.59412309 -1.56957313 417 12
24 H -1.15698939 -0.82123003 -3.08699193 417 13
25 H 3.79716480 5.28962322 -3.13293051 416 15
26 H 2.53972796 -2.12433359 -4.91011776 416 16
27 H 1.47993023 6.10054327 -2.45187745 413 17
28 H 0.03252031 -2.28886293 -4.83185282 413 18
29 H 3.56217740 -1.12279241 0.76008088 411 3
30 H 3.35446649 -1.48152092 -0.86332390 411 3
In addition to a coordinate file, you will likely need a Properties file (analogous to a TINKER1 keyword file). Traditionally, these files have the same name as the coordinate file (e.g. CBZ.xyz would have either CBZ.properties or CBZ.key), however this file can also be specified from the commands line by adding "-Dkey=NAME.key" before your FFX command. Many specifications can be made within the Properties file (see here). One of the most important is either the "forcefield" or "parameters" variables as they control how to represent the supplied coordinates. The "forcefield" keyword specifies a given force field (e.g. "forcefield AMOEBA_BIO_2018", which is sufficient for most proteins). The "parameters" keyword references a stand-alone file containing force field parameters, scaling terms, and units. FFX can also augment a given force field with additional parameters using the "patch" variable. For example, atomic parameters for small molecules can be generated by auto-parameterization tools (e.g. PolType2 2,3 can be used to generate AMOEBA patch files). An example Properties file is below (CBZ.properties):
forcefield AMOEBA_BIO_2018
patch /PATH/TO/CBZ.patch
spacegroup P1
a-axis 10.0
b-axis 10.0
c-axis 10.0
alpha 90.0
beta 90.0
gamma 90.0
vdw-cutoff 15.0
References:
1. J. A. Rackers, Z. Wang, C. Lu, M. L. Maury, L. Lagardère, M. J. Schnieders, J.-P. Piquemal, P. Ren, J. W. Ponder, (2018). Tinker 8: Software Tools for Molecular Design. J. Chem. Theory. Comput., 14 (10), 5273–5289 DOI: http://dx.doi.org/10.1021/acs.jctc.8b00529
2. Wu, J. C., Chattree, G., Ren, P. (2012). Automation of AMOEBA polarizable force field parameterization for small molecules. Theoretical chemistry accounts, 131(3), 1138. https://doi.org/10.1007/s00214-012-1138-6
3. Walker, B., Liu, C., Wait, E., Ren, P. (2022). Automation of AMOEBA polarizable force field parameterization for small molecules: Poltype 2. J. Comput. Chem. 2022, 43( 23), 1530. https://doi.org/10.1002/jcc.26954