Construct surface mesh
This modifier constructs a polyhedral surface mesh around a set of particles. It can be used to generate a geometric representation of the outer and inner surfaces of an atomistic solid. In addition to visualization purposes, the geometric description of the surface is good for quantitative measurements of the surface area and the solid volume or porosity of an atomistic structure.
After constructing the surface, the modifier also computes and reports the total surface area and the solid volume of the solid. If you are using this analysis modifier, please cite the following article, which describes the algorithm implemented in OVITO:
The surface construction algorithm requires considerable memory, typically up to 1 kilobyte per input particle. So make sure your system has enough RAM available when applying this modifier to a large dataset.
The visual appearance of the polyhedral mesh generated by this modifier is controlled by the attached surface mesh visual element.
How the surface generation works
In classical atomistic simulations the atoms that constitute a solid are modeled as point-like objects. Consequently, the simulated solid has no volume and no surface if it is described as such a set of zero-dimensional points in space. This is in contrast to our perception of solids and the continuum descriptions typically used at larger length scales, where solids always have a well-defined volume and boundaries. To bridge this gap between the atomistic model and the continuum world, a special type of transformation method is needed. Without it, we would be unable to properly quantify important properties of atomistic systems like their solid volume, surface area, surface orientation and curvature, or porosity.
The aim is therefore to reconstruct the geometric boundaries of a set of points in space and build a two-dimensional, closed, and oriented manifold that divides space into an inner (=solid) and an outer (=open) region. If we want to define the surface of an atomistic solid, an indispensable ingredient is some sort of length scale parameter. How else should we discern the empty space in between atomic points of a dense solid from actual pores or small cracks? A common solution to this problem is the concept of a probe sphere. The open region is here defined as those parts of space that are accessible to the virtual probe sphere without touching any of the atomic points. Note that this includes cavities inside the solid as long as they can accommodate the virtual sphere. The radius of the probe sphere is the length scale parameter that needs to be specified by the user. It determines how many details and small features of the solid's geometric shape are resolved by the method.
(a) The Delaunay tessellation calculated from the input point set. (b) Two exemplary tessellation elements are highlighted, and their circumspheres are indicated. One element's circumsphere is larger than the reference probe sphere while the other is smaller. The corresponding elements are classified as open and solid, respectively. (c) The union of all solid Delaunay elements defines the geometric shape of the atomistic solid (bold line).
The algorithm developed for the Construct Surface Mesh modifier of OVITO is based on the alpha-shape method of Edelsbrunner and Mücke [ACM Trans. Graph. 13:43–72, 1994]. It starts with the Delaunay tetrahedrization of the input point set (figure (a)). From the resulting tetrahedra, which fill the convex hull of the point set, all elements are removed whose circumsphere does not fit into the virtual probe sphere (figure (b)). The remaining tetrahedra form the solid region. Now the closed surface mesh can be extracted, which consists of the triangular faces of the tessellation that divide the solid from the open region (figure (c)).
(a) Atomistic model of a carbon nanoparticle with an inset showing the corresponding pair distribution function. The position of the first peak is used as probe sphere radius (Rα=2.5 Å) for the alpha-shape construction. (b) The resulting triangulated surface mesh. (c) Final surface model after six iterations of the smoothing algorithm were applied.
The resulting surface mesh reflects the atomic steps that are typically present on the surfaces of a solid. This may lead to an overestimation of the macroscopic surface area. Therefore, if such detailed surface features are undesired, one can subsequently apply a fairing procedure [Taubin, SIGGRAPH 95 Conf. Proc., pp. 351-358, 1995] to the surface mesh to smooth it.
It needs to be emphasized that the results of the described surface reconstruction method generally depend on the selected probe sphere radius parameter Rα. A rule of thumb is to choose Rα equal to the nearest neighbor atom separation in the material at hand as demonstrated in figure (a) on the right. Definitely, the value of Rα should be reported in publications where the geometric surface reconstruction method is used to quantitatively measure surface areas, solid volumes, or porosities.
- Probe sphere radius
This parameter controls the radius of the probe sphere used in the surface construction algorithm, which determines the level of surface details captured. A larger sphere radius leads to a surface with less details, which reflects only coarser features of the surface topology. A small sphere radius, on the other hand, will resolve finer surface features and small voids inside a solid. However, the sphere radius should not be smaller than half of the typical interatomic distance. Otherwise artificial holes will appear in the constructed surface.
A rule of thumb is to choose this parameter equal to the nearest neighbor atom separation in the material at hand. You can use the Coordination Analysis modifier to determine the nearest neighbor separation, which is the position of the first peak in the radial pair distribution function.
- Smoothing level
After the triangulated surface mesh has been constructed, it is further refined by applying a smoothing and fairing algorithm to remove atomically sharp surface steps. This parameter controls how many iterations of the smoothing algorithm are performed.
- Use only selected input particles
By default, the modifier constructs the surface mesh around all particles in the input dataset. This option restricts the mesh construction to particles that are currently selected. In this case, unselected particles will be ignored during the surface construction as if they did not exist.
- Select particles on the surface
This option lets the modifier select those particles that were used to construct the surface mesh. Thus, this option provides a way to identify the surface atoms of an atomistic structure.
- Transfer particle properties to surface
This option transfers information from the input particles to the vertices of the constructed mesh. In particular, the values of the
Colorparticle property of the surface particles will be copied over to the surface mesh vertices, giving you a way to control the local coloring of the surface mesh. For example, you could insert the Color coding modifier prior to the construct surface mesh modifier to give the particles a color. The constructed surface mesh will then inherit these local colors if this modifier option has been is activated. Alternatively, you can insert the Color coding modifier after having constructed the mesh, and color the mesh according to some vertex property that was inherited from the input particles.
Note: If the Gaussian density method is used, only particle properties of data type
Floatwill be transferred to the surface. Integer properties will be skipped, because the algorithm needs to blend the property values of several particles to compute the value at each mesh vertex. In case of the alpha-shape method, all properties are transferred, including integer properties, because there is a one-to-one mapping between particles and mesh vertices.