Sample result for an fcc-structured cube.
Cone algorithm should first be performed to discriminate surface particles. For each surface particle, according to the given cutoff distance, its nearest neighbor particles are carried out. The discrete differential roughness is then defined as:
D = sqrt( Sigma_{i} (d_{i}^{2}) / N) ,
where N is the number of particles, d_{i} is the distance from the ith particle to the tangent plane:
d_{i} = n*(r_{i} - r_{0}),
here n is the normal vector of the tangent plane, r_{i} is the coordinate of the ith particle, r_{0} is the coordinate of the reference point on which the tangent plaen is fixed. The reference point can be either the given particle or the center of mass of this local structure (we prefer the center of mass accroding to the result of the fcc cube). According to the above equations, to find tangent plane is equivalent to find the normal vector of the tangent plane n.
Undetermined lagrange multiplier lamda is used to find the normal vector:
d/dn [ Sigma_{i} (d_{i}^{2}) - lamda (n^{2} - 1) ] = 0,
where d/dn is the variational differentiation by n. This is a symmetric eigenvalue problem which can be easily solved by Jacobi transformations (please refer to Numerical Recipes in C, 2nd Ed., Page 463, W. H. Press et al). The smallest eigenvalue is the expected discrete differential roughness (after devided by N and taken square root), and the corresponding eigenvector is the normal vector of the tangent plane.
The direction of the normal vectors is ambiguous. In our case of gold clusters, we turn the vectors to point away from the center for illustration and turn them to point toward the center for local parabolic curvature calculation.
Let the positions of the two atoms be
(x_{1}, y_{1}, z_{1}) and
(x_{2}, y_{2}, z_{2}),
the distance between them is:
L = sqrt( (x_{2}-x_{1})^{2} + (y_{2}-y_{1})^{2} + (z_{2}-z_{1})^{2} ). Let the normal vectors be (nx_{1}, ny_{1}, nz_{1}) and (nx_{2}, ny_{2}, nz_{2}), theta be the angle between them, cos(theta) = nx_{1}*nx_{2} + ny_{1}*ny_{2} + nz_{1}*nz_{2}. The radius of curvature can be calculated as: r = L / ( 2*sin(theta/2) ). Because cos(theta) = 1 - 2*sin^{2}(theta/2), the curvature is then c = 1/r = sqrt( 2 * ( 1 - nx_{1}*nx_{2} - ny_{1}*ny_{2} - nz_{1}*nz_{2} ) / ( (x_{2}-x_{1})^{2} + (y_{2}-y_{1})^{2} + (z_{2}-z_{1})^{2} ) ) . |
The first two sections of that page are the distributions of roughness (flatness) and bond curvatures for the icosahedral gold cluster with 2624 atoms (supercooled at T=1000K). Method 2 is our preferred fitting method.
Back to Yanting Wang's Homepage