A Supernode Parallel Cholesky Numerical Decomposition Method for the Structural Finite Element Stiffness Matrix

By introducing a supernode parallel processing method into the structural finite element stiffness matrix, the problem of inefficient traditional numerical decomposition methods is solved, and a more efficient numerical decomposition process is achieved.

CN119918368BActive Publication Date: 2025-06-17CHINA AIRPLANT STRENGTH RES INST
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510421543.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-04-07
Publication Date
2025-06-17
Estimated Expiration
2045-04-07

AI Technical Summary

Technical Problem

In the prior art, the numerical decomposition method of structural finite element stiffness matrix is ​​relatively low efficiency, mainly because the traditional method uses single rows and single columns as operating objects to decompose, and fails to fully utilize the potential of parallel computing.

Method used

A method for parallel Cholesky numerical decomposition of supernodes in structural finite element stiffness matrix is ​​proposed. By obtaining supernodes in structural finite element stiffness matrix, its numerical decomposition task is determined, and a task pool is constructed to realize parallel processing. Specific steps include obtaining supernodes, filtering invalid tasks, building a task pool, adding tasks and executing them until all tasks are completed.

Benefits of technology

Through supernode parallel processing, the parallel potential of numerical decomposition is maximized, and the solution efficiency of structural finite element stiffness matrix is ​​significantly improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119918368B_ABST
    Figure CN119918368B_ABST
Patent Text Reader

Abstract

This application belongs to the field of aircraft structural stiffness design, and particularly relates to a supernode parallel Cholesky numerical decomposition method for the structural finite element stiffness matrix. The method includes: Step 1, obtaining the supernodes in the structural finite element stiffness matrix and determining the numerical decomposition tasks of the supernodes; Step 2, constructing a task pool; Step 3, adding the numerical decomposition tasks to the task pool; Step 4, retrieving and executing tasks from the task pool according to a preset task retrieval principle, and repeating Steps 3 to 4 until all the numerical decomposition tasks are completed. The supernode parallel Cholesky numerical decomposition method for the structural finite element stiffness matrix of this application maximally explores the parallel potential of numerical decomposition and improves the solution efficiency of the structural finite element stiffness matrix.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of aircraft structural stiffness design, and particularly relates to a supernode parallel Cholesky numerical decomposition method for the structural finite element stiffness matrix. Background Art

[0002] The structural finite element method is a data model formed by discretizing a continuous physical structure into spatial coordinate points through mesh division and connecting the coordinate points with each other according to specific criteria. The basic units are composed of these coordinate points. This data model can be represented by the structural finite element stiffness matrix, and the scale of the matrix is determined by factors such as the number of nodes, the number of degrees of freedom of nodes, and the constraint conditions. By analyzing the structural finite element stiffness matrix, the strength and stiffness of the aircraft structure can be evaluated, the dynamic response can be studied, and the structural design can be optimized.

[0003] The numerical decomposition methods for the structural finite element stiffness matrix usually include the multi-frontal method, the supernode method, the Gaussian elimination method, etc. However, traditional numerical decomposition methods all decompose the matrix with a single row and a single column as the operation object, resulting in low efficiency.

[0004] Therefore, it is desirable to have a technical solution to overcome or at least mitigate at least one of the above-mentioned defects of the prior art. Summary of the Invention

[0005] The purpose of this application is to provide a supernode parallel Cholesky numerical decomposition method for the structural finite element stiffness matrix to solve at least one problem existing in the prior art.

[0006] The technical solution of this application is as follows:

[0007] A supernode parallel Cholesky numerical decomposition method for the structural finite element stiffness matrix, comprising:

[0008] Step 1: Obtain the supernodes in the structural finite element stiffness matrix and determine the numerical decomposition tasks of the supernodes, including:

[0009] Obtain the supernodes in the structural finite element stiffness matrix;

[0010] Determine the numerical decomposition tasks of the supernodes according to the supernode relationship. The numerical decomposition tasks of the supernodes include the internal decomposition tasks of the supernodes, the external modification tasks of the descendant supernodes to the supernodes, and the external modification tasks of the supernodes to the ancestor supernodes;

