Protein heart position limiting method and device, computer equipment and storage medium

By mapping the atomic data of protein structure in a three-dimensional network structure and performing multi-level parallel calculations, the problem of low computational efficiency in large protein systems is solved, and efficient protein center position restriction and scalability are achieved.

CN119170086APending Publication Date: 2024-12-20SHANGHAI SMARTLOGIC TECHNOLOGY LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411206361.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-29
Publication Date
2024-12-20

AI Technical Summary

Technical Problem

The traditional protein center position limiting algorithm has low parallel efficiency on 3D grid structure hardware systems, and the data communication overhead between computing units is high, resulting in low computational efficiency when processing large protein systems.

Method used

Using a pre-constructed three-dimensional network structure, atomic data in the to-processed protein structure is mapped to the node unit. Each node unit contains a storage unit and a computing unit. The global center of mass and limiting force are calculated through a multi-level parallel computing architecture, and the combined force is distributed in parallel. , update the atomic position and adjust the coordinates when the simulation space is exceeded.

Benefits of technology

It realizes efficient protein center position limitation, reduces data transmission delay and bandwidth requirements, improves computing efficiency, and adapts to protein systems and hardware configurations of different scales, enhancing the scalability and accuracy of the algorithm.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119170086A_ABST
    Figure CN119170086A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of molecular dynamics, in particular to a protein center position limiting method and device, computer equipment and a storage medium. The protein center position limiting method comprises the following steps: mapping each piece of atomic data in a protein structure to be processed to each node unit in a pre-configured three-dimensional network structure; determining global centroid mass and global centroid coordinates from small to large hierarchies according to a preset multi-level parallel computing architecture; calculating a limiting force of a to-be-processed protein structure center point calculation unit in the three-dimensional network structure according to the global center-of-mass coordinate and the initial center-of-mass coordinate; determining the resultant force of each atom from large and small levels according to a preset multi-level parallel computing architecture; and if the updated atomic position exceeds a set simulation space of the to-be-processed protein structure in the three-dimensional network structure, adjusting the atomic coordinate to a preset position in the set simulation space. The invention provides a protein heart position limiting method with higher efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of molecular dynamics technology, and in particular, to a method, apparatus, computer equipment and storage medium for limiting the position of a protein core. Background Art

[0002] Protein center position restraint is an important technical means of molecular dynamics simulation. Its main purpose is to keep the overall position of the protein relatively stable during the simulation, while allowing the protein structure to maintain a certain degree of flexibility. The protein center position restraint method has important applications in many studies, such as:

[0003] 1) Protein-ligand interaction studies: By constraining the overall position of the protein, researchers can better observe and analyze the interaction between the ligand and the protein active site, which is crucial for drug design and screening.

[0004] 2) Membrane protein simulation: When simulating membrane proteins, restricting the overall position of the protein can prevent it from detaching from the membrane and more accurately simulate the behavior of the protein in a physiological environment.

[0005] 3) Protein folding research: By imposing positional restrictions on some folded regions, researchers can focus on observing the folding process of specific regions and gain a deeper understanding of the protein folding mechanism.

[0006] 4) Study of large protein complexes: When studying large protein complexes, imposing positional restraints on certain subunits can help study the interactions between specific subunits.

[0007] The protein center position restriction algorithm restricts the "center of mass" (an imaginary point on a material system where mass is considered to be concentrated) of the "target atom group" to move within a certain range near the initial position by applying a harmonic potential, but it is not completely fixed. By applying an additional spring potential to the overall center of mass of the restricted atoms, the entirety of the restricted atoms can move near the initial center of mass position, and the protein can rotate freely around the initial center of mass position.

[0008] Traditional single protein center position restriction algorithms are usually implemented on general computing architectures. Since the sending and receiving of various computing information must be completed serially, the parallel efficiency of traditional algorithms on 3D grid structure hardware systems is not high, and the data communication overhead between computing units is large. Especially when dealing with large protein systems, the speed is limited in the interaction of large amounts of data calculations, which may lead to low computing efficiency when dealing with large protein systems or long-term simulations.

[0009] Therefore, a more efficient method for restricting the protein center position is urgently needed. Summary of the invention

[0010] The embodiments of the present application provide a method, apparatus, computer device and storage medium for limiting the position of a protein center.

[0011] In a first aspect of an embodiment of the present application, a method for limiting the position of a protein center is provided, comprising:

[0012] Mapping each atomic data in the protein structure to be processed to each node unit in a pre-configured three-dimensional network structure; wherein each node unit includes at least one storage unit and at least one computing unit;

[0013] According to the preset multi-level parallel computing architecture, from small to large levels, the global center of mass mass and global center of mass coordinates of the protein structure to be processed are calculated in sequence in the three-dimensional network structure;

[0014] Calculate the restriction force of the calculation unit of the center point of the protein structure to be processed in the three-dimensional network structure according to the global center of mass coordinates and the initial center of mass coordinates;

[0015] According to a preset multi-level parallel computing architecture, from large to small levels, the restraining force is distributed to each atom in the protein structure to be processed to obtain the combined force of each atom;

[0016] The corresponding atomic positions are updated based on each of the combined forces. If the updated atomic positions exceed the set simulation space of the protein structure to be processed in the three-dimensional network structure, the atomic coordinates are adjusted to the preset positions in the set simulation space.

[0017] In an optional embodiment of the present application, mapping each atomic data in the protein structure to be processed to each node unit in a preconfigured three-dimensional network structure includes:

[0018] Acquiring structural data of the protein structure to be processed, and extracting the atomic coordinates and atomic mass of each atom in the structural data;

[0019] Constructing a set simulation space of the protein structure to be processed based on the structural data, and dividing the set simulation space into a plurality of subspaces;

[0020] The atomic coordinates and the atomic mass corresponding to each subspace in the set simulation space are mapped to each node unit in the three-dimensional network structure.

[0021] In an optional embodiment of the present application, the preset multi-level parallel computing architecture includes, from small to large, a single node unit, a computing cluster structure, and a central structure; wherein one computing cluster structure includes at least two node units, and one central structure includes at least two computing cluster structures.

