Building Molecules¶
In the first tutorial you have learned how to construct a molecule by building it out of atoms. That may be a complex task for bigger molecules. AMSinput has other ways to build molecules.
The quickest is to search () for a molecule inside AMSinput, and use it if it is available.
Another way is to search for the molecule on the Internet, and use either the xyz coordinates or the SMILES string
Or you can build it using the structure tool in AMSinput. As a more realistic example using the structure tool, you will build a small peptide chain. Then you will learn how to use the predefined metal complex structures. You will also learn how to set up your own structures library.
Finally, you can combine the crystal tools to cut molecular systems out of crystals. As an example we will make a sphere of Cu atoms.
Start AMSinput¶
For this tutorial we again prefer to work in the Tutorial directory:
Search for ethanol¶
The quickest solution: search (and find) ethanol.
Your ethanol is ready. The (ADF) in the search results mean that the molecule has already been optimized by ADF, using the BP86 XC potential with a TZP basis set and small core.
For the next demonstration we need a file with the xyz coordinates of ethanol. You can make such a file using the Export Coordinates option:
Import XYZ for ethanol¶
To import a molecule if you have its structure as xyz file (with element types), you can either use the File → Import Coordinates… or the Edit → Paste command.
AMSinput will start and automatically import the .xyz file.
Tip
Copy/Paste data into AMSinput: works for many formats (like xyz, SMILES or InChI strings)
An alternative and often easier way: just copy the contents of the .xyz file.
The coordinates are:
C 0.01247000 0.02254000 1.08262000
C -0.00894000 -0.01624000 -0.43421000
H -0.49334000 0.93505000 1.44716000
H 1.05522000 0.04512000 1.44808000
H -0.64695000 -1.12346000 2.54219000
H 0.50112000 -0.91640000 -0.80440000
H 0.49999000 0.86726000 -0.84481000
H -1.04310000 -0.02739000 -0.80544000
O -0.66442000 -1.15471000 1.56909000
You should again get the ethanol molecule, just as you have saved it.
Import SMILES string¶
AMSinput can also interpret SMILES strings (via OpenBabel). As a demonstration, lets try again with Ethanol:
Again we have an ethanol molecule. SMILES strings do not contain the 3D structure, it was generated by OpenBabel and is NOT an ADF optimized structure. So normally the next step would be to pre-optimize with UFF (via the cog wheel), and to optimize the geometry with ADF.
Build ethanol using the structure tool¶
As a demonstration on how to use the structure tool , we start by building a methane molecule:
The next step is to add a methyl group, using the structures tool :
Notice that the button of the structures menu is glowing, which means that the structure-tool is in use.
You will see that the hydrogen is replaced by a methyl group.
Note that:
The methyl is orientated along the newly formed C-C bond and the new hydrogens point away from the existing ones.
The double-clicked hydrogen is replaced by the carbon atom, since this atom is the ‘replacing’ atom. This atom is defined through having xyz-coordinates (0,0,0).
The background glow moved from the ‘Structures’ tool to the ‘Pointer’ tool button; the ‘Pointer’ tool is active again.
To create ethanol, we need to add a hydroxyl group:
Again, the hydrogen is replaced by the structure. In this case, the oxygen replaces the double-clicked atom. The hydrogen is precisely aligned along the C-O bond and points away from the rest of the molecule. This shows you the very general way in which the structures will align according to the bonds in the original molecule and those in the structure. In this case, the hydroxyl group is not immediately orientated as it normally would be in an ethanol molecule:
And again we have constructed an ethanol molecule.
AMSinput comes with a many predefined structures. Among them are some typical solvent molecules, so that you can easily add solvent molecules around your system. One of these ‘Solvent’ structures is Ethanol. Now add this molecule in empty space:
Note that the oxygen is selected. Again, this oxygen is defined through having xyz-coordinates (0,0,0). Next we select the new molecule and orient it with the mouse to a reasonable position:
Building a peptide chain using the structures tool¶
Now we will build a small peptide chain as another example using the structures tool.
There appears a subunit (or actually two) of a basic peptide chain. Notice that one of the atoms is selected, namely the terminal nitrogen. This atom is, again, the ‘replacing’ atom. In order to extend the peptide backbone, you now have to choose the right atom to be replaced. The obvious choice is the (non double-bonded) terminal oxygen.
Tip
Press the space bar to reuse the previous structure tool
In a similar fashion, you can now replace the hydrogens on the backbone by amino acid side groups of your choice. These can be found in the → Amino Acid → AA Side Groups sub-menu.
Metal complexes and ligands¶
In the sub-menu ‘Metal Complexes’ you can find a set of predefined complexes corresponding to commonly encountered geometries. Furthermore, there are a number of ligands to be found, which can be easily used with these metal complexes.
Predefined Metal Complex Geometries¶
Notice that six dummy (“Xx”) atoms have been placed around the metal center in an octahedral fashion.
The Ligands structure sub-menu contains a number of ligands which can be used to replace the dummy atoms. The Structure menu can, however, also be reached via the Atoms menu.
Notice that all dummy atoms in the selection are replaced by CN ligands.
Bidentate Ligands¶
In order to use the bidentate ligands, we must start with a bare metal center.
You can see that, in this case, the metal atom is not replaced by an atom of the structure, contrary to previous experience, but that the bidentate ligand is simply attached to the central metal atom.
This works because the ‘replacing’ atom in all bidentate structures is a dummy atom, which has the property that it won’t replace an existing atom. The metal atom will simply take over the bonds that existed on the dummy atom in the structure. You can easily verify this when you would place the structure in empty space. Other multidentate ligands are defined in a similar fashion.
Notice that the second ligand appears opposite the existing one.
Modifying the Plane Angle¶
To change the relative orientation of two bidentate ligands, we can change the plane angle. The planes are defined by two sets of three atoms, the central one being present in both sets. In this case this will, of course, be the metal atom.
In this way, you can easily change the environment around the metal from square planer to tetrahedral. This feature works as long as you choose the atoms in right order, and if the defined planes can freely rotate relative to each other.
Your own structures library¶
You can make your own structure library very easily.
By default, user defined structures will be stored in the .scm_gui/Structures directory.
Defining your structures¶
To be able to actually use the structures as described earlier, it is necessary to define one of the atoms as having xyz-coordinates (0,0,0). This will then be the atom that will actually appear at the spot of the atom that is replaced by the structure. If you use the Save As Structure command this will be done for you.
The new structure will appear in the structures menu and can be directly used.
Using dummy atoms¶
Dummy (“Xx”) atoms are treated differently when used in structures. A dummy atom will not replace an existing atom when it is defined as the ‘replacing atom’. Instead, the double-clicked atom will remain and will accept the bonds that the dummy atom had in the structure.
Now you can select the structure from the structures menu and directly use it.
Notice that the hydrogen atom is not removed and that the NH3 group is attached to it. Similar behavior has been demonstrated with the bidentate ligands, where the dummy atoms are also used.
If you want to clean up your structures, you can use the → Manage Structures… command. If you use it, AMSjobs will open and show the contents of your Structures directory. As the structures are just (simplified) .ams files, you can open them using AMSinput. And using AMSjobs you can rename them or delete them.
A sphere of Cu atoms, cut out of the crystal¶
We start making a Cu crystal, using a super cell so we have many real Cu atoms.
To build the crystal, we need to use the periodic tools. These will work only for programs supporting periodicity.
Now we have a block of Cu, with explicit Cu atoms (that is using a super cell). Next we will center this block, and select a sphere of atoms around the origin.
As you can see, you have a (very small) sphere consisting of Cu atoms in the molecular ADF program:
Obviously, by making a bigger super-cell and selecting atoms within a larger radius you can make bigger spheres.
A carbon nanotube¶
A small piece of nanotube is included in the molecule database, so you can just search for it and use it. However, typically one wants some specific nanotube structure. And make it infinite (periodic in one dimension). This can conveniently be done by importing the structure as found on the web:
In the browser windows we get the nanotube structure in CIF format, something like the following:
data_nanotube
_audit_creation_method '(3,3) Nanotube -- TubeGen 3.3, J T Frey, University of Delaware'
_cell_length_a 7.4762
_cell_length_b 7.4762
_cell_length_c 2.4643
_cell_angle_alpha 90.00
_cell_angle_beta 90.00
_cell_angle_gamma 120.00
_symmetry_space_group_name_H-M 'P 1'
_symmetry_Int_Tables_number 1
loop_
_atom_site_label
_atom_site_fract_x
_atom_site_fract_y
_atom_site_fract_z
C 0.7762 0.5000 0.0000
C 0.8138 0.7061 0.0000
C 0.7762 0.7762 0.5000
C 0.6077 0.8138 0.5000
C 0.5000 0.7762 0.0000
C 0.2939 0.6077 0.0000
C 0.2238 0.5000 0.5000
C 0.1862 0.2939 0.5000
C 0.2238 0.2238 0.0000
C 0.3923 0.1862 0.0000
C 0.5000 0.2238 0.5000
C 0.7061 0.3923 0.5000
Next we want to get this structure into AMSinput:
We see a piece of nanotube, repeated in all directions. Actually nine nanotubes are visible.
Notice that the nanotubes are oriented along the Z-axes.
The GUI can handle one-dimensional systems. However, in case of a one dimensional system (a chain) the lattice vector is always along the X direction. So to change our nanotube in a nice periodic one-dimensional structure we need to rotate it (including the lattice vectors) such that the tube is along the X-axes.
The Rotate 90 command did not only rotate the coordinates of the atoms, but also the lattice vectors. Now we have a small piece of nanotube (remember it already is repeated 3 times for visualization purposes). This might be sufficient for your purposes, but it is easy to make a bigger piece:
Switch to some non-periodic code (like ADF) if you wish to treat this piece of nanotube without infinite symmetry.
If you have a large system you can sometimes get a better view by introducing Fog. This works best with a white background.