The topology optimization of elastic structures provides the methods of the optimal layout: of two or several materials (1), of the bars of pin-jointed frameworks (2), of the elastic moduli within a given feasible domain (3), see Bendsøe (1995), Bendsøe and Sigmund (2003). In the case of a single load, a standard merit function is the compliance of the whole structure. The theory of this problem is the subject of the extensive studies, see Lipton (1994), Allaire (2002), Cherkaev (2000) and Haslinger et al. (2010) and the references therein. In the multiple load case the optimum design should be considered within the Pareto framework of the vector optimization. The Pareto solution can be found on the basis of the solution to the optimum design problem with the merit function being the weighted sum of the merit functions for subsequent load cases, cf. Hillermeier (2001) and Jahn (2004). To construct the Pareto solution one should solve the family of minimization problems over all possible weighting factors η i , the sum of which being 1. Therefore, the present paper is aimed at minimizing the weighted sum of the compliances corresponding to the given loads applied non-simultaneously, for fixed values of the weighting factors η i .

Although the topology optimization comprises other problems than compliance minimization, like optimal choice of the first eigenfrequency, the compliance minimization is the first on the list as the only problem being self-adjoint: the adjoint problem coincides with the initial one.

In problems named above by (1) the amounts of the materials are given thus providing the isoperimetric conditions expressed by the integrals of the mass densities. The problem is to place the materials to minimize the merit function (e.g. the compliance); the problem is rationally posed due to the isoperimetric conditions imposed, which prevent the solutions from being trivial.

In problems (2), usually the total mass (or weight) of the structure is bounded. The mass is determined by the areas of the cross sections and member lengths. Alternatively, the stresses in bars can be bounded. Such conditions reduce the problems (2) to trusses, since the bent bars are eliminated as stressed non-uniformly, and hence stressed non-optimally.

Yet it is much less obvious how to augment the problems (3) by isoperimetric conditions. The design variables are elastic moduli \(C_{ijkl}\). Consequently, the isoperimetric conditions should be expressed directly by these variables. Since there is no link between the moduli and the mass density, the conventional isoperimetric conditions concerning the mass density distribution cannot be applied. Probably, just this unclear question was the reason why the first papers on the problem of optimal choice of elastic characteristics have appeared only in 1990’s, although the underlying theory of the compliance minimization has been elaborated in 1980’s, while the theorems on invariants of the 4th order tensors were available in 1970’s and found the mature state in 1980’s, see Betten (1986, 1987a, b). The first paper on the optimal choice of the elastic moduli in which the isoperimetric condition has been expressed in terms of invariants of the Hooke tensor is due to Ringertz (1993), yet only the paper by Bendsøe et al. (1994) put forward the crucial formulae and cast the problem in the clear mathematical setting. The extension of the previous paper to the multi-load case is due to Bendsøe et al. (1995). This setting is called there Free Material Design (FMD) and this term will be used in the present paper. The merit function is chosen as a weighted sum of the compliances. The isoperimetric condition is expressed by the integral over the fixed design domain of a scalar function \(\phi (\boldsymbol {C})\). Two cases have been discussed:

  • a)  \(\phi (\boldsymbol {C}) =\text {tr}\boldsymbol {C}\),

  • b)  \(\phi (\boldsymbol {C})= ||\boldsymbol {C}||^{2}\).

Here \(\text {tr}\boldsymbol {C}\) is the trace of C while \(||\cdot ||\) is the Frobenius norm of C. The scalar function should involve the invariants of C. The functions mentioned above are admissible invariants, yet other choices are also worth considering. One can make use of the theory of invariants of 4th order tensors outlined in Betten (1986, 1987a, b), Zheng (1994), Jemioło and Telega (1997). The invariance property of the scalar \(\phi (\boldsymbol {C})\) is not sufficient to make the FMD problem well posed. Recently Barbarosie and Lopes (2008) and Haslinger et al. (2010) have formulated the sufficient conditions for ϕ for making the FMD problem solvable. The scalar functions ϕ chosen in Bendsøe et al. (1994, 1995) satisfy these conditions.

One can note that the main effort of the hitherto existing works on FMD has been put on the numerical procedures to solve the optimization problem. These algorithms are usually based upon the displacement formulation which leads to a saddle point problem, see e.g. (7) in Zowe et. al (1997) and (2.8) in Haslinger et al. (2010). The minimization operation over admissible Hooke tensors is preceded by the maximization operation over the kinematically admissible displacements. Further modification of this formulation is possible; the design variables can be eliminated to arrive at the dual formulation, see (13) in Kočvara et al. (2008) and Werner (2000). The difficulty of this dual formulation lies in the nonlinearity of the bounding conditions. Moreover, to find the optimal moduli \(C_{ijkl}\) one should solve an auxiliary problem, see p. 87 in Kočvara et al. (2008). The contemporary codes to solve the non-linear semi-definite programming problems (SDP) make it possible to find effectively the solution to the FMD problem in its dual formulation. Yet this procedure is complex, needs the most advanced numerical tools and is by far not direct, see Section 2.4 ibidem. Within this framework one can take into account the state constraints concerning the displacements and stresses, see Kočvara and Stingl (2007, 2012) and Section 2.6 in Haslinger et al. (2010).

The papers referred to above do not enter into the algebraic structure of the Hooke tensors. The specific properties of symmetry of these tensors determine their spectral representation. The eigenvalues of the Hooke tensor of the known materials are positive; they are called Kelvin moduli and are denoted by \(\lambda _{1},\ \lambda _{2},\ \ldots ,\break \lambda _{m}\); \(m=d(d+1)/2\), d being the dimension of the problem setting. Therefore, in the planar problem the number of the Kelvin moduli is 3, while in the 3D setting it is equal 6. The eigentensors are diads of the form \(\boldsymbol {\omega } \otimes \boldsymbol {\omega }\), where ω is a symmetric tensor of order 2. The theorems on this spectral representation are provided in the articles by Rychlewski (1984), Blinowski et al. (1996), and Sutcliffe (1992), Norris (2005, 2006), Moakher (2008), Mehrabadi and Cowin (1990), Jemioło and Telega (1997). This representation makes it possible to find a new interpretation of the results by Bendsøe et al. (1994), cf. Turteltaub and Washabaugh (1999). The spectral representation has also been used in the paper by Banichuk (1996) on the optimal local orientation of a given anisotropic material. In the FMD approach the condition λ K > 0 is relaxed to λ K ≥ 0 to achieve the best material properties.

The history of the development of the two-material layout theory shows that the most convenient approach to the compliance minimization is to express the compliance as the minimal value of the complementary energy over the statically admissible stress fields, see Lurie and Cherkaev (1986), cf. (2.4) in Allaire and Kohn (1993). The layout problem is thus reduced to a static problem of a body of nonlinear elastic characteristics given by a new, effective density of complementary energy, see (2.7) in Allaire and Kohn (1993). This final stress-based formulation of the minimum compliance problem does not involve the design variables. The optimal values of the design variables are expressed by the stress fields which make the effective complementary energy minimal.

The result mentioned above has been an inspiration for a similar reformulation of the FMD problem. Indeed, the FMD problem for the single load case can be reduced to a similar two-level scheme. The first step is to solve an auxiliary minimization problem over the statically admissible stress fields. Having found the minimizer one can determine all the optimal elastic moduli, see Czarnecki and Lewiński (2012).

The present paper is aimed at extension of the latter result to the case of arbitrary number of independent loads. The minimization over the tensors ω will be performed first thus leading to the explicit formulation serving as the point of departure for the subsequent step: the minimization operation over the Kelvin moduli obeying the isoperimetric condition involving the sum of these moduli as the integrand. This condition is equivalent to the isoperimetric condition with the integrand \(\phi (\boldsymbol {C})={\text {tr}\,}\boldsymbol {C}\), assumed in most papers on the FMD problems. The elimination of the Kelvin moduli reduces the FMD problem to the minimization problem of a functional depending on independent stress fields. Its integrand is the sum of singular values of the matrix composed of the components of these stress fields. The derivation of this result is one of the main objective of the present paper. Since this integrand has a linear growth with respect to its argument, the relevant minimization problem can be interpreted as an equilibrium problem of an effective body of locking properties, see Čyras (1972), Demengel and Suquet (1986), Telega and Jemioło (1998). To have a complete insight into the deformation of the body made of a locking material one should solve two mutually dual problems: the stress-based problem (minimization over statically admissible stresses, or rather stress rates) and the kinematic problem (with maximization over kinematically admissible displacements). In the considered problem of n loading conditions we have to deal with n stress fields and n strains, the latter lying within a locking locus at each point of the design domain. This result is crucial as linking the locking material theory with the FMD optimization problem. Yet this link is not a surprise. The known Michell truss problem is also expressed by two mutually dual formulations, both of them lying within the framework of mechanics of materials with locking, see Rozvany (1976), Strang and Kohn (1983), Lewiński (2004). Moreover, similar problems appear in the variable sheet problem, see Czarnecki and Lewiński (2013).

The present paper puts forward a new numerical method to solve the planar FMD problem for two load cases in its stress-based setting. The method is an extension of the numerical approach proposed in Czarnecki and Lewiński (2012) for the single load case. Although the meshing of the design domain is a starting point, the numerical method proposed does not belong to the finite element (FE) methods, since the integrand of the functional has a linear growth, while most FEM codes are applicable for the integrands of quadratic growth. Consequently, the stresses are not linked with strains by constitutive equations, but by the Kuhn-Tucker conditions. The kinematic formulation does not lead to the set of equations with a quadratic stiffness matrix. No aggregation procedure is applied to construct the global system of the governing equations. Instead, we have to solve the stress based problem by a direct minimization of the prescribed integral. The trial stress fields are interpolated element-wise by polynomials (which is the only common feature with FEM) and subject to the set of equilibrium equations implied by the variational equations of equilibrium. The set of equilibrium equations results in the algebraic under-determinate system of linear equations. The solution of this system is represented numerically with using the singular value decomposition (SVD). The redundant parameters are then determined by minimization of the prescribed functional. It is remarkable that these parameters are not subject to any constraints, hence the available, highly efficient optimization codes specially developed for the unconstrained optimization problems can be applied. The computational problem considered has never been discussed before. The numerical results can only be compared with the available numerical solutions to the FMD problem posed different way, as a saddle point problem. The final layouts found in the present paper compare favorably with those published previously by Werner (2000) and Kočvara et al. (2008), thus confirming the correctness of the stress-based method proposed.

The optimal layouts published in Czarnecki and Lewiński (2011) refer to the 2D case and to the arbitrary choice of tensors ω and given distribution of the Kelvin moduli. The layouts shown in the present paper refer to variation of both: tensors ω and Kelvin moduli. The results published in the present paper prove that admitting the Kelvin moduli to vary changes the final design substantially and contributes to a visible decrease of the compliance.

In the notation of the minimization problems the following convention is adopted

$$\min\limits_{x\in X} f(x) = \min \left\{ \left. f(x)\ \right|\ x\in X \right\}$$

if the structure of the condition \(x \in X\) is complicated. Moreover, the following standard notation is used. The domain of the body whose material properties are designed is denoted by Ω. It is a finite open domain in \(\mathbb{R}^{d}\), d being the dimension (2 or 3).The domain is parameterized by the Cartesian orthogonal system \((x_{1},\ \ldots ,\ x_d)\) with the basis \((\boldsymbol {e}_{1},\ \ldots ,\ \boldsymbol {e}_d)\). A point xΩ is identified with its coordinates. A virtual displacement field \(\boldsymbol {v} = (v_,\ \ldots ,\ v_d)\) in Ω determines the virtual strain field \(\boldsymbol {\varepsilon }(\boldsymbol {v})\); \(\varepsilon _{ij}(\boldsymbol {v}) = (v_{i,j} + v_{j,i})/2\); \((\cdot )_{i} = \partial (\cdot )/\partial x_{i}\). Locally \(\boldsymbol {\varepsilon } \in \mathbb{E}_{s}^{2}\), \(\mathbb{E}_{s}^{2}\) being the set of symmetric tensors of second rank. The scalar product of \(\boldsymbol {\varepsilon },\ \boldsymbol {\kappa } \in \mathbb{E}_{s}^{2}\) is defined by \(\boldsymbol {\varepsilon } \cdot \boldsymbol {\kappa } = \varepsilon _{ij} \kappa _{ij}\); \(i,\ j\) run over \(1,\ \ldots ,\ d\). The Euclidean norm of \(\boldsymbol {\varepsilon } \in \mathbb{E}_{s}^{2}\) is defined by \(||\boldsymbol {\varepsilon }|| = (\boldsymbol {\varepsilon } \cdot \boldsymbol {\varepsilon })^{1/2}\). Tensors of \(\mathbb{E}_{s}^{2}\) can be viewed as vectors in \(\mathbb{R}^{m}\), \(m = d(d+1)/2\), according to the rules:for \(d=2\)

$$\boldsymbol{\varepsilon} = \left[ \varepsilon_{11},\ \varepsilon_{22},\ \sqrt{2}\varepsilon_{12} \right]^{T} \in \mathbb{R}^{3}, \qquad m=3$$

for \(d=3\)

$$\boldsymbol{\varepsilon} = \left[ \varepsilon_{11},\ \varepsilon_{22},\ \varepsilon_{33},\ \sqrt{2}\varepsilon_{23},\ \sqrt{2}\varepsilon_{13},\ \sqrt{2}\varepsilon_{12} \right]^{T} \in \mathbb{R}^6.$$

This correspondence is explained in Moakher (2008). Thus elements of \(\mathbb{E}_{s}^{2}\) will be treated as tensors or as vectors, depending upon the context. The p-th eigenvalue of a square matrix \(\boldsymbol {B}\) is denoted by \(\mu _{p} (\boldsymbol {B})\). The p-th singular value of an arbitrary matrix \(\boldsymbol {A}\) is defined by

$$s_{p}(\boldsymbol{A}) = \sqrt{\mu_{p} (\boldsymbol{A} \boldsymbol{A}^T)}.$$

The indices \(i,\ j,\ k,\ l\) run over \(1,\ \ldots ,\ d\); d being the dimension of the problem. The indices \(K,\ L\) run over \(1,\ \ldots ,\ m\). The indices \(\alpha ,\ \beta \) take values \(1,\ \ldots ,\ n\), n being the number of the load conditions.

The set of matrices of m rows and n columns is denoted by \(\mathbb{M}_{m\times n}\).

The FMD problem in its stress-based formulation. Case of n loading conditions

The aim of the present section is to formulate the FMD problem for n independent loading conditions. For simplicity, the body forces will be omitted. The FMD means designing characteristics of an elastic body. We assume that body occupies a fixed Ω in \(\mathbb{R}^{d}\). Thus its geometry is not subject to any change. Its segment \(\Gamma _{2}\) of the boundary Γ where displacements are kept zero is also fixed. The remaining part \(\Gamma _{1}\) of the boundary is subject to given tractions \(\boldsymbol {T}^{\alpha }\), \(\alpha \in \{ 1,\ \ldots ,\ n\}\). This load will not be subjected to any change.