[0022] In an optional embodiment of the present application, the global center of mass mass and global center of mass coordinates of the protein structure to be processed are calculated in sequence in the three-dimensional network structure from small to large levels according to the preset multi-level parallel computing architecture, including:

[0023] For each of the node units, calculating the sum of the first atomic masses of all atoms in the node unit and the first coordinate component in the local process;

[0024] For each of the computing cluster structures, calculating the second atomic masses of all atoms in each of the computing cluster structures and the second coordinate component in the cluster according to the first atomic masses of each of the node units in the computing cluster structure and the first coordinate component;

[0025] For the central structure, the global center of mass mass and the global center of mass coordinates of the protein structure to be processed are calculated according to the second atomic masses and the second coordinate components in each of the cluster structures in the central structure.

[0026] In an optional embodiment of the present application, the limiting force is distributed to each atom in the protein structure to be processed from large to small levels according to a preset multi-level parallel computing architecture to obtain the combined force of each atom, including:

[0027] Distributing the restraining force to the protein structure to be processed and to each of the calculation cluster structures according to the second atomic masses and ratios of all atoms in each of the calculation cluster structures;

[0028] Each of the computing cluster structures distributes the received cluster structure restriction force to each of the node units according to the first atomic masses and proportions of all atoms in each of the node units;

[0029] Each of the node units distributes the received unit limiting force to each atom to obtain the resultant force of each atom.

[0030] In an optional embodiment of the present application, the method further includes:

[0031] For each atom in each of the node units, the atom is updated based on each resultant force to obtain updated atomic coordinates;

[0032] Determine whether the updated atomic coordinates are in the current node unit, and if the updated atomic coordinates exceed the current node unit, determine the new node unit to which the atom belongs according to the updated atomic coordinates;

[0033] The atoms and the atomic data corresponding to the atoms are transferred to the new node unit.

[0034] In an optional embodiment of the present application, the updating of the corresponding atomic positions based on each of the combined forces, if the updated atomic positions exceed the set simulation space of the protein structure to be processed in the three-dimensional network structure, adjusting the atomic coordinates to a preset position in the set simulation space, comprises:

[0035] Determining whether the updated atomic coordinates exceed the set simulation space;

[0036] If the updated atomic coordinates exceed the set simulation space, the atomic coordinates are adjusted to the nearest node unit in the set simulation space according to the updated atomic coordinates and the boundary data of the set simulation space.

[0037] A second aspect of the embodiments of the present application provides a protein center position limiting device, comprising:

[0038] A mapping unit, used for mapping each atomic data in the protein structure to be processed to each node unit in a pre-configured three-dimensional network structure; wherein each node unit includes at least one storage unit and at least one calculation unit;

[0039] A first computing unit is used to sequentially calculate the global center of mass mass and global center of mass coordinates of the protein structure to be processed in the three-dimensional network structure according to a preset multi-level parallel computing architecture from small to large levels;

[0040] A second calculation unit is used to calculate the restriction force of the calculation unit of the center point of the protein structure to be processed in the three-dimensional network structure according to the global center of mass coordinates and the initial center of mass coordinates;

[0041] A resultant force determination unit, used to distribute the restriction force to each atom in the protein structure to be processed according to a preset multi-level parallel computing architecture from large to small levels, to obtain the resultant force of each atom;

[0042] A position limiting unit is used to update the corresponding atomic position based on each of the combined forces, and if the updated atomic position exceeds the set simulation space of the protein structure to be processed in the three-dimensional network structure, the atomic coordinates are adjusted to a preset position in the set simulation space.

[0043] According to a third aspect of an embodiment of the present application, a computer device is provided, comprising: a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of any of the above methods when executing the computer program.

[0044] A fourth aspect of an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program implements the steps of any of the above methods when executed by a processor.

[0045] On the first aspect, the embodiment of the present application pre-constructs the three-dimensional network structure and uses the three-dimensional network structure to restrict the protein center position. Each node unit is provided with a storage unit and a computing unit. Each atomic data and interaction data can be stored in the storage unit of the node unit. Each storage unit can directly call and interact with each other to realize an efficient data exchange mechanism based on neighbor communication. The direct communication between neighbor computing units reduces the delay and bandwidth requirements of data transmission and reduces communication overhead. Each node unit can calculate in parallel, so that the overall calculation is highly parallelized, which greatly improves the efficiency of protein center position restriction.

[0046] Secondly, the embodiment of the present application pre-constructs a three-dimensional network structure, which can perform spatial division and atomic grouping, as well as division of computing tasks in three-dimensional space according to actual needs, so that the overall calculation is highly parallelized, which greatly improves the efficiency of protein center position restriction while ensuring the calculation accuracy; at the same time, this design allows the algorithm to easily adapt to protein systems and hardware configurations of different sizes, thereby improving its scalability.

[0047] On the third aspect, the embodiment of the present application is set with a multi-level parallel computing architecture. According to the preset multi-level parallel computing architecture, the global center of mass mass and global center of mass coordinates of the protein structure to be processed are calculated from small to large levels. According to the preset multi-level parallel computing architecture, the restriction force is distributed to each atom in the protein structure to be processed from large to small levels to obtain the resultant force of each atom. The center of mass position and restriction force are processed by a hierarchical calculation method. Each calculation unit can be responsible for the atomic calculation in a specific spatial area, which further makes the overall calculation highly parallelized and greatly improves the efficiency of the protein center position restriction. At the same time, the center of mass position and restriction force are processed by a hierarchical calculation method. Each calculation unit can be responsible for the atomic calculation in a specific spatial area, which allows the calculation unit configuration to be flexibly adjusted according to the system size and available resources, which is more flexible.

