Opened 11 days ago
Last modified 10 days ago
#19041 accepted enhancement
chirality command incorrectly says S atom of ligand SAM is non-chiral
Reported by: | Owned by: | pett | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Structure Analysis | Version: | |
Keywords: | Cc: | Elaine Meng | |
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
The following bug report has been submitted: Platform: macOS-15.6.1-arm64-arm-64bit ChimeraX Version: 1.11.dev202509171705 (2025-09-17 17:05:04 UTC) Description Seems the sulfur atom of CCD ligand SAM is chiral (S) but ChimeraX chirality command says it is not chiral. Not sure how one decides with only 3 attached atoms that it is chiral. I was reading a Boltz github issue about SAM sulfur atom being assigned the wrong chirality so I thought I'd see what ChimeraX says. https://github.com/jwohlwend/boltz/issues/589 Log: UCSF ChimeraX version: 1.11.dev202509171705 (2025-09-17) © 2016-2025 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > open SAM fromDatabase ccd SAM title: S-adenosylmethionine Opened CCD SAM > select /A:1@SD 1 atom, 1 residue, 1 model selected > chirality sel There are no possible stereo centers in the specified atoms > chirality #1 /A SAM 1 C1' is R /A SAM 1 C2' is R /A SAM 1 C3' is S /A SAM 1 C4' is S /A SAM 1 C5' is not chiral /A SAM 1 CA is S /A SAM 1 CB is not chiral /A SAM 1 CE is not chiral /A SAM 1 CG is not chiral /A SAM 1 N is not chiral OpenGL version: 4.1 Metal - 89.4 OpenGL renderer: Apple M2 Ultra OpenGL vendor: Apple Python: 3.11.9 Locale: en_US.UTF-8 Qt version: PyQt6 6.9.1, Qt 6.9.0 Qt runtime version: 6.9.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: 11881.140.96 OS Loader Version: 11881.140.96 Software: System Software Overview: System Version: macOS 15.6.1 (24G90) Kernel Version: Darwin 24.6.0 Time since boot: 46 days, 15 hours, 51 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: alabaster: 1.0.0 appdirs: 1.4.4 appnope: 0.1.4 asttokens: 3.0.0 babel: 2.17.0 beautifulsoup4: 4.13.5 blockdiag: 3.0.0 blosc2: 3.8.0 build: 1.3.0 certifi: 2025.8.3 cftime: 1.6.4.post1 charset-normalizer: 3.4.3 ChimeraX-AddCharge: 1.5.20 ChimeraX-AddH: 2.2.7 ChimeraX-AlignmentAlgorithms: 2.0.2 ChimeraX-AlignmentHdrs: 3.6.1 ChimeraX-AlignmentMatrices: 2.1 ChimeraX-Alignments: 3.0.2 ChimeraX-AlphaFold: 1.0.1 ChimeraX-AltlocExplorer: 1.1.2 ChimeraX-AmberInfo: 1.0 ChimeraX-Aniso: 1.3.2 ChimeraX-Arrays: 1.1 ChimeraX-Atomic: 1.60.17 ChimeraX-AtomicLibrary: 14.2 ChimeraX-AtomSearch: 2.0.1 ChimeraX-AxesPlanes: 2.4 ChimeraX-BasicActions: 1.1.3 ChimeraX-BILD: 1.0 ChimeraX-BlastProtein: 3.0.0 ChimeraX-Boltz: 1.1 ChimeraX-BondRot: 2.0.4 ChimeraX-BugReporter: 1.0.2 ChimeraX-BuildStructure: 2.13.1 ChimeraX-Bumps: 1.0 ChimeraX-BundleBuilder: 1.6.0 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.5 ChimeraX-ChemGroup: 2.0.2 ChimeraX-Clashes: 2.3 ChimeraX-clix: 0.2.4 ChimeraX-ColorActions: 1.0.5 ChimeraX-ColorGlobe: 1.0 ChimeraX-ColorKey: 1.5.8 ChimeraX-CommandLine: 1.3.0 ChimeraX-ConnectStructure: 2.0.1 ChimeraX-Contacts: 1.0.1 ChimeraX-Core: 1.11.dev202509171705 ChimeraX-CoreFormats: 1.2 ChimeraX-coulombic: 1.4.5 ChimeraX-Crosslinks: 1.0 ChimeraX-Crystal: 1.0 ChimeraX-CrystalContacts: 1.0.1 ChimeraX-DataFormats: 1.2.4 ChimeraX-Dicom: 1.2.7 ChimeraX-DistMonitor: 1.4.2 ChimeraX-DockPrep: 1.1.4 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.4.1 ChimeraX-Hbonds: 2.5.3 ChimeraX-Help: 1.3 ChimeraX-HKCage: 1.3 ChimeraX-IHM: 1.1 ChimeraX-ImageFormats: 1.2 ChimeraX-IMOD: 1.0 ChimeraX-IO: 1.0.4 ChimeraX-ItemsInspection: 1.0.1 ChimeraX-IUPAC: 1.0 ChimeraX-KVFinder: 1.7.1 ChimeraX-Label: 1.2 ChimeraX-ListInfo: 1.2.2 ChimeraX-Log: 1.2.1 ChimeraX-LookingGlass: 1.1 ChimeraX-Maestro: 1.9.2 ChimeraX-Map: 1.3 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.2.2 ChimeraX-MCopy: 1.0 ChimeraX-MDcrds: 2.17.1 ChimeraX-MedicalToolbar: 1.1 ChimeraX-Meeting: 1.0.1 ChimeraX-Minimize: 1.2 ChimeraX-MLP: 1.1.1 ChimeraX-mmCIF: 2.16 ChimeraX-MMTF: 2.2 ChimeraX-ModelArchive: 1.0 ChimeraX-Modeller: 1.5.22 ChimeraX-ModelPanel: 1.6 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.1 ChimeraX-MutationScores: 1.0 ChimeraX-Neuron: 1.0 ChimeraX-Nifti: 1.2 ChimeraX-NMRSTAR: 1.0.2 ChimeraX-NRRD: 1.2 ChimeraX-Nucleotides: 2.0.3 ChimeraX-OpenCommand: 1.15.1 ChimeraX-OrthoPick: 1.0.1 ChimeraX-PDB: 2.7.11 ChimeraX-PDBBio: 1.0.1 ChimeraX-PDBLibrary: 1.0.5 ChimeraX-PDBMatrices: 1.0 ChimeraX-PhenixUI: 1.3.9 ChimeraX-PickBlobs: 1.0.1 ChimeraX-Positions: 1.0 ChimeraX-PresetMgr: 1.1.3 ChimeraX-ProfileGrids: 1.3.1 ChimeraX-PubChem: 2.2 ChimeraX-ReadPbonds: 1.0.1 ChimeraX-Registration: 1.1.2 ChimeraX-RemoteControl: 1.0 ChimeraX-RenderByAttr: 1.6.5 ChimeraX-RenumberResidues: 1.1 ChimeraX-ResidueFit: 1.0.1 ChimeraX-RestServer: 1.3.1 ChimeraX-RNALayout: 1.0 ChimeraX-RotamerLibMgr: 4.0 ChimeraX-RotamerLibsDunbrack: 2.0 ChimeraX-RotamerLibsDynameomics: 2.0 ChimeraX-RotamerLibsRichardson: 2.0 ChimeraX-SaveCommand: 1.5.2 ChimeraX-Scenes: 0.2.1 ChimeraX-SchemeMgr: 1.0 ChimeraX-SDF: 2.0.3 ChimeraX-Segger: 1.0 ChimeraX-Segment: 1.0.1 ChimeraX-Segmentations: 3.5.7 ChimeraX-SelInspector: 1.0 ChimeraX-SeqView: 2.17.2 ChimeraX-Shape: 1.1 ChimeraX-Shell: 1.0.1 ChimeraX-Shortcuts: 1.2.1 ChimeraX-ShowSequences: 1.0.3 ChimeraX-SideView: 1.0.1 ChimeraX-SimilarStructures: 1.0.1 ChimeraX-Smiles: 2.1.2 ChimeraX-SmoothLines: 1.0 ChimeraX-SpaceNavigator: 1.0 ChimeraX-StdCommands: 1.19.1 ChimeraX-STL: 1.0.1 ChimeraX-Storm: 1.0 ChimeraX-StructMeasure: 1.2.1 ChimeraX-Struts: 1.0.1 ChimeraX-Surface: 1.0.1 ChimeraX-SwapAA: 2.0.1 ChimeraX-SwapRes: 2.5.2 ChimeraX-TapeMeasure: 1.0 ChimeraX-TaskManager: 1.0 ChimeraX-Test: 1.0 ChimeraX-Toolbar: 1.2.3 ChimeraX-ToolshedUtils: 1.2.4 ChimeraX-Topography: 1.0 ChimeraX-ToQuest: 1.0 ChimeraX-Tug: 1.0.1 ChimeraX-UI: 1.48.2 ChimeraX-Umap: 1.0 ChimeraX-uniprot: 2.3.1 ChimeraX-UnitCell: 1.0.1 ChimeraX-ViewDock: 1.4 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.5 ChimeraX-Zone: 1.0.1 colorama: 0.4.6 comm: 0.2.3 contourpy: 1.3.3 coverage: 7.10.6 cxservices: 1.2.3 cycler: 0.12.1 Cython: 3.1.3 debugpy: 1.8.17 decorator: 5.2.1 docutils: 0.21.2 executing: 2.2.1 filelock: 3.19.1 fonttools: 4.60.0 funcparserlib: 2.0.0a0 glfw: 2.10.0 grako: 3.16.5 h5py: 3.14.0 html2text: 2025.4.15 idna: 3.10 ihm: 2.2 imagecodecs: 2024.6.1 imagesize: 1.4.1 iniconfig: 2.1.0 ipykernel: 6.30.1 ipython: 9.5.0 ipython_pygments_lexers: 1.1.1 ipywidgets: 8.1.7 jedi: 0.19.2 Jinja2: 3.1.6 joblib: 1.5.0 jupyter_client: 8.6.3 jupyter_core: 5.8.1 jupyterlab_widgets: 3.0.15 kiwisolver: 1.4.9 line_profiler: 5.0.0 llvmlite: 0.44.0 lxml: 6.0.1 lz4: 4.3.2 Markdown: 3.8.2 MarkupSafe: 3.0.2 matplotlib: 3.10.3 matplotlib: 3.10.5 matplotlib-inline: 0.1.7 msgpack: 1.1.1 narwhals: 2.6.0 ndindex: 1.10.0 nest-asyncio: 1.6.0 netCDF4: 1.6.5 networkx: 3.3 nibabel: 5.2.0 nptyping: 2.5.0 numba: 0.61.2 numexpr: 2.12.1 numpy: 2.3.3 numpy: 1.26.4 OpenMM: 8.2.0 openvr: 1.26.701 packaging: 25.0 ParmEd: 4.2.2 parso: 0.8.5 pep517: 0.13.1 pexpect: 4.9.0 pickleshare: 0.7.5 pillow: 11.3.0 pip: 25.2 pkginfo: 1.12.1.2 platformdirs: 4.4.0 plotly: 6.3.1 pluggy: 1.6.0 prompt_toolkit: 3.0.52 psutil: 7.0.0 ptyprocess: 0.7.0 pure_eval: 0.2.3 py-cpuinfo: 9.0.0 pybind11: 3.0.1 pycollada: 0.8 pydicom: 2.4.4 Pygments: 2.18.0 pyKVFinder: 0.8.3 pynmrstar: 3.3.6 pynndescent: 0.5.13 pynrrd: 1.0.0 PyOpenGL: 3.1.10 PyOpenGL-accelerate: 3.1.10 pyopenxr: 1.1.4501 pyparsing: 3.2.4 pyproject_hooks: 1.2.0 PyQt6: 6.9.1 PyQt6-Qt6: 6.9.2 PyQt6-WebEngine: 6.9.0 PyQt6-WebEngine-Qt6: 6.9.2 PyQt6_sip: 13.10.2 pytest: 8.4.2 pytest-cov: 7.0.0 python-dateutil: 2.9.0.post0 pytz: 2025.2 pyzmq: 27.1.0 qtconsole: 5.7.0 QtPy: 2.4.3 qtshim: 1.2 RandomWords: 0.4.0 requests: 2.32.4 roman-numerals-py: 3.1.0 scikit-learn: 1.6.1 scipy: 1.14.0 Send2Trash: 1.8.3 SEQCROW: 1.9.2 setuptools: 80.9.0 sfftk-rw: 0.8.1 six: 1.17.0 snowballstemmer: 3.0.1 sortedcontainers: 2.4.0 soupsieve: 2.8 Sphinx: 8.2.3 sphinx-autodoc-typehints: 3.2.0 sphinxcontrib-applehelp: 2.0.0 sphinxcontrib-blockdiag: 3.0.0 sphinxcontrib-devhelp: 2.0.0 sphinxcontrib-htmlhelp: 2.1.0 sphinxcontrib-jsmath: 1.0.1 sphinxcontrib-qthelp: 2.0.0 sphinxcontrib-serializinghtml: 2.0.0 stack-data: 0.6.3 superqt: 0.7.6 tables: 3.10.2 tcia_utils: 1.5.1 threadpoolctl: 3.6.0 tifffile: 2025.3.13 tinyarray: 1.2.5 tomlkit: 0.13.3 tornado: 6.5.2 tqdm: 4.67.1 traitlets: 5.14.3 typing_extensions: 4.15.0 tzdata: 2025.2 umap-learn: 0.5.7 urllib3: 2.5.0 wcwidth: 0.2.13 webcolors: 24.11.1 wheel: 0.45.1 wheel-filename: 1.4.2 widgetsnbextension: 4.0.14
Change History (2)
comment:1 by , 11 days ago
Component: | Unassigned → Structure Analysis |
---|---|
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → chirality command incorrectly says S atom of ligand SAM is non-chiral |
comment:2 by , 10 days ago
Cc: | added |
---|---|
Status: | assigned → accepted |
Type: | defect → enhancement |
Note:
See TracTickets
for help on using tickets.
Strictly speaking, the CIP rules for determining chirality require four atoms to be bound to the chiral center. This is because in many cases there is a low barrier to inversion of the center if one of the "substituents" is only a lone pair. This is particularly true for nitrogen, which easily passes through a temporary sp2 state to invert the center. Nonetheless, for sulphur and phosphorus, this inversion is much harder to achieve and the CIP rules could be amended in such cases to treat them as actual chiral centers.