Aircraft fuselage skin finite element model unit topology expansion method and system
By automating the processing of hybrid meshes in the finite element model of aircraft fuselage skin, planar unfolding from three-dimensional to two-dimensional was achieved, solving the problems of mesh visualization and data processing, improving analysis efficiency and data management capabilities, and supporting structural optimization and manufacturing process planning.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-29
- Publication Date
- 2026-03-20
AI Technical Summary
In existing technologies for finite element analysis of aircraft fuselage skin, the visualization effect of hybrid meshes is greatly affected by the viewing angle, making it difficult to intuitively present the overall structural features. The weak correlation of mesh data increases the difficulty of data interaction, and the complex mesh format in three-dimensional coordinates leads to low analysis efficiency and difficulty in parameter optimization.
An automated hybrid mesh processing scheme is adopted. By parsing BDF files, different element types are identified and classified, element geometric properties and topological relationships are calculated, and a breadth-first search algorithm is used to map the three-dimensional surface mesh to a two-dimensional plane, maintaining the element topological connectivity and generating a structured array.
It enables planar unfolding of the finite element model of aircraft fuselage skin, improving analysis efficiency, simplifying structural mechanics analysis, intuitively displaying the stress state, supporting parametric optimization and efficient data management, and providing a data foundation for strength analysis and digital manufacturing.
Smart Images

