halaman ini berisi aplikasi untuk membantu segala sesuatu seputar kimia

Aplikasi BKchem

Posted on 13/12/2012

BKChem (Edit Chemical Structures and reactions)
BKChem adalah software Ubuntu untuk pelajaran kimia yang dikemas dengan fitur. Mendukung, menurut tim pengembang website: gambar ikatan molekul, panjang ikatan dan pembatasan sudut untuk membantu dengan gambar, siap untuk menggunakan template umum, mendukung warna, grafik vektor sederhana (persegi panjang, lingkaran, poligon, dan lain – lain) serta lainnya.

Mengedit juga mudah dengan kemampuan unlimited undo dan redo, menyelaraskan, scaling, rotasi (2D, 3D), menyelaraskan molekul, rotasi fragmen molekul , definisi dari gambar (panjang ikatan, lebar, warna).

BKChem memiliki kemampuan ekspor untuk SVG (data asli secara transparan tertanam ke dalam file SVG), OpenOffice Draw format, ODF (OpenOffice 2.0), Encapsulated PostScript, PDF, PNG, dukungan dasar untuk kedua CML1 dan CML2, Molfiles dan generasi SMILES. Dapat juga mengimpor CML1 dan CML2, Molfiles, SMILES (subset) dan inchi (subset).

ChemTool, Pengkonversi Mol dan Massa Zat dari ChemPup

ChemTool sesungguhnya hanyalah sebuah file spreadsheet yang dirancang untuk penkonversian massa zat ke mol dan sebaliknya. Chemtool ini merupakan salah satu applet yang ada dalam Chempup seperti yang saya tulis di ChemPup, Applet Kimia pada Puppy Linux. Sangat sederhana namun cukup inspiratif. Ini tentu masih dapat dikembangkan lebih lanjut untuk pembuatan kalkulator khusus hanya dengan menggunakan spreadsheet. Saya sudah coba mengalihbahasakan ChemTool ini.
Ini adalah bentuk aslinya.
Berikutnya adalah hasil terjemahan dengan tidak mengubah rumus yang ada di dalam-nya.


When you open Avogadro without loading a file it defaults to using the Draw Tool. This tool is the main one that will be used when drawing a new molecule. The screen shot below shows Avogadro 0.8.1 (without the Python terminal) on KDE 4.1. The tool dock is located in the top of the left hand of the interface denoted by the pencil icon.

Avogadro default1.png

You can select the element you would like to use by clicking on the drop down menu which says ‘Carbon (6)’ on the screen shot. Common elements are in the drop down, if the element you would like to use is not in that list then selecting ‘Other…’ will bring up a full periodic table.

Avogadro periodicTable.png

Left clicking once on an element will bring up more details of the element in the bigger box in the top middle. Double clicking an element will select the element and close the periodic table. You can also keep the periodic table open and click on the element you wish to use, clicking on the central OpenGL view will use the currently selected element.




Once you have selected an element you can left click on the black (currently empty) view. This will place one atom of the element you selected under the mouse cursor. If the ‘Adjust Hydrogens’ option is checked then the appropriate number of hydrogens will be added to the molecule for normal valence. Removing the check from the box will stop this from being done.


If you find you have made a mistake or wish to delete a particular atom then right clicking on the atom (or bond) will delete it. Note that if ‘Adjust Hydrogens’ is checked then you cannot delete the added hydrogens as the adjust hydrogens function adjusts the number of hydrogens automatically and so adds the deleted hydrogen back.

Building Molecules

To actually build up a complete molecule you will likely want to draw something more complex. Left clicking on an existing atom, keeping the mouse button pressed and dragging to another location will create a bond between the existing atom and the new one. The bond order can be selected in the ‘Bond Order’ drop down. Alternatively clicking on bonds will adjust their order (single, double, triple, single).

If you need to change an existing atom so that it is another element simply select the desired element and click on the existing atom. With adjust hydrogens that can be used to ‘grow’ molecules by changing the hydrogens. It is possibly to build up many structures using these tools.

Avogadro also has a ‘Fragment Library’ which allows you to browse through a list of molecular fragments, choose one and insert it into the current molecule.

Optimizing the Geometry

Avogadro has three force fields available which can be used to optimize the structure of the molecules drawn. It defaults to use one called MMFF94 which can handle most common organic structures. If you have used transition metals you might want to use UFF which can handle every element. Simply clicking on ‘Extensions->Optimize Geometry’ is usually enough to give you a reasonably well optimized structure. The settings of the force field can be altered by going to ‘Extensions->Molecular Mechanics->Setup Force Field…’

