<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;">Hi Henry,<div><br></div><div>  The AlphaFold source code </div><div><br></div><div><a href="https://github.com/deepmind/alphafold/blob/569eb4fea3733b979cb0442750b875759dd5ecc0/alphafold/model/model.py#L46"><span class="Apple-tab-span" style="white-space:pre">       </span>https://github.com/deepmind/alphafold/blob/569eb4fea3733b979cb0442750b875759dd5ecc0/alphafold/model/model.py#L46</a><br><div><br></div><div>shows that the ranking for multimer predictions uses 0.8 * ptm + 0.2 * iptm</div><div><br></div><div><div><span class="Apple-tab-span" style="white-space:pre">      </span>confidence_metrics['ranking_confidence'] = 0.8 * confidence_metrics['iptm'] + 0.2 * confidence_metrics['ptm']</div><div><br></div><div>while for monomer predictions it uses average plddt</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">    </span>confidence_metrics['ranking_confidence'] = np.mean(
        confidence_metrics['plddt']) )</div><div><br></div><div>The ptm, iptm and plddt values are in the score json files, for instance, this score file for a multimer prediction with 191 amino acids</div><div><br></div><div> <span class="Apple-tab-span" style="white-space:pre">     </span>~/Downloads/ChimeraX/AlphaFold/prediction_62/af191_unrelaxed_rank_1_model_5_scores.json</div><div><br></div><div>contains</div><div><br></div></div></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><div><div>{</div></div></div><div><div><div>"max_pae": 31.75,</div></div></div><div><div><div> "pae": [[...191*191 pae values]],</div></div></div><div><div><div> "plddt": [87.08, 93.55, 96.38, 95.29, 97.09, 97.85, 97.47, 97.97, 98.56, 98.23, 97.81, 98.3, 98.41, 97.97, 97.66, 98.2, 97.63, 96.64, 96.8, 95.64, 94.65, 92.39, 95.56, 97.58, 98.3, 98.57, 98.53, 98.79, 98.72, 98.77, 98.72, 98.44, 98.03, 97.95, 98.07, 97.96, 98.57, 98.61, 98.73, 98.68, 98.72, 98.67, 97.64, 96.52, 97.08, 97.62, 98.44, 98.79, 98.72, 98.79, 98.56, 98.36, 98.1, 97.43, 97.71, 96.14, 97.7, 97.76, 97.2, 97.88, 97.88, 96.67, 97.31, 97.97, 97.85, 96.7, 96.35, 96.88, 97.01, 95.29, 95.22, 95.42, 94.62, 90.54, 78.83, 65.75, 53.81, 47.67, 44.63, 42.19, 43.68, 44.19, 42.65, 39.15, 35.82, 94.59, 96.97, 98.36, 97.91, 98.02, 98.02, 98.68, 98.8, 98.76, 98.7, 98.7, 98.75, 98.59, 98.33, 98.41, 98.56, 98.05, 97.69, 98.09, 97.51, 96.95, 97.35, 97.8, 98.5, 98.78, 98.82, 98.87, 98.65, 98.35, 97.35, 96.11, 92.05, 83.29, 79.73, 73.58, 71.57, 67.75, 65.78, 61.65, 60.54, 57.76, 57.54, 51.76, 48.72, 49.38, 47.89, 49.44, 50.32, 52.88, 55.32, 60.69, 77.64, 87.56, 94.38, 96.6, 97.72, 98.55, 98.74, 98.87, 98.74, 98.0, 96.52, 95.22, 96.96, 98.41, 98.71, 98.42, 98.34, 97.5, 96.99, 94.89, 93.43, 93.7, 95.99, 96.44, 96.43, 97.62, 98.36, 97.44, 97.34, 98.49, 98.53, 97.7, 97.71, 98.45, 98.32, 97.26, 97.75, 97.98, 98.11, 96.84, 97.43, 97.96, 97.35, 94.07, 85.21, 73.09, 59.76, 52.41, 50.31, 45.78, 47.12, 43.03, 43.64, 44.21, 35.19],</div></div></div><div><div><div> "ptm": 0.83,</div></div></div><div><div><div> "iptm": 0.8600000143051147</div></div></div><div><div><div>}</div></div></div></blockquote><div><div><div><br></div><div>ChimeraX does not read this scores file but you could easily read it in Python, for example from the ChimeraX Python Shell (menu Tools / General / Shell)</div><div><div><br></div></div></div></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><div><div><div>import json</div></div></div></div><div><div><div><div>s = json.load(open('/Users/goddard/Downloads/ChimeraX/AlphaFold/prediction_62/af191_unrelaxed_rank_1_model_5_scores.json'))</div></div></div></div><div><div><div><div>s['ptm']</div></div></div></div><div><div><div><div>> 0.83</div></div></div></div><div><div><div><div><br></div></div></div></div><div><div><div><div>s['iptm']</div></div></div></div><div><div><div><div>> 0.8600000143051147</div></div></div></div><div><div><div><div><br></div></div></div></div><div><div><div><div>s['plddt']</div></div></div></div><div><div><div><div>> [87.08, 93.55, ...]</div></div></div></div><div><div><div><div><br></div></div></div></div><div><div><div><div>sum(s['plddt']) / len(s['plddt'])</div></div></div></div><div><div><div><div>> 88.15670157068061</div></div></div></div></blockquote><div><div><div><div><br></div></div><div>The plddt values are also saved in the bfactor column of the AlphaFold PDB files.  So I could also get the average plddt by averaging the bfactor value of CA atoms using the Python shell</div><div><br></div></div></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><div><div>from chimerax.core.commands import run</div></div></div><div><div><div>run(session, 'select #1@CA').atoms.bfactors.mean()</div></div></div><div><div><div>> 88.16</div></div></div></blockquote><div><div><div><br></div><div>The PDB format only gives two digits past the decimal point in the bfactor column so they won't match exactly the values read from the json scores file.</div><div><br></div><div>   Tom</div><div><br></div><div><br></div><div><br></div><blockquote type="cite"><div>On Jan 4, 2023, at 9:55 AM, Chen, Henry via ChimeraX-users <chimerax-users@cgl.ucsf.edu> wrote:</div><br class="Apple-interchange-newline"><div><div>Is there a way to get the average all the pLDDT values for the entire complex? Isn't that how the program generates its ranking?<br><br>Thanks so much,<br>Henry<br><br>-----Original Message-----<br>From: Elaine Meng <meng@cgl.ucsf.edu> <br>Sent: Wednesday, January 4, 2023 11:40 AM<br>To: Chen, Henry <hchen38@illinois.edu><br>Cc: chimerax-users@cgl.ucsf.edu<br>Subject: Re: [chimerax-users] How to get the average pTM scores from an Alphafold multimer prediction<br><br>Hi Henry,<br>The per-residue scores in the PDB file are pLDDT values, not pTM.  I don't know if pTM is included in the information that ChimeraX gets. As described in the help links below, ChimeraX shows pLDDT and PAE (predicted aligned error):<br><br><https://urldefense.com/v3/__https://rbvi.ucsf.edu/chimerax/docs/user/tools/alphafold.html*coloring__;Iw!!DZ3fjg!9Sn5HbsUfAGjOX6KCO4gTgqW8U-8KWx9hRu66Chltsb4p3nPBkXpVc9YKjWrZw7S6ZsdmYP3WbZvxLMCzXwS$ > <https://urldefense.com/v3/__https://rbvi.ucsf.edu/chimerax/docs/user/tools/alphafold.html*pae__;Iw!!DZ3fjg!9Sn5HbsUfAGjOX6KCO4gTgqW8U-8KWx9hRu66Chltsb4p3nPBkXpVc9YKjWrZw7S6ZsdmYP3WbZvxM3PnVJa$ ><br><br>I hope this helps,<br>Elaine<br>-----<br>Elaine C. Meng, Ph.D.                       <br>UCSF Chimera(X) team<br>Department of Pharmaceutical Chemistry<br>University of California, San Francisco<br><br><blockquote type="cite">On Jan 4, 2023, at 8:27 AM, Chen, Henry via ChimeraX-users <chimerax-users@cgl.ucsf.edu> wrote:<br><br>Dear Chimarax devs/users,<br><br>I’m using ChimeraX Alphafold tool to do a multimer structure prediction. I was wondering how can I determine the average pTM score for each structure prediction? I get PAE.png and plddt.png file, but not a text file or anything that tells me the average pTM. (I was hoping the ranking file would give the average score but it does not) The models come with the pdb file as well as the scores.json files, but again I don’t see anything that tells me the average pTM for the structure. Clearly the pTM per residue scores are saved in my pdb file, is there a command to average them all up?<br><br>Thanks!<br>Henry<br></blockquote><br><br>_______________________________________________<br>ChimeraX-users mailing list<br>ChimeraX-users@cgl.ucsf.edu<br>Manage subscription:<br>https://www.rbvi.ucsf.edu/mailman/listinfo/chimerax-users<br><br></div></div></blockquote></div><br></div></body></html>