[0011] Screen out the invalid tasks in the numerical decomposition tasks of the supernodes and remove the invalid tasks;

[0012] Step 2: Construct a task pool;

[0013] Step 3: Add the numerical decomposition tasks to the task pool;

[0014] Step 4: Receive and execute a task from the task pool according to a preset task receiving principle, and repeat Steps 3 to 4 until all the numerical decomposition tasks are completed.

[0015] In at least one embodiment of the present application, in Step 1, screening out invalid tasks in the numerical decomposition tasks of the super node includes:

[0016] If the diagonal matrix of the descendant super node and the super node does not have the same row, the external modification task of the descendant super node for the super node is an invalid task;

[0017] If the diagonal matrix of the super node and the ancestor super node does not have the same row, the external modification task of the super node for the ancestor super node is an invalid task.

[0018] In at least one embodiment of the present application, in Step 2, the task pool includes:

[0019] An internal decomposition task pool for storing the internal decomposition tasks of the super node;

[0020] An external modification task pool for storing the external modification tasks of the descendant super node for the super node and the external modification tasks of the super node for the ancestor super node.

[0021] In at least one embodiment of the present application, in Step 3, adding the numerical decomposition task to the task pool includes:

[0022] When initializing the task pool, add the internal decomposition tasks of all super nodes without descendant super nodes to the internal decomposition task pool;

[0023] When the number of times the external modification task of the descendant super node for the super node is executed is equal to the number of descendant super nodes, add the internal decomposition task of this super node to the internal decomposition task pool;

[0024] After the internal decomposition task of the super node is completed, add the external modification tasks of this super node for all ancestor super nodes to the external modification task pool.

[0025] In at least one embodiment of the present application, in Step 4, the task receiving principle includes:

[0026] Give priority to receiving the internal decomposition tasks in the internal decomposition task pool. If there are no internal decomposition tasks in the internal decomposition task pool, then receive the external modification tasks in the external modification task pool;

[0027] Give priority to receiving the earlier added internal decomposition tasks in the internal decomposition task pool;

[0028] The external modification tasks in the external modification task pool are preferentially retrieved in the order of the tasks added earlier;

[0029] Retrieve the external modification tasks of the same supernode for different ancestor supernodes simultaneously;

[0030] It is not allowed to retrieve the external modification tasks of multiple supernodes for the same ancestor node simultaneously.

[0031] In at least one embodiment of the present application, not being allowed to retrieve the external modification tasks of multiple supernodes for the same ancestor node includes:

[0032] When retrieving the external modification task of a supernode for an ancestor supernode, mark the ancestor supernode as being updated;

[0033] When the external modification task of a supernode for an ancestor supernode is completed, mark the ancestor supernode as idle;

[0034] Skip the external modification task of a supernode for an ancestor supernode marked as being updated when retrieving tasks.

[0035] In at least one embodiment of the present application, the internal decomposition task execution process includes:

[0036] Perform Cholesky decomposition on the diagonal matrix of the supernode to obtain a factor matrix L 1 :

[0037] ;

[0038] According to the factor matrix L 1 Update the elements below the diagonal of the supernode:

[0039] ;

[0040] Among them, C1 is the diagonal matrix of the supernode, L 1 is the factor matrix obtained by decomposing the diagonal matrix, C2 , C3 , C4 , C5 , C6 are the segment pointers of the supernode.

[0041] In at least one embodiment of the present application, the external modification task execution process includes:

[0042] The execution process of the external modification task of a descendant supernode for a supernode includes performing DGEMM operation on the supernode according to the descendant supernode:

[0043] ;

[0044] B= ( A1 ) T ;

[0045] Among them, A1 、 A2 、 A3 、 A4 are fragment pointers of descendant supernodes;

[0046] The execution process of the external modification task of the supernode on the ancestor supernode includes performing DGEMM operations on the ancestor supernode according to the supernode.

