Parametric modeling method of Abaqus model of bolted ECC-RC beams based on Python language

Through the parametric modeling method based on Python language, the existing GUI modeling method has solved the problem of cumbersome operation and strong repetition in building the bolted ECC-RC beam Abaqus model, and achieved fast and efficient finite element modeling.

CN118228548BActive Publication Date: 2025-06-06SOUTHWEST JIAOTONG UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410373453.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-03-29
Publication Date
2025-06-06
Estimated Expiration
2044-03-29

AI Technical Summary

Technical Problem

When building the Abaqus model of bolted ECC-RC beams, the existing GUI model is cumbersome and has strong repetitive operation, which makes the modeling process time-consuming and labor-intensive.

Method used

The Abaqus model parametric model of the bolted ECC-RC beam based on Python language is adopted. Through a series of Python custom functions and Abaqus built-in functions, intelligent parametric modeling of the model is realized.

Benefits of technology

The efficiency of finite element modeling is greatly improved. Compared with the several-hour modeling process of traditional methods, modeling can be completed in just a few dozen seconds, saving a lot of time.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118228548B_ABST
    Figure CN118228548B_ABST
Patent Text Reader

Abstract

The present invention discloses a parametric modeling method of an Abaqus model of a bolted ECC-RC beam based on Python language, which belongs to the field of image recognition and data processing technology, and includes the following steps: creating a concrete beam model; assembling the concrete beam according to axisymmetry; digging holes and splitting; creating hinge supports and loading support steel plates; creating bolts and placing them in holes, creating a steel cage for the beam and a steel cage for the plate; creating an analysis step; setting a contact relationship; dividing the grid; and applying a load. In the above manner, compared with the traditional GUI modeling method, the present invention uses Python language to perform secondary development on Abaqus, realizes intelligent parametric modeling of finite element models, and only takes tens of seconds to complete the modeling process compared to the original modeling process of several hours, saving a lot of time for finite element modeling and greatly improving the efficiency of finite element modeling.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of image recognition and data processing, and in particular to a parametric modeling method of an Abaqus model of a bolted ECC-RC beam based on Python language. Background Art

[0002] Numerical simulation technology is an important means to study the mechanical properties of prefabricated structures. Abaqus is a powerful finite element software for engineering simulation, which can solve problems ranging from relatively simple linear analysis to many complex nonlinear problems. Abaqus includes a rich unit library that can simulate any geometric shape. It also has various types of material model libraries that can simulate the performance of typical engineering materials, including metals, rubbers, polymer materials, composite materials, reinforced concrete, compressible hyperelastic foam materials, and geological materials such as soil and rock. Relying on its powerful built-in algorithm, users can well simulate the geometry, material properties, contact relationships, and load application relationships of each part of the prefabricated structure (concrete beams, steel bars, bolts, and ECC plates).

[0003] GUI modeling is a conventional method for bolted ECC-RC beams based on Abaqus. However, although the GUI modeling is easy to use, it is cumbersome and repetitive. For structures that require parametric research of prefabricated structures, repeated modeling is time-consuming and labor-intensive, and most of the operations are repeated.

[0004] Based on this, the present invention designs a parametric modeling method of the bolted ECC-RC beam Abaqus model based on Python language to solve the above problems. Summary of the invention

[0005] In view of the above-mentioned shortcomings of the prior art, the present invention provides a parametric modeling method of an Abaqus model of bolted ECC-RC beams based on Python language.

[0006] To achieve the above objectives, the present invention is implemented through the following technical solutions:

[0007] The parametric modeling method of the Abaqus model of bolted ECC-RC beams based on Python language includes the following steps:

[0008] Step 1: Create a concrete beam model;

[0009] Step 2: Assemble the concrete beams according to axisymmetry;

[0010] Step 3: In order to facilitate the assembly of bolts on the concrete beam, create a through hole at the specified position of the concrete beam;

[0011] Step 4: Divide the component into structural structures suitable for the adaptive mesh and encrypt the holes to capture the stress concentration at the holes;

[0012] Step 5: Create hinge supports and load support steel plates at specified locations on the concrete beam;

[0013] Step 6: Create the omitted models of the bolt's screw rod and nut and merge them into the overall model of the bolt. Then, divide the overall model into swept structures that meet the requirements of the adaptive mesh by segmentation.

[0014] Step 7: Place the bolt structure into the assembly using the generated hole position coordinates so that the bolts are installed into the concrete beam;

[0015] Step 8: Create the reinforcement cage of the beam and place it at the specified position inside the concrete beam;

