Data processing method for solving local eigenpairs of generalized eigen-equation

By adaptively adjusting the Lanczos solver mode and initialization parameters, memory usage and computational efficiency are optimized, solving the problems of memory consumption and computational overhead in solving large-scale generalized characteristic equations. Stable and efficient feature extraction is achieved, which is applicable to fields such as finite element analysis, computational fluid dynamics, and electromagnetic simulation.

CN120407996BActive Publication Date: 2025-10-21HUNAN MAIXI SOFTWARE CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510891407.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-06-30
Publication Date
2025-10-21
Estimated Expiration
2045-06-30

AI Technical Summary

Technical Problem

When solving large-scale generalized characteristic equations, existing technologies experience a sharp increase in computing costs, memory usage, and data processing overhead. They lack targeted data management and memory optimization strategies, making it difficult to effectively address these challenges, especially in ultra-large-scale computing scenarios.

Method used

By adaptively adjusting the mode of the Lanczos solver based on hardware resource conditions, initializing the number of target features and the number of Lanczos vectors, performing Lanczos iteration operations, and merging computation results when necessary, memory usage and computational efficiency are optimized.

Benefits of technology

It significantly reduces memory usage and computational overhead in the feature extraction process, improves memory controllability and computational stability in solving large-scale generalized characteristic equations, and is applicable to fields such as finite element analysis, computational fluid dynamics, and electromagnetic simulation, meeting the high-efficiency computational needs of modern engineering simulation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120407996B_ABST
    Figure CN120407996B_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a data processing method, device and equipment for solving a local eigenpair of a generalized eigenproblem, and a computer readable storage medium. The method comprises determining a mode of a Lanczos solver according to hardware information; initializing a target number of eigenpairs to be solved at one time by the Lanczos solver and a number of Lanczos vectors in a one-time solving process; performing a Lanczos iteration operation based on the target number and the number of Lanczos vectors, and calculating a number of converged eigenpairs this time; and if the number of converged eigenpairs this time is greater than or equal to the target number and greater than a preset target number, merging the calculation results according to the mode of the Lanczos solver to obtain a number of converged eigenpairs. In this way, the memory occupation and the calculation overhead are significantly reduced, and the solving efficiency and scalability of large-scale eigenproblem extraction are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the fields of engineering simulation and scientific computing, and in particular to a data processing method, apparatus, device, and computer-readable storage medium for solving local characteristic pairs of generalized characteristic equations. Background Art

[0002] In the fields of engineering simulation and scientific computing, solving the first N-order eigenpairs of large-scale generalized characteristic equations has important applications, such as natural frequency analysis and vibration analysis of large bridges and buildings. To address this need, a relatively mature and efficient set of mathematical theories has been developed, such as subspace iteration methods and Krylov subspace methods. The Lanczos iteration method based on Krylov subspaces has become a mainstream choice for computer-aided engineering (CAE) simulation.

[0003] However, in actual engineering applications, the Lanczos method has exposed obvious limitations. The algorithm requires frequent sparse matrix-vector multiplication, orthogonalization and storage of basis vectors. As the number of extracted feature pairs N increases, the basis scale expands rapidly, resulting in a sharp increase in computing costs, memory usage and data processing overhead. This problem is particularly prominent as the scale of computing continues to expand and the number of degrees of freedom in finite element simulations has reached millions or even tens of millions. In ultra-large-scale computing scenarios, there is a lack of targeted data management and memory optimization strategies, and a clear and effective technical route has not yet been formed to meet the challenges of large-scale feature solving.

[0004] Based on the above problems, how to construct an efficient Lanczos solution method for large-scale sparse generalized characteristic equations is a problem that urgently needs to be solved. Summary of the Invention

