Opened 3 years ago
Closed 3 years ago
#8484 closed defect (fixed)
"styling lost" in hand-edited mmCIF
Reported by: | Owned by: | Greg Couch | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Input/Output | Version: | |
Keywords: | Cc: | Tom Goddard | |
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
The following bug report has been submitted: Platform: macOS-10.15.7-x86_64-i386-64bit ChimeraX Version: 1.5 (2022-11-24 00:03:27 UTC) Description (Describe the actions that caused this problem to occur here) Hi Chimera team! I am doing some mmCIF file remediation work that involves changing coordinate xyz values. It seems that sometimes Chimera-X doesn't like the new lines I am printing out (vi python script) for the _atom_site section. For "safety" I have been adding extra spaces between the x,y,z values. As a test, if I mix in a few of these lines into a cif file that Chimera-X is otherwise able to read, I am seeing the error message: mmCIF parsing error: PDBx/mmCIF styling lost near line 2100. e.g.: loop_ _atom_site.group_PDB _atom_site.id _atom_site.type_symbol _atom_site.label_atom_id _atom_site.label_alt_id _atom_site.label_comp_id _atom_site.label_asym_id _atom_site.label_entity_id _atom_site.label_seq_id _atom_site.pdbx_PDB_ins_code _atom_site.Cartn_x _atom_site.Cartn_y _atom_site.Cartn_z _atom_site.occupancy _atom_site.B_iso_or_equiv _atom_site.pdbx_formal_charge _atom_site.auth_seq_id _atom_site.auth_comp_id _atom_site.auth_asym_id _atom_site.auth_atom_id _atom_site.pdbx_auth_seq_id _atom_site.pdbx_auth_comp_id _atom_site.pdbx_auth_asym_id _atom_site.pdbx_auth_atom_name _atom_site.pdbx_PDB_model_num ATOM 1 N N . ALA A 1 1 ? -114.782 -65.938 -17.341 1.00 68.73 ? 1 ALA A N 1 ALA A N 1 ATOM 2 C CA . ALA A 1 1 ? -114.818 -64.550 -16.778 1.00 67.64 ? 1 ALA A CA 1 ALA A CA 1 ATOM 3 C C . ALA A 1 1 ? -113.499 -63.782 -17.023 1.00 66.89 ? 1 ALA A C 1 ALA A C 1 ATOM 4 O O . ALA A 1 1 ? -112.437 -64.369 -17.326 1.00 68.43 ? 1 ALA A O 1 ALA A O 1 ATOM 5 C CB . ALA A 1 1 ? -115.138 -64.589 -15.253 1.00 66.33 ? 1 ALA A CB 1 ALA A CB 1 ATOM 6 N N . SER A 1 2 ? -113.605 -62.464 -16.875 1.00 61.92 ? 2 SER A N 2 SER A N 1 The lines for ATOMS 1-3 are valid cif loop lines but ChimeraX is hiccuping. Log: UCSF ChimeraX version: 1.5 (2022-11-24) © 2016-2022 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > open fullrev-test2.cif mmCIF parsing error: PDBx/mmCIF styling lost near line 2100 OpenGL version: 4.1 INTEL-14.7.28 OpenGL renderer: Intel(R) Iris(TM) Plus Graphics OpenGL Engine OpenGL vendor: Intel Inc. Python: 3.9.11 Locale: en_US.UTF-8 Qt version: PyQt6 6.3.1, Qt 6.3.1 Qt runtime version: 6.3.2 Qt platform: cocoa Hardware: Hardware Overview: Model Name: MacBook Pro Model Identifier: MacBookPro16,2 Processor Name: Quad-Core Intel Core i7 Processor Speed: 2.3 GHz Number of Processors: 1 Total Number of Cores: 4 L2 Cache (per Core): 512 KB L3 Cache: 8 MB Hyper-Threading Technology: Enabled Memory: 32 GB Boot ROM Version: 1731.140.2.0.0 (iBridge: 19.16.16064.0.0,0) Software: System Software Overview: System Version: macOS 10.15.7 (19H2026) Kernel Version: Darwin 19.6.0 Time since boot: 48 days 16:06 Graphics/Displays: Intel Iris Plus Graphics: Chipset Model: Intel Iris Plus Graphics Type: GPU Bus: Built-In VRAM (Dynamic, Max): 1536 MB Vendor: Intel Device ID: 0x8a53 Revision ID: 0x0007 Metal: Supported, feature set macOS GPUFamily2 v1 Displays: Color LCD: Display Type: Built-In Retina LCD Resolution: 2560 x 1600 Retina Framebuffer Depth: 30-Bit Color (ARGB2101010) Main Display: Yes Mirror: Off Online: Yes Automatically Adjust Brightness: No Connection Type: Internal HP E273q: Resolution: 2560 x 1440 (QHD/WQHD - Wide Quad High Definition) UI Looks like: 2560 x 1440 @ 60 Hz Framebuffer Depth: 30-Bit Color (ARGB2101010) Display Serial Number: 6CM0151363 Mirror: Off Online: Yes Rotation: Supported Adapter Type: DVI or HDMI Automatically Adjust Brightness: No Adapter Firmware Version: ff.c1 Installed Packages: alabaster: 0.7.12 appdirs: 1.4.4 appnope: 0.1.3 asttokens: 2.1.0 Babel: 2.11.0 backcall: 0.2.0 blockdiag: 3.0.0 build: 0.8.0 certifi: 2021.10.8 cftime: 1.6.2 charset-normalizer: 2.1.1 ChimeraX-AddCharge: 1.4 ChimeraX-AddH: 2.2.1 ChimeraX-AlignmentAlgorithms: 2.0 ChimeraX-AlignmentHdrs: 3.2.1 ChimeraX-AlignmentMatrices: 2.0 ChimeraX-Alignments: 2.6 ChimeraX-AlphaFold: 1.0 ChimeraX-AltlocExplorer: 1.0.3 ChimeraX-AmberInfo: 1.0 ChimeraX-Arrays: 1.0 ChimeraX-Atomic: 1.41.5 ChimeraX-AtomicLibrary: 8.0.3 ChimeraX-AtomSearch: 2.0.1 ChimeraX-AxesPlanes: 2.3 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.7.1 ChimeraX-Bumps: 1.0 ChimeraX-BundleBuilder: 1.2 ChimeraX-ButtonPanel: 1.0.1 ChimeraX-CageBuilder: 1.0.1 ChimeraX-CellPack: 1.0 ChimeraX-Centroids: 1.3.1 ChimeraX-ChangeChains: 1.0.2 ChimeraX-CheckWaters: 1.3 ChimeraX-ChemGroup: 2.0 ChimeraX-Clashes: 2.2.4 ChimeraX-ColorActions: 1.0.3 ChimeraX-ColorGlobe: 1.0 ChimeraX-ColorKey: 1.5.2 ChimeraX-CommandLine: 1.2.4 ChimeraX-ConnectStructure: 2.0.1 ChimeraX-Contacts: 1.0.1 ChimeraX-Core: 1.5 ChimeraX-CoreFormats: 1.1 ChimeraX-coulombic: 1.3.2 ChimeraX-Crosslinks: 1.0 ChimeraX-Crystal: 1.0 ChimeraX-CrystalContacts: 1.0.1 ChimeraX-DataFormats: 1.2.2 ChimeraX-Dicom: 1.1 ChimeraX-DistMonitor: 1.3 ChimeraX-DockPrep: 1.0 ChimeraX-Dssp: 2.0 ChimeraX-EMDB-SFF: 1.0 ChimeraX-ExperimentalCommands: 1.0 ChimeraX-FileHistory: 1.0.1 ChimeraX-FunctionKey: 1.0.1 ChimeraX-Geometry: 1.2 ChimeraX-gltf: 1.0 ChimeraX-Graphics: 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.2 ChimeraX-MapData: 2.0 ChimeraX-MapEraser: 1.0.1 ChimeraX-MapFilter: 2.0 ChimeraX-MapFit: 2.0 ChimeraX-MapSeries: 2.1.1 ChimeraX-Markers: 1.0.1 ChimeraX-Mask: 1.0.1 ChimeraX-MatchMaker: 2.0.9 ChimeraX-MDcrds: 2.6 ChimeraX-MedicalToolbar: 1.0.2 ChimeraX-Meeting: 1.0.1 ChimeraX-MLP: 1.1 ChimeraX-mmCIF: 2.8 ChimeraX-MMTF: 2.2 ChimeraX-Modeller: 1.5.6 ChimeraX-ModelPanel: 1.3.6 ChimeraX-ModelSeries: 1.0.1 ChimeraX-Mol2: 2.0 ChimeraX-Mole: 1.0 ChimeraX-Morph: 1.0.1 ChimeraX-MouseModes: 1.1.1 ChimeraX-Movie: 1.0 ChimeraX-Neuron: 1.0 ChimeraX-Nucleotides: 2.0.3 ChimeraX-OpenCommand: 1.9.1 ChimeraX-PDB: 2.6.8 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-RenumberResidues: 1.1 ChimeraX-ResidueFit: 1.0.1 ChimeraX-RestServer: 1.1 ChimeraX-RNALayout: 1.0 ChimeraX-RotamerLibMgr: 2.0.1 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 ChimeraX-Segger: 1.0 ChimeraX-Segment: 1.0 ChimeraX-SelInspector: 1.0 ChimeraX-SeqView: 2.7.2 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 ChimeraX-STL: 1.0 ChimeraX-Storm: 1.0 ChimeraX-StructMeasure: 1.1 ChimeraX-Struts: 1.0.1 ChimeraX-Surface: 1.0 ChimeraX-SwapAA: 2.0.1 ChimeraX-SwapRes: 2.1.3 ChimeraX-TapeMeasure: 1.0 ChimeraX-Test: 1.0 ChimeraX-Toolbar: 1.1.2 ChimeraX-ToolshedUtils: 1.2.1 ChimeraX-Tug: 1.0.1 ChimeraX-UI: 1.24.3 ChimeraX-uniprot: 2.2.1 ChimeraX-UnitCell: 1.0.1 ChimeraX-ViewDockX: 1.1.4 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.1 ChimeraX-WebServices: 1.1.0 ChimeraX-Zone: 1.0.1 colorama: 0.4.5 cxservices: 1.2 cycler: 0.11.0 Cython: 0.29.32 debugpy: 1.6.4 decorator: 5.1.1 docutils: 0.19 entrypoints: 0.4 executing: 1.2.0 filelock: 3.7.1 fonttools: 4.38.0 funcparserlib: 1.0.1 grako: 3.16.5 h5py: 3.7.0 html2text: 2020.1.16 idna: 3.4 ihm: 0.33 imagecodecs: 2022.7.31 imagesize: 1.4.1 importlib-metadata: 5.1.0 ipykernel: 6.15.3 ipython: 8.4.0 ipython-genutils: 0.2.0 jedi: 0.18.1 Jinja2: 3.1.2 jupyter-client: 7.3.4 jupyter-core: 5.1.0 kiwisolver: 1.4.4 line-profiler: 3.5.1 lxml: 4.9.1 lz4: 4.0.2 MarkupSafe: 2.1.1 matplotlib: 3.5.2 matplotlib-inline: 0.1.6 msgpack: 1.0.4 nest-asyncio: 1.5.6 netCDF4: 1.6.0 networkx: 2.8.5 numexpr: 2.8.4 numpy: 1.23.1 openvr: 1.23.701 packaging: 21.3 ParmEd: 3.4.3 parso: 0.8.3 pep517: 0.13.0 pexpect: 4.8.0 pickleshare: 0.7.5 Pillow: 9.2.0 pip: 22.2.2 pkginfo: 1.8.3 platformdirs: 2.5.4 prompt-toolkit: 3.0.33 psutil: 5.9.1 ptyprocess: 0.7.0 pure-eval: 0.2.2 pycollada: 0.7.2 pydicom: 2.3.0 Pygments: 2.12.0 PyOpenGL: 3.1.5 PyOpenGL-accelerate: 3.1.5 pyparsing: 3.0.9 PyQt6-commercial: 6.3.1 PyQt6-Qt6: 6.3.2 PyQt6-sip: 13.4.0 PyQt6-WebEngine-commercial: 6.3.1 PyQt6-WebEngine-Qt6: 6.3.2 python-dateutil: 2.8.2 pytz: 2022.6 pyzmq: 24.0.1 qtconsole: 5.3.1 QtPy: 2.3.0 RandomWords: 0.4.0 requests: 2.28.1 scipy: 1.9.0 setuptools: 65.1.1 setuptools-scm: 7.0.5 sfftk-rw: 0.7.2 six: 1.16.0 snowballstemmer: 2.2.0 sortedcontainers: 2.4.0 Sphinx: 5.1.1 sphinx-autodoc-typehints: 1.19.1 sphinxcontrib-applehelp: 1.0.2 sphinxcontrib-blockdiag: 3.0.0 sphinxcontrib-devhelp: 1.0.2 sphinxcontrib-htmlhelp: 2.0.0 sphinxcontrib-jsmath: 1.0.1 sphinxcontrib-qthelp: 1.0.3 sphinxcontrib-serializinghtml: 1.1.5 stack-data: 0.6.2 tables: 3.7.0 tifffile: 2022.7.31 tinyarray: 1.2.4 tomli: 2.0.1 tornado: 6.2 traitlets: 5.3.0 typing-extensions: 4.4.0 urllib3: 1.26.13 wcwidth: 0.2.5 webcolors: 1.12 wheel: 0.37.1 wheel-filename: 1.4.1 zipp: 3.11.0
Change History (4)
comment:1 by , 3 years ago
Cc: | added |
---|---|
Component: | Unassigned → Input/Output |
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → "styling lost" in hand-edited mmCIF |
comment:2 by , 3 years ago
follow-up: 3 comment:3 by , 3 years ago
Dear Greg, Thanks for your reply. The files I have been tasked to update are PDB's internal files that are then (at least in principle) translated into styled public file versions. It will be great to have the fallback path available so that I can readily visualize my changes--I look forward to trying it out. Cathy
comment:4 by , 3 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Added fallback path to read the mmCIF file without PDBx/mmCIF styling when it thought to be styled (audit_conform.dict_name is mmcif_pdbx.dic and audit_conform.dict_version > 4), but isn't.
This also "fixes" reading the unstylized Mol* mmCIF export output, albeit with a performance cost.
This fix will be in the next daily build, and in the 1.6 release.
Note:
See TracTickets
for help on using tickets.
Not surprising. ChimeraX depends on the PDBx/mmCIF styling for a 3X read speed improvement. The styling is shown on https://mmcif.wwpdb.org/docs/faqs/pdbx-mmcif-faq-general.html. Line up your hand edited columns and you should be fine. Only the atom_site and atom_site_aniso mmCIF tables need to be styled. As an aside, I have a pending email to info@… complaining about the lack of commitment to PDBx/mmCIF styling. It's not hard to do, and it is extremely helpful.
That said, I will be putting in a fallback path so files like this will work, just much slower. I'll let you know when that is done.