[0016] Step 9: Create the reinforcement cage of the slab and place it at the specified location within the ECC slab;

[0017] Step 10: Create four analysis steps and set reasonable incremental step parameters to match the application of loads and the setting of contact relationships;

[0018] Step 11: Find the position of the surface required to set the surface contact and connection relationship in the structure, and save it as a global variable;

[0019] Step 12: Set the contact relationship and connection relationship;

[0020] Step 13: Generate mesh;

[0021] Step 14: Assign material properties to the concrete beam, ECC plate, bolts and reinforcement cage;

[0022] Step 15: Apply bolt preload and displacement load to the hinge support on the beam.

[0023] Further, specifically, step 1 includes the following steps:

[0024] 1.1. Set the current window sketching state through the python secondary development function set Primary Object provided by abaqus, and realize the sketch;

[0025] 1.2. Draw a rectangle using the rectangle function;

[0026] 1.3. Use the Base Solid Extrude function to stretch the plane cuboid into a cuboid that conforms to the geometric dimensions of the beam.

[0027] Further, specifically, step 2 includes the following steps:

[0028] 2.1. Add two concrete beam components to the assembly interface through the Instance function;

[0029] 2.2. Custom function Find Centriod OfBeam, which requires the input of an abaqus component or assembly instance object that conforms to the geometric characteristics of a cuboid, and obtains the centroid of the input object by calculating the mean of the coordinates of the object in the three directions of length, width and height;

[0030] 2.3. Calculate the centroid coordinates of the two concrete beams on the assembly interface by calling the custom function Find CentriodOfBeam;

[0031] 2.4. Calculate the movement amount through the centroid coordinates, and use the translate function to splice the two beam parts left and right;

[0032] 2.5. Use the rotate function to transfer another beam to the axially symmetrical position.

[0033] Further, specifically, step 3 includes the following steps:

[0034] 3.1. Customize and call the function FindFace With Hole. By calculating the coordinates of each face of the concrete beam instance object, select the face with the largest Z coordinate as the sketch face for drawing the through hole sketch, and use the face as the function return value;

[0035] 3.2. Customize and call the Find Edge To Cut function, calculate the coordinates of each edge of the concrete beam instance object, select the face with the largest X coordinate as the sketch reference line for drawing the through-hole sketch, and use the edge as the function return value;

[0036] 3.3. Draw a circle with a specified radius on the sketch surface using the Circle By CenterPerimeter function;

[0037] 3.4. Use the Cut Extrude function to create a through hole in the concrete beam at the position corresponding to the circle.

[0038] Further, specifically, step 4 includes the following steps:

[0039] 4.1. The custom function Create CircleAnd Line is used to draw lines on the beam plane where there are through holes by sketching;

[0040] 4.2. Customize and call the function Create Shell ElementAndDelete, call the CreateCircleAnd Line function, draw the shell element boundary line on the sketch object, and then call the ShellExtrude function to stretch the boundary line drawn on the sketch surface to penetrate the shell element, and delete the generated shell element through Remove Faces, leaving only the concrete beam and the corresponding dividing line.

[0041] Further, specifically, step 5 includes the following steps:

[0042] 5.1. Customize and call the function Curve Plane ForPin. First, calculate the position coordinates of each surface of the concrete beam, select the appropriate dividing line sketch surface, then create a surface for placing the steel support on the concrete beam surface by creating a sketch graphic, and use the drawn plane for the security hinge support as the return value of the function;

[0043] 5.2. Customize and call the function Create Steel Plate. First, create and place a steel support into the assembly, and place it on the surface drawn by the Curve Plane For Pin function through the translate function.

[0044] Further, specifically, step 6 includes the following steps:

[0045] 6.1. Customize and call the Create Bolt function. First, create the nut and the bolt through the Circle By Center Perimeter and Base Solid Extrude functions. Then, place the nut and the bolt at the specified position through the translate function. Finally, merge the models of the bolt and the nut into a bolt through Instance From Boolean Merge.

[0046] 6.2. Customize and call the Cut Bolt function, and divide the bolt component into structures suitable for adaptive meshing by using the Partition Cell By PlanePoint Normal function multiple times.

[0047] Further, specifically, step 7 includes the following steps:

[0048] 7.1、Custom function Translate One BoltIn Hole, firstly, place a bolt into the assembly interface through the Instance function, then calculate the bolt translation vector through the center of mass position coordinates of the bolt and the specified hole position, and finally place the specified bolt component into the hole at the specified coordinates through the translate function;