[0005] According to an embodiment of the present application, a data processing solution for solving local feature pairs of generalized characteristic equations is provided, which can adaptively adjust the solution process according to the hardware resource status, significantly reducing the memory usage and computational overhead in the feature extraction process. At the same time, while ensuring the accuracy of the solution, the memory controllability and computational stability of the solution of large-scale generalized characteristic equations are effectively improved, which can meet the actual needs of ultra-large-scale structural simulation in complex engineering applications. That is, under the conditions of limited hardware resources, it can achieve stable and efficient solution of large-scale generalized characteristic equations, has good scalability and resource adaptability, is applicable to multiple fields such as finite element analysis (FEA), computational fluid dynamics (CFD), electromagnetic simulation, etc., and can effectively meet the high requirements of modern engineering simulation for computational accuracy and efficiency.

[0006] In a first aspect of the present application, a data processing method for solving local characteristic pairs of a generalized characteristic equation is provided. The method comprises:

[0007] Determine the Lanczos solver mode based on the hardware information; initialize the target number of eigenpairs to be solved at one time by the Lanczos solver and the number of Lanczos vectors to be solved at one time;

[0008] Based on the target number and the number of Lanczos vectors, a Lanczos iteration operation is performed to calculate the number of converged eigenpairs this time; if the number of converged eigenpairs this time is greater than or equal to the target number and greater than a preset target number, the calculation results are merged according to the mode of the Lanczos solver to obtain the converged number of eigenpairs.

[0009] Furthermore, the target number of eigenpairs solved at one time by initializing the Lanczos solver and the number of Lanczos vectors in the one-time solution process include:

[0010] Determining a target number of feature pairs according to a preset target number;

[0011] Determine the number of Lanczos vectors according to the target number:

[0012] in,

[0013] ;

[0014] ;

[0015] in, is the target number of feature pairs;

[0016] N is the number of preset targets;

[0017] is the number of Lanczos vectors.

[0018] Furthermore, determining the mode of the Lanczos solver according to the hardware information includes:

[0019] According to the hardware information, the available memory size of the hardware resource is obtained to obtain the first memory data;

[0020] Performing symbolic decomposition on the stiffness rectangle in the generalized characteristic equation to obtain the second memory data and the third memory data required for the stiffness matrix of the inner core decomposition and the outer core decomposition respectively;

[0021] Determining, according to the target number and the number of Lanczos vectors, fourth memory data required for Lanczos iteration in the in-core solution mode and fifth memory data required for Lanczos iteration in the out-of-core solution mode;

[0022] The mode of the Lanczos solver is determined based on the first, second, third, fourth and fifth memory data.

[0023] Furthermore, determining the mode of the Lanczos solver according to the first, second, third, fourth, and fifth memory data includes:

[0024] If the first memory data is greater than the sum of the second memory data and the fourth memory data, or the first memory data is greater than the sum of the third memory data and the fourth memory data, the Lanczos solver is in the in-core solving mode;

[0025] If the first memory data is greater than the sum of the third memory data and the fifth memory data, or the first memory data is greater than the sum of the third memory data and one-half of the fifth memory data, the Lanczos solver is in out-of-core solving mode.

[0026] Furthermore, it also includes:

[0027] If the first memory data is smaller than the sum of the third memory data and half of the fifth memory data, the calculation is exited.

[0028] Furthermore, it also includes:

[0029] If the number of converged feature pairs is greater than or equal to the target number and less than the preset target number, the new displacement is calculated as follows:

[0030] ;

[0031] in, is the largest eigenvalue among the calculated eigenvalue pairs;

[0032] is the average distance between eigenvalues ​​in the eigenpairs obtained from the previous displacement calculation;

[0033] Based on the new displacement, the Lanczos iteration operation is re-performed.

[0034] Furthermore, the method of combining calculation results according to the Lanczos solver mode to obtain the number of converged eigenpairs includes:

[0035] If the Lanczos solver is in out-of-core mode, the eigenpair files stored on disk are integrated and sorted in ascending order of eigenvalues. The file name and the number of converged eigenpairs are returned.

[0036] If the Lanczos solver is in-core, the number of converged eigenpairs and the location of the eigenpair array in memory are returned.

[0037] In a second aspect of the present application, a data processing device for solving local characteristic pairs of a generalized characteristic equation is provided. The device comprises:

[0038] The initialization module is used to determine the mode of the Lanczos solver based on the hardware information; initialize the target number of eigenpairs solved by the Lanczos solver at one time and the number of Lanczos vectors in the one-time solution process;

