Opened 2 years ago

Closed 2 years ago

#10139 closed defect (limitation)

number of electrons + formal charge is odd

Reported by: bandacyedek@… Owned by: Eric Pettersen
Priority: normal Milestone:
Component: Structure Editing Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        macOS-14.1-arm64-arm-64bit
ChimeraX Version: 1.6rc202304272016 (2023-04-27 20:16:52 UTC)
Description
(Describe the actions that caused this problem to occur here)

Log:
UCSF ChimeraX version: 1.6rc202304272016 (2023-04-27)  
© 2016-2023 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> open "/Users/buseandac/Desktop/PDB files/Crystal structure of a class A
> GPCR.pdb"

Crystal structure of a class A GPCR.pdb title:  
Crystal structure of A class A GPCR [more info...]  
  
Chain information for Crystal structure of a class A GPCR.pdb #1  
---  
Chain | Description | UniProt  
A | C-X-C chemokine receptor type 2,GLGA glycogen synthase,C-X- C chemokine
receptor type 2 | CXCR2_HUMAN 37-241 244-344, Q9V2J8_PYRAB 1001-1196  
  
Non-standard residues in Crystal structure of a class A GPCR.pdb #1  
---  
EBX —
4-[[3,4-bis(oxidanylidene)-2-[[(1~{R})-1-(4-propan-2-ylfuran-2-yl)propyl]amino]cyclobuten-1-yl]amino]-~{N},~{N}-dimethyl-3-oxidanyl-
pyridine-2-carboxamide  
  

> ui tool show "Dock Prep"