Introduce the linear form

$$f^{\alpha}(\boldsymbol{v}) = \int_{\Gamma _{1}} \boldsymbol{T}^{\alpha} \cdot \boldsymbol{v} d\Gamma$$

representing the virtual work of \(\boldsymbol {T}^{\alpha }\) on the trial displacement field \(\boldsymbol {v} \in V(\Omega )\); \(V(\Omega )\) represents the space of kinematically admissible virtual displacements; \(\boldsymbol {v} = (v_{1},\ \ldots ,\ v_d)\).

Consider virtual stress fields \(\boldsymbol {\tau } = (\tau _{ij})\) in Ω of class \(L(\Omega ,\ \mathbb{E}_{s}^2)\), which means that locally \(\boldsymbol {\tau }(x)\), xΩ is an element of the set \(\mathbb{E}_{s}^{2}\). The fields \(\boldsymbol {\tau }\) satisfy the regularity assumptions following from the equilibrium equation:

$$\int_{\Omega} \boldsymbol{\tau} \cdot \boldsymbol{\varepsilon}(\boldsymbol{v}) dx = f^{\alpha} (\boldsymbol{v}) \quad \forall\ \boldsymbol{v} \in V(\Omega).$$

Such virtual stress fields are called statically admissible stresses. They constitute a linear affine set \(\Sigma _{\alpha }(\Omega )\). The (6) is called a virtual work equation.

The design variables of the FMD problem are the elastic moduli \(C_{ijkl}\) for a.e. xΩ. These components are referred to the basis \(\boldsymbol {e}_{i} \otimes \boldsymbol {e}_{j} \otimes \boldsymbol {e}_{k} \otimes \boldsymbol {e}_{l}\); they represent a tensor \(\boldsymbol {C}(x)\). The notation \(\boldsymbol {C}\in \mathbb{E}_{s}^{4}\) comprises the symmetry conditions: \(C_{ijkl} = C_{klij}\); \(C_{ijkl} = C_{jikl}\). Any tensor \(\boldsymbol {C}\in \mathbb{E}_{s}^{4}\) admits the following spectral decomposition, see Rychlewski (1984), Sutcliffe (1992)

$$\boldsymbol{C}(x) = \sum\limits_{K=1}^{m} \lambda_{K}(x) \boldsymbol{\omega}_{K}(x) \otimes \boldsymbol{\omega}_{K}(x)$$

where \(\lambda _{1} \geqslant \lambda _{2} \geqslant \ldots \geqslant \lambda _{m} \geqslant 0\) are called Kelvin moduli and \(\boldsymbol {\omega }_{K} (x) \in \mathbb{E}_{s}^{2}\) are called eigenstates, see Rychlewski (1984). They satisfy the orthogonality conditions: \(\boldsymbol {\omega }_{K} (x) \cdot \boldsymbol {\omega }_{L} (x) = \delta _{KL}\). If tensors \(\boldsymbol {\omega }_{K}(x)\) are viewed as vectors in \(\mathbb{R}^{m}\), see (2), (3), then C can be interpreted as a square matrix \([C_{kl}]\) of \(m \times m\) dimensions. If all λ K > 0, the inverse of C is represented by

$$\boldsymbol{C}^{-1}(x) = \sum\limits_{K=1}^{m} (\lambda_K)^{-1} \boldsymbol{\omega}_{K}(x) \otimes \boldsymbol{\omega}_{K}(x).$$

If λ K = 0 for \(K = m_{1} +1,\ \ldots ,\ m\), then \(\boldsymbol {C}^{-1}(x)\) will be interpreted as

$$\boldsymbol{C}^{-1}(x) = \sum\limits_{K=1}^{m_{1}} (\lambda_K)^{-1} \boldsymbol{\omega}_{K}(x) \otimes \boldsymbol{\omega}_{K}(x)$$

where \(m_{1} = \textit {rank}(\boldsymbol {C})\). Note that then \(\boldsymbol {C}\boldsymbol {C}^{-1}\) will not be equal to a unit tensor in \(\mathbb{E}_{s}^{4}\).

Assume the triplet \(\left ( \boldsymbol {u}^{\alpha },\ \boldsymbol {\sigma }^{\alpha },\ \boldsymbol {\varepsilon }(\boldsymbol {u}^{\alpha })\right )\) such that \(\boldsymbol {u}^{\alpha } \in V(\Omega )\), \(\boldsymbol {\sigma }^{\alpha }\) and \(\boldsymbol {\varepsilon }(\boldsymbol {u}^{\alpha })\) are linked by \(\boldsymbol {\sigma }^{\alpha }(x) = \boldsymbol {C}(x) \boldsymbol {\varepsilon } (\boldsymbol {u}^{\alpha }(x))\) and let \(\boldsymbol {\sigma }^{\alpha } \in \Sigma _{\alpha }(\Omega )\); \(\alpha \) is fixed. The triplet constitutes a solution to the elasticity problem corresponding to the \(\boldsymbol {T}^{\alpha }\) load. The main condition of uniqueness of the solution is λ m > 0. The existence problem is discussed in Duvaut and Lions (1976).

The quantity

$$\tilde{\Upsilon}{}^{\alpha} = f^{\alpha}(\boldsymbol{u}^{\alpha})$$

is called the compliance. In case of λ m > 0 this quantity can be equivalently expressed as below

$$\Upsilon^{\alpha} = \min\limits_{\boldsymbol{\tau} \in \Sigma_{\alpha}(\Omega)} \int_{\Omega} \boldsymbol{\tau} \cdot \left( \boldsymbol{C}^{-1} \boldsymbol{\tau} \right) dx.$$

The equality \(\tilde{\Upsilon}{}^{\alpha} = \Upsilon ^{\alpha }\) reflects the celebrated theorem of Castigliano, see Duvaut and Lions (1976). In the present paper the notion of compliance is extended to the case of \(\textit {rank}(\boldsymbol {C}) <m\) by using the formula (11) with \(\boldsymbol {C}^{-1}\) given by (9).

Let \(\eta _{\alpha } \in [0,\ 1]\) be fixed numbers such that \(\eta _{1} + \ldots + \eta _{n} =1\). In the FMD problem considered all components of the tensor field \(\boldsymbol {C}(x)\) for a.e. x in Ω are design variables. This will be expressed by writing \(\Upsilon ^{\alpha } = \Upsilon ^{\alpha }(\boldsymbol {C})\).

Introduce the functional to be minimized

$$F_{\eta} (\boldsymbol{C}) = \sum\limits_{\alpha=1}^{n} \eta_{\alpha} \Upsilon^{\alpha} (\boldsymbol{C}).$$

A detailed discussion of solutions to the problem of minimization of \(F_{\eta }\) for \(\eta _{\alpha }\) linked by \(\eta _{1} + \ldots + \eta _{n} = 1\) makes it possible to find the whole Pareto front of the solutions. This question will be explained in Section 6.

The trace of C is defined by \(C_{ijij}\) or

$${\text{tr}\,}\boldsymbol{C}= \lambda_{1} + \ldots + \lambda_m.$$

Since λ K ≥ 0 we can write \({\text {tr}\,} \boldsymbol {C}= ||\boldsymbol {\lambda }||_{1}\), where \(\boldsymbol {\lambda } = (\lambda _{1},\ \ldots ,\ \lambda _m)\) and \(|| \cdot ||_{p}\) is a p-norm. Let \(\langle \cdot \rangle \) be averaging over Ω

$$\langle f \rangle = {1\over |\Omega|} \int_{\Omega} f\, dx$$

and let \(E_{0}\) be a referential elastic modulus. Let \(H(\Omega )\) be the set of appropriately regular tensor fields C on Ω such that for a.e. x in Ω, \(\boldsymbol {C}(x) \in \mathbb{E}_{s}^{4}\) and its Kelvin moduli are non-negative. We say that \(\boldsymbol {C}\in \hat {H}(\Omega )\) if \(\boldsymbol {C}\in H(\Omega )\) and

$$\langle {\text{tr}\,} \boldsymbol{C}\rangle = E_o.$$

For fixed \(\eta _{1},\ \ldots ,\ \eta _{n}\) satisfying \(\eta _{1} + \ldots + \eta _{n} =1\) the FMD problem considered is assumed in the form

$$J_{\eta} = \min\limits_{\boldsymbol{C} \in \hat{H}(\Omega)} F_{\eta} (\boldsymbol{C}).$$

Let us substute (11), (12) into (16) and switch minimization operations. We find

$$J_{\eta} = \min\limits_{\boldsymbol{\tau}^{\alpha} \in \Sigma_{\alpha}(\Omega)} \tilde{J}_{\eta,\ E_{o}} \left( \boldsymbol{\tau}^{1},\ \ldots,\ \boldsymbol{\tau}^{n} \right).$$


$$\begin{array}{@{}rcl@{}} & & \tilde{J}_{\eta,\ E_{o}} \left( \boldsymbol{\tau}^{1},\ \ldots,\ \boldsymbol{\tau}^{n} \right) = \\ & & {} = \min\left\{ \left. \int_{\Omega} \sum\limits_{\alpha=1}^{n} \sqrt{\eta_{\alpha}} \boldsymbol{\tau}^{\alpha} \cdot \left( \boldsymbol{C}^{-1} \left( \sqrt{\eta_{\alpha}} \boldsymbol{\tau}^{\alpha} \right) \right) dx\ \right|\ \right. \\ & & \qquad\left. {\sum_{1}^{1}} \boldsymbol{C}\in H(\Omega),\ \langle {\text{tr}\,} \boldsymbol{C}\rangle = E_{o} \right\}. \end{array}$$

It turns out that the functional \(\tilde {J}_{\eta ,\ E_{0}}\) can be explicitly constructed by performing: first minimization over \(\boldsymbol {\omega }_{K}\) and then over λ K . This construction is shown in the next section.

Reduction of the FMD problem to a locking material setting

Case of arbitrary, finite number of load conditions

Let us introduce the representation (9) of \(\boldsymbol {C}^{-1}\) into (18). Let us express the integrand ψ of the functional minimized in (18) as follows

$$\begin{array}{@{}rcl@{}} \psi & = & \sum\limits_{\alpha=1}^{n} \sum\limits_{K=1}^{m_{1}} {1\over \lambda_{K}} \left( \sqrt{\eta_{\alpha}} \boldsymbol{\tau}^{\alpha} \cdot \boldsymbol{\omega}_{K} \right)^{2} = {} \\ & = & \sum\limits_{K=1}^{m_{1}} {1\over \lambda_{K}} \boldsymbol{\omega}_{K} \cdot \left( \hat{\boldsymbol{S}_{\eta}} \boldsymbol{\omega}_{K}\right) \end{array}$$


$$\hat{\boldsymbol{S}}_{\eta} = \boldsymbol{S}_{\eta} \boldsymbol{S}_{\eta}^{T}, \qquad \boldsymbol{S}_{\eta} = \left[ \sqrt{\eta_{1}} \boldsymbol{\tau}^{1},\ \ldots,\ \sqrt{\eta_{n}} \boldsymbol{\tau}^{n} \right].$$

The argument x is suppressed for simplicity. The matrix \(\boldsymbol {S}_{\eta }\) is constructed of the column vectors \(\sqrt {\eta _{\alpha }} \boldsymbol {\tau }^{\alpha }\) using the representation (2), (3) of tensors from \(\mathbb{E}_{s}^{2}\). Each column is of m × 1 dimension.

Let us define the mapping

$$\boldsymbol{S} \left( \boldsymbol{\tau}^{1},\ \ldots,\ \boldsymbol{\tau}^{n} \right) = \left[ \boldsymbol{\tau}^{1},\ \ldots,\ \boldsymbol{\tau}^{n} \right]$$

treating \(\boldsymbol {\tau }^{\alpha }\) as column vectors m × 1, using the representation (2), (3). Hence

$$\boldsymbol{S}_{\eta} = \boldsymbol{S} \left( \sqrt{\eta_{1}} \boldsymbol{\tau}^{1},\ \ldots,\ \sqrt{\eta_{n}} \boldsymbol{\tau}^{n} \right).$$

The mapping \(\boldsymbol {S}\) transforms the set of n column vectors in \(\mathbb{R}^{m}\) into a matrix of m × n dimensions. Define

$$\tilde{\boldsymbol{S}}_{\eta} = \boldsymbol{S}_{\eta}^{T} \boldsymbol{S}_{\eta}.$$

Note that

$$\tilde{\boldsymbol{S}}_{\eta} = \left[ \left( \sqrt{\eta_{\alpha}} \boldsymbol{\tau}^{\alpha} \right) \cdot \left( \sqrt{\eta_{\beta}} \boldsymbol{\tau}^{\beta} \right) \right]_{\alpha,\ \beta = 1,\ \ldots,\ n}.$$

We know from algebra that \(\textit {rank} \boldsymbol {S}_{\eta } = \textit {rank} \hat {\boldsymbol {S}}_{\eta } = \textit {rank} \tilde {\boldsymbol {S}}_{\eta }\).

In case of n = m the matrix \(\tilde {\boldsymbol {S}}_{\eta }\) is a Gram matrix. This special case will be commented later.

Let us define

$$a_{K} = \boldsymbol{\omega}_{K} \cdot \left( \hat{\boldsymbol{S}}_{\eta} \boldsymbol{\omega}_{K} \right).$$

Assume that

$$a_{1} \geqslant a_{2} \geqslant \ldots \geqslant a_{m_{1}}, \qquad m_{1} = \text{rank} \left( \hat{\boldsymbol{S}}_{\eta} \right)$$

and recall that

$${1\over \lambda_{1}} \leqslant {1\over \lambda_{2}} \leqslant \ldots \leqslant {1\over \lambda_{m_{1}}}.$$

Let us invoke the ,,rearrangement inequality”, cf. Hardy et al. (1999)

$$\sum\limits_{K=1}^{m_{1}} {a_{K} \over \lambda_{K}} \leqslant \sum\limits_{K=1}^{m_{1}} {a_{\sigma(K)} \over \lambda_{K}}$$

where \(\sigma (K)\) is a permutation of the indices \(\{1,\ \ldots ,\ m_{1}\}\). We see that to minimize the quantity ψ, see (19), over the fields \(\boldsymbol {\omega }_{K}\) we should, for a.e. xΩ, arrange the quantities a K according to (25). The biggest value of a K , or a 1, is attained by

$$a_{1} = \max\limits_{||\boldsymbol{\omega}||=1} \boldsymbol{\omega} \cdot \left( \hat{\boldsymbol{S}}_{\eta} \boldsymbol{\omega} \right).$$

