Rapid modeling method for finite element of bridge rod system unit, electronic equipment and storage medium
Through the Python language combining rod system structure and BIM modeling logic, the object-oriented programming method is used to solve the problems of complex parameter adjustment and model generation in bridge design, and flexible modeling and low-cost development are realized on different software platforms.
Patent Information
- Application Number
- CN202510555521.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-29
- Publication Date
- 2025-08-15
Smart Images

Figure CN120493354A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of building modeling and design, and in particular relates to a rapid modeling method, electronic equipment and storage medium for finite element of bridge bar system units. Background Art
[0002] During bridge design, adjusting parameters often requires extensive model adjustments, which, for complex bridges, represents a significant workload. The ability to implement parametric modeling and analysis through secondary development of finite element software, and to intelligently adjust and optimize structural parameters, is crucial for bridge design. In bridge design, the use of a bar structure is often employed for modeling the overall load calculations.
[0003] In the patent with application number 202310728349.6, although finite element software is combined to form a method for rapid modeling of bar structures, the following shortcomings still exist: ① In the process of adjusting complex bridge parameters, it is difficult to generate complex linear shapes, such as adjusting curvature and radius. ② During the modeling process, other 3D modeling software must be used to import or create basic data, and it is not possible to flexibly directly edit the underlying data to generate and modify the model. ③ Regarding how to flexibly divide the grid and generate complex cross-sectional forms, the patent does not provide specific methods. ④ The logic of model construction needs to be improved. If this method needs to be migrated to other software platforms, it will face high development costs and the code reusability is not ideal.
[0004] Patents with application numbers CN202311710979.7 and CN202410761021.9 both propose rapid modeling methods from BIM models to finite element models, but the following shortcomings still exist: ① Users must first build a BIM model before they can perform model conversion, which requires users to be proficient in BIM software, thereby increasing the user's learning cost. ② The relevant patent literature lacks a detailed description of the method for converting BIM models to finite element models; specifically, these patents do not explain how to convert BIM models into specific unit types, nor do they provide specific steps for meshing. For structures with complex shapes, how to establish corresponding volume units or line units in the finite element model is also not explained. Summary of the Invention
[0005] The main purpose of the present invention is to provide a rapid modeling method, electronic equipment and storage medium for bridge bar unit finite elements based on the logic of bar modeling. By combining bar structure modeling with BIM modeling logic, a clearer and more reasonable modeling method is constructed. Users can modify simple underlying data or utilize the results already formed in the method to effectively combine with other software to achieve analysis and modeling at a lower cost.
[0006] In order to achieve the above object, the solution of the present invention is: A fast modeling method for bridge bar unit finite element, using Python language, including: Step 1: Use Python to edit class properties, including structure class, material class, section class, axis class, boundary class, load class, node class, and element class. All classes include API call methods corresponding to the target finite element software. Step 2: Create material and cross-section instances; Step 3: Based on the bridge type, the bridge structure is divided into different component instances in the structure class. Each component instance contains the attributes of the axis, cross-section, structure generation method, material, and unit. After the structure class is determined, the boundary information between different components is bound through the boundary class, and the load class is used to determine the loads acting on different components. Step 4: The axis class is encapsulated to include a line class, a circle class, an ellipse class, and a plane class; the component instance is bound to the axis instance to determine the position of the component instance in space; Step 5. Add a calculation module to solve the parametric equations between lines, lines and surfaces, and surfaces and surfaces to obtain the intersection points or intersection lines. When meshing, the user determines the line or surface equations used for meshing, and the program automatically calculates the intersection points between the axis and the surface for meshing. Step 6: Obtain each segmentation point on the axis and connect each segmentation point to generate a corresponding unit set; the unit type in the bar structure includes beam unit and truss unit; Step 7. Create boundary and load instances. Boundary types include general support, elastic connection, and rigid connection. Load types include concentrated load and distributed load. Create a load instance, bind it to the unit or node to which the load needs to be added, and enter the load information.
[0007] The structure class at least includes the structure name, number, type and substructure set; the material class at least includes the material name, number, elastic modulus, Poisson's ratio and thermal expansion coefficient; the section class at least includes the section name, number, section contour point set; the axis class at least includes the parametric equation, parameter range and basic parameter values for determining the axis; the boundary class at least includes the number, type, action object; the load class at least includes the type, action object and size direction; the node class at least includes the number and coordinates; the unit class at least includes the number, type and included nodes.
[0008] Preferably, in step 2, the cross-sectional profile of the cross-sectional class includes a cross-sectional and cross-section Two sections, the coordinates of each section boundary point are stored in a nested list format. The first list is the section outer contour, and the rest are the section inner contours, thus generating a hollow section. When the structure is of equal cross-section, only the section needs to be entered. , when the cross section is variable, enter the cross section at both ends and .
[0009] An electronic device includes a processor, a memory, and an application program; the application program is stored in the memory and is configured so that the processor executes the fast modeling method of the finite element of the bridge bar system unit.
[0010] A computer-readable storage medium stores a computer program; when the computer program is executed in the computer, the computer is caused to execute the rapid modeling method of the bridge bar unit finite element.
[0011] After adopting the above technical solution, the present invention has the following technical effects: (1) The present invention utilizes object-oriented programming methods to divide the bridge structure into specific component classes.
[0012] (2) Thanks to the object-oriented programming method, users only need to inherit the parent class and add methods for conversion of a certain software or some unique attribute methods in the subclass to generate or modify models on different software (including BIM software or other finite element software). Other attributes and methods are general methods and do not need to be rewritten or modified, making the code easy to expand and maintain, greatly reducing the subsequent expansion and development costs. The present invention binds the component class with the axis attribute, so that users only need to adjust the axis equation parameters to achieve complex linear modification.
[0013] (3) The present invention adds a calculation module, including the solution method of establishing line-line, line-surface intersection, and surface-surface intersection, so that users can quickly and flexibly generate beam unit division schemes according to their needs. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] Figure 1 This is a category diagram of a specific embodiment of the present invention.
[0015] Figure 2 This is a code diagram for calling the Midas Civil generation unit in a specific embodiment of the present invention. Figure 1 .
[0016] Figure 3 This is a code diagram for calling the Midas Civil generation unit in a specific embodiment of the present invention. Figure 2 .
[0017] Figure 4This is a schematic diagram of component division according to a specific embodiment of the present invention.
[0018] Figure 5 This is a schematic diagram of a partial code of a straight line type according to a specific embodiment of the present invention.
[0019] Figure 6 This is a code diagram of calling the Midas Civil2024Nx interface to establish a unit class in a specific embodiment of the present invention. Figure 1 .
[0020] Figure 7 This is a code diagram of calling the Midas Civil2024Nx interface to establish a unit class in a specific embodiment of the present invention. Figure 2 .
[0021] Figure 8 Schematic diagram of a bridge tower model according to a specific embodiment of the present invention.
[0022] Figure 9 Schematic diagram of the main beam model of a specific embodiment of the present invention. DETAILED DESCRIPTION
[0023] In order to further explain the technical solution of the present invention, the present invention is described in detail below through specific embodiments.
[0024] The present invention uses Python language and Midas Civil, a professional finite element software for truss structure bridges, as an example of finite element software to disclose a rapid modeling method for bridge truss unit finite elements, including: Step 1. Reference Figure 1 As shown, the Python language is used to implement the editing of class properties, including structure class, material class, section class, axis class, boundary class, load class, node class and unit class. Basic properties and methods are defined in each class: the structure class at least includes the structure name, number, type and substructure set (list); the material class at least includes the material name, number, elastic modulus, Poisson's ratio and thermal expansion coefficient; the section class at least includes the section name, number, section contour point set (nested list form, the outer contour and the inner contour are stored separately); the axis class at least includes the parametric equation, parameter range and the basic parameter value for determining the axis; the boundary class at least includes the number, type, action object (node / unit); the load class at least includes the type, action object and size direction; the node class at least includes the number and coordinates; the unit class at least includes the number, type and containing nodes; all classes include the API calling method corresponding to the target finite element software. Therefore, except for the API calling method corresponding to the target finite element software, the other properties are all information commonly required for bar modeling. Therefore, for the rapid generation of the target finite element software model, it is only necessary to add the corresponding calling method, which can greatly improve the utilization of the code. For example, Figure 2 get_civil_json and Figure 3 The create_ElementObjs method is used to call Midas Civil to generate units.
[0025] Step 2: Before generating structural information, create material and section instances. The material class includes: material name, Poisson's ratio, elastic modulus and other specific information required for calculation. The section class includes the section name and section profile: and cross-section Two sections, the coordinates of each section boundary point are stored in a nested list format. The first list is the section outer contour, and the rest are the section inner contours. This way, a hollow section can be generated. When the structure is of equal cross-section, only the section needs to be entered. , and when the cross section is variable, enter the cross section at both ends and .
[0026] Step 3. Reference Figure 4 As shown in the figure, the bridge structure is divided into different component instances within the structure class, corresponding to the bridge type. For example, a simply supported T-beam bridge can be divided into the main beam, piers, abutments, supports, and pile foundations. Each component instance includes properties such as axis, cross-section, structure generation method (stretch, sweep, etc.), material, and element. After the structure class is determined, the boundary information between different components is bounded using the boundary class, and the load class determines the loads acting on different components.
[0027] Step 4: The axis class is encapsulated into line class, circle class, ellipse class and plane class. Taking the line class as an example, the parametric equation of the line is ,in represents the position vector of a point on the line, represents the vector of a known point on the line, represents an adjustable parameter, Represents the direction vector of the straight line. In this way, any component with a straight line axis can be adjusted by modifying the adjustable parameters The value range, modify its length, modify its direction vector and the known point vector By changing the value of , we can change its position in space. Similarly, we can establish parametric equations for other axis types. By binding the component instance to the axis instance, we can determine the position of the component instance in space, i.e., the line shape. Figure 5 The figure shows a partial code diagram of the straight line class of the present invention.
[0028] Step 5. Add a calculation module. By solving the parametric equations between lines, lines and surfaces, and surfaces and surfaces, the intersection points or intersection lines can be obtained. When meshing, the user determines the line or surface equations used to divide the mesh, and the program automatically calculates the axis and its intersection point for meshing, which greatly improves the flexibility and controllability of meshing.
[0029] Step 6: Obtain each segmentation point on the axis, and connect each segmentation point to generate a corresponding unit set; the unit types in the bar structure include beam units and truss units.
[0030] Step 7: Create boundaries and load instances. Boundary types include general support, elastic connection, and rigid connection. For example, to define the boundary between a pile foundation and a cap, simply create a rigid connection boundary instance and bind the corresponding connection nodes on the pile foundation and cap instances. Load types include concentrated loads and distributed loads. Create a load instance, bind it to the element or node to which the load is to be added, and enter the load information.
[0031] After completing the above steps, you can call the interface of the relevant finite element software to quickly build the model. Figure 6 、 7 As shown, the code for calling the Midas Civil2024Nx interface to establish a unit class is shown.
[0032] Through the above scheme, the present invention utilizes an object-oriented programming method to divide the bridge structure into specific component classes; at the same time, thanks to the object-oriented programming method, users only need to inherit the parent class and add methods for software conversion or some unique attribute methods in the subclass to generate or modify models on different software (including BIM software or other finite element software), while other attributes and methods are general methods and do not need to be rewritten or modified, making the code easy to expand and maintain, greatly reducing the subsequent expansion and development costs; the present invention binds the component class with the axis attribute, so that the user only needs to adjust the axis equation parameters to achieve the modification of complex linear shapes; the present invention adds a calculation module, including the establishment of line-to-line, line-to-surface intersection, surface-to-surface intersection solution methods, etc., so that users can quickly and flexibly generate beam unit division schemes according to their needs.
[0033] Below, we take MIDAS CIVIL2024NX software as an example to perform rapid modeling of a multi-tower curved cable-stayed bridge.
[0034] According to the above modeling logic, the bridge structure is divided into left pylon, middle pylon, right pylon, main beam and cable-stayed cable, virtual cross beam and virtual longitudinal beam.
[0035] The bridge tower can be divided into: bridge tower, bridge pier, abutment, and pile foundation. The bridge pier is divided into left and right circular curve segments and straight line segments, with a total of 4 sub-components; the axis of the bridge tower is an elliptical curve; the axes of the abutment and pile foundation are straight lines; the main beam is a circular curve, which can be divided into 9 circular curve segments with different radii according to the beam grid method; the cable axis is a straight line.
[0036] Taking the foundation as an example, its height is 3.5m, the vertex coordinates are (0,0,0), C30 concrete is used, and the cross-section is a rectangle of 25.1×16.6.
[0037] Create a C30 material instance and set its basic properties: Material ID 1, Name "C30", Elastic Modulus 31500, Poisson's Ratio 0.2, Shear Modulus 12600, Thermal Expansion Coefficient 0.0001, Bulk Density 25, Damping Ratio 0.2.
[0038] Create a section instance and set its basic properties: No. 1, Name: "Middle Tower Cap", Contour Point Set [[(0,0),(25.1,0),(25.1,16.6),(0,16.6),(0,0)]].
[0039] Create a line (axis) instance and set its basic properties: known point (0,0,0), direction vector (0,0,-1), adjustable parameters The value range is (0,3.5).
[0040] Establish a mesh division method. Here, a plane passing through the point (0,0,z) and with a direction vector of (0,0,1) is used for interception, where z is (0,1,2,3,3.5). In this way, 5 node coordinates can be obtained. Then, these 5 node instances are constructed, and 4 line segments can be formed. Each line segment is a unit. Then, a beam unit instance is established and the corresponding nodes are bound.
[0041] Finally, create a cap instance, bind the previously created material, section, axis, node, and unit instance, and then call the interface method to generate the corresponding material, section, node, and unit in Midas Civil to complete the creation of a cap component. To modify the cap position, just adjust the axis parameters. The same method can be used to complete the creation of other components. Establish a boundary instance: After establishing other components, determine the basic properties of the boundary instance and bind the nodes related to the associated components to complete the boundary binding. For example, to create a rigid connection between the cap and the pile foundation, just establish a rigid connection instance and then bind the bottom node of the cap and the top node of the pylon pile foundation group.
[0042] Create a load instance: Select the corresponding load class, and select the unit or node of the corresponding structure to apply the load. For example, to add a temperature load, you only need to create a temperature load instance, bind all component units, and call the interface to complete the load addition.
[0043] refer to Figure 8 As shown in the figure, the model built by this method is shown. If you want to build a model with different parameters, such as a model of a main beam with different curvature radius, you only need to modify the radius parameter of the main beam axis. Figure 9 As shown in the figure, after the radius parameter of the main beam axis is modified, the center position of the model at different radii is modified at the same time, so that the bridge can be translated in space.
[0044] The above embodiments and drawings do not limit the product form and style of the present invention. Any appropriate changes or modifications made by ordinary technicians in the relevant technical field should be deemed to be within the patent scope of the present invention.
Claims
1. A fast modeling method for bridge bar unit finite element, using Python language, characterized by include: Step 1: Use Python to edit class properties, including structure class, material class, section class, axis class, boundary class, load class, node class, and element class. All classes include API call methods corresponding to the target finite element software. Step 2: Create material and cross-section instances; Step 3: Based on the bridge type, the bridge structure is divided into different component instances in the structure class. Each component instance contains the attributes of the axis, cross-section, structure generation method, material, and unit. After the structure class is determined, the boundary information between different components is bound through the boundary class, and the load class is used to determine the loads acting on different components. Step 4: The axis class is encapsulated to include a line class, a circle class, an ellipse class, and a plane class; the component instance is bound to the axis instance to determine the position of the component instance in space; Step 5. Add a calculation module to solve the parametric equations between lines, lines and surfaces, and surfaces and surfaces to obtain the intersection points or intersection lines. When meshing, the user determines the line or surface equations used for meshing, and the program automatically calculates the intersection points between the axis and the surface for meshing. Step 6: Obtain each segmentation point on the axis and connect each segmentation point to generate a corresponding unit set; the unit type in the bar structure includes beam unit and truss unit; Step 7. Create boundary and load instances. Boundary types include general support, elastic connection, and rigid connection. Load types include concentrated load and distributed load. Create a load instance, bind it to the unit or node to which the load needs to be added, and enter the load information.
2. The rapid modeling method of bridge bar unit finite element according to claim 1, characterized in that: The structure class at least includes the structure name, number, type and substructure set; the material class at least includes the material name, number, elastic modulus, Poisson's ratio and thermal expansion coefficient; the section class at least includes the section name, number, section contour point set; the axis class at least includes the parametric equation, parameter range and basic parameter values for determining the axis; the boundary class at least includes the number, type, action object; the load class at least includes the type, action object and size direction; the node class at least includes the number and coordinates; the unit class at least includes the number, type and included nodes.
3. The rapid modeling method of bridge bar unit finite element according to claim 2, characterized in that: In step 2, the cross-sectional profile of the cross-sectional class includes the cross-sectional and cross-section Two sections, the coordinates of each section boundary point are stored in a nested list format. The first list is the section outer contour, and the rest are the section inner contours, thus generating a hollow section. When the structure is of equal cross-section, only the section needs to be entered. , when the cross section is variable, enter the cross section at both ends and .
4. An electronic device, characterized in that The system comprises a processor, a memory and an application program; the application program is stored in the memory and is configured to execute the rapid modeling method of the bridge bar unit finite element according to any one of claims 1 to 3 by the processor.
5. A computer-readable storage medium, characterized in that The storage medium stores a computer program; when the computer program is executed in the computer, the computer is caused to execute the rapid modeling method of the bridge bar unit finite element according to any one of claims 1 to 3.
Citation Information
Patent Citations
Hybrid unit modeling method and system for complex tower beam consolidation cable-stayed bridge
CN116776433A
Bridge BIM model and finite element model homologous and heterogeneous modeling method and system
CN117709149A
Railway bridge engineering model parameter constraint modeling method and device
CN118568841A
Cited By
Monitoring data and natural language driven bridge finite element model rapid construction method, system and equipment and storage medium
CN121543330A
A Multi-Objective Optimization Method for Finite Element Model of a Small-Radius Curved Cable-Stayed Bridge
CN122572061A