fep_groups.py Command Help
Command: $SCHRODINGER/run fep_groups.py
usage:
A Schrödinger script to set the pKa or relative populations of the compounds
in FEP+ node groups.
Using a population file
$SCHRODINGER/run -FROM scisol fep_groups.py <in>.fmp -population-file <populations>.tsv -o <out>.fmp
Note: If the populations were calculated at a known pH, use the
"-ph <pH-value>" option to save it to the graph.
Population files specify node grouping and populations using a three-column
tab-separated value format:
Title Population Group number
Liga_neutral 0.9 0
Liga_charge 0.1 0
Ligb_neutral 0.8 1
Ligb_charge 0.05 1
Ligbt_neutral 0.05 1
Ligbt_charge 0.10 1
There are three things to note when specifying populations this way:
1. the headers are mandatory
2. the Group number column values have no meaning other than
uniquely identifying the group to which each node belongs
3. if a node has multiple conformers in the graph, only a single
representative conformer should be chosen to represent all of them.
Two nodes that are conformers of each other should not appear in the
same population file.
We also support reading population files that use an older format in which
all of the data for a node group is put on the same row:
# ligand ligand [...] percent percent [...]
Liga_neutral Liga_charge 0.9 0.1
Ligb_neutral Ligb_charge Ligbt_neutral Ligbt_charge 0.8 0.05 0.05 0.10
Note that this format is deprecated and will not be supported beyond the
2024-3 release.
Using a pKa file
$SCHRODINGER/run -FROM scisol fep_groups.py <in>.fmp -pka-file <pka-file>.txt -o <out>.fmp
Example of pKa file
pH 7.0
# ligand ligand pka
Liga_neutral Liga_charge 3.43
Ligb_neutral Ligb_charge 3.25
Using EpikX for predicting the solvent populations
$SCHRODINGER/run -FROM scisol fep_groups.py <in>.fmp -epikx -ph <pH-value> -o <out>.fmp
Note: EpikX population predictions will be normalized by default. To skip
population normalization add the -skip-normalization option.
positional arguments:
infmp Input fmp file path
options:
-h, --help show this help message and exit
-epikx Run EpikX at a target pH to predict solvent
populations of compounds in tautomer and protomer node
groups. Must also provide a -ph argument. (default:
False)
-p POP_FILE_PATH, -population-file POP_FILE_PATH
File with populations of tautomer and pka related
molecules. (default: None)
-pka-file PKA_FILE_PATH
File with pH and pKas of compounds. Cannot be used
with -ph option. (default: None)
-pH PH, -ph PH Set the pH of the system. When used with a
-population-file, this does not alter the given
populations. When used with -epikx, this specifies the
target pH of the system. Cannot be used with -pka-
file. (default: None)
-s SEPARATOR, -separator SEPARATOR
Separator to split ligand names and population values
in pKa file or non-TSV population file. Ignored if no
such file is specified. By default, any run of
continuous whitespace characters are recognized as
separators. (default: None)
-o OUT_FMP_PATH Output fmp file path. (default:
group_corrected_out.fmp)
-skip-normalization Skip normalizing the populations that are set on the
graph. Note: This option is ignored unless the -epikx
option is also provided. (default: False)
-out-population-file OUT_POP_FILE_PATH
Write the population data from the graph to the
specified .tsv file. The population data will be
written after any other options have been applied,
including population assignment via Epik or reading
parsing a pKa or population file. Note: if there are
multiple nodes in the same conformer group, only one
of them will appear in the resulting population file
because they all represent the same structure and
therefore have the same effective population.
(default: None)
-debug Print additional information to stdout. Run any epikx
calculations in the directory from which this script
was launched, rather than in a temporary directory.
(default: False)