[0047] In at least one embodiment of the present application, when the number of executions of the internal decomposition task of the supernode is equal to the number of supernodes, it indicates that all the numerical decomposition tasks have been completed.

[0048] The invention has at least the following beneficial technical effects:

[0049] The supernode parallel Cholesky numerical decomposition method for the structural finite element stiffness matrix of the present application maximally explores the parallel potential of numerical decomposition and improves the solution efficiency of the structural finite element stiffness matrix. BRIEF DESCRIPTION OF THE DRAWINGS

[0050] Figure 1 is a flowchart of the supernode parallel Cholesky numerical decomposition method for the structural finite element stiffness matrix in an embodiment of the present application;

[0051] Figure 2 is a schematic diagram of the elimination tree of the supernode in an embodiment of the present application;

[0052] Figure 3 is a schematic diagram of the execution of the internal decomposition task in an embodiment of the present application;

[0053] Figure 4 is a schematic diagram of the execution of the external modification task in an embodiment of the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0054] To make the objectives, technical solutions, and advantages of the present application clearer, the technical solutions in the embodiments of the present application will be described in more detail below in conjunction with the accompanying drawings in the embodiments of the present application. In the drawings, the same or similar reference numerals represent the same or similar elements or elements with the same or similar functions from beginning to end. The described embodiments are some, but not all, of the embodiments of the present application. The embodiments described below with reference to the accompanying drawings are exemplary and are intended to explain the present application and should not be construed as a limitation on the present application. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present application without creative efforts fall within the scope of protection of the present application. The embodiments of the present application will be described in detail below in conjunction with the accompanying drawings.

[0055] In the description of the present application, it should be understood that the orientation or positional relationship indicated by the terms "center", "longitudinal", "transverse", "front", "rear", "left", "right", "vertical", "horizontal", "top", "bottom", "inner", "outer", etc. is based on the orientation or positional relationship shown in the accompanying drawings, and is only for the convenience of describing the present application and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and thus should not be construed as a limitation on the scope of protection of the present application.

[0056] The following will further describe the present application in detail in conjunction with the attached Figures 1 to 4 This application provides a method for parallel Cholesky numerical decomposition of supernodes in the structural finite element stiffness matrix, as

[0057] shown, including the following steps: Figure 1

[0058]

[0059]

[0060]

[0061]

[0062]

[0063]

[0064] ​​​​​​​Step 4: Retrieve and execute tasks from the task pool according to the preset task retrieval principle, and repeat Steps 3 to 4 until all numerical decomposition tasks are completed.

[0065] In a preferred embodiment of the present application, first, in Step 1, the screening method for invalid tasks is as follows:

[0066] If the diagonal matrix of the descendant supernode and the supernode does not have the same rows, the external modification task of the descendant supernode for the supernode is an invalid task;

[0067] If the diagonal matrix of the supernode and the ancestor supernode does not have the same rows, the external modification task of the supernode for the ancestor supernode is an invalid task.

[0068] In a preferred embodiment of the present application, in Step 2, the constructed task pool includes an internal decomposition task pool and an external modification task pool. The internal decomposition task pool is used to store the internal decomposition tasks of the supernodes, and the external modification task pool is used to store the external modification tasks of the descendant supernodes for the supernodes and the external modification tasks of the supernodes for the ancestor supernodes.

[0069] For the supernode parallel Cholesky numerical decomposition method of the structural finite element stiffness matrix in the present application, according to the partitioning of the supernodes in the structural finite element stiffness matrix during symbolic decomposition, the adjacency matrix of the supernodes is obtained. The elimination tree of the supernodes is constructed based on the adjacency matrix, and the supernode relationship is obtained through the elimination tree of the supernodes. The supernode relationship includes all ancestor supernodes and all descendant supernodes of the supernode. The numerical decomposition tasks of the supernodes are determined according to the supernode relationship. After removing the invalid tasks, the valid tasks are retained for numerical decomposition. By transferring the matrix data to the memory space of the lower triangular matrix of the structural finite element stiffness matrix obtained by symbolic decomposition, it prepares for the formal numerical decomposition. Since there is no operation on the matrix floating-point data during the symbolic decomposition stage, before the formal execution of the numerical decomposition, the matrix data of the structural finite element stiffness matrix needs to be transferred to the memory space of the lower triangular matrix. Since the row indices of the supernodes are saved in fragments, when putting a certain data into the memory space, the row index of this value only needs to be compared with the fragment of the lower triangular matrix, rather than with the row index of the lower triangular matrix, which greatly reduces the number of comparisons and improves the efficiency of the program.