[0049] 7.2. Customize and call the function Create The Bolt Group, input the position coordinate set of the through holes on the concrete beam in the assembly interface as parameters into the function, and use the parameters as the loop body in the function to call the custom function Translate One BoltIn Hole in order to place multiple bolts into the holes at the specified positions. Finally, call the Instance From Boolean Merge function to merge multiple bolts into a bolt group model.

[0050] Further, specifically, step 8 includes:

[0051] 8.1. Create longitudinal reinforcement in the beam using the Line command;

[0052] 8.2. Create stirrups inside the beam using the rectangle command;

[0053] 8.3. Assemble the longitudinal reinforcement and stirrups to form a complete reinforcement cage;

[0054] Specifically, step 9 includes:

[0055] 9.1. Create longitudinal reinforcement in the beam using the Line command;

[0056] 9.2. Create stirrups inside the beam using the rectangle command;

[0057] 9.3. Assemble the longitudinal reinforcement and stirrups to form a complete reinforcement cage;

[0058] Specifically, step 10 includes:

[0059] 10.1. Establish step 1 through Static Step and input appropriate parameters. Set this incremental step to set the initial boundary conditions, initial contact relationship, constraint relationship, and apply a very small initial bolt preload;

[0060] 10.2. Create step 2 through Static Step and enter appropriate parameters. This incremental step is used to apply the bolt preload generated by the wrench.

[0061] 10.3. Establish step 3 through Static Step and input appropriate parameters. This incremental step is used to adjust the bolt preload force to adapt to the deformation of the component.

[0062] 10.4. Establish step 4 through Static Step and enter appropriate parameters. This incremental step is used to apply the main load.

[0063] Further, specifically, step 12 includes:

[0064] 12.1. Divide each contact pair found in step 11 into masterface and slaveface;

[0065] 12.2. Convert the masterface and slaveface parameters input into the function from a collection of face objects to a FaceArray object through part.FaceArray;

[0066] 12.3. Convert the FaceArray object generated in step 12.2 into a face collection object for setting contact through the Surface function;

[0067] 12.4. Establishing surface-to-surface contact relationships through Surface To Surface Contact Std

[0068] Specifically, step 13 includes:

[0069] 13.1. Generate component adaptive mesh seeds through seedPart function;

[0070] 13.2. Generate mesh through generate Mesh;

[0071] Specifically, step 14 includes:

[0072] 14.1. Customize and call the Choose Mateial For ECC Plate function. First, create a collection of entities that need to be assigned "ECC" materials in the ECC plate model. Then, use the part.CellArray function to convert the entity unit collection into an entity unit collection object that can generate regions. Finally, use the Set function to create a region object, and use the SectionAssignment function to assign material properties to the specified region.

[0073] 14.2. Customize and call the function Choose Mateial For Plate Barcage to select the cross-section corresponding to the steel cage in the plate.

[0074] Beneficial Effects

[0075] Compared with the traditional GUI modeling method, the present invention uses Python language to carry out secondary development of Abaqus, and realizes the intelligent parametric modeling of the finite element model. Compared with the original modeling process of several hours, the modeling process can be completed in only tens of seconds, which saves a lot of time for finite element modeling and greatly improves the efficiency of finite element modeling.

[0076] The present invention realizes the parameterization of modeling of the Abaqus model of the bolt-connected ECC-RC beam, that is, the parameter change of the finite element model can be realized only by modifying the variables. BRIEF DESCRIPTION OF THE DRAWINGS

[0077] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the prior art descriptions are briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention, and for ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0078] Figure 1 It is a flow chart of the parametric modeling method of the Abaqus model of bolted ECC-RC beams based on Python language of the present invention;

[0079] Figure 2 The specific calculation process for the custom function Create CircleAnd Line;

[0080] Figure 3 The drawing effect of the custom function Create CircleAnd Line;

[0081] Figure 4 Draw the effect for step 4.2;

[0082] Figure 5 Draw the effect of cutting bolts for the custom function CutBolt. DETAILED DESCRIPTION

[0083] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0084] The present invention will be further described below in conjunction with the embodiments.

[0085] Example 1

[0086] Please refer to the instruction manual Figure 1-2 , a parametric modeling method of bolted ECC-RC beam Abaqus model based on Python language includes the following steps:

[0087] Step 1: Create a concrete beam model;

[0088] Specifically, step 1 includes the following steps:

[0089] 1.1. Set the current window sketching state through the Python secondary development function set Primary Object (set sketching object function) provided by Abaqus, and realize the sketch;

[0090] 1.2. Draw a rectangle through the rectangle (create a cube) function;

