Skip to content
Dominik Tichy edited this page May 1, 2023 · 23 revisions


AlphaCharges

Overview

αCharges is a web application providing a simple-to-use interface for the calculation of partial atomic charges on protein structures predicted by the AlphaFold2 algorithm [Jumper2021] and deposited in the AlphaFoldDB database [Varadi2022]. The application consists of four pages: Main Page, the Calculation settings page, the Calculation progress page, and the Calculation results page.

Main Page

The main page allows uploading the chosen structure from AlphaFoldDB. The structure must be defined by its UniProt [UniProt2019] accession number (so-called UniProt ID or UniProt code):

image

The UniProt codes of the proteins can be obtained directly from AlphaFoldDB. Here, you can search for your protein, gene, or organism. Examples of UniProt codes, which are accepted by αCharges: A0A159JYF7, Q96247, F4HT52, or C0SV66. Using UniProt entry name (e.g. A0A159JYF7_9DIPT, AUX1_ARATH, F4HT52_ARATH) or UniProt accession number with identification of fragments (e.g. Q8WZ42-F1, Q8WZ42-F2) is not supported by αCharges. An alternative option is AlpfaFold DB Identifier (e.g. AF-L8BU87-F1).

By clicking on the “Calculate charges” button, the computation of charges starts using the default settings (i.e., physiological pH 7.2 and AlphaFoldDB version 4). The user is redirected to the Calculation progress page.

Moreover, it is possible to modify the computation setup using the ”Setup calculation” button. This button redirects the user to the Calculation settings page.

The Main page also offers three use cases – proteins, which partial atomic charges provide interesting information for the research community.

Calculation settings page

This page allows a user to define the settings of the calculation. The Protonate in pH box makes it possible to decide which pH value to use to protonate the chosen protein. The pH values can be from 0 to 14. The AlphaFold prediction version box allows setting the desired database release. Currently, versions v1, v2, v3 and v4 are available; see the details on the AlphaFoldDB FTP page.

image

Clicking on “Calculate charges” will redirect the user to the Calculation progress page.

Calculation progress page

This page informs a user how the calculation proceeds. It shows the following steps:

Step 1/6: Structure downloaded. 
Step 2/6: Structure protonated.
Step 3/6: Molecule loaded. 
Step 4/6: Parameters assigned. 
Step 5/6: Submolecules created. 
Step 6/6: Calculation of partial atomic charges.

It also provides information about the duration of individual steps.