[0070] For the supernode parallel Cholesky numerical decomposition method of the structural finite element stiffness matrix in the present application, in Step 3, adding the numerical decomposition tasks to the task pool includes:

[0071] When initializing the task pool, add the internal decomposition tasks of all supernodes without descendant supernodes to the internal decomposition task pool;

[0072] When the number of times the external decoration task of a supernode is executed by its descendant supernodes is equal to the number of descendant supernodes, add the internal decomposition task of this supernode to the internal decomposition task pool;

[0073] After the internal decomposition task of a supernode is completed, add the external decoration tasks of this supernode for all ancestor supernodes to the external decoration task pool.

[0074] In a preferred embodiment of the present application, in step four, the task receiving principle includes:

[0075] Preferentially receive the internal decomposition tasks in the internal decomposition task pool. If there are no internal decomposition tasks in the internal decomposition task pool, then receive the external decoration tasks in the external decoration task pool;

[0076] Preferentially receive the internal decomposition tasks added earlier in the internal decomposition task pool;

[0077] Preferentially receive the external decoration tasks added earlier in the external decoration task pool;

[0078] Receive the external decoration tasks of the same supernode for different ancestor supernodes simultaneously;

[0079] Cannot receive the external decoration tasks of multiple supernodes for the same ancestor node simultaneously.

[0080] Advantageously, in this embodiment, the situation that the external decoration tasks of multiple supernodes for the same ancestor node cannot be received simultaneously is achieved through the following method:

[0081] When receiving the external decoration task of a supernode for an ancestor supernode, mark this ancestor supernode as being updated;

[0082] After the external decoration task of a supernode for an ancestor supernode is completed, mark this ancestor supernode as idle;

[0083] Skip the external decoration task of a supernode for an ancestor supernode marked as being updated when receiving tasks.

[0084] In this embodiment, when the number of times the internal decomposition task of a supernode is executed is equal to the number of supernodes, it indicates that all numerical decomposition tasks have been completed.

[0085] In an embodiment of the present application, as Figure 2 shown, this elimination tree shows 4 supernodes in the structural finite element stiffness matrix S 1 , S 2 , J , K , among which, the supernode S 1, SThe non - zero element segment of 2 and the super - node J have common rows, and the super - node J has a non - zero element segment that has common rows with the super - node K According to the elimination tree, the super - node relationships are obtained. Among them, the information of all ancestor nodes of each super - node is as follows:

[0086] ;

[0087] Through the two - dimensional array FJ the ancestor super - node numbers are saved, FJ_N and the number of ancestor super - nodes is saved.

[0088] According to the information of all ancestor nodes of each obtained super - node, whenever a super - node completes its internal decomposition task, its external modification tasks for all ancestor super - nodes can be immediately added to the external modification task pool simultaneously and be taken and executed simultaneously.

[0089] It should be noted that although the information of all ancestor super - nodes of any super - node can be directly obtained from the elimination tree, not all of these ancestor super - nodes necessarily require the super - node to perform external updates on them. For example, in the elimination tree, although the super - node K is an ancestor super - node of the super - node S 1, the super - node S 1 has no contribution relationship to the super - node K Since the diagonal square matrix of the super - node S 1 and the super - node K do not have the same rows, the external modification task of the super - node S 1 for the super - node K is an invalid task. Therefore, in order to remove these unnecessary external modification tasks, by checking the ancestor super - nodes of each super - node, if it is an invalid super - node, it can be directly removed. Therefore, after removing the invalid super - nodes, the information of all ancestor nodes of each super - node is as follows:

