Description
This module contains a collection of functions designed to interface with various online protein structure evaluation servers. It allows users to submit Protein Data Bank (PDB) files to these servers and retrieve evaluation scores and other information.
Functions
get_score_from_proq(pdb_path: str, **kwargs) -> Dict[str, float]
Description
Returns a dictionary containing LGscore and MaxSub scores from the ProQ server.
Parameters
pdb_path: The path to the PDB file to be evaluated.
Returns
A dictionary with keys 'LGscore' and 'MaxSub', each associated with a float value.
Notes
- Requires an active internet connection to submit to the ProQ server.
Example
lgscore, maxsub = get_score_from_proq('path/to/your/pdbfile.pdb')['LGscore'], get_score_from_proq('path/to/your/pdbfile.pdb')['MaxSub']
get_score_from_VoroMQA(pdb_path: str, browser: Browser = None, timeout: int = 1200, **kwargs) -> Dict[str, float]
Description
Returns a dictionary containing the VoroMQA score.
Parameters
pdb_path: The path to the PDB file to be evaluated.browser: An optionalBrowserobject for automation.timeout: The timeout in seconds for waiting for results.
Returns
A dictionary with the key 'Score' and its associated float value.
Notes
- Requires an active internet connection to submit to the VoroMQA server.
Example
score = get_score_from_VoroMQA('path/to/your/pdbfile.pdb')['Score']
get_score_from_ProSA(pdb_path: str, browser: Browser = None, timeout: int = 1200, **kwargs) -> Dict[str, Union[float, bytes]]
Description
Returns a dictionary containing the Z-Score, model_quality_img_res, and res_score_img_res from the ProSA server.
Parameters
pdb_path: The path to the PDB file to be evaluated.browser: An optionalBrowserobject for automation.timeout: The timeout in seconds for waiting for results.
Returns
A dictionary with keys 'Z-Score', 'model_quality_img_res', and 'res_score_img_res'.
Notes
- Requires an active internet connection to submit to the ProSA server.
Example
z_score, model_quality_img, res_score_img = get_score_from_ProSA('path/to/your/pdbfile.pdb')['Z-Score'], get_score_from_ProSA('path/to/your/pdbfile.pdb')['model_quality_img_res'], get_score_from_ProSA('path/to/your/pdbfile.pdb')['res_score_img_res']
get_score_from_ModEval(modkey: str, pdb_path: str, align_file_path: str, browser: Browser = None, timeout: int = 1800, **kwargs) -> Dict[str, Union[float, str]]
Description
Returns a dictionary containing RMSD, overlap, identity, and Z-DOPE scores from the ModEval server.
Parameters
modkey: The ModEval key for authentication.pdb_path: The path to the PDB file to be evaluated.align_file_path: The path to the alignment file.browser: An optionalBrowserobject for automation.timeout: The timeout in seconds for waiting for results.
Returns
A dictionary with keys 'RMSD', 'overlap', 'identity', and 'Z-DOPE'.
Notes
- Requires an active internet connection to submit to the ModEval server.
Example
rmsd, overlap, identity, z_dope = get_score_from_ModEval('your_modkey', 'path/to/your/pdbfile.pdb', 'path/to/your/alignfile.aln')['RMSD'], get_score_from_ModEval('your_modkey', 'path/to/your/pdbfile.pdb', 'path/to/your/alignfile.aln')['overlap'], get_score_from_ModEval('your_modkey', 'path/to/your/pdbfile.pdb', 'path/to/your/alignfile.aln')['identity'], get_score_from_ModEval('your_modkey', 'path/to/your/pdbfile.pdb', 'path/to/your/alignfile.aln')['Z-DOPE']
get_score_from_MolProbity(pdb_path: str, browser: Browser = None, timeout: int = 1800, **kwargs) -> Dict[str, Union[float, str]]
Description
Returns a dictionary containing the MolProbity Z-Score, Ramachandran Favorability, and Ramachandran Outerness.
Parameters
pdb_path: The path to the PDB file to be evaluated.browser: An optionalBrowserobject for automation.timeout: The timeout in seconds for waiting for results.
Returns
A dictionary with keys 'Z-Score', 'Ramachandran Favorability', and 'Ramachandran Outerness'.
Notes
- Requires an active internet connection to submit to the MolProbity server.
Example
z_score, rama_favor, rama_outer = get_score_from_MolProbity('path/to/your/pdbfile.pdb')['Z-Score'], get_score_from_MolProbity('path/to/your/pdbfile.pdb')['Ramachandran Favorability'], get_score_from_MolProbity('path/to/your/pdbfile.pdb')['Ramachandran Outerness']
get_score_from_ProQ3(pdb_path: str, browser: Browser = None, timeout: int = 1200, **kwargs) -> Dict[str, Union[float, str]]
Description
Returns a dictionary containing ProQ2D, ProQRosCenD, ProQRosCenD, and ProQ3D scores from the ProQ3 server.
Parameters
pdb_path: The path to the PDB file to be evaluated.browser: An optionalBrowserobject for automation.timeout: The timeout in seconds for waiting for results.
Returns
A dictionary with keys 'ProQ2D', 'ProQRosCenD', 'ProQRosCenD', and 'ProQ3D'.
Notes
- Requires an active internet connection to submit to the ProQ3 server.
Example
proq2d, proqroscend, proqroscend2, proq3d = get_score_from_ProQ3('path/to/your/pdbfile.pdb')['ProQ2D'], get_score_from_ProQ3('path/to/your/pdbfile.pdb')['ProQRosCenD'], get_score_from_ProQ3('path/to/your/pdbfile.pdb')['ProQRosCenD'], get_score_from_ProQ3('path/to/your/pdbfile.pdb')['ProQ3D']
get_score_from_SAVES(pdb_path: str, browser: Browser = None, timeout: int = 1200, **kwargs) -> Dict[str, Union[float, str]]
Description
Returns a dictionary containing SAVES evaluation scores.
Parameters
pdb_path: The path to the PDB file to be evaluated.browser: An optionalBrowserobject for automation.timeout: The timeout in seconds for waiting for results.
Returns
A dictionary with keys 'errat', 'whatcheck_bad', 'whatcheck_mid', 'whatcheck_good', 'procheck_errors', 'procheck_warnings', and 'procheck_pass'.
Notes
- Requires an active internet connection to submit to the SAVES server.
Example
results = get_score_from_SAVES('path/to/your/pdbfile.pdb')
get_score_from_QMEANDisCo(pdb_path: str, browser: Browser = None, timeout: int = 1200, **kwargs)
Description
Returns a dictionary containing the QMEANDisCo score from the SwissModel server.
Parameters
pdb_path: The path to the PDB file to be evaluated.browser: An optionalBrowserobject for automation.timeout: The timeout in seconds for waiting for results.
Returns
A dictionary with the key 'QMEANDisCo Global'.
Notes
- Requires an active internet connection to submit to the SwissModel server.
Example
qmean_disco_score = get_score_from_QMEANDisCo('path/to/your/pdbfile.pdb')['QMEANDisCo Global']
get_score_from_QMEAN(pdb_path: str, browser: Browser = None, timeout: int = 1200, **kwargs)
Description
Returns a dictionary containing the QMEAN score from the SwissModel server.
Parameters
pdb_path: The path to the PDB file to be evaluated.browser: An optionalBrowserobject for automation.timeout: The timeout in seconds for waiting for results.
Returns
A dictionary with the key 'QMEAN4'.
Notes
- Requires an active internet connection to submit to the SwissModel server.
Example
qmean_score = get_score_from_QMEAN('path/to/your/pdbfile.pdb')['QMEAN4']
get_eval_info_from_servers(pdb_path: str, align_file_path: str = None, modkey: str = None, browser: Browser = None, servers: List[str] = None) -> Dict[str, Dict[str, Union[float, str, bytes]]]
Description
Consolidates evaluation results from multiple servers into a single dictionary.
Parameters
pdb_path: The path to the PDB file to be evaluated.align_file_path: Optional path to the alignment file (used by some servers).modkey: Optional ModEval key for authentication.browser: An optionalBrowserobject for automation.servers: A list of server names to retrieve scores from.
Returns
A dictionary where each key is a server name and each value is a dictionary of scores returned by that server.
Notes
- If no servers are specified, it returns an error message.
- Requires an active internet connection to submit to the specified servers.
Example
servers = ['ProQ', 'VoroMQA', 'ProSA']
eval_results = get_eval_info_from_servers('path/to/your/pdbfile.pdb', servers=servers)
Classes
_name2server
Description
A dictionary mapping server names to their respective scoring functions.
Members
ProQ: Maps toget_score_from_proq.VoroMQA: Maps toget_score_from_VoroMQA.ProSA: Maps toget_score_from_ProSA.ModEval: Maps toget_score_from_ModEval.MolProbity: Maps toget_score_from_MolProbity.ProQ3: Maps toget_score_from_ProQ3.SAVES: Maps toget_score_from_SAVES.QMEANDisCo: Maps toget_score_from_QMEANDisCo.QMEAN: Maps toget_score_from_QMEAN.
Example
# Example of using the _name2server dictionary to get the ProQ function
proq_function = _name2server['ProQ']
result = proq_function('path/to/your/pdbfile.pdb')
This module is a comprehensive tool for protein structure evaluation, automating the process of submitting PDB files to various online servers and collecting the results for further analysis.