Use values printed from Log inside a script (e.g. RMSD)
Dear ChimeraX Admins,
I was hoping to use the “rmsd” command in ChimeraX to measure distances between models within a .py script.
Is there a way to use the output of “rmsd” (or generally any other output in Log) within the script? For example, if rmsd > 2 Angstroms, then do X.
Ultimately, I am attempting to align chains between models. Because my protein is asymmetric, chain A on Model #1 might actually be chain B on Model #2. I was hoping to use “rmsd” to map one chain to the other. Is it a better idea to do this in another program and re-write chain IDs in the .PDB file? If so, what other program would be better at making RMSD calculations between .PDB chains?
Thank you, Steven Truong Cambridge University
Steven,
I can't answer the second part of your question, but the RMSD can be obtained from the "run" function in python:
``` from chimerax.core.commands import run
value = run(session, "rmsd #1 to #2") if value > 2: # do stuff ```
Best,
Tony ________________________________ From: ChimeraX-users chimerax-users-bounces@cgl.ucsf.edu on behalf of Steven Truong via ChimeraX-users chimerax-users@cgl.ucsf.edu Sent: Tuesday, October 12, 2021 3:39 PM To: ChimeraX Users Help chimerax-users@cgl.ucsf.edu Subject: [chimerax-users] Use values printed from Log inside a script (e.g. RMSD)
[EXTERNAL SENDER - PROCEED CAUTIOUSLY]
Dear ChimeraX Admins,
I was hoping to use the “rmsd” command in ChimeraX to measure distances between models within a .py script.
Is there a way to use the output of “rmsd” (or generally any other output in Log) within the script? For example, if rmsd > 2 Angstroms, then do X.
Ultimately, I am attempting to align chains between models. Because my protein is asymmetric, chain A on Model #1 might actually be chain B on Model #2. I was hoping to use “rmsd” to map one chain to the other. Is it a better idea to do this in another program and re-write chain IDs in the .PDB file? If so, what other program would be better at making RMSD calculations between .PDB chains?
Thank you, Steven Truong Cambridge University
_______________________________________________ ChimeraX-users mailing list ChimeraX-users@cgl.ucsf.edu Manage subscription: https://www.rbvi.ucsf.edu/mailman/listinfo/chimerax-users
Hi Steven,
On Oct 12, 2021, at 12:39 PM, Steven Truong via ChimeraX-users chimerax-users@cgl.ucsf.edu wrote:
Dear ChimeraX Admins,
I was hoping to use the “rmsd” command in ChimeraX to measure distances between models within a .py script.
Is there a way to use the output of “rmsd” (or generally any other output in Log) within the script? For example, if rmsd > 2 Angstroms, then do X.
Tony answered this.
Ultimately, I am attempting to align chains between models. Because my protein is asymmetric, chain A on Model #1 might actually be chain B on Model #2. I was hoping to use “rmsd” to map one chain to the other. Is it a better idea to do this in another program and re-write chain IDs in the .PDB file? If so, what other program would be better at making RMSD calculations between .PDB chains?
Do these chains have the same sequence? Also, I'm a little uncertain what "map one chain to the other" means exactly. At any rate, the matchmaker https://www.cgl.ucsf.edu/chimerax/docs/user/commands/matchmaker.html command can be used to superimpose one chain onto another and report the backbone (CA or C4'/P) RMSD for the match. By default matchmaker iterates its match, pruning off poorly matching regions and re-matching to get a good fitting "core" match, and will report RMSD values for both the core region and across the entire sequence. You can turn off the iteration if desired with matchmaker's "cutoffDistance none" option.
--Eric
Eric Pettersen UCSF Computer Graphics Lab
Thank you, Steven Truong Cambridge University
ChimeraX-users mailing list ChimeraX-users@cgl.ucsf.edu Manage subscription: https://www.rbvi.ucsf.edu/mailman/listinfo/chimerax-users
Hi Eric, Tony, et al.,
Thank you for answering my question. For now, I’ll be doing what Tony suggested re: assigning a value with the RMSD command. Currently, I’m having issues with using “rmsd” by itself (it seems like rmsdAlign is the only valid command). I’m assuming this is the same command, just named differently.
Re: your inquiry, the protein does have the same sequences. However, the chain ID is critical, since I am attempting to “stitch” fragments of proteins at different residues. For example, if I align a fragment to the wrong chain, it will have a bond hanging on the other side of the protein (not good!). This stitching can be done manually (e.g. if it’s not the right chain or residue ID, I can simply move the fragment), but I am trying to automate this process via Python scripts. Additionally, I have been doing the bond-forming on Chimera (with the command “bond”). I’m not sure if there’s a better way of going about this, but my idea currently is to 1. Identify which chains match up, 2. Align fragments from 1 protein to the other (which may have different chain ID identifiers), 3. Make bonds on Chimera.
Many thanks, Steven
On Oct 12, 2021, at 9:31 PM, Eric Pettersen <pett@cgl.ucsf.edumailto:pett@cgl.ucsf.edu> wrote:
Hi Steven,
On Oct 12, 2021, at 12:39 PM, Steven Truong via ChimeraX-users <chimerax-users@cgl.ucsf.edumailto:chimerax-users@cgl.ucsf.edu> wrote:
Dear ChimeraX Admins,
I was hoping to use the “rmsd” command in ChimeraX to measure distances between models within a .py script.
Is there a way to use the output of “rmsd” (or generally any other output in Log) within the script? For example, if rmsd > 2 Angstroms, then do X.
Tony answered this.
Ultimately, I am attempting to align chains between models. Because my protein is asymmetric, chain A on Model #1 might actually be chain B on Model #2. I was hoping to use “rmsd” to map one chain to the other. Is it a better idea to do this in another program and re-write chain IDs in the .PDB file? If so, what other program would be better at making RMSD calculations between .PDB chains?
Do these chains have the same sequence? Also, I'm a little uncertain what "map one chain to the other" means exactly. At any rate, the matchmakerhttps://www.cgl.ucsf.edu/chimerax/docs/user/commands/matchmaker.html command can be used to superimpose one chain onto another and report the backbone (CA or C4'/P) RMSD for the match. By default matchmaker iterates its match, pruning off poorly matching regions and re-matching to get a good fitting "core" match, and will report RMSD values for both the core region and across the entire sequence. You can turn off the iteration if desired with matchmaker's "cutoffDistance none" option.
--Eric
Eric Pettersen UCSF Computer Graphics Lab
Thank you, Steven Truong Cambridge University
_______________________________________________ ChimeraX-users mailing list ChimeraX-users@cgl.ucsf.edumailto:ChimeraX-users@cgl.ucsf.edu Manage subscription: https://plato.cgl.ucsf.edu/mailman/listinfo/chimerax-users
Steven,
rmsdAlign is not the same command - it is from my SEQCROW bundle. rmsdAlign does not return the RMSD value (yet). It also uses the entire model, not subsets of models. I will likely change this at some point.
When I use "rmsd" on the command line, it uses the built-in rmsd command. I need to type out "rmsdA" at least to use rmsdAlign. If "rmsd" defaults to rmsdAlign for you, I can rename rmsdAlign in a quick patch.
Best,
Tony ________________________________ From: ChimeraX-users chimerax-users-bounces@cgl.ucsf.edu on behalf of Steven Truong via ChimeraX-users chimerax-users@cgl.ucsf.edu Sent: Tuesday, October 12, 2021 5:39 PM To: Eric Pettersen pett@cgl.ucsf.edu Cc: ChimeraX Users Help chimerax-users@cgl.ucsf.edu Subject: Re: [chimerax-users] Use values printed from Log inside a script (e.g. RMSD)
[EXTERNAL SENDER - PROCEED CAUTIOUSLY]
Hi Eric, Tony, et al.,
Thank you for answering my question. For now, I’ll be doing what Tony suggested re: assigning a value with the RMSD command. Currently, I’m having issues with using “rmsd” by itself (it seems like rmsdAlign is the only valid command). I’m assuming this is the same command, just named differently.
Re: your inquiry, the protein does have the same sequences. However, the chain ID is critical, since I am attempting to “stitch” fragments of proteins at different residues. For example, if I align a fragment to the wrong chain, it will have a bond hanging on the other side of the protein (not good!). This stitching can be done manually (e.g. if it’s not the right chain or residue ID, I can simply move the fragment), but I am trying to automate this process via Python scripts. Additionally, I have been doing the bond-forming on Chimera (with the command “bond”). I’m not sure if there’s a better way of going about this, but my idea currently is to 1. Identify which chains match up, 2. Align fragments from 1 protein to the other (which may have different chain ID identifiers), 3. Make bonds on Chimera.
Many thanks, Steven
On Oct 12, 2021, at 9:31 PM, Eric Pettersen <pett@cgl.ucsf.edumailto:pett@cgl.ucsf.edu> wrote:
Hi Steven,
On Oct 12, 2021, at 12:39 PM, Steven Truong via ChimeraX-users <chimerax-users@cgl.ucsf.edumailto:chimerax-users@cgl.ucsf.edu> wrote:
Dear ChimeraX Admins,
I was hoping to use the “rmsd” command in ChimeraX to measure distances between models within a .py script.
Is there a way to use the output of “rmsd” (or generally any other output in Log) within the script? For example, if rmsd > 2 Angstroms, then do X.
Tony answered this.
Ultimately, I am attempting to align chains between models. Because my protein is asymmetric, chain A on Model #1 might actually be chain B on Model #2. I was hoping to use “rmsd” to map one chain to the other. Is it a better idea to do this in another program and re-write chain IDs in the .PDB file? If so, what other program would be better at making RMSD calculations between .PDB chains?
Do these chains have the same sequence? Also, I'm a little uncertain what "map one chain to the other" means exactly. At any rate, the matchmakerhttps://www.cgl.ucsf.edu/chimerax/docs/user/commands/matchmaker.html command can be used to superimpose one chain onto another and report the backbone (CA or C4'/P) RMSD for the match. By default matchmaker iterates its match, pruning off poorly matching regions and re-matching to get a good fitting "core" match, and will report RMSD values for both the core region and across the entire sequence. You can turn off the iteration if desired with matchmaker's "cutoffDistance none" option.
--Eric
Eric Pettersen UCSF Computer Graphics Lab
Thank you, Steven Truong Cambridge University
_______________________________________________ ChimeraX-users mailing list ChimeraX-users@cgl.ucsf.edumailto:ChimeraX-users@cgl.ucsf.edu Manage subscription: https://www.rbvi.ucsf.edu/mailman/listinfo/chimerax-users
Hi Steven, Are you using a super-ancient version of ChimeraX? I'm not aware if there was ever an rmsdAlign command. By command I mean what you would type into the actual command line or use in a command file. Maybe there is some other way to access the functionality via python.
However, if the structures are not already superimposed, you may want to use the "align" command instead of the "rmsd" command ... the former calculates a best-fit RMSD whereas the latter just calculates RMSD in the current positions without trying to superimpose/fit them, so if the structures are in some random positions relative to each other you will get a huge value.
align https://rbvi.ucsf.edu/chimerax/docs/user/commands/align.html
rmsd https://rbvi.ucsf.edu/chimerax/docs/user/commands/rmsd.html
Best, Elaine ----- Elaine C. Meng, Ph.D. UCSF Chimera(X) team Department of Pharmaceutical Chemistry University of California, San Francisco
On Oct 12, 2021, at 2:39 PM, Steven Truong via ChimeraX-users chimerax-users@cgl.ucsf.edu wrote:
Hi Eric, Tony, et al.,
Thank you for answering my question. For now, I’ll be doing what Tony suggested re: assigning a value with the RMSD command. Currently, I’m having issues with using “rmsd” by itself (it seems like rmsdAlign is the only valid command). I’m assuming this is the same command, just named differently.
Re: your inquiry, the protein does have the same sequences. However, the chain ID is critical, since I am attempting to “stitch” fragments of proteins at different residues. For example, if I align a fragment to the wrong chain, it will have a bond hanging on the other side of the protein (not good!). This stitching can be done manually (e.g. if it’s not the right chain or residue ID, I can simply move the fragment), but I am trying to automate this process via Python scripts. Additionally, I have been doing the bond-forming on Chimera (with the command “bond”). I’m not sure if there’s a better way of going about this, but my idea currently is to 1. Identify which chains match up, 2. Align fragments from 1 protein to the other (which may have different chain ID identifiers), 3. Make bonds on Chimera.
Many thanks, Steven
On Oct 12, 2021, at 9:31 PM, Eric Pettersen pett@cgl.ucsf.edu wrote:
Hi Steven,
On Oct 12, 2021, at 12:39 PM, Steven Truong via ChimeraX-users chimerax-users@cgl.ucsf.edu wrote:
Dear ChimeraX Admins,
I was hoping to use the “rmsd” command in ChimeraX to measure distances between models within a .py script.
Is there a way to use the output of “rmsd” (or generally any other output in Log) within the script? For example, if rmsd > 2 Angstroms, then do X.
Tony answered this.
Ultimately, I am attempting to align chains between models. Because my protein is asymmetric, chain A on Model #1 might actually be chain B on Model #2. I was hoping to use “rmsd” to map one chain to the other. Is it a better idea to do this in another program and re-write chain IDs in the .PDB file? If so, what other program would be better at making RMSD calculations between .PDB chains?
Do these chains have the same sequence? Also, I'm a little uncertain what "map one chain to the other" means exactly. At any rate, the matchmaker command can be used to superimpose one chain onto another and report the backbone (CA or C4'/P) RMSD for the match. By default matchmaker iterates its match, pruning off poorly matching regions and re-matching to get a good fitting "core" match, and will report RMSD values for both the core region and across the entire sequence. You can turn off the iteration if desired with matchmaker's "cutoffDistance none" option.
--Eric
Eric Pettersen UCSF Computer Graphics Lab
Thank you, Steven Truong Cambridge University
Hi Tony and Elaine,
I am currently using ChimeraX-1.1.1. I think I may have found the issue then. Whenever I type “rmsd” in the command line, it defaults to rmsdAlign. Is there a way to fix this? I’m not sure if it’s a bug or something I did on my end.
You can see this in the screenshot below (I typed rmsd and get rmsdAlign in the log).
[cid:67EE263D-997E-490B-9A0B-2178D2833EFE]
Thank you for the help, Steven
On Oct 12, 2021, at 11:48 PM, Elaine Meng <meng@cgl.ucsf.edumailto:meng@cgl.ucsf.edu> wrote:
Hi Steven, Are you using a super-ancient version of ChimeraX? I'm not aware if there was ever an rmsdAlign command. By command I mean what you would type into the actual command line or use in a command file. Maybe there is some other way to access the functionality via python.
However, if the structures are not already superimposed, you may want to use the "align" command instead of the "rmsd" command ... the former calculates a best-fit RMSD whereas the latter just calculates RMSD in the current positions without trying to superimpose/fit them, so if the structures are in some random positions relative to each other you will get a huge value.
align https://rbvi.ucsf.edu/chimerax/docs/user/commands/align.html
rmsd https://rbvi.ucsf.edu/chimerax/docs/user/commands/rmsd.html
Best, Elaine ----- Elaine C. Meng, Ph.D. UCSF Chimera(X) team Department of Pharmaceutical Chemistry University of California, San Francisco
On Oct 12, 2021, at 2:39 PM, Steven Truong via ChimeraX-users <chimerax-users@cgl.ucsf.edumailto:chimerax-users@cgl.ucsf.edu> wrote:
Hi Eric, Tony, et al.,
Thank you for answering my question. For now, I’ll be doing what Tony suggested re: assigning a value with the RMSD command. Currently, I’m having issues with using “rmsd” by itself (it seems like rmsdAlign is the only valid command). I’m assuming this is the same command, just named differently.
Re: your inquiry, the protein does have the same sequences. However, the chain ID is critical, since I am attempting to “stitch” fragments of proteins at different residues. For example, if I align a fragment to the wrong chain, it will have a bond hanging on the other side of the protein (not good!). This stitching can be done manually (e.g. if it’s not the right chain or residue ID, I can simply move the fragment), but I am trying to automate this process via Python scripts. Additionally, I have been doing the bond-forming on Chimera (with the command “bond”). I’m not sure if there’s a better way of going about this, but my idea currently is to 1. Identify which chains match up, 2. Align fragments from 1 protein to the other (which may have different chain ID identifiers), 3. Make bonds on Chimera.
Many thanks, Steven
On Oct 12, 2021, at 9:31 PM, Eric Pettersen <pett@cgl.ucsf.edumailto:pett@cgl.ucsf.edu> wrote:
Hi Steven,
On Oct 12, 2021, at 12:39 PM, Steven Truong via ChimeraX-users <chimerax-users@cgl.ucsf.edumailto:chimerax-users@cgl.ucsf.edu> wrote:
Dear ChimeraX Admins,
I was hoping to use the “rmsd” command in ChimeraX to measure distances between models within a .py script.
Is there a way to use the output of “rmsd” (or generally any other output in Log) within the script? For example, if rmsd > 2 Angstroms, then do X.
Tony answered this.
Ultimately, I am attempting to align chains between models. Because my protein is asymmetric, chain A on Model #1 might actually be chain B on Model #2. I was hoping to use “rmsd” to map one chain to the other. Is it a better idea to do this in another program and re-write chain IDs in the .PDB file? If so, what other program would be better at making RMSD calculations between .PDB chains?
Do these chains have the same sequence? Also, I'm a little uncertain what "map one chain to the other" means exactly. At any rate, the matchmaker command can be used to superimpose one chain onto another and report the backbone (CA or C4'/P) RMSD for the match. By default matchmaker iterates its match, pruning off poorly matching regions and re-matching to get a good fitting "core" match, and will report RMSD values for both the core region and across the entire sequence. You can turn off the iteration if desired with matchmaker's "cutoffDistance none" option.
--Eric
Eric Pettersen UCSF Computer Graphics Lab
Thank you, Steven Truong Cambridge University
Hi Steven, Get a newer version of ChimeraX. The "rmsd" command was added over a year ago, but it was after the 1.1 release.
https://www.rbvi.ucsf.edu/trac/ChimeraX/wiki/ChangeLog
If you used the User Guide from the Help menu it would be synchronized with the version you actually downloaded, and not have the "rmsd" command. I guess you searched online and found documentation newer than your software.
I hope this helps, Elaine ----- Elaine C. Meng, Ph.D. UCSF Chimera(X) team Department of Pharmaceutical Chemistry University of California, San Francisco
On Oct 12, 2021, at 4:18 PM, Steven Truong via ChimeraX-users chimerax-users@cgl.ucsf.edu wrote:
Hi Tony and Elaine,
I am currently using ChimeraX-1.1.1. I think I may have found the issue then. Whenever I type “rmsd” in the command line, it defaults to rmsdAlign. Is there a way to fix this? I’m not sure if it’s a bug or something I did on my end.
You can see this in the screenshot below (I typed rmsd and get rmsdAlign in the log).
<PastedGraphic-1.png>
Thank you for the help, Steven
On Oct 12, 2021, at 11:48 PM, Elaine Meng meng@cgl.ucsf.edu wrote:
Hi Steven, Are you using a super-ancient version of ChimeraX? I'm not aware if there was ever an rmsdAlign command. By command I mean what you would type into the actual command line or use in a command file. Maybe there is some other way to access the functionality via python.
However, if the structures are not already superimposed, you may want to use the "align" command instead of the "rmsd" command ... the former calculates a best-fit RMSD whereas the latter just calculates RMSD in the current positions without trying to superimpose/fit them, so if the structures are in some random positions relative to each other you will get a huge value.
align https://rbvi.ucsf.edu/chimerax/docs/user/commands/align.html
rmsd https://rbvi.ucsf.edu/chimerax/docs/user/commands/rmsd.html
Best, Elaine
Elaine C. Meng, Ph.D. UCSF Chimera(X) team Department of Pharmaceutical Chemistry University of California, San Francisco
On Oct 12, 2021, at 2:39 PM, Steven Truong via ChimeraX-users chimerax-users@cgl.ucsf.edu wrote:
Hi Eric, Tony, et al.,
Thank you for answering my question. For now, I’ll be doing what Tony suggested re: assigning a value with the RMSD command. Currently, I’m having issues with using “rmsd” by itself (it seems like rmsdAlign is the only valid command). I’m assuming this is the same command, just named differently.
Re: your inquiry, the protein does have the same sequences. However, the chain ID is critical, since I am attempting to “stitch” fragments of proteins at different residues. For example, if I align a fragment to the wrong chain, it will have a bond hanging on the other side of the protein (not good!). This stitching can be done manually (e.g. if it’s not the right chain or residue ID, I can simply move the fragment), but I am trying to automate this process via Python scripts. Additionally, I have been doing the bond-forming on Chimera (with the command “bond”). I’m not sure if there’s a better way of going about this, but my idea currently is to 1. Identify which chains match up, 2. Align fragments from 1 protein to the other (which may have different chain ID identifiers), 3. Make bonds on Chimera.
Many thanks, Steven
On Oct 12, 2021, at 9:31 PM, Eric Pettersen pett@cgl.ucsf.edu wrote:
Hi Steven,
On Oct 12, 2021, at 12:39 PM, Steven Truong via ChimeraX-users chimerax-users@cgl.ucsf.edu wrote:
Dear ChimeraX Admins,
I was hoping to use the “rmsd” command in ChimeraX to measure distances between models within a .py script.
Is there a way to use the output of “rmsd” (or generally any other output in Log) within the script? For example, if rmsd > 2 Angstroms, then do X.
Tony answered this.
Ultimately, I am attempting to align chains between models. Because my protein is asymmetric, chain A on Model #1 might actually be chain B on Model #2. I was hoping to use “rmsd” to map one chain to the other. Is it a better idea to do this in another program and re-write chain IDs in the .PDB file? If so, what other program would be better at making RMSD calculations between .PDB chains?
Do these chains have the same sequence? Also, I'm a little uncertain what "map one chain to the other" means exactly. At any rate, the matchmaker command can be used to superimpose one chain onto another and report the backbone (CA or C4'/P) RMSD for the match. By default matchmaker iterates its match, pruning off poorly matching regions and re-matching to get a good fitting "core" match, and will report RMSD values for both the core region and across the entire sequence. You can turn off the iteration if desired with matchmaker's "cutoffDistance none" option.
--Eric
Eric Pettersen UCSF Computer Graphics Lab
Thank you, Steven Truong Cambridge University
ChimeraX-users mailing list ChimeraX-users@cgl.ucsf.edu Manage subscription: https://www.rbvi.ucsf.edu/mailman/listinfo/chimerax-users
Steven,
Uninstalling SEQCROW should allow you to use the regular rmsd command. I will update SEQCROW to change the name of the rmsdAlign command to avoid this type of conflict, though the update will not be compatible with ChimeraX 1.1.1. There were significant changes between ChimeraX 1.1 and 1.2, so I'd have to go back pretty far to get things to work with 1.1-era ChimeraX.
You can uninstall SEQCROW by running "toolshed uninstall SEQCROW"
Tony ________________________________ From: ChimeraX-users chimerax-users-bounces@cgl.ucsf.edu on behalf of Steven Truong via ChimeraX-users chimerax-users@cgl.ucsf.edu Sent: Tuesday, October 12, 2021 7:18 PM To: ChimeraX Users Help ChimeraX-users@cgl.ucsf.edu Subject: Re: [chimerax-users] Use values printed from Log inside a script (e.g. RMSD)
[EXTERNAL SENDER - PROCEED CAUTIOUSLY]
Hi Tony and Elaine,
I am currently using ChimeraX-1.1.1. I think I may have found the issue then. Whenever I type “rmsd” in the command line, it defaults to rmsdAlign. Is there a way to fix this? I’m not sure if it’s a bug or something I did on my end.
You can see this in the screenshot below (I typed rmsd and get rmsdAlign in the log).
[cid:67EE263D-997E-490B-9A0B-2178D2833EFE]
Thank you for the help, Steven
On Oct 12, 2021, at 11:48 PM, Elaine Meng <meng@cgl.ucsf.edumailto:meng@cgl.ucsf.edu> wrote:
Hi Steven, Are you using a super-ancient version of ChimeraX? I'm not aware if there was ever an rmsdAlign command. By command I mean what you would type into the actual command line or use in a command file. Maybe there is some other way to access the functionality via python.
However, if the structures are not already superimposed, you may want to use the "align" command instead of the "rmsd" command ... the former calculates a best-fit RMSD whereas the latter just calculates RMSD in the current positions without trying to superimpose/fit them, so if the structures are in some random positions relative to each other you will get a huge value.
align https://rbvi.ucsf.edu/chimerax/docs/user/commands/align.html
rmsd https://rbvi.ucsf.edu/chimerax/docs/user/commands/rmsd.html
Best, Elaine ----- Elaine C. Meng, Ph.D. UCSF Chimera(X) team Department of Pharmaceutical Chemistry University of California, San Francisco
On Oct 12, 2021, at 2:39 PM, Steven Truong via ChimeraX-users <chimerax-users@cgl.ucsf.edumailto:chimerax-users@cgl.ucsf.edu> wrote:
Hi Eric, Tony, et al.,
Thank you for answering my question. For now, I’ll be doing what Tony suggested re: assigning a value with the RMSD command. Currently, I’m having issues with using “rmsd” by itself (it seems like rmsdAlign is the only valid command). I’m assuming this is the same command, just named differently.
Re: your inquiry, the protein does have the same sequences. However, the chain ID is critical, since I am attempting to “stitch” fragments of proteins at different residues. For example, if I align a fragment to the wrong chain, it will have a bond hanging on the other side of the protein (not good!). This stitching can be done manually (e.g. if it’s not the right chain or residue ID, I can simply move the fragment), but I am trying to automate this process via Python scripts. Additionally, I have been doing the bond-forming on Chimera (with the command “bond”). I’m not sure if there’s a better way of going about this, but my idea currently is to 1. Identify which chains match up, 2. Align fragments from 1 protein to the other (which may have different chain ID identifiers), 3. Make bonds on Chimera.
Many thanks, Steven
On Oct 12, 2021, at 9:31 PM, Eric Pettersen <pett@cgl.ucsf.edumailto:pett@cgl.ucsf.edu> wrote:
Hi Steven,
On Oct 12, 2021, at 12:39 PM, Steven Truong via ChimeraX-users <chimerax-users@cgl.ucsf.edumailto:chimerax-users@cgl.ucsf.edu> wrote:
Dear ChimeraX Admins,
I was hoping to use the “rmsd” command in ChimeraX to measure distances between models within a .py script.
Is there a way to use the output of “rmsd” (or generally any other output in Log) within the script? For example, if rmsd > 2 Angstroms, then do X.
Tony answered this.
Ultimately, I am attempting to align chains between models. Because my protein is asymmetric, chain A on Model #1 might actually be chain B on Model #2. I was hoping to use “rmsd” to map one chain to the other. Is it a better idea to do this in another program and re-write chain IDs in the .PDB file? If so, what other program would be better at making RMSD calculations between .PDB chains?
Do these chains have the same sequence? Also, I'm a little uncertain what "map one chain to the other" means exactly. At any rate, the matchmaker command can be used to superimpose one chain onto another and report the backbone (CA or C4'/P) RMSD for the match. By default matchmaker iterates its match, pruning off poorly matching regions and re-matching to get a good fitting "core" match, and will report RMSD values for both the core region and across the entire sequence. You can turn off the iteration if desired with matchmaker's "cutoffDistance none" option.
--Eric
Eric Pettersen UCSF Computer Graphics Lab
Thank you, Steven Truong Cambridge University
There is no conflict. If Steven had a newer version of ChimeraX then "rmsd" would execute the rmsd command and not rmsdAlign, whereas "rmsdA" would execute rmsdAlign and not rmsd.
--Eric
On Oct 12, 2021, at 4:34 PM, Anthony James Schaefer via ChimeraX-users chimerax-users@cgl.ucsf.edu wrote:
Steven,
Uninstalling SEQCROW should allow you to use the regular rmsd command. I will update SEQCROW to change the name of the rmsdAlign command to avoid this type of conflict, though the update will not be compatible with ChimeraX 1.1.1. There were significant changes between ChimeraX 1.1 and 1.2, so I'd have to go back pretty far to get things to work with 1.1-era ChimeraX.
You can uninstall SEQCROW by running "toolshed uninstall SEQCROW"
Tony From: ChimeraX-users <chimerax-users-bounces@cgl.ucsf.edu mailto:chimerax-users-bounces@cgl.ucsf.edu> on behalf of Steven Truong via ChimeraX-users <chimerax-users@cgl.ucsf.edu mailto:chimerax-users@cgl.ucsf.edu> Sent: Tuesday, October 12, 2021 7:18 PM To: ChimeraX Users Help <ChimeraX-users@cgl.ucsf.edu mailto:ChimeraX-users@cgl.ucsf.edu> Subject: Re: [chimerax-users] Use values printed from Log inside a script (e.g. RMSD)
[EXTERNAL SENDER - PROCEED CAUTIOUSLY]
Hi Tony and Elaine,
I am currently using ChimeraX-1.1.1. I think I may have found the issue then. Whenever I type “rmsd” in the command line, it defaults to rmsdAlign. Is there a way to fix this? I’m not sure if it’s a bug or something I did on my end.
You can see this in the screenshot below (I typed rmsd and get rmsdAlign in the log).
<PastedGraphic-1.png>
Thank you for the help, Steven
On Oct 12, 2021, at 11:48 PM, Elaine Meng <meng@cgl.ucsf.edu mailto:meng@cgl.ucsf.edu> wrote:
Hi Steven, Are you using a super-ancient version of ChimeraX? I'm not aware if there was ever an rmsdAlign command. By command I mean what you would type into the actual command line or use in a command file. Maybe there is some other way to access the functionality via python.
However, if the structures are not already superimposed, you may want to use the "align" command instead of the "rmsd" command ... the former calculates a best-fit RMSD whereas the latter just calculates RMSD in the current positions without trying to superimpose/fit them, so if the structures are in some random positions relative to each other you will get a huge value.
align <https://rbvi.ucsf.edu/chimerax/docs/user/commands/align.html https://rbvi.ucsf.edu/chimerax/docs/user/commands/align.html>
rmsd <https://rbvi.ucsf.edu/chimerax/docs/user/commands/rmsd.html https://rbvi.ucsf.edu/chimerax/docs/user/commands/rmsd.html>
Best, Elaine
Elaine C. Meng, Ph.D. UCSF Chimera(X) team Department of Pharmaceutical Chemistry University of California, San Francisco
On Oct 12, 2021, at 2:39 PM, Steven Truong via ChimeraX-users <chimerax-users@cgl.ucsf.edu mailto:chimerax-users@cgl.ucsf.edu> wrote:
Hi Eric, Tony, et al.,
Thank you for answering my question. For now, I’ll be doing what Tony suggested re: assigning a value with the RMSD command. Currently, I’m having issues with using “rmsd” by itself (it seems like rmsdAlign is the only valid command). I’m assuming this is the same command, just named differently.
Re: your inquiry, the protein does have the same sequences. However, the chain ID is critical, since I am attempting to “stitch” fragments of proteins at different residues. For example, if I align a fragment to the wrong chain, it will have a bond hanging on the other side of the protein (not good!). This stitching can be done manually (e.g. if it’s not the right chain or residue ID, I can simply move the fragment), but I am trying to automate this process via Python scripts. Additionally, I have been doing the bond-forming on Chimera (with the command “bond”). I’m not sure if there’s a better way of going about this, but my idea currently is to 1. Identify which chains match up, 2. Align fragments from 1 protein to the other (which may have different chain ID identifiers), 3. Make bonds on Chimera.
Many thanks, Steven
On Oct 12, 2021, at 9:31 PM, Eric Pettersen <pett@cgl.ucsf.edu mailto:pett@cgl.ucsf.edu> wrote:
Hi Steven,
On Oct 12, 2021, at 12:39 PM, Steven Truong via ChimeraX-users <chimerax-users@cgl.ucsf.edu mailto:chimerax-users@cgl.ucsf.edu> wrote:
Dear ChimeraX Admins,
I was hoping to use the “rmsd” command in ChimeraX to measure distances between models within a .py script.
Is there a way to use the output of “rmsd” (or generally any other output in Log) within the script? For example, if rmsd > 2 Angstroms, then do X.
Tony answered this.
Ultimately, I am attempting to align chains between models. Because my protein is asymmetric, chain A on Model #1 might actually be chain B on Model #2. I was hoping to use “rmsd” to map one chain to the other. Is it a better idea to do this in another program and re-write chain IDs in the .PDB file? If so, what other program would be better at making RMSD calculations between .PDB chains?
Do these chains have the same sequence? Also, I'm a little uncertain what "map one chain to the other" means exactly. At any rate, the matchmaker command can be used to superimpose one chain onto another and report the backbone (CA or C4'/P) RMSD for the match. By default matchmaker iterates its match, pruning off poorly matching regions and re-matching to get a good fitting "core" match, and will report RMSD values for both the core region and across the entire sequence. You can turn off the iteration if desired with matchmaker's "cutoffDistance none" option.
--Eric
Eric Pettersen UCSF Computer Graphics Lab
Thank you, Steven Truong Cambridge University
ChimeraX-users mailing list ChimeraX-users@cgl.ucsf.edu Manage subscription: https://www.rbvi.ucsf.edu/mailman/listinfo/chimerax-users
Eric,
I see. I thought rmsd had been in ChimeraX for a long time, but I must have been thinking of Chimera.
Thanks,
Tony ________________________________ From: Eric Pettersen pett@cgl.ucsf.edu Sent: Tuesday, October 12, 2021 7:38 PM To: Anthony James Schaefer tony.schaefer@uga.edu Cc: ChimeraX Users Help ChimeraX-users@cgl.ucsf.edu; Steven Truong sdt45@cam.ac.uk Subject: Re: [chimerax-users] Use values printed from Log inside a script (e.g. RMSD)
[EXTERNAL SENDER - PROCEED CAUTIOUSLY]
There is no conflict. If Steven had a newer version of ChimeraX then "rmsd" would execute the rmsd command and not rmsdAlign, whereas "rmsdA" would execute rmsdAlign and not rmsd.
--Eric
On Oct 12, 2021, at 4:34 PM, Anthony James Schaefer via ChimeraX-users <chimerax-users@cgl.ucsf.edumailto:chimerax-users@cgl.ucsf.edu> wrote:
Steven,
Uninstalling SEQCROW should allow you to use the regular rmsd command. I will update SEQCROW to change the name of the rmsdAlign command to avoid this type of conflict, though the update will not be compatible with ChimeraX 1.1.1. There were significant changes between ChimeraX 1.1 and 1.2, so I'd have to go back pretty far to get things to work with 1.1-era ChimeraX.
You can uninstall SEQCROW by running "toolshed uninstall SEQCROW"
Tony ________________________________ From: ChimeraX-users <chimerax-users-bounces@cgl.ucsf.edumailto:chimerax-users-bounces@cgl.ucsf.edu> on behalf of Steven Truong via ChimeraX-users <chimerax-users@cgl.ucsf.edumailto:chimerax-users@cgl.ucsf.edu> Sent: Tuesday, October 12, 2021 7:18 PM To: ChimeraX Users Help <ChimeraX-users@cgl.ucsf.edumailto:ChimeraX-users@cgl.ucsf.edu> Subject: Re: [chimerax-users] Use values printed from Log inside a script (e.g. RMSD)
[EXTERNAL SENDER - PROCEED CAUTIOUSLY]
Hi Tony and Elaine,
I am currently using ChimeraX-1.1.1. I think I may have found the issue then. Whenever I type “rmsd” in the command line, it defaults to rmsdAlign. Is there a way to fix this? I’m not sure if it’s a bug or something I did on my end.
You can see this in the screenshot below (I typed rmsd and get rmsdAlign in the log).
<PastedGraphic-1.png>
Thank you for the help, Steven
On Oct 12, 2021, at 11:48 PM, Elaine Meng <meng@cgl.ucsf.edumailto:meng@cgl.ucsf.edu> wrote:
Hi Steven, Are you using a super-ancient version of ChimeraX? I'm not aware if there was ever an rmsdAlign command. By command I mean what you would type into the actual command line or use in a command file. Maybe there is some other way to access the functionality via python.
However, if the structures are not already superimposed, you may want to use the "align" command instead of the "rmsd" command ... the former calculates a best-fit RMSD whereas the latter just calculates RMSD in the current positions without trying to superimpose/fit them, so if the structures are in some random positions relative to each other you will get a huge value.
align https://rbvi.ucsf.edu/chimerax/docs/user/commands/align.html
rmsd https://rbvi.ucsf.edu/chimerax/docs/user/commands/rmsd.html
Best, Elaine ----- Elaine C. Meng, Ph.D. UCSF Chimera(X) team Department of Pharmaceutical Chemistry University of California, San Francisco
On Oct 12, 2021, at 2:39 PM, Steven Truong via ChimeraX-users <chimerax-users@cgl.ucsf.edumailto:chimerax-users@cgl.ucsf.edu> wrote:
Hi Eric, Tony, et al.,
Thank you for answering my question. For now, I’ll be doing what Tony suggested re: assigning a value with the RMSD command. Currently, I’m having issues with using “rmsd” by itself (it seems like rmsdAlign is the only valid command). I’m assuming this is the same command, just named differently.
Re: your inquiry, the protein does have the same sequences. However, the chain ID is critical, since I am attempting to “stitch” fragments of proteins at different residues. For example, if I align a fragment to the wrong chain, it will have a bond hanging on the other side of the protein (not good!). This stitching can be done manually (e.g. if it’s not the right chain or residue ID, I can simply move the fragment), but I am trying to automate this process via Python scripts. Additionally, I have been doing the bond-forming on Chimera (with the command “bond”). I’m not sure if there’s a better way of going about this, but my idea currently is to 1. Identify which chains match up, 2. Align fragments from 1 protein to the other (which may have different chain ID identifiers), 3. Make bonds on Chimera.
Many thanks, Steven
On Oct 12, 2021, at 9:31 PM, Eric Pettersen <pett@cgl.ucsf.edumailto:pett@cgl.ucsf.edu> wrote:
Hi Steven,
On Oct 12, 2021, at 12:39 PM, Steven Truong via ChimeraX-users <chimerax-users@cgl.ucsf.edumailto:chimerax-users@cgl.ucsf.edu> wrote:
Dear ChimeraX Admins,
I was hoping to use the “rmsd” command in ChimeraX to measure distances between models within a .py script.
Is there a way to use the output of “rmsd” (or generally any other output in Log) within the script? For example, if rmsd > 2 Angstroms, then do X.
Tony answered this.
Ultimately, I am attempting to align chains between models. Because my protein is asymmetric, chain A on Model #1 might actually be chain B on Model #2. I was hoping to use “rmsd” to map one chain to the other. Is it a better idea to do this in another program and re-write chain IDs in the .PDB file? If so, what other program would be better at making RMSD calculations between .PDB chains?
Do these chains have the same sequence? Also, I'm a little uncertain what "map one chain to the other" means exactly. At any rate, the matchmaker command can be used to superimpose one chain onto another and report the backbone (CA or C4'/P) RMSD for the match. By default matchmaker iterates its match, pruning off poorly matching regions and re-matching to get a good fitting "core" match, and will report RMSD values for both the core region and across the entire sequence. You can turn off the iteration if desired with matchmaker's "cutoffDistance none" option.
--Eric
Eric Pettersen UCSF Computer Graphics Lab
Thank you, Steven Truong Cambridge University
_______________________________________________ ChimeraX-users mailing list ChimeraX-users@cgl.ucsf.edumailto:ChimeraX-users@cgl.ucsf.edu Manage subscription: https://www.rbvi.ucsf.edu/mailman/listinfo/chimerax-users
participants (4)
-
Anthony James Schaefer
-
Elaine Meng
-
Eric Pettersen
-
Steven Truong