Opened 5 weeks ago
Last modified 5 weeks ago
#19041 accepted enhancement
chirality command incorrectly says S atom of ligand SAM is non-chiral
| Reported by: | Owned by: | Eric Pettersen | |
|---|---|---|---|
| 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 , 5 weeks 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 , 5 weeks 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.