[0090] ;

[0091] Similarly, the information of all descendant super - nodes of each super - node is as follows:

[0092] ;

[0093] Through the two - dimensional array SJ the descendant super - node numbers are saved, SJ_N and the number of descendant super - nodes is saved. The information of all descendant super - nodes of each super - node can be used in the back - substitution solution, and the number of descendant super - nodes owned by a super - node can also be used to assist in judging whether it has completed all external modification tasks.

[0094] To complete the correct decomposition process, the numerical decomposition tasks of these four supernodes must be executed in a certain order. In this embodiment, the supernodes S 1 , S 2 have no child supernodes. The internal decomposition tasks of the supernodes S 1 , S 2 can be executed simultaneously. When the internal decomposition tasks of the supernodes S 1 , S 2 are completed, immediately 3 new external modification tasks are generated, which are the external modification tasks of the supernodes S 1 pair of supernodes J , the supernodes S 2 pairs of supernodes J , and the supernodes S 2 pairs of supernodes K . Among these 3 external modification tasks, the external modification tasks for the same ancestor supernode cannot be executed simultaneously, that is, the external modification tasks of the supernodes S 1 pair of supernodes J and the supernodes S 2 pairs of supernodes J cannot be executed simultaneously. Because both of these tasks will modify the data of the supernode J , and the modified areas may have common parts. Simultaneous update will cause data competition and lead to incorrect calculation results. However, the external modification tasks for different ancestor nodes can be executed simultaneously, such as the external modification tasks of the supernodes S 2 pairs of supernodes J and the supernodes S 2 pairs of supernodes K , thus realizing the parallel processing of numerical decomposition.

[0095] In the preferred embodiment of the present application, as Figure 3 shown, the process of executing the internal decomposition task includes:

[0096] Performing Cholesky decomposition on the diagonal matrix of the supernode to obtain the factor matrix L 1:

[0097] ;

[0098] This process is completed by the LAPACK function dpotrf();

[0099] According to the factor matrix L 1, update the elements below the diagonal of the supernode:

[0100] ;

[0101] This process is completed by the BLAS function dtrsm();

[0102] Among them, C1 is the diagonal square matrix of the supernode, L 1 is the factor matrix obtained by decomposing the diagonal square matrix, C2 , C3 , C4 , C5 , C6 are the segment pointers of the supernode.

[0103] In this embodiment, the execution process of the external decoration task includes:

[0104] As Figure 3 shown, taking the update of the supernode S 2 to the supernode J as an example. The execution process of the external decoration task of the descendant supernode to the supernode includes performing DGEMM operation on the supernode according to the descendant supernode:

[0105] ;

[0106] B= ( A1 ) T ;

[0107] This process is completed by the BLAS function dgemm();

[0108] Among them, A1 , A2 , A3 , A4 are the segment pointers of the descendant supernode;

[0109] The execution process of the external decoration task of the supernode to the ancestor supernode includes performing DGEMM operation on the ancestor supernode according to the supernode. For details, refer to the execution process of the external decoration task of the descendant supernode to the supernode, which will not be elaborated here.

[0110] Advantageously, by padding the upper triangular part of the supernode diagonal square matrix with zero elements, the traditional trapezoidal supernode is supplemented with zero elements to form a block supernode, which is beneficial to efficiently utilize the high-performance multi-threaded level-3 BLAS function and LAPACK function subroutines to address in memory, reduce data transfer, and improve efficiency.

[0111] The supernode parallel Cholesky numerical decomposition method for the structural finite element stiffness matrix of the present application initializes the task pool and enters the OpenMP parallel region to perform the numerical decomposition in parallel. When initializing the task pool, all leaf supernodes without descendant supernodes need to be added to the task pool. During the formal parallel decomposition, when the internal decomposition task of a certain supernode is completed, its external decoration tasks for all ancestor nodes are immediately added to the task pool to wait for collection and execution. When each thread task is collected, the internal decoration task is preferentially collected. When collecting the external decoration task, if the ancestor supernode of a certain external decoration task is being updated by another thread, this external decoration task cannot be collected, so as to avoid incorrect calculation results caused by data competition. When the internal decomposition task of the last supernode is completed, the entire parallel decomposition process ends.

