Collective Iranian Culturebase

Alphabetic Index : A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Search Engine(β):

Ball

توپ


Persian_Gulf_Kish_Island_Dolphin.jpg
(Wikipedia) - The open source project BALL consists of the versatile C++ class framework BALL (Biochemical Algorithms Library), a library of algorithms and data structures targeting molecular modelling and computational structural bioinformatics, a Python interface to this library and the open source graphical interface to BALL, the molecular viewer BALLView (also open source). The library BALL is supplemented with a Python interface for scripting functionality. In addition, BALL offers command line utilities. BALL has been ported to the operating systems Linux, Solaris, Microsoft Windows and MacOS X. BALL uses Qt as well as OpenGL. BALL has evolved from a commercial product into a free-of-charge, open source software licensed under the GNU Lesser General Public License (LGPL). The applied via BALLViewu2019s graphical user interface. BALLView uses OpenGL and the real time ray tracer RTFact as render backends. For both BALLView offers stereoscopic visualization in several different modes. BALLView is a C++ application of BALL and is available under the GPL license for Linux, Solaris, Microsoft Windows, and MacOS X. The BALL project is developed and maintained by groups at Saarland University and University of Tu00FCbingen. Both the library and the viewer are heavily used for education and research alike. BALL packages have been made available in the Debian project in 04/2010. BALL BALL project Developer(s) Stable release Written in Operating system Type License Website
Biochemical Algorithms Library
BALL project team
1.4.1 / 28.11.2011
C++, python
Linux/Unix, Windows, MacOS X
library or framework and 3D molecular modelling application
Lesser GNU Public License (LGPL)
www.ball-project.org
This article includes a list of references, but its sources remain unclear because it has insufficient inline citations. Please help to improve this article by introducing more precise citations. (October 2010)

The open source project BALL consists of the versatile C++ class framework BALL (Biochemical Algorithms Library), a library of algorithms and data structures targeting molecular modelling and computational structural bioinformatics, a Python interface to this library and the open source graphical interface to BALL, the molecular viewer BALLView (also open source).

The library BALL is supplemented with a Python interface for scripting functionality. In addition, BALL offers command line utilities.

BALL has been ported to the operating systems Linux, Solaris, Microsoft Windows and MacOS X. BALL uses Qt as well as OpenGL. BALL has evolved from a commercial product into a free-of-charge, open source software licensed under the GNU Lesser General Public License (LGPL).

Its molecular viewer BALLView is developed by the ball project team as well and allows for the three-dimensional visualization as well as direct application of the algorithms of the BALL library via its graphical user interface.

BALLView uses OpenGL and the real-time ray tracer RTFact as render back ends. For both, BALLView offers stereoscopic visualization in several different modes.

BALLView is a C++ application of BALL and is available under the GPL license for Linux, Solaris, Microsoft Windows, and MacOS X.

The BALL project is developed and maintained by groups at Saarland University, Mainz University, and University of Tübingen. Both the library and the viewer are heavily used for education and research alike. BALL packages have been made available in the Debian project in April 2010.

Contents
  • 1 Key features
  • 2 BALL library
  • 3 Example
  • 4 Python Interface
  • 5 BALLView
  • 6 See also
  • 7 References
  • 8 Further reading
  • 9 External links
Key features

(*) Experimental functionality of the next version

(+) functionality of BALLView

BALL library

The Biochemical Algorithms Library BALL is a comprehensive rapid application development framework for structural bioinformatics. BALL has been carefully designed to address programming experts as well as novices. Users can take advantage of BALL's rich functionality while being offered an extensive framework of C++ data structures and algorithms. A variety of standard structural bioinformatics algorithms are offered and new algorithms can be easily added.

Using BALL as a programming toolbox does not only allow to greatly reduce application development times but also helps in ensuring stability and correctness by avoiding the error-prone reimplementation of complex algorithms and replacing them with calls into the library that has been well-tested by a large number of developers.

File Import/Export

BALL supports a rich variety of molecular file formats like PDB, MOL2, MOL, HIN, XYZ, KCF, SD, AC as well as secondary data sources like DCD, DSN6, GAMESS, JCAMP, SCWRL, and TRR. Molecules can also be created using BALL’s peptide builder or based on SMILES expressions.

General Structure Analysis

Further preparation and structure validation is enabled by, e.g., Kekuliser-, Aromaticity-, Bondorder-, HBond-, and Secondary Structure processors. A Fragment Library automatically infers missing information, e.g., a protein’s hydrogens or bonds. A Rotamer Library allows determining, assigning, and switching between a protein’s most likely side chain conformations. BALL’s Transformation processors guide generation of valid 3D structures. Its selection mechanism enables to specify parts of a molecule by simple expressions (SMILES, SMARTS, element types). This selection can be used by all modeling classes like the processors or force fields.

