Opened 5 years ago
Closed 5 years ago
#3659 closed defect (fixed)
Failure to correct ligand when no CCD template available
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-3.10.0-1062.1.1.el7.x86_64-x86_64-with-centos-7.7.1908-Core ChimeraX Version: 1.0 (2020-06-04 23:15:07 UTC) Description Trying to use ISOLDE on a receptor bound to a ligand. I loaded the paraqmater file for the ligand but it still fails Log: UCSF ChimeraX version: 1.0 (2020-06-04) © 2016-2020 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > ui tool show ISOLDE > set selectionWidth 4 Done loading forcefield > open /nfs/userdocs/ak/aalon/ISOLDE/Z1241145220/maestro_clean_no_ZNC.pdb Chain information for maestro_clean_no_ZNC.pdb #1 --- Chain | Description A | No description available B | No description available Chain information for maestro_clean_no_ZNC.pdb --- Chain | Description 1.2/A | No description available 1.2/B | No description available (CLIPPER) NOTE: No symmetry information found in model. Using symmetry from MTZ file. Reflection data provided as intensities. Performing French & Wilson scaling to convert to amplitudes... > isolde sim start #1 Updating bulk solvent parameters... Fetching CCD LYS_LL_DHZ3 from http://ligand- expo.rcsb.org/reports/L/LYS_LL_DHZ3/LYS_LL_DHZ3.cif Fetching CCD LYS_LSN3 from http://ligand- expo.rcsb.org/reports/L/LYS_LSN3/LYS_LSN3.cif Fetching CCD LYS_LEO2 from http://ligand- expo.rcsb.org/reports/L/LYS_LEO2/LYS_LEO2.cif Fetching CCD LYZ from http://ligand-expo.rcsb.org/reports/L/LYZ/LYZ.cif Fetching CCD MLZ from http://ligand-expo.rcsb.org/reports/M/MLZ/MLZ.cif Fetching CCD LYS_LFZW from http://ligand- expo.rcsb.org/reports/L/LYS_LFZW/LYS_LFZW.cif Updating bulk solvent parameters... > select clear > select up 23 atoms, 22 bonds, 1 model selected > delete sel > delete sel > isolde sim start #1 > open > /nfs/userdocs/ak/aalon/Phenix/Z1241145220/Refine_26/Z1241145220_refine_26.pdb Chain information for Z1241145220_refine_26.pdb #2 --- Chain | Description A | No description available B | No description available > close #1 Deleting atomic symmetry model... Deleting (LIVE) 2mFo-DFc Deleting (LIVE) mFo-DFc Deleting (LIVE) MDFF potential Deleting (LIVE) 2mFo-DFc_smooth_5 Deleting Crystallographic maps (Z1241145220_refine_26.mtz) Traceback (most recent call last): File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/core/triggerset.py", line 130, in invoke return self._func(self._name, data) File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/isolde/openmm/openmm_interface.py", line 1013, in _sim_end_cb self._pr_sim_end_cb() File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/isolde/openmm/openmm_interface.py", line 1070, in _pr_sim_end_cb restraints = self.position_restraint_mgr.get_restraints(self.sim_construct.all_atoms) File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/isolde/molobject.py", line 2216, in get_restraints return self._get_restraints(atoms) File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/isolde/molobject.py", line 2169, in _get_restraints num = f(self._c_pointer, atoms._c_pointers, create, n, pointer(ret)) AttributeError: 'PositionRestraintMgr' object has no attribute '_c_pointer' Error processing trigger "sim terminated": AttributeError: 'PositionRestraintMgr' object has no attribute '_c_pointer' File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/isolde/molobject.py", line 2169, in _get_restraints num = f(self._c_pointer, atoms._c_pointers, create, n, pointer(ret)) See log for complete Python traceback. Traceback (most recent call last): File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/core/triggerset.py", line 130, in invoke return self._func(self._name, data) File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/isolde/validation/ramaplot.py", line 197, in _sim_end_cb self._mode_change_cb() File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/isolde/validation/ramaplot.py", line 233, in _mode_change_cb self.selection_mode = mode File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/isolde/validation/ramaplot.py", line 288, in selection_mode self.set_target_residues(self.current_model.residues) File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/atomic/attr_registration.py", line 43, in _getattr_ return base.__getattr__(self, attr_name, look_in_class=base) File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/atomic/attr_registration.py", line 39, in _getattr_ return look_in_class._attr_registration.get_attr(attr_name) File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/atomic/attr_registration.py", line 65, in get_attr raise AttributeError("Execution of '%s' object's '%s' property raised AttributeError" % (self.class_.__name__, attr_name)) from None AttributeError: Execution of 'Structure' object's 'residues' property raised AttributeError Error processing trigger "simulation terminated": AttributeError: Execution of 'Structure' object's 'residues' property raised AttributeError File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/atomic/attr_registration.py", line 65, in get_attr raise AttributeError("Execution of '%s' object's '%s' property raised AttributeError" % (self.class_.__name__, attr_name)) from None See log for complete Python traceback. > ui tool show ISOLDE > set selectionWidth 4 Chain information for Z1241145220_refine_26.pdb --- Chain | Description 1.2/A | No description available 1.2/B | No description available Done loading forcefield Reflection data provided as intensities. Performing French & Wilson scaling to convert to amplitudes... > addh Summary of feedback from adding hydrogens to Z1241145220_refine_26.pdb #1.2 --- warnings | Not adding hydrogens to /A LYS 125 CB because it is missing heavy- atom bond partners Not adding hydrogens to /A HIS 128 CB because it is missing heavy-atom bond partners Not adding hydrogens to /A LYS 168 CB because it is missing heavy-atom bond partners Not adding hydrogens to /B LYS 168 CB because it is missing heavy-atom bond partners notes | No usable SEQRES records for Z1241145220_refine_26.pdb (#1.2) chain A; guessing termini instead No usable SEQRES records for Z1241145220_refine_26.pdb (#1.2) chain B; guessing termini instead Chain-initial residues that are actual N termini: /A GLY 5, /B GLY 2 Chain-initial residues that are not actual N termini: Chain-final residues that are actual C termini: Chain-final residues that are not actual C termini: /A LYS 168, /B LYS 168 435 hydrogen bonds /A LYS 168 is not terminus, removing H atom from 'C' /B LYS 168 is not terminus, removing H atom from 'C' 3205 hydrogens added Loading residue template for CLR from internal database Loading residue template for OLC from internal database Traceback (most recent call last): File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/isolde/validation/unparameterised.py", line 134, in _show_selected_unparameterised_residue ccd_template, description = get_ccd_template_and_name(self.session, tname) File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/isolde/validation/unparameterised.py", line 126, in get_ccd_template_and_name tmpl = mmcif.find_template_residue(session, ccd_name) File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/atomic/mmcif/mmcif.py", line 378, in find_template_residue return _mmcif.find_template_residue(name) ValueError: No template for residue type ZNC ValueError: No template for residue type ZNC File "/programs/x86_64-linux/chimerax/1.0/lib/python3.7/site- packages/chimerax/atomic/mmcif/mmcif.py", line 378, in find_template_residue return _mmcif.find_template_residue(name) See log for complete Python traceback. OpenGL version: 3.3.0 NVIDIA 440.44 OpenGL renderer: Quadro K4000/PCIe/SSE2 OpenGL vendor: NVIDIA Corporation Manufacturer: Supermicro Model: X9SRA/X9SRA-3 OS: CentOS Linux 7 Core Architecture: 64bit ELF CPU: 12 Intel(R) Core(TM) i7-4960X CPU @ 3.60GHz Cache Size: 15360 KB Memory: total used free shared buff/cache available Mem: 15G 2.8G 9.7G 76M 3.0G 12G Swap: 4.0G 0B 4.0G Graphics: 03:00.0 VGA compatible controller [0300]: NVIDIA Corporation GK106GL [Quadro K4000] [10de:11fa] (rev a1) Subsystem: NVIDIA Corporation Device [10de:097c] Kernel driver in use: nvidia PyQt version: 5.12.3 Compiled Qt version: 5.12.4 Runtime Qt version: 5.12.8
Change History (2)
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 → ISOLDE: 'PositionRestraintMgr' object has no attribute '_c_pointer' |
comment:2 by , 5 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Summary: | ISOLDE: 'PositionRestraintMgr' object has no attribute '_c_pointer' → Failure to correct ligand when no CCD template available |
Note:
See TracTickets
for help on using tickets.
The first traceback here:
AttributeError: 'PositionRestraintMgr' object has no attribute '_c_pointer'
... was caused by closing the active model while a simulation was running. I'd strongly advise against doing that - with all the simulation-management callbacks in play, this is a nightmare to handle gracefully and right now ISOLDE doesn't really try.
The second arises when you're trying to correct a ligand which almost matches an MD template, but whose name doesn't appear in the Chemical Components Dictionary. That will be fixed in the next release (today or Monday, depending on progress), although corrections will be limited to adding only atoms that are directly connected to existing ones (i.e. mostly just adding and removing hydrogens). You'll eventually have the option to provide custom coordinate templates for ligands, but not quite yet.