Answers.Body: <p>A common metric used to assess if a mutation destabilises the structure is the difference in Gibbs free energy. PyMOL does not give a ∆∆G (difference in Gibbs free energy, kcal/mol), but a very crude steric clash nor does it repack neighbouring sidechains out of the way, or alter the backbone, so unfortunately is not the way forward. However, if one must there is a way (see SIMBAI below).</p>
  <h2>Beyond destabilisation</h2>
  <p>Destabilisation predictors have a ~60% or lower success at predicting if something is pathogenic (<a href="https://pubmed.ncbi.nlm.nih.gov/32958805/" rel="nofollow noreferrer">ref</a>). This is because the effect a mutation has on a protein is rather complicated as you can have destabilisation, but also aggregation, loss of regulation, mislocalisation, loss of binding to another protein, loss of binding to ligand, loss of activity (catalysis, inability to change conformation) etc etc. Then you can get curious subcases, such as loss of activity that result in the sequestration of a binding partner or homologues in a complex resulting in a worse phenotype than destabilisation or truncation.</p>
  <h2>Modelling</h2>
  <p>The behaviour of a protein can be assess by the energy of the system using <a href="https://en.wikipedia.org/wiki/Force_field_(chemistry)" rel="nofollow noreferrer">forcefields</a>, which are multi-term equations that describes the atomic interactions (attraction, repulsion etc.). The result is the Gibbs free energy mentioned above, which is a potential, so negative is good. Kinetic energy is release when the unfolded protein &quot;rolls down&quot; down the potential energy funnel —<a href="https://academic.oup.com/nar/article/49/D1/D420/5983626" rel="nofollow noreferrer">ProTherm dataset</a> (an empirical dataset of ∆∆Gs) and the <a href="http://marid.bioc.cam.ac.uk/sdm2" rel="nofollow noreferrer">tool SDM</a> give this value inverted as the negative can be confusing.</p>
  <p>An uphill change in the Gibbs free energy (∆∆G &gt; 0) generally correlates with a destabilisation of a protein —aggregation and solubility being the caveat in the &quot;generally&quot;. The destabilisation a single state (static conformation) can be assessed. <code>gmx energy</code> in Gromacs, FoldX or Rosetta can be used for this.</p>
  <p>For altered ability to switch conformation steered MD simulations are required, but generally the ∆∆G at different states can be used.</p>
  <p>For the non-destabilisation options, <a href="https://www.phosphosite.org/" rel="nofollow noreferrer">https://www.phosphosite.org/</a> and <a href="http://elm.eu.org/" rel="nofollow noreferrer">http://elm.eu.org/</a> are very useful.</p>
  <p>I have been working on a server that gives a ∆∆G value and note if there are any nearby post-translational modifications, gnomAD or changes in potential linear motifs etc.: <a href="https://venus.sgc.ox.ac.uk/venus" rel="nofollow noreferrer">Venus</a> (unpublished). However, there are many ∆∆G calculation servers out there and are compared in many papers (<a href="https://pubs.acs.org/doi/10.1021/acs.jcim.0c00591" rel="nofollow noreferrer">example</a>), but it should be said that the dataset used in these comparisons is always ultra-biased despite how much is tried. <a href="http://missense3d.bc.ic.ac.uk/missense3d/" rel="nofollow noreferrer">Missense</a> by the Phyre2 group (Michael Sternberg) give detailed information of the neighbourhood changes the mutation causes.
  In terms of extra info, <a href="http://miscast.broadinstitute.org/" rel="nofollow noreferrer">Miscast</a> gives Uniprot info.</p>
  <h2>SIMBA-I via PyMOL</h2>
  <p>In terms of PyMOL, the <a href="https://pubs.acs.org/doi/abs/10.1021/acs.jcim.1c00201" rel="nofollow noreferrer">SIMBA-I algorithm</a> can be used by getting the RSA from it —I would not recommend it as it may underestimate the severity of unusual cases. But if one must, in PyMOL one can paste the following into the console with the wild type variant:</p>
  <pre><code># defined by you so change accordingly
  from_residue = '' # single letter
  to_residue = '' # single letter
  resi = 
  chain = ''
      
  ## data
  maxASA = {'A': 121.0, 'R': 265.0, 'N': 187.0, 'D': 187.0, 'C': 148.0, 'E': 214.0, 'Q': 214.0, 'G': 97.0, 'H': 216.0,\
            'I': 195.0, 'L': 191.0, 'K': 230.0, 'M': 203.0, 'F': 228.0, 'P': 154.0, 'S': 143.0, 'T': 163.0,\
                'W': 264.0, 'Y': 255.0, 'V': 165.0}
  volumes = {'A': 88.6, 'R': 173.4, 'N': 114.1, 'D': 111.1, 'C': 108.5, 'Q': 143.8, 'E': 138.4, 'G': 60.1,\
                 'H': 153.2, 'I': 166.7, 'L': 166.7, 'K': 168.6, 'M': 162.9, 'F': 189.9, 'P': 112.7, 'S': 89.0,\
                 'T': 116.1, 'W': 227.8, 'Y': 193.6, 'V': 140.0}
  hydrophobicities = {'A': 8.1, 'R': 10.5, 'N': 11.6, 'D': 13.0, 'C': 5.5, 'Q': 10.5, 'E': 12.3, 'G': 9.0,\
                      'H': 10.4, 'I': 5.2, 'L': 4.9, 'K': 11.3, 'M': 5.7, 'F': 5.2, 'P': 8.0, 'S': 9.2, 'T': 8.6,\
                      'W': 5.4, 'Y': 6.2, 'V': 5.9}
  cmd.set('dot_solvent', 1)
  cmd.set('dot_density', 3)
  sasa = cmd.get_area(f'resi {resi} and chain {chain}')
  rsa = sasa / maxASA[from_residue]
  offset = -1.6
  rsa_factor = +2.2
  dV_factor = +0.59
  dH_factor = -0.29
  rsa_dV_factor = -0.54
  rsa_dH_factor = +0.49
  # calculate
  dV = (volumes[to_residue] - volumes[from_residue]) / 100
  dH = (hydrophobicities[to_residue] - hydrophobicities[from_residue])
  simba = offset + rsa_factor * rsa + dV_factor * dV + dH_factor * dH + rsa_dV_factor * rsa * dV + rsa_dH_factor * rsa * dH
  print -simba  # negative stabilised, positive destabilised
  </code></pre>
  <h2>Human reasoning</h2>
  <p>However, the major problem with all the tools mentioned is that human reasoning is often required to read the literature and make a solid hypothesis.</p>
  <p>A resource I cannot stress enough, for human mutations, its utility is <a href="https://gnomad.broadinstitute.org/" rel="nofollow noreferrer">gnomAD</a>, which contains <em>phenotypically neutral</em> mutations: for example, one really ought to not claim a homozygous missense is pathogenic because it is causing a loss of function by destabilising the protein, yet there are homozygous truncations roaming around in the human population.</p>
  <p>The paper describing the crystal structure used and those of the homologues may point out key features which would missed by automated servers, such as secondary-structure elements that are speculated to perform certain roles.
  In fact, without doing any calculations seeing in PyMOL if a mutation causes a clash in the core of a protein, alters the active site, or changes a residue to a smaller one in a region known to alter conformation upon a given condition, is a lot more informative even if not quantitative...</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-09-03T10:00:33.683Z
