ABAQUS-based plate spinning solid shell unit modeling and simulation visualization method
By embedding subroutines of custom solid shell elements in ABAQUS and refactoring them using Python scripts, the problem of the inability to visualize the results of custom elements in ABAQUS was solved, and efficient visualization and post-processing of sheet metal spinning modeling and simulation results were achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-04
- Publication Date
- 2026-03-13
AI Technical Summary
The simulation results of custom solid shell elements in ABAQUS cannot be directly written to ODB files, which makes post-processing visualization difficult and fails to meet the systematic support for sheet metal spinning modeling and post-processing.
By embedding solid shell elements through the subroutine interface of ABAQUS secondary development, and using Fortran language to construct VUEL and VUSDFLD subroutines, the calculation results of custom solid shell elements are stored and output. The results files are then reconstructed using Python scripts to generate visualization files.
It enables visualization and post-processing analysis of simulation results for custom solid shell elements, reducing computational costs and improving simulation accuracy and efficiency. It can accurately simulate thickness changes and double-sided contact phenomena during sheet metal spinning.
Smart Images

Figure CN121659622A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of numerical simulation of spinning forming, specifically involving a method for modeling and simulating solid shell elements of sheet metal spinning based on ABAQUS. Background Technology
[0002] In the manufacturing of high-end equipment such as aviation and aerospace, the demand for high-performance, lightweight, thin-walled curved components is increasing. Sheet metal spinning, due to its advantages such as low equipment load, high process flexibility, and low residual stress, has become an effective method for manufacturing such components. ABAQUS is a commonly used finite element analysis software for studying spinning processes.
[0003] In sheet metal spinning simulation, the choice of finite element type is crucial; hexahedral solid elements or quadrilateral degenerate shell elements are typically used in modeling. This directly determines the balance between computational accuracy and efficiency. Solid elements (such as C3D8R) can accurately describe the three-dimensional geometry and complex double-sided contact behavior of sheet metal, but to ensure computational accuracy, multiple meshes must be generated in the thickness direction, resulting in a large model size and high computational cost. Degenerate shell elements only require a single layer and have high computational efficiency, but the lack of three-dimensional geometric description makes it difficult to accurately represent double-sided contact and thickness variations.
[0004] Traditional shell elements (such as S4R) only arrange a single layer of mesh on the middle surface of the sheet metal, which significantly improves computational efficiency. However, their "thickness-free" geometric description makes it difficult to accurately simulate key physical phenomena such as sheet metal thickness changes and double-sided contact during spinning.
[0005] To simultaneously meet the requirements of modeling accuracy and efficiency, solid shell elements are the preferred choice, combining the 3D description capabilities of solid elements with the thickness flexibility of shell elements. However, the built-in elements in ABAQUS cannot meet the needs of sheet metal spinning simulation, requiring the creation of custom elements through secondary development and coupling them with the explicit solver. Furthermore, the output data of custom elements is limited during ABAQUS calculations, making it impossible to write mesh topology and integration point variables into the results file, thus hindering the visualization and post-processing of calculation results.
[0006] In summary, there is an urgent need to design a method for modeling and simulating solid shell elements of sheet metal spinning in ABAQUS, so as to provide systematic support for spinning modeling and post-processing based on custom elements. Summary of the Invention
[0007] The technical problem to be solved: To overcome the shortcomings of existing technologies, this invention provides a modeling and simulation visualization method for sheet metal spinning solid shell elements based on ABAQUS. Solid shell elements are embedded through a subroutine interface developed in ABAQUS. A three-dimensional finite element model is established based on the sheet metal spinning process. During modeling, built-in elements are used to construct storage components to save the calculation results of custom solid shell elements. After the model simulation is completed, the data from the storage components is extracted to form a visualization file. This solves the problem that simulation results of custom solid shell elements (such as VUEL) in ABAQUS cannot be directly written to the ODB file, leading to difficulties in post-processing visualization.
[0008] The technical solution of this invention is: a method for modeling and simulating solid shell elements based on ABAQUS, comprising the following steps: Step 1: Based on the calculation format of solid shell elements, a calculation module is constructed in Fortran language and encapsulated as a VUEL subroutine that can be called by ABAQUS. This subroutine is used to implement the finite element calculation of the sheet metal spinning process. A global array is defined in the subroutine to store the variable values of all solid shell element integration points. Step 2: Using the same ABAQUS built-in element with the same geometry and number of integration points as the solid shell element, write a subroutine VUSDFLD in Fortran to redefine the variables at the integration points. This subroutine will transfer the variable values calculated by the VUEL subroutine to the integration point state variables of the built-in element. Step 3: Create a three-dimensional finite element model of sheet metal spinning in ABAQUS, output an INP file, and write the model structure including the calculation component and the storage component in the file. The calculation component references the VUEL subroutine and sets the element properties, while the storage component uses built-in elements and sets the state variable storage capability. At the same time, add the keyword content for calling the VUEL and VUSDFLD subroutines. Step 4: Call the ABAQUS / Explicit solver and subroutines to perform sheet metal spinning simulation, obtain the ODB result file, and build a result file reconstruction tool based on ABAQUS Python secondary development technology to extract the node data of the calculated part and store the unit integration point data of the part, and create a new ODB file for visualization. A further technical solution of the present invention is: the construction of the VUEL subroutine in step 1 includes: Calculate the lumped mass matrix of the solid shell element and save it to the global mass matrix array; Calculate the stable time step of the solid shell element and save it to the stable time step array of the model; The strain matrix of the calculation unit is calculated, and the strain increment at each integration point is calculated in combination with the displacement. The stress is then updated using the constitutive model. Calculate the internal forces of the element based on the stress and strain matrices at each integration point, calculate the hourglass force and accumulate it to the internal forces of the element, and assemble the internal forces of the element into the force vector array on the right side of the program; Define a global array in the VUEL subroutine to store the variable values of all solid shell elements at the integration point after the current time step calculation, including stress, strain, plastic strain, and equivalent plastic strain. A further technical solution of the present invention is: the construction of the VUSDFLD subroutine in step 2 includes: Iterate through all built-in units and calculate the corresponding custom entity shell unit number based on the current built-in unit number. Extract the variable values of the target integration points of the corresponding entity shell elements from the global variable array defined by the VUEL subroutine, and store them in the integration point state variable array of the built-in elements to realize the output of custom element variable values in the ODB result file.
[0009] A further technical solution of the present invention is: the writing of the INP file in step 3 includes: In the sheet metal spinning 3D model, the spinning wheel and mandrel are set as rigid bodies, the slab is set as a deformable entity and assigned material properties, the built-in element type is selected and the slab model is meshed, the geometric model is established and then assembled based on positional relationships, the analysis step is set to dynamic explicit type, the motion conditions and contact relationships are set, and the model's INP file is output. Copy the contents of the slab component in the INP file to create two components with identical geometric properties. Define them as a calculation component and a storage component, respectively. The calculation component is used for actual finite element simulation and setting boundary and contact conditions, while the storage component is only used to store the calculation results of solid shell elements. In the text section of the computation component, the VUEL subroutine is referenced using the "User Element" keyword, and the number of nodes, element type name, number of element attributes, number of coordinate components, and number of variables are set. The element type of the computation component is set to VUEL element, and the element attribute value is specified using the "User Property" keyword. In the text section of the storage component, the cell type is set to SC8R cell, and the number of its thickness integration points is consistent with that of the solid shell cell. When defining the material properties of the storage component, the keyword "USER DEFINED FIELD" is added, and the number of state variables is set through the keyword "Depvar" to support VUSDFLD subroutine calls. Add compute and storage components to the assembly text, and ensure that the name of the compute component instance is lexicographically superior to the storage instance name to guarantee the order of VUEL and VUSDFLD subroutines.
[0010] A further technical solution of the present invention is: the construction of the Python result file reconstruction tool in step 4 includes: Extract the node coordinates and element connection relationships of the calculated component from the ODB file, create a new slab instance and add it to the newly created ODB file. This instance uses SC8R elements with the same number of thickness direction integration points as the solid shell elements. Extract the node coordinates, displacement, velocity, and acceleration variables from the calculation component and assign them to the corresponding nodes of the new instance; Extract the state variables of the unit integration points in the storage components, and write them into the integration point variables of the new slab instance according to the preset variable storage order, based on the classification of stress, strain, plastic strain and equivalent plastic strain. The above data extraction and reconstruction process is automatically executed by a Python script, generating a new ODB file that can be opened and visualized in ABAQUS / Viewer. A further technical solution of the present invention is: the solid shell element is an eight-node hexahedral element, each node has three degrees of displacement freedom, five integration points are arranged along the thickness direction, its shape function is defined based on the natural coordinate system, and the hourglass strain matrix is corrected by the B-bar method.
[0011] A further technical solution of the present invention is that the storage component has the same geometric topology as the computing component, but does not deform during the simulation process, and is only used to receive and store variable data passed from the VUSDFLD subroutine.
[0012] A further technical solution of the present invention is that the method is applicable to the rapid and accurate simulation of sheet metal spinning process, and can accurately simulate the thickness change, double-sided contact behavior and plastic deformation of sheet metal during spinning process, while taking into account both computational efficiency and modeling accuracy. A modeling and simulation visualization system for sheet metal spinning solid shell elements based on ABAQUS, comprising: The modeling and solving module is configured as follows: A three-dimensional finite element model of sheet metal spinning was built in the ABAQUS environment. The model includes computational and storage components with identical geometric properties, defined by an INP file. The computational component is equipped with a VUEL user-defined element subroutine written in Fortran to perform sheet metal spinning finite element calculations based on solid shell elements, and stores the integral point variable values in a defined global array during the calculation process. The storage component is provided with the SC8R unit built into ABAQUS, whose number of thickness integration points is consistent with that of the VUEL unit, and is associated with the VUSDFLD subroutine written in Fortran, which is used to extract variable values from the global array and store them in its integration point state variables. The ABAQUS / Explicit solver is invoked to perform the calculation of the three-dimensional finite element model and generate an original ODB result file containing the node data of the calculated components and the integration point data of the stored component elements; The post-processing and visualization module is configured as follows: The data in the original ODB result file can be accessed and extracted using a Python secondary development script; Based on the node coordinates and unit connection relationships of the computing component, and combined with the integration point state variable data of the storage component, a new and complete visual ODB file is reconstructed. The new ODB file can be visualized and post-processed in ABAQUS / Viewer, fully displaying the sheet metal spinning simulation results based on solid shell elements.
[0013] A computer device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method when executing the program.
[0014] Beneficial effects The beneficial effects of this invention are as follows: Based on ABAQUS subroutines, this invention proposes a method for sheet metal spinning modeling and visualization of calculation results oriented towards custom solid shell elements. This method achieves effective storage of integral point variables of solid shell elements during the explicit solution process by writing a VUEL subroutine for solid shell elements and setting a global array. Simultaneously, a built-in element storage component with geometry consistent with the custom element model is constructed, and the VUSDFLD subroutine is used to transfer integral point variables between the two types of elements, realizing the output of simulation results in the ODB file. Combined with secondary development of Python scripts for data extraction and reconstruction of the ODB file, a data foundation is provided for post-processing and visualization. Based on this invention, a spinning simulation model based on custom elements can be constructed, and simulation can be run through this model to generate a simulation result file containing mesh deformation information and integral point variables, thereby realizing sheet metal spinning simulation and result visualization based on solid shell elements. Specific effects are analyzed as follows: 1. This invention, through a systematic approach of "VUEL calculation - VUSDFLD transfer - storage component recording - Python reconstruction," successfully solves the historical problem that the ABAQUS kernel could not directly output the integration point results of custom solid shell elements. This enables engineers and researchers, for the first time, to perform complete visualization and post-processing analysis of high-precision spinning simulation results using custom solid shell elements.
[0015] 2. The solid shell element used in this invention combines the three-dimensional geometric description capability of solid elements with the computational efficiency of shell elements. Compared with the all-solid element model that requires multiple mesh layers, this invention only requires a single mesh layer in the sheet thickness direction, significantly reducing the number of elements and nodes, reducing the model size, and thus shortening the computation time by several times or even tens of times, while still accurately simulating key physical phenomena such as thickness changes and double-sided contact during sheet spinning.
[0016] 3. This invention provides an end-to-end solution from preprocessing (INP file settings), midprocessing (solution calculation and data transfer) to postprocessing (result reconstruction). Attached Figure Description
[0017] Figure 1 This is a flowchart illustrating the modeling and simulation visualization method for sheet metal spinning solid shell units based on ABAQUS in this embodiment of the invention.
[0018] Figure 2 This is a schematic diagram of an eight-node hexahedral solid shell unit in an embodiment of the present invention.
[0019] Figure 3 This is a schematic diagram of the solver and user subroutine calculation process in an embodiment of the present invention.
[0020] Figure 4 This is a schematic diagram of a sheet metal spinning model in an embodiment of the present invention, wherein (a) is a model without the present invention and (b) is a model with the present invention.
[0021] Figure 5 This is a schematic diagram of the deformation of the calculation component in the sheet metal spinning simulation of the present invention, where (a) is the initial forming time and (b) is the middle forming time.
[0022] Figure 6 These are the spinning simulation results based on the custom solid shell element visualization method in this embodiment of the invention, where (a) is the mesh deformation diagram, (b) is the equivalent stress cloud diagram, and (c) is the equivalent plastic strain cloud diagram. Detailed Implementation
[0023] The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain the invention, and should not be construed as limiting the invention.
[0024] Existing technologies (e.g., patent CN202310010404.8) aim to improve the simulation efficiency of sheet metal spinning through multi-mesh methods, but their focus is on mesh generation, refinement, and conformal reconstruction. They do not address or resolve the fundamental problem of the lack of visualization of custom element calculation results caused by limitations of the ABAQUS kernel. Therefore, a systematic method for developing custom solid shell element modeling and simulation visualization is proposed, comprising the following steps: Step 1: Based on the calculation format of solid shell elements, a calculation module is constructed in Fortran language and encapsulated as a VUEL subroutine that can be called by ABAQUS. This subroutine is used to implement the finite element calculation of the sheet metal spinning process. A global array is defined in the subroutine to store the variable values of all solid shell element integration points. Step 2: Using the same ABAQUS built-in element with the same geometry and number of integration points as the solid shell element, write a subroutine VUSDFLD in Fortran to redefine the variables at the integration points. This subroutine will transfer the variable values calculated by the VUEL subroutine to the integration point state variables of the built-in element. Step 3: Create a three-dimensional finite element model of sheet metal spinning in ABAQUS, output an INP file, and write the model structure including the calculation component and the storage component in the file. The calculation component references the VUEL subroutine and sets the element properties, while the storage component uses built-in elements and sets the state variable storage capability. At the same time, add the keyword content for calling the VUEL and VUSDFLD subroutines. Step 4: Call the ABAQUS / Explicit solver and subroutines to perform sheet metal spinning simulation, obtain the ODB result file, and build a result file reconstruction tool based on ABAQUS Python secondary development technology to extract the node data of the calculated part and store the unit integration point data of the part, and create a new ODB file for visualization.
[0025] The method achieves a complete process from modeling and calculation to result visualization of custom solid shell units through the systematic integration of VUEL subroutines, VUSDFLD subroutines, collaborative settings of computing and storage components, and Python post-processing scripts, overcoming the technical limitation that the ABAQUS kernel cannot directly output the results of custom units.
[0026] This invention also proposes an ABAQUS-based modeling and simulation visualization system for sheet metal spinning solid shell elements, comprising: The modeling and solving module is configured as follows: A three-dimensional finite element model of sheet metal spinning was built in the ABAQUS environment. The model includes computational and storage components with identical geometric properties, defined by an INP file. The computational component is equipped with a VUEL user-defined element subroutine written in Fortran to perform sheet metal spinning finite element calculations based on solid shell elements, and stores the integral point variable values in a defined global array during the calculation process. The storage component is provided with the SC8R unit built into ABAQUS, whose number of thickness integration points is consistent with that of the VUEL unit, and is associated with the VUSDFLD subroutine written in Fortran, which is used to extract variable values from the global array and store them in its integration point state variables. The ABAQUS / Explicit solver is invoked to perform the calculation of the three-dimensional finite element model and generate an original ODB result file containing the node data of the calculated components and the integration point data of the stored component elements; The post-processing and visualization module is configured as follows: The data in the original ODB result file can be accessed and extracted using a Python secondary development script; Based on the node coordinates and unit connection relationships of the computing component, and combined with the integration point state variable data of the storage component, a new and complete visual ODB file is reconstructed. The new ODB file can be visualized and post-processed in ABAQUS / Viewer, fully displaying the sheet metal spinning simulation results based on solid shell elements.
[0027] A computer device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method when executing the program.
[0028] The above technical solution will be further analyzed below with reference to examples and accompanying figures: In one embodiment, the present invention provides a method for modeling and simulating solid shell elements of sheet metal spinning based on ABAQUS. The method is implemented using programs written in Fortran and Python, and finite element calculations are performed using the ABAQUS / Explicit solver. The main model parameters for sheet metal spinning in this embodiment are shown in Table 1, and the slab material is Al2219.
[0029] Table 1 Geometric and process parameters of the embodiments
[0030] In this embodiment, refer to Figure 1 As shown, the ABAQUS-based method for modeling and simulating solid shell elements from sheet metal spinning includes at least the following steps in its implementation: S1: Based on the calculation format of the solid shell element, construct the calculation module in Fortran language and encapsulate it as a VUEL subroutine that can be called by ABAQUS.
[0031] In one embodiment, S1 includes the following specific steps: S11: Employs a linear eight-node hexahedral solid shell element, with each node having three degrees of freedom (displacement components), and five integration points arranged along the thickness direction, such as... Figure 2 As shown. The shape function of the solid shell element is... (1) In the formula: i =1, 2, … 8, i Number the nodes; ξ , η , ζ) Using the natural coordinate system; , , , .
[0032] When calculating the lumped mass matrix of a computational cell, the node mass is... In the formula ρ J is the material density. 0 Let be the Jacobian matrix of the integration point at the centroid of the unit cell. The nodal masses are accumulated into the global lumped mass matrix. amass The position of the corresponding node is sufficient.
[0033] S12: The ratio of the element volume to the maximum area of the six surface areas of the element is used as the element characteristic length. l e The steady-state time step is calculated as follows: In the formula c The adiabatic sound velocity of the material. The time step of each element is saved to the model's steady-state time step array. dtimeStable middle.
[0034] S13: Calculate the coefficients of each term in the expansion expression of the Jacobian matrix J. (2) In the formula: the superscript in the upper right corner represents the coefficient of the corresponding constant term, linear term or bilinear term.
[0035] Calculate the strain matrix in the natural coordinate system The coefficients of each term in the expanded expression (3) In the formula: "—" superscript represents a variable in the natural coordinate system, and subscript " c "Represents coordination and response items."
[0036] Calculate the coefficients of each term in the expanded expression of the coordinate transformation matrix T: (4) In the formula: r1, r2, and r3 are the coordinate axes of the unit co-rotation coordinate system.
[0037] Calculate the coefficients of each term in the expanded expression of the strain transformation matrix H: (5) Calculate the coefficients of the strain matrix expansion in the co-rotating coordinate system: (6) In the formula, the superscript "~" represents a variable in the natural coordinate system; and These are the integral point strain matrix and the hourglass strain matrix in the co-rotating coordinate system, respectively. Then, the linear terms of the expansion of the transverse shear component in the hourglass strain matrix are removed; the coefficients of the hourglass strain matrix are corrected using the B-bar method, i.e., the volumetric strain displacement term in the hourglass control terms is removed.
[0038] Setting the enhanced assumption strain matrix in the natural coordinate system And transform it to a co-rotation coordinate system. Subsequently, the additional degrees of freedom introduced by this method are condensed. After condensation, the internal forces of the elements are calculated. ,in The radial return mapping method based on J2 flow plasticity theory is used to solve the problem and handle the elastoplastic response of the material.
[0039] S14: Calculate the hourglass stress increment In the formula, C H Given the hourglass material matrix, calculate the hourglass stress. Based on this, the hourglass force can be calculated: (7) hourglass force in the co-rotating coordinate system Transform to global coordinate system And superimpose it into the internal forces of the unit. Finally, the corrected element internal forces are assembled into the right-hand force array of the program. rhs middle.
[0040] S15: Define a global array in the VUEL subroutine to uniformly store the integration point variable values of all solid shell elements after the calculation of the current time step is completed. The recorded variables include: 6 stress components, 6 strain components, 6 plastic strain components, and equivalent plastic strain.
[0041] S2: Select the SC8R hexahedral continuous shell element with eight nodes for thickness multi-point integration in ABAQUS. In the sheet metal spinning model, the thickness integration points of SC8R correspond one-to-one with the integration points of the solid shell element. Write the subroutine VUSDFLD according to the correspondence.
[0042] In one embodiment, S2 includes the following specific steps: S21: The subroutine passes in a portion of the SC8R unit numbers each time. k ( k For the integration point information (1~5), loop through all elements to be processed this time, and subtract the total number of model elements from the current SC8R element number to obtain its corresponding solid shell element number. m ; S22: Extract the variable with the index from the global variable array defined by the VUEL subroutine. m The solid shell unit numbered k The variable values at the integration points are stored in the integration point state variable array of the SC8R unit. stateNew This allows the output of solid shell element variable values in the ODB result file.
[0043] S3: Create a 3D finite element model of the sheet metal spinning process in ABAQUS and output an INP file. Based on this file, write an INP file that includes calculation components and storage components, and add keywords for calling subroutines.
[0044] In one embodiment, S3 includes the following specific steps: S31: Based on the model parameters, establish the geometric models of each component of the sheet metal spinning process. The spinning wheel and mandrel are set as rigid bodies, while the slab is set as a deformable solid and given elasto-plastic material properties. The number of integration points on the slab section is set to 5. After establishing the geometric models, assembly is performed based on the positional relationships of the three components. The SC8R continuous shell element is selected, and only one layer of mesh is arranged along the thickness direction of the slab to mesh the slab model.
[0045] S32: In the analysis step, select the explicit dynamics type and set the total analysis step duration and mass scaling factor. In the boundary conditions, set the coupling relationship between the mandrel and the slab and specify the mandrel rotation speed, and set the motion trajectory of the spinning wheel. In the contact conditions, set the contact relationship between the spinning wheel and the slab, and between the slab and the mandrel.
[0046] S33: Copy the text content of the slab component from the INP file, i.e., the data content in the keyword "Part", to create two components with identical geometric properties and rename them; these are the computation component and the storage component. In the text section of the computation component, use the keyword "User Element" to reference the VUEL subroutine and set the parameter values for the number of nodes, element type name, number of element attributes, number of coordinate components, and number of variables in sequence. Set the element type of the computation component to a solid shell element in VUEL, and specify the element attribute values using the keyword "User Property", including the density, elastic modulus, Poisson's ratio, and data from the plastic constitutive model of the slab material. In the text section of the storage component, set the element type to SC8R elements, and set its thickness integration points to 5, the same as the solid shell elements, to achieve corresponding storage of integration point variables. The above keyword settings are shown in Table 2.
[0047] S34: To implement the VUSDFLD subroutine call, the keyword "USERDEFINED FIELD" must be added when defining the material properties of the stored component, and the number of state variables to be stored is set by the keyword "Depvar". If variables such as stress, strain, plastic strain, and equivalent plastic strain are stored, the number is 19, as shown in Table 2.
[0048] S35: Add a computed component to the assembly text and rename it. At this time, it is necessary to ensure that the name of the instance formed by the computed component is superior to the name of the storage instance in lexicographical order, as shown in Table 2.
[0049] S36: Modify the text content of the boundary conditions and contact conditions settings to ensure that these conditions are applied to the compute unit rather than the storage unit.
[0050] Table 2 Keyword content related to custom units in INP files
[0051] S4: Call the ABAQUS / Explicit solver and subroutines to perform sheet metal spinning simulation and obtain the ODB result file. Based on the simulation data in the result file, reconstruct the ODB file for visualizing the calculation results of sheet metal spinning solid shell elements.
[0052] In one embodiment, S4 includes the following specific steps: S41: Place the VUEL and VUSDFLD subroutine files in the same folder as the INP model file, and open the console in that path. Enter the command: abaqus job=my_inp user=my_subroutine double int ,in my_inp This is the filename for the INP file. my_subroutine[Subroutine filename]. Press Enter to start the program and continue running until the calculation ends. The calculation flow of the solver and user subroutine in the simulation is as follows: Figure 3 .
[0053] S42: For the simulation-generated result file, extract the node coordinates and element connection relationships of the computational component, create a new slab instance, and add it to the newly created ODB file. This slab instance uses SC8R elements with 5 integration points in the thickness direction. Simultaneously, extract variables such as node coordinates, displacement, velocity, and acceleration from the computational component and assign them to the corresponding nodes of the new instance. Further extract the state variables of the element integration points in the storage component, and according to the variable storage order set in step S22, write them into the integration point variables of the new slab instance according to the classification of stress, strain, plastic strain, and equivalent plastic strain. The above process is implemented based on a Python secondary development script for ABAQUS to automatically reconstruct the result file.
[0054] S43: The result file reconstruction tool is invoked by entering the command `abaqus python .\odb_tool.py` in the command line, where `odb_tool.py` is the Python script file name. After the script executes, a new ODB file is automatically generated, which can be opened in ABAQUS / Viewer for visualization and post-processing analysis of the simulation results.
[0055] In this embodiment, the proposed solution of the present invention was verified using coreless template spinning. Based on the model parameters in Table 1, a sheet metal spinning model based on a custom solid shell unit was established, as follows: Figure 4 As shown. The computational component is composed of custom elements; ABAQUS / Viewer does not support the display of its mesh topology, only showing it as a point cloud of nodes. From Figure 4 As can be seen in (b), when adopting the scheme of the present invention, an additional storage component is introduced, whose grid information is consistent with that of the slab calculation component.
[0056] When the visualization scheme of this invention is not used, i.e., only the component simulation is performed, the deformation results are as follows: Figure 5 As shown in the figure, initially, the computational component is undeformed, resulting in a regular node distribution. However, as the simulation progresses to the mid-forming stage, the point cloud changes, revealing the deformed slab point cloud configuration. Nevertheless, the overall visualization lacks the representation of mesh topology and geometric relationships, as well as the variables of integration points, hindering comprehensive observation and post-processing analysis. By employing the visualization scheme of this invention, the following can be obtained: Figure 6The simulation results shown include mesh geometry information and stress-strain distribution at integration points. The results demonstrate that the visualization scheme proposed in this invention can successfully output the geometric deformation shape and integration point variable results calculated by the VUEL subroutine, and can be correctly displayed in ABAQUS / Viewer.
[0057] In summary, this invention constructs a sheet metal spinning model based on a custom solid shell element, and generates complete simulation results containing mesh deformation information and integral point variables through simulation and result file reconstruction, thereby realizing the simulation and visualization of sheet metal spinning based on a custom solid shell element.
[0058] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention without departing from the principles and spirit of the present invention.
Claims
1. A method for modeling and simulating solid shell elements of sheet metal spinning based on ABAQUS, characterized in that, Includes the following steps: Step 1: Based on the calculation format of solid shell elements, a calculation module is constructed in Fortran language and encapsulated as a VUEL subroutine that can be called by ABAQUS. This subroutine is used to implement the finite element calculation of the sheet metal spinning process. A global array is defined in the subroutine to store the variable values of all solid shell element integration points. Step 2: Using the same ABAQUS built-in element with the same geometry and number of integration points as the solid shell element, write a subroutine VUSDFLD in Fortran to redefine the variables at the integration points. This subroutine will transfer the variable values calculated by the VUEL subroutine to the integration point state variables of the built-in element. Step 3: Create a three-dimensional finite element model of sheet metal spinning in ABAQUS, output an INP file, and write the model structure including the calculation component and the storage component in the file. The calculation component references the VUEL subroutine and sets the element properties, while the storage component uses built-in elements and sets the state variable storage capability. At the same time, add the keyword content for calling the VUEL and VUSDFLD subroutines. Step 4: Call the ABAQUS / Explicit solver and subroutines to perform sheet metal spinning simulation, obtain the ODB result file, and build a result file reconstruction tool based on ABAQUS Python secondary development technology to extract the node data of the calculated part and store the unit integration point data of the part, and create a new ODB file for visualization.
2. The method for modeling and simulating solid shell elements based on ABAQUS according to claim 1, characterized in that: The construction of the VUEL subroutine in step 1 includes: Calculate the lumped mass matrix of the solid shell element and save it to the global mass matrix array; Calculate the stable time step of the solid shell element and save it to the stable time step array of the model; The strain matrix of the calculation unit is calculated, and the strain increment at each integration point is calculated in combination with the displacement. The stress is then updated using the constitutive model. Calculate the internal forces of the element based on the stress and strain matrices at each integration point, calculate the hourglass force and accumulate it to the internal forces of the element, and assemble the internal forces of the element into the force vector array on the right side of the program; Define a global array in the VUEL subroutine to store the variable values of all solid shell elements at the integration point after the current time step calculation, including stress, strain, plastic strain, and equivalent plastic strain.
3. The method for modeling and simulating solid shell elements based on ABAQUS according to claim 1, characterized in that: The construction of the VUSDFLD subroutine in step 2 includes: Iterate through all built-in units and calculate the corresponding custom entity shell unit number based on the current built-in unit number. Extract the variable values of the target integration points of the corresponding entity shell elements from the global variable array defined by the VUEL subroutine, and store them in the integration point state variable array of the built-in elements to realize the output of custom element variable values in the ODB result file.
4. The method for modeling and simulating solid shell elements based on ABAQUS according to claim 1, characterized in that: The writing of the INP file in step 3 includes: In the sheet metal spinning 3D model, the spinning wheel and mandrel are set as rigid bodies, the slab is set as a deformable entity and assigned material properties, the built-in element type is selected and the slab model is meshed, the geometric model is established and then assembled based on positional relationships, the analysis step is set to dynamic explicit type, the motion conditions and contact relationships are set, and the model's INP file is output. Copy the contents of the slab component in the INP file to create two components with identical geometric properties. Define them as a calculation component and a storage component, respectively. The calculation component is used for actual finite element simulation and setting boundary and contact conditions, while the storage component is only used to store the calculation results of solid shell elements. In the text section of the computation component, the VUEL subroutine is referenced using the "User Element" keyword, and the number of nodes, element type name, number of element attributes, number of coordinate components, and number of variables are set. The element type of the computation component is set to VUEL element, and the element attribute value is specified using the "User Property" keyword. In the text section of the storage component, the cell type is set to SC8R cell, and the number of its thickness integration points is consistent with that of the solid shell cell. When defining the material properties of the storage component, the keyword "USER DEFINED FIELD" is added, and the number of state variables is set through the keyword "Depvar" to support VUSDFLD subroutine calls. Add compute and storage components to the assembly text, and ensure that the name of the compute component instance is lexicographically superior to the storage instance name to guarantee the order of VUEL and VUSDFLD subroutines.
5. The method for modeling and simulating solid shell elements based on ABAQUS according to claim 1, characterized in that: The construction of the Python result file reconstruction tool in step 4 includes: Extract the node coordinates and element connection relationships of the calculated component from the ODB file, create a new slab instance and add it to the newly created ODB file. This instance uses SC8R elements with the same number of thickness direction integration points as the solid shell elements. Extract the node coordinates, displacement, velocity, and acceleration variables from the calculation component and assign them to the corresponding nodes of the new instance; Extract the state variables of the unit integration points in the storage components, and write them into the integration point variables of the new slab instance according to the preset variable storage order, based on the classification of stress, strain, plastic strain and equivalent plastic strain. The above data extraction and reconstruction process is automatically executed by a Python script, generating a new ODB file that can be opened and visualized in ABAQUS / Viewer.
6. The method for modeling and simulating solid shell elements based on ABAQUS according to claim 1, characterized in that: The solid shell element is an eight-node hexahedral element, with each node having three degrees of freedom of displacement and five integration points arranged along the thickness direction. Its shape function is defined based on the natural coordinate system, and the hourglass strain matrix is corrected using the B-bar method.
7. The method for modeling and simulating solid shell elements based on ABAQUS according to claim 1, characterized in that: The storage component has the same geometric topology as the computing component, but it does not deform during the simulation process and is only used to receive and store variable data passed from the VUSDFLD subroutine.
8. The method for modeling and simulating solid shell elements based on ABAQUS according to claim 1, characterized in that: The method described is suitable for rapid and accurate simulation of sheet metal spinning processes. It can accurately simulate the thickness changes, double-sided contact behavior, and plastic deformation of sheet metal during spinning, while taking into account both computational efficiency and modeling accuracy.
9. A modeling and simulation visualization system for sheet metal spinning solid shell elements based on ABAQUS, used to execute the modeling and simulation visualization method for sheet metal spinning solid shell elements based on ABAQUS as described in any one of claims 1-8, characterized in that, include: The modeling and solving module is configured as follows: A three-dimensional finite element model of sheet metal spinning was built in the ABAQUS environment. The model includes computational and storage components with identical geometric properties, defined by an INP file. The computational component is equipped with a VUEL user-defined element subroutine written in Fortran to perform sheet metal spinning finite element calculations based on solid shell elements, and stores the integral point variable values in a defined global array during the calculation process. The storage component is provided with the SC8R unit built into ABAQUS, whose number of thickness integration points is consistent with that of the VUEL unit, and is associated with the VUSDFLD subroutine written in Fortran, which is used to extract variable values from the global array and store them in its integration point state variables. The ABAQUS / Explicit solver is invoked to perform the calculation of the three-dimensional finite element model and generate an original ODB result file containing the node data of the calculated components and the integration point data of the stored component elements; The post-processing and visualization module is configured as follows: The data in the original ODB result file can be accessed and extracted using a Python secondary development script; Based on the node coordinates and unit connection relationships of the computing component, and combined with the integration point state variable data of the storage component, a new and complete visual ODB file is reconstructed. The new ODB file can be visualized and post-processed in ABAQUS / Viewer, fully displaying the sheet metal spinning simulation results based on solid shell elements.
10. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the ABAQUS-based modeling and simulation visualization method for solid shell units of sheet metal spinning as described in any one of claims 1-8.
Citation Information
Patent Citations
High-quality quadrilateral grid shape-preserving construction method for plate spinning multi-grid method simulation
CN116244988A