This maximum is attained by \(\boldsymbol {\omega }^{*}_{1}(x)\) which is the eigenvector corresponding to the first eigenvalue of \(\hat {\boldsymbol {S}}_{\eta }\) computed at x. Thus, for fixed x, the pair \((a_{1},\ \boldsymbol {\omega }^{*}_1)\) is the first solution to the eigenvalue problem:

find \((\lambda ,\ \boldsymbol {y})\) such that

$$\hat{\boldsymbol{S}}_{\eta} \boldsymbol{y} = \lambda\boldsymbol{y}.$$

We shall write \(a_{1} = \mu _{1}(\hat {\boldsymbol {S}}_{\eta })\), according to the notation convention assumed in Section 1.

The next pairs \((a_{K},\ \boldsymbol {\omega }_{K}^{*}\)) are solutions to the same eigenvalue problem; a K , \(K=1,\ \ldots ,\ m_{1}\) are ordered as in (25). Note that for given x the number m 1 is fixed. In fact m 1 depends on x.

Concluding, minimization in (18) over the fields \(\boldsymbol {\omega }_{K}\) satisfying the conditions: \(\boldsymbol {\omega }_{K} \cdot \boldsymbol {\omega }_{L} = \delta _{KL}\) pointwise rearranges (17) to a new minimization problem

$$\begin{array}{@{}rcl@{}} J_{\eta} & = & \min \left\{ \left. I_{\eta}(\boldsymbol{\lambda})\ \right|\ {1\over \lambda_{K}} \in L^{1} (\Omega,\ \mathbb{R}^+), \right. \\ & & \left. \langle \lambda_{1} + \ldots + \lambda_{m_{1}} \rangle = E_{o},\ K=1,\ \ldots,\ m_{1} \right\} \end{array}$$

where \(\boldsymbol {\lambda } = (\lambda _{1},\ \ldots ,\ \lambda _{m_{1}})\) and

$$\begin{array}{@{}rcl@{}} I_{\eta} & = & \min_{\boldsymbol{\tau}^{\alpha} \in \Sigma_{\alpha} (\Omega)} \int_{\Omega} W_{\eta} \left( \boldsymbol{\lambda} (x);\ \boldsymbol{\tau}^{1}(x),\ \ldots,\ \boldsymbol{\tau}^{n}(x) \right) dx. \\ \mbox{} \end{array}$$

The integrand of (31) reads

$$W_{\eta}\left( \boldsymbol{\lambda};\ \boldsymbol{\tau}^{1},\ \ldots,\ \boldsymbol{\tau}^{n} \right) = W_{\lambda} \left( \sqrt{\eta_{1}} \boldsymbol{\tau}^{1},\ \ldots,\ \sqrt{\eta_{n}} \boldsymbol{\tau}^{n} \right)$$


$$\begin{array}{@{}rcl@{}} & & W_{\lambda} \left( \boldsymbol{\tau}^{1},\ \ldots,\ \boldsymbol{\tau}^{n} \right) = \\ & & \sum_{K=1}^{m_{1}} {1\over \lambda_{K}} \mu_{K} \left( \boldsymbol{S} \left( \boldsymbol{\tau}^{1},\ \ldots,\ \boldsymbol{\tau}^{n} \right) \boldsymbol{S}^{T} \left( \boldsymbol{\tau}^{1},\ \ldots,\ \boldsymbol{\tau}^{n} \right) \right) \end{array}$$


$$W_{\lambda} \left( \sqrt{\eta_{1}} \boldsymbol{\tau}^{1},\ \ldots,\ \sqrt{\eta_{n}} \boldsymbol{\tau}^{n} \right) = \sum_{K=1}^{m_{1}} {1\over \lambda_{K}} \mu_{K} \left( \hat{\boldsymbol{S}}_{\eta} \right)$$

where \(\hat {\boldsymbol {S}}_{\eta }\) is given by (20).

Let us substitute (32), (33) into (30). We find

$$\begin{array}{@{}rcl@{}} J_{\eta} & = & \min\limits_{\boldsymbol{\tau}^{\alpha} \in \Sigma_{\alpha} (\Omega)}\ \ \min\limits_{{1\over \lambda_{K}} \in L^{1} (\Omega,\ \mathbb{R}^+)} \int_{\Omega} \sum\limits_{K=1}^{m_{1}} {\mu_{K} \left( \hat{\boldsymbol{S}}_{\eta} \right) \over \lambda_{K}} dx\ \\ & & \mbox{}\qquad \langle \lambda_{1} + \ldots + \lambda_{m_{1}} \rangle = E_o. \end{array}$$

Minimization over λ K can be done analytically, by extending the results of the Appendix of Czarnecki and Lewiński (2013). The final result is

$$J_{\eta} = {1\over |\Omega| E_{o}} (Z_{\eta})^{2}$$


$$Z_{\eta} = \min\limits_{\boldsymbol{\tau}^{\alpha} \in \Sigma_{\alpha}(\Omega)} \int_{\Omega} \sum\limits_{K=1}^{m_{1}} \sqrt{\mu_{K} \left( \hat{\boldsymbol{S}}_{\eta}\right)} dx.$$

Note that

$$\sqrt{\mu_{K} \left( \hat{\boldsymbol{S}}_{\eta} \right)} = s_{K}(\boldsymbol{S}_{\eta}).$$

Moreover, note that the summation over K in (36) can be extended to \(K=m\), since \(s_{K} (\boldsymbol {S}_{\eta })=0\) for \(K= m_{1} + 1,\ \ldots ,\ m\). Instead of (36) it is more clear to write

$$\begin{array}{@{}rcl@{}} Z_{\eta} \,=\, \min\limits_{\boldsymbol{\tau}^{\alpha} \in \Sigma_{\alpha}(\Omega)} \int_{\Omega} \sum\limits_{K=1}^{m} s_{K} \left( \boldsymbol{S} \left( \sqrt{\eta_{1}} \boldsymbol{\tau}^{1},\, \ldots,\, \sqrt{\eta_{n}} \boldsymbol{\tau}^{n} \right) \right) dx \\[-4pt] \mbox{} \end{array}$$

since now the upper limit of K is x independent.

The optimal \(\lambda _{K} = \lambda _{K}^{*}\) are expressed by minimizers \(\boldsymbol {\tau }^{*\alpha }\) of problem (38)

$$\lambda_{K}^{*}(x) = E_{o} { s_{K} \left( \boldsymbol{S} \left( \sqrt{\eta_{1}} \boldsymbol{\tau}^{*1}(x),\ \ldots,\ \sqrt{\eta_{n}} \boldsymbol{\tau}^{*n}(x) \right) \right) \over \left\langle \sum\limits_{K=1}^{m} s_{K} \left( \boldsymbol{S} \left( \sqrt{\eta_{1}} \boldsymbol{\tau}^{*1},\ \ldots,\ \sqrt{\eta_{n}}\boldsymbol{\tau}^{*n} \right) \right) \right\rangle}.$$

We note that \(\lambda _{K}^{*}(x) >0\) for \(K = 1,\ \ldots ,\ m^{*}_{1}(x)\), \(m^{*}_{1}(x) = \textit {rank} \hat {\boldsymbol {S}}{}^{*}_{\eta }(x)\), \(\hat {\boldsymbol {S}}{}^{*}_{\eta }(x)\) corresponding to \(\boldsymbol {\tau }^{\alpha } (x) = \boldsymbol {\tau }^{*\alpha } (x)\).

The optimal eigenstate \(\boldsymbol {\omega }^{*}_{K}\) is the K-th eigenvector of problem (29). For given xΩ the optimal Hooke tensor is expressed by

$$\boldsymbol{C}^{*}(x) = \sum\limits_{K=1}^{m^{*}_{1}(x)} \lambda_{K}^{*}(x) \boldsymbol{\omega}_{K}^{*}(x) \otimes \boldsymbol{\omega}_{K}^{*}(x).$$

Let us write

$$\left|\left|\left| \left( \boldsymbol{\tau}^{1},\ \ldots,\ \boldsymbol{\tau}^{n}\right) \right|\right|\right| = \sum\limits_{K=1}^{m} s_{K} \left( \boldsymbol{S} \left( \boldsymbol{\tau}^{1},\ \ldots,\ \boldsymbol{\tau}^{n} \right) \right)$$

and note that

$$\left|\left|\left| \left( \alpha \boldsymbol{\tau}^{1},\ \ldots,\ \alpha \boldsymbol{\tau}^{n} \right) \right|\right|\right| = |\alpha|\, \left|\left|\left|\left( \boldsymbol{\tau}^{1},\ \ldots,\ \boldsymbol{\tau}^{n}\right) \right|\right|\right|.$$

Thus the integral of (38) is a homogeneous function of degree 1.

Instead of solving (38) it is sometimes easier to solve the problem dual to (38). In the following we shall show the passage from (38) to its dual. This passage is inspired by the work of Strang and Kohn (1983) concerning Michell trusses.

Let us disclose the equilibrium constraints in (38) and rearrange this problem to a saddle point problem:

$$\begin{array}{@{}rcl@{}} & & Z_{\eta} = \min\limits_{\boldsymbol{\tau}^{\alpha} \in L\left(\Omega,\ \mathbb{E}_{s}^{2}\right)}\ \max\limits_{\boldsymbol{v}^{\alpha} \in V(\Omega)} {} \\ & & \left\{ \int_{\Omega} \left|\left|\left| \left( \sqrt{\eta_{1}} \boldsymbol{\tau}^{1},\ \ldots,\ \sqrt{\eta_{n}}\boldsymbol{\tau}^{n} \right) \right|\right|\right| dx + {} \right. f^{1} \left( \sqrt{\eta_{1}} \boldsymbol{v}^{1} \right) \\ & & {}- \int_{\Omega} \sqrt{\eta_{1}} \boldsymbol{\tau}^{1} \cdot \boldsymbol{\varepsilon} (\boldsymbol{v}^1) dx + \ldots + f^{n}\left( \sqrt{\eta_{n}} \boldsymbol{v}^{n} \right) \\ & & {} - \left. \int_{\Omega} \sqrt{\eta_{n}} \boldsymbol{\tau}^{n} \cdot \boldsymbol{\varepsilon} (\boldsymbol{v}^n) dx \right\}. \end{array}$$

Now we interchange the min and max operations. The nested problem reads

$$\begin{array}{@{}rcl@{}} R & = & \min\limits_{\boldsymbol{\tau}^{\alpha} \in L \left(\Omega,\ \mathbb{E}_{s}^{2}\right)} \int_{\Omega} \left( \left|\left|\left| \left( \sqrt{\eta_{1}} \boldsymbol{\tau}^{1},\ \ldots,\ \sqrt{\eta_{n}}\boldsymbol{\tau}^{n} \right) \right|\right|\right| \right.{} \\ & & {}- \left. \sqrt{\eta_{1}}\boldsymbol{\tau}^{1} \cdot \boldsymbol{\varepsilon}(\boldsymbol{v}^1) - \ldots - \sqrt{\eta_{n}} \boldsymbol{\tau}^{n} \cdot \boldsymbol{\varepsilon}(\boldsymbol{v}^n) \right) dx \\ & = & \min\limits_{\boldsymbol{\sigma}^{\alpha} \in L\left(\Omega,\ \mathbb{E}_{s}^{2}\right)} \int_{\Omega} \left( \left|\left|\left| \left( \boldsymbol{\sigma}^{1},\ \ldots,\ \boldsymbol{\sigma}^{n}\right) \right|\right|\right| \right. \\ & & \left. {} - \left( \boldsymbol{\sigma}^{1} \cdot \boldsymbol{\varepsilon}^{1} + \ldots + \boldsymbol{\sigma}^{n} \cdot \boldsymbol{\varepsilon}^{n} \right) \right) dx \end{array}$$

where \(\boldsymbol {\varepsilon }^{\alpha } = \boldsymbol {\varepsilon }(\boldsymbol {v}^{\alpha })\). By analogy with Section 3.1. in Czarnecki and Lewiński (2013) we compute

