FoldX extension to homelette
Philipp Junk, 2021
This extension contains evaluation metrics based on FoldX, a force field for energy calculation and protein design (https://foldxsuite.crg.eu/) [1] [2].
Usage
import homelette.extension.extension_foldx as extension_foldx
help(extension_foldx.Evaluation_foldx_stability)
This extension expects FoldX to be installed and in your path.
Functions and classes
- Currently contains the following items:
Evaluation_foldx_repairmodelsEvaluation_foldx_interactionEvaluation_foldx_stabilityEvaluation_foldx_alascan_buildmodelsEvaluation_foldx_alascan_interaction
- class homelette.extension.extension_foldx.Evaluation_foldx_repairmodels(model, quiet=False)
Creates a modified version of the PDB and runs RepairPDB on it
Will not dump an entry to the model.evaluation dictionary
- Parameters:
model (Model) – The model object to evaluate
quiet (bool) – If True, will perform evaluation with suppressing stdout (default False). Needs to be False for running it asynchronously, as done when running Task.evaluate_models with multple cores
- Variables:
model (Model) – The model object to evaluate
output (dict) – Dictionary that all outputs will be dumped into
Notes
Most PDBs work fine with FoldX. For a specific use case in which I was working with GTP heteroatoms, I had to rename a few atoms to make the PDB compliant with FoldX.
- evaluate()
Repairs models with FoldX. Automatically called on object initialization
- Return type:
None
- class homelette.extension.extension_foldx.Evaluation_foldx_interaction(model, quiet=False)
Calculates interaction energy with FoldX
Requires a protein-protein complex. Expects Evaluation_foldx_repairmodels to have been performed beforehand.
Will dump the following entries to the model.evaluation dictionary:
foldx_interaction
- Parameters:
model (Model) – The model object to evaluate
quiet (bool) – If True, will perform evaluation with suppressing stdout (default False). Needs to be False for running it asynchronously, as done when running Task.evaluate_models with multple cores
- Variables:
model (Model) – The model object to evaluate
output (dict) – Dictionary that all outputs will be dumped into
- evaluate()
Calculates protein interaction energy with FoldX. Automatically called on object initialization.
- Return type:
None
- class homelette.extension.extension_foldx.Evaluation_foldx_stability(model, quiet=False)
Calculate protein stability with FoldX
Expects Evaluation_foldx_repairmodels to have been performed beforehand.
Will dump the following entries to the model.evaluation dictionary:
foldx_stability
- Parameters:
model (Model) – The model object to evaluate
quiet (bool) – If True, will perform evaluation with suppressing stdout (default False). Needs to be False for running it asynchronously, as done when running Task.evaluate_models with multple cores
- Variables:
model (Model) – The model object to evaluate
output (dict) – Dictionary that all outputs will be dumped into
- evaluate()
Calculates protein stability with FoldX. Automatically called on object initialization.
- Return type:
None
- class homelette.extension.extension_foldx.Evaluation_foldx_alascan_buildmodels(model, quiet=False)
Generates alanine point mutations for all positions in the given model using FoldX. Automatically called on object initialization.
Expects Evaluation_foldx_repairmodels to have been performed beforehand.
Will not dump an entry to the model.evaluation dictionary.
- Parameters:
model (Model) – The model object to evaluate
quiet (bool) – If True, will perform evaluation with suppressing stdout (default False). Needs to be False for running it asynchronously, as done when running Task.evaluate_models with multple cores
- Variables:
model (Model) – The model object to evaluate
output (dict) – Dictionary that all outputs will be dumped into
See also
Notes
This Evaluation is very RAM intensive, so expect only to run 1 or 2 threads ni parallel.
- evaluate()
Generates alanine point mutations for all positions in the given model. Automatically called on object initialization.
- Return type:
None
- class homelette.extension.extension_foldx.Evaluation_foldx_alascan_interaction(model, quiet=False)
Calculates protein interaction energy with FoldX for all alanine point mutations generated by Evaluation_foldx_alascan_buildmodels.
Expects Evaluation_foldx_alascan_buildmodels to have been run before.
Will dump the following entry to the model.evaluation dictionary:
- foldx_alascan: Dictionary of all interaction energies for all alanine
scan mutations.
- Parameters:
model (Model) – The model object to evaluate
quiet (bool) – If True, will perform evaluation with suppressing stdout (default False). Needs to be False for running it asynchronously, as done when running Task.evaluate_models with multple cores
- Variables:
model (Model) – The model object to evaluate
output (dict) – Dictionary that all outputs will be dumped into
See also
- evaluate()
Calculates protein interaction energy with FoldX for all alanine point mutations generated by Evaluation_foldx_alascan_buildmodels.
- Return type:
None