[0048] Fourthly, the embodiment of the present application constructs a set simulation space for the protein structure to be processed in the three-dimensional network structure, and uses the boundary of the set simulation space as flag information to mark the actual space boundary of the atoms, thereby ensuring the integrity of the protein structure and limiting the protein structure to the corresponding position, thereby improving the reliability of the protein center position restriction; this special boundary crossing processing mechanism solves the contradiction between the limited simulation space and the unbounded actual space, and accurately tracks and represents the actual position of the atoms by adding atomic flag information, thereby ensuring the accuracy of the center of mass calculation and allowing the simulation of large-scale motion. BRIEF DESCRIPTION OF THE DRAWINGS

[0049] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:

[0050] Figure 1 A flowchart of a protein center position restriction method provided in one embodiment of the present application;

[0051] Figure 2 A schematic diagram of a three-dimensional network structure provided for an embodiment of the present application;

[0052] Figure 3 A flowchart of a protein center position restriction method provided in one embodiment of the present application;

[0053] Figure 4 A flowchart of a protein center position restriction method provided in one embodiment of the present application;

[0054] Figure 5 A flowchart of a protein center position restriction method provided in one embodiment of the present application;

[0055] Figure 6 A flowchart of a protein center position restriction method provided in one embodiment of the present application;

[0056] Figure 7 A flowchart of a protein center position restriction method provided in one embodiment of the present application;

[0057] Figure 8 A schematic diagram of the structure of a protein core position limiting device provided in one embodiment of the present application;

[0058] Fig. 9 A schematic diagram of the computer device structure provided for one embodiment of the present application. DETAILED DESCRIPTION

[0059] In the process of realizing the present application, the inventors found that there is an urgent need for a more efficient protein center position restriction method.

[0060] In response to the above problems, the embodiments of the present application provide a method, apparatus, computer device and storage medium for limiting the position of a protein center.

[0061] The solutions in the embodiments of the present application can be implemented using various computer languages, for example, the object-oriented programming language Java and the interpreted scripting language JavaScript.

[0062] In order to make the technical solutions and advantages in the embodiments of the present application more clearly understood, the exemplary embodiments of the present application are further described in detail below in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present application, rather than an exhaustive list of all the embodiments. It should be noted that the embodiments in the present application and the features in the embodiments can be combined with each other without conflict.

[0063] Protein center position restraint is an important technical means of molecular dynamics simulation. Its main purpose is to keep the overall position of the protein relatively stable during the simulation, while allowing the protein structure to maintain a certain degree of flexibility. The protein center position restraint method has important applications in many studies, such as:

[0064] 1) Protein-ligand interaction studies: By constraining the overall position of the protein, researchers can better observe and analyze the interaction between the ligand and the protein active site, which is crucial for drug design and screening.

[0065] 2) Membrane protein simulation: When simulating membrane proteins, restricting the overall position of the protein can prevent it from detaching from the membrane and more accurately simulate the behavior of the protein in a physiological environment.

[0066] 3) Protein folding research: By imposing positional restrictions on some folded regions, researchers can focus on observing the folding process of specific regions and gain a deeper understanding of the protein folding mechanism.

[0067] 4) Study of large protein complexes: When studying large protein complexes, imposing positional restraints on certain subunits can help study the interactions between specific subunits.

[0068] The protein center position restriction algorithm restricts the "center of mass" (an imaginary point on a material system where mass is considered to be concentrated) of the "target atom group" to move within a certain range near the initial position by applying a harmonic potential, but it is not completely fixed. By applying an additional spring potential to the overall center of mass of the restricted atoms, the entirety of the restricted atoms can move near the initial center of mass position, and the protein can rotate freely around the initial center of mass position.

[0069] Traditional single protein center position restriction algorithms are usually implemented on general computing architectures. Since the sending and receiving of various computing information must be completed serially, the parallel efficiency of traditional algorithms on 3D grid structure hardware systems is not high, and the data communication overhead between computing units is large. Especially when dealing with large protein systems, the speed is limited in the interaction of large amounts of data calculations, which may lead to low computing efficiency when dealing with large protein systems or long-term simulations.

[0070] Therefore, a more efficient method for restricting the protein center position is urgently needed.

[0071] Based on this, the present application embodiment provides a more efficient protein center position restriction method, see Figure 1 The protein center position restriction method comprises the following steps 101 to 105:

[0072] Step 101, mapping each atomic data in the protein structure to be processed to each node unit in a pre-configured three-dimensional network structure;

[0073] Each atom in the embodiment of the present application refers to an atom in the protein structure to be processed, which can be an atom in the biochemical sense or an artificially defined atomic unit, such as a unit structure including one or more atoms. The atomic data includes, but is not limited to: initial coordinates of atoms, atomic movement speed, atomic mass, etc. In molecular dynamics simulation, proteins are distributed in three-dimensional form in actual space, and each atom has its own spatial coordinates. The three-dimensional network structure refers to a hardware 3D network structure that can be used to map each node unit in the protein structure to be processed, each node unit includes at least one storage unit and at least one computing unit, and each node unit is directly interconnected to form a computing cluster structure by dividing the region, and multiple computing cluster structures are summarized into a central structure, through which the global variables of the protein structure to be processed are calculated.

[0074] For example Figure 2 This is an exemplary M*N*K three-dimensional network structure, with a total of M*N*K node units. Each node unit is represented by coordinates (x, y, z), where the range of x, y, z is determined by M, N, K. For example, the computing unit (0, 0, 0) is located in one corner, and the corresponding computing unit (M, N, K) is located in the diagonal corner.

[0075] Step 102, according to the preset multi-level parallel computing architecture from small to large levels, the global center of mass mass and global center of mass coordinates of the protein structure to be processed are calculated in sequence in the three-dimensional network structure;

[0076] This multi-level parallel computing architecture is used to characterize the hierarchical computing priority of each computing step during protein center position constraint calculation.

[0077] Step 103, calculating the restriction force of the center point calculation unit of the protein structure to be processed in the three-dimensional network structure according to the global center of mass coordinates and the initial center of mass coordinates;