$$R = \left\{ \begin{array}{l@{\quad}l}0 \quad {if}\ (\boldsymbol{\varepsilon}^1,\ \ldots,\ \boldsymbol{\varepsilon}^n) \in B \\[3pt]-\infty \quad \text{otherwise}\end{array} \right.$$


$$\begin{array}{@{}rcl@{}} B & = & \left\{ \left. \left( \boldsymbol{\varepsilon}^{1},\ \ldots,\ \boldsymbol{\varepsilon}^{n} \right) \in \left(\mathbb{E}_{s}^{2}\right)^{n}\ \right| \right. \\ & & \mbox{}\qquad\qquad\left. \left|\left|\left| \left( \boldsymbol{\varepsilon}^{1},\ \ldots,\ \boldsymbol{\varepsilon}^{n} \right) \right|\right|\right|^{*} \leqslant 1 \right\} \end{array}$$


$$\left|\left|\left| \left( \boldsymbol{\varepsilon}^1,\ \ldots,\ \boldsymbol{\varepsilon}^n \right) \right|\right|\right|^* = \max_{\begin{array}{c}{}_{\boldsymbol{\sigma}^{\alpha} \in \mathbb{E}_s^2} \\{}^{\boldsymbol{\sigma}^{\alpha} \not=0}\\[-4pt]{}^{\alpha =1,\ldots,n}\end{array}}{\left| \sum\limits_{\alpha=1}^n \boldsymbol{\sigma}^{\alpha} \cdot \boldsymbol{\varepsilon}^{\alpha} \right| \over \left|\left|\left| \left( \boldsymbol{\sigma}^1,\ \ldots,\ \boldsymbol{\sigma}^n \right)\right|\right|\right| }.$$

The result (45) reduces the problem (43) to the form

$$\begin{array}{@{}rcl@{}} & & Z_{\eta} = \max\limits_{\boldsymbol{v}^{\alpha} \in V(\Omega)} \left\{ \left. \sum\limits_{\alpha=1}^{n} f^{\alpha} \left( \sqrt{\eta_{\alpha}} \boldsymbol{v}^{\alpha} \right) \ \right| \right. \\ & & \left. {{\sum_{1}^{2}}} \left(\boldsymbol{\varepsilon} (\boldsymbol{v}^{1}(x)),\ \ldots,\ \boldsymbol{\varepsilon}( \boldsymbol{v}^{n}(x)) \right) \in B\ \mbox{for a.e.}\ x \in \Omega \right\}. \end{array}$$

Let us now re-write (38) in the form

$$Z_{\eta} = \min\limits_{\boldsymbol{\tau}^{\alpha} \in \Sigma_{\alpha}(\Omega)} \int_{\Omega} \left|\left|\left| \left( \sqrt{\eta_{1}} \boldsymbol{\tau}^{1},\ \ldots,\ \sqrt{\eta_{n}} \boldsymbol{\tau}^{n} \right) \right|\right|\right| dx.$$

The problems (48), (49) are dual to each other. They can be interpreted as two problems reflecting mechanical behavior of a certain n-components mixture of locking properties. The behavior of stresses is governed by (49), while strains are governed by (48). The relations between stresses and strains are not expressed by equations but by Kuhn-Tucker conditions. The noted link with the theory of materials with locking is not a surprise, since the theory of Michell trusses can be treated as a theory of a locking material, see Rozvany’s (1976) comments and the footnote on Zenon Mróz suggestion, see page 64 in this book. The present paper does not deal with choosing spaces of admissible functions in the problems (48), (49). It seems that the stresses in (49) should satisfy the conditions mentioned in Strang and Kohn (1983) and Demengel and Suquet (1986), or \(\boldsymbol {\tau }^{\alpha } \in \mathcal {M}^{1}( \Omega ,\ \mathbb{E}_{s}^2)\), \(\text {div} \boldsymbol {\tau }^{\alpha } \in L^{2} (\Omega ,\ \mathbb{R}^d)\); \(\mathcal {M}^{1}\) being the space of bounded measures on Ω. Yet the problem remains how to relax the boundary conditions on \(\Gamma _{1}\). The known methods of F. Demengel cannot be applied here directly.

Assume that both the problems (48), (49) have been solved and the tensor (40) has been constructed. The problem arises whether the elasticity problems corresponding to the \(\boldsymbol {T}^{\alpha }\) loads and the anisotropy given by (40) are solvable, taking into account that, in general, \(\boldsymbol {C}^{*}\) is not positive definite. The affirmative answer is delivered by Th. 1 in Zowe et al. (1997), based on the displacement approach. Other existence theorems are formulated in Haslinger et al. (2010).

Single load condition

We consider now the simplest case of n = 1 load conditions. Then \(\eta _1=1\), \(\boldsymbol {\tau }^{1}\) will be denoted by \(\boldsymbol {\tau }\), \(\boldsymbol {\tau } \in \Sigma (\Omega )\) and \(\boldsymbol {S}_{\eta } = [\boldsymbol {\tau }]\). Moreover \(\hat {\boldsymbol {S}}_{\eta } = \boldsymbol {\tau } \boldsymbol {\tau }^{T}\), \(\boldsymbol {\tau }\) is interpreted as a vector in \(\mathbb{R}^{m}\), see (2), (3). Note that \(\tilde {\boldsymbol {S}}_{\eta } = \boldsymbol {\tau }^{T} \boldsymbol {\tau } = ||\boldsymbol {\tau }||^{2}\). The only positive singular value of \(\boldsymbol {S}_{\eta }\) is \(||\boldsymbol {\tau }||\). Moreover: \(\textit {rank}\boldsymbol {S}_{\eta } = \textit {rank} \hat {\boldsymbol {S}}_{\eta } = \textit {rank} \tilde {\boldsymbol {S}}_{\eta } = 1\). Problem (49) reduces to

$$Z = \min\limits_{\boldsymbol{\tau} \in \Sigma (\Omega)} \int_{\Omega} ||\boldsymbol{\tau}|| dx.$$

Let \(\boldsymbol {\tau }^{*}\) be the solution to this problem. The only non-zero Kelvin modulus is equal to

$$\lambda_{1}^{*}(x) = E_{o} {||\boldsymbol{\tau}^{*}(x)|| \over \langle || \boldsymbol{\tau}^{*} || \rangle}$$


$$\boldsymbol{\omega}_{1}^{*}(x) = {1\over ||\boldsymbol{\tau}^{*}||} \boldsymbol{\tau}^{*}(x).$$

We see that \(\langle \boldsymbol {\lambda }_{1}^{*} \rangle = E_{0}\). The optimal Hooke tensor equals

$$\boldsymbol{C}^{*}(x) = \lambda_{1}^{*}(x) \boldsymbol{\omega}_{1}^{*}(x) \otimes \boldsymbol{\omega}^{*}_{1}(x).$$

We see that \(\textit {rank} \boldsymbol {C}^{*} = 1\); the Kelvin moduli \(\boldsymbol {\lambda }^{*}_{2},\ \ldots ,\ \boldsymbol {\lambda }_{m}^{*}\) vanish.

The results (50)–(53) have been for the first time published in Czarnecki and Lewiński (2012). These results are compatible with the results published in Bendsøe et al. (1994) and in the next papers on FMD. Let us stress that the FMD version developed in Bendsøe et al. (1994), Zowe et al. (1997), Hörnlein et al. (2001) is a displacement – based version and these papers neither include the formulation (50) nor the formulation dual to it, to be shown later.

According to Th. 6 in Zowe et al. (1997) there exist stresses \(\sigma _{ij}\) and strains \(\varepsilon _{ij}\) satisfying all equations of the elasticity problem for a body with anisotropy given by (53). It is worth noting that the stress \(\boldsymbol {\sigma }\) is collinear with the auxiliary stress field \(\boldsymbol {\tau }^{*}\) solving (50). One can derive:

$$\begin{array}{@{}rcl@{}} \boldsymbol{\sigma} (x) & = & g(x) \boldsymbol{\tau}^{*}(x) \\ g(x) & = & \lambda_{1}(x) ( \boldsymbol{\omega}_{1}^{*}(x) \cdot \boldsymbol{\varepsilon}(x) ) || \boldsymbol{\tau}^{*}(x) ||^{-1}. \end{array}$$

The problem dual to (50) is a special case of (48). It reads

$$Z = \max\limits_{\begin{array}{c}{}_{\boldsymbol{v}}\!\!\in V(\Omega) \\{}^{\boldsymbol{\varepsilon}(\boldsymbol{v}(x)) \in B\ \quad {for a.e.}\ x \in \Omega}\end{array}}f(\boldsymbol{v}).$$

The locking locus is a unit ball:

$$B = \left\{ \left. \boldsymbol{\varepsilon} \in \mathbb{E}_{s}^{2}\ \right|\ ||\boldsymbol{\varepsilon}|| \leqslant 1 \right\}$$

since \(||\boldsymbol {\varepsilon }||^{*} = ||\boldsymbol {\varepsilon }||\).

Two load conditions

Assume now that two kinds of loads \(\boldsymbol {T}^{\alpha }\) are applied: \(\alpha = 1,\ 2\); n = 2. Let us write \(\eta _{1} = \eta \), \(\eta _{2} = 1-\eta \); hence

$$\boldsymbol{S}_{\eta} = \left[ \sqrt{\eta} \boldsymbol{\tau}^{1},\ \sqrt{1-\eta} \boldsymbol{\tau}^{2} \right]_{m\times2},$$
$$\hat{\boldsymbol{S}}_{\eta} = \boldsymbol{S}_{\eta} \boldsymbol{S}_{\eta}^{T}, \qquad \tilde{\boldsymbol{S}}_{\eta} = \boldsymbol{S}_{\eta}^{T} \boldsymbol{S}_{\eta}.$$

Moreover, \(\textit {rank} \hat {\boldsymbol {S}}_{\eta } = \textit {rank} \tilde {\boldsymbol {S}}_{\eta } = m_{1} = 2\). The positive eigenvalues of \(\hat {\boldsymbol {S}}_{\eta }\) and \(\tilde {\boldsymbol {S}}_{\eta }\) are the same. Let

$$\boldsymbol{G} (\boldsymbol{\sigma},\ \boldsymbol{\tau}) = \left[ \begin{array}{c@{\quad}c}\boldsymbol{\sigma} \cdot \boldsymbol{\sigma} \quad \boldsymbol{\sigma} \cdot \boldsymbol{\tau} \\[3pt]\boldsymbol{\tau} \cdot \boldsymbol{\sigma} \quad \boldsymbol{\tau} \cdot \boldsymbol{\tau}\end{array} \right]_{2\times2}.$$


$$\tilde{\boldsymbol{S}}_{\eta} = \boldsymbol{G} \left( \sqrt{\eta} \boldsymbol{\tau}^{1},\ \sqrt{1-\eta} \boldsymbol{\tau}^{2} \right).$$

The eigenvalues of \(\boldsymbol {G}(\boldsymbol {\sigma },\ \boldsymbol {\tau })\) are expressed by

$$\begin{array}{@{}rcl@{}} b_{1}(\boldsymbol{\sigma},\ \boldsymbol{\tau}) & = & {1\over2} ( ||\boldsymbol{\sigma}||^{2} + ||\boldsymbol{\tau}||^2)\\ & & {} + {1\over2} \sqrt{( ||\boldsymbol{\sigma}||^{2} - ||\boldsymbol{\tau}||^2)^{2} + 4 (\boldsymbol{\sigma} \cdot \boldsymbol{\tau})^{2}}\\[-5pt] & & \mbox{} \\[-5pt] b_{2}(\boldsymbol{\sigma},\ \boldsymbol{\tau}) & = & {1\over2} ( ||\boldsymbol{\sigma}||^{2} + ||\boldsymbol{\tau}||^{2} ) - \\ & & {} - {1\over2} \sqrt{( ||\boldsymbol{\sigma}||^{2} - ||\boldsymbol{\tau}||^2)^{2} + 4 (\boldsymbol{\sigma} \cdot \boldsymbol{\tau})^{2}}. \end{array}$$

Note that \(b_{1} \geqslant b_{2}\). The positive singular values of the matrix \(\boldsymbol {S} \left ( \sqrt {\eta } \boldsymbol {\tau }^{1},\ \sqrt {1-\eta } \boldsymbol {\tau }^{2} \right )\) can be expressed as below

$$\begin{array}{@{}rcl@{}} s_{1}\left( \boldsymbol{S} \left( \sqrt{\eta}\boldsymbol{\tau}^{1},\ \sqrt{1-\eta} \boldsymbol{\tau}^{2}\right)\right) & = & \sqrt{b_{1} \left( \sqrt{\eta}\boldsymbol{\tau}^{1},\ \sqrt{1-\eta} \boldsymbol{\tau}^{2} \right)} \\[-3pt] & & \mbox{} \\ s_{2}\left( \boldsymbol{S} \left( \sqrt{\eta}\boldsymbol{\tau}^{1},\ \sqrt{1-\eta} \boldsymbol{\tau}^{2}\right)\right) & = & \sqrt{b_{2} \left( \sqrt{\eta}\boldsymbol{\tau}^{1},\ \sqrt{1-\eta} \boldsymbol{\tau}^{2} \right)}.\notag\\ \end{array}$$

Let us define

$$||| ( \boldsymbol{\sigma},\ \boldsymbol{\tau} ) ||| = s_{1} ( \boldsymbol{S}(\boldsymbol{\sigma},\ \boldsymbol{\tau}) ) + s_{2} ( \boldsymbol{S}(\boldsymbol{\sigma},\ \boldsymbol{\tau}) ).$$

One can derive the more explicit formula:

$$\begin{array}{@{}rcl@{}} & & ||| ( \boldsymbol{\sigma},\ \boldsymbol{\tau} ) ||| \\ & & {} = \sqrt{ ||\boldsymbol{\sigma}||^{2} + ||\boldsymbol{\tau}||^{2} + 2\sqrt{ ||\boldsymbol{\sigma}||^{2} ||\boldsymbol{\tau}||^{2} - (\boldsymbol{\sigma} \cdot \boldsymbol{\tau})^{2} }}. \end{array}$$

The construction of the optimal tensor \(\boldsymbol {C}^{*}\) consists of the following steps:

  • Step 1   For fixed \(\eta \in [0,\ 1]\) solve the boundary value problem

    $$Z_{\eta} = \min\limits_{\begin{array}{c}{}_{\boldsymbol{\tau}^{\alpha} \in \Sigma_{\alpha} (\Omega)} \\{}^{\alpha = 1,\ 2}\end{array}}\int_{\Omega} \left| \left| \left| \left( \sqrt{\eta} \boldsymbol{\tau}^1,\ \sqrt{1-\eta} \boldsymbol{\tau}^2 \right) \right| \right| \right| dx.$$

    Let \(\boldsymbol {\tau }^{*\alpha }\) be the minimizers of (67)

  • Step 2   For chosen points x in Ω compute the optimal Kelvin moduli \(\lambda _{1}^{*},\ \lambda _{2}^{*}\) by (39), n = 2; with \(s_{1}\), \(s_{2}\) defined by (64). The Kelvin moduli \(\lambda ^{*}_{3},\ \ldots ,\ \lambda ^{*}_{m}\) vanish.

  • Step 3   Solve the eigenvalue problem for the matrix \(\hat {\boldsymbol {S}}_{\eta }(x)\) to find the eigentensors \(\boldsymbol {\omega }^{*}_{1}(x),\ \boldsymbol {\omega }^{*}_{2}(x)\) for selected xΩ.

    In 2D case a direct construction of \(\boldsymbol {\omega }^{*}_{1},\ \boldsymbol {\omega }^{*}_{2}\) is as follows:


    $$\xi(x) = \left. \left( {||\boldsymbol{\tau}(x)|| \over || \boldsymbol{\sigma}(x)||} \right)^{\!\!2} \right|_{\begin{array}{c}\boldsymbol{\sigma} = \sqrt{\eta} \stackrel{*}{\boldsymbol{\tau}}{}^1\\\boldsymbol{\tau} = \sqrt{1-\eta} \stackrel{*}{\boldsymbol{\tau}}{}^2\end{array}}.$$

    Find an angle \(\alpha (x)\) such that \( \alpha \in \left ( 0,\ {\pi \over 2} \right )\) and

    $$\begin{array}{@{}rcl@{}} \cos \alpha(x) & = & {|\boldsymbol{\sigma}(x) \cdot \boldsymbol{\tau}(x)| \over ||\boldsymbol{\sigma}(x)|| \cdot ||\boldsymbol{\tau}(x)||} \end{array}$$

    where \(\boldsymbol {\sigma } = \sqrt {\eta } \boldsymbol {\tau }^{*1},\ \boldsymbol {\tau } = \sqrt {1-\eta } \boldsymbol {\tau }^{*2}\). Find

    $$\hat{\varphi} = -\arctan \left( {\xi \sin 2\alpha \over 1+ \xi \cos 2\alpha} \right), \qquad \stackrel{*}{\varphi} = {1\over2} (\pi - \hat{\varphi})$$

    for selected xΩ. The optimal eigenstates are determined by

    $$\begin{array}{@{}rcl@{}} \boldsymbol{\omega}^{*}_{1} & = & \left( - {\cos \varphi^{*} \over \sin \alpha} \right) {\text{sign} (\boldsymbol{\sigma} \cdot \boldsymbol{\tau}) \over ||\boldsymbol{\tau}||} \boldsymbol{\tau} + {\cos (\varphi^{*} -\alpha) \over \sin \alpha} \cdot {\boldsymbol{\sigma} \over ||\boldsymbol{\sigma}||} \\[-1pt] \mbox{} \notag\\[-7pt] \boldsymbol{\omega}^{*}_{2} & = & \left( {\sin \varphi^{*} \over \sin \alpha} \right) {\text{sign} (\boldsymbol{\sigma} \cdot \boldsymbol{\tau}) \over ||\boldsymbol{\tau}||} \boldsymbol{\tau} + {\sin (\alpha -\varphi^{*}) \over \sin \alpha} \cdot {\boldsymbol{\sigma} \over ||\boldsymbol{\sigma}||}. \notag\\ \end{array}$$
  • Step 4   Compute the components of the optimal Hooke tensor by

    $$C^{*}_{ijkl} = \sum\limits_{K=1}^{2} \lambda^{*}_{K} (\boldsymbol{\omega}^{*}_K)_{ij} (\boldsymbol{\omega}^{*}_K)_{kl}.$$
  • Step 5   The optimal compliance is given by

    $$J_{\eta} = {1\over E_{o} |\Omega|} (Z_{\eta})^2.$$

    Step 1 exceeds the framework of the conventional finite element method, since the integrand in (67) is of linear growth. Consequently, no constitutive equations are associated with this problem and in the discretized setting no stiffness matrix arises. To solve the problem (67) one should develop a new numerical scheme, which will be constructed in Section 4. Note, that for η = 0 and η = 1 the problem (63) corresponds to a single load case, see problem (50).

    The problem dual to (63) is a special case of (48). It has the form

    $$\begin{array}{@{}rcl@{}} & & Z_{\eta} = \max\limits_{\boldsymbol{v}^{\alpha} \in V(\Omega)} \left\{ \left. \int_{\Gamma_{1}} \left( \sqrt{\eta} \boldsymbol{T}^{1} \cdot \boldsymbol{v}^{1} + \sqrt{1-\eta} \boldsymbol{T}^{2}\cdot \boldsymbol{v}^{2} \right) d\Gamma\ \right|\right. \\ & & \left. {{\int_{\Omega}}}\mbox{}\qquad ( \boldsymbol{\varepsilon} \left( \boldsymbol{v}^{1}(x) ),\ \boldsymbol{\varepsilon}( \boldsymbol{v}^{2}(x) ) \right) \in B \ \mbox{a.e. in}\ \Omega \right\} \end{array}$$

    where the locking locus is the ball:

    $$B = \left\{ \left. (\boldsymbol{\varepsilon},\ \varkappa) \in \mathbb{E}_{s}^{2} \times \mathbb{E}_{s}^{2}\ \right|\ |||(\boldsymbol{\varepsilon},\ \varkappa) |||^{*} \leqslant 1 \right\}$$

    defined by the norm

    $$||| (\boldsymbol{\varepsilon},\ \varkappa) |||^* = \max_{\begin{array}{c}{}_{\boldsymbol{\sigma},\ \boldsymbol{\tau} \in \mathbb{E}_s^2} \\[1pt]{}^{\boldsymbol{\sigma} \not= \boldsymbol{0}} \\[-4pt]{}^{\boldsymbol{\tau} \not= \boldsymbol{0}}\end{array}}{| \boldsymbol{\varepsilon} \cdot \boldsymbol{\sigma} + \varkappa \cdot \boldsymbol{\tau}| \over ||| (\boldsymbol{\sigma},\ \boldsymbol{\tau}) |||}$$

    with \(|||(\boldsymbol {\sigma },\ \boldsymbol {\tau })|||\) given by (66).

Three and more load conditions

In case of n = 3 and d = 2 the matrix \(\boldsymbol {S}_{\eta }\), see (67), is a square 3 × 3 matrix; here n = m = 3. In case of n = 6 and d = 3 the matrix \(\boldsymbol {S}_{\eta }\) is a square 6 × 6 matrix. In these two cases all optimal Kelvin moduli attain positive values and the optimal tensor \(\boldsymbol {C}^{*}\) becomes non-singular. Let us conclude:

  1. a)

    d = 2. If tensor \(\boldsymbol {C}^{*}\) is nonsingular then n ≥ 3

  2. b)

    d = 3. If tensor \(\boldsymbol {C}^{*}\) is nonsingular then \(n \geqslant 6\)

