Introduction

In recent years, phase field approach has become a method of choice for the simulations of microstructure evolution in a variety of systems1,2. Historically, it emerged as a tool to simulate different solidification scenarios in metallic systems3. At the same time, a phase field formulation based on Khachaturyan’s microelasticity theory has been applied to modeling of the martensitic phase transformation driven by the symmetry change between the austenite (parent phase) and the martensite (product phase)4,5. At present, the range of applications of the phase-field method covers a wide spectrum of phase and structural transformations in solid, fluid, and mixed systems. Such a wide spectrum of applications requires combining the phase-field method with other methods describing various physical phenomena, e.g., chemical diffusion and thermodynamics6,7, fluid flow8,9,10, elasticity11,12,13, plasticity14,15,16, magnetism17 etc.

To date, most of the combined approaches involve one or another degree of simplification achieved via the problem linearization, e.g., by using the quasi-equilibrium approach based on linearized phase diagrams18 to describe the thermodynamic properties instead of considering the corresponding Gibbs energies directly, using the Lattice-Boltzmann method19 to solve the fluid dynamics problem instead of solving the Navier-Stokes equation directly, using linear elasticity to solve the mechanical problem20,21 instead of the finite strain theory within a suitable hyperelasticity model, etc. While linearizations are well justified for a variety of problems characterized by only small deviations from thermodynamic and mechanical equilibria, there are problems that evolve at conditions far from such equilibria. The need to address such problems led to the creation of more general modeling techniques to treat rigorous thermodynamics in highly off-equilibrium systems22,23. At the same time, the combination of the phase-field approach with rigorous mechanics suitable to model large deformations occurring during the phase transformations led to the development of a more sophisticated approach24,25. The complexity and the corresponding computational costs of such an approach is well justified when modeling, for example, the dynamic recrystallization induced by severe plastic deformation26. On the other hand, when modeling the systems subjected to moderate deformations, which are too big to be correctly represented by the linear elasticity but are small enough to be solved using an appropriate hyperelasticity model within the finite strain theory, a more efficient approach can be used. Traditionally, the mechanical deformation is addressed by the linear elasticity when the strains are of the order of a few percent. Higher strains can also be considered by the linear elastic model if no significant rotations are involved. Considering larger deformations accompanied by significant rotations requires using finite strains and a corresponding hyperelastic model. In such a case, the mechanical equilibrium problem is typically solved using the finite element method, which is very convenient for modeling the mechanical behavior of static microstructures where relatively sparse element density with sharp interface representation is sufficient to obtain accurate mechanical equilibrium solution. On the other hand, in the case of evolving microstructures with diffuse interface representation, e.g., during phase-field simulations, the finite elements method loses its advantages because updating the elements mesh following the microstructure evolution is costly and requires careful mesh generation to avoid spurious anisotropy and other artifacts. Also, when attempting to use the finite elements method on a dense regular mesh, similar to the finite difference grid in most phase-field simulations, finite elements methods have no advantage compared to finite difference methods. In fact, linear finite elements with a single integration point are similar in numerical complexity to the nearest neighbor finite differences scheme for small strains, but while in the finite difference scheme, the solution is readily available in every grid point, the finite elements solution has to be interpolated from the node points to the integration point in the middle of the finite elements to couple it to other fields in a typical phase-field simulation. All these considerations are associated with the high computational costs, frequently limiting the simulations using the finite elements methods to two-dimensional systems27,28,29,30. In contrast, the spectral methods based on the fast Fourier transformations algorithm offer a simpler and more efficient alternative to solving the mechanical equilibrium problem using the finite elements or finite differences models in phase-field simulations and are successfully used in the phase-field community for solving small strain problems for more than 20 years since it has been introduced in ref. 31 and later extended in ref. 32. Recently, a fully featured finite strain consideration in phase-field simulations has been presented in ref. 33. This formulation uses multiplicative decomposition of the deformation gradient tensor but additive decomposition of strain. The latter poses a limitation on the modeling of transformation-induced rotations, briefly discussed in ref. 12.

In this paper, we present a highly efficient Fourier space iterative mechanical equilibrium solution algorithm suitable for phase-field simulations, which require frequent mechanical equilibrium solution updates due to the rapid evolution of the microstructure. The development of the proposed algorithm has been greatly inspired by the small strain iterative mechanical equilibrium solution algorithm for heterogeneous systems proposed in ref. 32 and the need to address the phase transformation scenarios accompanied by not only large deformations but also significant transformation-induced lattice rotations. The proposed algorithm can be considered a straightforward update to already existing small strain solvers based on a fast Fourier transformation algorithm.

Results

St. Venant–Kirchhoff hyperelastic model

One of the simplest hyperelasticity models is the St. Venant–Kirchhoff model34. The basic description of the model for anisotropic materials can be expressed as follows:

$${\psi }^{{{{\rm{el}}}}}=\frac{1}{2}\,{{{\bf{E}}}}:{\mathbb{C}}:{{{\bf{E}}}},$$
(1)
$${{{\bf{S}}}}=\frac{\partial {\psi }^{{{{\rm{el}}}}}}{\partial {{{\bf{E}}}}}={\mathbb{C}}:{{{\bf{E}}}},$$
(2)
$${{{\bf{E}}}}=\frac{1}{2}\left({{{{\bf{F}}}}}^{{{{\rm{T}}}}}{{{\bf{F}}}}-{{{\bf{I}}}}\right),$$
(3)

where ψel is the elastic strain energy density, \({\mathbb{C}}\) is the elasticity tensor, S is the second Piola–Kirchhoff stress tensor, E is the Green–Lagrange strain tensor, I is the unit tensor and F is the deformation gradient tensor. The components of the deformation gradient tensor F are given by

$${F}_{ij}=\frac{\partial {x}_{i}}{\partial {X}_{j}},$$
(4)

where xi are the spatial coordinates and Xj are the material coordinates (i, j = 1, 2, 3). For further analysis it is convenient to introduce a displacement vector

$${{{\bf{u}}}}({{{\bf{X}}}})={{{\bf{x}}}}({{{\bf{X}}}})-{{{\bf{X}}}}$$
(5)

and rewrite the deformation gradient tensor in the following form

$${{{\bf{F}}}}={{{\bf{I}}}}+{{{\bf{f}}}},$$
(6)

with f given by

$${{{\bf{f}}}}={\nabla }_{{{{\rm{X}}}}}{{{\bf{u}}}}=\left[\begin{array}{ccc}\frac{\partial {u}_{x}}{\partial x}&\frac{\partial {u}_{x}}{\partial y}&\frac{\partial {u}_{x}}{\partial z}\\ \frac{\partial {u}_{y}}{\partial x}&\frac{\partial {u}_{y}}{\partial y}&\frac{\partial {u}_{y}}{\partial z}\\ \frac{\partial {u}_{z}}{\partial x}&\frac{\partial {u}_{z}}{\partial y}&\frac{\partial {u}_{z}}{\partial z}\end{array}\right]$$
(7)

where ui(i = x, y, z) are the components of the displacement vector u.

In the absence of external forces, the general form of the mechanical equilibrium condition reads

$$\nabla \cdot {{{\bf{P}}}}={{{\bf{0}}}},$$
(8)

where P = FS is the first Piola–Kirchhoff stress tensor.

The equations above assume purely elastic deformation. In real situations, other deformation mechanisms can be active, e.g., plastic and transformation induced. In such a case, the total deformation gradient tensor can be decomposed as follows:

$${{{\bf{F}}}}={{{{\bf{F}}}}}_{{{{\rm{el}}}}}{{{{\bf{F}}}}}_{{{{\rm{pl}}}}}{{{{\bf{F}}}}}_{{{{\rm{tr}}}}},$$
(9)

where Fel is the elastic deformation gradient tensor, Fpl is the plastic deformation gradient tensor and \({{{{\bf{F}}}}}_{{{{\rm{tr}}}}}\) is the transformation-induced deformation gradient tensor.

For further analysis, it is convenient to introduce the stress-free deformation gradient tensor

$${{{{\bf{F}}}}}_{{{{\rm{sf}}}}}={{{{\bf{F}}}}}_{{{{\rm{pl}}}}}{{{{\bf{F}}}}}_{{{{\rm{tr}}}}},$$
(10)

and define the elastic deformation gradient tensor as follows