[0078] The limiting force is used to characterize the ability of the protein structure to be processed to be limited to a preset space. The center point unit refers to the calculation unit in the node unit at the center position in the set simulation space of the protein structure to be processed in the three-dimensional network structure after each atom of the protein structure to be processed is mapped to the three-dimensional network structure; wherein the set simulation space refers to the mapping space of the protein structure to be processed in the three-dimensional network structure, and the set simulation space has the same shape, the same size or is proportional to the protein structure to be processed. The limiting force of the center point calculation unit (m, n, k) can be calculated by the following formula (1):

[0079] F = -k * (global_center - reference_position) (1)

[0080] In formula (1), F represents the limiting force of the center point calculation unit (m, n, k), k represents the elastic coefficient of the protein structure to be processed, and the elastic coefficients of different protein structures to be processed are different, which can be flexibly configured or adjusted based on experience, global_center represents the global center of mass coordinates, and reference_position represents the initial center of mass coordinates, that is, the reference coordinates of the protein structure to be processed.

[0081] Step 104, according to a preset multi-level parallel computing architecture, from large to small levels, the restraining force is distributed to each atom in the protein structure to be processed, and the resultant force of each atom is obtained;

[0082] Different from the above step 103, the restriction force in step 103 is the restriction force accumulated from small level to large level, while the resultant force of each atom is distributed layer by layer from large to small according to the mass ratio. The resultant force refers to the sum of all the restraint forces on each atom in the set space.

[0083] Step 105: updating the corresponding atomic positions based on the combined forces; if the updated atomic positions exceed the set simulation space of the protein structure to be processed in the three-dimensional network structure, adjusting the atomic coordinates to the preset positions in the set simulation space.

[0084] The preset position can be the nearest adjacent node unit or a set node unit. The embodiment of the present application does not make any specific limitation and can be flexibly adjusted according to actual conditions. It only needs to achieve the purpose of adjusting the atomic coordinates that exceed the set simulation space to the preset position within the set simulation space.

[0085] On the first aspect, the embodiment of the present application pre-constructs the three-dimensional network structure and uses the three-dimensional network structure to restrict the protein center position. Each node unit is provided with a storage unit and a computing unit. Each atomic data and interaction data can be stored in the storage unit of the node unit. Each storage unit can directly call and interact with each other to realize an efficient data exchange mechanism based on neighbor communication. The direct communication between neighbor computing units reduces the delay and bandwidth requirements of data transmission and reduces communication overhead. Each node unit can calculate in parallel, so that the overall calculation is highly parallelized, which greatly improves the efficiency of protein center position restriction.

[0086] Secondly, the embodiment of the present application pre-constructs a three-dimensional network structure, which can perform spatial division and atomic grouping, as well as division of computing tasks in three-dimensional space according to actual needs, so that the overall calculation is highly parallelized, which greatly improves the efficiency of protein center position restriction while ensuring the calculation accuracy; at the same time, this design allows the algorithm to easily adapt to protein systems and hardware configurations of different sizes, thereby improving its scalability.

[0087] On the third aspect, the embodiment of the present application is set with a multi-level parallel computing architecture. According to the preset multi-level parallel computing architecture, the global center of mass mass and global center of mass coordinates of the protein structure to be processed are calculated from small to large levels. According to the preset multi-level parallel computing architecture, the restriction force is distributed to each atom in the protein structure to be processed from large to small levels to obtain the resultant force of each atom. The center of mass position and restriction force are processed by a hierarchical calculation method. Each calculation unit can be responsible for the atomic calculation in a specific spatial area, which further makes the overall calculation highly parallelized and greatly improves the efficiency of the protein center position restriction. At the same time, the center of mass position and restriction force are processed by a hierarchical calculation method. Each calculation unit can be responsible for the atomic calculation in a specific spatial area, which allows the calculation unit configuration to be flexibly adjusted according to the system size and available resources, which is more flexible.

[0088] Fourthly, the embodiment of the present application constructs a set simulation space for the protein structure to be processed in the three-dimensional network structure, and uses the boundary of the set simulation space as flag information to mark the actual space boundary of the atoms, thereby ensuring the integrity of the protein structure and limiting the protein structure to the corresponding position, thereby improving the reliability of the protein center position restriction; this special boundary crossing processing mechanism solves the contradiction between the limited simulation space and the unbounded actual space, and accurately tracks and represents the actual position of the atoms by adding atomic flag information, thereby ensuring the accuracy of the center of mass calculation and allowing the simulation of large-scale motion.

[0089] See also Figure 3In an optional embodiment of the present application, the above step 101, mapping each atomic data in the protein structure to be processed to each node unit in the pre-configured three-dimensional network structure, includes the following steps 301-303:

[0090] Step 301, obtaining the structural data of the protein structure to be processed, and extracting the atomic coordinates and atomic mass of each atom in the structural data;

[0091] Then the protein data is read, for example, the protein structure file (such as PDB format) is read, and the coordinates (ax, ay, az) and atomic mass m of each atom are extracted.

[0092] Step 302: construct a set simulation space for the protein structure to be processed based on the structural data, and divide the set simulation space into a plurality of subspaces;

[0093] For example, the above three-dimensional network structure is M*N*K, and the simulation space (i.e., the box space) is set to be a space less than or equal to M*N*K, that is, a simulation space that can be accommodated in the three-dimensional network structure. The subspace can be divided according to 1*1*1, or it can be divided according to other specifications. The embodiment of the present application does not make specific limitations and can be flexibly selected according to actual conditions. It should be explained that each subspace includes one or more node units, and each node protein includes at least one computing unit and at least one storage unit, and the storage unit is used to store atomic data and atomic information of all atoms in the node unit.

[0094] Step 303: Map the atomic coordinates and the atomic mass corresponding to each subspace in the set simulation space to each node unit in the three-dimensional network structure.