Therefore, to make \(\boldsymbol {C}^{*}\) nonsingular, the number of the load conditions should be equal to (or bigger than) the number of stress (or strain) components.

Numerical treatment of the FMD problem in its stress-based setting. The case of two load condition

The stress-based FMD problem (67) for two load cases, with the trace constraint, or the problem:

$$\begin{array}{@{}rcl@{}} & & Z_{\eta} = \min \\ & & \left\{ \left. \int_{\Omega} \sqrt{ ||\boldsymbol{\sigma}||^{2} + ||\boldsymbol{\tau}||^{2} + 2\sqrt{||\boldsymbol{\sigma}||^{2} ||\boldsymbol{\tau}||^{2} -(\boldsymbol{\sigma}\cdot \boldsymbol{\tau})^{2}} } dx\ \right| \right. \\ & & \left. {{\int_{\Omega}}}\mbox{}\quad \boldsymbol{\sigma} = \sqrt{\eta} \stackrel{1}{\boldsymbol{\tau}},\ \boldsymbol{\tau} = \sqrt{1-\eta} \stackrel{2}{\boldsymbol{\tau}}, \ \stackrel{\alpha}{\boldsymbol{\tau}} \in \Sigma_{\alpha} (\Omega) \right\}, \end{array}$$

will be solved numerically for some selected 2D problems with using the newly developed scheme of construction of statically admissible stress fields defined element-wise, along with the optimizer solving the minimization problem. The numerical approach starts from division of the design domain Ω into 4-node, quadrilateral, isoparametric finite elements with bilinear shape functions interpolating the eight stress fields \(\stackrel {\alpha }{\tau }_{11},\ \stackrel {\alpha }{\tau }_{22},\ \stackrel {\alpha }{\tau }_{12},\ \stackrel {\alpha }{\tau }_{21}\) \((\alpha = 1,\ 2)\)

$$\begin{array}{rcl}\stackrel{\alpha}{\tau}_{11} (\xi,\ \zeta) & = & N_0 (\xi,\ \zeta) \stackrel{\alpha}{t}_0 + N_1 (\xi,\ \zeta) \stackrel{\alpha}{t}_3 + {} \\[4pt]& & {} + N_2 (\xi,\ \zeta) \stackrel{\alpha}{t}_6 + N_3 (\xi,\ \zeta) \stackrel{\alpha}{t}_9 \\[6pt]\stackrel{\alpha}{\tau}_{22} (\xi,\ \zeta) & = & N_0 (\xi,\ \zeta) \stackrel{\alpha}{t}_1 + N_1 (\xi,\ \zeta) \stackrel{\alpha}{t}_4 + {} \\[4pt]& & {} + N_2 (\xi,\ \zeta) \stackrel{\alpha}{t}_7 + N_3 (\xi,\ \zeta) \stackrel{\alpha}{t}_{10} \\[6pt]\stackrel{\alpha}{\tau}_{12} (\xi,\ \zeta) & = & N_0 (\xi,\ \zeta) \stackrel{\alpha}{t}_2 + N_1 (\xi,\ \zeta) \stackrel{\alpha}{t}_5 + {} \\[4pt]& & {} + N_2 (\xi,\ \zeta) \stackrel{\alpha}{t}_8 + N_3 (\xi,\ \zeta) \stackrel{\alpha}{t}_{11} \\[6pt]\stackrel{\alpha}{\tau}_{21} (\xi,\ \zeta) & = & \stackrel{\alpha}{\tau}_{12} (\xi,\ \zeta)\end{array}$$

within an e-th finite element \(\Omega ^{e}\). Here ξ, ζ parameterize the master element \(\omega = [-1,\ 1] \times [-1,\ 1]\) and \(\stackrel {\alpha }{t}_{3i+0}\), \(\stackrel {\alpha }{t}_{3i+1}\), \(\stackrel {\alpha }{t}_{3i+2}\) i = 0, 1, 2, 3) are the unknown nodal stresses \(\stackrel {\alpha }{\tau }_{11}\), \(\stackrel {\alpha }{\tau }_{22}\), \(\stackrel {\alpha }{\tau }_{12}\) at the vertices 0, 1, 2, 3 respectively see Fig. 1.

Fig. 1
figure 1

Mapping of the master element ω onto e-th finite element \(\Omega ^{e}\)

The shape functions N 0, N 1, N 2, N 3 are bilinear, of the form \( {1\over 4}(1\pm \xi )(1\pm \zeta )\). The conditions \(\boldsymbol {\tau }^{\alpha } \in \Sigma _{\alpha } (\Omega )\) mean that the following variational equations

$$\int_{\Omega} \stackrel{\alpha}{\boldsymbol{\tau}} \cdot \nabla \boldsymbol{v} dx = \int_{\Gamma_{1}} \stackrel{\alpha}{\boldsymbol{T}} \cdot \boldsymbol{v} ds \quad (\alpha = 1,\ 2)$$

are fulfilled for all the kinematically admissible test fields \(\boldsymbol {v} = (v_{1},\ v_2)\). These test fields will be interpolated within an e-th element \(\Omega ^{e}\) similarly as the stress field, or

$$v_{k} (\xi,\ \zeta) = \sum\limits_{i=0}^{3} N_{i} (\xi,\ \zeta) p_{2i+k-1} \quad (k=1,\ 2)$$

where \(p_{2i+0},\ p_{2i+1}\) \((i=0,\ 1,\ 2,\ 3)\) are the unknown nodal virtual displacements v 1, v 2 at the vertices 0, 1, 2, 3 respectively. Substitution of (74), (76) into the variational equations (75) results in two systems of linear equations

$$\boldsymbol{B} \boldsymbol{\Xi} = \stackrel{\alpha}{\boldsymbol{\Theta}}, \qquad \alpha = 1,\ 2$$

representing the equilibrium conditions for two kinds of tractions \(\stackrel {\alpha }{\boldsymbol {T}}\). In (77), \(\boldsymbol {B} \in \mathbb{M}_{m_{o}\times n_{s}}\) is the rectangular \(m_{o} \times n_{s}\) statics matrix, \(\stackrel {\alpha }{\boldsymbol {\Theta }} \in \mathbb{R}^{m_{o}}\), \(\alpha = 1,\ 2\) are the two vectors of nodal forces for two kinds of tractions \(\stackrel {\alpha }{\boldsymbol {T}}\), \(\boldsymbol {\Xi } = (\Xi _j) \in \mathbb{R}^{n_{s}}\) is the vector of the unknown nodal parameters \(\stackrel {\alpha }{t}_{j}\) (in global notation) defining the stress fields (74). Number \(m_{o}\) of rows and number \(n_{s}\) of columns (unknown nodal parameters \(\stackrel {\alpha }{t}_{j}\) in global notation) in the matrix \(\boldsymbol {B}\) are in 2D case equal to \(2 n_{o}\) and \(3 n_{o}\) respectively, where \(n_{o}\) denotes the number of all nodes in the global finite element mesh.

In the next step we perform the partition of the rectangular matrix \(\boldsymbol {B}\) and each vector \(\stackrel {\alpha }{\boldsymbol {\Theta }} (\alpha =1,\ 2)\) into two matrices: upper \(\boldsymbol {B}^{u} \in \mathbb{M}_{m_{s}\times n_{s}}\), lower \(\boldsymbol {B}^{l} \in \mathbb{M}_{(m_0-m_s) \times n_{s}}\) and two vectors \(\stackrel {\alpha }{\boldsymbol {\Theta }}{}^{u} \in \mathbb{R}^{m_{s}}\), \(\stackrel {\alpha }{\boldsymbol {\Theta }}{}^{l} \in \mathbb{R}^{m_o-m_{s}}\), respectively. The first \(m_{s}\) indices of the rows in the upper matrix \(\boldsymbol {B}^{u}\) correspond to the indices defining the global, unknown, free degrees of freedom and the remaining \(m_{o} - m_{s}\) indices of the rows in lower matrix \(\boldsymbol {B}^{l}\) correspond to the indices of the global, known, constrained degrees of freedom due to boundary conditions. All components of the vectors \(\stackrel {\alpha }{\boldsymbol {\Theta }}{}^{u}\) are known and the vectors \(\stackrel {\alpha }{\boldsymbol {\Theta }}{}^{l}\) of the unknown boundary reactions can be calculated from the relations \(\stackrel {\alpha }{\boldsymbol {\Theta }}{}^{l} = \boldsymbol {B}^{l} \stackrel {\alpha }{\boldsymbol {\Xi }}\) upon finding the two vectors \(\stackrel {\alpha }{\boldsymbol {\Xi }}\) from the two systems of rectangular linear equations \(\boldsymbol {B}^{u} \boldsymbol {\Xi } = {\stackrel {\alpha }{\boldsymbol {\Theta }}}{}^{u}\), \(\alpha = 1,\ 2\). The two sets \(\stackrel {\alpha }{\mathcal {J}}\), \(\alpha = 1,\ 2\) of all solutions of the two systems of equations

$$\boldsymbol{B}^{u} \boldsymbol{\Xi} = \stackrel{\alpha}{\boldsymbol{\Theta}}{}^{u} \quad (\alpha = 1,\ 2)$$

can be expressed as

$$\begin{array}{@{}rcl@{}} \stackrel{\alpha}{\mathcal{J}} & = & \left\{ \left. \stackrel{\alpha}{\boldsymbol{\Xi}} = \stackrel{\alpha}{\boldsymbol{\Xi}} \left( \stackrel{\alpha}{\beta}_{1},\ \ldots,\ \stackrel{\alpha}{\beta}_{s} \right) \in \mathbb{R}^{n_{s}}\ \right| \right. \\ & & \left. \stackrel{\alpha}{\boldsymbol{\Xi}} = \stackrel{\alpha}{\boldsymbol{\Xi}}{}^{*} + \sum\limits_{k=1}^{s} \stackrel{\alpha}{\beta}_{k} \boldsymbol{b}_{k}, \quad \stackrel{\alpha}{\beta}_{k} \in \mathbb{R} \right\}, \quad \alpha = 1,\ 2 \end{array}$$


$$\boldsymbol{b}_k = \left[ \begin{array}{c}b_{k_1} \\\cdots \\ b_{k_{n_s}}\end{array} \right] \in \mathbb{R}^{n_s},\quad k= 1,\ 2,\ \ldots,\ s$$

are the vectors that span the s-dimensional kernel of the matrix \(\boldsymbol {B}^{u}\) and

$$\stackrel{\alpha}{\boldsymbol{\Xi}}{}\!^* = \left[ \begin{array}{c}\stackrel{\alpha}{\Xi}{}\!_1^* \\\cdots\\\stackrel{\alpha}{\Xi}{}\!^*_{n_s}\end{array} \right] \in \mathbb{R}^{n_s}$$