[0039] A calculation module is used to perform a Lanczos iterative operation based on the target number and the number of Lanczos vectors to calculate the number of converged eigenpairs; if the number of converged eigenpairs is greater than or equal to the target number and greater than a preset target number, then according to the mode of the Lanczos solver, the calculation results are merged to obtain the converged number of eigenpairs.

[0040] In a third aspect of the present application, an electronic device is provided, comprising: a memory and a processor, wherein the memory stores a computer program, and the processor implements the above method when executing the program.

[0041] In a fourth aspect of the present application, a computer-readable storage medium is provided, on which a computer program is stored. When the program is executed by a processor, the method according to the first aspect of the present application is implemented.

[0042] The data processing method for solving local eigenpairs of generalized characteristic equations provided in an embodiment of the present application determines the mode of the Lanczos solver based on hardware information; initializes the target number of eigenpairs to be solved by the Lanczos solver at one time and the number of Lanczos vectors in the one-time solution process; based on the target number and the number of Lanczos vectors, performs a Lanczos iteration operation to calculate the number of converged eigenpairs this time; if the number of converged eigenpairs this time is greater than or equal to the target number and greater than a preset target number, then, according to the mode of the Lanczos solver, merges the calculation results to obtain the converged number of eigenpairs, significantly reducing memory usage and computational overhead, and improving the efficiency and scalability of solving large-scale feature extraction problems.

[0043] It should be understood that the contents described in the Summary of the Invention are not intended to limit the key or important features of the embodiments of the present application, nor are they intended to limit the scope of the present application. Other features of the present application will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0044] The above and other features, advantages and aspects of the embodiments of the present application will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. In the accompanying drawings, the same or similar reference numerals represent the same or similar elements, wherein:

[0045] Figure 1 Flowchart of a data processing method for solving local characteristic pairs of generalized characteristic equations according to an embodiment of the present application;

[0046] Figure 2 A flowchart of calculating local characteristic pairs for solving the generalized characteristic equation according to an embodiment of the present application;

[0047] Figure 3 is a flow chart of Lanczos iterative calculation according to an embodiment of the present application;

[0048] Figure 4 Schematic diagram of a storage process according to features of an embodiment of the present application;

[0049] Figure 5 1 is a block diagram of a data processing device for solving local characteristic pairs of generalized characteristic equations according to an embodiment of the present application;

[0050] Figure 6 A schematic diagram of the structure of a terminal device or server suitable for implementing an embodiment of the present application. DETAILED DESCRIPTION

[0051] To make the purpose, technical solutions, and advantages of the embodiments of the present disclosure more clear, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present disclosure, not all of the embodiments. Based on the embodiments of the present disclosure, all other embodiments obtained by ordinary technicians in this field without making any creative efforts are within the scope of protection of the present disclosure.

[0052] In this document, the term "and / or" simply describes a relationship between related objects, indicating that three possible relationships exist. For example, "A and / or B" can represent: A exists alone, A and B exist simultaneously, or B exists alone. Furthermore, the character " / " in this document generally indicates that the related objects are in an "or" relationship.

[0053] Figure 1 A flow chart of a data processing method for solving local characteristic pairs of generalized characteristic equations according to an embodiment of the present disclosure is shown. The method includes:

[0054] S110, determining a mode of a Lanczos solver according to the hardware information; initializing a target number of eigenpairs solved at one time by the Lanczos solver and a target number of Lanczos vectors in a one-time solving process.

[0055] In some embodiments, the generalized characteristic equation is defined as:

[0056] ;

[0057] Among them, K is a matrix called the stiffness matrix;

[0058] M is a matrix called the mass matrix;

[0059] λ is the eigenvalue;

[0060] x is the eigenvector;

[0061] Solving the local eigenpairs of the generalized characteristic equation, that is, solving the first N-order eigenpairs of the generalized characteristic equation in engineering calculations.

[0062] In some embodiments, nev and ncv parameters of the Lanczos solver are initialized based on hardware resources;