[0112] In an embodiment of the present application, a supernode parallel Cholesky numerical decomposition algorithm process for the structural finite element stiffness matrix is given:

[0113]

[0114] In this algorithm, task_in is used to save the supernode number for the internal decomposition task, task_S is used to save the descendant supernode number for the external decoration task, and task_J is used to save the ancestor supernode number for the external decoration task. The first line in the algorithm first initializes the used arrays and variables, and then puts the numbers of all supernodes without descendant supernodes into task_in for parallel internal decomposition tasks. At this time, simply, if SJ_N J =0, it means that the supernode J has no descendant supernodes.

[0115] After entering the parallel region, first initialize the current task and task type to -1 in each loop. Note that these variables are private variables for each thread. When collecting tasks, the internal decomposition task is preferentially collected. The current internal decomposition task is placed in the variable J ​Among them. If there is no internal decomposition task, then receive an external decoration task. When receiving the task, it can be received from the beginning of the array or from the end. Usually, the earlier the task is placed, the earlier it should be received. It should be noted that it has been specified that multiple external decoration tasks cannot be performed on the same ancestor supernode simultaneously. Therefore, an auxiliary array should be used to mark the ancestor supernodes that are undergoing external decoration tasks, and this task should be skipped when receiving the task. When using this auxiliary array, when an external decoration task is received, the corresponding ancestor supernode is immediately marked as being updated, and marked as idle when the external decoration task is completed. The operation of changing the content of the auxiliary array should be carried out in the critical section. After the task receiving is completed, the corresponding task is executed according to the task type. When the internal decomposition task of a certain supernode is completed, the supernode number and the numbers of all its ancestor supernodes are added to the external decoration task pool. When the number of times the external decoration task of a certain supernode is executed is equal to the number of its descendant supernodes, it is added to the internal decomposition task pool. When the number of times the internal decomposition task is executed is equal to the number of supernodes, it means that all supernodes have completed decomposition, and the while loop can be exited.

[0116] The supernode parallel Cholesky numerical decomposition method for the structural finite element stiffness matrix of the present application guides the parallel numerical decomposition process through supernode relationships;

[0117] The parallel of numerical decomposition is realized through the OpenMP task pool parallel template; the numerical decomposition starts from all independent leaf supernodes simultaneously. Any idle thread can try to obtain a valid update task from the task pool. Once the task is completed, the thread immediately supplements new tasks to the task pool, realizing multi-branch parallel numerical decomposition and maximizing the parallel potential of numerical decomposition.

[0118] As described above, it is only the specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions that can be easily thought of by those skilled in the technical field within the technical scope disclosed by the present application should be covered by the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claimed rights.

Claims

1. A super-node parallel Cholesky numerical decomposition method for finite element stiffness matrix of aircraft structure, characterized in that: include: Step 1: Obtain a supernode in the aircraft structure finite element stiffness matrix and determine the numerical decomposition task of the supernode, including: Obtain super nodes in the aircraft structure finite element stiffness matrix; Determine the numerical decomposition task of the supernode according to the supernode relationship, wherein the numerical decomposition task of the supernode includes the internal decomposition task of the supernode, the external modification task of the descendant supernode to the supernode, and the external modification task of the supernode to the ancestor supernode; Screening out invalid tasks from the numerical decomposition tasks of the supernode and removing the invalid tasks; Step 2: Build a task pool; Step 3: Add the numerical decomposition task to the task pool; Step 4: According to the preset task collection principle, tasks are collected from the task pool and executed, and steps 3 to 4 are repeated until all the numerical decomposition tasks are completed.

