## 3 MATLAB-Based Multi-Software Interactive Process  
### Batch Methods for MATLAB  
Since the responses of bending and torsional stiffness are implicitly related to the thickness variables of key components, one efficient method is to build parametric structural models and to construct an automated analysis platform for DOE. Islight provides visual interfaces and tools to create complex engineering designs that are highly automated through custom components. However, there are some shortcomings in practical application; for example, when building multiple custom functions, the conversion and transmission of data will become complicated. If it is run only in a certain programming software, the operation is more flexible and can ensure data synchronization and consistency. For this reason, this study further summarizes the implementation and features of Islight, as well as two commonly used programming software options--MATLAB (version 2023a) and Python (version 3.11)--for batch processing, as shown in Table 2.  
In terms of the execution mode, blocking execution means that, when an operation is called, the program will wait for the completion of the operation before continuing to execute the subsequent code, while, in non-blocking execution mode, the program will not wait for the completion of the operation and will continue to execute the subsequent code. Generally, it is necessary to call the results of batch execution by external software, so blocking execution is used.  
Figure 3: Schematic of observation points for bending and torsion conditions.  
The functions in Table 2 have different characteristics. The system() and os.system() function are suitable for simple external command execution and return the exit status code of the command, but cannot output or handle errors. The subprocess.run() and subprocess.Popen() function, on the other hand, provide richer functionality. The purpose of this study is to implement batch processing in blocking execution mode, so all of the above functions meet the general requirements.  
MATLAB is widely applied in academia due to its powerful arithmetic and programming features in handling matrices and numerical computations, providing rich engineering toolboxes and an interactive development environment. Many uncertainty studies and open-source codes have been implemented based on MATLAB. For example, DACE [24] and ooDACE [25] are commonly used open-source toolboxes for kriging modeling, and a generic MATLAB-based uncertainty quantification framework, UQLab [22], has been developed at ETH Zurich, which includes modules for MC method simulation, sensitivity analysis, reliability analysis, active-learning surrogate modeling and Bayesian inversion. These toolboxes and the framework offer significant inspiration and facilitate programming implementations for uncertainty studies. Therefore, MATLAB is chosen to implement batch processing in this study.  
Additionally, using MATLAB for batch processing enhances convenience in function calls and data transfers. Data saving and extraction can be achieved by navigating through different folders. Storing models with varying parameters in distinct directories allows for dynamic changes in the working path, which effectively prevents file overwriting during iterations. This approach greatly improves the flexibility and efficiency of model management.