Opened 2 years ago
Closed 23 months ago
#9214 closed defect (fixed)
ChimeraX 1.6.1 can not save as mmcif format while computedSheets is true
Reported by: | Owned by: | pett | |
---|---|---|---|
Priority: | normal | Milestone: | 1.7 |
Component: | Input/Output | Version: | |
Keywords: | Cc: | Greg Couch | |
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description (last modified by )
Hi, (Describe the actions that caused this problem to occur here) In the chimerax version 1.6.1 on the platform of Windows-10-10.0.22621,when I run the following command to save a 120-chains-virus pdb as mmcif format, it seems something wrong. BTW, why is it so slow to open a mmcif file in the Chimera? Is there something wrong in my file? save 0619_F&G_final_computedSheets.mmcif computedSheets true Not saving entity_poly_seq for non-authoritative sequences old strand order: ('S1', 1) ('S2', 3) old strand order: ('S1', 3) ('S2', 3) old strand order: ('S1', 5) ('S2', 3) old strand order: ('S1', 5) ('S2', 4) old strand order: ('S2', 3) ('S1', 1) old strand order: ('S2', 3) ('S1', 3) old strand order: ('S2', 3) ('S1', 5) old strand order: ('S2', 4) ('S1', 5) old strand order: ('S3', 2) ('S242', 1) old strand order: ('S3', 1) ('S242', 2) Traceback (most recent call last): File "D:\ChimeraX\ChimeraX1.6\bin\lib\site-packages\chimerax\cmd_line\tool.py", line 319, in execute cmd.run(cmd_text) File "D:\ChimeraX\ChimeraX1.6\bin\lib\site-packages\chimerax\core\commands\cli.py", line 2897, in run result = ci.function(session, **kw_args) File "D:\ChimeraX\ChimeraX1.6\bin\lib\site-packages\chimerax\save_command\cmd.py", line 75, in cmd_save Command(session, registry=registry).run(provider_cmd_text, log=log) File "D:\ChimeraX\ChimeraX1.6\bin\lib\site-packages\chimerax\core\commands\cli.py", line 2897, in run result = ci.function(session, **kw_args) File "D:\ChimeraX\ChimeraX1.6\bin\lib\site-packages\chimerax\save_command\cmd.py", line 90, in provider_save saver_info.save(session, path, **provider_kw) File "D:\ChimeraX\ChimeraX1.6\bin\lib\site-packages\chimerax\mmcif\__init__.py", line 112, in save mmcif_write.write_mmcif(session, path, **kw) File "src\mmcif_write.pyx", line 149, in chimerax.mmcif.mmcif_write.write_mmcif File "src\mmcif_write.pyx", line 156, in chimerax.mmcif.mmcif_write.write_mmcif File "src\mmcif_write.pyx", line 892, in chimerax.mmcif.mmcif_write.save_structure File "src\mmcif_write.pyx", line 915, in chimerax.mmcif.mmcif_write.save_structure KeyError: 11 KeyError: 11 File "src\mmcif_write.pyx", line 915, in chimerax.mmcif.mmcif_write.save_structure OpenGL version: 3.3.0 NVIDIA 512.89 OpenGL renderer: NVIDIA GeForce RTX 3050 Laptop GPU/PCIe/SSE2 OpenGL vendor: NVIDIA Corporation Python: 3.9.11 Locale: zh_CN.cp936 Qt version: PyQt6 6.4.2, Qt 6.4.2 Qt runtime version: 6.4.3 Qt platform: windows Manufacturer: MECHREVO Model: Z3 Air Series GM5TGEO OS: Microsoft Windows 11 家庭中文版 (Build 22621) Memory: 16,911,499,264 MaxProcessMemory: 137,438,953,344 CPU: 16 11th Gen Intel(R) Core(TM) i7-11800H @ 2.30GHz OSLanguage: zh-CN Installed Packages: alabaster: 0.7.13 appdirs: 1.4.4 asttokens: 2.2.1 Babel: 2.12.1 backcall: 0.2.0 beautifulsoup4: 4.11.2 blockdiag: 3.0.0 build: 0.10.0 certifi: 2023.5.7 cftime: 1.6.2 charset-normalizer: 3.1.0 ChimeraX-AddCharge: 1.5.9.1 ChimeraX-AddH: 2.2.5 ChimeraX-AlignmentAlgorithms: 2.0.1 ChimeraX-AlignmentHdrs: 3.3.1 ChimeraX-AlignmentMatrices: 2.1 ChimeraX-Alignments: 2.9.3 ChimeraX-AlphaFold: 1.0 ChimeraX-AltlocExplorer: 1.0.3 ChimeraX-AmberInfo: 1.0 ChimeraX-Arrays: 1.1 ChimeraX-Atomic: 1.43.10 ChimeraX-AtomicLibrary: 10.0.6 ChimeraX-AtomSearch: 2.0.1 ChimeraX-AxesPlanes: 2.3.2 ChimeraX-BasicActions: 1.1.2 ChimeraX-BILD: 1.0 ChimeraX-BlastProtein: 2.1.2 ChimeraX-BondRot: 2.0.1 ChimeraX-BugReporter: 1.0.1 ChimeraX-BuildStructure: 2.8 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.3.2 ChimeraX-ChangeChains: 1.0.2 ChimeraX-CheckWaters: 1.3.1 ChimeraX-ChemGroup: 2.0.1 ChimeraX-Clashes: 2.2.4 ChimeraX-ColorActions: 1.0.3 ChimeraX-ColorGlobe: 1.0 ChimeraX-ColorKey: 1.5.3 ChimeraX-CommandLine: 1.2.5 ChimeraX-ConnectStructure: 2.0.1 ChimeraX-Contacts: 1.0.1 ChimeraX-Core: 1.6.1 ChimeraX-CoreFormats: 1.1 ChimeraX-coulombic: 1.4.2 ChimeraX-Crosslinks: 1.0 ChimeraX-Crystal: 1.0 ChimeraX-CrystalContacts: 1.0.1 ChimeraX-DataFormats: 1.2.3 ChimeraX-Dicom: 1.2 ChimeraX-DistMonitor: 1.4 ChimeraX-DockPrep: 1.1.1 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.1 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-Label: 1.1.7 ChimeraX-ListInfo: 1.1.1 ChimeraX-Log: 1.1.5 ChimeraX-LookingGlass: 1.1 ChimeraX-Maestro: 1.8.2 ChimeraX-Map: 1.1.4 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.0.12 ChimeraX-MDcrds: 2.6 ChimeraX-MedicalToolbar: 1.0.2 ChimeraX-Meeting: 1.0.1 ChimeraX-MLP: 1.1.1 ChimeraX-mmCIF: 2.12 ChimeraX-MMTF: 2.2 ChimeraX-Modeller: 1.5.9 ChimeraX-ModelPanel: 1.3.7 ChimeraX-ModelSeries: 1.0.1 ChimeraX-Mol2: 2.0 ChimeraX-Mole: 1.0 ChimeraX-Morph: 1.0.2 ChimeraX-MouseModes: 1.2 ChimeraX-Movie: 1.0 ChimeraX-Neuron: 1.0 ChimeraX-Nifti: 1.0 ChimeraX-NRRD: 1.0 ChimeraX-Nucleotides: 2.0.3 ChimeraX-OpenCommand: 1.10.1 ChimeraX-PDB: 2.7.2 ChimeraX-PDBBio: 1.0 ChimeraX-PDBLibrary: 1.0.2 ChimeraX-PDBMatrices: 1.0 ChimeraX-PickBlobs: 1.0.1 ChimeraX-Positions: 1.0 ChimeraX-PresetMgr: 1.1 ChimeraX-PubChem: 2.1 ChimeraX-ReadPbonds: 1.0.1 ChimeraX-Registration: 1.1.1 ChimeraX-RemoteControl: 1.0 ChimeraX-RenderByAttr: 1.1 ChimeraX-RenumberResidues: 1.1 ChimeraX-ResidueFit: 1.0.1 ChimeraX-RestServer: 1.1 ChimeraX-RNALayout: 1.0 ChimeraX-RotamerLibMgr: 3.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.1 ChimeraX-Segger: 1.0 ChimeraX-Segment: 1.0.1 ChimeraX-SelInspector: 1.0 ChimeraX-SeqView: 2.8.3 ChimeraX-Shape: 1.0.1 ChimeraX-Shell: 1.0.1 ChimeraX-Shortcuts: 1.1.1 ChimeraX-ShowSequences: 1.0.1 ChimeraX-SideView: 1.0.1 ChimeraX-Smiles: 2.1 ChimeraX-SmoothLines: 1.0 ChimeraX-SpaceNavigator: 1.0 ChimeraX-StdCommands: 1.10.3 ChimeraX-STL: 1.0.1 ChimeraX-Storm: 1.0 ChimeraX-StructMeasure: 1.1.2 ChimeraX-Struts: 1.0.1 ChimeraX-Surface: 1.0.1 ChimeraX-SwapAA: 2.0.1 ChimeraX-SwapRes: 2.2.1 ChimeraX-TapeMeasure: 1.0 ChimeraX-Test: 1.0 ChimeraX-Toolbar: 1.1.2 ChimeraX-ToolshedUtils: 1.2.1 ChimeraX-Topography: 1.0 ChimeraX-Tug: 1.0.1 ChimeraX-UI: 1.28.4 ChimeraX-uniprot: 2.2.2 ChimeraX-UnitCell: 1.0.1 ChimeraX-ViewDockX: 1.2 ChimeraX-VIPERdb: 1.0 ChimeraX-Vive: 1.1 ChimeraX-VolumeMenu: 1.0.1 ChimeraX-VTK: 1.0 ChimeraX-WavefrontOBJ: 1.0 ChimeraX-WebCam: 1.0.2 ChimeraX-WebServices: 1.1.1 ChimeraX-Zone: 1.0.1 colorama: 0.4.6 comm: 0.1.3 comtypes: 1.1.14 contourpy: 1.0.7 cxservices: 1.2.2 cycler: 0.11.0 Cython: 0.29.33 debugpy: 1.6.7 decorator: 5.1.1 docutils: 0.19 executing: 1.2.0 filelock: 3.9.0 fonttools: 4.39.3 funcparserlib: 1.0.1 grako: 3.16.5 h5py: 3.8.0 html2text: 2020.1.16 idna: 3.4 ihm: 0.35 imagecodecs: 2022.9.26 imagesize: 1.4.1 importlib-metadata: 6.6.0 ipykernel: 6.21.1 ipython: 8.10.0 ipython-genutils: 0.2.0 ipywidgets: 8.0.6 jedi: 0.18.2 Jinja2: 3.1.2 jupyter-client: 8.0.2 jupyter-core: 5.3.0 jupyterlab-widgets: 3.0.7 kiwisolver: 1.4.4 line-profiler: 4.0.2 lxml: 4.9.2 lz4: 4.3.2 MarkupSafe: 2.1.2 matplotlib: 3.6.3 matplotlib-inline: 0.1.6 msgpack: 1.0.4 nest-asyncio: 1.5.6 netCDF4: 1.6.2 networkx: 2.8.8 nibabel: 5.0.1 nptyping: 2.5.0 numexpr: 2.8.4 numpy: 1.23.5 openvr: 1.23.701 packaging: 23.1 ParmEd: 3.4.3 parso: 0.8.3 pep517: 0.13.0 pickleshare: 0.7.5 Pillow: 9.3.0 pip: 23.0 pkginfo: 1.9.6 platformdirs: 3.5.0 prompt-toolkit: 3.0.38 psutil: 5.9.4 pure-eval: 0.2.2 pycollada: 0.7.2 pydicom: 2.3.0 Pygments: 2.14.0 pynrrd: 1.0.0 PyOpenGL: 3.1.5 PyOpenGL-accelerate: 3.1.5 pyparsing: 3.0.9 pyproject-hooks: 1.0.0 PyQt6-commercial: 6.4.2 PyQt6-Qt6: 6.4.3 PyQt6-sip: 13.4.1 PyQt6-WebEngine-commercial: 6.4.0 PyQt6-WebEngine-Qt6: 6.4.3 python-dateutil: 2.8.2 pytz: 2023.3 pywin32: 305 pyzmq: 25.0.2 qtconsole: 5.4.0 QtPy: 2.3.1 RandomWords: 0.4.0 requests: 2.28.2 scipy: 1.9.3 setuptools: 67.4.0 sfftk-rw: 0.7.3 six: 1.16.0 snowballstemmer: 2.2.0 sortedcontainers: 2.4.0 soupsieve: 2.4.1 sphinx: 6.1.3 sphinx-autodoc-typehints: 1.22 sphinxcontrib-applehelp: 1.0.4 sphinxcontrib-blockdiag: 3.0.0 sphinxcontrib-devhelp: 1.0.2 sphinxcontrib-htmlhelp: 2.0.1 sphinxcontrib-jsmath: 1.0.1 sphinxcontrib-qthelp: 1.0.3 sphinxcontrib-serializinghtml: 1.1.5 stack-data: 0.6.2 tables: 3.7.0 tcia-utils: 1.2.0 tifffile: 2022.10.10 tinyarray: 1.2.4 tomli: 2.0.1 tornado: 6.3.1 traitlets: 5.9.0 typing-extensions: 4.5.0 tzdata: 2023.3 urllib3: 1.26.15 wcwidth: 0.2.6 webcolors: 1.12 wheel: 0.38.4 wheel-filename: 1.4.1 widgetsnbextension: 4.0.7 WMI: 1.5.1 zipp: 3.15.0
Change History (12)
comment:1 by , 2 years ago
Component: | Unassigned → Input/Output |
---|---|
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
comment:2 by , 2 years ago
Milestone: | → 1.7 |
---|
comment:3 by , 2 years ago
Description: | modified (diff) |
---|
comment:4 by , 2 years ago
Status: | assigned → feedback |
---|
comment:5 by , 2 years ago
Please provide a way of reproducing this error so I can fix it. Can you send me the 120-chains-virus pdb? If you need to keep it private, send it to me directly at gregc@….
comment:6 by , 2 years ago
Thank for the test file.
For a workaround, instead of:
save 0619_F&G_final_computedSheets.mmcif computedSheets true
do:
dssp save 0619_F&G_final_helixSheets.mmcif
That will save the helix information as well.
comment:7 by , 2 years ago
My mistake. You need to both (a) run the dssp command and (b) use the computedSheets option to get the full secondary structure information into the output file.
comment:8 by , 2 years ago
Status: | feedback → accepted |
---|
comment:9 by , 2 years ago
Cc: | added |
---|---|
Owner: | changed from | to
Status: | accepted → assigned |
Eric needs to investigate whether DSSP output is correct or buggy.
comment:10 by , 2 years ago
Today's daily build has a fix that replaces the traceback with a warning that a bug should be filed.
comment:11 by , 2 years ago
Tweaked computed_sheets output to also output the helix information if there wasn't any helix information in the structure. This avoids running dssp twice, once to get the helix and strand information, and a second time to get the sheet information.
comment:12 by , 23 months ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
The sheet-computation code was doing all the right things when merging two sheets except for actually putting the merged sheet into the sheet map. Fixed in both daily build and 1.7 release candidate.
Fix: https://github.com/RBVI/ChimeraX/commit/ba79f4b5f77bac553d0e1e7fe115238bdaa31425
Chimera is slow reading a mmCIF file due to the code all being in Python. ChimeraX's mmCIF reading is at least an order of magnitude faster because it uses C++ to parse the mmCIF file. If ChimeraX is slow, my guess is that is because it tries to fetch residue templates via the network. And if the network is slow, that would be noticeable. All of those templates are cached, so subsequent opens will be much faster.
I suspect that there is something with ChimeraX's internal data structures that is confusing the mmCIF writing code. Please send me a ChimeraX session or input file that reproduces the problem -- either as an email attachement in response to this email, or, to keep it private, directly to me at gregc@…, or via dropbox, etc.