PyMOL

Last updated

PyMOL
Original author(s) Warren Lyford DeLano
Developer(s) Schrödinger, Inc.
Initial release2000;24 years ago (2000)
Stable release
3.0.0 / 9 April 2024
Repository
Written in C, C++, Python
Operating system Cross-platform: macOS, Unix, Linux, Windows
Platform IA-32, x86-64
Available inEnglish
Type Molecular modelling
License Originally the Python License, [1] now proprietary [2]
Website pymol.org/2/

PyMOL is a source-available [2] molecular visualization system created by Warren Lyford DeLano. It was commercialized initially by DeLano Scientific LLC, which was a private software company dedicated to creating useful tools that become universally accessible to scientific and educational communities. It is currently commercialized by Schrödinger, Inc. As the original software license was a permissive licence, they were able to remove it; new versions are no longer released under the Python license, but under a custom license (granting broad use, redistribution, and modification rights, but assigning copyright to any version to Schrödinger, LLC.), [2] and some of the source code is no longer released. [3] PyMOL can produce high-quality 3D images of small molecules and biological macromolecules, such as proteins. PyMOL is widely used.

Contents

PyMOL is one of the few mostly open-source model visualization tools available for use in structural biology. The Py part of the software's name refers to the program having been written in the programming language Python.

PyMOL uses OpenGL Extension Wrangler Library (GLEW) and FreeGLUT, and can solve Poisson–Boltzmann equations using the Adaptive Poisson Boltzmann Solver. [4] PyMOL used Tk for the GUI widgets and had native Aqua binaries for macOS through Schrödinger, which were replaced with a PyQt user interface on all platforms with the release of version 2.0. [5]

History and commercialization

Early versions of PyMol were released under the Python License. On 1 August 2006, DeLano Scientific adopted a controlled-access download system for precompiled PyMOL builds (including betas) distributed by the company. Access to these executables is now limited to registered users who are paying customers; educational builds are available free to students and teachers. However, most of the current source code continues to be available for free, as are older precompiled builds. While the build systems for other platforms are open, the Windows API (WinAPI, Win32) build system is not, although unofficial Windows binaries are available online. [6] Anyone can either compile an executable from the Python-licensed source code or pay for a subscription to support services to obtain access to precompiled executables.

On 8 January 2010, Schrödinger, Inc. reached an agreement to acquire PyMOL. The firm assumed development, maintenance, support, and sales of PyMOL, including all then-valid subscriptions. They also continue to actively support the PyMOL open-source community. In 2017, Schrödinger revamped the distribution system to unify the user interface under Qt and the package management under Anaconda, and released it as PyMol v2. [5] This version restricts some new functionalities and adds a watermark to the visualization if used unlicensed beyond the 30-day trial period; the overall license policy is similar to the DeLano system. The source code remains mostly available, this time under a BSD-like license. [7] As with the previous distribution, unofficial Windows binaries in the wheel format are available, [6] and indeed Linux distributions continue to provide their own builds of the open-source code.

Element colors

PyMOL applies ball-coloring by element.

Periodic table using PyMOL element colors as background [8]
Hydro­genH#e5e5e5 He­liumHe#d8ffff
Lith­iumLi#cc7fff Beryl­liumBe#c2ff00 BoronB#ffb5b5 CarbonC#33ff33 Nitro­genN#3333ff Oxy­genO#ff4c4c Fluor­ineF#b2ffff NeonNe#b2e2f5
So­diumNa#aa5cf2 Magne­siumMg#8aff00 Alumin­iumAl#bfa5a5 Sili­conSi#f0c79f Phos­phorusP#ff7f00 SulfurS#e5c53f Chlor­ineCl#1ef01e ArgonAr#7fd0e2
Potas­siumK#8f3fd3 Cal­ciumCa#3cff00 Scan­diumSc#e5e5e5 Tita­niumTi#bfc2c7 Vana­diumV#a5a5aa Chrom­iumCr#8a99c7 Manga­neseMn#9c7ac7 IronFe#e06633 CobaltCo#f08f9f NickelNi#4fd04f CopperCu#c77f33 ZincZn#7c7faf GalliumGa#c28f8f Germa­niumGe#668f8f ArsenicAs#bd7fe2 Sele­niumSe#ffa000 BromineBr#a52929 Kryp­tonKr#5cb7d0
Rubid­iumRb#6f2eaf Stront­iumSr#00ff00 YttriumY#94ffff Zirco­niumZr#94e0e0 Nio­biumNb#72c2c8 Molyb­denumMo#54b5b5 Tech­netiumTc#3a9d9d Ruthe­niumRu#248f8f Rho­diumRh#097c8c Pallad­iumPd#006984 SilverAg#bfbfbf Cad­miumCd#ffd88f IndiumIn#a57472 TinSn#667f7f Anti­monySb#9d62b5 Tellur­iumTe#d37a00 IodineI#940094 XenonXe#419daf
Cae­siumCs#57168f Ba­riumBa#00c800 Asterisks one.svg Lute­tiumLu#00aa24 Haf­niumHf#4cc2ff Tanta­lumTa#4ca5ff Tung­stenW#2194d5 Rhe­niumRe#267caa Os­miumOs#266695 IridiumIr#165487 Plat­inumPt#d0d0e0 GoldAu#ffd023 Mer­curyHg#b7b7d0 ThalliumTl#a5544c LeadPb#575961 Bis­muthBi#9d4fb5 Polo­niumPo#aa5c00 Asta­tineAt#744f44 RadonRn#418295
Fran­ciumFr#410066 Ra­diumRa#007c00 Asterisks 2 (vertical).svg Lawren­ciumLr#c70066 Ruther­fordiumRf#cc0059 Dub­niumDb#d0004f Sea­borgiumSg#d80044 Bohr­iumBh#e00037 Has­siumHs#e5002e Meit­neriumMt#ea0026 Darm­stadtiumDs Roent­geniumRg Coper­niciumCn Nihon­iumNh Flerov­iumFl Moscov­iumMc Liver­moriumLv Tenness­ineTs Oga­nessonOg