[0091] 1.3. Use the Base SolidExtrude function to stretch the plane cuboid into a cuboid that conforms to the geometric dimensions of the beam.

[0092] Step 2: Assemble the concrete beams according to axisymmetry;

[0093] Specifically, step 2 includes the following steps:

[0094] 2.1. Add two concrete beam components to the assembly interface through the Instance (create instance object method) function;

[0095] 2.2. Custom function Find Centriod OfBeam, which requires the input of an abaqus component or assembly instance object that conforms to the geometric characteristics of a cuboid, and obtains the centroid of the input object by calculating the mean of the coordinates of the object in the three directions of length, width and height;

[0096] 2.3. Calculate the centroid coordinates of the two concrete beams on the assembly interface by calling the custom function Find CentriodOfBeam;

[0097] 2.4. Calculate the movement amount through the centroid coordinates, and use the translate (translation instance object function) function to splice the two beam components left and right;

[0098] 2.5. Use the rotate (rotation instance object function) function to transfer another beam to the axially symmetrical position.

[0099] Step 3: In order to facilitate the assembly of bolts on the concrete beam, create a through hole at the specified position of the concrete beam;

[0100] Specifically, step 3 includes the following steps:

[0101] 3.1. Customize and call the function FindFace With Hole. By calculating the coordinates of each face of the concrete beam instance object, select the face with the largest Z coordinate as the sketch face for drawing the through hole sketch, and use the face as the function return value;

[0102] 3.2. Customize and call the Find Edge To Cut function, calculate the coordinates of each edge of the concrete beam instance object, select the face with the largest X coordinate as the sketch reference line for drawing the through-hole sketch, and use the edge as the function return value;

[0103] 3.3. Use the Circle By CenterPerimeter function to draw a circle with a specified radius on the sketch surface;

[0104] 3.4. Use the Cut Extrude function to create a through hole in the concrete beam at the position corresponding to the circle.

[0105] Step 4: Customize the Create Circle And Line method (concrete beam division) and CreateShellElementAndDelete (generate shell elements through the beam based on the division lines created by the Create CircleAnd Line method and delete them) to divide the component into structural structures suitable for the adaptive mesh, and encrypt the openings to capture the stress concentration at the openings;

[0106] Specifically, step 4 includes the following steps:

[0107] 4.1、Custom function Create CircleAnd Line (see the attached for specific steps and parameters) Figure 2 ) On the beam plane, where there are through holes, draw lines by sketching (see the attached Figure 3 , where (a) is the original concrete beam model plan, and (b) is the drawing effect of Create CircleAndLine function);

[0108] The number of through holes is determined by the through hole position information set holeinformations, and whether a dividing line is being drawn for the first through hole. If not, the horizontal and vertical coordinates of the hole are checked for repetition, and a dividing line is drawn according to the repetition. If so, a dividing line is drawn according to the hole coordinates; determine whether dividing lines are drawn for all holes, if so, end, otherwise repeat the above steps.

[0109] 4.2. Customize and call the function Create Shell ElementAndDelete, call the CreateCircleAnd Line function, draw the shell element boundary line on the sketch object, and then call the ShellExtrude (create shell element function by stretching method) function to stretch the boundary line drawn on the sketch surface into a through shell element, and delete the generated shell element through RemoveFaces (remove face object function), leaving only the concrete beam and the corresponding dividing line (see the attached figure for the specific effect). Figure 4 , (a) is the shell element effect created by the CreateShellElementAndDelete function (the rear facade of the model), and (b) is the shell element effect deleted by the CreateShellElementAndDelete function (the rear facade of the model).

[0110] Step 5: Customize the Curve Plane For Pin and Create Steel Plate functions to create hinge supports and load support steel plates at specified locations on the concrete beam;

[0111] Specifically, step 5 includes the following steps:

[0112] 5.1. Customize and call the function Curve Plane ForPin. First, calculate the position coordinates of each surface of the concrete beam, select the appropriate dividing line sketch surface, then create a surface for placing the steel support on the concrete beam surface by creating a sketch graphic, and use the drawn plane for the security hinge support as the return value of the function;

[0113] 5.2. Customize and call the function Create Steel Plate. First, create and place a steel support into the assembly, and place it on the surface drawn by the Curve Plane For Pin function through the translate function.

[0114] Step 6: Customize the Create Bolt and CutBolt methods to create the omitted models of the bolt's screw and nut and merge them into the overall model of the bolt. Then, divide the overall model into swept structures that meet the requirements of the adaptive mesh by segmentation.

[0115] Specifically, step 6 includes the following steps:

