Author: Nikhil Chandra Admal and Giacomo Po, University of California Los Angeles (admal002 |AT| ucla DOT edu) Date : 05/12/2016 Ver : 1.0 This test driver (TD) computes the first strain gradient elasticity (SGE) tensor for simple crystals at an equilibrium lattice spacing dictated by the model, and at 0 K. The current version (v1.0) is limited to fcc, bcc, hexagonal, diamond and hcp crystal structures. The TD computes the SGE tensors for a crystal with equilibrium lattice spacing corresponding to the model coupled to the test using this TD. In other words, the TD initially computes the equilibrium lattice spacing, and then computes the SGE tensors. The SGE tensors are computed analytically and numerically. The analytical expression for the elasticity tensors coded in this driver are applicable to any multilattice. On the other hand, the numerical implementation is restricted for Bravais lattices only. Therefore, this test driver can be used to compute the first strain gradient elastic constants of multilattices analytically. Note that this test driver does not support the numerical (as opposed to analytical) computation of elastic constants for multilattices. The user specifies the following variables through stdin using a Jinja template file named 'pipeline.stdin.tpl' contained in the directory of a Test which uses this TD (the sequence in which they are specified must be the same as below): - 'testname' Type: string Description: The name of the test using this TD. - 'modelname' Type: string Description: The name of the model coupled to a test using this TD - 'Species' Type: string Description: The species of interest. - 'crystalstructure' Type: string Description: The type of lattice. In the current version, this string is either 'fcc', 'bcc', 'diamond' or 'hcp'. The following option which was in an earlier version of the test driver is no longer required. The KIM-API computes the elastic constants using an analytical expression if the model supports 'processdEdr' and 'processd2Edr2'. Otherwise, a numerical computation is carried out. - 'Analytical/Numerical' Type: integer Description: 1 indicates analytical computation using the SGE tensor expressions derived in [2], and 0 indicates numerical computation by perturbing the lattice. ************************ Background on strain gradient elasticity ********************* The first strain gradient elasticity tensors consist of 1. The sixth-order tensor D_ijmkln defined as the second derivative of the strain energy density with respect to the Lagrangian strain gradient tensor dE, 2. The fifth-order tensor EE_ijkln defined as the mixed second deriavtive of the strain energy density with respect to the Lagrangian strain E and its gradient dE, 3. The fourth-order elasticity tensor C_ijkl defined as the second derivative of the strain energy density with respect to the Lagrangian strain E, 4. The third-order couple stress tensor \tau_ijk, defined as the derivative of the strain energy density with respect to the Lagrangian strain gradient dE, and 5. The second-order second Piola--Kirchhoff stress tensor \sigma_ij defined as the derivative of the strain energy density with respect to the Lagrangian strain E. The TD outputs the tensors C, D, EE and \tau. D_ijmkln has the following symmetries: D_ijmkln = D_jimkln, D_ijmkln = D_ijmlkn, D_ijmkln = D_klnijm. Due to the above described symmetries, D consists of 171 independent constants. Similarly, EE, C and \tau consist of 108, 21, and 18 independent constants, respectively. Under material symmetries, the number of independent constants is much smaller. For example, D has 11 and 22 independent elastic constants for cubic and hexagonal crystals, respectively. The TD outputs the following: 1. 11 and 22 independent elastic constants of D for cubic and hexagonal crystals, respectively. 2. EE and \tau are always outputted as 108 and 18 elastic constants. In other words, material symmetries are not considered for these tensors. 3. 3 and 5 independent elastic constants of C for cubic and hexagonal crystals, respectively. 4. The entire upper triangular part of the 18x18 and 6x6 matrices of the tensors C and D in Voigt notation are also outputted to the file Dijmkln_ext.out. The is particularly useful when using the test driver for multilattices, for which the number of independent constants is an open question at this point. As suggested in [1], we use the following Voigt-like representations for the strain gradient elasticity tensor D, and the third-order Lagraingian strain E. The strain gradient is represented as a 18x1 matrix de, given by de = (dE_111 dE_221 2*dE_122 dE_331 2*dE_133 dE_222 dE_112 2*dE_121 dE_332 2*dE_233 ------------> (1) dE_333 dE_113 2*dE_131 dE_223 2*dE_232 2*dE_123 2*dE_132 2*dE_231)^T D is represented as a 18x18 symmetric matrix d. Using (1), any component of D can be obtained from de. For instance, D_112123 is given by D_112123 = d(7,16) since the triads 112 and 123 occur at 7th and 16th position in the representation de defined in (1). Cubic crystals: -------------- For cubic materials with their crystallographic axes oriented along the global axes, there are only 11 independent constants in D. See [1] for a group-theoretic analysis of the strain gradient elasticity tensor for various material groups. Moreover, for cubic materials, d reduces to the following block-diagonal form: __ __ | A9 0 0 0 | d = | A9 0 0 |, -----------> (2) | A9 0 | |_ J2 _| where A9 and J2 are 5x5 and 3x3 symmetric matrices respectively given by __ __ | a1 a4 a5 a4 a5 | __ _ | a2 a6 a7 a8 | | j1 j2 j2 | A9 = | a3 a8 a9 |, J2 = | j1 j2 |, | a2 a6 | |__ j1 _| |__ a3 _| where {a1,...,a9,j1,j2} are the 11 independent constants of the cubic material. From (1) and (2) it follows that the 11 independent elastic components of D for a cubic material are given by d(1,1), d(1,2), d(1,3), d(2,2), d(2,3), d(2,4), d(2,5), d(3,3), d(3,5), d(16,16), d(16,17). Hexagonal crystals: ------------------ For hexagonal crystals with orientation as shown below, there are 22 independent constants in D. ______ / \ / ____\ ____ e_2 \ | / \___|__/ | | e_1 d reduces to the following block-diagonal form: __ __ | (A11+ \eta Ac) 0 0 0 | d = | A11 0 0 |, -----------> (2) | H6 0 | |_ J4 _| where A11, H6 and J4 are 5x5, 5x5 and 3x3 matrices with 11,6 and 4 independent constants, respectively. See [1,2] for the exact forms of these matrices. [1] N. Auffray, H. Le Quang, Q.C. He, Matrix representations for 3D strain-gradient elasticity, Journal of the Mechanics and Physics of Solids, Volume 61, Issue 5, May 2013, Pages 1202-1223. [2] The atomistic representation of Mindlin’s first strain gradient elasticity tensors, Journal of the Mechanics and Physics of Solids, Submitted.