Answers.LastActivityDate: 2021-09-19T14:11:34.780Z
Answers.LastEditDate: 2021-09-19T14:11:34.780Z
Answers.UserDisplayName: Matteo Ferla
Answers.Body: <p>You could run a molecular dynamics simulation for example with Gromacs or Charm. The problem with pymol is that the structure is static and you don't know how much tension that point mutation creates. First of all you would run an energy minimization to remove bad non-physical overlaps between atoms, then add solvent molecules, and then simulate your system first with position restraints for equilibration and then without for 1ns to 100ns+.</p>
  <p>Even then you cannot be sure that what comes out is the 'final' result as sometimes an induced fold change can take much longer. It depends on the system and the energy barriers included and the time scales that you are interested in. If the protein is large it may have many different physiologically relevant conformations and the point mutation might only change the equilibrium distribution of those states or totally prevent a transition.</p>
  <p>In case you have more than one crystal structure (in different conformations) you may introduce these point mutations in all of them and simulate them for a while. But it is not that trivial to setup such a simulation you should contact an expert. There are many things that can go wrong. Other software you could use are Modeller and Rosetta, if I am not mistaken.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-09-02T20:21:52.703Z
Answers.LastActivityDate: 2021-09-02T20:21:52.703Z
Answers.UserDisplayName: Soerendip
Answers.Body: <p>You could give <a href="http://www.bioinf.org.uk/mutations/saapdap/" rel="nofollow noreferrer">SAAPpred</a> a try.
  This tool uses machine learning (in the form of <code>random forest</code>) to predict the <strong>local</strong> effects of a single point mutation on the protein structure.</p>
  <p>I did my PhD in the group and I used SAAPpred to find the most (predicted) damaging mutations of G6PD, to then ran extensive MD simulations to evaluate the final stability of those mutants.</p>
  <p>Keep in mind that the tools doesn't return a structure, but just the possible/likely effects of that substitution.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-02-16T15:54:56.480Z