[0063] Among them, nev is the target number of eigenpairs that the solver solves at one time;

[0064] ncv is the number of Lanczos vectors in the solver's one-time solution process.

[0065] Determine the Lanczos solver mode based on the hardware information, including:

[0066] According to the hardware information, the available memory size of the hardware resource is obtained to obtain the first memory data M0;

[0067] Performing symbolic decomposition on the stiffness matrix K in the generalized characteristic equation to obtain second memory data M1 and third memory data M2 required for the in-core decomposition and out-core decomposition stiffness matrices, respectively;

[0068] Determine the initial values ​​of nev and ncv:

[0069] ;

[0070] ;

[0071] in, is the target number of feature pairs;

[0072] N is the number of preset targets;

[0073] is the number of Lanczos vectors;

[0074] It should be noted that the larger the nev is, the more eigenpairs the solver will store in a single solution, that is, the more memory is required; conversely, the solver will perform more solutions more times;

[0075] The larger the ncv, the more iterations a single solution will take, that is, the more eigenpairs will converge, but the more memory it requires and the longer the single solution time will be. In the present disclosure, preferably, the sum of the maximum values ​​of nev, 15, and nev / 2 is set as the initial value of ncv.

[0076] According to the target number and the number of Lanczos vectors, the fourth memory data M3 required for the Lanczos iteration in the in-core solution mode and the fifth memory data M4 required for the Lanczos iteration in the out-of-core solution mode are determined respectively:

[0077] ;

[0078] ;

[0079] Among them, rank is the dimension of the stiffness matrix K;

[0080] Specifically, M3 is used to store vector data of all necessary length ranks of the kernel, including: Lanczos vectors (number is ncv+2), eigenvectors converged by the previous shift operation (number is nev), and all converged eigenvectors (total number N);

[0081] M4 is the memory data used for out-of-core solving, including the Lanczos vector (number ncv + 2) and the eigenvectors converged from the previous shift operation (number nev). Unlike M3, all converged eigenvectors no longer occupy memory but are stored on disk.

[0082] Based on the first, second, third, fourth and fifth memory data, the mode of the Lanczos solver is determined:

[0083] The algorithm's memory data includes stiffness matrix decomposition and Lanczos iteration. After obtaining the available memory M0 based on the hardware information, the memory requirements of different solution modes are compared to determine the optimal mode of the Lanczos solver:

[0084] If M0 > M1 + M3: Prioritize in-core decomposition and in-core solution to fully utilize memory resources and improve computational efficiency;

[0085] If M0 > M2 + M3: Use out-of-core decomposition but keep in-core solution to balance memory usage and computing performance;

[0086] If M0 > M2 + M4: Use out-of-core decomposition and out-of-core solution to ensure stable operation of the algorithm within the available memory;

[0087] If M0 > M2 + 0.5 * M4: Select out-of-core decomposition and out-of-core solution, and adjust the parameters nev and ncv to adapt to the lower memory limit to ensure stable operation of the algorithm;

[0088] If M0 < M2 + 0.5 * M4: The system memory is insufficient to support the current configuration, and the user needs to be prompted to increase memory or optimize the program to free up resources.

[0089] Right now:

[0090] If M0 > M1 + M3, the stiffness matrix decomposition is completed using the in-core solution mode, and the Lanczos solver is in the in-core solution mode;

[0091] If M0 > M2 + M3, the stiffness matrix decomposition is completed in the out-of-core solution mode, and the Lanczos solver is in the in-core solution mode;

[0092] If M0 > M2 + M4, the stiffness matrix decomposition is completed using the out-of-core solution mode, and the Lanczos solver is in the out-of-core solution mode;

[0093] If M0 > M2 + 0.5 * M4, the stiffness matrix decomposition is completed using the out-of-core solver mode. The Lanczos solver is in out-of-core solver mode, and nev and ncv are corrected at the same time. For example, nev = nev / 2, ncv = ncv / 2;

[0094] If M0 < M2 + 0.5 * M4, it indicates that the computing hardware memory resources are too small and the memory is insufficient, so the calculation is exited.