[0095] That is, perform atom allocation: first define the spatial mapping function: define the function map_to_unit(ax,ay,az)->(x,y,z) to map the atomic coordinates to the corresponding node unit. Allocate each atom i: (x,y,z)=map_to_unit(ax_i,ay_i,az_i), add atom i to the atom list atom_list of the storage unit (x,y,z). At the same time, add an additional data structure (boundary_crossings, a vector containing three integers (cx,cy,cz)) for each atom i to record the number of times the atom crosses the boundary in the x,y,z direction respectively. The number of crossings refers to the number of crossings recorded in the actual simulation process, which can be positive or negative, and the data structure of each storage unit (x,y,z) is maintained. Among them, atom_list is the atom list representing all atoms that the node unit is responsible for, local_mass is the first mass sum of all atoms in the node unit, and local_center represents the first coordinate component in the local process, which has no specific physical meaning.

[0096] In an optional embodiment of the present application, the preset multi-level parallel computing architecture includes, from small to large, a single node unit, a computing cluster structure, and a central structure; wherein one computing cluster structure includes at least two node units, and one central structure includes at least two computing cluster structures. An example of the hierarchical division of the multi-level parallel computing architecture is as follows:

[0097] The first level is a single node unit: each computation unit (x, y, z) is responsible for processing the atoms in its atom list atom_list.

[0098] The second level is the calculation cluster structure: for example, 2x2x2 adjacent units are grouped into a calculation cluster, the calculation cluster coordinates are (cx, cy, cz), where cx, cy, cz range from 0 to 1, and the calculation cluster (cx, cy, cz) contains the node units: (2cx, 2cy, 2cz), (2cx+1, 2cy, 2cz), (2cx, 2cy+1, 2cz), (2cx+1, 2cy+1, 2cz), (2cx, 2cy, 2cz+1), (2cx, 2cy+1, 2cz+1), (2cx, 2cy+1, 2cz+1), (2cx+1, 2cy+1, 2cz+1).

[0099] The third level is the central structure: a certain node unit (m, n, k) is designated as the central node unit, and the computing unit in the central node unit is responsible for the global overall calculation as the central point computing unit.

[0100] Since variables need to collect components of all global atoms, if they are all sent to a certain unit for aggregation, the transmission pressure and performance will be greatly burdened. Based on this three-dimensional network structure design, the units are divided into spatial areas. First, the atomic components in the computing units in an area are collected to the designated unit, and then the collected components in each computing cluster in the entire system are aggregated to the designated central unit of the entire system to obtain the desired total atomic components in the system. This fully utilizes the high efficiency of transmission between adjacent units of the device and reduces the performance loss of global mobile information.

[0101] At the same time, the embodiment of the present application can fully utilize the multi-level parallel capabilities of modern hardware by setting up the multi-level parallel computing architecture, and realize fine-grained to coarse-grained parallel computing through the hierarchical structure of single node units, computing cluster structures, and central structures, which significantly improves the computing efficiency, especially for large-scale protein systems.

[0102] See also Figure 4 In an optional embodiment of the present application, the above step 102, the global center of mass mass and global center of mass coordinates of the protein structure to be processed are calculated in sequence in the three-dimensional network structure according to the preset multi-level parallel computing architecture from small to large levels, including the following steps 401-403:

[0103] Step 401: for each node unit, calculate the sum of the first atomic masses of all atoms in the node unit and the first coordinate component in the local process;

[0104] The sum of the first atomic masses of all atoms in the node unit and the first coordinate component in the local process can be calculated according to the following formulas (2)-(4):

[0105] local_mass=Σ(m_i)for iin atom_list(2)

[0106] local_center=Σ(m_i*actual_position)(3)

[0107] actual_position=periodic_position+(boundary_crossings*box_size)(4)

[0108] In formula (2) to formula (4), local_mass represents the sum of the first masses of all atoms in the node unit, m_i represents the mass of the i-th atom, Σ(m_i)for iin atom_list represents the sum of the atomic masses of all atoms in the atom list atom_list of the node unit where atom i is located, local_center represents the first coordinate component in the local process and has no specific physical meaning, actual_position represents the actual atomic coordinates of each atom, Σ(m_i*actual_position) represents the vector sum of the actual atomic coordinates of each atom i in the node unit, periodic_position represents the periodic position of the atom in the set simulation space, boundary_crossings represents the number of boundary crossings of the atom in the simulation period, and box_size represents the size of the set simulation space.

[0109] Step 402: for each of the computing cluster structures, calculate the second atomic mass of all atoms in each of the computing cluster structures and the second coordinate component in the cluster according to the first atomic mass of each of the node units in the computing cluster structure and the first coordinate component;

[0110] For example, in each computing cluster structure (cx, cy, cz), (2cx, 2cy, 2cz) is selected as the master unit in the cluster, and the other 7 units send local_mass and local_center to the cluster master unit. After receiving the data from each unit, the cluster master unit calculates: cluster_mass = Σ(local_mass) of all 8 units, cluster_center = Σ(local_center).

[0111] Step 403: for the central structure, calculate the global center of mass mass and the global center of mass coordinates of the protein structure to be processed according to the second atomic masses and the second coordinate components in each of the cluster structures in the central structure.

[0112] For example, the global center of mass mass and the global center of mass coordinates can be calculated according to the following formulas (5)-(6):

[0113] global_mass=Σ(cluster_mass)(5)

[0114] global_center=Σ(cluster_center) / global_mass(6)

[0115] In formula (5)-formula (6), global_mass represents the global center of mass mass, cluster_mass represents the sum of the second atomic masses of all atoms in each calculated cluster structure cluster, global_center represents the global center of mass coordinates, and cluster_center represents the second coordinate component in each calculated cluster structure cluster.

[0116] See also Figure 5 In an optional embodiment of the present application, the above step 104, the step of distributing the restriction force to each atom in the protein structure to be processed according to the preset multi-level parallel computing architecture from large to small levels to obtain the combined force of each atom, includes the following steps 501-503:

[0117] Step 501, distributing the restraining force to the protein structure to be processed and to each of the calculation cluster structures according to the second atomic masses and ratios of all atoms in each of the calculation cluster structures;

[0118] Step 502: Each of the computing cluster structures distributes the received cluster structure constraint force to each of the node units according to the first atomic masses and proportions of all atoms in each of the node units;