Details about the individual steps

  • Step 1: The structure is downloaded from AlphaFoldDB in the PDB format.
  • Step 2: The structure is protonated by PROPKA3 [Olsson2011] at the default pH or user-defined pH. A PDB file containing hydrogen atoms is created.
  • Step 3: The structure is loaded using the Python library RDKit (https://www.rdkit.org/) and converted into an internal representation.
  • Step 4: Relevant SQE+qp [Schindler2021] parameters are assigned to all atoms.
  • Step 5: The molecule is divided into regions (submolecules) according to the Cutoff/Cover approach [Ionescu2015]. Therefore, the following calculation can be done for each region separately. This approach significantly speeds up the calculation at the cost of minimal error.
  • Step 6: Partial atomic charges are calculated using the SQE+qp empirical charge calculation method [Schindler2021], parameterised using B3LYP/6-31G*/NPA quantum mechanical charges. The parameterisation was explicitly done for AlphaFoldDB molecules.

Calculation results page

This page includes information about the charge calculation process, visualisation of the charged structure and download data section.

Information about the charge calculation process

This information consists of the UniProt structure code, its number of atoms, AlphaFold prediction version and pH. An example of the information is the following:

image

Visualization of the structure

αCharges integrates Mol* viewer [Sehnal2021] to show the calculated charges. The user can select three charge visualisation modes:

  • Cartoon (Figure 1, left), in which the colour of individual amino acids is determined by the sum of charges on its atoms.
  • Surface (Figure 1, middle), in which the protein surface is coloured by partial atomic charges of the nearest atom.
  • Ball & Stick (Figure 1, right), in which the individual atoms are coloured according to their partial atomic charges.
“” “” “”

Figure 1: Visualization of PIN5 protein partial atomic charges (UniProt code Q9FFD0): Cartoon mode (left), Surface mode (middle), Ball & Stick mode (right).

The redder the colour, the more negative the charge, and the bluer the colour, the more positive the charge. The colouring can be relative (according to the highest absolute value of a computed charge) or absolute (the user can specify the range).

Besides, standard colouring options can be used: structure and AlphaFold model confidence (according pLDDT score).

Results download

The ”Download charges and protonated structure” button allows the user to download a ZIP file containing four files, specifically:

  • PDB file contains coordinates of the protonated structure in PDB format.
  • mmCIF file contains coordinates of the protonated protein in mmCIF format and calculated charges. In particular, it defines the following categories:
_sb_ncbr_partial_atomic_charges_meta.id         # id of the charges (e.g. 1)
_sb_ncbr_partial_atomic_charges_meta.type       # type of the charges (optional, e.g. 'empirical')
_sb_ncbr_partial_atomic_charges_meta.method     # calculation method name (e.g. 'QEq', 'SQE+qp/Schindler 2021 (PUB_pept)')

_sb_ncbr_partial_atomic_charges.type_id         # id of the charges (pointer to _sb_ncbr_partial_atomic_charges_meta.id)
_sb_ncbr_partial_atomic_charges.atom_id         # atom id (pointer to _atom_site.id)
_sb_ncbr_partial_atomic_charges.charge          # partial atomic charge 
  • TXT file contains charges of atoms present in the protonated structure. Individual values are separated by spaces. The charges are ordered by indices of the atoms for which they were computed.

  • PQR file contains information about the coordinates and charges of the protonated structure. It is similar to PDB with the two last columns changed to partial atomic charge and atomic radius.

ATOM      1  N   MET     1     -23.494 -19.088  -2.588 -0.7600 2.0000
ATOM      2  CA  MET     1     -22.509 -19.864  -3.374 -0.1289 2.0000
ATOM      3  C   MET     1     -21.922 -18.915  -4.401  0.6910 1.7000
ATOM      4  CB  MET     1     -23.176 -21.067  -4.061 -0.4312 2.0000
ATOM      5  O   MET     1     -22.699 -18.157  -4.963 -0.6850 1.4000

(Values of partial atomic charges are highlighted in bold.)

The PQR file can also be used to visualize charges in other software tools. For example, in PyMol, the structure can be coloured according to its charges this way:

alter all, b=partial_charge cmd.spectrum("b", "blue_white_red", "all", minimum=-1, maximum=1)

or this way:

cmd.spectrum("partial_charge", "blue_white_red", "all", minimum=-1, maximum=1)

Limitations

  • αCharges cannot compute charges for AlphaFoldDB structures that contain errors caused by its prediction via the AlphaFold2 algorithm. For example, in the structure with UniProt code Q8RWZ6, histidine residue (203) is wrongly predicted. In this case, αCharges reports the following error message:

image

  • αCharges cannot compute charges for structures that PROPKA3 wrongly protonates (e.g., the protonation produces carbon with five hydrogens bonded to it). The solution to these errors is now in process (see this GitHub issue).

Browser compatibility

OS Version Chrome Firefox Edge Safari
Linux Fedora 37 110 109 110 n/a
Windows Windows 10 110 109 110 n/a
MacOS Big Sur 11.6 n/a n/a n/a 15.0

Bug reporting

If you encounter an error or have an idea for an improvement, please send a report to Ondrej Schindler ([email protected]) or open a GitHub issue. Thank you!

References

  • [Ionescu2015] Ionescu, C. M., Sehnal, D., Falginella, F. L., Pant, P., Pravda, L., Bouchal, T., ..., Koča, J. (2015). AtomicChargeCalculator: interactive web-based calculation of atomic charges in large biomolecular complexes and drug-like molecules. Journal of cheminformatics, 7(1), 1-13.
  • [Jumper2021] Jumper, J., Evans, R., Pritzel, A., Green, T., Figurnov, M., Ronneberger, O., ..., Hassabis, D. (2021). Highly accurate protein structure prediction with AlphaFold. Nature, 596(7873), 583-589.
  • [Olsson2011] Olsson, M. H., Søndergaard, C. R., Rostkowski, M., Jensen, J. H. (2011). PROPKA3: consistent treatment of internal and surface residues in empirical pKa predictions. Journal of chemical theory and computation, 7(2), 525-537.
  • [Sehnal2021] Sehnal, D., Bittrich, S., Deshpande, M., Svobodová, R., Berka, K., Bazgier, V., ... & Rose, A. S. (2021). Mol* Viewer: modern web app for 3D visualization and analysis of large biomolecular structures. Nucleic Acids Research, 49(W1), W431-W437.
  • [Schindler2021] Schindler, O., Raček, T., Maršavelski, A., Koča, J., Berka, K., Svobodová, R. (2021). Optimized SQE atomic charges for peptides accessible via a web application. Journal of cheminformatics, 13(1), 1-11. [UniProt2019] UniProt Consortium. (2019). UniProt: a worldwide hub of protein knowledge. Nucleic acids research, 47(D1), D506-D515.
  • [Varadi2022] Varadi, M., Anyango, S., Deshpande, M., Nair, S., Natassia, C., Yordanova, G., ..., Velankar, S. (2022). AlphaFold Protein Structure Database: massively expanding the structural coverage of protein-sequence space with high-accuracy models. Nucleic acids research, 50(D1), D439-D444.