Avogadro MBT.png

The above image shows a molecule drawn using the Draw Tool and then optimized using the default settings of the force field to optimize the geometry of the molecule.

Manipulating Molecules

You don’t always get it right the first time around, or perhaps the geometry optimization has not given you the geometry you are interested in. Avoogadro has two tools to help with manipulating molecules that have already been drawn. These are the Bond Centric Manipulate Tool and the Manipulate Tool. They both allow you to manipulate an existing molecule.

Many tools can work on either the atom clicked on or on a selection of atoms. The Select Tool allows you to make selections and then work on these selections using a different tool. For example a group of five atoms can be selected using the Select Tool and then those atoms can be moved by selecting the Manipulate Tool and left clicking the selection while moving the mouse until the desired configuration is obtained.


Avogadro supports undo/redo. All draw operations can be undone and redone by using the appropriate menu items in the edit menu. If you ever make a mistake simply select ‘Edit->Undo’ (or Ctrl+Z).


Once you are satisfied with the molecule you have drawn you can save it using the ‘File->Save As…’ menu item. A large array of file formats are offered. If no extension is supplied Avogadro will default to using CML which is a good default if you are not sure what format to use.

When you initially open Avogadro you will be presented with a screen such as the one shown below (Avogadro 0.8.1 on KDE 4.1).

Avogadro default.png

You will probably not need the Python terminal and so can safely close it by clicking on the small cross in the top right of the Python terminal dock window. You should be left with something like the screen shot below.

Avogadro default1.png


Opening a File

The first thing you will probably want to do is open a file and navigate around the molecule. To do this click on the File menu and select Open.

Avogadro filemenu.png

You can then look through the files on your disk and find an appropriate chemical file. Thanks to Avogadro’s use of OpenBabel a large number of file types are supported including CML, xyz, PDB etc. Several example molecules are supplied in the Avogadro source tarball.

Avogadro ethanol.png

The screen shot above shows the ethanol.cml file opened up and displayed using the default Ball and Stick display type. Notice that when a new file is opened Avogadro switches from the Draw Tool to the Navigate Tool.



You can zoom in/out using the scroll wheel on your mouse or holding down the middle mouse button and moving the mouse cursor up/down. You can rotate the view by holding down the left mouse button and moving the mouse cursor. You can also translate the view by holding down the right mouse button and moving the mouse cursor.

Note: if your mouse only has one or two buttons you can also use the modifier keys (shift and control) along with the left mouse button to perform actions where you would normally use the middle or right mouse buttons respectively.

Rendering Quality

Avogadro ethanol lo.pngAvogadro ethanol navigate.pngAvogadro ethanol hi.png

The screen shots above were produced by exporting the graphics (File->Export->Export Graphics). The first image (leftmost) shows the scene after navigation at the lowest quality setting. The middle image shows it at medium quality setting and the final image (rightmost/bottom) shows the molecule rendered using the highest quality setting.

The quality of rendering can be adjusted in the Settings menu by selecting ‘Configure Avogadro…’ The slider has five quality levels. As the quality is increased the global quality of all rendering is increased. At the highest two quality levels a second light source is also used. The higher the quality the more CPU/GPU power will be used to render the scene.



Selections Extension

Figure 1: The Select menu.

The “Selections” Extension provides many selection methods accessible through the Select menu. Since the first two items are frequently needed, short-cuts are provided.

Select All  Ctrl+A
Select None  Ctrl+Shift+A

At any point, you can delete the currently selected items by pressing the Backspace key.

Invert Selection

Inverting the current selection is often useful when making selecting which will be assigned to display types (see next tutorial). For example, if you have selected all ligands in a protein complex and assigned it to a display type (e.g. Stick). Inverting the selection will select the protein which can then be assigned to a different display type (e.g. Simple Wireframe)


[SMARTS] are usually used for subgraph searching. The select SMARTS function in Avogadro selects all matched atoms in the molecule. All [SMILES] are valid [SMARTS]:

SMILES      Description
C(=O)O      select all carboxylic acids, esters, ...
N           select all aliphatic nitrogen atoms
n           select all aromatic nitrogen atoms
n1ccccc1    select all atoms in pyridine rings

[SMARTS] are much more powerful though. Here are some examples using SMARTS that cannot be expressed as a single SMILES:

