## 3 Efficient Modal Modification Analysis Method
### Parallel Sensitivity Analysis Technique  
As shown in Figure 2, calculating the sensitivity numbers of all elements is the other of the two time-consuming steps of the iterative optimization process. To reduce the computational effort of the sensitivity analysis process, a parallel computational technique is adopted for calculation of the global sensitivity numbers. The parallel technique has been widely used recently for better computer performance. There are dense parallel techniques that can be inferred as several patterns: the master-slave pattern [57], the divide-and-conquer pattern [58], speculative multithreading [59], etc. The master-slave pattern is the most representative distributed pattern and contains two parts: the master node and slave nodes. The master takes full responsibility for the main task, and the slaves deal with independent subtasks. The divide-and-conquer pattern aims to divide the main task into several subtasks, where some of the subtasks are dependent on each other and are aggregated before others to obtain an integrated solution of the subtasks. The speculative multithreading parallelizes the sequential codes aggressively, while the hardware guarantees the success of the execution [60]. The master-slave pattern, among all alternatives, is widely used for its ease of implementation and relatively better convergence capabilities [29]. Thus, we choose the master-slave parallel pattern for the parallel analysis of the matrix of global sensitivity numbers. The master-slave pattern herein is organized into three layers, as shown in Figure 4. The task layer contains the main task of the entire parallel program (i.e., to obtain the global matrix of sensitivity numbers of the eigenvalue with respect to the elemental pseudo-densities of the thermodynamically coupled system):  
\[\frac{\partial\varphi_{i}}{\partial\mathbf{p}}=\left[\frac{\partial\varphi_{i}}{ \partial p_{1}},\frac{\partial\varphi_{i}}{\partial p_{2}},...,\frac{ \partial\varphi_{i}}{\partial p_{N_{c}}}\right] \tag{31}\]  
The master layer takes full responsibility for the main task. It constructs and manipulates the global sensitivity matrix according to the demand of the main task. The slave layer handles the subtasks assigned by the master to calculate the sensitivity number of each element. The flow of the master-slave parallel algorithm is shown in Algorithm 3. The master node handles task decomposition and collects feedback for each subtask. Recalling the definition of the eigenvalue part of the system in Equation (11), the sensitivity numbers of the elements are independent of each other. This in turn shows that the sensitivity of the \(i\)th eigenvalue to the \(e\)th element's pseudo-density can be solved at the element scale with the reduced system matrix. The \(i\)th system's mode shape of the modified structure can be obtained with Equation (22). For the \(e\)th element, as messages of other elements are not necessary for computing the elemental sensitivity number, the system matrix \(\mathbf{A}\) can be replaced by \(\mathbf{  
The slave nodes in the slave layer are solely responsible for their assigned subtasks, which is to solve the elemental sensitivity matrix in Equation (10) with the help of the elemental sensitivity number of the eigenvalue with respect to the design variable in Equation (32). The input and output of the \(e\)th subtask are the extracted system matrices and \(e\)th elemental sensitivity numbers, respectively. The master-slave pattern can be distributed among different computers and use the remote procedure call to communicate with each other or be distributed in one computer among different cores of the CPU. As the time delay between different computers is significantly larger than that between the cores of the CPU of the same computer, in some cases, the time cost of a data transfer may strongly influence the total computational time of the parallel process.