protein_fep_ph_dependence.py Command Help

Command: $SCHRODINGER/run protein_fep_ph_dependence.py

usage: $SCHRODINGER/run protein_fep_ph_dependence.py [-h] [-ph pH]
                                                     [-exp-csv EXP_CSV]
                                                     [-u {DG,KI_M,KI_mM,KI_uM,KI_nM,PKI,LOGS}]
                                                     [-cphmd MERGED_CPHMD_PKA_CSV]
                                                     [-model-csv MODEL_CSV]
                                                     [-o OUT_PREFIX] [-v]
                                                     [-debug]
                                                     fmp

Protein Binding FEP pH Dependence
=================================

Apply pKa-based dG corrections to Protein FEP results to calculate pH-specific
binding free energies and, with two pH values, pH-dependent binding free energy
changes between the initial and final pH values.

Required inputs are an FMP file from a Protein FEP selectivity (binding)
calculation (`fmp`), and one or two pH values each supplied via `-ph` flags.
Optionally, an experimental binding affinity CSV file may be provided per pH
via repeated `-exp-csv` flags (in the corresponding order to `-ph` values),
along with units specified via `-u UNITS`.

The pKa information used in the pH dependence calculations can come from one
of two sources: Protein FEP Groups treatment or Constant pH MD (CpHMD).

By default, pKa information will be obtained by applying the Protein FEP Groups
treatment at each pH.  This approach requires that all alternate protonation
states for relevant wild-type and mutant titratable residues be included as
mutations in the FEP perturbation map.  Optionally, a precalculated model dGs
CSV file may be provided via `-model-csv MODEL_CSV`, which is passed through to
the per-pH Protein FEP Groups calculations.

To use Constant pH MD (CpHMD)-based corrections, provide a merged (macro) pKa
CSV file containing pKa and tautomer ratio data from CpHMD simulations via the
`-cphmd MERGED_CPHMD_PKA_CSV`.  This file should be produced using
`cphmd_merge_pka_results.py` after running constant pH MD simulations as set up
from the FMP file using `fmp2cphmd.py`.

The FMP file should include mutations to all relevant protonation states for
all titratable residues (both WT and mutant) that are mutated in the FEP map.
If any protonation states in a Node Group are missing (e.g. only 2 of 3 states
provided for a mutation to histidine), no pKa-based group correction will be
applied to that group, and the results for that group will likely be unreliable
(and duplicated in the output).

Experimental data are only used if one CSV file is provided per pH value (that
is, one for single-pH analysis, two for dual-pH analysis).  The first two
columns of the experimental CSV files must contain the variant names and the
binding affinity measurements, respectively.  The column names in the CSV files
are not used and can be arbitrary, but must be present.  The variant names
should match the mutation format used in the FMP file, with the wild-type
variant indicated by "WT" (case-insensitive).  Multiple mutations can be
indicated by comma-separating them within the variant name and enclosing the
full variant name in quotes, e.g.  "A-A12S,A-T13W".  Top- or bottom-of-assay
data can be included using '>' or '<' characters.  Example CSV file contents:

    variant,KD_nM         # Column names are not used and can be arbitrary
    WT,10.0               # Wild-type variant (case-insensitive)
    A-A12S,5.0            # ChainID-Mutation in single-letter residue code
    B-V37W,>10000         # Top/bottom-of-assay data are supported
    "A-A12S,A-T13W",25.0  # Multiple mutations are comma-separated and quoted

Units for the experimental binding data may be specified via `-u UNITS`, and
must be the same across all provided CSV files.  Allowed units are:

* "DG" = ∆G in kcal/mol (default)
* "KI_M" = Ki in M
* "KI_mM" = Ki in mM
* "KI_uM" = Ki in µM
* "KI_nM" = Ki in nM
* "PKI" = pKi (negative log10 of Ki)

If provided, the model dGs CSV file should be in the following format and cover
all the relevant perturbations present in the FMP file.  Note that FEP
perturbations are directional, so forward and reverse perturbations for each
pair of residue codes should be included to avoid incomplete results.

    start,end,model_dG,model_err
    ALA,CYM,-126.4030,0.0406
    ALA,CYS,2.2025,0.0380
    ALA,ASH,-28.3635,0.0358
    ALA,ASP,-146.9450,0.0488
    ALA,GLH,-26.6127,0.0422
    ...
    CYM,ALA,-7.7813,0.0437  (reverse of first row)
    CYM,ASH,-36.0821,0.0496
    etc.

For dual-pH runs, pH-dependent binding ddG values are reported as
`dG(pH1) - dG(pH0)` such that a positive value indicates that the variant
binds more weakly at pH1 than at pH0.

Output files (single- and dual-pH):

* (Groups only) per-pH "dGs" CSV files
* (Groups only) A "pKas" CSV file with calculated micro pKas
* (CpHMD only) per-pH "site penalties" and "node penalties" CSV files
* (CpHMD only) per-pH "dG corrections" CSV files
* A "combined data" CSV file with predicted binding dG values for all variants
  at each pH value ("long" format)
* (when experimental data are provided) per-pH correlation plots showing FEP+
  vs. Experimental Binding dGs

Additional output files (dual-pH only):

* A "phdep data" CSV file with predicted binding dG and pH-dependence results
  for all variants ("wide" format)
* One "phdep predicted" PNG plot showing the predicted pH dependent change in
  binding free energy between the two pH values for each variant
* (when experimental data are provided) A pH-dependence correlation plot
  showing FEP+ vs. Experiment pH-dependent Binding ddG values

Example commands:

* Single-pH run without experimental data::
    $SCHRODINGER/run protein_fep_ph_dependence.py <fmp> -ph <ph0>

* Dual-pH run with experimental data, custom units, and a model CSV file::
    $SCHRODINGER/run protein_fep_ph_dependence.py <fmp> -ph <ph0> -ph <ph1> -exp-csv <csv0> -exp-csv <csv1> -u <units> -model-csv <model_csv>

* Dual-pH run with CpHMD-based dG corrections::
    $SCHRODINGER/run protein_fep_ph_dependence.py <fmp> -ph <ph0> -ph <ph1> -exp-csv <csv0> -exp-csv <csv1> -u <units> -cphmd <merged_cphmd_pka_csv>

positional arguments:
  fmp                   Path to the FMP file

options:
  -h, --help            show this help message and exit
  -ph pH                pH value; provide once for single-pH analysis or twice
                        for dual-pH dependence analysis (default: None)
  -exp-csv EXP_CSV, -exp_csv EXP_CSV
                        Experimental data CSV file; provide one per -ph in
                        matching order (default: None)
  -u {DG,KI_M,KI_mM,KI_uM,KI_nM,PKI,LOGS}
                        Units for experimental binding affinity data in the
                        user-provided CSV files; the same units must be used
                        across all -exp-csv files (default: DG)
  -cphmd MERGED_CPHMD_PKA_CSV
                        Path to the CpHMD merged (macro) pKa CSV file. This
                        file should be produced using
                        `cphmd_merge_pka_results.py` after running constant pH
                        MD simulations as set up from the input FMP file using
                        `fmp2cphmd.py`, and it should contain tautomer ratio
                        data. (default: None)
  -model-csv MODEL_CSV, -model_csv MODEL_CSV
                        Path to the model dGs CSV file; passed through to the
                        protein_fep_groups.py script (default: None)
  -o OUT_PREFIX         Output file prefix (default: None)
  -v                    Increase verbosity (default: False)
  -debug                Print debugging info (default: False)