SMARTS      Description
a1aaaa1     select all aromatic atoms in 6 membered rings
A           select all aliphatic atoms
[O,N][#6]   select all ON and NC fragments (O & N are aliphatic, C can be aliphatic or aromatic)

More information on how to write SMILES and SMARTS strings can be found here:

[SMILES – A Simplified Chemical Language] [SMARTS – A Language for Describing Molecular Patterns]

Select by Element

Figure 2: Select by Element.

Clicking the “Select by Element…” action will show a periodic table. Clicking any of the elements in the table will select all atoms for which the atomic number matches the clicked element.

Select by Residue

Figure 3: Select by Residue.

This option allows you to select all residues with a specified residue name (e.g. “VAL”, “TYR”, …). While the VAL and TYR example might not be of great value, this option can often be useful for selecting ligands with a known name. For example, the 1DRF.pdb protein contains a folate molecule with residue name FOL.


HET    FOL  A 187      32                                                       
HETNAM     FOL FOLIC ACID                                                       
FORMUL   4  FOL    C19 H19 N7 O6                                                
ATOM   1508  N1  FOL A 187      26.779  12.325  -3.996  1.00  0.00           N  
ATOM   1509  C2  FOL A 187      27.684  12.453  -5.033  1.00  0.00           C  
ATOM   1510  NA2 FOL A 187      27.113  12.270  -6.218  1.00  0.00           N  

Uisng the select by residue option, it is easy to select the ligand. Once selected, a display type can be assigned to the ligand. When using the cartoon display type for proteins, selections are rendered as wireframe in the selection color (Figure 3).

Select Solvent

Currently, only residues with the name HOH are selected.

Selection Tool

While all previous select methods didn’t involve the 3D widget directly, clicking on atoms and bonds to make selections is possible using the Selection Tool. The selection tool has 3 modes:

  • Atom/Bond: Select the clicked atom/bond
  • Residue: Select the residue to which to clicked atom/bond belongs. This only works for molecules with residues like proteins for example. Both the atoms and the bonds of the residue will be selected.
  • Molecule: Select all atoms and bonds connected to the clicked atom/bond.

The Atom/Bond mode is exclusive without using modifier keys. This means when you click various atoms consecutively, only the last will be selected. This behaviour can be changed by holding the Shift (or Ctrl) modifier key while clicking the atom/bond.

  • Shift (Add modifier): Select additional atom/bond without deselecting any previous selection. When clicking on an already selected atom, this has no effect.
  • Ctrl (Toggle modifier): Same as Shift but deselects a selected atom/bond when clicking on it.

Both Residue and Molecule mode work in a toggle like way. Clicking a previously unselected residue/molecule will select it, clicking it again will deselect it. (note: these modes don’t use modifier keys)

There is one more option for making selections using this tool. Left clicking on an empty space in the 3D widget and moving the mouse cursor will draw a selection box. When the mouse button is released, all atoms and bonds inside the box will be selected. The modifier keys can also be used with selection boxes:

  • Shift (Add modifier): Select additional atom/bond without deselecting any previous selection.
  • Ctrl (Exclusive modifier): Select only the atoms and bonds within the box. Previous selections will be deselected.

Right click on empty space clears the selection.

Named Selections

Figure 4: Named selections in the project tree.

Once a selection has been made, it can often be useful to make it a named selection using Select > Add Named Selection…. This allows for quick reselection later using the Project Tree.

Selecting and the Project Tree

Figure 5: Configuring the project tree.

Figure 6: Named selections in the project tree.

If the project tree is not visible, it can always be made visible again using Settings > Toolbars > Project Tree. If the project tree is empty, items can be added using Settings > Configure Avogadro… (Figure 5). This only needs to be done once, the settings will be stored for later sessions. Some of the items you can add are User Selections, Molecule, Atoms. In the real project tree, these items will expand and contain the actual selections, residues, items and so on. Double clicking an item will select the matching atoms, bonds, … (Figure 6).



  • First, download this 1hiu.pdb file.
  • Open the saved 1hiu.pdb file with the menu File > Open or press Ctrl+O.
  • The molecule will appear in the View 1 panel with a default display type (previously chosen), for example, the Ball and Stick mode as shown below:

Ball and Stick display type – Grey: carbon, red: oxygen, blue: nitrogen, yellow: sulfur

  • To navigate switch to Navigate Tool Navigate.png by choosing it from the toolbar or by pressing F9. Using the mouse or the keyboard, you can zoom, rotate and slide the molecule. To recenter the molecule in the field, choose View > Center or (shortcut ?).
  • Optionally, hydrogen atoms can be removed using Build > remove hydrogens.
  • In the display types menu (the left panel) you can see the available display types listed with checkboxes:

Ball and Stick selected in display types panel

Atoms with the minimum radius

Atoms with the maximum radius

  • By clicking on the Settings Properties button.png (the small wrench icon beside the display type) you can customize the appearance. For instance, the Ball and Stick settings gives you many choices such as:
    • atoms radius
    • bonds radius
    • opacity, very useful if you want to superimpose many display types
    • display or not display of valence (double bonds)

Ball and Stick settings

Selecting and displaying residues

  • Now we will visualize the protein residues or amino acids.
    • select the Stick display type and deselect Ball and Stick or any other
    • Open Stick settings Properties button.png
    • In Colors tab, choose colorize according to residue in the upper drop-down list and amino acids color pattern in the lower one. The result should be as below:

Stick display type with highlighted amino acids

  • In order to recognize residues names, we can easily display the labels. To do so, select Label in the display types menu and in its settingsProperties button.png select residue name from atoms label drop-down list.

Labels display.

  • Now, let’s try to visualize only one residue and identify its positions in this polypeptide chain. For this purpose, we will make selection of a specific amino acid for example let’s take the Leucine abbreviated as LEU. In Selection menu choose Select by Residue…, write LEU in the output box and click OK. Then, in the Objects tab from the Stick settings Properties button.png choose display only selected primitives. As a result, we should obtain the display of 6 Leucine residues:

Displaying only Leucine residues

A walkthrough on creating a custom peptide model in Avogadro
Picture 2 1.png

Select the “Build” menu.
Picture 1.png


Media 1244841742875.png

Bring up the peptide builder window. You can select amino acids to insert into the new peptide.
Media 1244843543134.png

As you click on particular amino acids, they will be added to the sequence on the right. The peptide will build up as a sequence, starting from the N terminus. Of course you can also type the residues directly or paste from an online database.
Media 1244842311139.png

You can pick the secondary structure
Media 1244843607484.png

Click to insert the sequence into the main window. The new oligopeptide will be selected automatically, and the manipulate tool will allow you to translate and rotate the chain into the position you want.
Media 1244842953032.png


Media 1244842940490.png

You may wish to re-center the view, since the new peptide may be large.

In case the python terminal is not visible, it can be made visible by checking the ‘Settings > Toolbars > Python Terminal’ checkbox.

Tut console 1.png

Once the python terminal is visible, the Avogadro module can be imported:

>>> import Avogadro

What to do next depends on what you are trying to achieve. However, we will go over some examples to cover the basics.

The Avogadro module

python’s help(…)

The python terminal resembles a real python terminal as much as possible. This means that you can always use help(…) to list classes, methods, data etc.

>>> help(Avogadro)
Help on module Avogadro:
    molecule = <Avogadro.Molecule object at 0x2128130>
    molecules = <Avogadro.MoleculeList object at 0x20a33d0>
>>> help (Avogadro.Molecule)

Avogadro.molecule and Avogadro.molecules

As can be seen in the output of help(Avogadro) above, the Avogadro python module has 2 DATA members. The first, Avogadro.molecule is the current molecule (i.e. the visible molecule). In many situations, you can directly use this to perform your task. For example, to clear the molecule:

>>> Avogadro.molecule.clear()

The molecule will automatically be updated when return is pressed (i.e. molecule.update() is called automatically).

If you need to create a new molecule, you can’t directly construct one from python. Instead Avogadro.molecules should be used:

>>> newMol = Avogadro.Molecule()     # error
Traceback (most recent call last):
  File "<string>", line 1, in <module>
RuntimeError: This class cannot be instantiated from Python
>>> newMol = Avogadro.molecules.addMolecule()   # works

The Avogadro.molecules object is an instance of the MoleculeList class. This is a python specific class to make sure the molecules are not destroyed by python’s garbage collection.

Iterating over atoms, bonds, …

Iterating over atoms, bonds and so on is easy as can be seen below. When a ‘:’ character is found at the end of a line, the python terminal automatically indents the next line(s) and displays ‘…’ instead of ‘>>>’. To exit the loop, press return, leaving one row ‘…’.

>>> for atom in Avogadro.molecule.atoms:
...   print atom.atomicNumber



Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Google+

You are commenting using your Google+ account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )


Connecting to %s