Opened 5 years ago
Last modified 5 years ago
#3578 assigned defect
Clipper: failure in French&Wilson treatment of intensities
Reported by: | Owned by: | Tristan Croll | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Third Party | Version: | |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
The following bug report has been submitted: Platform: Linux-4.15.0-112-generic-x86_64-with-debian-buster-sid ChimeraX Version: 0.93 (2020-04-03) Description Isolde doesn't seem to like my data Log: UCSF ChimeraX version: 0.93 (2020-04-03) © 2016-2020 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > toolshed show ISOLDE > set selectionWidth 4 Forcefield cache not found or out of date. Regenerating from ffXML files. This is normal if running ISOLDE for the first time, or after upgrading OpenMM. Done loading forcefield Traceback (most recent call last): File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/isolde/isolde.py", line 1271, in _choose_reflections_file self.add_xtal_data(filename) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/isolde/isolde.py", line 1297, in add_xtal_data map_mgr = get_map_mgr(m, create=True, auto_add_to_session=True) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/symmetry.py", line 174, in get_map_mgr sh = get_symmetry_handler(structure, create=create, auto_add_to_session=auto_add_to_session) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/symmetry.py", line 159, in get_symmetry_handler sh = _get_symmetry_handler(structure, create) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/symmetry.py", line 166, in _get_symmetry_handler p = structure.parent AttributeError: 'NoneType' object has no attribute 'parent' AttributeError: 'NoneType' object has no attribute 'parent' File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/symmetry.py", line 166, in _get_symmetry_handler p = structure.parent See log for complete Python traceback. > open2 "/media/rosutton/Dnase1L3 refine 26/DNAse1L3_refine_26-coot-0.pdb" Summary of feedback from opening <_io.textiowrapper name="/media/rosutton/Dnase1L3 refine 26/DNAse1L3_refine_26-coot-0.pdb" mode="rt" encoding="utf-8"> --- warnings | Ignored bad PDB record found on line 1 REMARK Date 2020-01-04 Time 13:55:52 CST -0600 (1578167752.03 s) Ignored bad PDB record found on line 2 REMARK PHENIX refinement Ignored bad PDB record found on line 4 REMARK ****************** INPUT FILES AND LABELS ****************************** Ignored bad PDB record found on line 5 REMARK Reflections: Ignored bad PDB record found on line 6 REMARK file name : /home/rosutton/Projects/DNAse1L3/Refine_25/DNAse1L3_re 27 messages similar to the above omitted Chain information for DNAse1L3_refine_26-coot-0.pdb #1 --- Chain | Description A | No description available B | No description available C | No description available D | No description available Chain information for DNAse1L3_refine_26-coot-0.pdb --- Chain | Description 1.2/A | No description available 1.2/B | No description available 1.2/C | No description available 1.2/D | No description available Cached rota8000-val data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-leu data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-ile data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-pro data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-phe data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-tyr data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-trp data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-ser data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-thr data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-cys data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-met data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-lys data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-his data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-arg data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-asp data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-asn data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-gln data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rota8000-glu data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rama8000-cispro data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rama8000-transpro data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rama8000-gly-sym data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rama8000-prepro-noGP data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rama8000-ileval-nopreP data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Cached rama8000-general-noGPIVpreP data not found. Regenerating from text file. This is normal if running ISOLDE for the first time Reflection data provided as intensities. Performing French & Wilson scaling to convert to amplitudes... Failed on HKL = ( -23, -5, 1) N_bins: 60 Imean: -10.338729306497815 I: 27.850000381469727 sigI: 26.019224166870117 eobs_sq: -2.69375467292351 sig_eobs_sq: -2.5166752504601537 Traceback (most recent call last): File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/isolde/isolde.py", line 1271, in _choose_reflections_file self.add_xtal_data(filename) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/isolde/isolde.py", line 1299, in add_xtal_data auto_choose_reflection_data=False) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/maps/map_mgr.py", line 279, in add_xmapset_from_mtz auto_choose_reflection_data) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/maps/map_mgr.py", line 301, in add_xmapset_from_file return XmapSet(self, mtzdata) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/maps/xmapset.py", line 189, in __init__ fill_with_fcalc, exclude_missing_reflections) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/maps/xmapset.py", line 245, in init_maps fsigf_data = french_wilson_analytical(fsigf.data) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/reflection_tools/french_wilson.py", line 113, in french_wilson_analytical e_xpct = _expected_E_FW_acen(eobs_sq, sig_eobs_sq) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/reflection_tools/french_wilson.py", line 195, in _expected_E_FW_acen pbdv(-1.5, -x)[0] / # Scipy parabolic cylinder function returns value *and* derivative ValueError: math domain error ValueError: math domain error File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/reflection_tools/french_wilson.py", line 195, in _expected_E_FW_acen pbdv(-1.5, -x)[0] / # Scipy parabolic cylinder function returns value *and* derivative See log for complete Python traceback. Reflection data provided as intensities. Performing French & Wilson scaling to convert to amplitudes... Failed on HKL = ( -23, -5, 1) N_bins: 60 Imean: -10.338729306497815 I: 27.850000381469727 sigI: 26.019224166870117 eobs_sq: -2.69375467292351 sig_eobs_sq: -2.5166752504601537 Traceback (most recent call last): File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/isolde/isolde.py", line 1271, in _choose_reflections_file self.add_xtal_data(filename) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/isolde/isolde.py", line 1299, in add_xtal_data auto_choose_reflection_data=False) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/maps/map_mgr.py", line 279, in add_xmapset_from_mtz auto_choose_reflection_data) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/maps/map_mgr.py", line 301, in add_xmapset_from_file return XmapSet(self, mtzdata) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/maps/xmapset.py", line 189, in __init__ fill_with_fcalc, exclude_missing_reflections) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/maps/xmapset.py", line 245, in init_maps fsigf_data = french_wilson_analytical(fsigf.data) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/reflection_tools/french_wilson.py", line 113, in french_wilson_analytical e_xpct = _expected_E_FW_acen(eobs_sq, sig_eobs_sq) File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/reflection_tools/french_wilson.py", line 195, in _expected_E_FW_acen pbdv(-1.5, -x)[0] / # Scipy parabolic cylinder function returns value *and* derivative ValueError: math domain error ValueError: math domain error File "/home/rosutton/.local/share/ChimeraX/0.93/site- packages/chimerax/clipper/reflection_tools/french_wilson.py", line 195, in _expected_E_FW_acen pbdv(-1.5, -x)[0] / # Scipy parabolic cylinder function returns value *and* derivative See log for complete Python traceback. OpenGL version: 3.3.0 NVIDIA 450.36.06 OpenGL renderer: Quadro P5000/PCIe/SSE2 OpenGL vendor: NVIDIA Corporation Manufacturer: Dell Inc. Model: Precision 7920 Tower OS: Ubuntu 18.04 bionic Architecture: 64bit ELF CPU: 48 Intel(R) Xeon(R) Silver 4116 CPU @ 2.10GHz Cache Size: 16896 KB Graphics: 73:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP104GL [Quadro P5000] [10de:1bb0] (rev a1) Subsystem: Dell GP104GL [Quadro P5000] [1028:11b2] Kernel driver in use: nvidia
Change History (3)
comment:1 by , 5 years ago
Component: | Unassigned → Third Party |
---|---|
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → Clipper: failure in French&Wilson treatment of intensities |
follow-up: 2 comment:2 by , 5 years ago
Hi Tristen, I figured that the average intensity of resolution shells was part of the reason. I suppose that will always be a problem with the liberal use of CC1/2 as a resolution cutoff metric. I've reviewed several papers that really push CC1/2 to the limit; hence, I always question whether those super weak reflections are even measured... Oh well.. we still use it. Anyway, my students are really excited to use ISOLDE. I've been solving structures since the 1990s, and I've always wished for this sort of model building tool. Thanks for implementing this. Have you thought about implementing this tool into COOT? ChimeraX is pretty, but it's buggy. My Ubuntu system just doesn't like it very much right now. Bryan Sutton --- R. Bryan Sutton, Ph.D. Department of Cell Physiology and Molecular Biophysics Center for Membrane Protein Research Texas Tech University Health Sciences Center Lubbock, TX 79430 ________________________________ From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu> Sent: Saturday, August 1, 2020 8:41:29 AM Cc: Sutton, Roger B; tic20@cam.ac.uk Subject: Re: [ChimeraX] #3578: Clipper: failure in French&Wilson treatment of intensities (was: ChimeraX bug report submission) CAUTION: This email originated from outside of TTUHSC. Do not click links or open attachments unless you recognize the sender and know the content is safe. #3578: Clipper: failure in French&Wilson treatment of intensities ---------------------------------------+--------------------------- Reporter: roger.b.sutton@… | Owner: Tristan Croll Type: defect | Status: assigned Priority: normal | Milestone: Component: Third Party | Version: Resolution: | Keywords: Blocked By: | Blocking: Notify when closed: | Platform: all Project: ChimeraX | ---------------------------------------+--------------------------- Changes (by Tristan Croll): * status: new => assigned * component: Unassigned => Third Party * project: => ChimeraX * platform: => all * owner: (none) => Tristan Croll Comment: Hi Roger, The first error arises because the way I have things implemented right now, you need to have a model loaded first before you can add the crystallographic data. The fact that the GUI lets you do things the other way around is a bug that I should fix. The second is also a bug that I will *eventually* fix, but probably not immediately since it only comes up fairly rarely, will take quite a bit of fiddling on my part, and can be worked around fairly easily. In essence, my implementation of French & Wilson scaling of intensities to amplitudes (based on Read & McCoy (2016) Acty Cryst D72(3): 375-387) currently fails when the average intensity of all reflections in a resolution shell is less than zero (meaning that, on average, the measured reflections are so weak that they're below the estimated background value). I need to discuss with Randy the best way to handle this situation, but in the meantime the easiest approach is to do this conversion with another tool and then feed ISOLDE the resulting F/sigF. Using Phenix, for example, you can easily do it from the command line with `phenix.french_wilson your_reflection_file.mtz`. -- Ticket URL: <https://urldefense.com/v3/__https://plato.cgl.ucsf.edu/trac/ChimeraX/ticket/3578*comment:1__;Iw!!PZU9J6Y!M-IV5c5TBcHyJHubxlJka8QhW42rvcmBKKgV6IGO0d8rny-8YRRT18arY-rHKIp5e3nvIWM$ > ChimeraX <https://urldefense.com/v3/__http://www.rbvi.ucsf.edu/chimerax/__;!!PZU9J6Y!M-IV5c5TBcHyJHubxlJka8QhW42rvcmBKKgV6IGO0d8rny-8YRRT18arY-rHKIp5giIe9Fc$ > ChimeraX Issue Tracker
follow-up: 3 comment:3 by , 5 years ago
Hi Bryan, I'm glad to hear you're finding it useful! Regarding implementation in Coot: there are various reasons why that's unlikely to happen. Lack of resources is one, of course. One of the primary reasons I started building ISOLDE in ChimeraX is in fact because of its graphical capabilities - not so much because it's "pretty" (although that definitely helps!) but because in the lower-resolution maps that have always been my special focus I see visualisation as absolutely critical to understanding what's happening. Line graphics may be fine for atomic-resolution data, but it really starts to hamper you out in the badlands beyond 3A. Of course, Coot's graphics have improved since then - but at the same time I now have 3 and a half years of development in ChimeraX behind me. The other aspect is simple personalities. While ChimeraX of course still has some bugs (after all, it was in extremely early alpha when I first started with it), the team have been amazingly supportive of my work from day 1 and very responsive in terms of both fixing bugs and adding new features I've needed along the way. This has made an incalculable difference for someone who came not just to structural biology but to computational methods development relatively late in my career. Anyway, the good news is that the issues you have with ChimeraX in Ubuntu are probably resolved in version 1.0 (prior to that, the Ubuntu builds of ChimeraX used different compilers to the other Linux versions, making them incompatible with ISOLDE). I'll be releasing a new ISOLDE version for ChimeraX 1.0 very soon now - this should be compatible with all the "native" ChimeraX packages. If you run into further trouble with that, I'd suggest making liberal use of the "report a bug" tool - just looking through the history, I myself have reported 367 to date, most of which were fixed within days (the remainder being low-priority things that only come up under obscure circumstances). Best regards, Tristan On 2020-08-01 20:49, ChimeraX wrote:
Note:
See TracTickets
for help on using tickets.
Hi Roger,
The first error arises because the way I have things implemented right now, you need to have a model loaded first before you can add the crystallographic data. The fact that the GUI lets you do things the other way around is a bug that I should fix.
The second is also a bug that I will *eventually* fix, but probably not immediately since it only comes up fairly rarely, will take quite a bit of fiddling on my part, and can be worked around fairly easily. In essence, my implementation of French & Wilson scaling of intensities to amplitudes (based on Read & McCoy (2016) Acty Cryst D72(3): 375-387) currently fails when the average intensity of all reflections in a resolution shell is less than zero (meaning that, on average, the measured reflections are so weak that they're below the estimated background value). I need to discuss with Randy the best way to handle this situation, but in the meantime the easiest approach is to do this conversion with another tool and then feed ISOLDE the resulting F/sigF. Using Phenix, for example, you can easily do it from the command line with
phenix.french_wilson your_reflection_file.mtz
.