Abstract
The present work generalizes the results of Böhlke and Lobos (Acta Mater. 67:324–334, 2014) by giving an explicit representation of the Hashin–Shtrikman (HS) bounds of linear elastic properties in terms of tensorial Fourier texture coefficients not only for cubic materials but for arbitrarily anisotropic linear elastic polycrystalline materials. Based on the HS bounds as given by Walpole (J. Mech. Phys. Solids 14(3):151–162, 1966) and tensor functions for the representation of the crystallite orientation distribution function, it is shown that the HS bounds are represented in terms of the exact same second- and fourth-order texture coefficients which appear in the consideration of the Voigt and Reuss bounds. The derived representations in terms of tensorial texture coefficients are valid for all symmetry classes in elasticity and present expressions highly attractive for the description of physical quantities in terms of tensorial variables. In order to make these results also accessible for the community of quantitative texture analysis, transformation relations between experimentally obtained Bunge’s or Roe’s coefficients and the tensorial texture coefficients are given. The representation of the present work offers a finite and low dimensional parametrization of the fully anisotropic Hashin–Shtrikman bounds, which can be used in inverse materials design problems in order to explore the set of possible materials properties or for the determination of optimal microstructural influence with respect to prescribed material properties. Examples for orthotropic polycrystals of cubic materials and transversely isotropic polycrystals of hexagonal materials (showing the connection and applicability of the results also to fiber orientation distributions) are discussed. Finally, an implementation in Mathematica® 11 of the HS bounds for arbitrarily anisotropic materials is offered, such that readers can reproduce all the results of this work and use them for their own purposes.
Similar content being viewed by others
References
Adams, B.L., Boehler, J., Guidi, M., Onat, E.: Group theory and representation of microstructure and mechanical behavior of polycrystals. J. Mech. Phys. Solids 40(4), 723–737 (1992)
Adams, B.L., Kalidindi, S.R., Fullwood, D.T.: Microstructure Sensitive Design for Performance Optimization. Butterworth-Heinemann, Waltham (2013). https://doi.org/10.1016/B978-0-12-396989-7.00001-0
Böhlke, T.: Application of the maximum entropy method in texture analysis. Comput. Mater. Sci. 32(3–4), 276–283 (2005). https://doi.org/10.1016/j.commatsci.2004.09.041
Böhlke, T.: Texture simulation based on tensorial Fourier coefficients. Comput. Struct. 84(17–18), 1086–1094 (2006). https://doi.org/10.1016/j.compstruc.2006.01.006
Böhlke, T., Haus, U.U., Schulze, V.: Crystallographic texture approximation by quadratic programming. Acta Mater. 54(5), 1359–1368 (2006). https://doi.org/10.1016/j.actamat.2005.11.009
Böhlke, T., Lobos, M.: Representation of Hashin–Shtrikman bounds of cubic crystal aggregates in terms of texture coefficients with application in materials design. Acta Mater. 67, 324–334 (2014). https://doi.org/10.1016/j.actamat.2013.11.003
Bröcker, T., tom Dieck, T.: Representations of Compact Lie Groups. Springer, Berlin, Heidelberg (1985)
Bunge, H.J.: Texture Analysis in Materials Science: Mathematical Methods. Butterworth, London (1982)
Cheng, L., Assary, R.S., Qu, X., Jain, A., Ong, S.P., Rajput, N.N., Persson, K., Curtiss, L.A.: Accelerating electrolyte discovery for energy storage with high-throughput screening. J. Phys. Chem. Lett. 6(2), 283–291 (2015). https://doi.org/10.1021/jz502319n
Eschner, T., Fundenberger, J.J.: Application of anisotropic texture components. Textures Microstruct. 28(C), 181–195 (1997)
Forte, S., Vianello, M.: Symmetry classes for elasticity tensors. J. Elast. 43(2), 81–108 (1996). https://doi.org/10.1007/BF00042505
Forte, S., Vianello, M.: Symmetry classes and harmonic decomposition for photoelasticity tensors. Int. J. Eng. Sci. 35(14), 1317–1326 (1997). https://doi.org/10.1016/S0020-7225(97)00036-0
Fullwood, D.T., Niezgoda, S.R., Adams, B.L., Kalidindi, S.R.: Microstructure sensitive design for performance optimization. Prog. Mater. Sci. 55(6), 477–562 (2010). https://doi.org/10.1016/j.pmatsci.2009.08.002
Gel’fand, I.M., Minlos, R., Shapiro, Z.: Representations of the Rotation and Lorentz Groups and Their Applications. Pergamon Press, Oxford (1963)
Guidi, M., Adams, B.L., Onat, E.T.: Tensorial representation of the orientation distribution function in cubic polycrystals. Textures Microstruct. 19(3), 147–167 (1992). https://doi.org/10.1155/TSM.19.147
Hashin, Z., Shtrikman, S.: A variational approach to the theory of the elastic behaviour of polycrystals. J. Mech. Phys. Solids 10(4), 343–352 (1962). https://doi.org/10.1016/0022-5096(62)90005-4
Hashin, Z., Shtrikman, S.: On some variational principles in anisotropic and nonhomogeneous elasticity. J. Mech. Phys. Solids 10(4), 335–342 (1962)
Hashin, Z., Shtrikman, S.: A variational approach to the theory of the elastic behaviour of multiphase materials. J. Mech. Phys. Solids 11(2), 127–140 (1963)
Helming, K.: Some applications of the texture component model. Mater. Sci. Forum 157(162), 363–368 (1994). https://doi.org/10.4028/www.scientific.net/MSF.157-162.363
Hill, R.: Elastic properties of reinforced solids: some theoretical principles. J. Mech. Phys. Solids 11(5), 357–372 (1963)
Horn, R.A., Johnson, C.R.: Matrix Analysis. Cambridge Univ. Press, Cambridge (1990)
Huang, M., Man, C.S.: Explicit bounds of effective stiffness tensors for textured aggregates of cubic crystallites. Math. Mech. Solids 13(5), 408–430 (2007). https://doi.org/10.1177/1081286507078299
Jain, A., Ong, S.P., Hautier, G., Chen, W., Richards, W.D., Dacek, S., Cholia, S., Gunter, D., Skinner, D., Ceder, G., Persson, K.A.: Commentary: the materials project: a materials genome approach to accelerating materials innovation. APL Mater. 1(1), 011002 (2013). https://doi.org/10.1063/1.4812323
de Jong, M., Chen, W., Angsten, T., Jain, A., Notestine, R., Gamst, A., Sluiter, M., Krishna Ande, C., van der Zwaag, S., Plata, J.J., Toher, C., Curtarolo, S., Ceder, G., Persson, K.A., Asta, M.: Charting the complete elastic properties of inorganic crystalline compounds. Sci. Data 2, 1–13 (2015). https://doi.org/10.1038/sdata.2015.9
Kalidindi, S.R., Knezevic, M., Niezgoda, S., Shaffer, J.: Representation of the orientation distribution function and computation of first-order elastic properties closures using discrete Fourier transforms. Acta Mater. 57(13), 3916–3923 (2009). https://doi.org/10.1016/j.actamat.2009.04.055
Kröner, E.: Berechnung der elastischen Konstanten des Vielkristalls aus den Konstanten des Einkristalls. Z. Phys. 151(4), 504–518 (1958)
Kröner, E.: Bounds for effective elastic moduli of disordered materials. J. Mech. Phys. Solids 25(2), 137–155 (1977). https://doi.org/10.1016/0022-5096(77)90009-6
Kröner, E.: Self-consistent scheme and graded disorder in polycrystal elasticity. J. Phys. F, Met. Phys. 8, 2261–2267 (1978)
Lobos, M., Böhlke, T.: Materials design for the anisotropic linear elastic properties of textured cubic crystal aggregates using zeroth-, first- and second-order bounds. Int. J. Mech. Mater. Des. 11(1), 59–78 (2015). https://doi.org/10.1007/s10999-014-9272-z
Lobos, M., Böhlke, T.: On optimal zeroth-order bounds of linear elastic properties of multiphase materials and application in materials design. Int. J. Solids Struct. 84, 40–48 (2016). https://doi.org/10.1016/j.ijsolstr.2015.12.015
Lobos, M., Yuzbasioglu, T., Böhlke, T.: Homogenization and materials design of anisotropic multiphase linear elastic materials using central model functions. J. Elast. 128(1), 17–60 (2017). https://doi.org/10.1007/s10659-016-9615-0
Lobos Fernández, M.: Homogenization and materials design of mechanical properties of textured materials based on zeroth-, first- and second-order bounds of linear behavior. Doctoral thesis, Karlsruhe Institute of Technology, Karlsruhe, Germany (2018, in press)
Man, C.S.: On the constitutive equations of some weakly-textured materials. Arch. Ration. Mech. Anal. 143, 77–103 (1998)
Man, C.S., Huang, M.: A simple explicit formula for the Voigt–Reuss–Hill average of elastic polycrystals with arbitrary crystal and texture symmetries. J. Elast. 105(1–2), 29–48 (2011). https://doi.org/10.1007/s10659-011-9312-y
Man, C.S., Huang, M.: A representation theorem for material tensors of weakly-textured polycrystals and its applications in elasticity. J. Elast. 106(1), 1–42 (2012). https://doi.org/10.1007/s10659-010-9284-3
Mardia, K.V., Jupp, P.E.: Directional Statistics. Wiley, London (2008)
Matthies, S., Muller, J., Vinel, G.: On the normal distribution in the orientation space. Textures Microstruct. 10(1), 77–96 (1988)
Mehrabadi, M.M., Cowin, S.C.: Eigentensors of linear anisotropic elastic materials. Q. J. Mech. Appl. Math. 43(1), 15–41 (1990). https://doi.org/10.1093/qjmam/43.1.15
Milton, G.W.: The Theory of Composites, vol. 6. Cambridge University Press, Cambridge (2002). https://doi.org/10.1017/CBO9780511613357
Müller, V., Böhlke, T.: Prediction of effective elastic properties of fiber reinforced composites using fiber orientation tensors. Compos. Sci. Technol. 130, 36–45 (2016). https://doi.org/10.1016/j.compscitech.2016.04.009
Nadeau, J., Ferrari, M.: On optimal zeroth-order bounds with application to Hashin–Shtrikman bounds and anisotropy parameters. Int. J. Solids Struct. 38(44–45), 7945–7965 (2001). https://doi.org/10.1016/S0020-7683(00)00393-0
Niezgoda, S.R., Kanjarla, A.K., Kalidindi, S.R.: Novel microstructure quantification framework for databasing, visualization, and analysis of microstructure data. Integr. Mater. Manuf. Innov. 2(1), 3 (2013). https://doi.org/10.1186/2193-9772-2-3
Nomura, S., Kawai, H., Kimura, I., Kagiyama, M.: General description of orientation factors in terms of expansion of orientation distribution function in a series of spherical harmonics. J. Polym. Sci., Part A-2, Polym. Phys. 8(3), 383–400 (1970). https://doi.org/10.1002/pol.1970.160080305
Ponte Castañeda, P., Suquet, P.: Nonlinear composites. Adv. Appl. Mech. 34, 171–302 (1997)
Reuss, A.: Berechnung der Fließgrenze von Mischkristallen auf Grund der Plastizitätsbedingung für Einkristalle Z. Angew. Math. Mech. 9(1), 49–58 (1929)
Roe, R.J.: Description of crystallite orientation in polycrystalline materials. III. General solution to pole figure inversion. J. Appl. Phys. 36(6), 2024 (1965). https://doi.org/10.1063/1.1714396
Schaeben, H.: Texture approximation or texture modelling with components represented by the von Mises-Fisher matrix distribution on SO(3) and the Bingham distribution on S4+. J. Appl. Crystallogr. 29(5), 516–525 (1996). https://doi.org/10.1107/S0021889896002804
Schaeben, H., van den Boogaart, K.G.: Spherical harmonics in texture analysis. Tectonophysics 370(1), 253–268 (2003). https://doi.org/10.1016/S0040-1951(03)00190-2
Schouten, J.A.: Der Ricci-Kalkül. Springer, Berlin (1924). https://doi.org/10.1007/978-3-662-06545-7
Torquato, S.: Random Heterogeneous Materials: Microstructure and Macroscopic Properties. Springer, New York (2002)
Varshalovich, D., Moskalev, A.N., Khersonskii, V.K.: Quantum Theory of Angular Momentum. World Scientific, Singapore (1988)
Voigt, W.: Lehrbuch der Kristallphysik (mit Ausschluss der Kristalloptik). Teubner, Leipzig (1910)
Walpole, L.J.: On bounds for the overall elastic moduli of inhomogeneous systems—I. J. Mech. Phys. Solids 14(3), 151–162 (1966)
Wassermann, G., Grewen, J.: Texturen metallischer Werkstoffe, 2nd edn. Springer, Berlin, Heidelberg (1962). https://doi.org/10.1007/978-3-662-13128-2
Wigner, E.P.: Gruppentheorie und ihre Anwendung auf die Quantenmechanik der Atomspektrum. Vieweg+Teuber, Wiesbaden (1931)
Willis, J.R.: Bounds and self-consistent estimates for the overall properties of anisotropic composites. J. Mech. Phys. Solids 25(3), 185–202 (1977). https://doi.org/10.1016/0022-5096(77)90022-9
Willis, J.R.: Variational and related methods for the overall properties of composites. Adv. Appl. Mech. 21, 1–78 (1981)
Yabansu, Y.C., Kalidindi, S.R.: Representation and calibration of elastic localization kernels for a broad class of cubic polycrystals. Acta Mater. 94, 26–35 (2015). https://doi.org/10.1016/j.actamat.2015.04.049
Zheng, Q.S., Fu, Y.B.: Orientation distribution functions for microstructures of heterogeneous m materials (II)—crystal distribution functions and irreducible tensors restricted by various material symmetries. Appl. Math. Mech. 22(8), 885–902 (2001)
Acknowledgements
M. Lobos Fernández thanks Prof. John R. Willis for his valuable comments and fruitful discussions during a research stay in Cambridge supported by the Karlsruhe House of Young Scientist (KHYS) of the Karlsruhe Institute of Technology (KIT). T. Böhlke acknowledges the partial support by the German Research Foundation (DFG) within the International Research Training Group “Integrated engineering of continuous-discontinuous long fiber reinforced polymer structures” (GRK 2078). Furthermore, the authors deeply thank the reviewers for their valuable suggestions, which, without a doubt, greatly improved the quality of the present manuscript.
Author information
Authors and Affiliations
Corresponding authors
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendices
Appendix A: Linearization in Respect to the Texture
First, the linearization of the Reuss average will be sketched. The results of this linearization will make the path to the linearization of the Hashin–Shtrikman expression much clearer.
Consider the tensor valued functional \({\boldsymbol {A}}\) depending linearly on the scalar valued density function \(h({\boldsymbol {x}}) \) with prescribed tensor function \({\boldsymbol {\alpha}}({\boldsymbol {x}}) \) as the following domain integral
The inverse of \({\boldsymbol {A}}\) might be linearized around a prescribed reference density \(h_{r}({\boldsymbol {x}}) \) with standard variational calculus as follows
This is applicable to the expressions of the present work. The linearization of the orientation average with respect to a reference CODF \(f_{r}({\boldsymbol {Q}}) \) reads
Each of the orientation averages may be expressed in terms of texture coefficients, as presented in this work. The texture coefficients of the reference CODF are referred to by \({\boldsymbol {V}}_{r {\langle \alpha \rangle }\beta } \). The linearization might be applied to the Reuss bound and combined with the Voigt bound in order to obtain a linearization for the Hill average in terms of texture coefficients. Naturally, the linearization (89) might also be applied to in order to derive HS estimates being linear in the texture. If the reference CODF is chosen as isotropic, i.e., \(f({\boldsymbol {Q}}) = 1 \), then all reference texture coefficients vanish, i.e., \({\boldsymbol {V}}_{r{\langle \alpha \rangle }\beta } = {\boldsymbol {0}}_{{\langle \alpha \rangle }} \), the average simplifies to the isotropic part of the single crystal behavior and weak texture linearizations are obtained. The combination of the weak texture linearization with the Voigt and Reuss bounds corresponds, immediately, to the Hill average for weak texture which was also investigated in [34] and [35]. The linearization of the HS bounds and approximations based on them (e.g., the SC,I approach of this work) in respect to the texture based on (89) might be of some use in optimization problems, which sometimes require linearizations for the evaluation of Newton’s algorithm.
Appendix B: Programs in Mathematica ® 11
2.1 B.1 Objectives of This Implementation
The authors would like to make the results of this work as reproducible as possible. Therefore, the basic programs implemented in Mathematica® 11 for the evaluation of the orientation average of an arbitrarily anisotropic minor and major symmetric fourth-order tensor are given in this appendix. Further, the authors give the commands which yield the main results of the examples of this work, presented in Sect. 2.6. The implementation has been written as compactly as possible based on the functional programming and tensor/array manipulation capabilities of Mathematica® 11 , time performance or efficiency are not at the focus of the following implementation.
2.2 B.2 Tensor Algebra Commands
The following commands
sp[A_,B_]:=Total[A*B,Infinity];
nf[A_]:=Sqrt@sp[A,A];
tp[A_,B_]:=TensorProduct[A,B];
tt[A_,t_]:=TensorTranspose[A,t];
tr[A_]:=TensorRank[A];
lm[A_,B_]:=ArrayReshape[A,Join[Dimensions[A][[1;;-(1+tr@B)]]
,{Times@@Dimensions@B}]].Flatten[B];
rp[A_,B_]:=Module[{n,it,t1},
n=tr[B];
it=RotateLeft@Range[n];
t1=B;
Do[t1=tt[A.t1,it],{i,n}];
t1
];
represent (in order of definition) the general scalar product \({\boldsymbol {A}}_{\langle n \rangle }\cdot {\boldsymbol {B}} _{\langle n \rangle } \), the Frobenius norm \(\Vert {\boldsymbol {A}}_{{\langle n \rangle }} \Vert \), the tensor product \({\boldsymbol {A}}_{{\langle m \rangle }}\otimes {\boldsymbol {B}}_{{\langle n \rangle }} \), the tensor transposition in Mathematica® 11 , the tensor order/rank in Mathematica® 11 , the linear map \({\boldsymbol {A}}_{\langle m \rangle }{\boldsymbol {B}}_{\langle n \rangle } \), and Rayleigh product \({\boldsymbol {A}}\star {\boldsymbol {B}}_{ \langle n \rangle } \).
The commands
B0[i_, j_] := tp[UnitVector[3, i], UnitVector[3, j]];
Bsym = {B0[1, 1],B0[2, 2],B0[3, 3],(B0[2, 3]+B0[3, 2])/Sqrt@2
,(B0[1, 3]+ B0[3, 1])/Sqrt@2, (B0[1, 2] + B0[2, 1])/Sqrt@2};
I2 = IdentityMatrix@3;
P1 = 1/3*tp[I2, I2];
I4 = tt[tp[I2, I2], {1, 3, 2, 4}];
IS = (I4 + tt[I4, {1, 2, 4, 3}])/2;
P2 = IS - P1;
liso4S[A_] := sp[A, #]/sp[#, #] & /@ {P1, P2};
iso4S[liso_] := liso.{P1, P2};
represent (in order of definition) the tensor product \({\boldsymbol {e}}_{i}\otimes {\boldsymbol {e}}_{j} \), the basis \(\{{\boldsymbol {B}}_{i}\} \) for the space \(\mathit{Sym} \) (space of symmetric second-order tensors), the identity on vectors \({\boldsymbol {I}}\), the first isotropic projector , the identity on second-order tensors , the identity on symmetric second-order tensors , the second isotropic projector , the computation of the eigenvalues of the isotropic part of a tensor mapping from \(\mathit{Sym} \) to \(\mathit{Sym} \), and the generation of an isotropic tensor mapping from \(\mathit{Sym} \) to \(\mathit{Sym} \) for given eigenvalues.
The commands
nvn[A_] := Table[sp[A, tp[Bsym[[i]], Bsym[[j]]]], {i, 6}, {j, 6}];
nvnrec[Anvn_] := Sum[Anvn[[i, j]]*tp[Bsym[[i]], Bsym[[j]]], {i, 6},
{j, 6}];
inv4S[A_] := nvnrec@Inverse@nvn@A;
represent (in order of definition) the computation of the matrix components for the normalized Voigt notation (short nvn) for a given tensor mapping from \(\mathit{Sym} \) to \(\mathit{Sym} \), the reconstruction of the tensor for given nvn-matrix, and the inversion of a tensor mapping from \(\mathit{Sym} \) to \(\mathit{Sym} \) via the nvn notation.
The commands
genT[alpha_, s_, sg_: {I2}, is_: {}] := Module[{t1, t2},
t1 = Normal@SymmetrizedArray[
pos_ :> Subscript[s, StringJoin[ToString /@ pos]],
ConstantArray[3, alpha], is];
t1 /. First@Solve[rp[#, t1] == t1 & /@ sg]
];
genH[1, s_, sg_: {I2}] := genT[1, s, sg];
genH[alpha_?(# > 1 &), s_, sg_: {I2}] :=
# /. First@Solve[lm[#,I2]==0*lm[#, I2]] &@
genT[alpha, s, sg, Symmetric@Range@alpha];
genHB[alpha_, sg_: {I2}] := Module[{t1, s, t2},
t1 = genH[alpha, s, sg];
t2 = Variables@t1;
If[Length@t2 != 0
,t1 = t1 /. Table[t2[[i]] -> #[[i]], {i, Length@t2}] & /@
IdentityMatrix@Length@t2;
,t1 = {t1};
];
t1
];
genHONB[alpha_, sg_: {I2}] := Module[{t1, t2},
t1 = genHB[alpha, sg];
If[t1 != 0*t1,
t1 = ArrayReshape[#, ConstantArray[3, alpha]] & /@
Orthogonalize[Flatten /@ t1]];
t1
];
coeffONB[A_, ONB_] := sp[A, #] & /@ ONB;
represent (in order of definition) the generation of tensors of order alpha with symbol s, symmetry group sg and index symmetries is, the generation of harmonic tensors of first-order, the generation of harmonic tensors of order higher than 1, the generation of a basis for harmonic tensors, the generation of an orthonormal basis for harmonic tensors, and the computation of the coefficients for the representation of a tensor in respect to a given orthonormal basis.
The commands
J60[i_, j_, k_, l_, m_, n_] := I2[[i, j]]*I2[[k, l]]*I2[[m, n]];
J61 = Table[1/7*(J60[i, j, k, n, l, m] + J60[i, k, j, n, l, m] +
J60[i, l, j, n, k, m] + J60[i, n, j, k, l, m] +
J60[i, n, j, l, k, m] + J60[i, n, j, m, k, l])
, {i, 3}, {j, 3}, {k, 3}, {l, 3}, {m, 3}, {n, 3}
];
J62 = Table[1/6*(\[Minus]2 J60[i, j, k, n, l, m] +
J60[i, k, j, n, l, m] +
J60[i, l, j, n, k, m] + J60[i, n, j, k, l, m] +
J60[i, n, j, l, k, m] \[Minus] 2 J60[i, n, j, m, k, l])
, {i, 3}, {j, 3}, {k, 3}, {l, 3}, {m, 3}, {n, 3}
];
hd[A_] := Module[{hi1, hi2, h21, H21, h22, H22, h4, H4, hs},
H21 = genH[2, h21];
H22 = genH[2, h22];
H4 = genH[4, h4];
hs = Join[{hi1, hi2}, Variables@H21, Variables@H22, Variables@H4];
{hi1, hi2, H21, H22, H4} /.
First@Solve[
A == hi1*P1 + hi2*P2 + lm[J61, H21] + lm[J62, H22] +
H4, hs]
];
hdrec[hd_] :=
hd[[1]]*P1 + hd[[2]]*P2 + lm[J61, hd[[3]]] + lm[J62, hd[[4]]] +
hd[[5]];
represent (in order of definition) the scalar \(\delta _{\mathit{ij}} \delta _{\mathit{kl}}\delta _{\mathit{mn}} \), the isotropic tensors \({\boldsymbol {J}}_{{\langle 6 \rangle }1} \), \({\boldsymbol {J}}_{ {\langle 6 \rangle }2} \), the harmonic decomposition of a minor and major symmetric tensor and the reconstruction of the tensor for given harmonic decomposition.
All of these commands should be evaluated before continuing to the upcoming examples.
2.3 B.3 Examples
Based on the commands given in Sect. B.2, the reader is able to reproduce all results of the present work. In order to make their use clearer, we will demonstrate four examples: (1) the generation of a CODF with tensorial functions and texture coefficients for orthotropic materials with orthotropic texture coefficients up to fourth-order, (2) the computation of the texture coefficients transformation relation for cubic materials with orthotropic texture, (3) the computation of the first- and second-order bounds of this work and the results for the immediate comparison with [22], and (4) the zeroth-, first- and second-order properties closures for hexagonal polycrystals of hexagonal materials. The reader should evaluate the following commands in order of appearance since Example \(n \) requires commands from Example \(m \) with \(m< n \).
Example 1: Orthotropic CODF of Orthotropic Material in Tensorial Form
The commands
sg[ort] = DeleteDuplicates@Flatten[Table[RotationMatrix[th,ax]
,{ax, Permutations[{1, 0, 0}]}, {th, 0, 2 Pi, 2 Pi/2}], 1];
sg[hex] = DeleteDuplicates@Table[RotationMatrix[th,{0,0,1}]
,{th,0,2*Pi,2*Pi/6}];
sg[cub] = DeleteDuplicates@Join[
{I2}
, Flatten[Outer[RotationMatrix, 2 Pi/4 {1, 2, 3}, I2, 1], 1]
, RotationMatrix[Pi, #] & /@
Flatten[Permutations /@ (PadRight[#, 3] & /@ Tuples[{1, -1}, 2]),
1]
, Flatten[
Outer[RotationMatrix, 2 Pi/3 {1, 2}, Tuples[{1, -1}, 3], 1], 1]
];
represent (in order of definition) the orthotropic, hexagonal and cubic symmetry groups. For example, the commands
ismms = {{Cycles[{{1, 2}}], 1}, {Cycles[{{1, 3}, {2, 4}}], 1}};
MatrixForm@nvn@genT[4, A, sg@ort, ismms]
MatrixForm@nvn@genH[4, A, sg@ort]
MatrixForm /@ nvn /@ genHONB[4, sg@ort]
deliver as output (in order of execution) the index symmetries for minor and major symmetric fourth-order tensors, the generation of a fourth-order tensor with symbol A being orthotropic and minor and major symmetric represented as a nvn matrix, the generation of a orthotropic harmonic fourth-order tensor, and the generation of orthonormal orthotropic harmonic fourth-order basis tensors, each of them then represented as a nvn-matrix. The generated general harmonic orthotropic fourth-order tensor has three linear independent components. Therefore, the generated orthonormal basis has three linear independent tensors. The reader can manipulate these commands in order to obtain corresponding tensors for the cubic and hexagonal group, which are relevant for Sect. 2.6. In this example, the demonstration with the orthotropic group is chosen in order to show the automated generation of multiple existing basis harmonic tensors.
In these examples, we will parametrize rotations with Euler angles in the \(\mathit{zyz} \) convention, for the later use of the Wigner \(D \)-functions given in (67). The commands
Q = EulerMatrix[{phiz1, phiy, phiz2},{3,2,3}];
FsONB[alpha_, sg_: {I2}] := rp[Q, #] & /@ genHONB[alpha, sg];
CODFHONB[maxalpha_, sgmicro_, sgmacro_, tcv_] :=
tcv[0, 0] +
Sum[Total[
Outer[sp,
Table[genH[alpha, tcv[alpha, beta], sgmacro], {beta,
Length@#}], #, 1] &@FsONB[alpha, sgmicro],
Infinity], {alpha, 1, maxalpha}];
represent (in order of definition) the components of the rotation \({\boldsymbol {Q}}\) in terms of the chosen Euler angles, the generation of all functions \({\boldsymbol {F}}_{{\langle \alpha \rangle }\beta }({\boldsymbol {Q}}) = {\boldsymbol {Q}}\star {\boldsymbol {H}}_{{\langle \alpha \rangle }\beta } \) for the specified tensor order and symmetry group, and the automated generation of the up to tensor order maxalpha truncated CODF with micro symmetry sgmicro, macro symmetry sgmacro and texture coefficient variables symbol tcv. The corresponding texture coefficient \({\boldsymbol {V}}_{{\langle \alpha \rangle }\beta } \) obtains the symbol tcv[alpha,beta]. Execution of commands
f = CODFHONB[4, sg@ort, sg@ort, V];
Variables@f
define the symbol f as the up to fourth-order truncated tensorial CODF being microscopically and macroscopically orthotropic, where the second command returns its variables. The output shows the dependence of this CODF on the zeroth-, and the linear independent components of two second- and three fourth-order texture coefficients based on the symbol V. These commands might be used by reader in order to generate a symbolic CODF truncated at desired order.
Example 2: Transformation Relation of Texture Coefficients for Cubic Material with Orthotropic Texture
Upcoming computation require the commands of the previous example. The commands
intso3[f_] :=
Integrate[
f*1/(8*Pi^2)*Sin[phiy], {phiz1, 0, 2 Pi}, {phiy, 0, Pi}, {phiz2, 0,
2 Pi}];
spso3[f1_, f2_] := intso3[f1*Conjugate@f2];
represent the integration over \(\mathit{SO}(3) \) of a symbol f parametrized with the chosen Euler angles, and the function scalar product over \(\mathit{SO}(3) \) of two symbols f1 and f2. The commands
WignerDex[{l_, m_, n_}, phiz1_, phiy_, phiz2_] :=
Exp[-I*m*phiz1]*Wignerdex[{l, m, n}, Cos[phiy]]*Exp[-I*n*phiz2];
Wignerdex[{l_, m_, n_}, x_] :=
Module[{xi}, (-1)^(l - n)/
2^l*((l + m)!/((l - m)!*(l + n)!*(l - n)!))^(1/2)*(1 -
x)^((n - m)/2)*(1 + x)^(-(m + n)/2)*
D[(1 - xi)^(l - n)*(1 + xi)^(l + n), {xi, l - m}] /. xi -> x];
define the Wigner \(D \)-functions given in (67) explicitly. The commands
tstart = DateString[]
f = CODFHONB[4, sg@cub, sg@ort, V];
C4mn = (1+2*4)^2*spso3[f,WignerDex[#,phiz1,phiy,phiz2]]&/@{{4,0,0}
,{4,2,0},{4,4,0}};
tend = DateString[]
DateDifference[tstart, tend, {``Minute'', ``Second''}]
define in the symbols f the orthotropic CODF for cubic materials, and compute the coefficients \(C_{400/420/440} \) in terms of the texture coefficient with automatically generated linear independent components \(V_{1111/1122/2222} \) (computation time: around 5 minutes). The commands
mVtoC = D[C4mn, {Variables@C4mn, 1}];
MatrixForm@mVtoC
mCtoV = Inverse@mVtoC;
C4dataHM = {-0.0055154, 0.006364, -0.0165463};
VdataHM = mCtoV.(8*Pi^2*C4dataHM)
compute the transformation matrix given in (68), its inverse, define the crystallographic data of [22] for \(C^{\mathit{HM}}_{400/420/440} \) and compute the corresponding components \(V_{1111/1122/2222} \) given in (70).
Example 3: Computation of First- and Second-Order Bounds and Results for the Comparison with [22]
Upcoming computation require the commands of the previous examples. The commands
coeffhd24[hd_, sg_] :=
Simplify@coeffONB[#, genHONB[TensorRank@#, sg]] & /@ hd[[3 ;;]];
oa[A_, sgmicro_, sgmacro_, tcv_] := Module[
{t1, t2},
t1 = hd@A;
t2 = coeffhd24[t1, sgmicro];
hdrec@{
t1[[1]]
, t1[[2]]
, Sum[t2[[1, i]]*genH[2, tcv[2, i], sgmacro], {i, Length@t2[[1]]}]
, Sum[t2[[2, i]]*genH[2, tcv[2, i], sgmacro], {i, Length@t2[[2]]}]
, Sum[t2[[3, i]]*genH[4, tcv[4, i], sgmacro], {i, Length@t2[[3]]}]
}
];
represent the computation of the scalars \(\tilde{H}_{21\gamma }\), \(\tilde{H}_{22\gamma }\) and \(\tilde{H}_{4\gamma } \) (see (55)) for given harmonic decomposition and symmetry group, and the general orientation average a minor and major symmetric tensor with specified micro symmetry group, macro symmetry group and texture coefficient variable symbol.
The commands
CV[Cs_, sgmicro_, sgmacro_, tcv_] := oa[Cs, sgmicro, sgmacro, tcv];
CR[Cs_, sgmicro_, sgmacro_, tcv_] :=
inv4S@oa[inv4S@Cs, sgmicro, sgmacro, tcv];
P0[C0_] := Module[
{c1, c2},
{c1, c2} = liso4S@C0;
iso4S@{1/(c1 + 2*c2), 2/(5 c2)*(c1 + 3 c2)/(c1 + 2 c2)}
];
CHS[Cs_, sgmicro_, sgmacro_, tcv_, C0_] :=
C0 - inv4S@P0@C0 +
inv4S@oa[inv4S[Cs - C0 + inv4S@P0@C0], sgmicro, sgmacro, tcv];
represent (in order of definition) the Voigt bound , the Reuss bound , the polarization tensor , the HS bound for given single crystal stiffness Cs and comparison stiffness C0.
The commands
sgmicro = sg@cub;
Cs = genT[4, c, sgmicro, ismms];
MatrixForm@nvn@Cs
CsdataHM = {
Cs[[1, 1, 1, 1]] -> 168.4
, Cs[[1, 1, 2, 2]] -> 124.4
, Cs[[1, 2, 1, 2]] -> 75.39
};
Cs = Cs /. CsdataHM;
{C0m, C0p} = {iso4S@{417.2, 44}, iso4S@{417.2, 150.78}};
represent (in order of definition) the microscopic symmetry group (cubic in this example), the general cubic single crystal stiffness, its nvn-matrix, the material data for copper used in [22], the insertion of this data into the general cubic stiffness, and the storage of the zeroth-order bounds in C0m and in C0p as given in (72).
The commands
sgmacro = sg@ort;
{C1m, C1p} = Through[{CR, CV}[Cs, sgmicro, sgmacro, V]];
{C2m, C2p} = CHS[Cs, sgmicro, sgmacro, V, #] & /@ {C0m, C0p};
define (in order of execution) the orthotropic group as macroscopic symmetry group, the Reuss bound in C1m, the Voigt bound in C1p, and the HS bounds in C2m and in C2p.
Finally, the commands
vars = Variables@C1p;
evalHM = Table[vars[[i]] -> VdataHM[[i]], {i, 3}];
indHM = {{1, 1, 1, 1}, {2, 2, 2, 2}, {3, 3, 3, 3}, {2, 2, 3, 3}, {3,
3, 1, 1}, {1, 1, 2, 2}, {2, 3, 2, 3}, {3, 1, 3, 1}, {1, 2, 1, 2}};
MatrixForm@Join[
{indHM},
Extract[#, indHM] & /@ {C1p, C2p, C2m, C1m} /. evalHM
]
define (in order of execution) the texture variables contained in the Voigt bound, the replacement list for the evaluation of the texture data of [22], the component indices of interest for the comparison with [22], and, finally, the extraction of the components of interest of the evaluated first- and second-order bounds based on the data of [22], see Table 3.
Example 4: Zeroth-, First- and Second-Order Properties Closures for Hexagonal Polycrystals of Hexagonal Materials
Upcoming computation require the commands of the previous examples. The commands
CHSliso[Cs_, C0_] :=
liso4S@C0 - 1/liso4S@P0@C0 + 1/liso4S@inv4S[Cs - (C0 - inv4S@P0@C0)];
CSCiso[Cs_] := Module[
{c1, c2, C0, eq},
C0 = iso4S@{c1, c2};
eq = Simplify@CHSliso[Cs, C0];
C0 /. First@NSolve[{c1, c2} == eq && c1 > 0 && c2 > 0, {c1, c2}]
];
CSCI[Cs_, sgmicro_, sgmacro_, tcv_] :=
CHS[Cs, sgmicro, sgmacro, tcv, CSCiso@Cs];
define (in order of execution) the eigenvalues of the HS bound for isotropic texture, the isotropic self-consistent solution , and the approximation . The commands
Csnvn = {{128, 98, 86, 0, 0, 0}, {98, 128, 86, 0, 0, 0}, {86, 86, 192,
0, 0, 0}, {0, 0, 0, 164, 0, 0}, {0, 0, 0, 0, 164, 0}, {0, 0, 0,
0, 0, 30}};
Cs = nvnrec@Csnvn;
sgmicro = sgmacro = sg@hex;
{C0m, C0p} = iso4S /@ {{3510/11, 30}, {38116/113, 164}};
{C1m, C1p} = Through[{CR, CV}[Cs, sgmicro, sgmacro, V]];
{C2m, C2p} = CHS[Cs, sgmicro, sgmacro, V, #] & /@ {C0m, C0p};
CSCIloc = CSCI[Cs, sgmicro, sgmacro, V];
vars = Variables@C1p
define (in order of execution) the nvn-matrix of the hexagonal material discussed in Sect. 2.6 (see (80)), the hexagonal group as microscopic and macroscopic symmetry group, the zeroth-order bounds as given in (81), the first- and second-order bounds (corresponding to (83)), the SC,I approach (corresponding to (85)), and the texture variables. The commands
ind = {{1, 1, 1, 1}, {2, 3, 2, 3}};
{C0m, C0p, C1m, C1p, C2m, C2p, CSCIloc} =
Simplify@Extract[#, ind] & /@ {C0m, C0p, C1m, C1p, C2m, C2p,
CSCIloc};
define the component indices of interest for the hexagonal example, and overwrites the symbols for all bounds with the corresponding extracted components. The commands
condreg =
7 + 10*(Sqrt[6] - 21*V11)*V11 + 12*Sqrt[70]*V1111 >= 0 &&
7 + 5*Sqrt[6]*V11 >= 8*Sqrt[70]*V1111 /. {V11 -> vars[[1]],
V1111 -> vars[[2]]};
reg = ImplicitRegion[condreg, Evaluate@vars];
res = 10^(-4);
varsp = MeshCoordinates@DiscretizeRegion[reg, MaxCellMeasure -> res];
define (in order of execution) the conditions for the hexagonal region (see (77)), the region itself, a discretization resolution of \(10^{-4} \), and discretization points of the hexagonal region for the texture variables based on the chosen resolution. The commands
rec[{Cm_, Cp_}] :=
Rectangle @@ ({Cm, Cp} /. {vars[[1]] -> #[[1]],
vars[[2]] -> #[[2]]}) & /@ varsp;
rec0[{Cm_, Cp_}] :=
Rectangle @@ ({Cm, Cp} /. {vars[[1]] -> 0, vars[[2]] -> 0});
define the generation of the rectangle objects for given bound components based on the discretization points for the texture variables, and the rectangle for vanishing texture. Finally, the command
Show[
Graphics[{
Lighter[Blue, 0.7], rec0@{C0m, C0p}
, Orange, rec@{C1m, C1p}
, Yellow, rec@{C2m, C2p}
}
, Frame -> True
, FrameLabel -> Extract[genT[4,
\!\(\*OverscriptBox[\(C\), \(_\)]\)], ind]
, BaseStyle -> 15
, AspectRatio -> 1
]
, ParametricPlot[CSCIloc, Evaluate@Element[vars, reg],
PlotPoints -> 30, PlotStyle -> Directive[Purple, Opacity[0.7]],
BoundaryStyle -> None]
, Graphics[{
PointSize -> Large
, Blue, Point@Extract[Cs, ind]
, Red, Point[CSCIloc /. {vars[[1]] -> 0, vars[[2]] -> 0}]
, Red, Transparent, EdgeForm[{Thick, Red}]
, rec0@{C1m, C1p}
, rec0@{C2m, C2p}
}]
]
generates a graphic with the zeroth-order properties closure created by the light blue rectangle, the first-order properties closure created by orange rectangles, the second-order properties closure created by yellow rectangles, the SC,I region created by the ParametricPlot based on the hexagonal region, and the corresponding rectangles for vanishing texture variables created by the red rectangles and the red point. The graphic is generated with the resolution defined above (\(10^{-4} \)) for a fast computation. The graphic presented in Fig. 3 b) can be generated by the reader with the resolution \(10^{-6}\).
Rights and permissions
About this article
Cite this article
Lobos Fernández, M., Böhlke, T. Representation of Hashin–Shtrikman Bounds in Terms of Texture Coefficients for Arbitrarily Anisotropic Polycrystalline Materials. J Elast 134, 1–38 (2019). https://doi.org/10.1007/s10659-018-9679-0
Received:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10659-018-9679-0
Keywords
- Orientation average
- Polycrystals
- Texture
- Texture coefficients
- Effective anisotropic properties
- Materials design