[0119] Step 503: Each of the node units distributes the received unit limiting force to each atom to obtain the resultant force of each atom.

[0120] For example, the limiting force F is first distributed to each computing cluster structure according to the following formula (7):

[0121] F_cluster=F*(cluster_mass / global_mass)(7)

[0122] In formula (7), F_cluster represents the restraining force obtained by calculating the cluster structure distribution, cluster_mass represents the sum of the second atomic masses of all atoms in each calculated cluster structure, and global_mass represents the total mass of all atoms in the global center of mass;

[0123] Then, for each calculation cluster structure, the constraint force obtained by calculating the cluster structure distribution is distributed to each node unit according to the following formula (8):

[0124] F_unit=F_cluster*(local_mass / cluster_mass)(8)

[0125] In formula (8), F_unit represents the restraining force obtained by distributing the node unit, F_cluster represents the restraining force obtained by distributing the calculated cluster structure, local_mass represents the sum of the first masses of all atoms in the node unit, and cluster_mass represents the sum of the second atomic masses of all atoms in each calculated cluster structure.

[0126] After each node unit (x, y, z) receives the allocated constraint force F_unit, the constraint force can be allocated to each atom i in the atom list atom_list according to the mass ratio of each atom in the following formula (9), and the resultant force F_i is added to the resultant force of atom i:

[0127] F_i=F_unit*(m_i / local_mass)(9)

[0128] In formula (9), F_i represents the resultant force distributed to atom i, F_unit represents the restraining force distributed to the node unit, m_i represents the mass of the i-th atom in the node unit, and local_mass represents the sum of the first masses of all atoms in the node unit.

[0129] See also Figure 6 In an optional embodiment of the present application, the above protein center position limiting method further includes the following steps 601 to 603:

[0130] Step 601: for each atom in each node unit, update the atom based on each resultant force to obtain updated atomic coordinates;

[0131] Step 602: determine whether the updated atomic coordinates are in the current node unit; if the updated atomic coordinates exceed the current node unit, determine the new node unit to which the atom belongs according to the updated atomic coordinates;

[0132] Step 603: Transfer the atoms and the atomic data corresponding to the atoms to the new node unit.

[0133] See also Figure 7 In an optional embodiment of the present application, the above step 105, updating the corresponding atomic positions based on each of the combined forces, if the updated atomic positions exceed the set simulation space of the protein structure to be processed in the three-dimensional network structure, then adjusting the atomic coordinates to a preset position in the set simulation space, includes the following steps 701-702:

[0134] Step 701, determining whether the updated atomic coordinates exceed the set simulation space;

[0135] Step 702: If the updated atomic coordinates exceed the set simulation space, the atomic coordinates are adjusted to the nearest node unit in the set simulation space according to the updated atomic coordinates and the boundary data of the set simulation space.

[0136] For each atom in the atom list atom_list of each node unit (x, y, z), its position is updated based on the resultant force, and it is checked whether the updated atom is still in the current subspace. If the atom is out of bounds, its new computing unit is determined and prepared for transfer. In the case of atomic transfer, adjacent computing units exchange information on out-of-bounds atoms and then update the atom list atom_list of each node unit. After each atomic position update, check whether the atom exceeds the boundary of the simulation box. If so, update the movement component in the corresponding direction of the set simulation space boundary_crossings, and then adjust the atomic coordinates back to the set simulation box (periodic boundary conditions).

[0137] A specified number of simulation steps can be performed as above to improve the reliability of the protein center position constraints.

[0138] When analyzing the interaction relationship of each atom mapped in a three-dimensional grid structure, the grid data of each atom is usually sent to a designated chip for subsequent calculations. However, as the volume of data gradually increases, the storage space required for grid information will also become larger and larger. If the grid information continues to be stored according to the above scheme, the grid information will occupy the storage space of other components, causing data trampling. Therefore, an optional embodiment of the present application also provides a method for processing grid information, which is used to process each grid data. The grid data refers to the data mapped from each atomic data in the protein structure to be processed to each node unit in the pre-configured three-dimensional network structure. After mapping each atomic data in the protein structure to be processed to each node unit in the pre-configured three-dimensional network structure, processing the grid information includes the following steps:

[0139] Obtaining coordinate information of reference grid points; wherein the coordinate information of the reference grid points includes: lx / (a*b*c*n), ly / (a*b*c*n), lz / (a*b*c*n); lx, ly, lz are respectively the sizes of the crystal in the first direction, the second direction and the third direction, and the first direction, the second direction and the third direction are perpendicular to each other; a, b, c are respectively constants; n is the cube root of the number of grid points in the crystal;

[0140] Determine the coordinate change of the target grid point in each direction; wherein the coordinate change is the coordinate difference of the target grid point relative to the reference grid point in the corresponding direction;

[0141] Based on the coordinate information of the reference grid points and the coordinate changes of the target grid points in various directions, the coordinate information of the target grid points is determined.

[0142] In an optional embodiment of the present application, the coordinate change amount of the target grid point in the first direction is: (ix-1)*lx / (a*b*n); wherein ix indicates that the current target grid point is the ixth grid point along the first direction;

[0143] The coordinate change of the target grid point in the second direction is: (iy-1)*ly / (a*b*n); wherein iy indicates that the current target grid point is the iyth grid point along the second direction;

[0144] The coordinate change of the target grid point in the third direction is: (iz-1)*lz / (a*b*n); wherein iz indicates that the current target grid point is the iz-th grid point along the third direction.

[0145] In an optional embodiment of the present application, determining the coordinate information of the target grid point based on the coordinate information of the reference grid point and the coordinate variation of the target grid point in each direction includes:

[0146] Screening the coordinate changes of the target grid points in various directions;

[0147] The coordinate change of the selected target grid point in the first direction is summed with the coordinate value of the reference grid point in the first direction to obtain the coordinate value of the target grid point in the first direction;

