I vaguely remember that setting the reference chain to your chain of
choice in the "NCS Ghost Control" dialog somehow makes the "Copy NCS
Residue Range" work for non-A chains. I may be wrong.
Engin
On 1/14/13 3:33 PM, Davi de Miranda Fonseca wrote:
> I would rather avoid using it, since (from what I understood) it would
> also replace residues 273-278 of chains C and D. Isn't this correct?
>
> But I gave it a try, however it does not seem to change my model. Output:
> INFO: operating on molecule number 2
> WARNING:: failed to find master_chain_id "B" in 3 NCS ghosts
> ghost: chainid "B" has NCS master "[GHOST Name: NCS found from
> matching Chai
> n B onto Chain A, chain-id: B, target-chain-id: A, displayed? 1]"
> ghost: chainid "C" has NCS master "[GHOST Name: NCS found from
> matching Chai
> n C onto Chain A, chain-id: C, target-chain-id: A, displayed? 0]"
> ghost: chainid "D" has NCS master "[GHOST Name: NCS found from
> matching Chai
> n D onto Chain A, chain-id: D, target-chain-id: A, displayed? 0]"
>
> But if I try to copy residues 273-278 of chain A (bad ones) using the
> suggested extension, it works (i.e. now I have 4 pretty messed up
> chains). Is this* a bug? (* - it allows me to select a chain but it
> only works with chain A selected)
> By the way, I am using Wincoot 0.7 Clayton (revision 4459) [with
> python 2.6.6 embedded].
>
> I just tried renaming/ordering the chains, performing the NCS fix in
> Coot, re-renaming/re-ordering the chains. And it worked, however it
> would be great to be able to use the
> copy-residue-range-from-ncs-master-to-chains script in the future (to
> copy select residues from any chain to any target chain(s)), hence I
> would greatly appreciate some advice on the proper syntax for the
> command in Python.
>
> Regards,
> Davi
>
> On 14/01/2013 12:54, Francis E Reyes wrote:
>> Does Extensions -> NCS -> Copy NCS Residue Range not work ?
>>
>> F
>>
>> On Jan 14, 2013, at 12:41 PM, Davi de Miranda Fonseca
>> <[log in to unmask]> wrote:
>>
>>> Dear all,
>>>
>>> I am working with a 4-fold NCS. Chain A has residues 273 through 278
>>> pretty messed up, but those residues from Chain B seem to fit pretty
>>> well the density for Chain A (as seem by NCS Ghost Control). Hence I
>>> would to replace residues 273-278 of Chain A by those of Chain B
>>> with appropriate rotation(s)-translation(s).
>>>
>>> After looking Coot's manual it seems that I need to use a script
>>> (the GUI would also change Chains C and D which I do not want),
>>> namely copy-residue-range-from-ncs-master-to-chains. From the
>>> example I think that I would need something like:
>>> (copy-residue-range-from-ncs-master-to-chains 0 "B" 273 278 (list "A"))
>>>
>>> but since I have a python Coot, I am unsure what to use. I tried
>>> without success* the following:
>>>
>>> copy-residue-range-from-ncs-master-to-chains(0,"B",273,278,(list "A"))
>>>
>>> copy-residue-range-from-ncs-master-to-chains(0,"B",273,278,"A")
>>>
>>> copy-residue-range-from-ncs-master-to-chains(0,"B",273,278,list("A"))
>>>
>>> Hence, I would greatly appreciate some advice on the proper syntax
>>> for the command in Python (or on the right/better way of fixing the
>>> mess in Chain A).
>>>
>>> Thank you for your time and help.
>>>
>>> Regards,
>>> Davi
>>>
>>>
>>> * - Results of running scripts in the command window:
>>>
>>> BL INFO:: command input is:
>>> copy-residue-range-from-ncs-master-to-chains(0,"B",273,278,(list "A"))
>>> Traceback (most recent call last):
>>> File "C:\WinCoot\share\coot\python\coot_gui.py", line 209, in
>>> do_function
>>> guile_function = test_and_translate_guile(entry_text)
>>> File "C:\WinCoot\share\coot\python\coot_gui.py", line 166, in
>>> test_and_translate_guile
>>> exec python_function in locals()
>>> File "<string>", line 1
>>> copy_residue_range_from_ncs_master_to_chains(0,"B",273,278,(list(*arg)
>>> ^
>>> SyntaxError: unexpected EOF while parsing
>>>
>>> and
>>>
>>> BL INFO:: command input is:
>>> copy-residue-range-from-ncs-master-to-chains(0,"B",273,278,"A")
>>> Traceback (most recent call last):
>>> File "C:\WinCoot\share\coot\python\coot_gui.py", line 209, in
>>> do_function
>>> guile_function = test_and_translate_guile(entry_text)
>>> File "C:\WinCoot\share\coot\python\coot_gui.py", line 166, in
>>> test_and_translate_guile
>>> exec python_function in locals()
>>> File "<string>", line 1
>>> copy_residue_range_from_ncs_master_to_chains(0,"B",273,278,"A"(*arg)
>>> ^
>>> SyntaxError: unexpected EOF while parsing
>>>
>>> and
>>>
>>> BL INFO:: command input is:
>>> copy-residue-range-from-ncs-master-to-chains(0,"B",273,278,list("A"))
>>> Traceback (most recent call last):
>>> File "C:\WinCoot\share\coot\python\coot_gui.py", line 209, in
>>> do_function
>>> guile_function = test_and_translate_guile(entry_text)
>>> File "C:\WinCoot\share\coot\python\coot_gui.py", line 166, in
>>> test_and_transla
>>> te_guile
>>> exec python_function in locals()
>>> File "<string>", line 1
>>> copy_residue_range_from_ncs_master_to_chains(0,"B",273,278,list("A"(*arg)
>>>
>>> ^
>>> SyntaxError: unexpected EOF while parsing
--
Engin Özkan
Post-doctoral Scholar
Howard Hughes Medical Institute
Dept of Molecular and Cellular Physiology
279 Campus Drive, Beckman Center B173
Stanford School of Medicine
Stanford, CA 94305
ph: (650)-498-7111
|