MeanFieldHom.jl
Julia framework for mean-field homogenization of heterogeneous materials. Hill polarization tensors, cracks, layered inclusions, ageing viscoelasticity and all classical schemes, with ForwardDiff sensitivities.

MeanFieldHom.jl predicts the effective elastic, transport and viscoelastic properties of a heterogeneous material from the properties, shapes, orientations and volume fractions of the phases of its microstructure. All the ingredients — inclusion morphologies, localization tensors and homogenization schemes — live under a common abstraction hierarchy with a shared numerical core and a central dispatch mechanism. Part of the MicroPoroChemoMechanics ecosystem, built on TensND.jl.
Key features
- Hill polarization tensors — ellipsoidal inclusions and infinite cylinders, 2D and 3D, isotropic, anisotropic or transversely isotropic coaxial matrices
- Cracks — crack-opening-displacement tensor, compliance contribution, stress and displacement intensity factors for elliptic and ribbon cracks
- Transport — second-order Hill tensor with a closed form for any matrix anisotropy
- Layered inclusions —
n-layer composite spheres and confocal spheroids with imperfect interfaces (perfect, spring, membrane, Kapitza, surface-conductive) - Homogenization schemes — bounds, dilute, Mori–Tanaka, Maxwell, Ponte Castañeda–Willis, self-consistent and asymmetric self-consistent, differential
- Ageing linear viscoelasticity — Volterra operators with structured ISO/TI/orthotropic kernel storage, available to every scheme
- Finite-element inclusions — Eshelby problem solved numerically (3-D elliptical crack, sphere with an off-centre core) behind a two-backend contract
- Prototyping-oriented —
ForwardDiffsensitivities with respect to fractions, moduli and inclusion geometry, plus symbolic simplification viaSymPyandSymbolics
Installation
MeanFieldHom.jl is not (yet) registered in the General registry; install it directly from GitHub:
using Pkg
Pkg.add(url = "https://github.com/MicroPoroChemoMechanics/MeanFieldHom.jl")Optional package extensions activate on weak dependencies: DECUHR.jl with Integrals.jl (adaptive cubature backend), NonlinearSolve.jl (SciML fixed-point algorithms for the self-consistent schemes), SymPy.jl (symbolic elliptic integrals), and two finite-element backends — Ferrite.jl + Gmsh.jl or Gridap.jl + GridapGmsh.jl.
Documentation
Full documentation is available at MicroPoroChemoMechanics.github.io/MeanFieldHom.jl, including a gallery of complete micromechanical models in the Applications section — hydrating cement paste, chloride diffusivity, the interfacial transition zone in concrete, quasi-brittle strength, bituminous mixtures and ageing creep.
