A parameterized generation and simulation optimization method of double-layer rainproof ventilation perforated plate
By combining a parametric geometry generation program written on the Grasshopper platform with the Butterfly simulation module, the problem of insufficient modeling accuracy of double-layer rainproof and ventilated perforated panels was solved, enabling accurate simulation optimization of small-scale porous structures, reducing technical barriers and costs, and improving design efficiency.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- CHINA RAILWAY SIYUAN GRP GUANGZHOU DESIGNING INST CO LTD
- Filing Date
- 2026-05-21
- Publication Date
- 2026-06-19
Smart Images

Figure CN122242389A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of wind environment simulation technology, and in particular to a parametric generation and simulation optimization method for a double-layer rainproof and ventilated perforated plate. Background Technology
[0002] As shown in the prior art of double-layer rainproof and ventilated perforated panels with application numbers 202510583031.2 or 202522561847.3, refer to Figure 1 and Figure 2 The double-layer rainproof and ventilated perforated panel includes two panels (i.e., the upper panel (1a) and the lower panel (1b)). The two panels are provided with staggered perforations (11). The outer edges of the two panels are provided with side baffles to form a whole. The interior of the two side baffles is provided with partitions (3). The partitions (3) are used to prevent rainwater from passing directly through the perforations (11) on the two panels. In this way, a swirling cavity is formed between the two panels, in which airflow can circulate and rainwater cannot pass through in a straight line, thus realizing the functions of ventilation and rain protection. For this special structure: "double-layer staggered perforations + side baffles + swirling cavity", in the product development process, it is necessary to analyze the product's construction form, structural dimensions, and related matching relationships according to the specific application scenario, and other factors affecting ventilation and rainproof performance. The product should be reasonably optimized according to its scientific laws to seek the optimal combination of various parameters of the product.
[0003] In traditional design and optimization methods, the analysis of airflow performance in building ventilation and envelope components mainly relies on traditional computational fluid dynamics (CFD) tools, primarily ANSYS Fluent and OpenFOAM. ANSYS Fluent, as a commercial CFD software, has high licensing costs, limited secondary development, complex operation procedures, and a high degree of manual intervention in modeling and mesh generation. It requires manual remodeling according to specific software requirements, making it difficult to achieve iterative linkage between building component geometric parameters and flow field simulation results. OpenFOAM, as a free and open-source tool, offers high scalability, but its pure command-line interface based on Linux systems has a high learning curve. Operation relies on command lines and dictionary file configuration, resulting in a cumbersome modeling process and difficult pre-processing. Both software programs require a strong background in fluid mechanics, have high technical barriers, and lack direct interfaces with mainstream architectural design platforms such as Rhino and Grasshopper. This makes it difficult to achieve rapid modeling, simulation, and optimization loops in the design phase, and hinders the comparison of airflow performance across multiple schemes and parameters and multi-objective collaborative optimization in the early design stages.
[0004] Butterfly, an OpenFOAM wrapper for Grasshopper, has gained increasing attention in the field of building ventilation due to its ability to integrate with parametric modeling environments. However, Butterfly has the following shortcomings when practically applied to the simulation optimization of double-layered rainproof perforated ventilation panels:
[0005] First, Butterfly was initially developed for simulating wind environments in large-scale architectural interior spaces or outdoor locations. Its underlying modeling logic and mesh generation mechanism are primarily designed for macroscopic geometries. When applied to small-scale product structures such as double-layer perforated panels with numerous micro-holes, the porous structure generated by its Boolean operations causes the computational model to fail. Therefore, the porous material is only roughly simulated with a reduction factor for ventilation resistance, failing to accurately reflect the true impact of geometric parameters such as hole size, density, and misalignment on airflow organization and ventilation resistance. This makes it difficult for simulation results to guide refined optimization of products at the hole level.
[0006] Secondly, due to the three-level mesh generation mechanism of the Butterfly kernel, if the ratio of the plate side length to the hole side length is too large, it will cause the block mesh to malfunction and fail to run the calculation; if the ratio of the plate side length to the hole side length is too small, it loses the essential characteristics of a perforated plate.
[0007] Therefore, overcoming the inherent limitations of Butterfly's existing technology in terms of modeling accuracy, specific requirements for mesh generation gradients, and scene adaptability has become a key obstacle in building an integrated R&D process within the Grasshopper platform, encompassing parametric geometry generation, parameter control linkage, CFD flow field simulation, automatic solving and data analysis, multi-objective performance optimization, and rapid iterative scheme comparison. Summary of the Invention
[0008] This application proposes a parametric generation and simulation optimization method for a double-layer rainproof and ventilated perforated panel. The aim is to achieve integrated simulation optimization of the double-layer rainproof and ventilated perforated panel based on the Grasshopper platform, from parametric geometry generation, parameter control linkage, CFD fluid digital simulation, automatic solution and data analysis, to multi-objective performance optimization and rapid iterative scheme comparison. This reduces the cost of R&D testing and the technical threshold of simulation testing, and improves the efficiency of optimization and iterative scheme comparison in the early stage of product development.
[0009] The technical solution provided in this application includes:
[0010] A parametric generation and simulation optimization method for a double-layer rainproof and ventilated perforated panel includes the following steps:
[0011] S1. Based on the Grasshopper platform, a parametric geometry generation program is developed for a double-layer rainproof and ventilated perforated panel that uses multiple closed curves to divide a single complete surface. The parametric geometry generation program is then encapsulated as a battery pack, and adjustable input parameters are set. The parametric geometry model generated by the parametric geometry generation program includes an upper plate, a lower plate, and side baffles, and has staggered perforations and a swirling cavity formed by the side baffles and the upper and lower plates.
[0012] S2. Connect the battery pack packaged in S1 to the Butterfly simulation module to create a wind tunnel field. Position the parametric geometric model in the center of the wind tunnel field and divide the wind tunnel field into an upstream inflow section, a middle perforated plate area, and a downstream outflow section. Configure the boundary conditions of the wind tunnel field: set the air inlet as a constant wind pressure inlet, the air outlet as a pressure outlet, and the wall as a no-slip boundary.
[0013] S3. Configure mesh parameters to refine the mesh in the double-layer perforated plate area and around the holes, generate block mesh and refine it, and monitor the effectiveness of mesh generation in real time.
[0014] S4. Create probe mesh, print residual convergence, and monitor, verify, and debug in real time;
[0015] S5. Call the Simplefoam algorithm to solve the problem, monitor the calculation results in real time, and perform data extraction, analysis, processing, and visualization output.
[0016] S6. Repeat steps S3 to S5 to obtain the basic threshold range of the input parameters.
[0017] S7. Based on the basic interval threshold in S6, adjust the parameters of the parameterized geometric model and the wind tunnel field accordingly, repeat steps S2-S6, and conduct repeated experiments to expand the threshold interval upwards and downwards respectively.
[0018] S8. Change the constant air pressure inlet set in step S2 to a constant air velocity inlet, and repeat steps S2-S7 to perform cross-validation.
[0019] S9, digital output of geometry generation and ventilation simulation.
[0020] Further, step S1 includes:
[0021] S11. Define adjustable input parameters, including hole side length a, side baffle width b, plate thickness c, and plate side length L.
[0022] S12. Generate the basic hole rectangle and copy it in an array. Perform center translation and staggered translation in sequence so that the orthographic projections of the holes are staggered and adjacent before and after translation; generate the outer frame rectangle of the plate size.
[0023] S13. Generate the lower layer board: Use the holes after misalignment and translation as dividing lines to divide the entire surface of the board. Clean up overlapping data in the divided data list, sort by area and extract the surface with the largest area to generate the Surfaces list of the lower layer board.
[0024] S14. Generate the upper layer plate: Use the centered and translated hole as the dividing line to divide the entire surface of the plate. Extract the surface with the largest area and then translate the plate thickness c upwards to generate the upper layer plate Surfaces list.
[0025] S15. Generate side baffles: Generate line segments of length b around the base hole. After arraying, centering and shifting, and offsetting, cut and retain the line segments inside the plate as the baseline of the side baffles. Shift the line segments upward by c to obtain the top line of the side baffles. After extracting the start and end points, generate a list of side baffle Surfaces in a clockwise direction.
[0026] S16. Connect the Surfaces list generated in steps S13, S14 and S15 to the battery pack to generate a double-layer plate geometric model.
[0027] S17. Based on Grasshopper, establish parameter association logic through mathematical formulas, and set the perforation rate, solid board area, and side hole ratio performance indicators as output terminals respectively.
[0028] S18. The parameterized geometry generation program is encapsulated as a battery pack. The four input parameters are set as hole side length a, side baffle width b, plate thickness c, and plate side length L. The four output parameters are set as double-layer plate geometric model, perforation rate, side hole ratio, and solid plate area.
[0029] Further, step S2 includes:
[0030] S21. Run the createBFGeometry module to create a wind tunnel field: pick up the cuboid in Rhino to generate the wind tunnel field, pick up the rectangular surface in Rhino that is close to the cuboid, and define the air inlet and air outlet.
[0031] S22. Connect the battery pack to the parametric geometry generation program of step S1, position the parametric geometry model in the center of the cuboid, and divide the cuboid calculation field into three segments: upstream inflow segment, middle perforated plate area and downstream outflow segment.
[0032] S23, Wind Tunnel Field Parameter Configuration:
[0033] When the air inlet is set as a constant air pressure inlet, connect the outlet module and set the air outlet as a pressure outlet with an air pressure value of 0 Pa; connect the boundary module and set the air inlet as a constant air pressure inlet with an air pressure value of 5-20 Pa; connect the wall module and set the calculation field wall as a no-slip boundary.
[0034] When the air inlet is set as a constant wind speed inlet, connecting the Inletvel module will allow the air inlet to be set as a constant wind speed inlet, with the wind speed value set to 1-5 m / s.
[0035] S24. Connect the casefromgeos module and create a Butterfly instance.
[0036] Further, step S3 includes:
[0037] S31. Configure the mesh parameters and set the parameter value to 3. The global basic mesh size is automatically generated based on the size of the computational domain. Perform 3-level mesh refinement on the double-layer perforated plate area and the area around the holes.
[0038] S32. Connect and run the blockMesh mesh generation tool to generate a block mesh;
[0039] S33. Connect and run the snappyHexMesh mesh refinement tool to refine the block mesh;
[0040] S34. Connect and run the loadMesh mesh visualization tool to monitor in real time whether the mesh generation is effective. If not, adjust the parameters until the mesh generation is error-free. Avoid non-convergence of calculation results due to mesh quality issues.
[0041] Further, step S4 includes:
[0042] S41. Connect the gentestpts module, create a probe grid, and define the probe monitoring grid surface by picking the surface in the computational field; set the grid parameters to 0.01-0.1; place the battery points upstream and downstream of the perforated plate, as well as the longitudinal and transverse sections of the entire field for comprehensive monitoring.
[0043] S42. Connect the gentestpts module to the solutionParams module, set the solution parameters, connect the controlDict module, and set the simulation time step, output frequency and other parameters; set _end_time to 3000-10000, and adjust it appropriately according to the residual convergence.
[0044] S43. Connect the steadylncomp module, call the Simplefoam incompressible steady-state solver, run the solution tool module to calculate, and print the residual convergence.
[0045] S44. Run the PLOT RESIDUALS tool module to monitor in real time whether the residual convergence is successful; otherwise, adjust the parameters until the residual convergence is successful and there are no error messages.
[0046] Further, step S5 includes:
[0047] S51. After running the solution tool module for calculation, extract the simulation data of wind pressure and wind speed through the LOADprobes Value module, and digitize and visualize the results of wind speed and wind pressure.
[0048] S52. Read the calculation report, check the calculation results, and identify any obviously abnormal data; if there are any obviously abnormal data, analyze the cause and debug or correct them.
[0049] S53. Define the optimization objectives and constraints, establish a quantitative performance system, evaluation indicators and calculation formulas, write a data post-processing program, and output the final calculation results.
[0050] Furthermore, when the air inlet is set as a constant wind pressure inlet, the final calculation results include: cross-sectional air volume and attenuation rate of upstream and downstream sections, wind pressure digital cloud map, wind speed digital cloud map, wind speed vector cloud map, and data charts;
[0051] When the air inlet is set as a constant wind speed inlet, the final calculation results include: the average wind pressure and pressure drop coefficient of the upstream and downstream cross sections, the wind pressure digital cloud map, the wind speed digital cloud map, the wind speed vector cloud map, and data charts.
[0052] Further, step S6 includes:
[0053] S61. Through repeated experiments, the lower limit of the basic threshold range of the input parameters is obtained by monitoring the debugging window;
[0054] S62. Through repeated experiments, combined with experience and optimization objectives, the upper limit of the basic threshold range of the input parameters is obtained;
[0055] S63. Determine the basic threshold range of the input parameters based on the upper and lower limits.
[0056] Further, step S9 includes:
[0057] S91. Optimal Solution Comparison and Verification: From the set of optimal solutions, and in combination with the specific engineering scenario requirements, the optimal solution is selected.
[0058] S92. Digital and Engineering Output: Using the parameter combination of the selected optimal solution, 3D models and performance reports are automatically generated in Grasshopper, and the parametric geometry generation program and simulation optimization program are encapsulated into a reusable Grasshopper battery pack template.
[0059] Furthermore, the performance report includes numerical values for each performance indicator, simulation cloud diagrams, and parameter sensitivity analysis results.
[0060] The technical solution provided in this application has at least the following advantages over the prior art:
[0061] 1. A digital simulation of small-scale porous structures based on Butterfly has been achieved, filling a technological gap.
[0062] This method replaces Boolean operations in step S1 by using multiple closed curves to divide a single complete surface. The resulting parametric geometric model is an untrimmed single surface that can be directly recognized and processed by the Butterfly simulation module, completely solving the problem of porous structure model failure caused by Boolean operations. Therefore, for the first time, it is possible to accurately study the intrinsic relationship between geometric parameters such as pore size, density, and misalignment and ventilation resistance using Butterfly, overcoming the limitation in existing technologies where Butterfly can only roughly set the ventilation resistance reduction coefficient when used for wind environment simulation of small-scale porous structures.
[0063] 2. It avoids the limitation of the Butterfly mesh generation mechanism on the ratio of the perforated plate size to the hole size, ensuring that the calculation model runs effectively within the feasible parameter range.
[0064] This method, through steps S6 and S7, repeatedly experiments to obtain the basic threshold range of the input parameters, and then expands this range upward and downward respectively, thereby obtaining a wider range of feasible parameters. This effectively avoids the problems of block mesh errors and Butterfly calculation model failure caused by improper size ratios, ensuring that the simulation calculation runs stably within the range of feasible parameters, and greatly expanding the application scope of Butterfly in engineering.
[0065] 3. An integrated closed-loop process from parametric geometry generation to simulation optimization has been constructed, reducing R&D costs and technical barriers.
[0066] The entire process of this method can be automatically integrated within the Grasshopper platform, eliminating the need for manual switching between multiple software programs and the writing of complex command-line scripts, significantly reducing experimental costs and the requirements for fluid mechanics background. Through the packaged battery pack, designers only need to adjust the input parameters to automatically drive geometric model updates, simulation calculations, and result output. This allows product developers or architectural designers lacking CFD expertise to quickly conduct multi-parameter, multi-scheme airflow performance comparisons and collaborative optimizations in the early design stages, improving the efficiency of optimization iterations. Attached Figure Description
[0067] Figure 1 This is a structural diagram of a double-layer rainproof and ventilated perforated panel;
[0068] Figure 2 This is an exploded diagram of a double-layered rainproof and ventilated perforated panel;
[0069] Figure 3 This is a flowchart illustrating the parameterization generation and simulation optimization method for the double-layer rainproof and ventilated perforated plate shown in the embodiments of this application;
[0070] Figure 4 This is a schematic diagram of the architecture of the parametric generation and simulation optimization method for the double-layer rainproof and ventilated perforated plate shown in the embodiments of this application;
[0071] Figure 5 This is a wiring diagram of the parametric geometry generation program for the double-layer rainproof and ventilated perforated plate shown in the embodiments of this application;
[0072] Figure 6 This is the wiring diagram (first part) of the digital simulation program for ventilation of building components shown in the embodiments of this application;
[0073] Figure 7 This is the wiring diagram (part two, its continuation) of the digital simulation program for ventilation of building components shown in the embodiments of this application. Figure 6 );
[0074] Figure 8 This is the wiring diagram (Part Three, its continuation) of the digital simulation program for ventilation of building components shown in the embodiments of this application. Figure 7 );
[0075] Figure 9 This is the wiring diagram (Part Four, its connection) of the digital simulation program for ventilation of building components shown in the embodiments of this application. Figure 8 );
[0076] Figure 10 This is a schematic diagram of a wind tunnel model shown in an embodiment of this application;
[0077] Figure 11This is a visualization of the mesh generation shown in the embodiments of this application;
[0078] Figure 12 This is a visualization of the residual convergence shown in the embodiments of this application;
[0079] Figure 13 This is a vector diagram of the wind speed inside the perforated plate shown in the embodiments of this application;
[0080] Figure 14 This is a digital cloud map of the wind speed inside the perforated plate shown in the embodiments of this application;
[0081] Figure 15 This is a digital cloud map of the internal wind pressure of the perforated plate shown in the embodiments of this application;
[0082] Figure 16 This is a longitudinal section wind speed vector diagram shown in the embodiments of this application;
[0083] Figure 17 This is a longitudinal section wind speed digital cloud map shown in the embodiment of this application. Detailed Implementation
[0084] This specific embodiment is merely an explanation of this application and is not intended to limit it. Those skilled in the art, after reading this specification, can make modifications to this embodiment without contributing any inventive step, but such modifications are protected by patent law as long as they fall within the scope of the claims of this application. To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this application. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without inventive effort are within the scope of protection of this application.
[0085] The term "comprising" and any variations thereof in the specification and claims of this application are intended to cover non-exclusive inclusion, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are explicitly listed, but may include other steps or units that are not explicitly listed or that are inherent to such process, method, product or device.
[0086] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of the terms "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.
[0087] The embodiments of this application will now be described in further detail with reference to the accompanying drawings.
[0088] refer to Figures 1 to 17 An exemplary embodiment of this application illustrates a method for parameterized generation and simulation optimization of a double-layer rainproof and ventilated perforated panel, comprising the following steps:
[0089] Step S1: Based on the Grasshopper platform, write a parametric geometry generation program for a double-layer rainproof and ventilated perforated panel that uses multiple closed curves to divide a single complete surface, and encapsulate the parametric geometry generation program as a battery pack, setting adjustable input parameters; the parametric geometry model generated by the parametric geometry generation program includes an upper plate, a lower plate, and side baffles, and has staggered perforations and a swirling cavity formed by the side baffles and the upper and lower plates.
[0090] Specifically, refer to Figure 5 Step S1 includes:
[0091] Step S11: Define adjustable input parameters, including hole side length a, side baffle width b, plate thickness c, and plate side length L;
[0092] Step S12: Generate the basic hole rectangle and array copy it. Perform center translation and staggered translation in sequence so that the orthographic projections of the holes before and after translation are staggered and adjacent; generate the outer frame rectangle of the plate size.
[0093] Specifically, step S12 includes:
[0094] Step S121: Generate basic holes: Based on Grasshopper, a rectangle with side length 'a' is generated by establishing parameter association logic through mathematical formulas. To simplify the program, an implicit parameter is included in the program writing process: the default base point is the origin coordinates (0, 0, 0).
[0095] Step S122: Generate the array rectangle: Based on Grasshopper, a parameter association logic is established through mathematical formulas to generate an array rectangle. This rectangle serves as the direction and distance for the variation of the hole rectangle array. After the holes are arrayed according to this rule, the orthographic projections of the holes in the upper and lower double-layer boards are staggered, ensuring that the overlapping projections of the solid parts of the upper and lower layers completely cover the space below, thus providing rain protection. At the same time, the orthographic projections of the holes in the upper and lower layers are kept as close as possible to maximize the number of openings and the overall perforation rate of the board, ensuring ventilation performance.
[0096] Step S123, Array replication of basic holes: Connect the rectangle generated in step S121 above to the G end of the ArrRcc battery, and connect the rectangle generated in step S122 above to the C end of the ArrRcc battery. The number of replications in the X and Y directions can be set as variables, and can be set as constants (50-100) to simplify the program.
[0097] Step S124: Center and translate the holes copied in the previous step S123: Connect the holes copied in the previous step S123 to the Move battery. The translation vector is associated with parameters a and b through mathematical formulas, so that the rectangle after the array fully covers the entire perforated plate area.
[0098] Step S125: Displace the hole after centering and translating in the previous step S124: Connect the hole after centering and translating in step S124 to the Move battery. The displacement vector is associated with parameters a and b through a mathematical formula, so that the orthographic projections of the holes before and after displacement and translation are just offset and as close as possible, similar to step S122.
[0099] Step S126: Generate the outer rectangle of the board size: Based on Grasshopper, establish parameter association logic through mathematical formulas to generate a rectangle with a base point of (0, 0, 0) and a side length of L.
[0100] Step S13: Generate the lower layer board: Use the holes after misalignment and translation as dividing lines to divide the entire surface of the board. Clean up overlapping data in the divided data list, sort by area and extract the surface with the largest area to generate the Surfaces list of the lower layer board.
[0101] Specifically, step S13 includes:
[0102] Step S131: Generate board-internal dividing lines: Connect the multiple rectangles generated in step S125 to the C end of the Trim with Region battery, and connect the rectangles generated in step S126 to the R and P ends of the Trim with Region battery to generate a data list of board-internal dividing lines.
[0103] Step S132 generates the entire surface of the lower plate: The rectangle generated in step S126 above is connected to the E end of the Boundary battery to generate the entire surface of the lower plate.
[0104] Step S133: Line-splitting surface: Connect the Curves data list generated in step S131 to the C-end of the Srfsplit battery, and set the port parameter to flatten; connect the rectangle generated in step S132 to the C-end of the Srfsplit battery, and set the port parameter to flatten, thus completing the line-splitting surface step and generating the data list after the entire plate is split.
[0105] Step S134 List Data Processing: First, clean up overlapping data in the data list generated in step S133, then sort it by area size, use the Split List battery to cut the list, and finally extract the list of Surfaces with the largest area.
[0106] Step S14: Generate the upper layer board: Use the centered and translated hole as the dividing line to divide the entire surface of the board. Extract the surface with the largest area and then translate the board thickness c upwards to generate the upper layer board Surfaces list.
[0107] Specifically, step S14 includes:
[0108] Step S141: Generate board-inner dividing lines: Connect the multiple rectangles generated in step S124 above to the C end of the Trim with Region battery, and connect the rectangles generated in step S126 above to the R and P ends of the Trim with Region battery to generate board-inner dividing lines.
[0109] Step S142: Generate the entire surface of the lower plate: Connect the rectangle generated in step S126 above to the E end of the Boundary battery to generate the entire surface of the lower plate.
[0110] Step S143, Line Segmentation: Connect the Curves generated in step S141 to the C-end of the Srfsplit battery, and set the port parameter to flatten; connect the rectangle generated in step S142 to the C-end of the Srfsplit battery, and set the port parameter to flatten. This completes the line segmentation step and generates a data list of the entire plate segmented.
[0111] Step S144, List Data Processing: First, clean up overlapping data in the data list generated in step S143, then sort it by area size, use the Split List cell to cut the list, and finally extract the list of surfaces with the largest area.
[0112] Step S145, Double-layer copy displacement: The surface generated in step S144 is translated upwards, and the translation vector size is the thickness c of the plate.
[0113] Step S15: Generate side baffles: Generate line segments of length b around the base hole, and after arraying, centering and translating, and offsetting, cut and retain the line segments inside the plate as the baseline of the side baffles. Translate upwards by c to obtain the top line of the side baffles. After extracting the start and end points, generate a list of side baffle Surfaces in a clockwise direction.
[0114] Specifically, step S15 includes:
[0115] Step S151: Generate the baseline of the side baffle around the basic hole: Based on Grasshopper, establish parameter association logic through mathematical formulas, and generate four line segments of length b around the rectangle generated in step S121, starting from the four corner points of the rectangle, using Ln batteries.
[0116] Step S152, Baseline Array: After merging the line segments generated in step S151, connect them to the G terminal of the ArrRcc battery. Connect the rectangle generated in step S122 to the C terminal of the ArrRcc battery. The number of copies in the X and Y directions can be set as variables, and can be set as constants (50-100) to simplify the program. Maintain synchronization with step S123.
[0117] Step S153: Center and translate the line segment copied from the array in the previous step S152: Connect the line segment copied from the array in the previous step S152 to the Move battery, and keep the mathematical formula of the translation vector synchronized with step S124.
[0118] Step S154 generates the inner side plate baseline: Connect the line segment generated after centering and flattening in step S153 to the C end of the Trim with Region battery, and connect the rectangle formed in step S126 to the R and P ends of the Trim with Region battery to generate the inner side plate baseline.
[0119] Step S155: Generate the top line of the side panel: Shift the line segment generated in step S154 upwards by a vector size equal to the thickness c of the panel. This should be synchronized with step S145.
[0120] Step S156: Generate the side panel: Extract the start and end point data lists of the side panel baseline generated in step S154, and the start and end point data lists of the side panel top line generated in step S155. Set the parameters of the above start and end point data lists to "flatten" beforehand. Then, connect the four ports A, B, C, and D of the battery Srf4pt in a clockwise direction. Generate the side panel Surfaces data list.
[0121] Step S16: Connect the Surfaces list generated in steps S13, S14 and S15 to the battery pack to generate a double-layer plate geometric model.
[0122] Step S17: Based on Grasshopper, establish parameter association logic through mathematical formulas, and set the perforation rate, solid board area, and side hole ratio performance indicators as output terminals respectively.
[0123] Step S18: Encapsulate the parameterized geometry generation program into a battery pack, set the four input parameters as hole side length a, side baffle width b, plate thickness c, and plate side length L, and set the four outputs as double-layer plate geometric model, perforation rate, side hole ratio, and solid plate area.
[0124] In step S1 of this embodiment, Boolean operations are replaced by dividing a single complete surface using multiple closed curves. The resulting parametric geometric model is an untrimmed single surface, which can be directly recognized and calculated by the Butterfly simulation module, completely solving the problem of porous structure model failure caused by Boolean operations. Thus, for the first time, Butterfly is used to accurately study the intrinsic relationship between geometric parameters such as hole size, density, and misalignment and ventilation resistance, overcoming the limitation of existing technologies that can only roughly set ventilation resistance reduction coefficients.
[0125] It should be noted that, after repeated verification by the inventor, if the Boolean operation method of "large block to small block" or "large surface to small surface" is used, or if the double-layer rainproof and ventilated perforated plate is created by "generating surfaces from multiple lines and piecing together large surfaces from small surfaces", the geometric and data structures are very complex and will not be recognized by Butterfly, causing the model to fail and unable to be calculated.
[0126] Step S2: Connect the battery pack packaged in S1 to the Butterfly simulation module, create a wind tunnel field, position the parametric geometric model in the center of the wind tunnel field, and divide the wind tunnel field into an upstream inflow section, a middle perforated plate area, and a downstream outflow section; configure the boundary conditions of the wind tunnel field: set the air inlet as a constant wind pressure inlet, the air outlet as a pressure outlet, and the wall as a no-slip boundary.
[0127] Specifically, refer to Figures 6 to 9 Step S2 includes:
[0128] S21. Run the createBFGeometry module to create a wind tunnel field: pick up the cuboid in Rhino to generate the wind tunnel field, pick up the rectangular surface in Rhino that is close to the cuboid, and define the air inlet and air outlet.
[0129] S22. Connect the battery pack to the parametric geometry generation program of step S1, position the parametric geometry model in the center of the cuboid, and divide the cuboid calculation field into three segments: upstream inflow segment, middle perforated plate area and downstream outflow segment.
[0130] S23, Wind Tunnel Field Parameter Configuration:
[0131] When the air inlet is set as a constant air pressure inlet, connect the outlet module and set the air outlet as a pressure outlet with an air pressure value of 0 Pa; connect the boundary module and set the air inlet as a constant air pressure inlet with an air pressure value of 5-20 Pa; connect the wall module and set the calculation field wall as a no-slip boundary.
[0132] When the air inlet is set as a constant wind speed inlet, connecting the Inletvel module will allow the air inlet to be set as a constant wind speed inlet, with the wind speed value set to 1-5 m / s.
[0133] S24. Connect the casefromgeos module and create a Butterfly instance.
[0134] Step S3: Configure mesh parameters, refine the mesh in the double-layer perforated plate area and around the holes, generate block mesh and refine it, and monitor the effectiveness of mesh generation in real time.
[0135] Specifically, refer to Figures 6 to 9 Step S3 includes:
[0136] S31. Configure the mesh parameters and set the parameter value to 3. The global basic mesh size is automatically generated based on the size of the computational domain. Perform 3-level mesh refinement on the double-layer perforated plate area and the area around the holes.
[0137] S32. Connect and run the blockMesh mesh generation tool to generate a block mesh;
[0138] S33. Connect and run the snappyHexMesh mesh refinement tool to refine the block mesh;
[0139] S34. Connect and run the loadMesh mesh visualization tool to monitor in real time whether the mesh generation is effective. If not, adjust the parameters until the mesh generation is error-free. Avoid non-convergence of calculation results due to mesh quality issues.
[0140] Step S4: Create probe mesh, print residual convergence, and monitor, verify, and debug in real time.
[0141] Specifically, refer to Figures 6 to 9 Step S4 includes:
[0142] S41. Connect the gentestpts module, create a probe grid, and define the probe monitoring grid surface by picking the surface in the computational field; set the grid parameters to 0.01-0.1; place the battery points upstream and downstream of the perforated plate, as well as the longitudinal and transverse sections of the entire field for comprehensive monitoring.
[0143] S42. Connect the gentestpts module to the solutionParams module, set the solution parameters, connect the controlDict module, and set the simulation time step, output frequency and other parameters; set _end_time to 3000-10000, and adjust it appropriately according to the residual convergence.
[0144] S43. Connect the steadylncomp module, call the Simplefoam incompressible steady-state solver, run the solution utility module to calculate, and print the residual convergence (see reference). Figure 12 );
[0145] S44. Run the PLOT RESIDUALS tool module to monitor in real time whether the residual convergence is successful; otherwise, adjust the parameters until the residual convergence is successful and there are no error messages.
[0146] Step S5: Call the Simplefoam algorithm to solve the problem, monitor the calculation results in real time, and extract, analyze, process, and visualize the data.
[0147] Specifically, refer to Figures 6 to 9 Step S5 includes:
[0148] S51. After running the solution tool module for calculation, extract the simulation data of wind pressure and wind speed through the LOADprobes Value module, and digitize and visualize the results of wind speed and wind pressure.
[0149] S52. Read the calculation report, check the calculation results, and identify any obviously abnormal data; if there are any obviously abnormal data, analyze the cause and debug or correct them.
[0150] S53. Define the optimization objectives and constraints, establish a quantitative performance system, evaluation indicators and calculation formulas, write a data post-processing program, and output the final calculation results.
[0151] When the air inlet is set to a constant air pressure inlet, the final calculation results include: the cross-sectional air volume and attenuation rate of the upstream and downstream sections, and the digital cloud map of air pressure (e.g., Figure 15 ), wind speed digital cloud map (such as Figure 14 and Figure 17 ), wind speed vector cloud map (such as Figure 13 and Figure 16 ), data charts;
[0152] When the air inlet is set as a constant wind speed inlet, the final calculation results include: the average wind pressure and pressure drop coefficient of the upstream and downstream cross sections, the wind pressure digital cloud map, the wind speed digital cloud map, the wind speed vector cloud map, and data charts.
[0153] Step S6: Repeat steps S3 to S5 to obtain the basic threshold range of the input parameters.
[0154] Specifically, refer to Figure 4 Step S6 includes:
[0155] S61. Through repeated experiments, the lower limit of the basic threshold range of the input parameters is obtained by monitoring the debugging window;
[0156] S62. Through repeated experiments, combined with experience and optimization objectives, the upper limit of the basic threshold range of the input parameters is obtained;
[0157] S63. Determine the basic threshold range of the input parameters based on the upper and lower limits.
[0158] Step S7: Based on the basic interval threshold in S6, adjust the parameters of the parameterized geometric model and the wind tunnel field accordingly, repeat steps S2-S6, and conduct repeated experiments to expand the threshold interval upwards and downwards respectively.
[0159] Step S8: Change the constant air pressure inlet set in step S2 to a constant air velocity inlet, and repeat steps S2-S7 to perform cross-validation.
[0160] Specifically, step S8 includes:
[0161] S81, wind speed range is 1-5 m / s.
[0162] S82. Change the air inlet setting in step S2 from "constant air pressure inlet" to "constant air velocity inlet". The corresponding output settlement result will change from "upstream and downstream cross-sectional air volume and attenuation rate" to "upstream and downstream cross-sectional average air pressure and pressure drop coefficient".
[0163] Step S9: Digital output of geometry generation and ventilation simulation.
[0164] Specifically, step S9 includes:
[0165] S91. Optimal Solution Comparison and Verification: Select the optimal solution from the set of optimal solutions, taking into account the specific engineering scenario requirements; if necessary, further verification can be carried out through physical experiments.
[0166] S92. Digital and Engineering Output: Using the parameter combination of the selected optimal solution, 3D models and performance reports are automatically generated in Grasshopper, and the parametric geometry generation program and simulation optimization program are encapsulated into a reusable Grasshopper battery pack template.
[0167] The performance report includes numerical values of each performance indicator, simulation cloud diagrams, and parameter sensitivity analysis results.
[0168] In summary, this application provides a parametric generation and simulation optimization method for a double-layer rainproof and ventilated perforated panel. This method achieves digital simulation of small-scale porous structures based on Butterfly, filling a technological gap. In step S1, this method replaces Boolean operations by using multiple closed curves to divide a single complete surface. The generated parametric geometric model is an untrimmed single surface, which can be directly recognized and calculated by the Butterfly simulation module, completely solving the problem of porous structure model failure caused by Boolean operations. Thus, for the first time, it is possible to accurately study the intrinsic relationship between geometric parameters such as hole size, density, and misalignment and ventilation resistance using Butterfly, overcoming the limitation of existing technologies that can only roughly set ventilation resistance reduction coefficients.
[0169] Furthermore, this method circumvents the limitations imposed by the Butterfly mesh generation mechanism on the ratio between the perforated plate size and the hole size, ensuring the effective operation of the computational model within the feasible parameter range. Through steps S6 and S7, this method repeatedly experiments to determine the basic threshold range of the input parameters, and then expands this range upwards and downwards respectively, thereby obtaining a wider feasible parameter range. This effectively avoids the problem of block mesh errors and Butterfly computational model failure caused by improper size ratios, ensuring stable operation of the simulation within the feasible parameter range and greatly expanding the application scope of Butterfly in engineering.
[0170] Furthermore, this method constructs an integrated closed-loop process from parametric geometry generation to simulation optimization, reducing R&D costs and technical barriers. The entire process can be automatically integrated within the Grasshopper platform, eliminating the need for manual switching between multiple software programs and writing complex command-line scripts, significantly reducing experimental costs and the requirements for fluid mechanics background. Through the packaged battery pack, designers only need to adjust the input parameters to automatically drive geometric model updates, simulation calculations, and result output. This enables product developers or architectural designers lacking CFD expertise to quickly conduct multi-parameter, multi-scheme airflow performance comparisons and collaborative optimizations in the early design stages, improving the efficiency of optimization iterations.
[0171] The above description is only a preferred embodiment of this application. It should be noted that for those skilled in the art, several improvements and substitutions can be made without departing from the technical principles of this application, and these improvements and substitutions should also be considered within the scope of protection of this application.
Claims
1. A method for parameterized generation and simulation optimization of a double-layer rainproof and ventilated perforated panel, characterized in that, Includes the following steps: S1. Based on the Grasshopper platform, a parametric geometry generation program is developed for a double-layer rainproof and ventilated perforated panel that uses multiple closed curves to divide a single complete surface. The parametric geometry generation program is then encapsulated as a battery pack, and adjustable input parameters are set. The parametric geometry model generated by the parametric geometry generation program includes an upper plate, a lower plate, and side baffles, and has staggered perforations and a swirling cavity formed by the side baffles and the upper and lower plates. S2. Connect the battery pack packaged in S1 to the Butterfly simulation module to create a wind tunnel field. Position the parametric geometric model in the center of the wind tunnel field and divide the wind tunnel field into an upstream inflow section, a middle perforated plate area, and a downstream outflow section. Configure the boundary conditions of the wind tunnel field: set the air inlet as a constant wind pressure inlet, the air outlet as a pressure outlet, and the wall as a no-slip boundary. S3. Configure mesh parameters to refine the mesh in the double-layer perforated plate area and around the holes, generate block mesh and refine it, and monitor the effectiveness of mesh generation in real time. S4. Create probe mesh, print residual convergence, and monitor, verify, and debug in real time; S5. Call the Simplefoam algorithm to solve the problem, monitor the calculation results in real time, and perform data extraction, analysis, processing, and visualization output. S6. Repeat steps S3 to S5 to obtain the basic threshold range of the input parameters. S7. Based on the basic interval threshold in S6, adjust the parameters of the parameterized geometric model and the wind tunnel field accordingly, repeat steps S2-S6, and conduct repeated experiments to expand the threshold interval upwards and downwards respectively. S8. Change the constant air pressure inlet set in step S2 to a constant air velocity inlet, and repeat steps S2-S7 to perform cross-validation. S9, digital output of geometry generation and ventilation simulation.
2. The parametric generation and simulation optimization method for the double-layer rainproof and ventilated perforated plate according to claim 1, characterized in that, Step S1 includes: S11. Define adjustable input parameters, including hole side length a, side baffle width b, plate thickness c, and plate side length L. S12. Generate the basic hole rectangle and copy it in an array. Perform center translation and staggered translation in sequence so that the orthographic projections of the holes are staggered and adjacent before and after translation; generate the outer frame rectangle of the plate size. S13. Generate the lower layer board: Use the holes after misalignment and translation as dividing lines to divide the entire surface of the board. Clean up overlapping data in the divided data list, sort by area and extract the surface with the largest area to generate the Surfaces list of the lower layer board. S14. Generate the upper layer plate: Use the centered and translated hole as the dividing line to divide the entire surface of the plate. Extract the surface with the largest area and then translate the plate thickness c upwards to generate the upper layer plate Surfaces list. S15. Generate side baffles: Generate line segments of length b around the base hole. After arraying, centering and shifting, and offsetting, cut and retain the line segments inside the plate as the baseline of the side baffles. Shift the line segments upward by c to obtain the top line of the side baffles. After extracting the start and end points, generate a list of side baffle Surfaces in a clockwise direction. S16. Connect the Surfaces list generated in steps S13, S14 and S15 to the battery pack to generate a double-layer plate geometric model. S17. Based on Grasshopper, establish parameter association logic through mathematical formulas, and set the perforation rate, solid board area, and side hole ratio performance indicators as output terminals respectively. S18. The parameterized geometry generation program is encapsulated as a battery pack. The four input parameters are set as hole side length a, side baffle width b, plate thickness c, and plate side length L. The four output parameters are set as double-layer plate geometric model, perforation rate, side hole ratio, and solid plate area.
3. The method for parameterized generation and simulation optimization of the double-layer rainproof and ventilated perforated plate according to claim 1, characterized in that, Step S2 includes: S21. Run the createBFGeometry module to create a wind tunnel field: pick up the cuboid in Rhino to generate the wind tunnel field, pick up the rectangular surface in Rhino that is close to the cuboid, and define the air inlet and air outlet. S22. Connect the battery pack to the parametric geometry generation program of step S1, position the parametric geometry model in the center of the cuboid, and divide the cuboid calculation field into three segments: upstream inflow segment, middle perforated plate area and downstream outflow segment. S23, Wind Tunnel Field Parameter Configuration: When the air inlet is set as a constant air pressure inlet, connect the outlet module and set the air outlet as a pressure outlet with an air pressure value of 0 Pa; connect the boundary module and set the air inlet as a constant air pressure inlet with an air pressure value of 5-20 Pa; connect the wall module and set the calculation field wall as a no-slip boundary. When the air inlet is set as a constant wind speed inlet, connecting the Inletvel module will allow the air inlet to be set as a constant wind speed inlet, with the wind speed value set to 1-5 m / s. S24. Connect the casefromgeos module and create a Butterfly instance.
4. The parametric generation and simulation optimization method for the double-layer rainproof and ventilated perforated plate according to claim 1, characterized in that, Step S3 includes: S31. Configure the mesh parameters and set the parameter value to 3. The global basic mesh size is automatically generated based on the size of the computational domain. Perform 3-level mesh refinement on the double-layer perforated plate area and the area around the holes. S32. Connect and run the blockMesh mesh generation tool to generate a block mesh; S33. Connect and run the snappyHexMesh mesh refinement tool to refine the block mesh; S34. Connect and run the loadMesh mesh visualization tool to monitor in real time whether the mesh generation is effective. If not, adjust the parameters until the mesh generation is error-free. Avoid non-convergence of calculation results due to mesh quality issues.
5. The method for parameterized generation and simulation optimization of the double-layer rainproof and ventilated perforated plate according to claim 1, characterized in that, Step S4 includes: S41. Connect the gentestpts module, create a probe grid, and define the probe monitoring grid surface by picking the surface in the computational field; set the grid parameters to 0.01-0.1; place the battery points upstream and downstream of the perforated plate, as well as the longitudinal and transverse sections of the entire field for comprehensive monitoring. S42. Connect the gentestpts module to the solutionParams module, set the solution parameters, connect the controlDict module, and set the simulation time step, output frequency and other parameters; set _end_time to 3000-10000, and adjust it appropriately according to the residual convergence. S43. Connect the steadylncomp module, call the Simplefoam incompressible steady-state solver, run the solution tool module to calculate, and print the residual convergence. S44. Run the PLOT RESIDUALS tool module to monitor in real time whether the residual convergence is successful; otherwise, adjust the parameters until the residual convergence is successful and there are no error messages.
6. The method for parameterized generation and simulation optimization of the double-layer rainproof and ventilated perforated plate according to claim 1, characterized in that, Step S5 includes: S51. After running the solution tool module for calculation, extract the simulation data of wind pressure and wind speed through the LOADprobes Value module, and digitize and visualize the results of wind speed and wind pressure. S52. Read the calculation report, check the calculation results, and identify any obviously abnormal data; if there are any obviously abnormal data, analyze the cause and debug or correct them. S53. Define the optimization objectives and constraints, establish a quantitative performance system, evaluation indicators and calculation formulas, write a data post-processing program, and output the final calculation results.
7. The parametric generation and simulation optimization method for the double-layer rainproof and ventilated perforated plate according to claim 6, characterized in that: When the air inlet is set to a constant air pressure inlet, the final calculation results include: cross-sectional air volume and attenuation rate of upstream and downstream sections, digital cloud map of wind pressure, digital cloud map of wind speed, vector cloud map of wind speed, and data charts. When the air inlet is set as a constant wind speed inlet, the final calculation results include: the average wind pressure and pressure drop coefficient of the upstream and downstream cross sections, the wind pressure digital cloud map, the wind speed digital cloud map, the wind speed vector cloud map, and data charts.
8. The method for parameterized generation and simulation optimization of the double-layer rainproof and ventilated perforated plate according to claim 1, characterized in that, Step S6 includes: S61. Through repeated experiments, the lower limit of the basic threshold range of the input parameters is obtained by monitoring the debugging window; S62. Through repeated experiments, combined with experience and optimization objectives, the upper limit of the basic threshold range of the input parameters is obtained; S63. Determine the basic threshold range of the input parameters based on the upper and lower limits.
9. The method for parameterized generation and simulation optimization of the double-layer rainproof and ventilated perforated plate according to claim 1, characterized in that, Step S9 includes: S91. Optimal Solution Comparison and Verification: From the set of optimal solutions, and in combination with the specific engineering scenario requirements, the optimal solution is selected. S92. Digital and Engineering Output: Using the parameter combination of the selected optimal solution, 3D models and performance reports are automatically generated in Grasshopper, and the parametric geometry generation program and simulation optimization program are encapsulated into a reusable Grasshopper battery pack template.
10. The parametric generation and simulation optimization method for the double-layer rainproof and ventilated perforated plate according to claim 9, characterized in that: The performance report includes numerical values for each performance indicator, simulation cloud diagrams, and parameter sensitivity analysis results.