[0095] In summary, the above-mentioned hierarchical judgment method can ensure that the optimal solution mode is selected under different memory conditions, optimizing computing efficiency while ensuring algorithm stability.

[0096] S120, based on the target number and the number of Lanczos vectors, perform a Lanczos iteration operation to calculate the number of converged eigenpairs this time; if the number of converged eigenpairs this time is greater than or equal to the target number and greater than a preset target number, then according to the mode of the Lanczos solver, merge the calculation results to obtain the converged number of eigenpairs.

[0097] In some embodiments, as Figure 2 As shown in the figure, after initialization, Lanczos iterations are performed at each displacement δ, aiming to obtain nev eigenpairs. If nev eigenpairs are not obtained, Lanczos iterations are continued. Otherwise, a check is performed to determine whether the number of eigenpairs obtained exceeds the specified N. If not, a new displacement δi is calculated and the solution is continued.

[0098] In some embodiments, the Lanczos iterative calculation method is as follows Figure 3As shown, unlike the existing Lanczos algorithm, before performing the calculation related to the new Lanczos vector vi, it is necessary to determine whether some eigenpairs have been solved (that is, whether it is the first solution). If not, it is necessary to perform an orthogonal operation with the eigenpairs obtained in the previous solution.

[0099] In some embodiments, as Figure 4 As shown in the figure, each partial feature pair obtained needs to be deduplicated with the previously calculated feature pairs before being stored:

[0100] Specifically, the currently obtained eigenpairs are compared one by one with previously obtained eigenpairs. First, the eigenvalues ​​are compared. If the difference in eigenvalues ​​is no more than 1e-5, the calculated eigenvectors are compared to see if they meet orthogonality. If not, the eigenpair is considered duplicated and is removed. After duplicate removal, if the solution is out-of-core, the eigenpairs are stored on disk to control memory usage.

[0101] In some embodiments, as Figure 2 As shown, in order to speed up the convergence speed, in this disclosure, in addition to the first calculation selected Except for the case where the value is equal to 0, all other Lanczos calculations need to be recalculated with a new :

[0102] ;

[0103] in, is the largest eigenvalue among the calculated eigenvalue pairs;

[0104] is the average distance between eigenvalues ​​in eigenpairs obtained from the previous displacement calculation.

[0105] In some embodiments, according to the mode of the Lanczos solver determined in step S110, the calculation results are combined to obtain the number of converged eigenpairs:

[0106] If the Lanczos solver is in out-of-core mode, the eigenpair files stored on disk are integrated and sorted in ascending order of eigenvalues. The file name and the number of converged eigenpairs are returned.

[0107] If the Lanczos solver is in-core, the number of converged eigenpairs and the location of the eigenpair array in memory are returned.

[0108] According to the embodiments of the present disclosure, the following technical effects are achieved:

[0109] Through a displacement transfer strategy, the traditional N-order feature extraction task can be transformed into an interval feature extraction problem, fundamentally controlling the number of basis vectors and effectively reducing the orthogonalization computational overhead and data processing burden. This method can achieve stable and efficient solutions to large-scale generalized characteristic equations under limited hardware resources. It has excellent scalability and resource adaptability, making it suitable for multiple fields such as finite element analysis (FEA), computational fluid dynamics (CFD), and electromagnetic simulation, effectively meeting the high computational accuracy and efficiency requirements of modern engineering simulation.

[0110] It should be noted that for the aforementioned method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that this application is not limited by the order of the actions described, because according to this application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in this specification are all optional embodiments, and the actions and modules involved are not necessarily required by this application.

[0111] The above is an introduction to the method embodiment. The following is a device embodiment to further illustrate the solution described in this application.

[0112] Figure 5 FIG. 5 shows a data processing device 500 for solving a generalized characteristic equation local characteristic pair according to an embodiment of the present application, as shown in FIG. Figure 5 Shown include:

[0113] Initialization module 510 is used to determine the mode of the Lanczos solver based on the hardware information; initialize the target number of eigenpairs solved by the Lanczos solver at one time and the number of Lanczos vectors in the one-time solution process;

