Opened 18 months ago
Last modified 18 months ago
#15022 reopened enhancement
Blast protein should align loaded structures even when raw query sequence used
Reported by: | Owned by: | Zach Pearson | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Sequence | Version: | |
Keywords: | Cc: | Elaine Meng | |
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description (last modified by )
The following bug report has been submitted: Platform: macOS-14.4.1-arm64-arm-64bit ChimeraX Version: 1.8.dev202404021803 (2024-04-02 18:03:23 UTC) Description Selecting two structures in the Blast protein results table and pressing Load Structures loads them but they are not aligned if the query sequences was given as a "raw sequence" instead of a reference PDB chain. It would be useful it more than one structure is loaded if they were all aligned to the first structure. This is especially important when a large number (100) of structures are loaded because it then become extremely tedious to try to align them afterwards using matchmaker because there is no way to automatically specify which chains of the 100 should be aligned. Log: UCSF ChimeraX version: 1.8.dev202404021803 (2024-04-02) © 2016-2024 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > ui tool show "Blast Protein" > blastprotein > MAALSGGGGGGAEPGQALFNGDMEPEAGAGAGAAASSAADPAIPEEVWNIKQMIKLTQEHIEALLDKFGGEHNPPSIYLEAYEEYTSKLDALQQREQQLLESLGNGTDFSVSSSASMDTVTSSSSSSLSVLPSSLSVFQNPTDVARSNPKSPQKPIVRVFLPNKQRTVVPARCGVTVRDSLKKALMMRGLIPECCAVYRIQDGEKKPIGWDTDISWLTGEELHVEVLENVPLTTHNFVRKTFFTLAFCDFCRKLLFQGFRCQTCGYKFHQRCSTEVPLMCVNYDQLDLLFVSKFFEHHPIPQEEASLAETALTSGSSPSAPASDSIGPQILTSPSPSKSIPIPQPFRPADEDHRNQFGQRDRSSSAPNVHINTIEPVNIDDLIRDQGFRGDGGSTTGLSATPPASLPGSLTNVKALQKSPGPQRERKSSSSSEDRNRMKTLGRRDSSDDWEIPDGQITVGQRIGSGSFGTVYKGKWHGDVAVKMLNVTAPTPQQLQAFKNEVGVLRKTRHVNILLFMGYSTKPQLAIVTQWCEGSSLYHHLHIIETKFEMIKLIDIARQTAQGMDYLHAKSIIHRDLKSNNIFLHEDLTVKIGDFGLATVKSRWSGSHQFEQLSGSILWMAPEVIRMQDKNPYSFQSDVYAFGIVLYELMTGQLPYSNINNRDQIIFMVGRGYLSPDLSKVRSNCPKAMKRLMAECLKKKRDERPLFPQILASIELLARSLPKIHRSASEPSLNRAGFQTEDFSLYACASPKTPIQAGGYGAFPVH > database pdb cutoff 1e-100 matrix BLOSUM62 maxSeqs 100 version None name bp1 Webservices job id: Q8ER60WIBDKA8OQD > open pdb:6Q0K 6q0k title: Structure of a MAPK pathway complex [more info...] Chain information for 6q0k #1 --- Chain | Description | UniProt A B | Serine/threonine-protein kinase B-raf | BRAF_HUMAN 1-766 X Y | 14-3-3 protein zeta/delta | 1433Z_HUMAN 1-245 > select clear > open pdb:7MFD Summary of feedback from opening 7MFD fetched from pdb --- warning | Atom NZ has no neighbors to form bonds with according to residue template for LYS /D:103 7mfd title: Autoinhibited BRAF:(14-3-3)2:MEK complex with the BRAF RBD resolved [more info...] Chain information for 7mfd #2 --- Chain | Description | UniProt A | Serine/threonine-protein kinase B-raf | BRAF_HUMAN 1-766 B | Dual specificity mitogen-activated protein kinase kinase 1 | MP2K1_HUMAN 1-393 C D | 14-3-3 protein zeta/delta | 1433Z_HUMAN 1-245 Non-standard residues in 7mfd #2 --- CHU — N-(3-fluoro-4-{[4-methyl-2-oxo-7-(pyrimidin-2-yloxy)-2H-chromen-3-yl]methyl}pyridin-2-yl)-N'-methylsulfuric diamide (CH5126766) ZN — zinc ion > select clear Already setting window visible! OpenGL version: 4.1 Metal - 88 OpenGL renderer: Apple M2 Ultra OpenGL vendor: Apple Python: 3.11.4 Locale: UTF-8 Qt version: PyQt6 6.6.1, Qt 6.6.1 Qt runtime version: 6.6.2 Qt platform: cocoa Hardware: Hardware Overview: Model Name: Mac Studio Model Identifier: Mac14,14 Model Number: Z1800003VLL/A Chip: Apple M2 Ultra Total Number of Cores: 24 (16 performance and 8 efficiency) Memory: 64 GB System Firmware Version: 10151.101.3 OS Loader Version: 10151.101.3 Software: System Software Overview: System Version: macOS 14.4.1 (23E224) Kernel Version: Darwin 23.4.0 Time since boot: 2 days, 12 hours, 48 minutes Graphics/Displays: Apple M2 Ultra: Chipset Model: Apple M2 Ultra Type: GPU Bus: Built-In Total Number of Cores: 60 Vendor: Apple (0x106b) Metal Support: Metal 3 Displays: PHL 278B1: Resolution: 3840 x 2160 (2160p/4K UHD 1 - Ultra High Definition) UI Looks like: 1920 x 1080 @ 60.00Hz Main Display: Yes Mirror: Off Online: Yes Rotation: Supported Installed Packages: aiobotocore: 2.12.3 aiohttp: 3.9.5 aioitertools: 0.11.0 aiosignal: 1.3.1 alabaster: 0.7.16 alphashape: 1.3.1 annotated-types: 0.6.0 appdirs: 1.4.4 appnope: 0.1.4 asciitree: 0.3.3 asttokens: 2.4.1 attrs: 23.2.0 Babel: 2.14.0 beautifulsoup4: 4.12.3 biopython: 1.83 blockdiag: 3.0.0 blosc2: 2.0.0 botocore: 1.34.69 build: 1.2.1 certifi: 2023.11.17 cffi: 1.16.0 cftime: 1.6.3 charset-normalizer: 3.3.2 ChimeraX-AddCharge: 1.5.16 ChimeraX-AddH: 2.2.5 ChimeraX-AlignmentAlgorithms: 2.0.1 ChimeraX-AlignmentHdrs: 3.4.3 ChimeraX-AlignmentMatrices: 2.1 ChimeraX-Alignments: 2.12.5 ChimeraX-AlphaFold: 1.0 ChimeraX-AltlocExplorer: 1.1.1 ChimeraX-AmberInfo: 1.0 ChimeraX-Arrays: 1.1 ChimeraX-ArtiaX: 0.4.5 ChimeraX-Atomic: 1.56.1 ChimeraX-AtomicLibrary: 14.0.3 ChimeraX-AtomSearch: 2.0.1 ChimeraX-AxesPlanes: 2.4 ChimeraX-BasicActions: 1.1.2 ChimeraX-BILD: 1.0 ChimeraX-BlastProtein: 2.1.2 ChimeraX-BondRot: 2.0.4 ChimeraX-BugReporter: 1.0.1 ChimeraX-BuildStructure: 2.12.1 ChimeraX-Bumps: 1.0 ChimeraX-BundleBuilder: 1.2.2 ChimeraX-ButtonPanel: 1.0.1 ChimeraX-CageBuilder: 1.0.1 ChimeraX-CellPack: 1.0 ChimeraX-Centroids: 1.4 ChimeraX-ChangeChains: 1.1 ChimeraX-CheckWaters: 1.4 ChimeraX-ChemGroup: 2.0.1 ChimeraX-Clashes: 2.2.4 ChimeraX-Clipper: 0.23.0 ChimeraX-ColorActions: 1.0.3 ChimeraX-ColorGlobe: 1.0 ChimeraX-ColorKey: 1.5.5 ChimeraX-CommandLine: 1.2.5 ChimeraX-ConnectStructure: 2.0.1 ChimeraX-Contacts: 1.0.1 ChimeraX-copick: 0.1.0 ChimeraX-Core: 1.8.dev202404021803 ChimeraX-CoreFormats: 1.2 ChimeraX-coulombic: 1.4.3 ChimeraX-crai: 0.3 ChimeraX-Crosslinks: 1.0 ChimeraX-Crystal: 1.0 ChimeraX-CrystalContacts: 1.0.1 ChimeraX-DataFormats: 1.2.3 ChimeraX-Dicom: 1.2 ChimeraX-DiffPlot: 1.0 ChimeraX-DistMonitor: 1.4.2 ChimeraX-DockPrep: 1.1.3 ChimeraX-Dssp: 2.0 ChimeraX-EMDB-SFF: 1.0 ChimeraX-ESMFold: 1.0 ChimeraX-FileHistory: 1.0.1 ChimeraX-FunctionKey: 1.0.1 ChimeraX-Geometry: 1.3 ChimeraX-gltf: 1.0 ChimeraX-Graphics: 1.1.1 ChimeraX-Hbonds: 2.4 ChimeraX-Help: 1.2.2 ChimeraX-HKCage: 1.3 ChimeraX-IHM: 1.1 ChimeraX-ImageFormats: 1.2 ChimeraX-IMOD: 1.0 ChimeraX-IO: 1.0.1 ChimeraX-ItemsInspection: 1.0.1 ChimeraX-IUPAC: 1.0 ChimeraX-Label: 1.1.9 ChimeraX-ListInfo: 1.2.2 ChimeraX-Log: 1.1.6 ChimeraX-LookingGlass: 1.1 ChimeraX-Maestro: 1.9.1 ChimeraX-Map: 1.2 ChimeraX-MapData: 2.0 ChimeraX-MapEraser: 1.0.1 ChimeraX-MapFilter: 2.0.1 ChimeraX-MapFit: 2.0 ChimeraX-MapSeries: 2.1.1 ChimeraX-Markers: 1.0.1 ChimeraX-Mask: 1.0.2 ChimeraX-MatchMaker: 2.1.3 ChimeraX-MCopy: 1.0 ChimeraX-MDcrds: 2.7 ChimeraX-MedicalToolbar: 1.0.2 ChimeraX-Meeting: 1.0.1 ChimeraX-MLP: 1.1.1 ChimeraX-mmCIF: 2.14.1 ChimeraX-MMTF: 2.2 ChimeraX-Modeller: 1.5.15 ChimeraX-ModelPanel: 1.5 ChimeraX-ModelSeries: 1.0.1 ChimeraX-Mol2: 2.0.3 ChimeraX-Mole: 1.0 ChimeraX-Morph: 1.0.2 ChimeraX-MouseModes: 1.2 ChimeraX-Movie: 1.0 ChimeraX-Neuron: 1.0 ChimeraX-Nifti: 1.1 ChimeraX-NMRSTAR: 1.0.2 ChimeraX-NRRD: 1.1 ChimeraX-Nucleotides: 2.0.3 ChimeraX-OME-Zarr: 0.5.3 ChimeraX-OpenCommand: 1.13.4 ChimeraX-PDB: 2.7.5 ChimeraX-PDBBio: 1.0.1 ChimeraX-PDBLibrary: 1.0.4 ChimeraX-PDBMatrices: 1.0 ChimeraX-PhenixUI: 1.2.2 ChimeraX-PickBlobs: 1.0.1 ChimeraX-Positions: 1.0 ChimeraX-PresetMgr: 1.1.1 ChimeraX-PubChem: 2.1 ChimeraX-ReadPbonds: 1.0.1 ChimeraX-Registration: 1.1.2 ChimeraX-RemoteControl: 1.0 ChimeraX-RenderByAttr: 1.3 ChimeraX-RenumberResidues: 1.1 ChimeraX-ResidueFit: 1.0.1 ChimeraX-RestServer: 1.2 ChimeraX-RNALayout: 1.0 ChimeraX-RotamerLibMgr: 4.0 ChimeraX-RotamerLibsDunbrack: 2.0 ChimeraX-RotamerLibsDynameomics: 2.0 ChimeraX-RotamerLibsRichardson: 2.0 ChimeraX-SaveCommand: 1.5.1 ChimeraX-SchemeMgr: 1.0 ChimeraX-SDF: 2.0.2 ChimeraX-Segger: 1.0 ChimeraX-Segment: 1.0.1 ChimeraX-Segmentations: 1.0 ChimeraX-SelInspector: 1.0 ChimeraX-SeqView: 2.11.2 ChimeraX-Shape: 1.0.1 ChimeraX-Shell: 1.0.1 ChimeraX-Shortcuts: 1.1.1 ChimeraX-ShowSequences: 1.0.3 ChimeraX-SideView: 1.0.1 ChimeraX-Smiles: 2.1.2 ChimeraX-SmoothLines: 1.0 ChimeraX-SpaceNavigator: 1.0 ChimeraX-StdCommands: 1.16.3 ChimeraX-STL: 1.0.1 ChimeraX-Storm: 1.0 ChimeraX-StructMeasure: 1.2 ChimeraX-Struts: 1.0.1 ChimeraX-Surface: 1.0.1 ChimeraX-SwapAA: 2.0.1 ChimeraX-SwapRes: 2.5 ChimeraX-TapeMeasure: 1.0 ChimeraX-TaskManager: 1.0 ChimeraX-Test: 1.0 ChimeraX-TetraScapeCommand: 0.1 ChimeraX-Toolbar: 1.1.2 ChimeraX-ToolshedUtils: 1.2.4 ChimeraX-Topography: 1.0 ChimeraX-ToQuest: 1.0 ChimeraX-Tug: 1.0.1 ChimeraX-UI: 1.37.1 ChimeraX-uniprot: 2.3 ChimeraX-UnitCell: 1.0.1 ChimeraX-ViewDockX: 1.3.2 ChimeraX-VIPERdb: 1.0 ChimeraX-Vive: 1.1 ChimeraX-VolumeMenu: 1.0.1 ChimeraX-vrml: 1.0 ChimeraX-VTK: 1.0 ChimeraX-WavefrontOBJ: 1.0 ChimeraX-WebCam: 1.0.2 ChimeraX-WebServices: 1.1.3 ChimeraX-Zone: 1.0.1 click: 8.1.7 click-log: 0.4.0 cloudpickle: 3.0.0 colorama: 0.4.6 comm: 0.2.2 contourpy: 1.2.0 copick: 0.1.dev45+g5a19260 cripser: 0.0.13 cryptography: 42.0.5 cxservices: 1.2.2 cycler: 0.12.1 Cython: 3.0.9 dask: 2024.4.2 debugpy: 1.8.1 decorator: 5.1.1 distributed: 2024.4.2 docutils: 0.20.1 executing: 2.0.1 fasteners: 0.19 filelock: 3.13.4 fonttools: 4.50.0 frozenlist: 1.4.1 fsspec: 2024.3.1 funcparserlib: 2.0.0a0 geomdl: 5.3.1 glfw: 2.7.0 grako: 3.16.5 h5py: 3.10.0 hatchling: 1.24.2 html2text: 2024.2.26 idna: 3.6 ihm: 1.0 imagecodecs: 2024.1.1 imageio: 2.34.1 imagesize: 1.4.1 importlib-metadata: 7.1.0 ipykernel: 6.29.2 ipython: 8.21.0 ipywidgets: 8.1.2 jedi: 0.19.1 Jinja2: 3.1.3 jmespath: 1.0.1 joblib: 1.4.0 jupyter-client: 8.6.0 jupyter-core: 5.7.2 jupyterlab-widgets: 3.0.10 kiwisolver: 1.4.5 lazy-loader: 0.4 line-profiler: 4.1.2 llvmlite: 0.42.0 locket: 1.0.0 lxml: 5.2.1 lz4: 4.3.3 MarkupSafe: 2.1.5 matplotlib: 3.8.4 matplotlib-inline: 0.1.6 mpmath: 1.3.0 mrcfile: 1.5.0 msgpack: 1.0.8 multidict: 6.0.5 nest-asyncio: 1.6.0 netCDF4: 1.6.5 networkx: 3.3 nibabel: 5.0.1 nptyping: 2.5.0 numba: 0.59.1 numcodecs: 0.12.1 numexpr: 2.10.0 numpy: 1.26.4 ome-zarr: 0.8.3 openvr: 1.26.701 packaging: 23.2 pandas: 2.2.2 ParmEd: 4.2.2 parso: 0.8.3 partd: 1.4.1 pathspec: 0.12.1 pep517: 0.13.1 pexpect: 4.9.0 pillow: 10.3.0 pip: 24.0 pkginfo: 1.10.0 platformdirs: 4.2.0 pluggy: 1.5.0 prompt-toolkit: 3.0.43 psutil: 5.9.8 ptyprocess: 0.7.0 pure-eval: 0.2.2 py-cpuinfo: 9.0.0 pyarrow: 16.0.0 pycollada: 0.8 pycparser: 2.22 pydantic: 2.7.1 pydantic-core: 2.18.2 pydicom: 2.3.0 pygments: 2.17.2 pynmrstar: 3.3.4 pynndescent: 0.5.12 pynrrd: 1.0.0 PyOpenGL: 3.1.7 PyOpenGL-accelerate: 3.1.7 pyopenxr: 1.0.3302 pyparsing: 3.1.2 pyproject-hooks: 1.0.0 PyQt6: 6.6.1 PyQt6-Qt6: 6.6.2 PyQt6-sip: 13.6.0 PyQt6-WebEngine: 6.6.0 PyQt6-WebEngine-Qt6: 6.6.2 pyspnego: 0.10.2 python-dateutil: 2.9.0.post0 pytz: 2024.1 PyYAML: 6.0.1 pyzmq: 25.1.2 qtconsole: 5.5.1 QtPy: 2.4.1 RandomWords: 0.4.0 requests: 2.31.0 Rtree: 1.1.0 s3fs: 2024.3.1 scikit-image: 0.23.2 scikit-learn: 1.4.2 scipy: 1.13.0 setuptools: 69.2.0 setuptools-scm: 8.0.4 sfftk-rw: 0.8.1 shapely: 2.0.2 six: 1.16.0 smbprotocol: 1.13.0 snowballstemmer: 2.2.0 sortedcontainers: 2.4.0 soupsieve: 2.5 sphinx: 7.2.6 sphinx-autodoc-typehints: 2.0.1 sphinxcontrib-applehelp: 1.0.8 sphinxcontrib-blockdiag: 3.0.0 sphinxcontrib-devhelp: 1.0.6 sphinxcontrib-htmlhelp: 2.0.5 sphinxcontrib-jsmath: 1.0.1 sphinxcontrib-qthelp: 1.0.7 sphinxcontrib-serializinghtml: 1.1.10 stack-data: 0.6.3 starfile: 0.5.6 superqt: 0.6.3 sympy: 1.12 tables: 3.8.0 tblib: 3.0.0 tcia-utils: 1.5.1 threadpoolctl: 3.4.0 tifffile: 2024.1.30 tinyarray: 1.2.4 toolz: 0.12.1 torch: 2.2.2 tornado: 6.4 tqdm: 4.66.2 traitlets: 5.14.2 trimesh: 4.0.10 trove-classifiers: 2024.4.10 typing-extensions: 4.10.0 tzdata: 2024.1 umap-learn: 0.5.6 urllib3: 2.2.1 wcwidth: 0.2.13 webcolors: 1.13 wheel: 0.43.0 wheel-filename: 1.4.1 widgetsnbextension: 4.0.10 wrapt: 1.16.0 yarl: 1.9.4 zarr: 2.17.2 zict: 3.0.0 zipp: 3.18.1
Attachments (2)
Change History (16)
comment:1 by , 18 months ago
Cc: | added |
---|---|
Component: | Unassigned → Sequence |
Description: | modified (diff) |
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → Blast protein should align loaded structures even when raw query sequence used |
Type: | defect → enhancement |
comment:2 by , 18 months ago
comment:3 by , 18 months ago
Yes. But your matchmaker command needs to specify the chain that is being matched matchmaker #N/(chain_id) to #(first_opened)/(first_opened_chain)
comment:6 by , 18 months ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
comment:7 by , 18 months ago
Prioritize as desired (e.g. could be low/really don't care), just reporting a minor glitch from my obsessive checking of "I wonder what happens when..." If you close the first set of structures and then open another structure (e.g. by double-clicking one of the PDB blast results rows), a dialog appears to warn the user, presumably because the original reference is no longer present. "Must use different reference and match structures" ...but then it's OK after that, seems to correctly figure out what is the new reference. This minor weirdness occurs regardless of whether the initial search is with a structure chain or only sequence.
comment:8 by , 18 months ago
Resolution: | fixed |
---|---|
Status: | closed → reopened |
Please reopen tickets when there are new concerns.
comment:9 by , 18 months ago
In this specific case, I thought maybe it wasn't worth fixing, so I was leaving that decision up to you. Otherwise I will be sure to reopen, sorry about that.
comment:10 by , 18 months ago
Previously the blastprotein results window would keep track of
the atomspec and chain of the first opened model, which could
change out from under the tool. Now the tool keeps track of the
model itself and watches the REMOVE_MODELS trigger to release its
reference if the model is up for deletion. This allows the tool
to set a _new_ first_opened_model afterward.
comment:11 by , 18 months ago
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
comment:12 by , 18 months ago
Resolution: | fixed |
---|---|
Status: | closed → reopened |
I still get the same error "Must use different reference and match structures" after closing initial reference. Just tested in UCSF ChimeraX version: 1.8.dev202405040553 (2024-05-04)
by , 18 months ago
comment:13 by , 18 months ago
How are you reproducing this? I've attached a session to this ticket. When I open it and open two structures, then close them, then open another two, and inspect the log, I don't see the error -- using the same daily build.
by , 18 months ago
session with blast that was originally from structure chain (but structure now closed)
comment:14 by , 18 months ago
As discussed yesterday, I'd been testing with a blast search started from a sequence window, but the sequence had come from a structure chain (e.g. command: seq chain /A).
So the error still occurs with blast results obtained in that way, as well as directly from searching with the structure chain. Attached is another session bp1.cxs where I'd searched with a structure chain and then closed the structure. Simply restoring that session and then double-clicking any row in the bp1 results table to fech & open the corresponding structure elicits the error. Session created and tested in the current daily build. 1.8.dev202405070041 (2024-05-07)
(also opening your session test.cxs in current daily build gives the "Blast job failed" error as in ticket #14980)
This doesn't sound hard to implement. The first few hits in the table for that query are 7MFD_A, 7MFE_A, 7MFF_A, etc...
I could keep track of the ID of the first opened model for a raw sequence blast search, and the chain of that model that matched (/A), and afterwards use it in matchmaker:
matchmaker #N to #(first_opened)/(first_opened_chain)
Have I understood the desired behavior correctly?