2. The aircraft structure finite element stiffness matrix super-node parallel Cholesky numerical decomposition method according to claim 1 is characterized in that: In step 1, invalid tasks in the numerical decomposition tasks of the supernode are screened out, including: If the diagonal matrix of the descendant supernode and the supernode do not have the same rows, the external modification task of the descendant supernode to the supernode is an invalid task; If the diagonal matrix of a supernode and its ancestor supernode do not have the same rows, the external modification task of the supernode to the ancestor supernode is an invalid task.

3. The aircraft structure finite element stiffness matrix super-node parallel Cholesky numerical decomposition method according to claim 2 is characterized in that: In step 2, the task pool includes: Internal decomposition task pool, used to store the internal decomposition tasks of the super node; The external modification task pool is used to store the external modification tasks of descendant super nodes to super nodes and the external modification tasks of super nodes to ancestor super nodes.

4. The aircraft structure finite element stiffness matrix super-node parallel Cholesky numerical decomposition method according to claim 3 is characterized in that: In step three, adding the numerical decomposition task to the task pool includes: When initializing the task pool, the internal decomposition tasks of all supernodes without descendant supernodes are added to the internal decomposition task pool; When the number of times that the descendant supernode executes the external modification task of the supernode is equal to the number of descendant supernodes, the internal decomposition task of the supernode is added to the internal decomposition task pool; When the internal decomposition tasks of a supernode are executed, the external modification tasks of the supernode to all ancestor supernodes are added to the external modification task pool.

5. The method for super-node parallel Cholesky numerical decomposition of aircraft structure finite element stiffness matrix according to claim 4, characterized in that: In step 4, the task collection principles include: Prioritize the internal decomposition tasks in the internal decomposition task pool. If there are no internal decomposition tasks in the internal decomposition task pool, then take the external modification tasks in the external modification task pool. In the internal decomposition task pool, firstly take the internal decomposition tasks added earlier; In the external modification task pool, the external modification tasks added earlier are given priority; At the same time, accept the external modification tasks of the same supernode to different ancestor supernodes; Multiple supernodes cannot simultaneously accept external modification tasks for the same ancestor node.

6. The aircraft structure finite element stiffness matrix super-node parallel Cholesky numerical decomposition method according to claim 5, characterized in that: You cannot accept multiple supernodes' external modification tasks for the same ancestor node at the same time, including: When receiving the external modification task of a supernode to an ancestor supernode, the ancestor supernode is marked as being updated; When a supernode has completed the external modification task of an ancestor supernode, it marks the ancestor supernode as idle; When picking up tasks, skip the external modification tasks of the supernode to the ancestor supernode marked as being updated.

7. The aircraft structure finite element stiffness matrix super-node parallel Cholesky numerical decomposition method according to claim 6, characterized in that: The internal decomposition task execution process includes: Perform Cholesky decomposition on the diagonal matrix of the supernode to obtain the factor matrix L 1 : According to the factor matrix L 1 Update the following elements on the diagonal of the supernode: in, C1 is the diagonal matrix of supernodes, L 1 is the factor matrix obtained by decomposing the diagonal matrix, C2 , C3 , C4 , C5 , C6 The fragment pointer of the supernode.

8. The aircraft structure finite element stiffness matrix super-node parallel Cholesky numerical decomposition method according to claim 7, characterized in that: The external modification task execution process includes: The process of executing the external modification task of the descendant supernode on the supernode includes performing DGEMM operation on the supernode according to the descendant supernode: B=(A1 ) T in, A1 , A2 , A3 , A4 It is the fragment pointer of the descendant supernode; The process of executing the external modification task of a supernode on an ancestor supernode includes performing a DGEMM operation on the ancestor supernode according to the supernode.

9. The aircraft structure finite element stiffness matrix super-node parallel Cholesky numerical decomposition method according to claim 8, characterized in that: When the number of times the internal decomposition tasks of a supernode are executed is equal to the number of supernodes, it indicates that all the numerical decomposition tasks are executed.

Citation Information

Patent Citations

  • Method for storing and generating stiffness matrix for finite-element analysis in metal bulk plastic forming

    CN102184298A

  • Stiffness matrix compression storage method and system based on block symmetry characteristic and medium

    CN119358329A