# Reverse Engineering and Topology Optimization for Weight-Reduction of a Bell-Crank
## 2 Theory of Weight Reduction and Stiffness Matrices
### Topology Optimization: Structural Compliance  
Once the nodal displacements and reaction forces are calculated from Equation (2), the topology optimization is to determine the optimal subset \(\mathbf{\Omega}^{\star}\) of material distribution of a given design domain, \(\mathbf{\Omega}\). The generalized formulation [16; 17] for the compliance of the design domain is given as:  
\[\mathbf{C}^{\mathbf{\Omega}}(\mathbf{x_{e}})=\mathbf{F}_{i}^{T}(\mathbf{x_{e}})\;\mathbf{u_{i}}(\mathbf{x_{e }})-\mathbf{F}_{\mathbf{b}}^{T}(\mathbf{x_{e}})\;\mathbf{u_{b}} \tag{3}\]  
where \(\mathbf{x_{e}}\) is the vector of design variables.  
Assuming a structure that is subjected to the prescribed external loads and under appropriate supports, the design domain is meshed with \(N\) finite elements. To achieve a reduction in mass, the topology optimization statement is expressed as [5; 16; 18; 19; 20]:  
\[\text{Find}:\;\mathbf{\rho}=\{\rho_{1},\;\rho_{2},\;\cdots,\;\rho_{N}\}\] \[\text{Minimize}:\;[\mathbf{F}_{\rho}^{T}[\mathbf{u_{\rho}}], \tag{4}\] \[\text{Subject to}:\;\int_{\mathbf{\Omega}}\mathbf{\rho}(\mathbf{x_{e}})d\mathbf{ \Omega}=\mathbf{V}\mathbf{o}\mathbf{l}(\mathbf{\Omega}^{\star})\leq\mathbf{V}\] \[:0<\rho_{\text{min}}\leq\rho(\mathbf{x_{e}})\leq 1 \tag{5}\]  
where \(\mathbf{V}\) is the total initial volume before optimization, and \(\rho_{\text{min}}\) is the lower bound of artificial material density, \(\mathbf{\rho}(\mathbf{x_{e}})\) of each element in the design domain, which can be determined:  
\[(\mathbf{x_{e}})=\left\{\begin{array}{l}1\;\text{\bf if solid},\;\mathbf{x_{e}}\in \mathbf{\Omega}\star\\ 0\;\text{\bf if void},\;\mathbf{x_{e}}\
otin\;\mathbf{\Omega}\star\end{array}\right. \tag{6}\]  
The displacement vector \(\mathbf{u_{\rho}}\), which is the function \(\mathbf{\rho}\) in Equation (4) can be obtained by solving:  
\[[\mathbf{K}(\mathbf{\rho}(\mathbf{x_{e}}))]\{\mathbf{u}\}=[\mathbf{f}] \tag{7}\]  
where \([\mathbf{K}]\) is a structural global stiffness matrix and is obtained by the assemblage of element stiffness matrix over the design domain. For a given isotropic material, the stiffness matrix of each element, which depends on its artificial material density \(\mathbf{\rho}(\mathbf{x_{e}})\) is given by the following [PERSON]'s modulus:  
\[\mathbf{E}(\mathbf{x_{e}})=\mathbf{\rho}(\mathbf{x_{e}})\overline{\mathbf{E}} \tag{8}\]  
where \(\overline{\mathbf{E}}\) is [PERSON]'s modulus for the given isotropic material, which assumed to be the same for all elements. When in equilibrium state, the energy bilinear form (i.e., the internal virtual work done by the elastic body, within a given design domain \(\mathbf{\Omega}\)) can be expressed as [18; 19]:  
\[\delta\mathbf{W}(\mathbf{v},\;\mathbf{w})=\int_{\mathbf{\Omega}}\mathbf{E}(\mathbf{x_{e}})\epsilon_{ ij}(\mathbf{v})\epsilon_{kl}(\mathbf{w})d\mathbf{V} \tag{9}\]  
where \(\mathbf{E}(\mathbf{x_{e}})\) the optimal stiffness tensor that attain the isotropic material properties, \(\mathbf{V}\) is the given total material volume, \(\mathbf{v}\) the internal work at equilibrium state, \(\mathbf{w}\) an arbitrary virtual displacement, and with linearized strains \(\epsilon_{ij}(\mathbf{v})=\frac{1}{2}\bigg{(}\frac{\partial u_{i}}{\partial x_{j} }+\frac{\partial u_{j}}{\partial x_{i}}\bigg{)}\) and linearized load as \(\mathbf{l}(\mathbf{v})=\int_{\mathbf{\Omega}}\mathbf{f}\mathbf{o}\mathbf{l}\mathbf{o}\mathbf{l}+\int_{\mathbf{ \Gamma}_{T}}\mathbf{t}\mathbf{b}\mathbf{u}\mathbf{d}\mathbf{S}\).  
The first integral extends over the volume of the body and the second integral extends the surface of the body.  
We know strain energy is stored within an elastic body when the body deformed under the external forces. The objective function in Equation (4) is to achieve the optimal design via minimize the structural strain energy, which can be expressed as:  
Minimize: \(\mathbf{C}=[\mathbf{u}]^{T}[\mathbf{K}]\mathbf{u}\)  
Subject to: \([\mathbf{K}(\mathbf{\rho}(\mathbf{x_{e}}))]\{\mathbf{u}\}=[\mathbf{f}]\)