Creating atomic structures — ASE documentation

### Navigation

- index
- modules |
- Documentation for modules in ASE »

# Creating atomic structures

- Molecules
- Common bulk crystals
- Nanotubes
- Graphene nanoribbons
- Surfaces
  - Common surfaces
  - Create specific non-common surfaces
- General crystal structures and surfaces
  - Example
  - Available crystal lattices
  - Usage
  - Defining new lattices

ASE contains a number of modules for setting up atomic structures, mainly molecules, bulk crystals and surfaces. Some of these modules have overlapping functionality, but strike a different balance between flexibility and ease-of-use.

Common bulk crystals

The `ase.lattice.bulk()` function can be used to create the most common bulk crystal structures. The function creates a single unit cell oriented such that the number of atoms in the cell is minimal.

Read more: Common bulk crystals.

Common surfaces

The `ase.lattice.surface` module contains a number of functions for creating the most common surfaces in a minimal unit cell, and for adding adsorbates to these surfaces.

Read more: Surfaces.

Nanotubes and nanoribbons

The functions `ase.structure.nanotube()` and `ase.structure.graphene_nanoribbon()` can be used to create Carbon nanotubes and graphene sheets or nanoribbons. Per default, they create Carbon nanotubes and sheets, but other elements can be used.

Read more: Nanotubes and Graphene nanoribbons.

Generally oriented bulk crystals and surfaces

The `ase.lattice` module contains functions for creating most common crystal structures with arbitrary orientation. The user can specify the desired Miller index along the three axes of the simulation, and the smallest periodic structure fulfilling this specification is created. Thirteen of the 14 Bravais lattices are supported by the module, as are a few lattices with a basis, and lattices for some of the most common compounds/alloys. The modules makes it possible to define further lattices based on the supported Bravais lattices.

Both bulk crystals and surfaces can be created.

Read more: General crystal structures and surfaces.

Molecules

Some common molecules can be constructed using the `ase.structure.molecule()` function.

Read more: Molecular data.

### Navigation

- index
- modules |
- Documentation for modules in ASE »