$${{{{\bf{F}}}}}_{{{{\rm{el}}}}}={{{\bf{F}}}}{{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{-1}.$$
(11)

Using Eqs. (3) and (11) the elastic strain tensor gets the form

$${{{{\bf{E}}}}}_{{{{\rm{el}}}}}=\frac{1}{2}\left({{{{\bf{F}}}}}_{{{{\rm{el}}}}}^{{{{\rm{T}}}}}{{{{\bf{F}}}}}_{{{{\rm{el}}}}}-{{{\bf{I}}}}\right),$$
(12)

and the elastic second Piola–Kirchhoff stress tensor in the intermediate configuration, obtained after the transformation induced and/or plastic deformation, has the form

$${{{{\bf{S}}}}}_{{{{\rm{el}}}}}=\frac{\partial {\psi }^{{{{\rm{el}}}}}}{\partial {{{{\bf{E}}}}}_{{{{\rm{el}}}}}}={\mathbb{C}}:{{{{\bf{E}}}}}_{{{{\rm{el}}}}}.$$
(13)

Then, the second Piola–Kirchhoff stress tensor in the reference configuration suitable for the mechanical equilibrium calculation in Eq. (8) can be obtained via the pull back operation

$${{{\bf{S}}}}={J}_{{{{\rm{sf}}}}}{{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{-1}{{{{\bf{S}}}}}_{{{{\rm{el}}}}}{{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{-{{{\rm{T}}}}},$$
(14)

where \({J}_{{{{\rm{sf}}}}}=\det ({{{{\bf{F}}}}}_{{{{\rm{sf}}}}})\) and \({\square }^{-T}={({\square }^{-1})}^{{{{\rm{T}}}}}\).

Substituting Eq. (14) into Eq. (8) the updated mechanical equilibrium equation reads

$$\nabla \cdot \left({J}_{{{{\rm{sf}}}}}{{{\bf{F}}}}{{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{-1}{{{{\bf{S}}}}}_{{{{\rm{el}}}}}{{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{-{{{\rm{T}}}}}\right)={{{\bf{0}}}},$$
(15)

Small strain, anisotropic homogeneous medium

Considering only the small deformations, the elastic Green–Lagrange strain tensor given in Eq. (3) can be reduced to

$${{{{\bf{E}}}}}_{{{{\rm{el}}}}}\approx {\varepsilon }_{{{{\rm{el}}}}}=\frac{1}{2}\left({{{{\bf{F}}}}}_{{{{\rm{el}}}}}^{{{{\rm{T}}}}}+{{{{\bf{F}}}}}_{{{{\rm{el}}}}}-2{{{\bf{I}}}}\right)=\frac{1}{2}\left({{{{\bf{f}}}}}_{{{{\rm{el}}}}}^{{{{\rm{T}}}}}+{{{{\bf{f}}}}}_{{{{\rm{el}}}}}\right),$$
(16)

where εel is the small strain tensor. In Eq. (16) only the first order terms in Fel are considered. The equilibrium condition is thus reduced to

$$\nabla \cdot \left({\mathbb{C}}:{\varepsilon }_{{{{\rm{el}}}}}\right)={{{\bf{0}}}},$$
(17)
$$\nabla \cdot \left(\frac{1}{2}{\mathbb{C}}:({{{{\bf{f}}}}}_{{{{\rm{el}}}}}^{{{{\rm{T}}}}}+{{{{\bf{f}}}}}_{{{{\rm{el}}}}})\right)={{{\bf{0}}}}.$$
(18)

Substituting Eq. (7) in Eq. (18), we get

$$\nabla \cdot \left(\frac{1}{2}{\mathbb{C}}:\left({({\nabla }_{{{{\rm{X}}}}}{{{\bf{u}}}})}^{{{{\rm{T}}}}}+{\nabla }_{{{{\rm{X}}}}}{{{\bf{u}}}}\right)\right)={{{\bf{0}}}}.$$
(19)

If other deformation mechanisms are active, e.g., plastic, transformation induced, or externally applied, the total strain tensor can be decomposed as follows:

$$\varepsilon ={\varepsilon }_{{{{\rm{el}}}}}+{\varepsilon }_{{{{\rm{pl}}}}}+{\varepsilon }_{{{{\rm{tr}}}}},$$
(20)

where εel, εpl and \({\varepsilon }_{{{{\rm{tr}}}}}\) are the elastic, plastic and transformation strains, correspondingly. For the following analysis it is convenient to introduce the linear stress-free strain

$${\varepsilon }_{{{{\rm{sf}}}}}={\varepsilon }_{{{{\rm{pl}}}}}+{\varepsilon }_{{{{\rm{tr}}}}},$$
(21)

and corresponding inelastic stress

$${\sigma }_{{{{\rm{sf}}}}}={\mathbb{C}}:{\varepsilon }_{{{{\rm{sf}}}}},$$
(22)

Thus, the Eq. (19) gets the form

$$\nabla \cdot \left(\frac{1}{2}{\mathbb{C}}:\left({({\nabla }_{{{{\rm{X}}}}}{{{\bf{u}}}})}^{{{{\rm{T}}}}}+{\nabla }_{{{{\rm{X}}}}}{{{\bf{u}}}}\right)\right)=\nabla \cdot {\sigma }_{{{{\rm{sf}}}}},$$
(23)

The Eq. (23) can be rewritten in the matrix form as follows:

$${{{\bf{A}}}}:{{{\bf{u}}}}=\nabla \cdot {\sigma }_{{{{\rm{sf}}}}},$$
(24)

where A is the acoustic differential operator whose components are given by

$$\begin{array}{rcl}{A}_{11}&=&{\partial }_{y}{\hat{C}}_{16}{\partial }_{x}+{\partial }_{x}{\hat{C}}_{16}{\partial }_{y}+{\partial }_{z}{\hat{C}}_{15}{\partial }_{x}\\ &+&{\partial }_{x}{\hat{C}}_{15}{\partial }_{z}+{\partial }_{x}{\hat{C}}_{11}{\partial }_{x}+{\partial }_{z}{\hat{C}}_{56}{\partial }_{y}\\ &+&{\partial }_{y}{\hat{C}}_{56}{\partial }_{z}+{\partial }_{y}{\hat{C}}_{66}{\partial }_{y}+{\partial }_{z}{\hat{C}}_{55}{\partial }_{z},\end{array}$$
(25)
$$\begin{array}{rcl}{A}_{12}&=&{\partial }_{x}{\hat{C}}_{12}{\partial }_{y}+{\partial }_{y}{\hat{C}}_{66}{\partial }_{x}+{\partial }_{x}{\hat{C}}_{14}{\partial }_{z}\\ &+&{\partial }_{z}{\hat{C}}_{56}{\partial }_{x}+{\partial }_{x}{\hat{C}}_{16}{\partial }_{x}+{\partial }_{z}{\hat{C}}_{25}{\partial }_{y}\\ &+&{\partial }_{y}{\hat{C}}_{46}{\partial }_{z}+{\partial }_{y}{\hat{C}}_{26}{\partial }_{y}+{\partial }_{z}{\hat{C}}_{45}{\partial }_{z},\end{array}$$
(26)
$$\begin{array}{rcl}{A}_{13}&=&{\partial }_{x}{\hat{C}}_{14}{\partial }_{y}+{\partial }_{y}{\hat{C}}_{56}{\partial }_{x}+{\partial }_{x}{\hat{C}}_{13}{\partial }_{z}\\ &+&{\partial }_{z}{\hat{C}}_{55}{\partial }_{x}+{\partial }_{x}{\hat{C}}_{15}{\partial }_{x}+{\partial }_{y}{\hat{C}}_{36}{\partial }_{z}\\ &+&{\partial }_{z}{\hat{C}}_{45}{\partial }_{y}+{\partial }_{y}{\hat{C}}_{46}{\partial }_{y}+{\partial }_{z}{\hat{C}}_{35}{\partial }_{z},\end{array}$$
(27)
$$\begin{array}{rcl}{A}_{21}&=&{\partial }_{y}{\hat{C}}_{12}{\partial }_{x}+{\partial }_{x}{\hat{C}}_{66}{\partial }_{y}+{\partial }_{z}{\hat{C}}_{14}{\partial }_{x}\\ &+&{\partial }_{x}{\hat{C}}_{56}{\partial }_{z}+{\partial }_{x}{\hat{C}}_{16}{\partial }_{x}+{\partial }_{y}{\hat{C}}_{25}{\partial }_{z}\\ &+&{\partial }_{z}{\hat{C}}_{46}{\partial }_{y}+{\partial }_{y}{\hat{C}}_{26}{\partial }_{y}+{\partial }_{z}{\hat{C}}_{45}{\partial }_{z},\end{array}$$
(28)
$$\begin{array}{rcl}{A}_{22}&=&{\partial }_{y}{\hat{C}}_{26}{\partial }_{x}+{\partial }_{x}{\hat{C}}_{26}{\partial }_{y}+{\partial }_{z}{\hat{C}}_{46}{\partial }_{x}\\ &+&{\partial }_{x}{\hat{C}}_{46}{\partial }_{z}+{\partial }_{x}{\hat{C}}_{66}{\partial }_{x}+{\partial }_{z}{\hat{C}}_{24}{\partial }_{y}\\ &+&{\partial }_{y}{\hat{C}}_{24}{\partial }_{z}+{\partial }_{y}{\hat{C}}_{22}{\partial }_{y}+{\partial }_{z}{\hat{C}}_{44}{\partial }_{z},\end{array}$$
(29)
$$\begin{array}{rcl}{A}_{23}&=&{\partial }_{y}{\hat{C}}_{25}{\partial }_{x}+{\partial }_{x}{\hat{C}}_{46}{\partial }_{y}+{\partial }_{x}{\hat{C}}_{36}{\partial }_{z}\\ &+&{\partial }_{z}{\hat{C}}_{45}{\partial }_{x}+{\partial }_{x}{\hat{C}}_{56}{\partial }_{x}+{\partial }_{y}{\hat{C}}_{23}{\partial }_{z}\\ &+&{\partial }_{z}{\hat{C}}_{44}{\partial }_{y}+{\partial }_{y}{\hat{C}}_{24}{\partial }_{y}+{\partial }_{z}{\hat{C}}_{34}{\partial }_{z},\end{array}$$
(30)
$$\begin{array}{rcl}{A}_{31}&=&{\partial }_{y}{\hat{C}}_{14}{\partial }_{x}+{\partial }_{x}{\hat{C}}_{56}{\partial }_{y}+{\partial }_{z}{\hat{C}}_{13}{\partial }_{x}\\ &+&{\partial }_{x}{\hat{C}}_{55}{\partial }_{z}+{\partial }_{x}{\hat{C}}_{15}{\partial }_{x}+{\partial }_{z}{\hat{C}}_{36}{\partial }_{y}\\ &+&{\partial }_{y}{\hat{C}}_{45}{\partial }_{z}+{\partial }_{y}{\hat{C}}_{46}{\partial }_{y}+{\partial }_{z}{\hat{C}}_{35}{\partial }_{z},\end{array}$$
(31)
$$\begin{array}{rcl}{A}_{32}&=&{\partial }_{x}{\hat{C}}_{25}{\partial }_{y}+{\partial }_{y}{\hat{C}}_{46}{\partial }_{x}+{\partial }_{z}{\hat{C}}_{36}{\partial }_{x}\\ &+&{\partial }_{x}{\hat{C}}_{45}{\partial }_{z}+{\partial }_{x}{\hat{C}}_{56}{\partial }_{x}+{\partial }_{z}{\hat{C}}_{23}{\partial }_{y}\\ &+&{\partial }_{y}{\hat{C}}_{44}{\partial }_{z}+{\partial }_{y}{\hat{C}}_{24}{\partial }_{y}+{\partial }_{z}{\hat{C}}_{34}{\partial }_{z},\end{array}$$
(32)
$$\begin{array}{rcl}{A}_{33}&=&{\partial }_{y}{\hat{C}}_{45}{\partial }_{x}+{\partial }_{x}{\hat{C}}_{45}{\partial }_{y}+{\partial }_{z}{\hat{C}}_{35}{\partial }_{x}\\ &+&{\partial }_{x}{\hat{C}}_{35}{\partial }_{z}+{\partial }_{x}{\hat{C}}_{55}{\partial }_{x}+{\partial }_{z}{\hat{C}}_{34}{\partial }_{y}\\ &+&{\partial }_{y}{\hat{C}}_{34}{\partial }_{z}+{\partial }_{y}{\hat{C}}_{44}{\partial }_{y}+{\partial }_{z}{\hat{C}}_{33}{\partial }_{z},\end{array}$$
(33)

where \({\partial }_{x}=\frac{\partial }{\partial {X}_{1}}\), \({\partial }_{y}=\frac{\partial }{\partial {X}_{2}}\) and \({\partial }_{z}=\frac{\partial }{\partial {X}_{3}}\).

In the case of a homogeneous elastic medium with

$${\mathbb{C}}=\bar{{\mathbb{C}}}\equiv const,$$
(34)

the solution of Eq. (24) can be easily found in Fourier space. The forward Fourier transformation is formally defined by

$$\tilde{f}({{{\bf{q}}}})=\int\,f({{{\bf{r}}}})\exp (-2\pi i{{{\bf{r}}}}{{{\bf{q}}}})d{{{\bf{r}}}},$$
(35)

and the backward Fourier transformation is defined by

$$f({{{\bf{r}}}})=\int\,\tilde{f}({{{\bf{q}}}})\exp (2\pi i{{{\bf{r}}}}{{{\bf{q}}}})d{{{\bf{q}}}}.$$
(36)

where r is the spatial coordinate vector.

Performing the Fourier transformation of Eq. (24) we get

$$\tilde{{{{\bf{A}}}}}\tilde{{{{\bf{u}}}}}=2\pi i{{{\bf{q}}}}{\tilde{\sigma }}_{{{{\rm{sf}}}}},$$
(37)

where \(\tilde{{{{\bf{A}}}}}\) and \({\tilde{\sigma }}_{{{{\rm{sf}}}}}\) are the acoustic tensor and the Fourier component of the right-hand side stress tensor, correspondingly, \(i=\sqrt{-1}\), q is the wave vector, and \(\tilde{{{{\bf{u}}}}}\) is the Fourier component of the displacement vector u. The components of the acoustic tensor \(\tilde{{{{\bf{A}}}}}\) are given by

$$\begin{array}{rcl}{\tilde{A}}_{11}&=&-4{\pi }^{2}\left(2{\bar{C}}_{16}{q}_{x}{q}_{y}+2{\bar{C}}_{15}{q}_{x}{q}_{z}+{\bar{C}}_{11}{q}_{x}^{2}\right.\\ &&\left.+2{\bar{C}}_{56}{q}_{y}{q}_{z}+{\bar{C}}_{66}{q}_{y}^{2}+{\bar{C}}_{55}{q}_{z}^{2}\right)\\ {\tilde{A}}_{12}={\tilde{A}}_{21}&=&-4{\pi }^{2}\left({\bar{C}}_{12}{q}_{x}{q}_{y}+{\bar{C}}_{66}{q}_{x}{q}_{y}+{\bar{C}}_{14}{q}_{x}{q}_{z}\right.\\ &&+{\bar{C}}_{56}{q}_{x}{q}_{z}+{\bar{C}}_{16}{q}_{x}^{2}+{\bar{C}}_{25}{q}_{y}{q}_{z}\\ &&\left.+{\bar{C}}_{46}{q}_{y}{q}_{z}+{\bar{C}}_{26}{q}_{y}^{2}+{\bar{C}}_{45}{q}_{z}^{2}\right)\\ {\tilde{A}}_{13}={\tilde{A}}_{31}&=&-4{\pi }^{2}\left({\bar{C}}_{14}{q}_{x}{q}_{y}+{\bar{C}}_{56}{q}_{x}{q}_{y}+{\bar{C}}_{13}{q}_{x}{q}_{z}\right.\\ &&+{\bar{C}}_{55}{q}_{x}{q}_{z}+{\bar{C}}_{15}{q}_{x}^{2}+{\bar{C}}_{36}{q}_{y}{q}_{z}\\ &&\left.+{\bar{C}}_{45}{q}_{y}{q}_{z}+{\bar{C}}_{46}{q}_{y}^{2}+{\bar{C}}_{35}{q}_{z}^{2}\right)\\ {\tilde{A}}_{22}&=&-4{\pi }^{2}\left(2{\bar{C}}_{26}{q}_{x}{q}_{y}+2{\bar{C}}_{46}{q}_{x}{q}_{z}+{\bar{C}}_{66}{q}_{x}^{2}\right.\\ &&\left.+2{\bar{C}}_{24}{q}_{y}{q}_{z}+{\bar{C}}_{22}{q}_{y}^{2}+{\bar{C}}_{44}{q}_{z}^{2}\right)\\ {\tilde{A}}_{23}={\tilde{A}}_{32}&=&-4{\pi }^{2}\left({\bar{C}}_{25}{q}_{x}{q}_{y}+{\bar{C}}_{46}{q}_{x}{q}_{y}+{\bar{C}}_{36}{q}_{x}{q}_{z}\right.\\ &&+{\bar{C}}_{45}{q}_{x}{q}_{z}+{\bar{C}}_{56}{q}_{x}^{2}+{\bar{C}}_{23}{q}_{y}{q}_{z}\\ &&\left.+{\bar{C}}_{44}{q}_{y}{q}_{z}+{\bar{C}}_{24}{q}_{y}^{2}+{\bar{C}}_{34}{q}_{z}^{2}\right)\\ {\tilde{A}}_{33}&=&-4{\pi }^{2}\left(2{\bar{C}}_{45}{q}_{x}{q}_{y}+2{\bar{C}}_{35}{q}_{x}{q}_{z}+{\bar{C}}_{55}{q}_{x}^{2}\right.\\ &&\left.+2{\bar{C}}_{34}{q}_{y}{q}_{z}+{\bar{C}}_{44}{q}_{y}^{2}+{\bar{C}}_{33}{q}_{z}^{2}\right)\end{array}$$

Utilizing the fact that Eq. (37) contains only local operations, the mechanical equilibrium solution in Fourier space reads

$$\tilde{{{{\bf{u}}}}}={\tilde{{{{\bf{A}}}}}}^{-1}:\left(2\pi i{{{\bf{q}}}}{\tilde{\sigma }}_{{{{\rm{sf}}}}}\right).$$
(38)

Next, the Fourier components of the reduced deformation gradient tensor \(\tilde{{{{\bf{f}}}}}\) can be easily computed using the Fourier transform of Eq. (7)

$$\tilde{{{{\bf{f}}}}}=\left[\begin{array}{ccc}2\pi i{q}_{x}{\tilde{u}}_{x}&2\pi i{q}_{y}{\tilde{u}}_{x}&2\pi i{q}_{z}{\tilde{u}}_{x}\\ 2\pi i{q}_{x}{\tilde{u}}_{y}&2\pi i{q}_{y}{\tilde{u}}_{y}&2\pi i{q}_{z}{\tilde{u}}_{y}\\ 2\pi i{q}_{x}{\tilde{u}}_{z}&2\pi i{q}_{y}{\tilde{u}}_{z}&2\pi i{q}_{z}{\tilde{u}}_{z}\end{array}\right]$$
(39)

where \({\tilde{u}}_{i}\,\)(i = x, y, z) are the components of the displacement vector \(\tilde{{{{\bf{u}}}}}\) in Fourier space.

The components of the reduced deformation gradient tensor f can be obtained by performing the backward Fourier transformation of \(\tilde{{{{\bf{f}}}}}\). Then, using Eq. (16), the components of the small strain tensor representing the mechanical equilibrium solution can be found.

Small strain, anisotropic inhomogeneous medium

The iterative mechanical equilibrium problem solution given below is based on the solution of the inhomogeneous elasticity problem by Hu and Chen32. Using the homogeneous problem solution given in Eq. (38) as the basis, an iterative solution of the inhomogeneous problem can be constructed in the following form:

$${\tilde{{{{\bf{u}}}}}}^{{{{\rm{n}}}}}={\tilde{{{{\bf{A}}}}}}^{-1}:\left(2\pi i{{{\bf{q}}}}({\tilde{\sigma }}_{{{{\rm{sf}}}}}^{{{{\rm{n}}}}}-{\tilde{\sigma }}_{\Delta {\mathbb{C}}}^{{{{\rm{n}}}}-1})\right),$$
(40)

where n is the iteration counter, \({\tilde{\sigma }}_{\Delta {{{\bf{C}}}}}^{n-1}\) are the Fourier components of the difference between the homogeneous and inhomogeneous stresses in n − 1 iteration given by

$${\sigma }_{\Delta {\mathbb{C}}}^{{{{\rm{n}}}}-1}=({\mathbb{C}}-\bar{{\mathbb{C}}}):{\varepsilon }^{{{{\rm{n}}}}-1},$$
(41)

and the homogeneous stiffness tensor is defined by

$$\bar{{\mathbb{C}}}=\frac{1}{V}\int\,{\mathbb{C}}({{{\bf{r}}}})\partial {{{\bf{r}}}}$$
(42)

The last term in Eq. (40) vanishes in the case of homogeneous elasticity, leading to a single iteration solution given in Eq. (38).

As explained in ref. 32, zero’s iteration starts with an ordinary homogeneous problem solution. Then, the following iterations refine the solution until the convergence is reached. Here, an appropriate strain tolerance can be used as an iteration exit condition. Next, in a typical phase-field simulation with evolving microstructure, the solution from the previous time increment can be used as a starting condition for the next time step iterative solution, which significantly reduces the number of solver iterations for the following time step.

Finite strain, anisotropic inhomogeneous medium

As discussed in Section “Introduction”, a more consistent approach to solving the mechanical equilibrium problem Eq. (15) is using the multiplicative decomposition of the deformation gradient tensor presented in Eqs. (9) and (11) within the St. Venant–Kirchhoff hyperelastic model. Due to the non-linear nature of Eq. (15) in terms of F, its direct numerical solution is computationally very intensive. To simplify the solution, we will split the mechanical equilibrium Eq. (15) such that all the non-linear terms will be moved to the right-hand side of the equation, similar to the case of the inhomogeneous elasticity solution presented in the previous section. We start by introducing the following formal decomposition of the inverse stress-free deformation gradient tensor.

$${{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{-1}={{{\bf{I}}}}-{\underline{{{{\bf{f}}}}}}_{{{{\rm{sf}}}}},$$
(43)

where \({\underline{{{{\bf{f}}}}}}_{{{{\rm{sf}}}}}\, \ne \, {{{{\bf{f}}}}}_{{{{\rm{sf}}}}}\, \ne \, {{{{\bf{f}}}}}_{{{{\rm{sf}}}}}^{-1}\) is a formal decomposition parameter used to simplify the decomposition of Eq. (15) into linear and non-linear parts.

Considering the fact that Fel = I + fel and introducing formal decomposition of the Jacobian Jsf = 1 + jsf, the mechanical equilibrium condition, Eq. (15), can be rewritten as follows

$$\nabla \cdot \left[\left(1+{j}_{{{{\rm{sf}}}}}\right)\left({{{\bf{I}}}}+{{{{\bf{f}}}}}_{{{{\rm{el}}}}}\right)\left({\mathbb{C}}:{{{{\bf{E}}}}}_{{{{\rm{el}}}}}\right)\left({{{\bf{I}}}}-{{{{\bf{f}}}}}_{{{{\rm{sf}}}}}^{-{{{\rm{T}}}}}\right)\right]=0.$$
(44)

Extracting the \({\mathbb{C}}:{{{{\bf{E}}}}}_{{{{\rm{el}}}}}\) term from equation above allows to introduce the new stress tensor

$${\sigma }_{\Delta {{{\bf{F}}}}}^{{{{\rm{n}}}}-1}={\left[\left(1+{j}_{{{{\rm{sf}}}}}\right)\left({{{\bf{I}}}}+{{{{\bf{f}}}}}_{{{{\rm{el}}}}}\right)\left({\mathbb{C}}:{{{{\bf{E}}}}}_{{{{\rm{el}}}}}\right)\left({{{\bf{I}}}}-{{{{\bf{f}}}}}_{{{{\rm{sf}}}}}^{-{{{\rm{T}}}}}\right)-\left({\mathbb{C}}:{{{{\bf{E}}}}}_{{{{\rm{el}}}}}\right)\right]}^{{{{\rm{n}}}}-1},$$
(45)

Next, using the Eq. (43) the elastic strain can be decomposed as follows

$$\begin{array}{lll}{{{{\bf{E}}}}}_{{{{\rm{el}}}}}&=&\frac{1}{2}\left({{{{\bf{F}}}}}_{{{{\rm{el}}}}}^{{{{\rm{T}}}}}{{{{\bf{F}}}}}_{{{{\rm{el}}}}}-{{{\bf{I}}}}\right)\\ &=&\frac{1}{2}\left({{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{-{{{\rm{T}}}}}{{{{\bf{F}}}}}^{{{{\rm{T}}}}}{{{\bf{F}}}}{{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{-1}-{{{\bf{I}}}}\right)\\ &=&\frac{1}{2}\left(({{{\bf{I}}}}-{\underline{{{{\bf{f}}}}}}_{{{{\rm{sf}}}}}^{{{{\rm{T}}}}}){{{{\bf{F}}}}}^{{{{\rm{T}}}}}{{{\bf{F}}}}({{{\bf{I}}}}-{\underline{{{{\bf{f}}}}}}_{{{{\rm{sf}}}}})-{{{\bf{I}}}}\right)\\ &=&\frac{1}{2}\left({{{{\bf{F}}}}}^{{{{\rm{T}}}}}{{{\bf{F}}}}-{{{\bf{I}}}}\right)+\Delta {{{{\bf{E}}}}}_{{{{\rm{el}}}}}\\ &=&{{{\bf{E}}}}+\Delta {{{{\bf{E}}}}}_{{{{\rm{el}}}}},\end{array}$$
(46)

where ΔEel contains all the cross terms allowing to introduce the corresponding stress tensor

$${\sigma }_{\Delta {{{{\bf{E}}}}}_{{{{\rm{el}}}}}}^{{{{\rm{n}}}}-1}={\mathbb{C}}:({{{{\bf{E}}}}}_{{{{\rm{el}}}}}^{{{{\rm{n}}}}-1}-{{{{\bf{E}}}}}^{{{{\rm{n}}}}-1}).$$
(47)

Splitting the total strain into the linear, ε, and non-linear, ΔE, parts

$${{{\bf{E}}}}=\varepsilon +\Delta {{{\bf{E}}}},$$
(48)

with the corresponding stress tensor

$${\sigma }_{\Delta {{{\bf{E}}}}}^{{{{\rm{n}}}}-1}={\mathbb{C}}:({{{{\bf{E}}}}}^{{{{\rm{n}}}}-1}-{\varepsilon }^{{{{\rm{n}}}}-1}).$$
(49)

the iterative mechanical equilibrium solution takes the form

$${\tilde{{{{\bf{u}}}}}}^{{{{\rm{n}}}}}={\tilde{{{{\bf{A}}}}}}^{-1}\left(2\pi i{{{\bf{q}}}}(-{\tilde{\sigma }}_{\Delta {\mathbb{C}}}^{{{{\rm{n}}}}-1}-{\tilde{\sigma }}_{\Delta {{{\bf{E}}}}}^{{{{\rm{n}}}}-1}-{\tilde{\sigma }}_{\Delta {{{{\bf{E}}}}}_{{{{\rm{el}}}}}}^{{{{\rm{n}}}}-1}-{\tilde{\sigma }}_{\Delta {{{\bf{F}}}}}^{{{{\rm{n}}}}-1})\right).$$
(50)

Rearranging the terms and opening the brackets in the right-hand side of Eq. (50), a significantly simplified expression is obtained

$${\tilde{{{{\bf{u}}}}}}^{{{{\rm{n}}}}}={\tilde{{{{\bf{A}}}}}}^{-1}\left(2\pi i{{{\bf{q}}}}{\tilde{\sigma }}_{{{{\rm{RHS}}}}}^{{{{\rm{n}}}}-1}\right),$$
(51)

where \({\tilde{\sigma }}_{{{{\rm{RHS}}}}}\) are the Fourier components of the right-hand side term

$${\sigma }_{{{{\rm{RHS}}}}}^{{{{\rm{n}}}}-1}=\bar{{\mathbb{C}}}:{\varepsilon }^{{{{\rm{n}}}}-1}-{J}_{{{{\rm{sf}}}}}{{{{\bf{F}}}}}^{{{{\rm{n}}}}-1}{{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{-1}\left({\mathbb{C}}:{{{{\bf{E}}}}}_{{{{\rm{el}}}}}^{{{{\rm{n}}}}-1}\right){{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{-{{{\rm{T}}}}}.$$
(52)

Note, that stiffness parameters, \({\mathbb{C}}\) and the stress-free deformations, Fsf do not change during the solver iterations.

The solution algorithm in Eqs. (51) and (52) is similar to the algorithm presented in ref. 35.

The presented scheme works as follows:

  1. 1.

    start by solving the homogeneous elastic problem in iteration n = 0, assuming zero initial solution on the right-hand side

  2. 2.

    next, feed the solution of the iteration n = 0 into the right-hand side and obtain an updated solution in iteration n = 1

  3. 3.

    continue iterating until one of the following conditions is satisfied:

    $$\max \left\vert {{{{\bf{F}}}}}^{{{{\rm{n}}}}}-{{{{\bf{F}}}}}^{{{{\rm{n}}}}-1}\right\vert \, < \, {\epsilon }_{{{{\bf{F}}}}},$$
    (53)
    $$\max \left\vert {{{{\bf{S}}}}}_{{{{\rm{el}}}}}^{{{{\rm{n}}}}}-{{{{\bf{S}}}}}_{{{{\rm{el}}}}}^{{{{\rm{n}}}}-1}\right\vert \, < \, {\epsilon }_{{{{\bf{S}}}}},$$
    (54)

    where ϵF and ϵS are the desired deformation gradient and stress evaluation accuracy, correspondingly.

In the iterative procedure listed above, the deformation gradient tensor components can be calculated in two different ways. First, they can be calculated in reciprocal space from the Fourier components of the displacement vector, followed by the Fourier transforming back to the real space. Second, in real space, using the finite differences method after the Fourier components of the displacement vector were Fourier transformed back to the real space. In our test simulations, the first alternative provided more accurate results, while using the second method often produced nonphysical “hourglass” modes due to the known issue of the central difference gradient stencil.

Depending on the problem’s complexity, the proposed iterative mechanical equilibrium solution can take from a single to hundreds of iterations. On the other hand, in a running phase-field simulation with a slowly evolving microstructure, only a few iterations are needed to update the solution if the previous time-step solution is used as the starting point for the next time-step iterations.

The stability of the solver can be significantly improved if the updated solution, \({{{{\bf{F}}}}}_{{{{\rm{st}}}}}^{{{{\rm{n}}}}}\), is obtained as follows

$${{{{\bf{F}}}}}_{{{{\rm{st}}}}}^{{{{\rm{n}}}}}={{{{\bf{F}}}}}^{{{{\rm{n}}}}-1}+\lambda \,\left({{{{\bf{F}}}}}^{{{{\rm{n}}}}}-{{{{\bf{F}}}}}^{{{{\rm{n}}}}-1}\right),$$
(55)

where Fn is the actual solution in the n-s iteration and 0 < λ≤1 is the scaling factor. The effect of the scaling parameter, λ, will be demonstrated in the simulation examples.

The iterative solution given in Eqs. (51) and (52) is very general and allows using different strain measures and mechanical models. Note though, that using strains which are non-linear in terms of the Cauchy strain FTF, e.g. logarithmic Hencky strain, requires finding Cauchy strain eigenvalues and eigenvectors in every grid point for evaluating the strain values. Thus, it takes significantly longer computational time than using the Green–Lagrange strain. Nonetheless, the proposed iterative solution can easily handle different strain measures and has been tested with several strain models (see Section “Introduction” for details).

External boundary conditions

Periodic boundary conditions imposed by the Fourier transformation used to solve the mechanical equilibrium problem apply severe limitations on the system geometry and mechanical boundary condition. Here, we present an effective way to overcome some of the limitations.

Analyzing the mechanical equilibrium condition in Eq. (8) and its Fourier space solution, it is clear that the homogeneous part of the deformation gradient can not be obtained directly from the solution because it would violate the periodic boundary conditions imposed on the displacement vectors. Such conditions result in residual stresses if the mechanical equilibrium requires homogeneous volumetric or shear deformation. One way to overcome the limitations imposed by the periodic boundary conditions is to consider the homogeneous part of the deformation in real space as an external condition. This is achieved by splitting the deformation gradient tensor into homogeneous and inhomogeneous parts as follows:

$${{{\bf{F}}}}={{{\bf{I}}}}+\bar{{{{\bf{f}}}}}+\hat{{{{\bf{f}}}}},$$
(56)

where \(\bar{{{{\bf{f}}}}}\) and \(\hat{{{{\bf{f}}}}}\) are the homogeneous and inhomogeneous parts of the displacement gradient tensor, correspondingly.

The Fourier solution delivers the inhomogeneous displacement gradient tensor \(\hat{{{{\bf{f}}}}}\) while the homogeneous displacement gradient tensor component can be found using the following equation

$$\bar{{\mathbb{C}}}:\bar{\varepsilon }=-\bar{{{{\bf{S}}}}},$$
(57)

where \(\bar{\varepsilon }\) and \(\bar{{{{\bf{S}}}}}\) are the average residual strain and average second Piola–Kirchhoff stress, correspondingly. The average stress is obtained by averaging the stress tensor over the entire simulation domain

$$\bar{{{{\bf{S}}}}}=\frac{1}{V}\int\,{{{{\bf{S}}}}}_{{{{\rm{el}}}}}({{{\bf{r}}}})\partial {{{\bf{r}}}}.$$
(58)

Solving the Eq. (57) with regards to \(\bar{\varepsilon }\) yields

$$\bar{\varepsilon }=-{\bar{{\mathbb{C}}}}^{-1}:\bar{{{{\bf{S}}}}},$$
(59)

which allows finding the components of the symmetrized homogeneous displacement gradient tensor

$${\bar{{{{\bf{f}}}}}}^{sym}\approx \bar{\varepsilon }.$$
(60)

From Eq. (60), only symmetric homogeneous deformation can be obtained following the proposed procedure. The consequences of such limitation will be discussed at the end of this section. Eq. (60) is approximate but is sufficient for constructing the iterative scheme to adjust the homogeneous deformation and compensate for the residual stress associated with the homogeneous deformation. Thus, the updated total deformation gradient tensor reads

$${{{{\bf{F}}}}}^{{{{\rm{n}}}}}={{{\bf{I}}}}+{\bar{{{{\bf{f}}}}}}^{{{{\rm{n}}}}}+{\hat{{{{\bf{f}}}}}}^{{{{\rm{n}}}}},$$
(61)

where

$${\bar{{{{\bf{f}}}}}}^{{{{\rm{n}}}}}={\bar{{{{\bf{f}}}}}}^{{{{\rm{n}}}}-1}-{\bar{{\mathbb{C}}}}^{-1}:{\bar{{{{\bf{S}}}}}}^{{{{\rm{n}}}}-1}.$$
(62)

The updated deformation gradient tensor Fn is then fed back into the right-hand side of the next iteration in Eq. (52).

Even if we consider the average stress in Eq. (57), the obtained homogeneous deformation gradient tensor correction leads to an inhomogeneous response of the mechanical system due to inhomogeneous elasticity. Thus, the solution of the inhomogeneous part of the deformation gradient should be updated within the iterative procedure. Only in the case of small strains and homogeneous elasticity the solution of Eq. (60) does not require iterations, and the correct deformation gradient tensor solution can be obtained in a single step along with the inhomogeneous part of the deformation given by the Eq. (39).

The procedure described above has been originally introduced in ref. 36 and corresponds to free (or unconstrained) homogeneous boundary conditions leading to zero residual average stress.

Now, to consider the externally applied mechanical boundary conditions, the procedure described above can be modified as follows:

$${\bar{{{{\bf{f}}}}}}^{{{{\rm{n}}}}}={\bar{{{{\bf{f}}}}}}^{{{{\rm{n}}}}-1}-{\bar{{\mathbb{C}}}}^{-1}:({\bar{{{{\bf{S}}}}}}^{{{{\rm{n}}}}-1}-{\sigma }_{{{{\rm{ext}}}}}),$$
(63)

which considers the externally applied stress σext. Suppose an applied strain should be used instead of the applied stress. In that case, it is sufficient to use the corresponding applied displacement gradient tensor in Eq. (61) instead of the correction term \({\bar{{{{\bf{f}}}}}}^{{{{\rm{n}}}}}\). If a component-wise combination of applied stress and applied strain is used, the system of equations in Eq. (63) should be reduced by taking out the equations corresponding to the applied strain components and using the combined residual and applied displacement gradient tensor in iterative procedure Eq. (61).

In contrast to the applied nodal displacements and forces typically used in the finite element method, the applied stresses and strains are symmetric quantities. Thus, the procedure described above cannot consider simple shear deformation because it requires considering non-symmetric deformation tensor containing rotation. Thus, the proposed algorithm can consider only pure shear in combination with volumetric change.

Considering internal forces

The forces originating within the mechanical system can be considered by using the general form of the mechanical equilibrium condition

$$\nabla \cdot \left({J}_{{{{\rm{sf}}}}}{{{\bf{F}}}}{{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{{{{\rm{-1}}}}}{{{{\bf{S}}}}}_{{{{\rm{el}}}}}{{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{{{{\rm{-T}}}}}\right)={{{\bf{N}}}},$$
(64)

where N is the local force density. Then the mechanical equilibrium solution given in Eq. (51) transforms into

$${\tilde{{{{\bf{u}}}}}}^{{{{\rm{n}}}}}={\tilde{{{{\bf{A}}}}}}^{-1}:\left(2\pi i{{{\bf{q}}}}{\tilde{\sigma }}_{{{{\rm{RHS}}}}}^{{{{\rm{n}}}}-1}+\tilde{{{{\bf{N}}}}}\right),$$
(65)

where \(\tilde{{{{\bf{N}}}}}\) are the Fourier components of the force densities N.

Considering other strain measures

As discussed in the previous sections, the St. Venant–Kirchhoff hyperelastic model is constructed using the Green–Lagrange strain, which has a direct physical interpretation. On the other hand, the St. Venant–Kirchhoff hyperelastic model has stability issues upon compression. Figure 1 illustrates the stress-strain relations for different strain measures considered in this study. One can easily see that upon compression, the Green–Lagrange strain is limited by −50%, allowing system inversion upon further compression, which is nonphysical. In contrast, the correct physical behavior of the deformed system at large deformations is described by Hencky, also called logarithmic, natural, or true strain:

$${{{{\bf{E}}}}}_{{{{\rm{Hencky}}}}}=\frac{1}{2}\ln ({{{{\bf{F}}}}}^{{{{\rm{T}}}}}{{{\bf{F}}}}).$$
(66)
Fig. 1
figure 1

Different strain measures as functions of the deformation gradient.

Note that the stress obtained using the Hencky strain diverges to \(-\inf\) for the deformation gradients approaching zero, preventing infinite compression and inversion. While the Hencky strain is a desirable strain measure to represent large deformations, its use is associated with the computations of the logarithm of the Cauchy strain, which makes it impractical in real simulations. The most frequently used approach to approximate the Hencky strain behavior is using the rate equations where the deformation is accumulated in small steps due to the fact that Hencky strains are linearly additive (see, e.g. refs. 24,25). On the other hand, in ref. 37, the author proposed other sets of strain measures, some of which closely approach the Hencky strain behavior without the need to evaluate a computationally costly \(\ln ({{{{\bf{F}}}}}^{{{{\rm{T}}}}}{{{\bf{F}}}})\) function. Figure 1 shows the behavior of the strain obtained from ref. 37 using the exponent 2:

$${{{{\bf{E}}}}}_{{{{\rm{Bazant}}}}}=\frac{1}{4}\left({{{{\bf{F}}}}}^{{{{\rm{T}}}}}{{{\bf{F}}}}-{({{{{\bf{F}}}}}^{{{{\rm{T}}}}}{{{\bf{F}}}})}^{{{{\rm{-1}}}}}\right).$$
(67)

Such strain formulation has significant advantages compared to the Green–Lagrange and Hencky strains because it avoids the instability associated with the Green–Lagrange strain and avoids evaluating computationally intensive functions needed for the Hencky strain. On top of that, the behavior of the strain given in Eq. (67) is such that its values vary almost linearly between the factor two compression and factor two stretch, e.g., the strain is equal to 93.75% for the deformation gradient value 2.0 upon stretch and −93.75% for the deformation gradient value 0.5 upon compression. Thus, such strain offers an easy interpretation, numerical evaluation, and correct physical behavior, similar to the Hencky strain, simultaneously. In ref. 38, the authors argue that there are no preferred strain measures for the description of the mechanical systems. Thus, using the strain measure given in Eq. (67) is a well-justified approach when using the Green–Lagrange strain leads to simulation instability or the use of Hencky strain becomes prohibitively expensive computationally.

Using the Hencky strain model, Eq. (66), the right hand side Eq. (52) gets the form

$${\sigma }_{{{{\rm{RHS}}}}}^{{{{\rm{n}}}}-1}=\bar{{\mathbb{C}}}:{\varepsilon }^{{{{\rm{n}}}}-1}-{J}_{{{{\rm{sf}}}}}{{{{\bf{F}}}}}^{{{{\rm{n}}}}-1}{{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{{{{\rm{-1}}}}}{\left({{{{\bf{C}}}}}_{{{{\rm{el}}}}}^{{{{\rm{-1}}}}}\right)}^{{{{\rm{n}}}}-1}\left({\mathbb{C}}:{{{{\bf{E}}}}}_{{{{\rm{el}}}}}^{{{{\rm{n}}}}-1}\right){{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{-{{{\rm{T}}}}}.$$
(68)

where \({{{{\bf{C}}}}}_{{{{\rm{el}}}}}={{{{\bf{F}}}}}_{{{{\rm{el}}}}}^{{{{\rm{T}}}}}{{{{\bf{F}}}}}_{{{{\rm{el}}}}}\) is the elastic Cauchy strain tensor.

Using the Bazant strain model, Eq. (67), the Eq. (52) gets the form

$$\begin{array}{l}{\sigma }_{{{{\rm{RHS}}}}}^{{{{\rm{n}}}}-1}=\bar{{\mathbb{C}}}:{\varepsilon }^{{{{\rm{n}}}}-1}-\frac{1}{2}{J}_{{{{\rm{sf}}}}}{{{{\bf{F}}}}}^{{{{\rm{n}}}}-1}{{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{{{{\rm{-1}}}}}\left({\mathbb{C}}:{{{{\bf{E}}}}}_{{{{\rm{el}}}}}^{{{{\rm{n}}}}-1}\right){{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{-{{{\rm{T}}}}}\\ \qquad\qquad-\,\frac{1}{2}{J}_{{{{\rm{sf}}}}}{{{{\bf{F}}}}}^{{{{\rm{n}}}}-1}{{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{{{{\rm{-1}}}}}{\left({{{{\bf{C}}}}}_{{{{\rm{el}}}}}^{{{{\rm{-1}}}}}\right)}^{{{{\rm{n}}}}-1}\left({\mathbb{C}}:{{{{\bf{E}}}}}_{{{{\rm{el}}}}}^{{{{\rm{n}}}}-1}\right){\left({{{{\bf{C}}}}}_{{{{\rm{el}}}}}^{-1}\right)}^{{{{\rm{n}}}}-1}{{{{\bf{F}}}}}_{{{{\rm{sf}}}}}^{-{{{\rm{T}}}}}.\end{array}$$
(69)

Eshelby’s inclusion problem

To analyze the mechanical equilibrium solution obtained using the proposed algorithm, Eshelby’s inclusion problem is solved for different strain models considered in this study. The analytical solution of Eshelby’s inclusion problem for a spherical inclusion is taken from ref. 36. The 3D simulation domain is shown in Fig. 2, where an elastic inclusion with 1%, 3%, 10%, and 20% eigenstrain is embedded into an elastic matrix. Young’s modulus of 208 GPa with the Poisson ratio of 0.3 is used in the test simulations, which corresponds to the elasticity moduli values C11 = 280 GPa, C12 = 120 GPa, and C44 = 80 GPa. The system is discretized using 129 × 129 × 129 grid points with an interface width of 5 grid points. Boundary conditions are periodic and imposed by the spectral elasticity solver. The normal, σr, and tangential, σt, stress components are displayed in the radial direction from the center of the particle. Figure 3a, b shows that the numerical and analytical solutions are in excellent agreement with each other outside the diffuse interface region. Inside the diffuse interface region, the numerical solution varies smoothly for both normal and tangential stress components, leading to the noticeable deviation of the tangential stress component from the analytical solution. Such behavior is typical for diffuse interface models where the material properties vary smoothly across the interface region while the analytical solution is obtained for the sharp interface case. In Fig. 3, small, Green–Lagrange, Hencky, and Bazant strains are displayed for 1% and 3% inclusion eigenstrain, whereas 10% and 20% eigenstrain cases are presented only for Green–Lagrange, Hencky, and Bazant strain models. All simulations using the finite strain models result in an increased number of iterations, with around 4 iterations in the case of 1% inclusion eigenstrain and around 10 iterations in the case of 10% and 20% eigenstrain. The small strain solution takes only one iteration.

Fig. 2: Phase-field representation of Eshelby’s inclusion.
figure 2

White line represents the line of inspection.

Fig. 3: The normal σr and tangential σt stress components of Eshelby test.
figure 3

a, b are the test results compared to the analytical solution for small strain model at 1% and 3% strain, correspondingly. c, d are the test results for small, Green–Lagrange, Bazant and Hencky strain models at 1% and 3% strains, correspondingly. e, f are the test results for Green–Lagrange, Bazant and Hencky strain models at 10% and 20% strains, correspondingly.

Deformation of polycrystal

In order to further highlight the capabilities of the proposed algorithm, the polycrystalline sample with 200 randomly orientated grains shown in Fig. 4 was analyzed under different mechanical boundary conditions. A set of elastic constants C11 = 240 GPa, C12 = 160 GPa, and C44 = 80 GPa with a Zener ratio of 0.5 is assigned to the individual grains considering their orientation. The tensile strain is applied along the vertical direction. The simulated microstructure distortion is displayed in Fig. 5a, and the resulting spatial von Mises stress distribution is displayed in Fig. 5b. The obtained stress distribution is sensitive to the orientation of the grains due to the elasticity anisotropy, with the grains oriented with their soft direction along the vertical direction showing significantly lower stress. Similar results are also found under compression, as shown in Fig. 5c with the corresponding von Mises stress distribution in Fig. 5d. The system compression is clearly visible in the figure, and the stress behavior under compression is comparable to the tensile case. Figure 5e illustrates the microstructure subjected to shear strain, and Fig. 5f shows the corresponding von Mises stress distribution. The Green–Lagrange, Hencky, and Bazant strain models are employed for performing these tests, and the simulation statistics are shown in Fig. 6. Analyzing the solver convergence using different strain models, applied deformations, and the effect of scaling parameter λ (see Eq. (55)) one can conclude that Bazant strain model has the widest convergence range of all tested strain models and that smaller λ parameter greatly increases the solver convergence range, though at the expense of the increased number of iterations, up to the point where the models lose their physical stability due to, e.g., Green–Lagrange strain model nonphysical inversion upon compression and lack of polyconvexity of the elastic energy when considering Hencky strain model.

Fig. 4
figure 4

Initial polycrystal microstructure containing 200 randomly oriented grains.

Fig. 5: Polycrystal deformation results using Bazant strain model.
figure 5

The polycrystal subjected to 100% tensile strain (a), 50% compressive strain (c) and 100% shear strain (e). b, d, f are the von Mises stress distributions obtained from the corresponding Cauchy stresses.

Fig. 6: Polycrystal deformation simulation statistics for different values of scaling factor λ.
figure 6

The solver convergence results for uniaxial deformation using the Green–Lagrange strain model (a), Bazant strain model (c) and Hencky strain model (e). The solver convergence results for shear deformation using the Green–Lagrange strain model (b), Bazant strain model (d) and Hencky strain models (f).

Deformation of metallic foam

Further, the proposed algorithm is tested on the metallic foam simulations with the extreme difference in the elasticity moduli with C11 = 280 GPa, C12 = 120 GPa and C44 = 80 GPa for the metal membranes and C11 = 280 KPa, C12 = 120 KPa and C44 = 80 KPa for the pores, which results in the bulk modulus of pores of the same order of magnitude as the bulk modulus of ambient air. Figure 7 shows an initial microstructure of the metallic foam obtained using the model presented in ref. 39. Then, the microstructure shown in Fig. 7 has been subjected to tensile, compressive, and shear strains similar to the polycrystal case above. The resulting deformation is shown in Fig. 8a, c and e, respectively. Figure 8b, d, f shows the corresponding von Mises stress distributions in the metallic membranes obtained from the corresponding Cauchy stress. Since the total deformation is elastic, the obtained stresses are high, with a magnitude in the range of tens of GPa in the matrix, whereas they are negligible in the pores. This indicates the capability of the algorithm to solve mechanical problems with significantly varying elasticity moduli, which was also demonstrated in the original small strain algorithm presented in ref. 32. The Green–Lagrange, Hencky, and Bazant strain models are employed for performing these tests, and the simulation statistics are shown in Fig. 9. Analyzing the solver convergence using different strain modes, different applied deformations and the effect of scaling parameter λ (see Eq. (55)) one can conclude that also in these test simulations, Bazant strain model has the widest convergence range of all strain models tested in this study and that smaller λ parameter greatly increases the solver convergence range at the expense of the increased number of iterations. The convergence parameters for these tests have been relaxed compared to the polycrystal case shown above. Here, the stress convergence threshold has been set to 10 MPa and deformation gradients convergence has not been considered because it is very poor in the pores and is not representative of the quality of the solution. Note, that the solver does not break if higher accuracy is requested but enters an oscillatory mode where solution accuracy oscillates around 1~6 MPa stress deviation, which is around 0.1~1.0% of the maximum stress value in the system. In our test simulations, the solution in the bulk of the metal membranes converged relatively quickly, and it took significantly longer to converge in the diffuse interface regions between the pores and the metallic matrix.

Fig. 7
figure 7

Initial metallic foam microstructure.

Fig. 8: Metallic foam deformation results using Bazant strain model.
figure 8

The foam microstructure subjected to 50% tensile strain (a), 15% compressive strain (c) and 25% shear strain (e). b, d, f are the von Mises stress distributions obtained from the corresponding Cauchy stresses.

Fig. 9: Metallic foam deformation simulation statistics for different values of scaling factor λ.
figure 9

The solver convergence results for uniaxial deformation using the Green–Lagrange strain model (a), Bazant strain model (c) and Hencky strain model (e). The solver convergence results for shear deformation using the Green–Lagrange strain model (b), Bazant strain model (d) and Hencky strain model (f).

Effect of force density

The effect of the applied force density is illustrated in Fig. 10, where the force density has been applied over the circular area and its perimeter in the center of the simulation domain. For illustration purposes, the force densities used in the simulation are relatively high, which results in visibly high elastic deformation with the maximum shear strain values around 100%. Note that only using the Bazant strain model, the simulations of force application shown in Fig. 10 converged while using the Green–Lagrange or Hencky strain model, the solver converged for lower force density limited by the solver deformation convergence range according to Fig. 6. The solver took around 100 iterations to converge to 10−6 deformation accuracy in all simulations shown in Fig. 10 using the scaling factor λ = 0.125.

Fig. 10: Effect of the force density application.
figure 10

a Initial undeformed configuration, b the effect of force density application over the circular area in the middle of the simulation domain and c, d over the circular area perimeter. The force vectors are not to scale.

Martensitic transformation in steel

To provide a more thorough illustration of the potential of the proposed algorithm, a 3D phase-field simulation of martensitic transformation in carbon steel has been performed to model the large transformation strains of the order of 20% associated with the transformation from the face-centered cubic (FCC) lattice of austenite to the body-centered tetragonal (BCT) lattice of martensite. In this simulation, a full set of 24 Kurdjumov–Sachs (K-S) variants of martensite40 with real transformation strains and a full-featured crystal plasticity model coupled to the proposed finite strain algorithm has been used. The crystal plasticity model used in these simulations is described in ref. 16. The material’s properties used in this simulation are similar to ref. 12. The resulting martensite microstructure containing 24 K-S variants is shown in Fig. 11a. Figure 11b shows the local lattice rotations obtained from the local deformation gradients, which were first decomposed into pure stretch and pure rotation tensors, and then axis-angles were extracted from the rotation tensors. Only rotation angles are shown in the figure. Figure 11b emphasizes the high degree of local rotations in line with the K-S variants transformation requirements41. It is important to emphasize that the elastic strain in this study has been evaluated following the multiplicative decomposition given in Eqs. (9)–(12) allowing to consider transformation-induced rotations. In contrast, considering the additive decomposition of the finite strain tensor, similar to ref. 33, results in the loss of transformation-induced rotations and oversimplified simulated martensite microstructures, which have been obtained in ref. 12.

Fig. 11: Martensite simulation results.
figure 11

a Simulated martensite microstructure, b orientation map showing local rotation angles.

To examine the performance of the proposed mechanical equilibrium solver during the phase-field simulation of martensite, three simulation box sizes (323, 643, and 1283 grid cells) have been considered. Figure 12 shows the analysis of the solver performance for different simulation domain sizes over the entire simulation from 100% austenite to fully martensitic microstructure. The solver demonstrates a consistently low number of iterations per time step with a weak dependence on the simulation domain size where the number of iterations increases from 3 to 4 for the box size of 323 grid cells to 5~6 for the box size of 1283 grid cells.

Fig. 12: Mechanical equilibrium solver performance during the martensite microstructure simulation.
figure 12

a The number of iterations at every time step and b martensite volume fraction evolution for three different box sizes: 32, 64 and 128 grid cells in three dimensions.

In all simulations shown above using the Green–Lagrange or Bazant finite strain models, the performance of the solver should be similar to the performance of the solver in ref. 33. Using the Hencky strain formulation increases the workload significantly, leading to factor 4~5 performance degradation in each iteration due to solving the eigenvalue problem in every grid cell to evaluate the logarithm of the Cauchy strain. Therefore, the Bazant strain model can be used as an alternative to Hencky strain if solver performance and convergence range become the limiting factor in the simulations.

Discussion

In this paper, we propose an iterative mechanical equilibrium solution algorithm suitable for treating finite deformations by rigorously considering the finite strains and transformation-induced rotations, which is essential for the phase-field modeling of transformations involving large transformation-induced or externally applied deformations. The proposed algorithm is based on the Fourier space solution and is greatly inspired by the iterative procedure proposed in ref. 32. Our algorithm is built around the St. Venant–Kirchhoff hyperelastic model, but it also allows the use of different strain measures that better approximate the stress-strain relation at finite deformations. This allows us to overcome the well-known St. Venant–Kirchhoff model instability and better describe the natural stress-strain relation of the deformed system typically obtained using the Hencky strain. To further improve the performance and stability of the algorithm at large deformations, a scaling parameter has been introduced to fine-tune its convergence behavior. Also, an alternative strain model formulation according to Bazant37 has been introduced to further improve the performance of the solver and the physical behavior of the hyperelasticity model. The algorithm has been tested on various simulation scenarios ranging from simple Eshelby’s inclusion benchmark problem to the microstructure formation simulations in martensitic steel and Ni-based superalloys16. The proposed handling of the mechanical boundary conditions allows us to partially overcome the limitations of the Fourier space solution, which imposes periodicity on the displacement field. The proposed algorithm also allows considering local force densities, which makes it possible to directly model the effect of gravitational, electro-magnetic, and other internal and external forces. The presented example simulations show that strains in the range from −50% to +100% can be treated by the algorithm. Note that in the case of extremely large deformations, the effect of grid distortion and, thus the accuracy of the underlying microstructure description using the phase-field variables becomes an issue. Therefore, despite a wide range of convergence of the proposed algorithm in terms of the attainable deformation, we do not recommend considering the deformations significantly exceeding 20% in the phase-field simulations. The main reason for this is the increased grid distortion, which inevitably affects the accuracy of the mechanical equilibrium solution itself and the solution of mass and heat transport equations, as well as the phase-field evolution, which is bound to the reference (undistorted) regular grid. Therefore, in the case of extremely large deformations, beyond 20~30%, a different approach which allows retaining the undistorted regular grid for the phase fields and other field variables, e.g., chemical composition, should be used as it is described in ref. 25.

Considering the wide convergence range and the overall performance of the mechanical equilibrium solution algorithm proposed in this paper, it opens a broad range of new applications for the phase-field modeling, which were not accessible before due to the limitations of the linear elasticity solvers typically employed in the available phase-field models.

Methods

Multi-phase-field model

To define local mechanical properties and to study the microstructure evolution in general, we employ the well-known multi-phase-field model2,36,42. Within this model, the phase or grain is represented by the phase-field variable ϕα, where α is the running index of a given entity. The presence of a given entity (phase or grain) in a material point is indicated by ϕα (0, 1]. The bulk region of a given entity is described by the phase-field value 1, whereas 0 indicates that the entity with the index α is not present in a material point. The interfaces between different entities are described by smoothly varying phase-field values in the range (0, 1). To ensure mass conservation, the sum constraint is applied on the phase-field values in every material point X:

$$\mathop{\sum }\limits_{\alpha =1}^{N}{\phi }_{\alpha }({{{\bf{X}}}})=1.$$
(70)

For simplicity only interfacial ψint and elastic strain energy densities ψel are considered in the following:

$$\Psi ={\int}_{\Omega }{\psi }^{{{{\rm{int}}}}}+{\psi }^{{{{\rm{el}}}}},$$
(71)

where Ψ is the total free energy of the system Ω.

The interfacial free energy density is given by

$${\psi }^{{{{\rm{int}}}}}=\mathop{\sum }\limits_{\alpha =1}^{N}\mathop{\sum }\limits_{\beta \ne \alpha }^{N}\frac{4{\sigma }_{\alpha \beta }}{\eta }\left[-\frac{{\eta }^{2}}{{\pi }^{2}}\nabla {\phi }_{\alpha }\cdot \nabla {\phi }_{\beta }+{\phi }_{\alpha }{\phi }_{\beta }\right],$$
(72)

where ηαβ is the numerical diffuse interface width and σαβ is the interface energy between entities α and β.

The elastic strain energy density ψel is given by the Eq. (1) where the material properties \(\hat{C}\) and F are described using the appropriate homogenization procedure or material model and will be discussed in the next section.

The evolution of the phase-field with index α, \({\dot{\phi }}_{\alpha }\), is calculated by the pairwise interaction of phase-field ϕα with all the other phase-fields ϕβ:

$${\dot{\phi }}_{\alpha }=-\frac{1}{N}\mathop{\sum }\limits_{\beta \ne \alpha }^{N}{\mu }_{\alpha \beta }\left[\frac{\delta \Psi }{\delta {\phi }_{\alpha }}-\frac{\delta \Psi }{\delta {\phi }_{\beta }}\right],$$
(73)

where N is the local number of phase fields and μαβ is the effective mobility of the interface between grains (or phases) α and β. The resulting phase-field evolution equation reads:

$${\dot{\phi }}_{\alpha }=\frac{1}{N}\mathop{\sum }\limits_{\beta \ne \alpha }^{N}{\mu }_{{\alpha }_{\beta }}\left[{\sigma }_{\alpha \beta }\left({I}_{\beta }-{I}_{\alpha }\right)+\mathop{\sum }\limits_{\gamma \ne \alpha \ne \beta }^{N}\left({\sigma }_{\beta \gamma }-{\sigma }_{\alpha \gamma }\right){I}_{\gamma }+\frac{2\pi }{\eta }\sqrt{{\phi }_{\alpha }{\phi }_{\beta }}\Delta {G}_{\alpha \beta }\right],$$
(74)

where \({I}_{\zeta }={\nabla }^{2}{\phi }_{\zeta }+\frac{{\pi }^{2}}{{\eta }^{2}}{\phi }_{\zeta },\,(\zeta =\alpha ,\beta \,{{{\rm{and}}}}\,\gamma )\) and ΔGαβ is the transformation driving force between grains or phases α and β. Iζ is the capillarity term associated with the individual phase fields ϕζ and is calculated using the finite difference method on a uniform regular grid. The full description of the multi-phase-field model is given in ref. 2 and the performance of its numerical implementation is presented in ref. 43.

Elasticity models

Within the phase-field model the free energy density of a heterogeneous system is typically defined as

$$\psi =\mathop{\sum}\limits_{\alpha }{\phi }_{\alpha }{\psi }_{\alpha },$$
(75)

where ψα is the free energy density of the phase or grain α. Consequently, the elastic strain energy density of the system reads

$${\psi }^{{{{\rm{el}}}}}=\mathop{\sum}\limits_{\alpha }{\phi }_{\alpha }{\psi }_{\alpha }^{{{{\rm{el}}}}}=\mathop{\sum}\limits_{\alpha }{\phi }_{\alpha }\frac{1}{2}{{{{\bf{E}}}}}_{{{{\rm{el}}}}}^{\alpha }:\,{{\mathbb{C}}}_{\alpha }:\,{{{{\bf{E}}}}}_{{{{\rm{el}}}}}^{\alpha }$$
(76)

The direct use of Eq. (76) in the mechanical equilibrium Eq. (8) results in every interface point of the system being subject to mechanical boundary conditions, which significantly complicates the mechanical equilibrium solution. Instead, a homogenized elastic strain energy density is typically used in the phase-field simulations

$${\psi }^{{{{\rm{el}}}}}=\frac{1}{2}{{{{\bf{E}}}}}_{{{{\rm{el}}}}}:\,{\mathbb{C}}:\,{{{{\bf{E}}}}}_{{{{\rm{el}}}}}$$
(77)

In order to define the elastic properties of an elastically inhomogeneous system in the phase-field simulations, a corresponding homogenization model or material model has to be used. A comprehensive overview of the existing homogenization and elasticity models used in the phase-field simulations is given in ref. 44. In addition45, introduces the rank-1 homogenization model for small strains, which has been later extended to the case of finite strains in ref. 46.

The most widely used in the phase-field community is the well-known Khachaturyan’s elasticity model4. This model is not based on the homogenization theory but postulates a material’s model where the linear interpolation functions define the stiffness tensor and the transformation stretches, respectively:

$${\mathbb{C}}=\mathop{\sum}\limits_{\alpha }{\phi }_{\alpha }{{\mathbb{C}}}_{\alpha },$$
(78)
$${{{{\bf{F}}}}}_{{{{\rm{tr}}}}}=\mathop{\sum}\limits_{\alpha }{\phi }_{\alpha }{{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{\alpha },$$
(79)

where \({{\mathbb{C}}}_{\alpha }\) and \({{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{\alpha }\) are the stiffness and transformation stretch tensors of the phase (or grain) α, correspondingly. Note, that both, \({{\mathbb{C}}}_{\alpha }\) and \({{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{\alpha }\), are subject to the local orientation of the crystal lattice with respect to the simulation frame of reference. The stiffness model in Eq. (78) is similar to the Voigt/Taylor elasticity homogenization but differs in the definition of strains.

An alternative elasticity model has been proposed in ref. 36 and is inspired by the Reuss/Sachs homogenization model when defining the stiffness tensor of the inhomogenouse system. In this elasticity model, the stiffness and the transformation stretch read:

$${\mathbb{C}}={\left[\mathop{\sum}\limits_{\alpha }{\phi }_{\alpha }{{\mathbb{C}}}_{\alpha }^{-1}\right]}^{-1},$$
(80)
$${{{{\bf{F}}}}}_{{{{\rm{tr}}}}}=\mathop{\sum}\limits_{\alpha }{\phi }_{\alpha }{{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{\alpha },$$
(81)

Comparing the Eqs. (78) and (80) it is easy to see that the later favors the lower stiffness values in the interface region. In ref. 47 it is shown that the use of either model results in comparable mechanical response so the use of either model is a matter of preference and computational efficiency.

The more advanced rank-1 homogenization model is the preferred model for systems developing coherent and semi-coherent interfaces accompanied by the high elasticity tensor anisotropy. Due to the relative complexity of the rank-1 model, especially in the case of the finite strains, it is not repeated here and the reader is referred to the original literature45,46.

Note, that if different grain orientations and/or transformation-induced deformation contains rotations all orientation sensitive vector and tensor quantities have to be properly rotated according to

$$\hat{{{{\bf{v}}}}}={{{\bf{R}}}}\,{{{\bf{v}}}},$$
(82)
$$\hat{{{{\bf{T}}}}}={{{\bf{R}}}}\,{{{\bf{T}}}}\,{{{{\bf{R}}}}}^{{{{\rm{T}}}}},$$
(83)
$$\hat{{\mathbb{T}}}={{{\bf{R}}}}{{{\bf{R}}}}\,{\mathbb{T}}\,{{{{\bf{R}}}}}^{{{{\rm{T}}}}}{{{{\bf{R}}}}}^{{{{\rm{T}}}}},$$
(84)

where \(\hat{{{{\bf{v}}}}}\) and v are the rotated and the original vector quantities, \(\hat{{{{\bf{T}}}}}\) and T are the rotated and the original second rank tensors, \(\hat{{\mathbb{T}}}\) and \({\mathbb{T}}\) are the rotated and the original fourth rank tensors, respectively. The rotation tensor \({{{\bf{R}}}}={{{{\bf{R}}}}}_{{{{\rm{tr}}}}}{{{{\bf{R}}}}}_{{{{\rm{ini}}}}}\) includes initial grain orientation Rini which does not change in the course of simulations and transformation-induced rotation \({{{{\bf{R}}}}}_{{{{\rm{tr}}}}}\) which varies during the phase transformation. \({{{{\bf{R}}}}}_{{{{\rm{tr}}}}}\) stems from the polar decomposition of the transformation-induced deformation:

$${{{{\bf{F}}}}}_{{{{\rm{tr}}}}}={{{{\bf{R}}}}}_{{{{\rm{tr}}}}}{{{{\bf{U}}}}}_{{{{\rm{tr}}}}},$$
(85)

where \({{{{\bf{U}}}}}_{{{{\rm{tr}}}}}\) is a rotation-free transformation stretch tensor.

The use of the Khachaturyan’s elasticity model in the case of finite strains results in the following mechanical driving force in the phase-field equation:

$$\begin{array}{l}\Delta {G}_{\alpha \beta }^{el}=\frac{1}{2}{{{{\bf{E}}}}}_{{{{\rm{el}}}}}:\left({{\mathbb{C}}}_{\beta }-{{\mathbb{C}}}_{\alpha }\right):{{{{\bf{E}}}}}_{{{{\rm{el}}}}}\\ \qquad\qquad-\,{J}_{{{{\rm{tr}}}}}{{{{\bf{E}}}}}_{{{{\rm{el}}}}}:{\mathbb{C}}:{\left[{{{{\bf{F}}}}}_{{{{\rm{el}}}}}^{{{{\rm{T}}}}}{{{\bf{F}}}}{{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{-1}\left({{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{\beta }-{{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{\alpha }\right){{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{-1}{{{{\bf{F}}}}}_{{{{\rm{pl}}}}}^{-1}\right]}^{{{{\rm{sym}}}}},\end{array}$$
(86)

where \({\square }^{{{{\rm{sym}}}}}=\frac{1}{2}(\square +{\square }^{{{{\rm{T}}}}})\) and \({J}_{{{{\rm{tr}}}}}=\det ({{{{\bf{F}}}}}_{{{{\rm{tr}}}}})\) is the Jacobian obtained from the transformation induced deformation gradient tensor.

The alternative elasticity model formulation from ref. 36 results in

$$\begin{array}{l}\Delta {G}_{\alpha \beta }^{el}=\frac{1}{2}{{{{\bf{E}}}}}_{{{{\rm{el}}}}}:\left[{\mathbb{C}}\left({{\mathbb{C}}}_{\alpha }^{{{{\rm{-1}}}}}-{{\mathbb{C}}}_{\beta }^{{{{\rm{-1}}}}}\right){\mathbb{C}}\right]:{{{{\bf{E}}}}}_{{{{\rm{el}}}}}\\ \qquad\qquad-\,{J}_{{{{\rm{tr}}}}}{{{{\bf{E}}}}}_{{{{\rm{el}}}}}:{\mathbb{C}}:{\left[{{{{\bf{F}}}}}_{{{{\rm{el}}}}}^{{{{\rm{T}}}}}{{{\bf{F}}}}{{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{{{{\rm{-1}}}}}\left({{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{\beta }-{{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{\alpha }\right){{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{{{{\rm{-1}}}}}{{{{\bf{F}}}}}_{{{{\rm{pl}}}}}^{{{{\rm{-1}}}}}\right]}^{{{{\rm{sym}}}}}.\end{array}$$
(87)

Considering the Hencky strain and Khachaturyan’s elasticity model the driving force has the form

$$\begin{array}{l}\Delta {G}_{\alpha \beta }^{el}=\frac{1}{2}{{{{\bf{E}}}}}_{{{{\rm{el}}}}}:\left({{\mathbb{C}}}_{\beta }-{{\mathbb{C}}}_{\alpha }\right):{{{{\bf{E}}}}}_{{{{\rm{el}}}}}\\ \qquad\qquad-\,{J}_{{{{\rm{tr}}}}}{{{{\bf{E}}}}}_{{{{\rm{el}}}}}:{\mathbb{C}}:{{{{\bf{C}}}}}_{{{{\rm{el}}}}}^{{{{\rm{-1}}}}}{\left[{{{{\bf{F}}}}}_{{{{\rm{el}}}}}^{{{{\rm{T}}}}}{{{\bf{F}}}}{{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{{{{\rm{-1}}}}}\left({{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{\beta }-{{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{\alpha }\right){{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{{{{\rm{-1}}}}}{{{{\bf{F}}}}}_{{{{\rm{pl}}}}}^{{{{\rm{-1}}}}}\right]}^{{{{\rm{sym}}}}}.\end{array}$$
(88)

Considering Bazant approximation in Eq. (67) and Khachaturyan’s elasticity model the driving force reads

$$\begin{array}{l}\Delta {G}_{\alpha \beta }^{el}=\frac{1}{2}{{{{\bf{E}}}}}_{{{{\rm{el}}}}}:\left({{\mathbb{C}}}_{\beta }-{{\mathbb{C}}}_{\alpha }\right):{{{{\bf{E}}}}}_{{{{\rm{el}}}}}\\ \qquad\qquad-\,\frac{1}{2}{J}_{{{{\rm{tr}}}}}{{{{\bf{E}}}}}_{{{{\rm{el}}}}}:{\mathbb{C}}:{\left[{{{{\bf{F}}}}}_{{{{\rm{el}}}}}^{{{{\rm{T}}}}}{{{\bf{F}}}}{{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{{{{\rm{-1}}}}}\left({{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{\beta }-{{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{\alpha }\right){{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{{{{\rm{-1}}}}}{{{{\bf{F}}}}}_{{{{\rm{pl}}}}}^{{{{\rm{-1}}}}}\right]}^{{{{\rm{sym}}}}}\end{array}$$
(89)
$$-\frac{1}{2}{J}_{{{{\rm{tr}}}}}{{{{\bf{E}}}}}_{{{{\rm{el}}}}}:{\mathbb{C}}:{{{{\bf{C}}}}}_{{{{\rm{el}}}}}^{{{{\rm{-1}}}}}{\left[{{{{\bf{F}}}}}_{{{{\rm{el}}}}}^{{{{\rm{T}}}}}{{{\bf{F}}}}{{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{{{{\rm{-1}}}}}\left({{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{\beta }-{{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{\alpha }\right){{{{\bf{F}}}}}_{{{{\rm{tr}}}}}^{{{{\rm{-1}}}}}{{{{\bf{F}}}}}_{{{{\rm{pl}}}}}^{{{{\rm{-1}}}}}\right]}^{{{{\rm{sym}}}}}{{{{\bf{C}}}}}_{{{{\rm{el}}}}}^{{{{\rm{-1}}}}}.$$
(90)

The multi-phase-field model and the elasticity models presented above are implemented in the OpenPhase software library48, which is used to perform all simulations presented in this paper. In all example simulations presented above Khachaturyan’s elasticity model is used. The convergence parameters in all simulations are set to ϵF = 10−6 and ϵS = 105 Pa unless specified otherwise.