Concentration and contribution tensors
Before this page
The Eshelby inclusion problem, whose inhomogeneity problem is solved here, and Hill polarization tensors, which supplies the
The Hill tensor determines the uniform strain inside an ellipsoidal inhomogeneity under a remote load, and from it MeanFieldHomogenization builds the four dilute concentration tensors of the Eshelby problem, together with the size-independent stiffness and compliance contribution tensors of Kachanov–Sevostianov.
Everything on this page is one chain, and each link is a separate entry point — which is what makes it possible to plug a morphology in halfway through (custom inclusions):
1. Pivot formula
For an inclusion of shape tensor
where hill_tensor) and
with
| Function | Return value |
|---|---|
gradient_gradient_concentration(incl, C₁, C₀) | |
flux_gradient_concentration(incl, C₁, C₀) | |
gradient_flux_concentration(incl, C₁, C₀) | |
flux_flux_concentration(incl, C₁, C₀) |
For phase
2. Contribution tensors
The stiffness contribution tensor (Kachanov and Sevostianov, 2018) is
and its dilute-scheme volume average is
for a dilute family of volume fraction
Functions: property_contribution, inverse_property_contribution, with density helpers delta_property and delta_inverse_property.
All of the above is one-site: the inclusion feels its neighbors only through the reference medium. Resolving the pairwise interaction explicitly replaces
3. Cracks (Kachanov convention)
For flat cracks the crack-density convention (Budiansky–O'Connell) is used instead of a volume fraction. The same entry points apply, with the density
inverse_property_contribution(crack, C₀)returns the size-independent ;property_contribution(crack, C₀)returns (first order in the density, provided for API symmetry);delta_inverse_property(crack, H, ε)anddelta_property(crack, N, ε)apply the appropriate or geometric prefactor.
4. Conductivity (2nd-order transport)
Every routine above serves conduction as well, under the same name: the methods on ::AbstractTens{2,3} properties are the elastic formulas with
| Generic | Elasticity | Conduction |
|---|---|---|
gradient_gradient_concentration | strain_strain_concentration | |
flux_gradient_concentration | stress_strain_concentration | |
gradient_flux_concentration | strain_stress_concentration | |
flux_flux_concentration | stress_stress_concentration | |
property_contribution | stiffness_contribution | conductivity_contribution |
inverse_property_contribution | compliance_contribution | resistivity_contribution |
delta_property | delta_stiffness | delta_conductivity |
delta_inverse_property | delta_compliance | delta_resistivity |
5. Type-genericity
All four concentration and both contribution tensors are generic in the element type; the only requirement is that hill_tensor supports it.
6. Extending to user-defined inclusions
A concrete subtype of AbstractInclusion inherits the four concentration and the contribution tensors as soon as it provides hill_tensor. When LayeredSphere), override gradient_gradient_concentration instead — the rest is derived algebraically.
See the developer guide Adding a new inclusion for a step-by-step recipe.
Where to go next
Everything on this page concerns one inclusion, alone in its reference medium. The next page, Two-inclusion interaction tensors, asks what one inclusion induces in another, the ingredient of the two schemes that resolve interactions pair by pair. The contribution tensors of §2 are what the Homogenization schemes add up, the crack form of §3 is derived in Crack opening displacement and compliance, and the gates through which a user-defined morphology enters the chain of this page are described in Custom inclusions.