are the arbitrary, fundamental solutions of the two sets of linear equations (78). The representations (79) can be performed with using e.g. the singular value decomposition algorithm (SVD) and just this method has been applied in the present paper. The short description of the SVD algorithm has been outlined in Czarnecki and Lewiński (2012). Let us mention that the QR decomposition of the matrix makes it possible to find the representation (79) more effectively than the SVD decomposition, due to a smaller computational complexity. Yet the Gaussian elimination as well as the LU decomposition methods fail to give satisfactory results for bigger systems of rectangular linear equations. Upon constructing the two solutions

$$\stackrel{\alpha}{\boldsymbol{\Xi}} = \left[ \begin{array}{c}\stackrel{\alpha}{\Xi}_1 \\\cdots\\\stackrel{\alpha}{\Xi}_{n_s}\end{array} \right] \in \mathbb{R}^{n_s}$$

of the two linear, rectangular algebraic systems (78), we obtain in each e-th finite element \(\Omega ^{e}\) the approximations \(\tilde {\Sigma }_{\alpha }(\Omega ^e)\) of the two statically admissible sets of the stress fields \(\Sigma _{\alpha }(\Omega ^e)\), each determined by s global parameters \(\stackrel {\alpha }{\beta }_{k} \in \mathbb{R}\)

$$\begin{array}{@{}rcl@{}}& & \tilde{\Sigma}_{\alpha}(\Omega^e) = \tilde{\Sigma}_{\alpha} \left( \boldsymbol{\varsigma},\ \stackrel{\alpha}{\beta}_1,\ \ldots ,\ \stackrel{\alpha}{\beta}_s \right)\\&& = \left\{\stackrel{\alpha}{\boldsymbol{\tau}} = \stackrel{\alpha}{\boldsymbol{\tau}}\left( \boldsymbol{\varsigma},\ \stackrel{\alpha}{\beta}_1,\ \ldots ,\ \stackrel{\alpha}{\beta}_s \right) \right.\\&& \left.= \left[\begin{array}{ll} \stackrel{\alpha}{\tau}_{11}{\kern-4pt}\left({\kern-2pt}\boldsymbol{\varsigma},{\kern-4pt}\ \stackrel{\alpha}{\beta}_1,{\kern-4pt}\ \ldots ,\ \stackrel{\alpha}{\beta}_s{\kern-4pt}\right){\kern-4pt} & \stackrel{\alpha}{\tau}_{12}{\kern-4pt}\left({\kern-2pt} \boldsymbol{\varsigma},{\kern-4pt}\ \stackrel{\alpha}{\beta}_1,{\kern-2pt}\ \ldots ,\ \stackrel{\alpha}{\beta}_s{\kern-4pt} \right) \\\stackrel{\alpha}{\tau}_{21}{\kern-4pt}\left({\kern-2pt} \boldsymbol{\varsigma},{\kern-4pt}\ \stackrel{\alpha}{\beta}_1,{\kern-2pt}\ \ldots ,\ \stackrel{\alpha}{\beta}_s{\kern-4pt}\right){\kern-2pt} & \stackrel{\alpha}{\tau}_{22}{\kern-4pt}\left({\kern-2pt} \boldsymbol{\varsigma},{\kern-4pt}\ \stackrel{\alpha}{\beta}_1,{\kern-2pt}\ \ldots ,\ \stackrel{\alpha}{\beta}_s {\kern-4pt}\right)\end{array}\right]{\kern-4pt} \in{\kern-1pt} \mathbb{M}_{2\times 2}{\kern-2pt} \right\}{\kern-3pt},\\& & \mbox{}\qquad\qquad \boldsymbol{\varsigma} = (\xi,\ \zeta) \in \omega\end{array}$$


$$\begin{array}{rcl} \stackrel{\alpha}{\tau}_{11} & = & \displaystyle N_0 \stackrel{\alpha}{t}{}\!^*_0 + N_1 \stackrel{\alpha}{t}{}\!^*_3 + N_2 \stackrel{\alpha}{t}{}\!^*_6 + N_3 \stackrel{\alpha}{t}{}\!^*_9 \\[12pt]& & + \sum\limits_{k=1}^s \stackrel{\alpha}{\beta}_k N_0 b_{k_{I_0}} +\sum\limits_{k=1}^s \stackrel{\alpha}{\beta}_k N_1 b_{k_{I_3}} \\[12pt]& & + \sum\limits_{k=1}^s \stackrel{\alpha}{\beta}_k N_2 b_{k_{I_6}} +\sum\limits_{k=1}^s \stackrel{\alpha}{\beta}_k N_3 b_{k_{I_9}} \\[16pt]\end{array}$$

and the formulae for \(\stackrel {\alpha }{\tau }_{22}\), \(\stackrel {\alpha }{\tau }_{12} = \stackrel {\alpha }{\tau }_{21}\) can be found by an appropriate change of indices.

The numbering of indices j in \(\stackrel {\alpha }{t}{}_{j}^{*}\) and \(I_{j}\) in \(b_{k_{I_{j}}}\) \((j=0,\ 1,\ \ldots ,\ 11)\) is written in the local (element) notation and depends on the global allocation matrix.

Recall that the integrand of (73) is a norm in \(\mathbb{R}^{6}\), hence is convex.

The problem (73) is now approximated by the following unconstrained minimization problem

$$\begin{array}{@{}rcl@{}} \tilde{Z}_{\eta} & = & \min \left\{ \left. \int_{\Omega} \left|\left|\left| \left( \sqrt{\eta} \stackrel{1}{\boldsymbol{\tau}},\ \sqrt{1-\eta} \stackrel{2}{\boldsymbol{\tau}} \right) \right|\right|\right| dx\ \right| \right. \nonumber \\& & \mbox{}\qquad \left. \stackrel{\alpha}{\boldsymbol{\tau}} \in \hat{\Sigma}_{\alpha} (\stackrel{\alpha}{\beta}_1,\ \ldots,\ \stackrel{\alpha}{\beta}_s ) \right\} \label{n4.17} \end{array}$$

where \( \hat {\Sigma }_{\alpha } = \hat {\Sigma }_{\alpha } \left (\stackrel {\alpha }{\beta }_{1},\ \ldots ,\ \stackrel {\alpha }{\beta }_{s} \right )\) denote the sets of approximants of the statically admissible stress fields \(\Sigma _{\alpha } = \Sigma _{\alpha } (\Omega )\), \(\alpha = 1,\ 2\). The arguments of (85) are expressed by the components \(\beta _{i}\), \(i=1,\ 2,\ \ldots ,\ S\) of the global vector of design parameters

$$\begin{array}{@{}rcl@{}} & & \boldsymbol{\beta} = (\beta_i) {} = \left[ \stackrel{1}{\beta}_{1},\ \ldots,\ \stackrel{1}{\beta}_{s},\ \stackrel{2}{\beta}_{1},\ \ldots,\ \stackrel{2}{\beta}_{s} \right]^{T} \in \mathbb{R}^{S}, \, S = 2s.\\ \end{array}$$