[0114] A calculation module 520 is used to perform a Lanczos iterative operation based on the target number and the number of Lanczos vectors to calculate the number of converged eigenpairs; if the number of converged eigenpairs is greater than or equal to the target number and greater than a preset target number, then according to the Lanczos solver mode, the calculation results are merged to obtain the converged number of eigenpairs.

[0115] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the described module can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0116] Figure 6 A schematic diagram of the structure of a terminal device or server suitable for implementing an embodiment of the present application is shown.

[0117] like Figure 6As shown, the terminal device or server includes a central processing unit (CPU) 601, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 602 or the program loaded from the storage part 608 into the random access memory (RAM) 603. Various programs and data required for the operation of the terminal device or server are also stored in the RAM 603. The CPU 601, ROM 602 and RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0118] The following components are connected to the I / O interface 605: an input section 606 including a keyboard, a mouse, and the like; an output section 607 including devices such as a cathode ray tube (CRT), a liquid crystal display (LCD), and a speaker; a storage section 608 including a hard disk; and a communication section 609 including a network interface card such as a LAN card or a modem. The communication section 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to the I / O interface 605 as needed. A removable medium 611, such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, is installed in the drive 610 as needed, so that computer programs read therefrom can be installed into the storage section 608 as needed.

[0119] In particular, according to an embodiment of the present application, the above method flow steps can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a machine-readable medium, and the computer program includes program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 609, and / or installed from the removable medium 611. When the computer program is executed by the central processing unit (CPU) 601, the above-mentioned functions defined in the system of the present application are executed.

[0120] It should be noted that the computer-readable medium shown in this application can be a computer-readable signal medium or a computer-readable storage medium, or any combination of the two. The computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or any combination of the above. More specific examples of computer-readable storage media can include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this application, a computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, device, or device. In this application, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, which carries computer-readable program code. This propagated data signal can take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport a program for use by or in conjunction with an instruction execution system, apparatus, or device. Program code embodied on a computer-readable medium may be transmitted using any suitable medium, including but not limited to wireless, wireline, optical fiber cable, RF, or any suitable combination thereof.

[0121] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a module, program segment, or a part of code, and the aforementioned module, program segment, or a part of code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order than that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of the boxes in the block diagram and / or flowchart, can be implemented by a dedicated hardware-based system that performs the specified function or operation, or can be implemented by a combination of dedicated hardware and computer instructions.

[0122] The units or modules involved in the embodiments described in this application may be implemented in software or hardware. The units or modules described may also be provided in a processor. The names of these units or modules do not, in certain circumstances, constitute limitations on the units or modules themselves.

[0123] As another aspect, the present application further provides a computer-readable storage medium, which may be included in the electronic device described in the above embodiments, or may exist independently and not be incorporated into the electronic device. The computer-readable storage medium stores one or more programs, which, when used by one or more processors, execute the method described in the present application.

[0124] The above description is merely a preferred embodiment of the present application and an illustration of the technical principles employed. Those skilled in the art should understand that the scope of application involved in this application is not limited to the technical solutions formed by a specific combination of the above-mentioned technical features, but should also cover other technical solutions formed by any combination of the above-mentioned technical features or their equivalents without departing from the aforementioned application concept. For example, a technical solution formed by replacing the above-mentioned features with (but not limited to) technical features with similar functions applied for in this application.

Claims