Answers.Text: Cool this looks good.
Answers.UserDisplayName: M__
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2023-11-01T07:09:18.880Z
Answers.Text: then ran extensive MD simulations to evaluate the final stability of those mutants..... Did You try to mutare the actual protein too ? Any interesting validation result ?
Answers.UserDisplayName: pippo1980
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-09-06T08:58:04.300Z
Answers.LastActivityDate: 2021-09-06T08:58:04.300Z
Answers.UserDisplayName: fra
Body: <p>I am trying to model how a specific point mutation would affect the protein structure.  So far, I've figured out how to create the point mutation in PyMOL using the mutagenesis wizard.  I'm not sure how to take the next step toward actually visualizing the consequences of the mutation though (i.e. would it disrupt a helix, etc).  Is there a way to do this in PyMOL, or would I need other software?  Thank you!</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2022-02-16T15:25:10.070Z
Comments.Text: I would have said the question lacked detail, but the answers are good. Duet and equivalents are good. Pymol creates mutations, but can't analyse them.
Comments.UserDisplayName: M__
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2022-02-16T20:37:35.640Z
Comments.Text: PyMOL just find the rotamer that causes the least clashes, it does not repack other nearby residues, alter the backbone or adopt a conformer that is not part of the rotamer set it knows, this is a problem in some complicated cases core cases, but in in most cases the clashes reflect what the ∆∆G may be so I have to reluctantly agree here...
Comments.UserDisplayName: Matteo Ferla
Tags: <pymol>
Title: How to see effect of point mutation in PyMOL?
ThreadText: # How to see effect of point mutation in PyMOL?
  
  (Asked by: username_0 on 2021-09-02)
  
  I am trying to model how a specific point mutation would affect the protein structure. So far, I've figured out how to create the point mutation in PyMOL using the mutagenesis wizard. I'm not sure how to take the next step toward actually visualizing the consequences of the mutation though (i.e. would it disrupt a helix, etc). Is there a way to do this in PyMOL, or would I need other software? Thank you!
  
  **Tags:** pymol
  
  > **Comments:**
  > **username_1**: I would have said the question lacked detail, but the answers are good. Duet and equivalents are good. Pymol creates mutations, but can't analyse them.  
  > **username_2**: PyMOL just find the rotamer that causes the least clashes, it does not repack other nearby residues, alter the backbone or adopt a conformer that is not part of the rotamer set it knows, this is a problem in some complicated cases core cases, but in in most cases the clashes reflect what the ∆∆G may be so I have to reluctantly agree here...  
  
  ---
  
  ## 3 answers
  
  ### Answer by username_2 on 2021-09-03. Score: 3
  
  A common metric used to assess if a mutation destabilises the structure is the difference in Gibbs free energy. PyMOL does not give a ∆∆G (difference in Gibbs free energy, kcal/mol), but a very crude steric clash nor does it repack neighbouring sidechains out of the way, or alter the backbone, so unfortunately is not the way forward. However, if one must there is a way (see SIMBAI below).
  
  ## Beyond destabilisation
  
  Destabilisation predictors have a ~60% or lower success at predicting if something is pathogenic ([ref](https://pubmed.ncbi.nlm.nih.gov/32958805/)). This is because the effect a mutation has on a protein is rather complicated as you can have destabilisation, but also aggregation, loss of regulation, mislocalisation, loss of binding to another protein, loss of binding to ligand, loss of activity (catalysis, inability to change conformation) etc etc. Then you can get curious subcases, such as loss of activity that result in the sequestration of a binding partner or homologues in a complex resulting in a worse phenotype than destabilisation or truncation.
  
  ## Modelling
  
  The behaviour of a protein can be assess by the energy of the system using [forcefields](https://en.wikipedia.org/wiki/Force_field_(chemistry)), which are multi-term equations that describes the atomic interactions (attraction, repulsion etc.). The result is the Gibbs free energy mentioned above, which is a potential, so negative is good. Kinetic energy is release when the unfolded protein "rolls down" down the potential energy funnel —[ProTherm dataset](https://academic.oup.com/nar/article/49/D1/D420/5983626) (an empirical dataset of ∆∆Gs) and the [tool SDM](http://marid.bioc.cam.ac.uk/sdm2) give this value inverted as the negative can be confusing.
  
  An uphill change in the Gibbs free energy (∆∆G > 0) generally correlates with a destabilisation of a protein —aggregation and solubility being the caveat in the "generally". The destabilisation a single state (static conformation) can be assessed. `gmx energy` in Gromacs, FoldX or Rosetta can be used for this.
  
  For altered ability to switch conformation steered MD simulations are required, but generally the ∆∆G at different states can be used.
  
  For the non-destabilisation options, <https://www.phosphosite.org/> and <http://elm.eu.org/> are very useful.
  
  I have been working on a server that gives a ∆∆G value and note if there are any nearby post-translational modifications, gnomAD or changes in potential linear motifs etc.: [Venus](https://venus.sgc.ox.ac.uk/venus) (unpublished). However, there are many ∆∆G calculation servers out there and are compared in many papers ([example](https://pubs.acs.org/doi/10.1021/acs.jcim.0c00591)), but it should be said that the dataset used in these comparisons is always ultra-biased despite how much is tried. [Missense](http://missense3d.bc.ic.ac.uk/missense3d/) by the Phyre2 group (Michael Sternberg) give detailed information of the neighbourhood changes the mutation causes.
  In terms of extra info, [Miscast](http://miscast.broadinstitute.org/) gives Uniprot info.
  
  ## SIMBA-I via PyMOL
  
  In terms of PyMOL, the [SIMBA-I algorithm](https://pubs.acs.org/doi/abs/10.1021/acs.jcim.1c00201) can be used by getting the RSA from it —I would not recommend it as it may underestimate the severity of unusual cases. But if one must, in PyMOL one can paste the following into the console with the wild type variant:
  
  ```
  # defined by you so change accordingly
  from_residue = '' # single letter
  to_residue = '' # single letter
  resi = 
  chain = ''
      
  ## data
  maxASA = {'A': 121.0, 'R': 265.0, 'N': 187.0, 'D': 187.0, 'C': 148.0, 'E': 214.0, 'Q': 214.0, 'G': 97.0, 'H': 216.0,\
            'I': 195.0, 'L': 191.0, 'K': 230.0, 'M': 203.0, 'F': 228.0, 'P': 154.0, 'S': 143.0, 'T': 163.0,\
                'W': 264.0, 'Y': 255.0, 'V': 165.0}
  volumes = {'A': 88.6, 'R': 173.4, 'N': 114.1, 'D': 111.1, 'C': 108.5, 'Q': 143.8, 'E': 138.4, 'G': 60.1,\
                 'H': 153.2, 'I': 166.7, 'L': 166.7, 'K': 168.6, 'M': 162.9, 'F': 189.9, 'P': 112.7, 'S': 89.0,\
                 'T': 116.1, 'W': 227.8, 'Y': 193.6, 'V': 140.0}
  hydrophobicities = {'A': 8.1, 'R': 10.5, 'N': 11.6, 'D': 13.0, 'C': 5.5, 'Q': 10.5, 'E': 12.3, 'G': 9.0,\
                      'H': 10.4, 'I': 5.2, 'L': 4.9, 'K': 11.3, 'M': 5.7, 'F': 5.2, 'P': 8.0, 'S': 9.2, 'T': 8.6,\
                      'W': 5.4, 'Y': 6.2, 'V': 5.9}
  cmd.set('dot_solvent', 1)
  cmd.set('dot_density', 3)
  sasa = cmd.get_area(f'resi {resi} and chain {chain}')
  rsa = sasa / maxASA[from_residue]
  offset = -1.6
  rsa_factor = +2.2
  dV_factor = +0.59
  dH_factor = -0.29
  rsa_dV_factor = -0.54
  rsa_dH_factor = +0.49
  # calculate
  dV = (volumes[to_residue] - volumes[from_residue]) / 100
  dH = (hydrophobicities[to_residue] - hydrophobicities[from_residue])
  simba = offset + rsa_factor * rsa + dV_factor * dV + dH_factor * dH + rsa_dV_factor * rsa * dV + rsa_dH_factor * rsa * dH
  print -simba  # negative stabilised, positive destabilised
  
  ```
  
  ## Human reasoning
  
  However, the major problem with all the tools mentioned is that human reasoning is often required to read the literature and make a solid hypothesis.
  
  A resource I cannot stress enough, for human mutations, its utility is [gnomAD](https://gnomad.broadinstitute.org/), which contains *phenotypically neutral* mutations: for example, one really ought to not claim a homozygous missense is pathogenic because it is causing a loss of function by destabilising the protein, yet there are homozygous truncations roaming around in the human population.
  
  The paper describing the crystal structure used and those of the homologues may point out key features which would missed by automated servers, such as secondary-structure elements that are speculated to perform certain roles.
  In fact, without doing any calculations seeing in PyMOL if a mutation causes a clash in the core of a protein, alters the active site, or changes a residue to a smaller one in a region known to alter conformation upon a given condition, is a lot more informative even if not quantitative...
  
  
  ---
  
  ### Answer by username_3 on 2021-09-02. Score: 1
  
  You could run a molecular dynamics simulation for example with Gromacs or Charm. The problem with pymol is that the structure is static and you don't know how much tension that point mutation creates. First of all you would run an energy minimization to remove bad non-physical overlaps between atoms, then add solvent molecules, and then simulate your system first with position restraints for equilibration and then without for 1ns to 100ns+.
  
  Even then you cannot be sure that what comes out is the 'final' result as sometimes an induced fold change can take much longer. It depends on the system and the energy barriers included and the time scales that you are interested in. If the protein is large it may have many different physiologically relevant conformations and the point mutation might only change the equilibrium distribution of those states or totally prevent a transition.
  
  In case you have more than one crystal structure (in different conformations) you may introduce these point mutations in all of them and simulate them for a while. But it is not that trivial to setup such a simulation you should contact an expert. There are many things that can go wrong. Other software you could use are Modeller and Rosetta, if I am not mistaken.
  
  
  ---
  
  ### Answer by username_4 on 2021-09-06. Score: 1
  
  You could give [SAAPpred](http://www.bioinf.org.uk/mutations/saapdap/) a try.
  This tool uses machine learning (in the form of `random forest`) to predict the **local** effects of a single point mutation on the protein structure.
  
  I did my PhD in the group and I used SAAPpred to find the most (predicted) damaging mutations of G6PD, to then ran extensive MD simulations to evaluate the final stability of those mutants.
  
  Keep in mind that the tools doesn't return a structure, but just the possible/likely effects of that substitution.
  
  > **Comments:**
  > **username_1**: Cool this looks good.  
  > **username_5**: then ran extensive MD simulations to evaluate the final stability of those mutants..... Did You try to mutare the actual protein too ? Any interesting validation result ?  
  
  ---
  
  