# # CDDL HEADER START # # The contents of this file are subject to the terms of the Common Development # and Distribution License Version 1.0 (the "License"). # # You can obtain a copy of the license at # http://www.opensource.org/licenses/CDDL-1.0. See the License for the # specific language governing permissions and limitations under the License. # # When distributing Covered Code, include this CDDL HEADER in each file and # include the License file in a prominent location with the name LICENSE.CDDL. # If applicable, add the following below this CDDL HEADER, with the fields # enclosed by brackets "[]" replaced with your own identifying information: # # Portions Copyright (c) [yyyy] [name of copyright owner]. All rights reserved. # # CDDL HEADER END # # # Copyright (c) 2012, Regents of the University of Minnesota. All rights reserved. # # Contributors: # Ryan S. Elliott # Ellad B. Tadmor # Valeriu Smirichinski # Amit Singh # # # Release: This file is part of the openkim-api-vX.X.X package. # This directory (Three_Body_Stillinger_Weber__MD_335816936951_001) contains Stillinger-Weber potential Model driver written in C. /******************************************************************************* * For three-body potential any potential energy function for N-particle system can be written in the * following form of two-body and three-body terms: F(1, 2, ...., N) = sum_{i; 1 <= i < j <= N} phi_two(r; r = r_ij) + sum_{i; 1 <= i \neq j < k <= N} phi_three(r_ij, r_ik, r_jk); * For Stillinger-Weber, two-body term phi_two is phi_two(r) = epsilon * f_2(r_cap; r_cap = r/sigma); where f_2 is f_2(r_cap) = A * ( B*r_cap^(-p) - r_cap^-q ) * exp(1/(r_cap - a)); when r_cap < a = 0 when r_cap >= a * and three-body term phi_three is phi_three(r_ij, r_ik, r_jk) = epsilon * f_3(r1_cap, r2_cap, r3_cap); where r1_cap = r_ij/sigma, r2_cap = r_ik/sigma, r3_cap = r_jk/sigma, and f_3(r1_cap, r2_cap, r3_cap) = lambda * (exp(gamma((1/(r1_cap - a)) + (1/(r2_cap - a))))) * (costheta_jik - costheta_0)^2; when r1_cap < a && r2_cap < a = 0; otherwise costheta_jik = (r_ij^2 + r_ik^2 - r_jk^2) / (2*r_ij*r_ik). *******************************************************************************/ For Silicon: ------------------------------------------------------------ | A = 7.049556277, B = 0.6022245584, p = 4, q = 0, | | a = 1.80, lambda = 21.0, gamma = 1.2, | | sigma = 2.0951, epsilon = 2.315 ev (for E_coh = 4.63 ev), | | costheta_0 = -1/3 | ------------------------------------------------------------- References: 1. F. H. Stillinger and T. A. Weber, "Computer simulation of local order in condensed phases of silicon", Phys. Rev. B, vol. 31, 5262-5271, 1985 2. Ellad B. Tadmor and Ronald E. Miller, Modeling Materials: Continuum, Atomistic and Multiscale Techniques, Cambridge University Press, 2011 It complies with the KIM API interface standard, using two neihgbor handling methods, NEIGH_PURE_F and NEIGH_RVEC_F and iterator or locator mode. It publishes its parameters and supports optional computation of `energy', 'forces', 'particleEnergy', 'process_dEdr', and 'process_dE2dr2'. Its initializaton routine takes a KIM API object pointer and a pointer to a string that contains all parameters which define a KIM Model based on this KIM Model Driver. To create a KIM Model from this Model Driver, a parameter file is required. This file must have the follwing format: Line 1: A Line 2: B Line 3: p Line 4: q Line 5: a Line 6: lambda Line 7: gamma Line 8: sigma in Angstrom Line 9: epsilon in ev Line 10: costheta_0 Any additional lines will be silently ignored. The following files are in this directory: LICENSE.CDDL The Common Development and Distribution License (CDDL) Version 1.0 file Makefile makefile to compile and build executables with GNU or Intel compilers README This file Three_Body_Stillinger_Weber.c C file that contains the implementation of the 3-body Stillinger-Weber potential Model Driver Three_Body_Stillinger_Weber.kim.tpl Template KIM descriptor file containing all variables and methods that are exposed by the driver through the KIM API interface. This file will be used (by the make system) to generate a KIM descriptor file for each KIM Model based on this Model Driver.