[0116] 6.1. Customize and call the Create Bolt function. First, create the nut and the bolt through the Circle By Center Perimeter (create a circle function by center and radius) and the Base SolidExtrude function. Then, place the nut and the bolt at the specified position through the translate function. Finally, merge the models of the bolt and the nut into a bolt through Instance From Boolean Merge.

[0117] 6.2. Customize and call the function CutBolt, and use the Partition Cell By PlanePointNormal function multiple times to divide the bolt component into structures suitable for adaptive mesh division (see the attached figure for the segmentation effect). Figure 5 , (a) is the model without bolt cutting (front elevation of the model), (b) is the effect of bolt cutting by CutBolt function (front elevation of the model).

[0118] Step 7: Customize the Translate One BoltIn Hole and Create The Bolt Group methods, and place the bolt structure into the assembly through the generated hole location coordinates so that the bolts are installed into the concrete beam;

[0119] Specifically, step 7 includes the following steps:

[0120] 7.1、Custom function Translate One BoltIn Hole, firstly, place a bolt into the assembly interface through the Instance function, then calculate the bolt translation vector through the center of mass position coordinates of the bolt and the specified hole position, and finally place the specified bolt component into the hole at the specified coordinates through the translate function;

[0121] 7.2. Customize and call the function Create The Bolt Group, input the position coordinate set of the through holes on the concrete beam in the assembly interface as parameters into the function, and use the parameters as the loop body in the function to call the custom function Translate One BoltIn Hole in order to place multiple bolts into the holes at the specified positions. Finally, call the Instance From Boolean Merge function to merge multiple bolts into a bolt group model.

[0122] Step 8: Customize the CreateBarcageInBeam method to create the reinforcement cage of the beam and place it at the specified position in the concrete beam;

[0123] Specifically, step 8 includes:

[0124] 8.1. Create longitudinal reinforcement in the beam using the Line command;

[0125] 8.2. Create stirrups inside the beam using the rectangle command;

[0126] 8.3. Assemble longitudinal reinforcement and stirrups to form a complete reinforcement cage.

[0127] Step 9: Customize the CreateBarcageInPlate method to create the plate's reinforcement cage and place it at the specified location within the ECC plate;

[0128] Specifically, step 9 includes:

[0129] 9.1. Create longitudinal reinforcement in the beam using the Line command;

[0130] 9.2. Create stirrups inside the beam using the rectangle command;

[0131] 9.3. Assemble longitudinal reinforcement and stirrups to form a complete reinforcement cage.

[0132] Step 10: Customize the Create Step method, create four analysis steps and set reasonable parameters such as incremental step length to match the application of loads and the setting of contact relationships;

[0133] Specifically, step 10 includes:

[0134] 10.1. Establish step 1 through Static Step (establish standard static analysis step) and enter appropriate parameters (parameters include maximum number of iterations, maximum incremental step, minimum incremental step, initial incremental step and whether to open the large deformation option, etc., the same below). Set this incremental step to set the initial boundary conditions and initial contact relationship, constraint relationship, and apply a very small initial bolt preload (the purpose of applying the initial preload is to simulate the process of manually tightening the bolt);

[0135] 10.2. Create step 2 through Static Step and enter appropriate parameters. This incremental step is used to apply the bolt preload generated by the wrench.

[0136] 10.3. Establish step 3 through Static Step and input appropriate parameters. This incremental step is used to adjust the bolt preload force to adapt to the deformation of the component.

[0137] 10.4. Establish step 4 through Static Step and enter appropriate parameters. This incremental step is used to apply the main load (the load is translated downward from the support until the component fails and cannot bear the load).

[0138] Step 11: Customize the ChooseFaceToContract method to find the location of the face required to set the face-to-face contact and connection relationship in the structure, and save it as a global variable;

[0139] Specifically, step 11 includes:

[0140] 11.1. Obtain the surface for setting the contact pair by calculating the coordinates: beam2beam (the contact surface between two concrete beams);

[0141] 11.2. Obtain the surface for setting the contact pair by calculating the coordinates: ECC2beam (the contact surface between the ECC plate at the bottom of the concrete beam and the concrete);

[0142] 11.3. Obtain the surface for setting the contact pair by calculating the coordinates: boltmap2beam (the contact surface between the nut on the top of the concrete and the concrete);

[0143] 11.4. Obtain the surface for setting the contact pair by calculating the coordinates: boltmap2ECC (the contact surface between the nut at the bottom of the component and the ECC plate);

[0144] 11.5. Obtain the surface used to set the contact pair by calculating the coordinates: boltbody2Concrete (the contact surface between the screw inside the concrete and the concrete);