Figure CN121706499A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of finite element analysis technology for aircraft fuselage skin, specifically relating to a method and system for topological expansion of finite element model elements for aircraft fuselage skin. Background Technology
[0002] The aircraft fuselage skin is the outer surface of the fuselage, constituting its aerodynamic shape, maintaining a smooth surface, and bearing localized aerodynamic loads. In pressurized, sealed cockpit areas, the skin also bears internal pressure loads. The longitudinal stringers and transverse bulkheads within the fuselage skin form a framework that supports the skin. The stringers bear the axial forces on the fuselage and increase the skin's critical stress for compressive and shear instability. The bulkheads, perpendicular to the fuselage's longitudinal axis, are divided into ordinary frames and reinforced frames. Ordinary frames maintain the fuselage's cross-sectional shape and bear localized loads on the skin, while reinforced frames primarily disperse concentrated forces and then transmit them to the fuselage skin in the form of shear flow.
[0003] Computer-aided engineering (CAE) is currently the primary method for finite element analysis of aircraft fuselage skin. In the overall mechanical analysis of aircraft fuselage skin, the natural mesh finite element model is mainly relied upon. The natural mesh refers to a mesh based on the actual geometry of the fuselage skin. The mesh lines are arranged along the direction of the fuselage trusses and frames, consistent with the force transmission path of the fuselage skin, thus more realistically reproducing the structural topology. The mesh generation logic is consistent with the actual assembly relationship of the fuselage components, allowing for more accurate simulation of stress distribution. The analysis results of stress and deformation can be directly applied to specific components, facilitating engineers to optimize manufacturing processes or guide the planning of key areas for non-destructive testing.
[0004] The natural mesh finite element model for aircraft fuselage skin, through a synergistic mapping of geometry, mechanics, and manufacturing processes, not only improves the accuracy of the analysis model in reproducing the real structure but also shortens the cycle from simulation to engineering implementation. It is particularly suitable for high-precision analysis of complex shapes and is a key technology connecting design simulation and manufacturing practice. During the design phase, analyzing the mechanical properties of different structural schemes using natural mesh finite element analysis helps engineers optimize material distribution, cross-sectional shapes, and other aspects, achieving structural lightweighting while meeting strength requirements. For example, rationally adjusting the fuselage skin thickness or fuselage frame layout can reduce weight and fuel consumption without compromising safety. It eliminates the need for manufacturing numerous physical prototypes for testing; design rationality can be verified through computer analysis, reducing the number of tests and material waste. Simultaneously, it allows for rapid iteration of design schemes, shortening the time from conceptual design to mass production and improving R&D efficiency.
[0005] Structural finite element meshes often contain a mixture of multiple element types. In engineering practice, directly processing and analyzing data based on 3D meshes has many limitations: First, the visualization effect of 3D meshes is greatly affected by the viewing angle, making it difficult to intuitively present the overall structural features; second, the correlation between mesh data in different regions is weak, which is not conducive to batch analysis and parameter optimization; third, the mesh data format in 3D coordinates is complex, increasing the difficulty of data interaction.
[0006] Aircraft fuselage skin, as a complex three-dimensional structure, typically contains both 2D elements (quadrilaterals / triangles) and 1D elements (rods / beams). Furthermore, the finite element model of aircraft fuselage skin is in a spatial topological form, making direct analysis of its spatial stress distribution difficult. This hybrid mesh presents challenges for subsequent analysis and processing, especially when it is necessary to organize the mesh data in a structured manner.
[0007] Currently, for finite element models of aircraft fuselage skin, manual intervention is usually required to identify and separate different types of mesh elements, or specific mesh generation rules are relied upon. This is not only inefficient, but also difficult to adapt to complex and ever-changing engineering needs.
[0008] Topology unfolding is a crucial step connecting finite element analysis (FEM) with engineering practice. By converting three-dimensional structures to two-dimensional ones, it simplifies the complexity of structural mechanics analysis. Topology unfolding transforms curved surfaces or complex shapes into planes, converting three-dimensional problems into two-dimensional ones. This facilitates the calculation of stress and strain distribution within elements, reducing analytical complexity and improving computational efficiency. Aircraft fuselage skins are often thin-walled structures; topology unfolding provides a more intuitive view of their in-plane stress state, helping engineers optimize material layup, joint design, and stiffener placement, avoiding localized stress concentrations and enabling lightweight design. After topology unfolding, the stress contour maps and deformation trends of elements are clearly presented on a two-dimensional plane, allowing engineers to quickly locate high-stress areas and make targeted improvements to the structural design, thereby enhancing safety.
[0009] Therefore, realizing the planar unfolding of the aircraft fuselage skin mesh has important engineering significance. It can provide a structured data foundation for mesh quality assessment, facilitate parametric mesh optimization and modification, and provide convenience for subsequent adaptive mesh densification / sparsening.
[0010] In view of the above, this application is hereby filed. Summary of the Invention
[0011] The purpose of this application is to provide a method and system for topological expansion of finite element model elements for aircraft fuselage skin. This is an automated hybrid mesh processing scheme that can automatically identify and classify different element types in the hybrid mesh, classify and process quadrilateral, triangular 2D elements and 1D elements on the fuselage skin surface and perform coordinate mapping, maintain the topological connection relationship between elements, and intelligently transform the surface three-dimensional mesh elements into an ordered two-dimensional array structure.
[0012] The technical solution of this application is:
[0013] A method for topological expansion of finite element model elements for aircraft fuselage skin, comprising:
[0014] Step 1: Parse the BDF file:
[0015] S11. For GRID cards, parse the node coordinates and store them in the `nodeCoords` mapping;
[0016] S12. For CQUAD4, CTRIA3, and CROD unit cards, parse the unit ID, type, and connection relationship, store them in the `elements` vector, and record the mapping from unit to property `elementToProperty`.
[0017] S13. For PSHELL and PROD attribute cards, parse the attribute ID and associated material ID, and store them in the `propertyToMaterial` mapping;
[0018] S14. Analyze the material properties of the MAT1 material card;
[0019] Establish mapping relationship:
[0020] Node ID → Coordinates;
[0021] Unit ID → Attribute ID;
[0022] Attribute ID → Material ID.
[0023] Step 2: Calculate element geometric properties: Calculate element geometric properties and topological relationships;
[0024] Step 3: Organize the mesh structure: Map the cells into a two-dimensional array in an orderly manner;
[0025] Step 4: Data Output and Display: Generate a structured array, including:
[0026] Create a CSV file and write the following headers: row and column index, type, ID, material ID, curvature, center coordinates, and normal vector, and output the surface element data respectively;
[0027] Create a TXT file to print the 2D grid layout in rows and columns, visually displaying the distribution of different cell types.
[0028] According to at least one embodiment of this application, in the above-described method for topological expansion of finite element model units for aircraft fuselage skin, in step one, error handling is performed: skipping lines with format errors or parsing failures, and returning a parsing success flag.
[0029] According to at least one embodiment of this application, in the above-described method for topological expansion of finite element model units for aircraft fuselage skin, in step one, key data structures are defined:
[0030] Point3D: 3D point / vector, supports vector operations;
[0031] MeshElement: Stores raw mesh element information, including ID, type, node connections, geometric properties, and material properties;
[0032] OrganizedsurfaceElement / OrganizedrodElement: Organized mesh elements, including the position, geometric properties, and material properties of 2D and 1D elements in a two-dimensional array.
[0033] OrganizedsurfaceMesh / OrganizedrodMesh: The final organization result, consisting of a two-dimensional array of 2D and 1D cells.
[0034] According to at least one embodiment of this application, in the above-described method for topological expansion of finite element model units for aircraft fuselage skin, step two includes:
[0035] S21. Establish a fast mapping from cell ID to index;
[0036] S22. Calculate the center coordinates of each cell:
[0037] Iterate through all cells, and for each cell, calculate the average of the coordinates of all its nodes and store it in `MeshElement.center`;
[0038] S23. Calculate the normal vector and curvature of the element:
[0039] The cross product of two edge vectors is used to normalize and obtain the unit normal vector.
[0040] The average angle change between the normal vectors of adjacent elements is calculated using the `EstimateCurvature` function, and the average angle is used as an estimate of the element curvature.
[0041] S24. Identify the adjacency relationships between units:
[0042] The `BuildElementConnectivity` function establishes a mapping from nodes to cells, determines the adjacency relationship of cells through shared nodes, and forms a list of neighbors for the cell after removing its own cells. Each cell stores a list of its neighboring cell IDs.
[0043] According to at least one embodiment of this application, in the above-described method for topological expansion of finite element model units for aircraft fuselage skin, step three includes:
[0044] S31. Select the starting unit:
[0045] Calculate the geometric center of the model and select the cell with the smallest curvature and closest to the center as the starting cell for BFS traversal;
[0046] S32. Construct a local reference coordinate system:
[0047] Based on the cell edges and normal vectors of the starting cell, a local reference coordinate system is constructed, and reference vectors (refDirX, refDirY) in the X and Y directions are calculated. The center points of neighboring cells are offset and projected onto the reference coordinate system to determine the row and column positions.
[0048] S33, Breadth-first traversal:
[0049] Start with a BFS traversal from the starting cell and determine the cell's position in the array based on its projection relationship with the reference coordinate system;
[0050] S34. Construct a two-dimensional array:
[0051] Construct a two-dimensional array structure, dynamically determine the range of array rows and columns, fill in the cell IDs, and use negative values to identify triangular cells.
[0052] A finite element model topology unfolding system for aircraft fuselage skin includes:
[0053] The BDF file parsing module performs the following:
[0054] S11. For GRID cards, parse the node coordinates and store them in the `nodeCoords` mapping;
[0055] S12. For CQUAD4, CTRIA3, and CROD unit cards, parse the unit ID, type, and connection relationship, store them in the `elements` vector, and record the mapping from unit to property `elementToProperty`.
[0056] S13. For PSHELL and PROD attribute cards, parse the attribute ID and associated material ID, and store them in the `propertyToMaterial` mapping;
[0057] S14. Analyze the material properties of the MAT1 material card;
[0058] Establish mapping relationship:
[0059] Node ID → Coordinates;
[0060] Unit ID → Attribute ID;
[0061] Attribute ID → Material ID.
[0062] The element geometric property calculation module is used to calculate element geometric properties and topological relationships;
[0063] A grid structure organization module is used to map cells into a two-dimensional array in an orderly manner;
[0064] The data output and display module is used to generate structured arrays, including:
[0065] Create a CSV file and write the following headers: row and column index, type, ID, material ID, curvature, center coordinates, and normal vector, and output the surface element data respectively;
[0066] Create a TXT file to print the 2D grid layout in rows and columns, visually displaying the distribution of different cell types.
[0067] According to at least one embodiment of this application, in the above-described aircraft fuselage skin finite element model unit topology unfolding system, the BDF file parsing module performs error handling: skipping lines with format errors or parsing failures, and returning a parsing success flag.
[0068] According to at least one embodiment of this application, in the above-described aircraft fuselage skin finite element model unit topology unfolding system, the BDF file parsing module defines key data structures:
[0069] Point3D: 3D point / vector, supports vector operations;
[0070] MeshElement: Stores raw mesh element information, including ID, type, node connections, geometric properties, and material properties;
[0071] OrganizedsurfaceElement / OrganizedrodElement: Organized mesh elements, including the position, geometric properties, and material properties of 2D and 1D elements in a two-dimensional array.
[0072] OrganizedsurfaceMesh / OrganizedrodMesh: The final organization result, consisting of a two-dimensional array of 2D and 1D cells.
[0073] According to at least one embodiment of this application, in the above-described aircraft fuselage skin finite element model element topology unfolding system, the element geometric property calculation module performs the following:
[0074] S21. Establish a fast mapping from cell ID to index;
[0075] S22. Calculate the center coordinates of each cell:
[0076] Iterate through all cells, and for each cell, calculate the average of the coordinates of all its nodes and store it in `MeshElement.center`;
[0077] S23. Calculate the normal vector and curvature of the element:
[0078] The cross product of two edge vectors is used to normalize and obtain the unit normal vector.
[0079] The average angle change between the normal vectors of adjacent elements is calculated using the `EstimateCurvature` function, and the average angle is used as an estimate of the element curvature.
[0080] S24. Identify the adjacency relationships between units:
[0081] The `BuildElementConnectivity` function establishes a mapping from nodes to cells, determines the adjacency relationship of cells through shared nodes, and forms a list of neighbors for the cell after removing its own cells. Each cell stores a list of its neighboring cell IDs.
[0082] According to at least one embodiment of this application, in the above-described aircraft fuselage skin finite element model unit topology unfolding system, the mesh structure organization module performs the following:
[0083] S31. Select the starting unit:
[0084] Calculate the geometric center of the model and select the cell with the smallest curvature and closest to the center as the starting cell for BFS traversal;
[0085] S32. Construct a local reference coordinate system:
[0086] Based on the cell edges and normal vectors of the starting cell, a local reference coordinate system is constructed, and reference vectors (refDirX, refDirY) in the X and Y directions are calculated. The center points of neighboring cells are offset and projected onto the reference coordinate system to determine the row and column positions.
[0087] S33, Breadth-first traversal:
[0088] Start with a BFS traversal from the starting cell and determine the cell's position in the array based on its projection relationship with the reference coordinate system;
[0089] S34. Construct a two-dimensional array:
[0090] Construct a two-dimensional array structure, dynamically determine the range of array rows and columns, fill in the cell IDs, and use negative values to identify triangular cells.
[0091] This application has at least the following beneficial technical effects:
[0092] This paper presents a method and system for topological unfolding of finite element model elements for aircraft fuselage skin. This method maps 3D curved surface meshes to a 2D planar coordinate system, forming an ordered array structure while maintaining the topological relationships and key physical properties of the mesh elements. This enables structured management of the finite element elements for the skin. It solves the problems of difficult visualization and low data processing efficiency of complex curved surface meshes in engineering analysis, providing an efficient data foundation for fuselage skin strength analysis, fatigue life prediction, and digital manufacturing. Attached Figure Description
[0093] Figure 1 This is a schematic diagram of the finite element model element topology expansion method for aircraft fuselage skin provided in the embodiments of this application;
[0094] Figure 2 This is a schematic diagram of the flow design of the finite element model unit topology expansion method for aircraft fuselage skin provided in the embodiments of this application;
[0095] Figure 3 This is a schematic diagram of the fuselage skin finite element model unit topology unfolding system provided in the embodiments of this application.
[0096] To better illustrate this embodiment, some content in the accompanying drawings may be omitted, enlarged, or reduced. They are for illustrative purposes only and should not be construed as limiting the scope of this application. Detailed Implementation
[0097] To make the technical solution and advantages of this application clearer, the technical solution of this application will be described in a clearer and more complete manner below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are only some embodiments of this application, and are only used to explain this application, not to limit this application. It should be noted that, for ease of description, only the parts related to this application are shown in the accompanying drawings, and other related parts can be referred to the general design.
[0098] Furthermore, unless otherwise defined, the technical or scientific terms used in this application description shall have the ordinary meaning understood by one of ordinary skill in the art to which this application pertains. The word "comprising" as used in this application description indicates that the concept preceding the word encompasses the concepts listed following the word and their equivalents, without excluding other related concepts.
[0099] A method for topological expansion of finite element model elements for aircraft fuselage skin, such as... Figure 1 As shown, the mixed-type mesh cells are processed without relying on the regularity of the initial mesh. An automatic arrangement strategy based on curvature and geometric features is adopted to maintain the topological connectivity of the original mesh.
[0100] A breadth-first search (BFS) algorithm is used to traverse all cells, realizing the mapping from a 3D mesh to a 2D array. A dynamic reference coordinate system is adopted, and a local coordinate system is established based on the geometric features of the starting cell. An angle-first sorting rule is used to sort adjacent cells according to their projection angles before processing. A conflict resolution mechanism is adopted, which uses hierarchical backtracking to resolve position conflicts, in order to overcome the three main problems faced by the traditional BFS algorithm in mesh processing: lack of spatial positioning reference, difficulty in determining the unfolding direction, and inability to handle branch structures.
[0101] Step 1: Parse the BDF file: Separate 2D elements (quadrilaterals / triangles) and 1D elements (rods / beams).
[0102] S11. For GRID cards, parse the node coordinates and store them in the `nodeCoords` mapping.
[0103] S12. For CQUAD4, CTRIA3, and CROD unit cards, parse the unit ID, type, and connection relationship, store them in the `elements` vector, and record the mapping from unit to property `elementToProperty`.
[0104] S13. For PSHELL and PROD attribute cards, parse the attribute ID and associated material ID, and store them in the `propertyToMaterial` mapping.
[0105] S14. Analyze the material properties of the MAT1 material card.
[0106] To handle field positions in an 80-character record, such as a node ID between characters 8 and 16, establish a mapping relationship:
[0107] Node ID → Coordinates;
[0108] Unit ID → Attribute ID;
[0109] Attribute ID → Material ID.
[0110] Error handling: Skip lines with format errors or failed parsing, and return a parsing success flag (at least one node was parsed).
[0111] Key data structure definitions:
[0112] Point3D: 3D point / vector, supports vector operations;
[0113] MeshElement: Stores raw mesh element information, including ID, type, node connections, geometric properties (center, normal vector), and material properties;
[0114] OrganizedsurfaceElement / OrganizedrodElement: Organized mesh elements, including the position (row, column) of 2D and 1D elements in a two-dimensional array, geometric properties, and material properties.
[0115] OrganizedsurfaceMesh / OrganizedrodMesh: The final organization result, consisting of a two-dimensional array of 2D and 1D cells.
[0116] Automatic format detection: Compatible with comma-separated formats (such as ASCII export format) and 8-character fixed formats (standard BDF), automatically determining the format based on the leading character and field separator, including:
[0117] Comma-separated format check: Checks if a comma exists in a line (line.find(',') != npos), applicable to standard formats containing commas as separators.
[0118] Fixed 8-character format detection: Check if the field is right-aligned (leading space followed by 8-character field), and verify if the field spacing is strictly 8 characters (nextNonSpace - nextPos == 8). Typical characteristics: " 1 10.0 20.030.0 ".
[0119] Intelligent fault tolerance processing: Only the first 5 rows of data are checked to avoid interference from invalid rows, and the format of the node part is the main focus (the amount of node data is usually larger and the format is more uniform).
[0120] Special line handling: handle continuation lines (lines starting with ""), skip comments (lines starting with "$").
[0121] Step 2: Calculate the geometric properties of the unit: Calculate the geometric properties and topological relationships of the unit.
[0122] S21. Establish a fast mapping from unit ID to index.
[0123] S22. Calculate the center coordinates of each cell.
[0124] Iterate through all cells, and for each cell, calculate the average of the coordinates of all its nodes and store it in `MeshElement.center`.
[0125] S23. Calculate the normal vector and curvature of the unit.
[0126] The cross product of two edge vectors is used to normalize and obtain the unit normal vector, which is used to determine the local orientation and reference coordinate system of the surface.
[0127] The `EstimateCurvature` function is used to calculate the average angle change between the normal vectors of adjacent elements. The average angle is used as an estimate of the element curvature, which reflects the curvature of the surface in the region where the element is located. The smaller the curvature value, the flatter the surface, which is suitable as a sorting starting point.
[0128] `CalculateAllCurvatures` calculates the curvature values for all elements.
[0129] S24. Identify the adjacency relationships between units.
[0130] The `BuildElementConnectivity` function establishes a mapping from nodes to cells, determines the adjacency relationship of cells through shared nodes, and forms a list of neighbors for the cell after removing its own cells. Each cell stores a list of its neighboring cell IDs.
[0131] Step 3: Organize the mesh structure: BFS unpacking + projection sorting to map the cells into a two-dimensional array in an orderly manner.
[0132] S31. Select the starting unit.
[0133] Calculate the geometric center of the model, and select the cell with the smallest curvature and closest to the center as the starting cell for the BFS traversal.
[0134] S32. Construct a local reference coordinate system.
[0135] Based on the cell edges and normal vectors of the starting cell, a local reference coordinate system is constructed, and reference vectors (refDirX, refDirY) in the X and Y directions are calculated. The center points of neighboring cells are offset and projected onto the reference coordinate system to determine the row and column positions.
[0136] S33, Breadth-first traversal.
[0137] Start with a BFS traversal from the starting cell and determine the cell's position in the array based on its projection relationship with the reference coordinate system.
[0138] Position conflicts are handled by sorting by angle and determining priority.
[0139] S34. Construct a two-dimensional array:
[0140] Construct a two-dimensional array structure (rows and columns), dynamically determine the range of array rows and columns, and fill in the cell IDs (triangular cells are identified by negative values).
[0141] Step 4: Data Output and Display: Generate a structured array.
[0142] Create a CSV file and write the following headers: row and column index, type, ID, material ID, curvature, center coordinates, and normal vector. Output the surface element data accordingly.
[0143] Create a TXT file to print the 2D grid layout in rows and columns, visually displaying the distribution of different cell types.
[0144] The above-described embodiment discloses a method for topological expansion of finite element model units for aircraft fuselage skin, and its processing flow is as follows: Figure 2 As shown, the key processing code is designed as follows:
[0145] a) Algorithm input and output:
[0146] enter:
[0147] - Grid cell set E = {e1, e2, ..., e n}, where each unit eᵢ contains:
[0148] - Unit type t ∈ {QUAD, TRIA, ROD}
[0149] - Node connection list [n1, n2, ...]
[0150] - Unit ID
[0151] - Node coordinate mapping N : nodeID → (x, y, z)
[0152] Output:
[0153] - Structured mesh representation:
[0154] - A 2D array S[m×n]
[0155] - A 1D two-dimensional array R[l×k]
[0156] b) Pseudocode for organizing grid structure:
[0157] Input: 2D element list, node coordinates
[0158] Output: Cell array
[0159] 1. Calculate the center point of the model
[0160] 2. Select the unit with the smallest curvature and closest to the center as the starting point.
[0161] 3. Construct a reference coordinate system (X = first edge, Y = normal vector × X)
[0162] 4. Initialize the BFS queue, starting at position (0,0)
[0163] 5. while queue is not empty:
[0164] 6. Current unit = Dequeue
[0165] 7. Calculate the orientation of all unprocessed adjacent cells relative to the current cell.
[0166] 8. Sort adjacent elements according to their angle relative to the reference coordinate system.
[0167] 9. For each adjacent cell:
[0168] 10. Calculate candidate positions in the array.
[0169] 11. Check if the location is occupied.
[0170] 12. If there are no conflicts, mark the position and add it to the queue.
[0171] 13. Determine the range of rows and columns in the array.
[0172] 14. Construct a two-dimensional array
[0173] as well as,
[0174] Input: 1D element list, node coordinates
[0175] Output: Cell array
[0176] 1. Initialize the average direction vector
[0177] 2. For each 1D element:
[0178] 3. Calculate the directions at both endpoints.
[0179] 4. Unified direction (same as the average direction)
[0180] 5. Accumulate to the average direction
[0181] 6. Normalized average direction
[0182] 7. For each 1D element:
[0183] 8. Calculate the projection of the center point onto the principal direction.
[0184] 9. Sort and group 1D elements by projection value
[0185] 10. Sort according to the circumferential angle of the plane where the center point of the 1D unit is located.
[0186] 11. Construct a two-dimensional array, filling in the two-dimensional array according to the row and column numbers of the 1D cells.
[0187] The above-described embodiment discloses a topology unfolding method for finite element model units of aircraft fuselage skin. This method is a planar unfolding technique for aircraft fuselage models based on hybrid mesh processing. By parsing BDF format mesh files, constructing topological relationships, calculating key attributes, and achieving accurate 3D-to-2D mapping, it effectively solves the visualization and data processing challenges of complex curved surface meshes in engineering applications. Experimental results show that this method can completely preserve the topological relationships and physical properties of mesh units, and the unfolding error is controlled within the allowable range for engineering applications. It can provide efficient data support for fuselage skin analysis and manufacturing process planning.
[0188] The finite element model element topology expansion method for aircraft fuselage skin disclosed in the above embodiments achieves a two-dimensional array arrangement of surface elements through curvature analysis, reference coordinate system construction, and a breadth-first search strategy. It supports multiple element types (triangles, quadrilaterals, rods, beams, hexahedrons, etc.), fully parses the material property chain (element → property → material), provides complete geometric calculations (center point, normal vector), and outputs a clear structure (two-dimensional array + CSV format).
[0189] A finite element model element topology unfolding system for aircraft fuselage skin, such as Figure 3 As shown, it includes:
[0190] The BDF file parsing module performs the following:
[0191] S11. For GRID cards, parse the node coordinates and store them in the `nodeCoords` mapping;
[0192] S12. For CQUAD4, CTRIA3, and CROD unit cards, parse the unit ID, type, and connection relationship, store them in the `elements` vector, and record the mapping from unit to property `elementToProperty`.
[0193] S13. For PSHELL and PROD attribute cards, parse the attribute ID and associated material ID, and store them in the `propertyToMaterial` mapping;
[0194] S14. Analyze the material properties of the MAT1 material card;
[0195] Establish mapping relationship:
[0196] Node ID → Coordinates;
[0197] Unit ID → Attribute ID;
[0198] Attribute ID → Material ID.
[0199] The element geometric property calculation module is used to calculate element geometric properties and topological relationships;
[0200] A grid structure organization module is used to map cells into a two-dimensional array in an orderly manner;
[0201] The data output and display module is used to generate structured arrays, including:
[0202] Create a CSV file and write the following headers: row and column index, type, ID, material ID, curvature, center coordinates, and normal vector, and output the surface element data respectively;
[0203] Create a TXT file to print the 2D grid layout in rows and columns, visually displaying the distribution of different cell types.
[0204] The topology unfolding system for the finite element model of the aircraft fuselage skin disclosed in the above embodiments is described in a relatively simple manner since it corresponds to the topology unfolding method for the finite element model of the aircraft fuselage skin disclosed in the above embodiments. For specific details, please refer to the relevant descriptions in the section on the topology unfolding method for the finite element model of the aircraft fuselage skin. Its technical effects can also be referred to the relevant parts of the technical effects in the section on the topology unfolding method for the finite element model of the aircraft fuselage skin, and will not be repeated here.
[0205] Furthermore, those skilled in the art should recognize that the various modules of the device disclosed in the embodiments of this application can be implemented in electronic hardware, computer software, or a combination of both. In order to clearly illustrate the interchangeability of hardware and software, they are generally described in terms of function in this application. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can choose different methods to implement the described functions for each specific application and its actual constraints, but such implementation should not be considered to be beyond the scope of this application.
[0206] The technical solution of this application has been described in conjunction with the preferred embodiments shown in the accompanying drawings. Those skilled in the art should understand that the protection scope of this application is obviously not limited to these specific embodiments. Without departing from the principles of this application, those skilled in the art can make equivalent changes or substitutions to the relevant technical features, and the technical solutions after these changes or substitutions will all fall within the protection scope of this application.
Claims
1. A method for topological expansion of finite element model elements for aircraft fuselage skin, characterized in that, include: Step 1: Parse the BDF file: S11. For GRID cards, parse the node coordinates and store them in the `nodeCoords` mapping; S12. For CQUAD4, CTRIA3, and CROD unit cards, parse the unit ID, type, and connection relationship, store them in the `elements` vector, and record the mapping from unit to property `elementToProperty`. S13. For PSHELL and PROD attribute cards, parse the attribute ID and associated material ID, and store them in the `propertyToMaterial` mapping; S14. Analyze the material properties of the MAT1 material card; Establish mapping relationship: Node ID → Coordinates; Unit ID → Attribute ID; Attribute ID → Material ID; Step 2: Calculate element geometric properties: Calculate element geometric properties and topological relationships; Step 3: Organize the mesh structure: Map the cells into a two-dimensional array in an orderly manner; Step 4: Data Output and Display: Generate a structured array, including: Create a CSV file and write the following headers: row and column index, type, ID, material ID, curvature, center coordinates, and normal vector, and output the surface element data respectively; Create a TXT file to print the 2D grid layout in rows and columns, visually displaying the distribution of different cell types.
2. The method for topological expansion of finite element model units for aircraft fuselage skin according to claim 1, characterized in that, In step one, error handling is performed: skip lines with format errors or failed parsing, and return a parsing success flag.
3. The method for topological expansion of finite element model units for aircraft fuselage skin according to claim 2, characterized in that, In step one, the key data structures are defined: Point3D: 3D point / vector, supports vector operations; MeshElement: Stores raw mesh element information, including ID, type, node connections, geometric properties, and material properties; OrganizedsurfaceElement / OrganizedrodElement: Organized mesh elements, including the position, geometric properties, and material properties of 2D and 1D elements in a two-dimensional array; OrganizedsurfaceMesh / OrganizedrodMesh: The final organization result, consisting of a two-dimensional array of 2D and 1D cells.
4. The method for topological expansion of finite element model units for aircraft fuselage skin according to claim 3, characterized in that, Step two includes: S21. Establish a fast mapping from cell ID to index; S22. Calculate the center coordinates of each cell: Iterate through all cells, and for each cell, calculate the average of the coordinates of all its nodes and store it in `MeshElement.center`; S23. Calculate the normal vector and curvature of the element: The cross product of two edge vectors is used to normalize and obtain the unit normal vector. The average angle change between the normal vectors of adjacent elements is calculated using the `EstimateCurvature` function, and the average angle is used as an estimate of the element curvature. S24. Identify the adjacency relationships between units: The `BuildElementConnectivity` function establishes a mapping from nodes to cells, determines the adjacency relationship of cells through shared nodes, and forms a list of neighbors for the cell after removing its own cells. Each cell stores a list of its neighboring cell IDs.
5. The method for topological expansion of finite element model units for aircraft fuselage skin according to claim 4, characterized in that, Step three includes: S31. Select the starting unit: Calculate the geometric center of the model and select the cell with the smallest curvature and closest to the center as the starting cell for BFS traversal; S32. Construct a local reference coordinate system: Based on the cell edges and normal vectors of the starting cell, a local reference coordinate system is constructed, and reference vectors (refDirX, refDirY) in the X and Y directions are calculated. The center points of neighboring cells are offset and projected onto the reference coordinate system to determine the row and column positions. S33, Breadth-first traversal: Start with a BFS traversal from the starting cell and determine the cell's position in the array based on its projection relationship with the reference coordinate system; S34. Construct a two-dimensional array: Construct a two-dimensional array structure, dynamically determine the range of array rows and columns, fill in the cell IDs, and use negative values to identify triangular cells.
6. A topology unfolding system for a finite element model of an aircraft fuselage skin, characterized in that, include: The BDF file parsing module performs the following: S11. For GRID cards, parse the node coordinates and store them in the `nodeCoords` mapping; S12. For CQUAD4, CTRIA3, and CROD unit cards, parse the unit ID, type, and connection relationship, store them in the `elements` vector, and record the mapping from unit to property `elementToProperty`. S13. For PSHELL and PROD attribute cards, parse the attribute ID and associated material ID, and store them in the `propertyToMaterial` mapping; S14. Analyze the material properties of the MAT1 material card; Establish mapping relationship: Node ID → Coordinates; Unit ID → Attribute ID; Attribute ID → Material ID; The element geometric property calculation module is used to calculate element geometric properties and topological relationships; A grid structure organization module is used to map cells into a two-dimensional array in an orderly manner; The data output and display module is used to generate structured arrays, including: Create a CSV file and write the following headers: row and column index, type, ID, material ID, curvature, center coordinates, and normal vector, and output the surface element data respectively; Create a TXT file to print the 2D grid layout in rows and columns, visually displaying the distribution of different cell types.
7. The aircraft fuselage skin finite element model unit topology unfolding system according to claim 6, characterized in that, In the BDF file parsing module, error handling is performed: lines with format errors or parsing failures are skipped, and a parsing success flag is returned.
8. The aircraft fuselage skin finite element model unit topology unfolding system according to claim 7, characterized in that, In the BDF file parsing module, key data structures are defined: Point3D: 3D point / vector, supports vector operations; MeshElement: Stores raw mesh element information, including ID, type, node connections, geometric properties, and material properties; OrganizedsurfaceElement / OrganizedrodElement: Organized mesh elements, including the position, geometric properties, and material properties of 2D and 1D elements in a two-dimensional array; OrganizedsurfaceMesh / OrganizedrodMesh: The final organization result, consisting of a two-dimensional array of 2D and 1D cells.
9. The aircraft fuselage skin finite element model unit topology unfolding system according to claim 8, characterized in that, In the unit geometric property calculation module, the following is performed: S21. Establish a fast mapping from cell ID to index; S22. Calculate the center coordinates of each cell: Iterate through all cells, and for each cell, calculate the average of the coordinates of all its nodes and store it in `MeshElement.center`; S23. Calculate the normal vector and curvature of the element: The cross product of two edge vectors is used to normalize and obtain the unit normal vector. The average angle change between the normal vectors of adjacent elements is calculated using the `EstimateCurvature` function, and the average angle is used as an estimate of the element curvature. S24. Identify the adjacency relationships between units: The `BuildElementConnectivity` function establishes a mapping from nodes to cells, determines the adjacency relationship of cells through shared nodes, and forms a list of neighbors for the cell after removing its own cells. Each cell stores a list of its neighboring cell IDs.
10. The aircraft fuselage skin finite element model unit topology unfolding system according to claim 9, characterized in that, In the mesh structure organization module, the following is performed: S31. Select the starting unit: Calculate the geometric center of the model and select the cell with the smallest curvature and closest to the center as the starting cell for BFS traversal; S32. Construct a local reference coordinate system: Based on the cell edges and normal vectors of the starting cell, a local reference coordinate system is constructed, and reference vectors (refDirX, refDirY) in the X and Y directions are calculated. The center points of neighboring cells are offset and projected onto the reference coordinate system to determine the row and column positions. S33, Breadth-first traversal: Start with a BFS traversal from the starting cell and determine the cell's position in the array based on its projection relationship with the reference coordinate system; S34. Construct a two-dimensional array: Construct a two-dimensional array structure, dynamically determine the range of array rows and columns, fill in the cell IDs, and use negative values to identify triangular cells.