[0148] The coordinate change of the selected target grid point in the second direction is summed with the coordinate value of the reference grid point in the second direction to obtain the coordinate value of the target grid point in the second direction;

[0149] The coordinate change amount of the selected target grid point in the third direction is summed with the coordinate value of the reference grid point in the third direction to obtain the coordinate value of the target grid point in the third direction;

[0150] Coordinate information of the target grid point is determined based on the coordinate value of the target grid point in the first direction, the coordinate value of the target grid point in the second direction, and the coordinate value of the target grid point in the third direction.

[0151] In an optional embodiment of the present application, the coordinate information of the target grid point includes: lx / (a*b*c*n)+(ix-1)ix*lx / (a*b*n), (iy-1)*ly / (a*b*n), lz / (a*b*c*n)+(iz-1)*lz / (a*b*n);

[0152] Among them, ix indicates that the current target grid point is the ixth grid point along the first direction; iy indicates that the current target grid point is the iyth grid point along the second direction; iz indicates that the current target grid point is the izth grid point along the third direction.

[0153] In an optional embodiment of the present application, after determining the coordinate information of the target grid point, the method further includes:

[0154] A target word is selected from the coordinate information of the target grid point, and a processing result is generated based on the target word; wherein the coordinate value of each direction in the coordinate information includes at least two words.

[0155] In an optional embodiment of the present application, after determining the coordinate information of the target grid point, the method further includes:

[0156] The coordinate information of the target grid point is stored.

[0157] In an optional embodiment of the present application, it also includes:

[0158] The grid point information of at least two groups of the target grid points is processed in parallel.

[0159] It should be understood that, although the various steps in the flow chart are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear description in this article, the execution of these steps is not strictly limited in order, and these steps can be executed in other orders. Moreover, at least a portion of the steps in the figure may include multiple sub-steps or multiple stages, and these sub-steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these sub-steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a portion of the sub-steps or stages of other steps.

[0160] See also Figure 8 An embodiment of the present application provides a protein center position limiting device 800, comprising: a mapping unit 810, a first calculation unit 820, a second calculation unit 830, a combined force determination unit 840, and a position limiting unit 850, wherein:

[0161] A mapping unit 810 is used to map each atomic data in the protein structure to be processed to each node unit in a pre-configured three-dimensional network structure; wherein each node unit includes at least one storage unit and at least one computing unit;

[0162] A first calculation unit 820 is used to calculate the global center of mass mass and global center of mass coordinates of the protein structure to be processed in the three-dimensional network structure in order from small to large levels according to a preset multi-level parallel calculation architecture;

[0163] A second calculation unit 830 is used to calculate the restriction force of the calculation unit of the center point of the protein structure to be processed in the three-dimensional network structure according to the global center of mass coordinates and the initial center of mass coordinates;

[0164] A resultant force determination unit 840 is used to distribute the restriction force to each atom in the protein structure to be processed according to a preset multi-level parallel computing architecture from large to small levels to obtain the resultant force of each atom;

[0165] The position limiting unit 850 is used to update the corresponding atomic position based on each of the combined forces. If the updated atomic position exceeds the set simulation space of the protein structure to be processed in the three-dimensional network structure, the atomic coordinates are adjusted to the preset position in the set simulation space.

[0166] In an optional embodiment of the present application, the mapping unit 810 is specifically used to obtain the structural data of the protein structure to be processed, and extract the atomic coordinates and atomic mass of each atom in the structural data; construct a set simulation space of the protein structure to be processed based on the structural data, and divide the set simulation space into multiple subspaces; map the atomic coordinates and the atomic mass corresponding to each subspace in the set simulation space to each node unit in the three-dimensional network structure.

[0167] In an optional embodiment of the present application, the preset multi-level parallel computing architecture includes, from small to large, a single node unit, a computing cluster structure, and a central structure; wherein one computing cluster structure includes at least two node units, and one central structure includes at least two computing cluster structures.

[0168] In an optional embodiment of the present application, the first calculation unit 820 is specifically used to, for each of the node units, calculate the first atomic mass and the first coordinate component of all atoms in the node unit, and the local process; for each of the calculation cluster structures, calculate the second atomic mass and the second coordinate component of all atoms in each of the calculation cluster structures according to the first atomic mass and the first coordinate component of each of the node units in the calculation cluster structure; for the central structure, calculate the global center of mass mass and the global center of mass coordinates of the protein structure to be processed according to the second atomic mass and the second coordinate component of each of the cluster structures in the central structure.

[0169] In an optional embodiment of the present application, the resultant force determination unit 840 is specifically used to distribute the restriction force to the protein structure to be processed and to each of the calculation cluster structures according to the second atomic mass and ratio of all atoms in each of the calculation cluster structures; each of the calculation cluster structures distributes the received cluster structure restriction force to each of the node units according to the first atomic mass and ratio of all atoms in each of the node units; each of the node units distributes the received unit restriction force to each atom to obtain the resultant force of each atom.

[0170] In an optional embodiment of the present application, the position limiting unit 850 is also used to update the atoms in each of the node units based on the resultant forces to obtain updated atomic coordinates; determine whether the updated atomic coordinates are in the current node unit, and if the updated atomic coordinates exceed the current node unit, determine the new node unit to which the atom belongs based on the updated atomic coordinates; and transfer the atom and the atomic data corresponding to the atom to the new node unit.

[0171] In an optional embodiment of the present application, the position limitation unit 850 is specifically used to determine whether the updated atomic coordinates exceed the set simulation space; if the updated atomic coordinates exceed the set simulation space, the atomic coordinates are adjusted to the nearest node unit within the set simulation space according to the updated atomic coordinates and the boundary data of the set simulation space.

[0172] For the specific limitations of the above-mentioned protein center position limiting device 800, please refer to the limitations of the protein center position limiting method above, which will not be repeated here. The various modules in the above-mentioned protein center position limiting device 800 can be fully or partially implemented by software, hardware and their combination. The above-mentioned modules can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory of the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.

