.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "getting_started/14_Mori_Tanaka_scheme.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code .. rst-class:: sphx-glr-example-title .. _sphx_glr_getting_started_14_Mori_Tanaka_scheme.py: Modified Mori-Tanaka Scheme =========================== .. GENERATED FROM PYTHON SOURCE LINES 7-15 .. code-block:: python3 import numpy as np import matplotlib.pyplot as plt plt.rcParams['font.size']=14 plt.rcParams['font.family']='arial' .. GENERATED FROM PYTHON SOURCE LINES 16-22 .. code-block:: python3 import rockphypy # import the module from rockphypy import EM .. GENERATED FROM PYTHON SOURCE LINES 23-107 Modified Mori-Tanaka scheme ~~~~~~~~~~~~~~~~~~~~~~~~~~~ Iwakuma (et al.) proposed a modified Mori-Tanaka scheme in which the fraction of matrix is set to zero, for simplicity, only spherical inhomogeneities are considered, the two phase composite with a *virtual martix* is .. math:: \bar{K}=\frac{ {\textstyle \sum_{i=1}^{2}} \frac{f_iK_i}{1-(1-\frac{K_i}{K_M} ) \alpha } }{{\textstyle \sum_{i=1}^{2}} \frac{f_i}{1-(1-\frac{K_i}{K_M} ) \alpha } } .. math:: \bar{G}=\frac{ {\textstyle \sum_{i=1}^{2}} \frac{f_iG_i}{1-(1-\frac{G_i}{G_M} ) \alpha } }{{\textstyle \sum_{i=1}^{2}} \frac{f_i}{1-(1-\frac{G_i}{G_M} ) \alpha } } .. math:: f_1+f_2=1 Note that the material parameters of the matrix which no longer exists still remain in these expressions and has great impact on the result Relationship between Modifiedl MT scheme and Hashin strikmann bound ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ If the virtual matrix is set equivalent to one of the inhomogeneities, for example, if we set :math:`K_m` to :math:`K_1` and :math:`\nu_M= \nu_1`, then the mMT becomes one of the Hashin–Shtrikman bounds. The derivation is shown as follows: .. math:: \bar{K}=\frac{f_1K_1+\frac{f_2K_2}{1-(1-\frac{K_2}{K_1} )\alpha } }{f_1+\frac{f_2}{1-(1-\frac{K_2}{K_1} )\alpha }} .. math:: \frac{\bar{K}}{K_1} =\frac{f_1+\frac{f_2\frac{K_2}{K_1} }{1-(1-\frac{K_2}{K_1} )\alpha } }{f_1+\frac{f_2}{1-(1-\frac{K_2}{K_1} )\alpha }} .. math:: \frac{\bar{K}}{K_1} =\frac{f_1-f_1(1-\frac{K_2}{K_1} )\alpha +f_2\frac{K_2}{K_1} }{f_1-f_1(1-\frac{K_2}{K_1} )\alpha +f_2} .. math:: \frac{\bar{K}}{K_1} =\frac{f_1+f_2-f_1(1-\frac{K_2}{K_1} )\alpha +f_2\frac{K_2}{K_1}-f_2 }{f_1-f_1(1-\frac{K_2}{K_1} )\alpha +f_2} .. math:: \frac{\bar{K}}{K_1} =\frac{1-f_1(1-\frac{K_2}{K_1} )\alpha +f_2(\frac{K_2}{K_1}-1) }{1-f_1(1-\frac{K_2}{K_1} )\alpha } .. math:: \frac{\bar{K}}{K_1} =1+\frac{f_2(\frac{K_2}{K_1}-1) }{1-f_1(1-\frac{K_2}{K_1} )\alpha } .. math:: \frac{\bar{K}}{K_1} =1-\frac{f_2(1-\frac{K_2}{K_1}) }{1-f_1(1-\frac{K_2}{K_1} )\alpha } Next we show modified MT scheme is upper Hashin-Shtrikmann bound. :math:`\alpha` is one of the coefficient of Elsheby Tensor defined as a function of Poisson's ratio of the virtual matrix :math:`\nu_M=\frac{3K-2G}{2(3K+G)}` .. math:: \alpha \equiv \frac{1+\nu_M}{3(1-\nu_M)} The Hashin-Strikmann bound is: .. math:: K^{HS}=K_1+\frac{f_2}{(K_2-K_1)^{-1}+f_1(K_1+\frac{4}{3}G_1 )^{-1}} .. math:: \alpha = \frac{3K}{3K+4G} Let's denote :math:`\frac{K_2}{K_1}-1` as :math:`M`, .. math:: \frac{\bar{K}}{K_1} =1+\frac{f_2 }{\frac{1}{M}+f_1\alpha } .. math:: \frac{\bar{K}}{K_1} =1+\frac{f_2 }{\frac{K_1}{K_2-K_1} +f_1\alpha } .. math:: \bar{K}=K_1+\frac{f_2K_1\cdot \frac{1}{K_1} }{ (\frac{K_1}{K_2-K_1} +f_1\alpha)\cdot \frac{1}{K_1} } .. math:: \bar{K} = K_1+\frac{f_2}{ \frac{1}{K_2-K_1} +f_1\frac{ \alpha}{K_1} } .. math:: \bar{K} = K_1+\frac{f_2}{ (K_2-K_1)^{-1} +f_1\frac{ \alpha}{K_1} } .. math:: \bar{K} = K_1+\frac{f_2}{ (K_2-K_1)^{-1} +f_1 (K_1+\frac{4}{3}G_1 )^{-1} } Example ^^^^^^^ Let's see if the modified mori-Tanaka scheme will yield the same result as given by HS upper bound when set the virtual matrix constant to be the phase 1's constant, phase 1 is stiff, and phase 2 is soft .. GENERATED FROM PYTHON SOURCE LINES 110-123 .. code-block:: python3 f= np.linspace(0,1,100) Ki, Gi=5,10 # Km, Gm=37,45 # 65, 30 # model K_UHS, GUHS= EM.HS(f, Km, Ki,Gm, Gi, bound='upper') K_LHS, GLHS= EM.HS(f, Km, Ki,Gm, Gi, bound='lower') K_MT, G_MT= EM.MT_average(f, Km, Gm,Km, Gm, Ki, Gi) .. GENERATED FROM PYTHON SOURCE LINES 124-139 .. code-block:: python3 fig=plt.figure(figsize=(6,6)) plt.xlabel('f') plt.ylabel('K_{eff} GPa') #plt.xlim(0,20) #plt.ylim(2.5,5.5) plt.title('mMT and HS bound') plt.plot(f,K_LHS,'-k',lw=3,label='Lower_HS') plt.plot(f,K_UHS,'-k',lw=3,label='Upper_HS') plt.plot(f,K_MT,'g--',lw=3,label='mMT') plt.legend(loc='upper left') #plt.text(0, 190, 'K1/G1=K2/G2=50 \n\\nu=0.3') .. image-sg:: /getting_started/images/sphx_glr_14_Mori_Tanaka_scheme_001.png :alt: mMT and HS bound :srcset: /getting_started/images/sphx_glr_14_Mori_Tanaka_scheme_001.png :class: sphx-glr-single-img .. rst-class:: sphx-glr-script-out .. code-block:: none .. GENERATED FROM PYTHON SOURCE LINES 140-143 **Reference** Iwakuma, T. and Koyama, S., 2005. An estimate of average elastic moduli of composites and polycrystals. Mechanics of materials, 37(4), pp.459-472. .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 0.168 seconds) .. _sphx_glr_download_getting_started_14_Mori_Tanaka_scheme.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: 14_Mori_Tanaka_scheme.py <14_Mori_Tanaka_scheme.py>` .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: 14_Mori_Tanaka_scheme.ipynb <14_Mori_Tanaka_scheme.ipynb>` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_