[0145] 11.6. Obtain the surface used to set the contact pair by calculating the coordinates: boltbody 2ECC (contact between the screw inside the ECC plate and the ECC plate);

[0146] 11.7. Obtain the surface used to set the contact pair by calculating the coordinates: SteelplateLoad2Beam (the contact surface between the loading hinge support and the concrete);

[0147] 11.8. Obtain the surface used to set the contact pair by calculating the coordinates: SteelplatePin2Beam (contact between the support hinge support and the concrete).

[0148] Step 12: Customize and call the CreateSurface2SurfaceContract method to set the contact relationship and connection relationship;

[0149] Specifically, step 12 includes:

[0150] 12.1. Divide each contact pair found in step 11 into masterface (master contact face) and slaveface (slave contact face);

[0151] 12.2. Use part.FaceArray (Abaqus's own python secondary development function, which is used to convert a face object collection into a Face Array object that can be used to generate a Region object) to convert the masterface and slaveface parameters input into the function from a collection of face objects into a FaceArray object;

[0152] 12.3. The Face Array object generated in step 12.2 is converted into a face collection object for setting contact through the Surface (creating a face collection object for setting contact) function;

[0153] 12.4. Establishing surface-to-surface contact relationship through Surface To Surface Contact Std (Establishing surface-to-surface contact function)

[0154] Step 13: Customize the Create Mesh method to generate the mesh;

[0155] Specifically, step 13 includes:

[0156] 13.1. Generate component adaptive mesh seeds through the seed Part (a mesh seed generation function based on an independent component adaptive mesh generation algorithm) function;

[0157] 13.2. Generate a mesh using generate Mesh (generate an adaptive mesh function based on a mesh seed).

[0158] Step 14: Customize the Choose Mateial For ECC Plate, Choose Mateial For PlateBarcage, and Choose Mateial For Beam Barcage functions to assign material properties to the concrete beam, ECC plate, bolts, and steel cage;

[0159] Specifically, step 14 includes:

[0160] 14.1. Customize and call the function Choose Mateial For ECC Plate. First, create a collection of entities that need to be assigned "ECC" material in the ECC plate model. Then, use the part.CellArray (a function that converts a collection containing entity elements into an entity collection object) function to convert the entity unit collection into an entity unit collection object that can generate a region. Finally, use the Set (create a collection based on an entity collection object) function to create a region object, and use the SectionAssignment (a function that assigns a section to a specified region object) function to assign material properties to the specified region.

[0161] 14.2. Customize and call the function Choose Mateial For Plate Barcage to select the cross-section corresponding to the steel cage in the plate. For the specific process, refer to step 14.1.

[0162] Step 15: Apply bolt preload and displacement load of the hinge support on the beam through mdb.models[Model_name].BoltLoad (a function to apply bolt preload on a specified area in a specified model) and mdb.models[Model_name].Load (a function to apply conventional load on a specified area in a specified model);

[0163] Step 16: Define the parameters required for each method as global variables, and call each method in sequence to achieve parametric modeling;

[0164] Specifically, step 16 includes the following steps:

[0165] 16.1. Define the model name parameter (default is a string object);

[0166] 16.2. Define the set size parameters of concrete beams, including concrete beam length (default is an integer constant object), concrete beam width (default is an integer constant object), and concrete beam height (default is an integer constant object);

[0167] 16.3. Define the geometric dimensions of the ECC board, including the ECC board length (default is an integer constant object), the ECC board width (default is an integer constant object), and the ECC board height (default is an integer constant object);

[0168] 16.4. Define bolt-related parameters, including nut radius (default is an integer constant object), nut length (default is an integer constant object), screw radius (default is an integer constant object), screw length (default is an integer constant object), bolt group position coordinates (default is a tuple object), and bolt preload (default is an integer constant object);

[0169] 16.5. Define the parameters related to reinforcement, including the length of longitudinal reinforcement (the default is an integer constant object), the length of stirrups (the default is an integer constant object), the length of distributed reinforcement (the default is an integer constant object), the spacing of distributed reinforcement (the default is an integer constant object) and the spacing of longitudinal reinforcement in the slab (the default is a collection object).

[0170] Compared with the traditional GUI modeling method, the present invention uses Python language to carry out secondary development of Abaqus, and realizes the intelligent parametric modeling of the finite element model. Compared with the original modeling process of several hours, the modeling process can be completed in only tens of seconds, which saves a lot of time for finite element modeling and greatly improves the efficiency of finite element modeling.

[0171] The present invention realizes the parameterization of modeling of the Abaqus model of the bolt-connected ECC-RC beam, that is, the parameter change of the finite element model can be realized only by modifying the variables.

[0172] The above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements will not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A parametric modeling method for bolted ECC-RC beam Abaqus model based on Python language, characterized by: The following steps are involved: Step 1: Create a concrete beam model; Step 2: Assemble the concrete beams according to axisymmetry; Step 3: In order to facilitate the assembly of bolts on the concrete beam, create a through hole at the specified position of the concrete beam; Step 4: Divide the component into structural structures suitable for the adaptive mesh and encrypt the holes to capture the stress concentration at the holes; Step 5: Create hinge supports and load support steel plates at specified locations on the concrete beam; Step 6: Create the omitted models of the bolt's screw and nut and merge them into the overall model of the bolt, and divide the overall model into swept structures that meet the requirements of the adaptive mesh by segmentation; Step 7: Place the bolt structure into the assembly using the generated hole position coordinates so that the bolts are installed into the concrete beam; Step 8: Create the reinforcement cage of the beam and place it at the specified position inside the concrete beam; Step 9: Create the reinforcement cage of the slab and place it at the specified location within the ECC slab; Step 10: Create four analysis steps and set reasonable incremental step parameters to match the application of loads and the setting of contact relationships; Step 11: Find the position of the surface required to set the surface contact and connection relationship in the structure, and save it as a global variable; Step 12: Set the contact relationship and connection relationship; Step 13: Generate mesh; Step 14: Assign material properties to the concrete beam, ECC plate, bolts and reinforcement cage; Step 15: Apply bolt preload and displacement load to the hinge support on the beam.

2. The parametric modeling method of the bolted ECC-RC beam Abaqus model based on Python language according to claim 1 is characterized in that: Specifically, step 1 includes the following steps: 1.

1. Set the current window sketching state through the python secondary development function set Primary Object provided by abaqus, and realize the sketch; 1.

2. Draw a rectangle using the rectangle function; 1.

3. Use the Base SolidExtrude function to stretch the plane cuboid into a cuboid that conforms to the geometric dimensions of the beam.

3. The parametric modeling method of the bolted ECC-RC beam Abaqus model based on Python language according to claim 2 is characterized in that: Specifically, step 2 includes the following steps: 2.

1. Add two concrete beam components to the assembly interface through the Instance function; 2.

2. Custom function Find CentriodOfBeam, which requires the input of an abaqus component or assembly instance object that conforms to the geometric characteristics of a cuboid, and obtains the centroid of the input object by calculating the mean of the coordinates of the object in the three directions of length, width and height; 2.

3. Calculate the centroid coordinates of the two concrete beams on the assembly interface by calling the custom function Find Centriod OfBeam; 2.

4. Calculate the movement amount through the centroid coordinates, and use the translate function to splice the two beam parts left and right; 2.

5. Use the rotate function to transfer another beam to the axially symmetrical position.

4. The parametric modeling method of the bolted ECC-RC beam Abaqus model based on Python language according to claim 3 is characterized in that: Specifically, step 3 includes the following steps: 3.

1. Customize and call the function Find Face With Hole. By calculating the coordinates of each face of the concrete beam instance object, select the face with the largest Z coordinate as the sketch face for drawing the through hole sketch, and use the face as the function return value; 3.

2. Customize and call the FindEdge To Cut function, calculate the coordinates of each edge of the concrete beam instance object, select the face with the largest X coordinate as the sketch reference line for drawing the through-hole sketch, and use the edge as the function return value; 3.

3. Draw a circle with a specified radius on the sketch surface using the Circle By CenterPerimeter function; 3.

4. Use the Cut Extrude function to create a through hole in the concrete beam at the position corresponding to the circle.

5. The parametric modeling method of the bolted ECC-RC beam Abaqus model based on Python language according to claim 4 is characterized in that: Specifically, step 4 includes the following steps: 4.

1. The custom function Create CircleAnd Line is used to draw lines on the beam plane where there are through holes by sketching; 4.

2. Customize and call the function Create Shell ElementAndDelete, call the Create Circle AndLine function, draw the shell element boundary line on the sketch object, and then call the ShellExtrude function to stretch the boundary line drawn on the sketch surface to penetrate the shell element, and delete the generated shell element through Remove Faces, leaving only the concrete beam and the corresponding dividing line.

6. The parametric modeling method of the bolted ECC-RC beam Abaqus model based on Python language according to claim 5 is characterized in that: Specifically, step 5 includes the following steps: 5.

1. Customize and call the function Curve Plane For Pin. First, calculate the position coordinates of each surface of the concrete beam, select the appropriate dividing line sketch surface, then create a surface for placing the steel support on the concrete beam surface by creating a sketch graphic, and use the drawn plane for the security hinge support as the return value of the function; 5.

2. Customize and call the function Create Steel Plate. First, create and place a steel support into the assembly, and place it on the surface drawn by the Curve Plane For Pin function through the translate function.

7. The parametric modeling method of the bolted ECC-RC beam Abaqus model based on Python language according to claim 6 is characterized in that: Specifically, step 6 includes the following steps: 6.

1. Customize and call the Create Bolt function. First, create the nut and the bolt through the Circle By Center Perimeter and Base Solid Extrude functions. Then, place the nut and the bolt at the specified position through the translate function. Finally, merge the models of the bolt and the nut into a bolt through Instance From Boolean Merge. 6.

2. Customize and call the Cut Bolt function, and divide the bolt component into structures suitable for adaptive meshing by using the Partition Cell By Plane PointNormal function multiple times.

8. The parametric modeling method of the bolted ECC-RC beam Abaqus model based on Python language according to claim 7 is characterized in that: Specifically, step 7 includes the following steps: 7.1、Custom function Translate One BoltIn Hole, firstly, place a bolt into the assembly interface through the Instance function, then calculate the bolt translation vector through the center of mass position coordinates of the bolt and the specified hole position, and finally place the specified bolt component into the hole at the specified coordinates through the translate function; 7.

2. Customize and call the function Create The Bolt Group, input the position coordinate set of the through holes on the concrete beam in the assembly interface as parameters into the function, and use the parameters as the loop body in the function to call the custom function Translate One BoltIn Hole in order to place multiple bolts into the holes at the specified positions. Finally, call the Instance From Boolean Merge function to merge multiple bolts into a bolt group model.

9. The parametric modeling method of the bolted ECC-RC beam Abaqus model based on Python language according to claim 8 is characterized in that: Specifically, step 8 includes: 8.

1. Create longitudinal reinforcement in the beam using the Line command; 8.

2. Create stirrups inside the beam using the rectangle command; 8.

3. Assemble the longitudinal reinforcement and stirrups to form a complete reinforcement cage; Specifically, step 9 includes: 9.

1. Create longitudinal reinforcement in the beam using the Line command; 9.

2. Create stirrups inside the beam using the rectangle command; 9.

3. Assemble the longitudinal reinforcement and stirrups to form a complete reinforcement cage; Specifically, step 10 includes: 10.

1. Establish step 1 through Static Step, enter appropriate parameters, set the incremental step to set the initial boundary conditions, initial contact relationship, constraint relationship, and apply a very small initial bolt preload; 10.

2. Create step 2 through Static Step and enter appropriate parameters. The incremental step is used to apply the bolt preload generated by the wrench. 10.

3. Establish step 3 through Static Step and input appropriate parameters. The incremental step is used to adjust the bolt preload force to adapt to the deformation of the component. 10.

4. Establish step 4 through Static Step and enter appropriate parameters. The incremental step is used to apply the main load.

10. The parametric modeling method of the bolted ECC-RC beam Abaqus model based on Python language according to claim 9 is characterized in that: Specifically, step 12 includes: 12.

1. Divide each contact pair found in step 11 into masterface and slaveface; 12.

2. Use part.FaceArray to convert the masterface and slaveface parameters input into the function from a collection of face objects into a Face Array object; 12.

3. Convert the FaceArray object generated in step 12.2 into a face collection object for setting contact through the Surface function; 12.

4. Establishing surface-to-surface contact relationship through Surface To Surface Contact Std Specifically, step 13 includes: 13.

1. Generate component adaptive grid seeds through seed Part function; 13.

2. Generate mesh through generate Mesh; Specifically, step 14 includes: 14.

1. Customize and call the Choose Mateial For ECC Plate function. First, create a collection of entities that need to be assigned "ECC" materials in the ECC plate model. Then, use the part.CellArray function to convert the entity unit collection into an entity unit collection object that can generate regions. Finally, use the Set function to create a region object, and use the SectionAssignment function to assign material properties to the specified region. 14.

2. Customize and call the function Choose Mateial For Plate Barcage to select the cross-section corresponding to the steel cage in the plate.

Citation Information

Patent Citations

  • Excel-based corrugated steel web combined channel beam Abaqus parametric modeling and analysis method

    CN111985130A

  • Methods and systems for simulating beam-to-surface contacts in finite element analysis

    US20100286966A1