Asterisks one.svg Lan­thanumLa#6fd3ff CeriumCe#ffffc7 Praseo­dymiumPr#d8ffc7 Neo­dymiumNd#c7ffc7 Prome­thiumPm#a2ffc7 Sama­riumSm#8fffc7 Europ­iumEu#61ffc7 Gadolin­iumGd#44ffc7 Ter­biumTb#2fffc7 Dyspro­siumDy#1effc7 Hol­miumHo#00ff9c ErbiumEr#00e574 ThuliumTm#00d351 Ytter­biumYb#00bf37
Asterisks 2 (vertical).svg Actin­iumAc#6faafa Thor­iumTh#00baff Protac­tiniumPa#00a0ff Ura­niumU#008fff Neptu­niumNp#007fff Pluto­niumPu#006aff Ameri­ciumAm#545cf2 CuriumCm#775ce2 Berkel­iumBk#8a4fe2 Califor­niumCf#a036d3 Einstei­niumEs#b21ed3 Fer­miumFm#b21eba Mende­leviumMd#b20ca5 Nobel­iumNo#bd0c87

See also

Related Research Articles

<span class="mw-page-title-main">Qt (software)</span> Object-oriented framework for software development

Qt or is a cross-platform application development framework for creating graphical user interfaces as well as cross-platform applications that run on various software and hardware platforms such as Linux, Windows, macOS, Android or embedded systems with little or no change in the underlying codebase while still being a native application with native capabilities and speed.

<span class="mw-page-title-main">MinGW</span> Free and open-source software for developing applications in Microsoft Windows

MinGW, formerly mingw32, is a free and open source software development environment to create Microsoft Windows applications.

<span class="mw-page-title-main">PyQt</span> Python GUI library

PyQt is a Python binding of the cross-platform GUI toolkit Qt, implemented as a Python plug-in. PyQt is free software developed by the British firm Riverbank Computing. It is available under similar terms to Qt versions older than 4.5; this means a variety of licenses including GNU General Public License (GPL) and commercial license, but not the GNU Lesser General Public License (LGPL). PyQt supports Microsoft Windows as well as various kinds of UNIX, including Linux and MacOS.

<span class="mw-page-title-main">PyGTK</span> Set of Python wrappers for the GTK graphical user interface library

PyGTK is a set of Python wrappers for the GTK graphical user interface library. PyGTK is free software and licensed under the LGPL. It is analogous to PyQt/PySide and wxPython, the Python wrappers for Qt and wxWidgets, respectively. Its original author is GNOME developer James Henstridge. There are six people in the core development team, with various other people who have submitted patches and bug reports. PyGTK has been selected as the environment of choice for applications running on One Laptop Per Child systems.

<span class="mw-page-title-main">RasMol</span> Software for the visualisation of macromolecules

RasMol is a computer program written for molecular graphics visualization intended and used mainly to depict and explore biological macromolecule structures, such as those found in the Protein Data Bank (PDB).

eric (software) Python development environment

eric is a free integrated development environment (IDE) used for computer programming. Since it is a full featured IDE, it provides by default all necessary tools needed for the writing of code and for the professional management of a software project.

GRIB is a concise data format commonly used in meteorology to store historical and forecast weather data. It is standardized by the World Meteorological Organization's Commission for Basic Systems, known under number GRIB FM 92-IX, described in WMO Manual on Codes No.306. Currently there are three versions of GRIB. Version 0 was used to a limited extent by projects such as TOGA, and is no longer in operational use. The first edition is used operationally worldwide by most meteorological centers, for Numerical Weather Prediction output (NWP). A newer generation has been introduced, known as GRIB second edition, and data is slowly changing over to this format. Some of the second-generation GRIB is used for derived products distributed in the Eumetcast of Meteosat Second Generation. Another example is the NAM model.