The partial derivatives of the integrand \(\Pi = ||| (\sqrt {\eta } \boldsymbol {\tau }^{1},\ \sqrt {1-\eta } \boldsymbol {\tau }^{2} |||\) with respect to \(\beta _{i}\), \(i=1,\ 2,\ \ldots ,\ S\) are computed by the rules

$$\begin{array}{@{}rcl@{}} {\partial \Pi \over \partial \stackrel{\alpha}{\beta}_i} & = & {\partial\Pi \over \partial \stackrel{1}{\tau}_{11}} {\partial \stackrel{1}{\tau}_{11} \over \partial \stackrel{\alpha}{\beta}_i} + {\partial\Pi \over \partial \stackrel{1}{\tau}_{22}} {\partial \stackrel{1}{\tau}_{22} \over \partial \stackrel{\alpha}{\beta}_i} + {\partial\Pi \over \partial \stackrel{1}{\tau}_{12}} {\partial \stackrel{1}{\tau}_{12} \over \partial \stackrel{\alpha}{\beta}_i}\\[2pt]& & {} + \underline{{\partial\Pi \over \partial \stackrel{2}{\tau}_{11}} {\partial \stackrel{2}{\tau}_{11} \over \partial \stackrel{\alpha}{\beta}_i} + {\partial\Pi \over \partial \stackrel{2}{\tau}_{22}} {\partial \stackrel{2}{\tau}_{22} \over \partial \stackrel{\alpha}{\beta}_i} + {\partial\Pi \over \partial \stackrel{2}{\tau}_{12}} {\partial \stackrel{2}{\tau}_{12} \over \partial \stackrel{\alpha}{\beta}_i} } {}\\& & \qquad {\alpha = 1,\ 2,\quad i=1,\ 2,\ \ldots,\ s}\end{array}$$

where partial derivatives \( {\partial \Pi \over \partial \stackrel {\alpha }{\tau }_{ij}}\) can be easily programmed and analytically calculated by any Symbolic Computation System such as e.g. Maple. On the other hand, the partial derivatives \( {\partial \stackrel {\alpha }{\tau }_{kl} \over \partial \stackrel {\alpha }{\beta }_{i}}\) are expressed by

$$\begin{array}{l}{\partial\stackrel{\alpha}{\tau}_{11}\over\partial\stackrel{\alpha}{\beta}_i} = N_0 b_{i_{I_0}} + N_1 b_{i_{I_3}} + N_2 b_{i_{I_6}} + N_3 b_{i_{I_9}} \\[14pt]{\partial\stackrel{\alpha}{\tau}_{22}\over\partial\stackrel{\alpha}{\beta}_i} = N_0 b_{i_{I_1}} + N_1 b_{i_{I_4}} + N_2 b_{i_{I_7}} + N_3 b_{i_{I_{10}}} \\[14pt]\displaystyle {\partial\stackrel{\alpha}{\tau}_{12}\over\partial\stackrel{\alpha}{\beta}_i} = N_0 b_{i_{I_2}} + N_1 b_{i_{I_5}} + N_2 b_{i_{I_8}} + N_3 b_{i_{I_{11}}}\end{array}.$$

The partial derivatives \( {\partial \stackrel {1}{\tau }_{kl} \over \partial \stackrel {2}{\beta }_{i}}\), \( {\partial \stackrel {2}{\tau }_{kl} \over \partial \stackrel {1}{\beta }_{i}}\) appearing in the underlined sums in (87) are equal to 0.Finally, the problem (85) is now reformulated to the fully algebraic, finite dimensional and unconstrained problem of nonlinear mathematical programming

$$\begin{array}{@{}rcl@{}} & &{\kern-5pt} \tilde{Z}_{\eta} = \min\limits_{(\beta_1, \beta_2, \ldots, \beta_S) \in R^S}\\& &{\kern-5pt} \sum\limits_{e} \sum\limits_{\boldsymbol{\varsigma}^{Q} \in \omega} w(\boldsymbol{\varsigma}^Q) \Pi ( \boldsymbol{\varsigma}^Q,\, \eta,\, \beta_1,\, \beta_2,\, \ldots,\, \beta_S) \left| \det \nabla x(\boldsymbol{\varsigma}^Q) \right| \end{array}$$

where \(w = w(\boldsymbol {\varsigma }^Q)\) and \(\det \nabla x(\boldsymbol {\varsigma }^Q)\) are the weights and the determinants of the Jacobian matrix of the transformation (from the reference to the given finite element) calculated at the Gauss integration points \(\boldsymbol {\varsigma }^{Q} = (\xi ^{Q},\ \zeta ^Q) \in \omega \), respectively.

We implement the well known assembly technique from the classical FEM: the formulae (87) for partial derivatives of the function

$$\begin{array}{@{}rcl@{}} \Pi & = & \left|\left|\left| \left( \sqrt{\eta} \stackrel{1}{\boldsymbol{\tau}} (\boldsymbol{\varsigma}),\ \sqrt{1-\eta} \stackrel{2}{\boldsymbol{\tau}} (\boldsymbol{\varsigma}) \right) \right|\right|\right| \\ & = & \Pi (\boldsymbol{\varsigma},\ \eta,\ \beta_{1},\ \beta_{2},\ \ldots,\ \beta_S) \end{array}$$

at arbitrary, but fixed point \(\boldsymbol {\varsigma } = (\xi ,\ \zeta ) \in \omega \) make it possible to calculate all components of the gradient

$$\begin{array}{@{}rcl@{}}{\mathrm{grad}\,} \tilde{\Pi} & = & {\mathrm{grad}\,} \tilde{\Pi} (\beta_1,\ \ldots,\ \beta_S)\\& = & \left[ {\partial \tilde{\Pi} \over \partial \beta_1} \ \ldots\ {\partial \tilde{\Pi} \over \partial \beta_S} \right]^T \in \mathbb{R}^S \end{array}$$

of the objective function

$$\begin{array}{@{}rcl@{}} & &{\kern-8pt} (\beta_1,\ \beta_2,\ \ldots,\ \beta_S) \rightarrow \tilde{\Pi} (\beta_1,\ \beta_2,\ \ldots,\ \beta_S)\\& &{\kern-8pt} {} =\sum\limits_e \sum\limits_{\boldsymbol{\varsigma}^{Q} \in \omega} w(\boldsymbol{\varsigma}^Q) \Pi (\boldsymbol{\varsigma}^Q,\ \eta,\ \beta_1,\ \ldots,\ \beta_S) \left| \det \nabla x(\boldsymbol{\varsigma}^Q) \right| .\end{array}$$

The algorithm

Assume that coefficient η is given. The computational procedure consists of the following steps

  • Step 1.   Set the two rectangular systems of linear algebraic equations (77) or \(\boldsymbol {B} \boldsymbol {\Xi } = \stackrel {\alpha }{\boldsymbol {\Theta }}\), \(\alpha = 1,\ 2\), in accordance with FEM.

  • Step 2.   Separate upper sub-matrix \(\boldsymbol {B}^{u}\) and two upper, sub-vectors \(\stackrel {\alpha }{\boldsymbol {\Theta }}{}^{u}\), \(\alpha =1,\ 2\) corresponding to the unknown degrees of freedom of the FEM.

  • Step 3.   Parameterize the sets (83), i.e. find the two solutions \( \stackrel {\alpha }{\boldsymbol {\Xi }} = \stackrel {\alpha }{\boldsymbol {\Xi }}{}^{*} + \sum\limits_{k=1}^{s} \stackrel {\alpha }{\beta }_{k} \boldsymbol {b}_{k}\), \(\alpha =1,\ 2\) of the two rectangular systems of linear algebraic equations \(\boldsymbol {B}^{u} \boldsymbol {\Xi } = \stackrel {\alpha }{\boldsymbol {\Theta }}{}^{u}\), \(\alpha = 1,\ 2\).

  • Step 4.   Apply any algorithm of the nonlinear mathematical programming (e.g. Broyden–Fletscher–Goldfarb–Shanno (BFGS) algorithm) to find the minimizer \(\boldsymbol {\beta } = [\beta _{1},\ \beta _{2},\ \ldots ,\ \beta _{S}]^{T}\) of the function (90).

  • Step 5.   In accordance with the formulae (84), find the all components \(\stackrel {\alpha }{\sigma }_{11}\), \(\stackrel {\alpha }{\sigma }_{22}\), \(\stackrel {\alpha }{\sigma }_{12}\) of the optimal stress tensors \(\stackrel {\alpha }{\boldsymbol {\sigma }}\) defined by the optimal solution \(\stackrel {\alpha }{\beta }_{1},\ \ldots ,\ \stackrel {\alpha }{\beta }_{s}\), \(\alpha = 1,\ 2\) found in step 4.

  • Step 6.   In accordance with the formulae (39), (64)–(67) find the distribution of λ 1, λ 2, \(\boldsymbol {\omega }_{1}\), \(\boldsymbol {\omega }_{2}\), and optimal moduli \(C_{ijkl}\) by (68).

Case studies

The aim of this section is to show the optimal layouts of Kelvin moduli λ 1, λ 2 and elastic moduli \(C_{ijkl}\) within rectangular plates of various kinematic boundary conditions subject to two kinds of in-plane surface loads \(\stackrel {\alpha }{\boldsymbol {T}}\), \(\alpha = 1,\ 2\) that are non-simultaneously applied at \(\Gamma _{1}\) and contribute to the functional (12) with weight factors \(\eta _{1} = \eta \) and \(\eta _{2} = 1-\eta \), respectively for \(\eta \in [0,\ 1]\). The examples concern \(n_{x}\times n_{y}\) a rectangular plate of length \(L_{x} = 2.0\) [m] and height \(L_{y} = 1.0\) [m] (see Fig. 2). The finite element mesh is defined by \(n_{x} \times n_{y} = 40 \times 20 = 800\) quadrilateral modules. The total number of nodes \(n_{o} = (n_{x} +1)(n_y+1) = 861\), which gives the total number of the columns (total number of the unknown nodal stress parameters) and rows (total number of the degrees of freedom) in matrix \(\boldsymbol {B}\) equal to \(n_s=3n_{o} = 2583\) and \(m_o=2n_{o} = 1722\), respectively. The 9- and 3-points Hammer – Stroud rules of the Gauss integration for the two-dimensional element and one-dimensional segment are adopted, respectively.

Fig. 2
figure 2

The body Ω – rectangular plate \(L_{x} \times L_{y}\), FEM mesh

The tractions \(\stackrel {\alpha }{\boldsymbol {T}} = \stackrel {\alpha }{\boldsymbol {T}} (\zeta ) = \stackrel {\alpha }{T}_{i} (\zeta ) \boldsymbol {e}_{i}\), \(\zeta \in \Gamma _{1}\) are modeled by the weight function

$$\begin{array}{@{}rcl@{}} \forall \zeta \in \Gamma_{1} & & \stackrel{\alpha}{T}_{i} = \stackrel{\alpha}{T}_{i} (\zeta) = T_{\max} e^{-( {\zeta - \zeta_{0} \over w})^{2}}\\& & (i=1,\ 2) \end{array}$$

where \( \zeta _{0} = {L_{x} \over 2}\) or \( \zeta _{0} = {L_{y} \over 2}\). The values \(T_{\max }\), w are assumed to be equal \(T_{\max } = 0.0376\), \(w = 0.15\), respectively, so all integrals \( \int _{\Gamma _{1}} \stackrel {\alpha }{T}_{i} ds\) \((\alpha ,\ i=1,\ 2)\) are then equal to \(0.1\) (emulation of the unit forces). In all examples we have assumed that \(E_{0} = 1.0\) [N/m\(^{2}\)], see (15).

Example 1

Consider the plate supported at four non-sliding supports at its corners, subject either to a vertical load \(\stackrel {1}{\boldsymbol {T}} = \stackrel {1}{T}_{2}\boldsymbol {e}_{2}\) at its bottom edge or to the vertical load \(\stackrel {2}{\boldsymbol {T}} = \stackrel {2}{T}_{2}\boldsymbol {e}_{2}\), \(\stackrel {2}{T}_{2} = -\stackrel {1}{T}_{2}\) at its top edge, see Figs. 3, cf. Hörnlein et al. (2001). Distribution of the values of the optimal Kelvin moduli λ 1, λ 2 \((\lambda _{1} \geqslant \lambda _2)\) depends on the η parameter, see Figs. 45, and 6. We consider three values of the weighting factor η: η = 0.9, η = 0.5 and η = 0.1. We note that the layouts depend heavily on the parameter η. It is worth to note that the modulus λ 1 (with the layouts of ”\(\vee \)” or/and ,,\(\wedge \)” shapes) assumes extremal values in the zone near the applied forces and supports. The modulus λ 2 (of ,,\(|\)” shape) assumes extremal values only in the zone near the applied forces.

Fig. 3
figure 3

Problem of Example 1

Fig. 4
figure 4

Solution of Example 1. Distribution of the optimal λ 1, λ 2 for η = 0.9 (scatter layout in Reverse Gray scale on left and contour layout in ChromaDepth scale on right)

Fig. 5
figure 5

Solution of Example 1. Distribution of the optimal λ 1, λ 2 for η = 0.5 (scatter layout in Reverse Gray scale on left and contour layout in ChromaDepth scale on right)

Fig. 6
figure 6

Solution of Example 1. Distribution of the optimal λ 1, λ 2 for η = 0.1 (scatter layout in Reverse Gray scale on left and contour layout in ChromaDepth scale on right)

The problem considered here has been previously discussed in Hörnlein et al. (2001). The result in Fig. 8 of Hörnlein et al. (2001) shows the layout of \({\text {tr}\,} \boldsymbol {C}\) (which equals to λ 1 + λ 2) for the case of η = 0.5. This result looks the same as the diagram of λ 1 shown in Fig. 5 because λ 2 is much smaller than λ 1 and that is why the plot of λ 1 + λ 2 has not been displayed. Let us note that neither the paper referred to above nor other hitherto published papers on FMD have presented the optimal distribution of the Kelvin moduli independently.

Example 2

Consider three plates supported at two non-sliding supports at their bottom corners. First plate (see Fig. 7a) is subject either to a horizontal load \(\stackrel {1}{\boldsymbol {T}} = \stackrel {1}{T}_{1} \boldsymbol {e}_{1}\) at its bottom edge and to \(\stackrel {1}{\boldsymbol {T}} = -\stackrel {1}{T}_{1} \boldsymbol {e}_{1}\) at its upper edge or to the vertical loads \(\stackrel {2}{\boldsymbol {T}} = \stackrel {2}{T}_{2} \boldsymbol {e}_{2}\) at its bottom and top edges. Second plate (see Fig. 7b) is subject either to a load \(\stackrel {1}{\boldsymbol {T}} = \stackrel {1}{T}_{1} \boldsymbol {e}_{1} + \stackrel {1}{T}_{2} \boldsymbol {e}_{2}\) at its bottom edge or to a load \(\stackrel {2}{\boldsymbol {T}} = -\stackrel {2}{T}_{1} \boldsymbol {e}_{1} + \stackrel {2}{T}_{2} \boldsymbol {e}_{2}\) at its upper edge. Distribution of the values of the optimal Kelvin moduli λ 1, λ 2 \((\lambda _{1} \geqslant \lambda _2)\) and optimal components \(C_{ijkl}\) referred to the \((x_{1},\ x_2)\) coordinate system depend on the η parameter, see Figs. 89 and 10. We consider three values of the weighting factor η: η = 0.9, η = 0.1 and η = 0.5. The third plate (Fig. 7c) is subject simultaneously to a load \(T\boldsymbol {e}_{1} + T \boldsymbol {e}_{2}\) at its bottom edge and to a load \(-T \boldsymbol {e}_{1} + T \boldsymbol {e}_{2}\) at its upper edge, where the function \(T = T(\zeta )\) has the form (91). For this single load condition, optimal layout of the one Kelvin modulus \(\tilde {\lambda }_{1}\) and components \(\tilde {C}_{ijkl}\) of the Hooke tensor are found on the basis of the algorithm presented in Czarnecki and Lewiński (2012) (see Section 3.2). If we e.g. assume that η = 0.5 for the two first plates, it may be interesting to compare the optimal results found for these three cases of loadings and notice that the result of the simultaneous vector minimization of the two independent compliances corresponding to the two independent loadings that was transformed into a problem of scalar-valued minimization of the weighted sum (12) of the two compliances (scalarization of the vector-valued objective function), significantly differs from the minimization of the one, scalar-valued compliance corresponding to the weighted sum of the two loadings with the same value of the parameter η. The last approach could be interpreted as an alternative and a significantly simplified way of finding the optimal layouts in the case of two independent loadings. The optimal values of the objective function (35) are the following:

\(J_{\eta =0.9} = 0.0379\), \(J_{\eta =0.1} = 0.0783\), \(J_{\eta =0.5}=0.0636\) in Example 2a

\(J_{\eta =0.9} = 0.1365\), \(J_{\eta =0.1} = 0.1370\), \(J_{\eta =0.5} = 0.1613\) in Example 2b \(\tilde {J} = 0.0215\) in Example 2c

Fig. 7
figure 7

Formulation of the Examples: 2a, 2b, 2c

Fig. 8
figure 8

Solution of Examples 2a, 2b. Distribution of the optimal xλ 1, λ 2 for η = 0.9 (contour layouts in ChromaDepth scale) for the case a (left column) and b (right column)

Fig. 9
figure 9

Solution of Examples 2a, 2b. Distribution of the optimal λ 1, λ 2 for η = 0.1 (contour layouts in ChromaDepth scale) for the case a (left column) and b (right column)

Fig. 10
figure 10

Solution of Examples 2a, 2b, 2c. Distribution of the optimal λ 1, λ 2 and \(C_{ijkl}\) for η = 0.5, \(i,\ j,\ k,\ l = 1,\ 2\), and optimal \(\tilde {\lambda }_{1}\) and \(\tilde {C}_{ijkl}\) \(i,\ j,\ k,\ l = 1,\ 2\) (contour layouts in ChromaDepth scale) for the case a (left column) b (middle column) and c (right column)

We see that the optimal value of the scalar-valued compliance corresponding to the resultant of the two loadings (\(\tilde {J}=0.0215\)) is better than the both optimal values (\(J=0.0636\) and \(J=0.1613\)) calculated on the basis of the vector optimization algorithm. However, the optimal layouts of the Hooke tensor calculated by scalarization of the vector-valued objective function are a better compromise because they apply to the efficient points and Pareto optimal solutions, which is the best what mathematics can do at this stage of the setting of the problem.

Let us note that although the loads in Example 2a are either symmetric or skew-symmetric, the optimal distributions of the Kelvin moduli are symmetric or skew-symmetric in each case, see Figs. 810, the left columns. This property of the solution follows from the independent treatment of both the loads in the formulation (16): the trial stress fields \(\boldsymbol {\tau }^{\alpha }\) are taken from two independent sets. Contrary, the results of the Example 2c are asymmetric, because the only load applied is asymmetric.

Example 3

Consider the cantilever supported at two non-sliding supports at its left corners. The plate (see Fig. 11) is subject either to a horizontal load \(\stackrel {1}{\boldsymbol {T}} = \stackrel {1}{T}_{1} \boldsymbol {e}_{1}\) or to the vertical load \(\stackrel {2}{\boldsymbol {T}} = \stackrel {2}{T}_{2} \boldsymbol {e}_{2}\) at its right edge. Distribution of the values of the optimal Kelvin moduli λ 1, λ 2 \((\lambda _{1} \geqslant \lambda _2)\) and optimal components \(C_{ijkl}\) referred to the \((x_{1},\ x_2)\) coordinate are shown for the weighting factors η = 0.9 and η = 0.1, see Fig. 12.

Fig. 11
figure 11

Problem of Example 3

Fig. 12
figure 12

Solution of Example 3. Distribution of the optimal λ 1, λ 2 and \(C_{ijkl}\) for η = 0.9 (left column) and for η = 0.1 (right column) (scatter plot layouts in Rainbow Color map)

The optimal values of the objective function occur to be \(J_{\eta = 0.9} = 0.0514\) and \(J_{\eta = 0.1} = 0.1921\).

In this example we have also tested numerically mesh independence of the presented algorithm. A rectangular plate was additionally divided into \(n_{x} \times n_{y} = 20 \times 10 = 200\) and \(n_{x} \times n_{y} = 60 \times 30 = 1800\), 4-node, quadrilateral, isoparametric finite elements. The optimal values of the objective function are set up in Table 1.

Table 1 Non-dimensional, approximate values of the objective function for various meshes

Similar comparison of the layouts of the optimal Kelvin moduli λ i is shown in Figs. 13 and 14.

Fig. 13
figure 13

Example 3. cont. Case η = 0.1. Contour layouts of λ 1 (left column) and λ 1 (right column) for the division with \(20 \times 10\), \(40 \times 20\) and \(60 \times 30\) finite elements in the first, second and third row, respectively

Fig. 14
figure 14

Example 3, cont. Case η = 0.9. Contour layouts of λ 1 (left column) and λ 2 (right column) for the division with \(20\times 10\), \(40 \times 20\) and \(60\times 30\) finite elements in the first, second and third row, respectively

The layouts shown in Figs. 13 and 14 and the values of the objective function set up in Table 1 confirm stabilization of the results as the mesh is finer and finer. Similar tendency was noted in all examples discussed in the present paper.

Remarks 1

Minimization of the functional (73) was performed by the numerical routine frprmn(...) that implemented Fletcher-Reeves-Polak-Ribiere algorithm or by the numerical routine dfpmin(...) based upon the Broyden-Fletcher-Goldfarb-Shanno variant of the Davidon-Fletcher-Powell algorithm. The C-codes of both the routines were implemented into the program originally published in the book by Press et al. (1992). The procedure was treated as the ,,black box” delivering the correct results, hence no iteration histories of the values of the functional (73) was checked. The initial value of the functional (73) depended on the randomly assumed values of the design parameters (86). Let it be stressed here that in all cases of randomly assumed values of the design parameters (86) we have always got the same numerical value of the objective function (73) and the same layouts of the design parameters. The number of iterations in the main loop of the above routine frprmn(...) (or dfpmin(...)) was observed to be dependent on the assumed loads cases, boundary conditions and numerical tolerances, but it was not bigger than 100. The time of executing the program depended heavily on the number of finite elements.

Comparison of the optimum free material designs with the optimum solutions of the fixed values of the Kelvin moduli

The designs reported in Section 5 correspond to the optimum simultaneous choice of all the parameters which determine at each point of Ω the tensor C of elastic moduli according to the spectral decomposition (7). On the other hand, the optimum designs presented in the previous paper (Czarnecki and Lewiński 2011) were found under the condition of the Kelvin moduli being fixed viz. the Kelvin moduli were not subject to optimization. A comparison analysis of both optimum design methods is pending. The aim of the present section is to assess the influence of releasing the Kelvin moduli on the final optimization result. Let us note that the tensors \(\boldsymbol {\omega }_{K}\) determine non-dimensional characteristics of the underyling microstructure, like angles between the fibres, while the Kelvin moduli measure elastic stiffnesses. Thus one should expect that the optimization over all characteristics of the Hooke tensor, including the Kelvin moduli, shall lead to much stiffer designs, better formed to carry the given load or the system of loads.

Note that in the considered vector optimization for two load cases not one but a family of Pareto optimal solutions is constructed, indexed by the parameter η. A comparison of solutions in the sense of the work Czarnecki and Lewiński (2011) with the FMD solutions discussed here cannot be done directly, since we face the problem of comparing two sets of solutions.

Let us discuss this question with a greater detail. Let us formulate the problem of Section 3.3 in terms of Pareto optimization. Introduce a vector valued mapping

$$\boldsymbol{\Upsilon} = (\Upsilon^{1}\ \Upsilon^{2})\,:\,\hat{H}(\Omega) \rightarrow \mathbb{R}^{2}$$

where \(\hat {H}(\Omega )\) is defined in Section 2 while \(\Upsilon ^{\alpha }\) is the compliance corresponding to the \(\alpha \)-th load, see (11). The Pareto problem reads: among the Hooke tensor fields of class \(\hat {H}(\Omega )\) find all efficient points

$$\boldsymbol{\Upsilon}^{*} = (\Upsilon^{*1}\ \Upsilon^{*2}) \in \boldsymbol{\Upsilon} (\hat{H}(\Omega))$$

along with the pertaining Pareto tensor fields \(\boldsymbol {C}^{*} \in \hat {H} (\Omega )\).

Let us recall that \(\boldsymbol {\Upsilon }^{*} \in \boldsymbol {\Upsilon } (\hat {H} (\Omega ))\) is an efficient point with respect to the order relation \(\leq \) in \(\mathbb{R}^{2}\) if and only if one cannot find \(\boldsymbol {\Upsilon } \not = \boldsymbol {\Upsilon }^{*}\) in \(\boldsymbol {\Upsilon } ( \hat {H} (\Omega ))\) such that

$$\boldsymbol{\Upsilon} \leq \boldsymbol{\Upsilon}^{*}.$$

A point \(\boldsymbol {C}^{*} \in \hat {H}(\Omega )\), \(\boldsymbol {\Upsilon }^{*}=\boldsymbol {\Upsilon } (\boldsymbol {C}^{*})\) is called Pareto optimal if \(\boldsymbol {\Upsilon }^{*}\) is efficient.

Hence, in our case, the aim of the vector optimization is to find all efficient fields

$$\boldsymbol{\Upsilon}^{*} \in \boldsymbol{\Upsilon} (\hat{H} (\Omega)) \subset \mathbb{R}^{2}$$

along with the Pareto optimal fields \(\boldsymbol {C}^{*} \in \hat {H}(\Omega )\) pertaining to them. Thus the task is to find not one optimal field but the set of optimal fields. From this Pareto set of fields we can choose the particular solution using additional criteria not yet taken into account in the formulation of the problem. Among the many methods of finding Pareto optimal minimizers, the most popular and perhaps the simplest one is the weighting method that transforms the vector optimization problem into a problem of a scalar-valued optimization.

Just the formulation (16) is constructed according to this idea. Let us re-write it in the following way

$$J_{\eta} = \min \left\{ \left. \boldsymbol{\eta} \cdot \boldsymbol{\Upsilon} (\boldsymbol{C})\ \right|\ \boldsymbol{C}\in \hat{H} (\Omega) \right\}$$

where \(\boldsymbol {\eta } = (\eta _{1},\ \eta _2)\), \(\eta _{1} = \eta \), \(\eta _{2} = 1-\eta \).

The family of points \((\Upsilon ^{1},\ \Upsilon ^2)\) determines a set in \(\mathbb{R}^{2}\), symbolically depicted as the bold line in Fig. 15a.

This family constitutes the efficient points being the images of the Pareto optimal solutions of the problem (95). Each efficient point \(\boldsymbol {\Upsilon }^{*}\) of the contour of \(\boldsymbol {\Upsilon } (\hat {H}(\Omega ))\) is associated with a vector \(\boldsymbol {\eta }\) perpendicular to the tangent line to the contour of this set, see Fig. 15a. The pre-images of the contour points are the Pareto solutions. The nine efficient points corresponding to the results of Example 3 (for the \(40\times 20\) mesh density) are found for the nine subsequent values: η = 0.1, 0.2, …, 0.9, see Fig. 15b. These efficient points are the images \(\boldsymbol {\Upsilon }(\boldsymbol {C}^{*}_i)\) of the nine various Pareto tensor fields \(\boldsymbol {C}^{*}_{i} \in \hat {H}(\Omega )\), \(i = 1,\ \ldots ,\ 9\). The two of them for η = 0.1 and η = 0.9 are shown as Pareto optimal \(C_{ijkl}^{*}\) components of the Hooke tensor at the right and left column of Fig. 12, respectively. The two Cartesian coordinates \((\Upsilon ^{1},\ \Upsilon ^2)\) of the nine efficient points are the two compliances of the nine optimally designed cantilevers corresponding to the nine Pareto optimal tensor fields \(\boldsymbol {C}^{*}_{i}\), \(i=1,\ \ldots ,\ 9\) and calculated in the cases of either the horizontal load \(\boldsymbol {T}^{1}\) \((\boldsymbol {T}^2=\boldsymbol {0})\) or the vertical load \(\boldsymbol {T}^{2}\) \((\boldsymbol {T}^1=\boldsymbol {0})\), respectively.

Fig. 15
figure 15

a The bold curve represents the set of efficient points belonging to the set Υ ((Ω)) b The nine efficient points from the set Υ ((Ω)) corresponding to the results of the Example 3 for η = 0.1, 0.2, . . . , 0.9 colored from violet (η = 0.1) to red (η = 0.9), respectively

The two optimization problems: over \(\boldsymbol {\omega }_{K}\) (considered in Czarnecki and Lewiński (2011)) and over \((\boldsymbol {\omega }_{K},\ \lambda _K)\) put forward in the present paper determine two sets of Pareto efficient solutions. A comparison of both the sets seems impossible, because a uniform choice of the weighting coefficients η i from the interval [0, 1], i.e. the choice which divides the interval into equal segments, results in an irregular set of Pareto efficient points, see e.g. Hillermeier (2001), p. 21.

The comparison performed below will be confined to the case of η = 0.5. We consider the problem of Fig. 16. The plate is subject to two kinds of loads: symmetric and skew-symmetric. In the first step we solve the FMD problem (16) by solving the problem (63) for η = 0.5 and \(E_{o} = 1\) Pa. The optimal values of \(\lambda ^{*}_{3}\) become zero. Since the loads are independent the optimal layouts of the moduli \(\lambda ^{*}_{1}\), \(\lambda ^{*}_{2}\) are symmetric, see Fig. 17. The optimal layouts of the moduli \(C^{*}_{1111}\), \(C^{*}_{1122}\), \(C^{*}_{1221}\), \(C^{*}_{2222}\) are symmetric while the layouts of \(C^{*}_{2212}\), \(C^{*}_{1112}\) are skew-symmetric with respect to the vertical symmetry axis of the plate, see Fig. 18, the results at the left column.

Fig. 16
figure 16

The plate subject to \(\stackrel{\alpha}{\boldsymbol{T}}\): the symmetric load (α = 1) or to the skew-symmetric load (α = 2)

Fig. 17
figure 17

The solution to the problem in Fig. 16. Distribution of the Pareto optimal Kelvin modulus \(\lambda_1^*\) (first row) and \(\lambda_2^*\)(second row) for η = 0.5(Scatter, Contours and Height Field plots in Rainbow Color map, respectively)

Fig. 18
figure 18

Solution of the problem of Fig. 16. Distribution of the optimal \(C^*_{ijkl}\) , \(C^{\mbox{\tiny\#}}_{ijkl}\) and \(C\,{}{\hat{}}_{\!\!ijkl}\) for η = 0.5, (scatter plot layouts in Rainbow Colormap)

Note that the effective domains of \(\lambda ^{*}_{1}\), \(\lambda ^{*}_{2}\) (or the domains where they are not zero) form very thin strips.

Consider now the same plate of fixed and uniformly distributed Kelvin moduli of the values

$$\lambda_{1} = 0.9\ \mbox{Pa}, \qquad \lambda_{2} = 0.09\ \mbox{Pa}, \qquad \lambda_{3} = 0.01\ \mbox{Pa}$$

within the domain Ω. The moduli thus fixed satisfy the isoperimetric condition (15) with the same value of \(E_{o}\) as assumed in the results in Figs. 17 and 18. Optimization with respect to \(\boldsymbol {\omega }_{K}\) leads to the Pareto optimal layouts of the moduli \(C^{\mbox {\tiny \#}}_{ijkl}\), see the middle column of Fig. 18. These layouts differ considerably from the layouts of \(C^{*}_{ijkl}\) found by the FMD optimization.

Let us check now whether the FMD layouts of \(C^{*}_{ijkl}\) can be repeated by performing optimization over \(\boldsymbol {\omega }_{K}\) of the plate with the Kelvin moduli found by the FMD method, or with the Kelvin moduli \(\lambda ^{*}_{K}\) reported at the left column in Fig. 17. This check is made difficult due to \(\lambda ^{*}_3=0\), which is not allowed in the optimization over \(\boldsymbol {\omega }_{K}\) as described in Czarnecki and Lewiński (2011). The condition λ 3 = 0 is replaced by λ 3 = 0.001. Moreover, minimizers of the problem (63) vanish, or almost vanish on some sub-domains of Ω and, consequently, the Kelvin moduli given by (39) assume there zero or very small values. Since the algorithm of Czarnecki and Lewiński (2011) of optimization over \(\boldsymbol {\omega }_{K}\) requires positive values of the fixed Kelvin moduli, it was necessary to assign small values to λ 1 and λ 2 in those sub-domains. The optimal distributions of the Hooke tensor components \(C\,{}{\hat {}}_{ijkl}\), being the results of this optimization is shown in the right column of Fig. 18. We note that these layouts are similar to the optimal layouts found by the FMD algorithm, displayed in the left column of Fig. 18.

Let us discuss the question to what extent the optimization over the Kelvin moduli contributes to the decrease of the compliance. To this end consider the plate of Fig. 16, now subjected to one force of components \((1- \eta )T\) and \(\eta T\). We assume η = 0.5. If this plate is optimally designed by the FMD method, where both \(\boldsymbol {\omega }_{K}\) and λ K are design variables, its normalized compliance equals \(J^{*}= 0.0082\). If this plate is made from the material of Kelvin moduli (96) with optimal eigenstates \(\boldsymbol {\omega }_{K}\) found by the method of Czarnecki and Lewiński (2011) its normalized compliance equals \(J^{\mbox {\tiny \#}}=0.0849\), or about 10 times more. A comparison of this type has been reported in the paper Czarnecki and Lewiński (2012) concerning the single load case. The compliance of an optimal non-homogeneous and anisotropic plate was reported to be 7.2 times smaller than the compliance of an equivalent isotropic plate. As was to be expected the optimization over all characteristics of the Hooke tensor leads to much stiffer structures than optimization over the eigenstates \(\boldsymbol {\omega }_{K}\).

Remarks 2

The scalar optimization problem (16), aimed at minimizing a weighted sum of the compliances, is the only one from among many possible replacements of the primary vector optimization problem (93) by a suitable scalar optimization problem that allows to find all Pareto (called also Edgeworth-Pareto) optimal points. From among many scalarization methods used in the modern vector optimization (see the survey in Chapter 3.2 in Hillermeier (2001)) besides the most widely used (and used here) the weighted sum approach, the another method – weighted Chebyshev norm approach is frequently recommended – especially for the nonconvex multiobjective optimization problems, cf. Section 11.2.2, pp. 304–312 in Jahn (2004).

Final remarks

In virtue of expressing the compliance of the elastic body by the minimum of the complementary energy the optimum design problem of minimization of the weighted sum of n compliances over parameters characterizing the anisotropic properties of the body has been rearranged to a minimization problem involving: the behavioral variables (the components of n stress fields) and design variables (the parameters of the spectral decomposition of the Hooke tensor). This problem has been reduced to a new effective problem: to the minimization of an effective complementary energy of a mixture of materials with locking properties. This energy has the integrand of linear growth, a specific feature leading to non-smoothness of the solutions, experienced by the mathematicians engaged in the celebrated minimal surface problem, also characterized by the functional of the integrand of linear growth.

The locking material problems are expressed by two mutually dual problems: static and kinematic. In the present paper both the problems have been formulated, yet the static problem only has been the subject of the numerical treatment. This choice has been dictated by a direct link between the minimizers of the static problem and the optimum values of the design variables: the method developed delivers explicit rules for the latter formulae.

The effective stress-based problem involves minimization over statically admissible stress fields, corresponding to the independent loads applied. Any numerical approach necessitates interpolation of such fields. This interpolation problem has been solved by using the SVD decomposition method. Then the minimization operation has been performed by applying carefully chosen gradient oriented non-constrained optimization solvers. Indeed, the SVD decomposition introduces free parameters, not subject to any constraints, which paves the way for the unconstrained optimization.

A characteristic feature of the FMD solutions is that the stress fields which solve the locking problem (38) can vanish on some sub-domains of the design domain. There the material is not necessary. Such behavior of the solutions is admissible within the mathematical setting due to the linear growth of the integrand of the minimized functional in (38). Therefore, the method put forward discloses the domains where the material is not necessary, which makes it possible to circumvent other optimization methods aimed at locating the holes in the design domain as well as the shape optimization methods. The optimal shape of the domain is directly determined by the effective domain of the stress fields being minimizers of the stress-based auxiliary locking problem (38).

The method applies to the three dimensional case. To make it numerically efficient one should develop fast codes for solving the SVD problem. In the 3D case six stress components are assigned to each node of the mesh. Consequently, the number of the unknowns is much bigger than in 2D case, where three stress components at a node should be found. Moreover, the number of Kelvin moduli is six, and six tensors \(\boldsymbol {\omega }_{K}\) should be determined. A huge number of unknowns will be an obstacle difficult to overcome, unless efficient parallelized SVD codes are developed.