## 3 The Integrated Shape Optimization Method for Branch-Supported Free-Form Surface Structure
### The Sensitivity of Branch-Supported Free-Form Surface Structure
The partial derivative \(\partial\mathbf{X}_{i}/\partial\mathbf{P}^{\mathrm{S}}_{j,k}\) can be computed as follows: If \(\mathbf{X}_{i}\in\{\mathbf{X}^{\mathrm{S}},\mathbf{X}^{\mathrm{O}}\}\), with its corresponding parameter value being (\(u_{\mathbf{X}i}\), \(v_{\mathbf{X}i}\)), according to B-spline theory: \[\mathbf{X}_{i}=\sum_{r=0}^{R}\sum_{s=0}^{S}N_{r,p}\big{(}u_{\mathbf{X}_{i}} \big{)}N_{s,q}\big{(}v_{\mathbf{X}_{i}}\big{)}\mathbf{P}^{\mathrm{C}}_{r,s}\] (22) where, \(\mathbf{P}^{\mathrm{C}}\) is the set of control points on the B-spline surface. In this paper, \(\mathbf{P}^{\mathrm{C}}\) is determined through Equation (23): \[\sum_{r=0}^{R}\sum_{s=0}^{S}N_{r,p}(\overline{u}_{m})N_{s,q}(\overline{v}_{n} )\mathbf{P}^{\mathrm{C}}_{r,s}=\mathbf{P}^{\mathrm{S}}_{m,n}\] (23) Differentiating both sides of Equations (22) and (23) with respect to the design variable \(\mathbf{P}^{\mathrm{S}}_{j,k}\) yields: \[\frac{\partial\mathbf{X}_{i}}{\partial\mathbf{P}^{\mathrm{S}}_{j,k}}=\sum_{r=0 }^{R}\sum_{s=0}^{S}N_{r,p}\big{(}u_{\mathbf{X}_{i}}\big{)}N_{s,q}\big{(}v_{ \mathbf{X}_{i}}\big{)}\frac{\partial\mathbf{P}^{\mathrm{C}}_{r,s}}{\partial \mathbf{P}^{\mathrm{S}}_{j,k}}\] (24) \[\sum_{r=0}^{R}\sum_{s=0}^{S}N_{r,p}(\overline{u}_{m})N_{s,q}( \overline{v}_{n})\frac{\partial\mathbf{P}^{\mathrm{C}}_{r,s}}{\partial \mathbf{P}^{\mathrm{S}}_{j,k}}=\frac{\partial\mathbf{P}^{\mathrm{S}}_{m,n}}{ \partial\mathbf{P}^{\mathrm{S}}_{j,k}}=\delta_{mj}\cdot\delta_{nk}\] (25) where \(\delta_{mj}\) and \(\delta_{nk}\) are Kronecker functions, \(\delta_{mj}\cdot\delta_{mj}=1\) if and only if \(m=j\), \(n=k\), and \(0\) in other cases. The values of \(\partial\mathbf{X}_{i}/\partial\mathbf{P}^{\mathrm{S}}_{j,k}\) can be obtained by substituting the calculation result of Equation (25) into Equation (24). If \(\mathbf{X}_{i}\in\{\mathbf{X}^{\mathrm{B}}\}\), \(\frac{\partial\mathbf{X}_{i}}{\partial\mathbf{P}^{\mathrm{S}}_{j,k}}=\mathbf{0}\). * For the design variable \(\mathbf{P}^{\mathrm{O}}_{j}\in\{\mathbf{P}^{\mathrm{O}}\}\), assuming that its physical coordinate, obtained through Equation (22), is stored in the finite element model as node \(\mathbf{X}_{m}\), any movement of \(\mathbf{P}^{\mathrm{O}}_{j}\) only affects \(\mathbf{X}_{m}\). The partial derivative \(\partial\mathbf{X}_{i}/\partial\mathbf{P}^{\mathrm{O}}_{j}\) can be computed as follows: If \(i=m\), \[\frac{\partial\mathbf{X}_{i}}{\partial\mathbf{P}^{\mathrm{O}}_{j}}=\left[ \begin{array} []{c}\frac{\partial\mathbf{X}_{i}}{\partial u_{j}}\\ \frac{\partial\mathbf{X}_{i}}{\partial v_{j}}\end{array} \right]=\left[ \begin{array} []{c}\sum\limits_{r=0}^{R}\sum\limits_{s=0}^{S}N^{r}_{r,p}\Big{(}u_{\mathbf{P}_ {j}}\Big{)}N_{s,q}\Big{(}v_{\mathbf{P}_{j}}\Big{)}\mathbf{P}^{\mathrm{C}}_{r,s} \\ \sum\limits_{r=0}^{R}\sum\limits_{s=0}^{S}N_{r,p}\Big{(}u_{\mathbf{P}_{j}}\Big{)}N ^{r}_{s,q}\Big{(}v_{\mathbf{P}_{j}}\Big{)}\mathbf{P}^{\mathrm{C}}_{r,s}\end{array} \right]\] (26)where, the derivative of a basis function is given by Equation (27), the detailed derivation process can be seen in [45]:  
\[N^{\prime}{{}_{r,p}}=\frac{p}{u_{r+p}-u_{r}}N_{r,p-1}(u)-\frac{p}{u_{r+p+1}-u_{r+ 1}}N_{r+1,p-1}(u) \tag{27}\]  
Otherwise, \(\frac{\partial\mathbf{X}_{j}}{\partial\mathbf{P}_{j}^{\mathrm{B}}}=\mathbf{0}\). * For the design variable \(\mathbf{P}_{j}^{\mathrm{B}}\in[\mathbf{P}^{\mathrm{B}}]\), assuming that its coordinate is directly stored in the finite element model as node \(\mathbf{X}_{m}\), any movement of \(\mathbf{P}_{j}^{\mathrm{B}}\) only affects \(\mathbf{X}_{m}\). The partial derivative \(\partial\mathbf{X}_{i}/\partial\mathbf{P}_{j}^{\mathrm{B}}\) can be computed as follows: If \(i=m\), \(\frac{\partial\mathbf{X}_{i}}{\partial\mathbf{P}_{j}^{\mathrm{B}}}=\mathbf{1}\). Otherwise, \(\frac{\partial\mathbf{X}_{i}}{\partial\mathbf{P}_{j}^{\mathrm{B}}}=\mathbf{0}\).