[0173] In one embodiment, a computer device is provided, the internal structure diagram of which can be as follows: Fig. 9As shown. The computer device includes a processor, a memory, a network interface and a database connected via a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store data. The network interface of the computer device is used to communicate with an external terminal via a network connection. When the computer program is executed by the processor, a protein core position restriction method as described above is implemented. It includes: a memory and a processor, the memory stores a computer program, and when the processor executes the computer program, any step in the protein core position restriction method as described above is implemented.

[0174] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, any step in the above protein center position restriction method can be implemented.

[0175] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.

[0176] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0177] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0178] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0179] Although the preferred embodiments of the present application have been described, those skilled in the art may make other changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications falling within the scope of the present application.

[0180] Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.

Claims

1. A method for limiting the position of a protein center, characterized in that: include: Mapping each atomic data in the protein structure to be processed to each node unit in a pre-configured three-dimensional network structure; wherein each node unit includes at least one storage unit and at least one computing unit; According to the preset multi-level parallel computing architecture, from small to large levels, the global center of mass mass and global center of mass coordinates of the protein structure to be processed are calculated in sequence in the three-dimensional network structure; Calculate the restriction force of the calculation unit of the center point of the protein structure to be processed in the three-dimensional network structure according to the global center of mass coordinates and the initial center of mass coordinates; According to a preset multi-level parallel computing architecture, from large to small levels, the restraining force is distributed to each atom in the protein structure to be processed to obtain the combined force of each atom; The corresponding atomic positions are updated based on each of the combined forces. If the updated atomic positions exceed the set simulation space of the protein structure to be processed in the three-dimensional network structure, the atomic coordinates are adjusted to the preset positions in the set simulation space.

2. The protein center position limiting method according to claim 1, characterized in that: The step of mapping each atomic data in the protein structure to be processed to each node unit in the pre-configured three-dimensional network structure includes: Acquiring structural data of the protein structure to be processed, and extracting the atomic coordinates and atomic mass of each atom in the structural data; Constructing a set simulation space of the protein structure to be processed based on the structural data, and dividing the set simulation space into a plurality of subspaces; The atomic coordinates and the atomic mass corresponding to each subspace in the set simulation space are mapped to each node unit in the three-dimensional network structure.

3. The protein center position limiting method according to claim 1, characterized in that: The preset multi-level parallel computing architecture includes, from small to large, a single node unit, a computing cluster structure, and a central structure; wherein one computing cluster structure includes at least two node units, and one central structure includes at least two computing cluster structures.

4. The protein center position limiting method according to claim 3, characterized in that: The method of sequentially calculating the global center of mass mass and the global center of mass coordinates of the protein structure to be processed in the three-dimensional network structure according to the preset multi-level parallel computing architecture from small to large levels includes: For each of the node units, calculating the sum of the first atomic masses of all atoms in the node unit and the first coordinate component in the local process; For each of the computing cluster structures, calculating the second atomic masses of all atoms in each of the computing cluster structures and the second coordinate component in the cluster according to the first atomic masses of each of the node units in the computing cluster structure and the first coordinate component; For the central structure, the global center of mass mass and the global center of mass coordinates of the protein structure to be processed are calculated according to the second atomic masses and the second coordinate components in each of the cluster structures in the central structure.

5. The protein center position limiting method according to claim 3, characterized in that: The method distributes the restraining force to each atom in the protein structure to be processed from large to small levels according to the preset multi-level parallel computing architecture to obtain the combined force of each atom, including: Distributing the restraining force to the protein structure to be processed and to each of the calculation cluster structures according to the second atomic masses and ratios of all atoms in each of the calculation cluster structures; Each of the computing cluster structures distributes the received cluster structure restriction force to each of the node units according to the first atomic masses and proportions of all atoms in each of the node units; Each of the node units distributes the received unit limiting force to each atom to obtain the resultant force of each atom.

6. The method for limiting the position of protein center according to claim 1, characterized in that: The method further comprises: For each atom in each of the node units, the atom is updated based on each resultant force to obtain updated atomic coordinates; Determine whether the updated atomic coordinates are in the current node unit, and if the updated atomic coordinates exceed the current node unit, determine the new node unit to which the atom belongs according to the updated atomic coordinates; The atoms and the atomic data corresponding to the atoms are transferred to the new node unit.

7. The method for limiting the position of the protein center according to claim 6, characterized in that: The updating of the corresponding atomic positions based on the combined forces, if the updated atomic positions exceed the set simulation space of the protein structure to be processed in the three-dimensional network structure, adjusting the atomic coordinates to a preset position in the set simulation space, comprises: Determining whether the updated atomic coordinates exceed the set simulation space; If the updated atomic coordinates exceed the set simulation space, the atomic coordinates are adjusted to the nearest node unit in the set simulation space according to the updated atomic coordinates and the boundary data of the set simulation space.

8. A protein core position limiting device, characterized in that: include: A mapping unit, used for mapping each atomic data in the protein structure to be processed to each node unit in a pre-configured three-dimensional network structure; wherein each node unit includes at least one storage unit and at least one calculation unit; A first computing unit is used to sequentially calculate the global center of mass mass and global center of mass coordinates of the protein structure to be processed in the three-dimensional network structure according to a preset multi-level parallel computing architecture from small to large levels; A second calculation unit is used to calculate the restriction force of the calculation unit of the center point of the protein structure to be processed in the three-dimensional network structure according to the global center of mass coordinates and the initial center of mass coordinates; A resultant force determination unit, used to distribute the restriction force to each atom in the protein structure to be processed according to a preset multi-level parallel computing architecture from large to small levels, to obtain the resultant force of each atom; A position limiting unit is used to update the corresponding atomic position based on each of the combined forces, and if the updated atomic position exceeds the set simulation space of the protein structure to be processed in the three-dimensional network structure, the atomic coordinates are adjusted to a preset position in the set simulation space.

9. A computer device comprising: The method comprises a memory and a processor, wherein the memory stores a computer program, and wherein the processor implements the steps of the method according to any one of claims 1 to 7 when executing the computer program.

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