Base classes

class mechmean.approximation.TwoPhaseComposite[source]

Base class for approximations of two-phase materials.

Formulations are based on average strain localization tensors :math:mathbb{A}_{text{j}}` mapping the average strain to the average strain in phase j, i.e.

\[\begin{align*} \left<\mathbb{\varepsilon}\right>_{\text{j}} = \mathbb{A}_{\text{j}} \left[ \left<\mathbb{\varepsilon}\right> \right] \end{align*}\]
calc_A_SI_from_hill_polarization(P_i, C_i, C_m)[source]

Calc strain localization tensor in single inclusion problem.

\[\begin{align*} \mathbb{A}_{\text{i}}^{\text{SI}} = \left( \mathbb{P}_{\text{i}} \left( \mathbb{C}_{\text{i}} - \mathbb{C}_{\text{m}} \right) + \mathbb{I}^{\text{S}} \right)^{-1} \end{align*}\]
Parameters
  • P_i (np.array (mandel6_4)) – Hill polarization

  • C_i (np.array (mandel6_4)) – Stiffness of inclusion

  • C_m (np.array (mandel6_4)) – Stiffness of matrix

Returns

Strain localization in single inclusion problem.

Return type

np.array (mandel6_4)

calc_C_eff_by_A_i(c_i, A_i, C_i, C_m)[source]

Calc effective stiffness of two phase material

\[\begin{align*} \mathbb{C}_{\text{eff}} = \mathbb{C}_{\text{m}} + c_{\text{i}} \left( \mathbb{C}_{\text{i}} - \mathbb{C}_{\text{m}} \right) \mathbb{A}_{\text{i}}^{\text{Approximated}} \end{align*}\]
Parameters
  • c_i (float) – Volume fraction of inclusion.

  • A_i (np.array (mandel6_4)) – Strain localization of inclusion.

  • C_i (np.array (mandel6_4)) – Stiffness of inclusion.

  • C_m (np.array (mandel6_4)) – Stiffness of matrix.

Returns

Effective stiffness.

Return type

np.array (mandel6_4)