<span class="mw-page-title-main">BALL</span>

BALL is a C++ class framework and set of algorithms and data structures for molecular modelling and computational structural bioinformatics, a Python interface to this library, and a graphical user interface to BALL, the molecule viewer BALLView.

<span class="mw-page-title-main">3D Slicer</span> Image analysis and scientific visualization software

3D Slicer (Slicer) is a free and open source software package for image analysis and scientific visualization. Slicer is used in a variety of medical applications, including autism, multiple sclerosis, systemic lupus erythematosus, prostate cancer, lung cancer, breast cancer, schizophrenia, orthopedic biomechanics, COPD, cardiovascular disease and neurosurgery.

Enthought, Inc. is a software company based in Austin, Texas, United States that develops scientific and analytic computing solutions using primarily the Python programming language. It is best known for the early development and maintenance of the SciPy library of mathematics, science, and engineering algorithms and for its Python for scientific computing distribution Enthought Canopy.

<span class="mw-page-title-main">Avogadro (software)</span>

Avogadro is a molecule editor and visualizer designed for cross-platform use in computational chemistry, molecular modeling, bioinformatics, materials science, and related areas. It is extensible via a plugin architecture.

<span class="mw-page-title-main">PySide</span>

PySide is a Python binding of the cross-platform GUI toolkit Qt developed by The Qt Company, as part of the Qt for Python project. It is one of the alternatives to the standard library package Tkinter. Like Qt, PySide is free software. PySide supports Linux/X11, macOS, and Microsoft Windows. The project can also be cross compiled to embedded systems like Raspberry Pi, and Android devices.

<span class="mw-page-title-main">Python Package Index</span> Software repository

The Python Package Index, abbreviated as PyPI and also known as the Cheese Shop, is the official third-party software repository for Python. It is analogous to the CPAN repository for Perl and to the CRAN repository for R. PyPI is run by the Python Software Foundation, a charity. Some package managers, including pip, use PyPI as the default source for packages and their dependencies.

<span class="mw-page-title-main">KVIrc</span> IRC Client

KVIrc is a graphical IRC client for Linux, Unix, Mac OS and Windows. The name is an acronym of K Visual IRC in which the K stands for a dependency to KDE, which became optional from version 2.0.0. The software is based on the Qt framework and its code is released under a modified GNU General Public License.

<span class="mw-page-title-main">PyCharm</span> Python programming integrated development environment

PyCharm is an integrated development environment (IDE) used for programming in Python. It provides code analysis, a graphical debugger, an integrated unit tester, integration with version control systems, and supports web development with Django. PyCharm is developed by the Czech company JetBrains and built on their IntelliJ platform.

<span class="mw-page-title-main">Spyder (software)</span> IDE for scientific programming in Python

Spyder is an open-source cross-platform integrated development environment (IDE) for scientific programming in the Python language. Spyder integrates with a number of prominent packages in the scientific Python stack, as well as other open-source software. Created by Pierre Raybaut and released in 2009 under the MIT license, since 2012 Spyder has been maintained and continuously improved by Python developers and the community.

<span class="mw-page-title-main">Anaconda (Python distribution)</span> Python and R distribution

Anaconda is an open source data science and artificial intelligence distribution platform for Python and R programming languages. Developed by Anaconda, Inc., an American company founded in 2012, the platform is used to develop and manage data science and AI projects. In 2024, Anaconda Inc. has about 300 employees and 45 million users.

References

  1. "PyMOL Molecular Graphics System". SourceForge.
  2. 1 2 3 "Open-Source PyMOL". Schrodinger, Inc. 5 November 2021. Retrieved 7 November 2021.
  3. "PyMOL | pymol.org". pymol.org. Retrieved 7 November 2021. Open-Source Philosophy
    PyMOL is a commercial product, but we make most of its source code freely available under a permissive license. The open source project is maintained by Schrödinger and ultimately funded by everyone who purchases a PyMOL license.
    Open source enables open science.
    This was the vision of the original PyMOL author Warren L. DeLano.
  4. "APBS". poissonboltzmann.org. Archived from the original on 24 February 2020. Retrieved 7 October 2020.
  5. 1 2 "PyMOL v2.0 Release Notes".
  6. 1 2 "Python Extension Packages for Windows - Christoph Gohlke". lfd.uci.edu. Retrieved 26 October 2019.
  7. "schrodinger/pymol-open-source". GitHub. Retrieved 24 June 2019.
  8. "Color Values". pymolwiki. 2010. Retrieved 4 September 2021.