#20317 closed defect (fixed)
add_coordsets() checking against coordset_size
| Reported by: | Tristan Croll | Owned by: | Eric Pettersen |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | Core | Version: | |
| Keywords: | Cc: | ||
| Blocked By: | Blocking: | ||
| Notify when closed: | Platform: | all | |
| Project: | ChimeraX |
Description
The following bug report has been submitted:
Platform: Windows-10-10.0.26200
ChimeraX Version: 1.11.1 (2026-01-23 05:51:34 UTC)
Description
Got myself into a spot of trouble trying to turn an array of atomic coordinate snapshots (from an ISOLDE simulation - capturing `model.atoms.coords` at every coordinate update) into a coordset trajectory ... from what I can see, I *think* the problem is that the model (model #2 in the attached .cxs) was pared down from a larger structure, and `m.coordset_size` is still reporting the original size. I was messing around in the shell so the Log is useless, but here's the relevant snippet:
{{{
len(m.atoms)
Out[22]: 1873
cp_array = numpy.array(checkpoints)
cp_array.shape
Out[24]: (654, 1873, 3)
m.add_coordsets(cp_array, True)
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
Cell In[25], line 1
----> 1 m.add_coordsets(cp_array, True)
File C:\Program Files\ChimeraX\bin\Lib\site-packages\chimerax\atomic\molobject.py:1782, in StructureData.add_coordsets(self, xyzs, replace)
1780 do_check = dim_check > 0
1781 if do_check and xyzs.shape[1] != dim_check:
-> 1782 raise ValueError('add_coordsets(): second dimension of coordinate array'
1783 ' must be same as %s' % check_text)
1784 if xyzs.shape[2] != 3:
1785 raise ValueError('add_coordsets(): third dimension of coordinate array'
1786 ' must be 3 (xyz)')
ValueError: add_coordsets(): second dimension of coordinate array must be same as previous coordinate sets
m.coordset_size
Out[26]: 2950
}}}
Trying to force the issue with:
{{{
m.add_coordset(2, cp_array[0])
m.active_coordset_id = 2
}}}
left some atoms with uninitialized values in their coords, effectively killing the session (main viewer window is blank, even after deleting the model and trying to focus back on an unmolested one).
OpenGL version: 3.3.0 NVIDIA 595.79
OpenGL renderer: NVIDIA GeForce RTX 3070 Laptop GPU/PCIe/SSE2
OpenGL vendor: NVIDIA Corporation
Python: 3.11.9
Locale: en_GB.cp1252
Qt version: PyQt6 6.9.1, Qt 6.9.0
Qt runtime version: 6.9.2
Qt platform: windows
Manufacturer: HP
Model: HP ZBook Studio 15.6 inch G8 Mobile Workstation PC
OS: Microsoft Windows 11 Pro (Build 26200)
Memory: 34,007,068,672
MaxProcessMemory: 137,438,953,344
CPU: 16 11th Gen Intel(R) Core(TM) i7-11800H @ 2.30GHz
OSLanguage: en-GB
Installed Packages:
aiohappyeyeballs: 2.6.1
aiohttp: 3.13.1
aiosignal: 1.4.0
alabaster: 1.0.0
annotated-types: 0.7.0
anyio: 4.12.1
appdirs: 1.4.4
asttokens: 3.0.1
attrs: 25.4.0
babel: 2.17.0
beautifulsoup4: 4.13.5
blockdiag: 3.0.0
blosc2: 3.12.2
build: 1.3.0
certifi: 2026.1.4
cftime: 1.6.5
charset-normalizer: 3.4.4
ChimeraX-AddCharge: 1.5.20
ChimeraX-AddH: 2.2.8
ChimeraX-AlignmentAlgorithms: 2.0.2
ChimeraX-AlignmentHdrs: 3.6.1
ChimeraX-AlignmentMatrices: 2.1
ChimeraX-Alignments: 3.1.1
ChimeraX-AlphaFold: 1.0.1
ChimeraX-AltlocExplorer: 1.2
ChimeraX-AmberInfo: 1.0
ChimeraX-Animations: 1.0
ChimeraX-Aniso: 1.3.2
ChimeraX-Arrays: 1.1
ChimeraX-Atomic: 1.61.4
ChimeraX-AtomicLibrary: 14.2.1
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-Clipper: 0.26.1
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.1
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-ISOLDE: 1.11.1
ChimeraX-ItemsInspection: 1.0.1
ChimeraX-IUPAC: 1.0
ChimeraX-KVFinder: 1.7.3
ChimeraX-Label: 1.2
ChimeraX-ListInfo: 1.2.2
ChimeraX-Log: 1.2.2
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-MCPServer: 0.1.0
ChimeraX-MDcrds: 2.17.2
ChimeraX-MedicalToolbar: 1.1
ChimeraX-Meeting: 1.0.1
ChimeraX-Minimize: 1.3.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-OpenBabel: 0.1
ChimeraX-OpenCommand: 1.15.2
ChimeraX-OrthoPick: 1.0.1
ChimeraX-PDB: 2.7.12
ChimeraX-PDBBio: 1.0.1
ChimeraX-PDBLibrary: 1.0.5
ChimeraX-PDBMatrices: 1.0
ChimeraX-PickBlobs: 1.0.1
ChimeraX-Positions: 1.0
ChimeraX-PresetMgr: 1.1.4
ChimeraX-ProfileGrids: 1.4.2
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.3
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.3.1
ChimeraX-SchemeMgr: 1.0
ChimeraX-SDF: 2.0.3
ChimeraX-Segger: 1.0
ChimeraX-Segment: 1.0.1
ChimeraX-Segmentations: 3.5.10
ChimeraX-SelInspector: 1.0
ChimeraX-SeqView: 2.17.3
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.49.1
ChimeraX-Umap: 1.0
ChimeraX-uniprot: 2.3.2
ChimeraX-UnitCell: 1.0.1
ChimeraX-ViewDock: 1.5.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.5
ChimeraX-Zone: 1.0.1
click: 8.3.1
colorama: 0.4.6
comm: 0.2.3
comtypes: 1.4.11
contourpy: 1.3.3
coverage: 7.13.1
cxservices: 1.2.3
cycler: 0.12.1
Cython: 3.1.4
debugpy: 1.8.19
decorator: 5.2.1
docutils: 0.21.2
executing: 2.2.1
filelock: 3.19.1
fonttools: 4.61.1
frozenlist: 1.8.0
funcparserlib: 2.0.0a0
glfw: 2.10.0
grako: 3.16.5
h11: 0.16.0
h5py: 3.15.1
html2text: 2025.4.15
httpcore: 1.0.9
httpx: 0.28.1
httpx-sse: 0.4.3
idna: 3.11
ihm: 2.2
imagecodecs: 2024.6.1
imagesize: 1.4.1
iniconfig: 2.3.0
ipykernel: 6.30.1
ipython: 9.5.0
ipython_pygments_lexers: 1.1.1
ipywidgets: 8.1.8
jedi: 0.19.2
Jinja2: 3.1.6
jsonschema: 4.26.0
jsonschema-specifications: 2025.9.1
jupyter_client: 8.6.3
jupyter_core: 5.9.1
jupyterlab_widgets: 3.0.16
kiwisolver: 1.4.9
line_profiler: 5.0.0
lxml: 6.0.2
lz4: 4.3.2
Markdown: 3.8.2
MarkupSafe: 3.0.3
matplotlib: 3.10.7
matplotlib-inline: 0.2.1
mcp: 1.18.0
msgpack: 1.1.1
multidict: 6.7.0
narwhals: 2.17.0
ndindex: 1.10.1
nest-asyncio: 1.6.0
netCDF4: 1.6.5
networkx: 3.3
nibabel: 5.2.0
nptyping: 2.5.0
numexpr: 2.14.1
numpy: 2.2.6
numpy: 1.26.4
nvidia-nvjitlink-cu12: 12.9.86
openbabel-wheel: 3.1.1.23
OpenMM: 8.2.0
OpenMM-CUDA-12: 8.2.0
openvr: 1.26.701
packaging: 25.0
ParmEd: 4.2.2
parso: 0.8.5
pep517: 0.13.1
pickleshare: 0.7.5
pillow: 11.3.0
pip: 25.2
pkginfo: 1.12.1.2
platformdirs: 4.5.1
plotly: 6.5.2
pluggy: 1.6.0
prompt_toolkit: 3.0.52
propcache: 0.4.1
psutil: 7.0.0
pure_eval: 0.2.3
py-cpuinfo: 9.0.0
pybind11: 3.0.1
pycollada: 0.8
pydantic: 2.12.5
pydantic-settings: 2.12.0
pydantic_core: 2.41.5
pydicom: 2.4.4
Pygments: 2.18.0
pyKVFinder: 0.9.0
pynmrstar: 3.3.6
pynrrd: 1.0.0
PyOpenGL: 3.1.10
PyOpenGL-accelerate: 3.1.10
pyopenxr: 1.1.4501
pyparsing: 3.3.2
pyproject_hooks: 1.2.0
PyQt6-commercial: 6.9.1
PyQt6-Qt6: 6.9.2
PyQt6-WebEngine-commercial: 6.9.0
PyQt6-WebEngine-Qt6: 6.9.2
PyQt6_sip: 13.10.2
pytest: 9.0.2
pytest-cov: 7.0.0
python-dateutil: 2.9.0.post0
python-dotenv: 1.2.1
python-multipart: 0.0.21
pywin32: 311
pyzmq: 27.1.0
qtconsole: 5.7.0
QtPy: 2.4.3
qtshim: 1.2
RandomWords: 0.4.0
referencing: 0.37.0
requests: 2.32.5
roman-numerals: 4.1.0
roman-numerals-py: 4.1.0
rpds-py: 0.30.0
scipy: 1.14.0
Send2Trash: 2.1.0
SEQCROW: 1.9.7
setuptools: 80.9.0
sfftk-rw: 0.8.1
six: 1.17.0
snowballstemmer: 3.0.1
sortedcontainers: 2.4.0
soupsieve: 2.8.3
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
sse-starlette: 3.2.0
stack-data: 0.6.3
starlette: 0.52.1
superqt: 0.7.6
tables: 3.10.2
tcia_utils: 1.5.1
tifffile: 2025.3.13
tinyarray: 1.2.5
tomlkit: 0.14.0
tornado: 6.5.4
traitlets: 5.14.3
typing-inspection: 0.4.2
typing_extensions: 4.15.0
tzdata: 2025.3
urllib3: 2.6.3
uvicorn: 0.40.0
wcwidth: 0.3.2
webcolors: 24.11.1
wheel: 0.45.1
wheel-filename: 1.4.2
widgetsnbextension: 4.0.15
WMI: 1.5.1
yarl: 1.22.0
File attachment: setup_2.cxs
Attachments (1)
Change History (5)
by , 4 weeks ago
| Attachment: | setup_2.cxs added |
|---|
comment:1 by , 4 weeks ago
If I save model #2 to file, re-open it and repeat my attempts with that, all works as expected. On Wed, May 13, 2026 at 3:55 PM ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu> wrote: > > >
comment:2 by , 4 weeks ago
| Component: | Unassigned → Core |
|---|---|
| Owner: | set to |
| Platform: | → all |
| Project: | → ChimeraX |
| Status: | new → accepted |
| Summary: | ChimeraX bug report submission → add_coordsets() checking against coordset_size |
comment:3 by , 4 weeks ago
| Resolution: | → fixed |
|---|---|
| Status: | accepted → closed |
Hi Tristan,
Yes, if atoms have been deleted then coordset_size could be bigger than the number of atoms. This has been fixed since mid-March, so the fix is in the daily build and the 1.12 release candidate, but not in the 1.11 release you're currently using. Thanks for reporting it though.
--Eric
comment:4 by , 4 weeks ago
Awesome, thanks! On Wed, 13 May 2026 at 18:00, ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu> wrote: > > > > >
Note:
See TracTickets
for help on using tickets.
Added by email2trac