1. A data processing method for solving local characteristic pairs of generalized characteristic equations, characterized in that: include: Determine the Lanczos solver mode based on the hardware information, including: According to the hardware information, the available memory size of the hardware resource is obtained to obtain the first memory data; Performing symbolic decomposition on the stiffness matrix in the generalized characteristic equation to obtain the second memory data and the third memory data required for the in-core decomposition stiffness matrix and the out-core decomposition stiffness matrix respectively; Initialize the target number of eigenpairs solved by the Lanczos solver at one time and the number of Lanczos vectors in the one-time solution process; Determining, according to the target number and the number of Lanczos vectors, fourth memory data required for Lanczos iteration in the in-core solution mode and fifth memory data required for Lanczos iteration in the out-of-core solution mode; According to the first, second, third, fourth and fifth memory data, the mode of the Lanczos solver is determined, including: If the first memory data is greater than the sum of the second memory data and the fourth memory data, or the first memory data is greater than the sum of the third memory data and the fourth memory data, the Lanczos solver is in the in-core solving mode; If the first memory data is greater than the sum of the third memory data and the fifth memory data, or the first memory data is greater than the sum of the third memory data and half of the fifth memory data, the Lanczos solver is in out-of-core solver mode. Based on the target number and the number of Lanczos vectors, a Lanczos iteration operation is performed to calculate the number of converged eigenpairs this time; if the number of converged eigenpairs this time is greater than or equal to the target number and greater than a preset target number, the calculation results are merged according to the mode of the Lanczos solver to obtain the converged number of eigenpairs.

2. The method according to claim 1, characterized in that The target number of eigenpairs solved at one time by initializing the Lanczos solver and the number of Lanczos vectors solved at one time include: Determining a target number of feature pairs according to a preset target number; Determine the number of Lanczos vectors according to the target number: in, ; ; in, is the target number of feature pairs; N is the number of preset targets; is the number of Lanczos vectors.

3. The method according to claim 2, characterized in that Also includes: If the first memory data is smaller than the sum of the third memory data and half of the fifth memory data, the calculation is exited.

4. The method according to claim 3, characterized in that Also includes: If the number of converged feature pairs is greater than or equal to the target number and less than the preset target number, the new displacement is calculated as follows: ; in, is the largest eigenvalue among the calculated eigenvalue pairs; is the average distance between eigenvalues ​​in the eigenpairs obtained from the previous displacement calculation; Based on the new displacement, the Lanczos iteration operation is re-performed.

5. The method according to claim 4, characterized in that According to the Lanczos solver mode, the calculation results are combined to obtain the number of converged eigenpairs: If the Lanczos solver is in out-of-core mode, the eigenpair files stored on disk are integrated and sorted in ascending order of eigenvalues. The file name and the number of converged eigenpairs are returned. If the Lanczos solver is in-core, the number of converged eigenpairs and the location of the eigenpair array in memory are returned.

6. A data processing device for solving local characteristic pairs of generalized characteristic equations, characterized in that: include: The initialization module is used to determine the Lanczos solver mode based on hardware information, including: According to the hardware information, the available memory size of the hardware resource is obtained to obtain the first memory data; Performing symbolic decomposition on the stiffness matrix in the generalized characteristic equation to obtain the second memory data and the third memory data required for the in-core decomposition stiffness matrix and the out-core decomposition stiffness matrix respectively; Initialize the target number of eigenpairs solved by the Lanczos solver at one time and the number of Lanczos vectors in the one-time solution process; Determining, according to the target number and the number of Lanczos vectors, fourth memory data required for Lanczos iteration in the in-core solution mode and fifth memory data required for Lanczos iteration in the out-of-core solution mode; According to the first, second, third, fourth and fifth memory data, the mode of the Lanczos solver is determined, including: If the first memory data is greater than the sum of the second memory data and the fourth memory data, or the first memory data is greater than the sum of the third memory data and the fourth memory data, the Lanczos solver is in the in-core solving mode; If the first memory data is greater than the sum of the third memory data and the fifth memory data, or the first memory data is greater than the sum of the third memory data and one-half of the fifth memory data, the Lanczos solver is in out-of-core solving mode; A calculation module is used to perform a Lanczos iterative operation based on the target number and the number of Lanczos vectors to calculate the number of converged eigenpairs; if the number of converged eigenpairs is greater than or equal to the target number and greater than a preset target number, then according to the mode of the Lanczos solver, the calculation results are merged to obtain the converged number of eigenpairs.

7. An electronic device comprising a memory and a processor, wherein a computer program is stored in the memory, wherein: When the processor executes the computer program, the method according to any one of claims 1 to 5 is implemented.

8. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 5 is implemented.

Citation Information

Patent Citations

  • Efficient automatic multi-substructure out-of-core parallel computing method

    CN118606063A