Deleting solvent  
Deleting non-metal-complex ions  
Deleting non-current alt locs  
Filling out missing side chains  
/A TYR 49: phi -61.6, psi -41.6 trans  
/A ARG 153: phi -79.2, psi 140.1 trans  
/A ARG 208: phi -64.2, psi -33.0 trans  
/A ARG 212: phi -109.0, psi -28.8 trans  
/A ARG 1102: phi -50.0, psi -20.9 trans  
/A ARG 1106: phi -65.2, psi -45.1 trans  
/A ARG 289: phi none, psi 144.6 trans  
Applying TYR rotamer (chi angles: -72.7 110.3) to /A TYR 49  
Applying ARG rotamer (chi angles: -61.5 -68.9 -173.7 -88.2) to /A ARG 153  
Applying ARG rotamer (chi angles: -70.5 177.9 -180.0 172.8) to /A ARG 208  
Applying ARG rotamer (chi angles: -178.6 75.1 -84.1 170.5) to /A ARG 212  
Applying ARG rotamer (chi angles: -70.1 -178.8 -175.6 -84.1) to /A ARG 1102  
Applying ARG rotamer (chi angles: -72.5 -172.1 -73.0 106.3) to /A ARG 1106  
Applying ARG rotamer (chi angles: -67.7 179.1 -179.0 176.3) to /A ARG 289  
Summary of feedback from adding hydrogens to Crystal structure of a class A
GPCR.pdb #1  
---  
notes | Termini for Crystal structure of a class A GPCR.pdb (#1) chain A
determined from SEQRES records  
Chain-initial residues that are actual N termini:  
Chain-initial residues that are not actual N termini: /A ILE 46, /A ALA 205,
/A ARG 289  
Chain-final residues that are actual C termini:  
Chain-final residues that are not actual C termini: /A ASP 199, /A THR 279, /A
SER 336  
415 hydrogen bonds  
Adding 'H' to /A ILE 46  
Adding 'H' to /A ALA 205  
Adding 'H' to /A ARG 289  
/A SER 336 is not terminus, removing H atom from 'C'  
3953 hydrogens added  
  
Closest equivalent command: addcharge standardizeResidues none  
Using Amber 20 recommended default charges and atom types for standard
residues  
Assigning partial charges to residue EBX (net charge +0) with am1-bcc method  
Traceback (most recent call last):  
File
"/Applications/ChimeraX-1.6-rc2023.04.30.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/add_charge/tool.py", line 263, in add_charges  
add_nonstandard_res_charges(self.session, residues, charge, method=method)  
File
"/Applications/ChimeraX-1.6-rc2023.04.30.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/add_charge/charge.py", line 319, in
add_nonstandard_res_charges  
nonstd_charge(session, tautomer_residues, net_charge, method, status=status)  
File
"/Applications/ChimeraX-1.6-rc2023.04.30.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/add_charge/charge.py", line 522, in nonstd_charge  
raise ChargeError("%s: number of electrons (%d) + formal charge (%+d) is odd;
cannot compute charges"  
chimerax.add_charge.charge.ChargeError: EBX: number of electrons (225) +
formal charge (+0) is odd; cannot compute charges for radical species using
AM1-BCC method  
  
chimerax.add_charge.charge.ChargeError: EBX: number of electrons (225) +
formal charge (+0) is odd; cannot compute charges for radical species using
AM1-BCC method  
  
File
"/Applications/ChimeraX-1.6-rc2023.04.30.app/Contents/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-
packages/chimerax/add_charge/charge.py", line 522, in nonstd_charge  
raise ChargeError("%s: number of electrons (%d) + formal charge (%+d) is odd;
cannot compute charges"  
  
See log for complete Python traceback.  
  




OpenGL version: 4.1 Metal - 88
OpenGL renderer: Apple M1
OpenGL vendor: Apple

Python: 3.9.11
Locale: UTF-8
Qt version: PyQt6 6.4.2, Qt 6.4.2
Qt runtime version: 6.4.3
Qt platform: cocoa
Hardware:

    Hardware Overview:

      Model Name: MacBook Air
      Model Identifier: MacBookAir10,1
      Model Number: MGND3TU/A
      Chip: Apple M1
      Total Number of Cores: 8 (4 performance and 4 efficiency)
      Memory: 8 GB
      System Firmware Version: 10151.41.12
      OS Loader Version: 10151.41.12

Software:

    System Software Overview:

      System Version: macOS 14.1 (23B74)
      Kernel Version: Darwin 23.1.0
      Time since boot: 41 dakika 35 saniye

Graphics/Displays:

    Apple M1:

      Chipset Model: Apple M1
      Type: GPU
      Bus: Built-In
      Total Number of Cores: 7
      Vendor: Apple (0x106b)
      Metal Support: Metal 3
      Displays:
        Color LCD:
          Display Type: Built-In Retina LCD
          Resolution: 2560 x 1600 Retina
          Main Display: Yes
          Mirror: Off
          Online: Yes
          Automatically Adjust Brightness: Yes
          Connection Type: Internal


Installed Packages:
    alabaster: 0.7.13
    appdirs: 1.4.4
    appnope: 0.1.3
    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: 2021.10.8
    cftime: 1.6.2
    charset-normalizer: 3.1.0
    ChimeraX-AddCharge: 1.5.9.1
    ChimeraX-AddH: 2.2.4
    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.6rc202304272016
    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
    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.2.22
    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: 21.3
    ParmEd: 3.4.3
    parso: 0.8.3
    pep517: 0.13.0
    pexpect: 4.8.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
    ptyprocess: 0.7.0
    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
    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
    setuptools-scm: 7.0.5
    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
    zipp: 3.15.0

Change History (2)

comment:1 by Eric Pettersen, 2 years ago

Component: UnassignedStructure Editing
Owner: set to Eric Pettersen
Platform: all
Project: ChimeraX
Status: newaccepted
Summary: ChimeraX bug report submissionnumber of electrons + formal charge is odd

comment:2 by Eric Pettersen, 2 years ago

Resolution: limitation
Status: acceptedclosed

Hi Buse,

Thanks for reporting this problem. This error message suggests to me that the coordinates for the EBX entity in your structure aren't very good and that therefore ChimeraX does not guess the atom types correctly and in turn does not protonate the structure correctly, resulting in an odd number of total electrons.
If I open the EBX structure from PubChem ("open pubchem:153466996"), the protonation is correct and the add-charges step of Dock Prep works. Is there any chance you could use the PubChem version of EBX rather than the one currently in your structure.
Otherwise you will have to correct the atom types for your version before the (incorrect) protons get added. You can see the atom types of both versions with Actions→Label→Atoms→IDATM Type. Then for each atom in your version that differs, you could select that atom and run "setattr sel atoms idatm_type whatever-the-correct-type-is"

--Eric

Eric Pettersen
UCSF Computer Graphics Lab

Note: See TracTickets for help on using tickets.