Molecular Mechanics

Fast and stable implementations of the popular force fields CHARMM, Amber, and MMFF94 can be combined with BALL’s minimizer and simulation classes (steepest decent, conjugate gradient, L-BFGS, and shifted L-VMM).

A variety of standard structural bioinformatics algorithms are offered and new algorithms can be easily added.

Example
This section contains instructions, advice, or how-to content. The purpose of Wikipedia is to present facts, not to train. Please help improve this article either by rewriting the how-to content or by moving it to Wikiversity or Wikibooks. (October 2010)

The following program reads a PDB file, adds missing information like bonds and hydrogens, optimizes the hydrogen positions using the AMBER force field, and writes the resulting molecule into a second pdb file.

using namespace std; using namespace BALL; int main() { // read a PDB file PDBFile file("test.pdb"); System S; file >> S; file.close(); // add missing information // e.g. hydrogens and bonds FragmentDB fragment_db(""); S.apply(fragment_db.normalize_names); S.apply(fragment_db.add_hydrogens); S.apply(fragment_db.build_bonds); // check for charges, bond lengths, // and missing atoms ResidueChecker checker(fragment_db); S.apply(checker); // create an AMBER force field AmberFF FF; S.deselect(); FF.setup(S); Selector selector("element(H)"); S.apply(selector); // optimize the hydrogen's positions ConjugateGradientMinimizer minimizer; minimizer.setup(FF); minimizer.setEnergyOutputFrequency(1); minimizer.minimize(50); // write a PDB File file.open("test_out.pdb", ios::out); file << S; file.close(); } Python Interface

SIP is used to automatically create python classes for all relevant C++ classes in the BALL library to allow for the same class interfaces. The Python classes have the same name as the C++ classes, so porting code that uses BALL from C++ to Python (and vice versa) is usually a trivial task.

For instance, the above C++ code translates to

# Example file = PDBFile("test.pdb") system = System() file.read(system) file.close() # add missing information # e.g. hydrogens and bonds fragment_db = FragmentDB("") system.apply(fragment_db.normalize_names) system.apply(fragment_db.add_hydrogens) system.apply(fragment_db.build_bonds) # check for charges, bond lengths, # and missing atoms checker = ResidueChecker(fragment_db) system.apply(checker) # create an AMBER force field FF = AmberFF() system.deselect() FF.setup(system) selector = Selector("element(H)") system.apply(selector) # optimize the hydrogen's positions minimizer = ConjugateGradientMinimizer() minimizer.setup(FF) minimizer.setEnergyOutputFrequency(1) minimizer.minimize(50) # write a PDB File outfile = PDBFile("test_out.pdb", File.MODE_OUT) outfile.write(system) outfile.close()

The python interface is fully integrated into the viewer application BALLView and thus allows for direct visualization of results computed by python scripts. In addition, BALLView can be operated from the scripting interface and recurring tasks can be automated.

BALLView

BALLView is BALL’s standalone molecular modeling and visualization application. Furthermore, it is also a framework for developing molecular visualization functionality.

BALLView offers standard visualization models for atoms, bonds, and surfaces as well as grid based visualization for e.g. electrostatic potentials. BALLView allows to load a number of molecules at the same time and all representations can be hidden or shown at will. A large part of the functionality of the library BALL can be applied directly to the loaded molecule in BALLView.

BALLView supports a number of modern visualization and input methods like, e.g., different stereo modes, space navigator, and VRPN-supported Input devices.

At CEBIT 2009, for BALLView was prominently presented as the first complete integration of real-time ray tracing technology into a molecular viewer and modelling tool.





See All 3 items matching Ball in Media Gallery

A dolphin plays basketball with a trainer at an aquarium on Kish Island a 5-square-kilometers resort island in the Persian Gulf, part of the Hormozgan Province of Iran. Kish provides many attractions, hotels, restaurants, nightlife, free trade, and more.
Iranian President Mahmoud Ahmadinejad playing soccer
Iranian Police Dog Training : playing with a ball

See also items containing :Ball

Add definition or comments on Ball

Your Name / Alias:
E-mail:
Definition / Comments
neutral points of view
Source / SEO Backlink:
Anti-Spam Check
Enter text above
Upon approval, your definition will be listed under: Ball





Happy Khordadgan, Feast of water, plants and abundance!

Home About us / Contact    Products    Services    Iranian History Today    Iranian B2B Web Directory    Historical Glossary
Copyright @ 2004-2013 fouman.com All Rights Iranian