A method, apparatus, medium, and product for calculating bonding in a molecule
By optimizing molecular dynamics bonding calculations through a three-dimensional interconnected computing architecture, the problems of low computational efficiency and poor stability in large-scale molecular system simulations are solved, achieving efficient parallel computing and precise atomic information management.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHANGHAI SMARTLOGIC TECHNOLOGY LTD
- Filing Date
- 2026-03-24
- Publication Date
- 2026-06-26
AI Technical Summary
Existing molecular dynamics bonding calculation schemes are computationally intensive and structurally complex in large-scale molecular system simulations, resulting in low computational efficiency, poor stability, and excessive data transfer between modules, making it impossible to complete calculations efficiently.
A three-dimensional interconnected computing architecture is adopted to distribute bonding tasks to multiple computing modules and construct a bonding atom set and a task index table. Through parallel computing and information interaction between modules, the storage and computing process of atomic information is optimized, and the amount of data transmission is reduced.
It improves the computational efficiency and stability of molecular dynamics simulations, reduces storage overhead, and enhances the parallelism and overall efficiency of bonding calculations.
Smart Images

Figure CN122290735A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the fields of molecular dynamics and molecular simulation technology, and in particular to a method, apparatus, medium and product for calculating bonding interactions in molecules. Background Technology
[0002] Molecular dynamics calculations typically require the coordinated solution of numerous interatomic bonding interactions within a molecular system. As the scale of molecular systems continues to expand, the number of bonding tasks increases significantly. Atoms continuously update their spatial positions over time during the simulation, making molecular dynamics bonding calculations characterized by a large workload, complex structures, and dynamic changes in atoms.
[0003] Existing molecular dynamics bonding calculation schemes typically rely on general computing architectures for execution. During task processing, each bonding task is directly traversed one by one. Atomic information and bonding tasks are mostly stored in a bound or distributed manner. During the calculation process, atomic coordinates, forces and other related data are frequently transferred between different computing units. Overall, task distribution and result aggregation are completed by a general scheduling method.
[0004] In large-scale molecular system simulation scenarios, existing computing methods lead to a sharp increase in the computational workload of bonding tasks, reducing computational efficiency under the constraint of limited storage space on computing devices. At the same time, the complex and intertwined bonding relationships between atoms and their dynamic changes in position can cause problems such as excessive data transfer between computing modules and repeated occupation of storage resources, making it impossible to complete efficient bonding calculations within limited storage space, and thus making it difficult to guarantee the running efficiency and stability of molecular dynamics simulations. Summary of the Invention
[0005] This invention provides a method, apparatus, medium, and product for calculating bonding interactions in molecules, in order to solve the problems of low efficiency in calculating bonding interactions in molecules, excessive data transmission between calculation modules, low efficiency and poor stability of molecular dynamics simulation.
[0006] According to one aspect of the present invention, a method for calculating bonding interactions in molecules is provided, executed by a three-dimensional interconnected computing architecture, the three-dimensional interconnected computing architecture including multiple computing modules arranged in three dimensions, the method comprising: Each bonding task in the bonding task list corresponding to the molecular system to be analyzed is assigned to a computing module of the three-dimensional interconnected computing architecture. Within each computing module, a bonding atom set and a bonding task index table matching the assigned bonding tasks are constructed synchronously. Multiple storage locations are reserved in the bonding atom set, each used to fill in the atomic information of each atom required by the computing module when executing all assigned bonding tasks. The bonding task index table defines the index position of the atomic information of each atom required in each bonding task within the bonding atom set. According to the initial spatial arrangement of atoms in the molecular system, the atomic information of each atom is initialized and stored in the spatially matched computing modules. Each computing module is triggered in parallel to perform a simulation operation on the bonding interactions of atoms within the molecular system: the atomic information of each atom defined in the bonding atom set is obtained from the local module or other computing modules and filled into the corresponding bonding atom sets. The system is located at the centrally matched storage location. Based on the index information in the bonding task index table, it extracts the matching atomic information from the bonding atom set, calculates the bonding force of each atom in each assigned bonding task, and accumulates the bonding forces generated by the same atom in different bonding tasks to obtain the resultant bonding force of each atom in the bonding atom set. Based on the calculated resultant bonding force, it interacts with other calculation modules to update the atomic information of each atom stored in each calculation module. After the parallel simulation ends, based on the bonding force situation recorded in the atomic information, it updates the spatial arrangement of each atom in the molecular system and then updates and stores the atomic information of each atom in the spatially matched calculation modules according to the new spatial arrangement. The system then returns to the parallel execution of each calculation module, performing the simulation operation on the bonding interaction of each atom in the molecular system until the simulation termination condition is met.
[0007] According to another aspect of the present invention, an apparatus for calculating bonding interactions in molecules is provided, configured in a three-dimensional interconnected computing architecture, the three-dimensional interconnected computing architecture including a plurality of computing modules arranged in three dimensions, the apparatus comprising: The task allocation module is used to allocate each bonding task in the bonding task list corresponding to the molecular system to be analyzed to each computing module of the three-dimensional interconnected computing architecture, and synchronously build a bonding atom set and bonding task index table matching the assigned bonding tasks within each computing module. The bonding atom set reserves multiple storage locations. Each storage location is used to fill the atomic information of each atom required by the computing module when executing all the assigned bonding tasks. The bonding task index table defines the index position of the atomic information of each atom required in each bonding task in the bonding atom set. The initial storage module is used to initialize and store the atomic information of each atom into the corresponding computation modules according to the initial spatial arrangement of the atoms in the molecular system. Each computational module is triggered in parallel to perform simulations of the bonding interactions between atoms within the molecular system: The information filling module is used to obtain the atomic information of each atom defined in the bonding atom set from the local module or other computing modules, and fill it into the corresponding storage location in the bonding atom set. The resultant force calculation module is used to extract matching atom information from the bonding atom set according to the index information in the bonding task index table, calculate the bonding component force of each atom in each assigned bonding task, and accumulate the bonding component forces generated by the same atom in different bonding tasks to obtain the resultant force of bonding force of each atom in the bonding atom set. The information update module is used to interact with other calculation modules based on the resultant bonding force of each atom in the calculated bonding atom set, and update the atomic information of each atom stored in each calculation module. The arrangement update module is used to update the spatial arrangement of each atom in the molecular system after the parallel simulation is completed, based on the bonding force of each atom recorded in the atomic information. Then, the atomic information of each atom is updated and stored in the corresponding calculation modules according to the new spatial arrangement. Return to the execution module, which is used to return to the execution of each calculation module in parallel, and perform simulation operations on the bonding interactions of each atom in the molecular system until the simulation termination condition is met.
[0008] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising: At least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores a computer program executable by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the method for calculating bonding interactions in molecules according to any embodiment of the present invention.
[0009] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the method for calculating bonding interactions in molecules as described in any embodiment of the present invention.
[0010] According to another aspect of the present invention, a computer program product is also provided, including a computer program that, when executed by a processor, implements the steps of the method as described in any embodiment of the present invention.
[0011] The technical solution of this invention employs a three-dimensional interconnected computing architecture to allocate bonding tasks. Within each computing module, a set of bonding atoms and a bonding task index table matching the allocated bonding tasks are constructed. This ensures that when executing all bonding tasks, identical atoms do not need to be stored repeatedly; the bonding task index table allows for locating the index position of atomic information within the bonding atom set, reducing the storage overhead of atomic information. By dynamically acquiring and filling atomic information from the local machine or other computing modules into the corresponding storage positions of the bonding atom set, and extracting atomic information based on the index table to calculate bonding components in parallel, the bonding components of identical atoms are accumulated to obtain the resultant bonding force, improving the parallelism and computational efficiency of bonding calculations. Furthermore, by interacting with modules to exchange the resultant bonding force and update atomic information, and then re-storing the atomic information according to the updated spatial arrangement, atomic position updates and module data migrations become more accurate and efficient. This reduces the amount of data transmitted between modules while maintaining the accuracy of molecular bonding simulation, thereby improving the stability and operational efficiency of the overall molecular dynamics simulation.
[0012] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description
[0013] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0014] Figure 1 This is a flowchart of a method for calculating bonding interactions in a molecule according to Embodiment 1 of the present invention; Figure 2 This is a flowchart of another method for calculating bonding interactions in a molecule according to Embodiment 2 of the present invention; Figure 3 This is a flowchart of another method for calculating bonding interactions in a molecule according to Embodiment 3 of the present invention; Figure 4 This is a schematic diagram of a three-dimensional interconnected computing architecture applicable to an embodiment of the present invention; Figure 5 This is a schematic representation of a bonding atom set and bonding task index applicable to embodiments of the present invention; Figure 6 This is a schematic diagram of the structure of a device for calculating bonding interactions in molecules according to Embodiment 4 of the present invention; Figure 7This is a schematic diagram of the structure of an electronic device for implementing the method of calculating bonding interactions in molecules according to embodiments of the present invention. Detailed Implementation
[0015] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.
[0016] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0017] Example 1 Figure 1 This is a flowchart of a method for calculating bonding interactions in molecules according to Embodiment 1 of the present invention. This embodiment is applicable to the calculation of bonding interactions in molecules. The method can be executed by a device for calculating bonding interactions in molecules. The device for calculating bonding interactions in molecules can be implemented in hardware and / or software and can generally be configured in a three-dimensional interconnected computing architecture, which includes multiple computing modules arranged in three dimensions.
[0018] In this embodiment of the invention, the three-dimensional interconnected computing architecture can be specifically understood as: a parallel computing system composed of multiple interconnected computing units, organized as a whole according to a spatial structure. The three-dimensional arrangement can be specifically understood as: computing modules arranged according to rules in the X, Y, and Z spatial directions. A computing module can be specifically understood as: the smallest processing unit in the architecture that independently undertakes computing, storage, and communication functions. Three-dimensional interconnection can be specifically understood as: modules can communicate and exchange data in all three directions, forming a three-dimensional interconnected structure.
[0019] Correspondingly, such as Figure 1 As shown, the method includes: S110. Assign each bonding task in the bonding task list corresponding to the molecular system to be analyzed to each computing module of the three-dimensional interconnected computing architecture, and synchronously construct a bonding atom set and a bonding task index table matching the assigned bonding tasks within each computing module.
[0020] The bonding atom set reserves multiple storage locations. Each storage location is used to fill the atomic information of each atom required by the computing module when executing all assigned bonding tasks. The bonding task index table defines the index position of the atomic information of each atom required in each bonding task in the bonding atom set.
[0021] In this embodiment of the invention, the bonding task allocation can be specifically understood as: the process of directionally allocating all bonding tasks to be calculated in the molecular system (such as two-atom bonds and three-atom angles) to a designated computing module of the three-dimensional interconnected computing architecture. The bonding atom set can be specifically understood as: a storage area constructed by the computing module for the allocated bonding tasks, reserving fixed storage locations for centrally storing the atomic information required to execute all bonding tasks, and storing the same atom only once.
[0022] The bonding task index table can be understood as a mapping table that records the index positions of the atoms involved in each bonding task within the bonding atom set, used for quickly locating atomic information. Atomic information can be understood as data used for bonding calculations, specifically including the atom's three-dimensional spatial coordinates, atomic charge, bonding resonance coefficient, or energy coefficient, etc.
[0023] Specifically, all bonding tasks in the molecular system are allocated to designated computing modules of the three-dimensional interconnected computing architecture according to preset rules (such as the principle of atom reuse). The principle of atom reuse can be understood as follows: when allocating bonding tasks to computing modules of the three-dimensional interconnected computing architecture, the principle of sharing the same atoms among as many bonding tasks as possible within the same computing module is followed, thereby reducing the redundant storage of atomic information within modules and reducing the frequency and amount of atomic information transmission between modules. For example, based on the spatial aggregation characteristics of atoms in a molecular system as a preset rule, multiple bonding tasks sharing a core atom can be preferentially assigned to the computing module where that core atom is initially located. For instance, all bonding tasks involving two-atom bonds, three-atom angles, and four-atom dihedral angles that include a central atom can be centrally assigned to the computing module corresponding to that central atom. This ensures that all bonding tasks within that module revolve around that central atom, maximizing the reuse of the same atom in multiple bonding tasks and avoiding repeated retrieval and storage of atomic information due to task dispersion. At the same time, tasks can also be assigned based on the type association characteristics of bonding tasks, assigning different types of bonding tasks involving highly overlapping atom sets to the same computing module, further improving the atom reuse rate and reducing storage and transmission overhead.
[0024] Simultaneously, within each computation module, a dedicated set of bonding atoms and a bonding task index table are built for each assigned bonding task. The bonding atom set reserves sufficient storage space to centrally store the atomic information required to execute all assigned tasks, with only one copy of each atom retained to save storage space. Regardless of which computation module a task-related atom migrates to due to movement, its three-dimensional coordinates, atomic charge, and bonding parameters are retrieved to that designated module. The bonding task index table stores the index of the atoms involved in each bonding task within the bonding atom set. Subsequent computations can directly extract the required atomic information from the bonding atom set using the index table.
[0025] S120. According to the initial spatial arrangement of each atom in the molecular system, initialize and store the atomic information of each atom in the corresponding calculation modules with matching spatial positions.
[0026] In this embodiment of the invention, the initial spatial arrangement can be specifically understood as: the initial positional distribution of each atom in the three-dimensional periodic space at the start of the simulation of the molecular system. Atom information initialization storage can be specifically understood as: the process of storing the three-dimensional coordinates, charges, and bonding parameters of the atoms in the initial simulation state to the corresponding computational modules for the first time. Spatial position matching can be specifically understood as: establishing a one-to-one mapping relationship between the initial three-dimensional spatial positions of the atoms and the three-dimensional arrangement positions of the computational modules in the three-dimensional interconnected computational architecture.
[0027] Specifically, based on the three-dimensional spatial coordinates of each atom at the start of the molecular system simulation, and combined with the mapping relationship between the computing modules in the three-dimensional interconnected computing architecture and the real three-dimensional space of the molecule, the atomic information such as the three-dimensional coordinates, atomic charge, and bonding parameters of each atom are stored in the computing module corresponding to its initial spatial position.
[0028] After the initial deployment of atomic information is completed, all computing modules in the architecture are started simultaneously, allowing each module to independently and synchronously carry out simulation calculations of atomic bonding interactions within the molecular system. This achieves parallel solution of bonding interactions and improves overall computational efficiency.
[0029] Each computation module is triggered in parallel to perform simulation operations S130-S170 on the bonding interactions of each atom in the molecular system.
[0030] S130. Obtain the atomic information of each atom defined in the bonding atom set from the local module or other computing modules, and fill it into the corresponding storage location in the bonding atom set.
[0031] In this embodiment of the invention, the native module can be specifically understood as: the computing module currently performing the bonding calculation operation, which is the target module for the bonding task allocation. Other computing modules can be specifically understood as: other computing units in the three-dimensional interconnected computing architecture, besides the native module, that store the atomic information required for the current calculation.
[0032] S140. According to the index information in the bonding task index table, extract the matching atom information from the bonding atom set, calculate the bonding component force of each atom in each assigned bonding task, and accumulate the bonding component forces generated by the same atom in different bonding tasks to obtain the resultant bonding force of each atom in the bonding atom set.
[0033] In this embodiment of the invention, the summation of bonding forces can be understood as: summing up the bonding forces generated by the same atom in different bonding tasks according to dimensions (such as X, Y, and Z axes) to obtain the total bonding force of the atom.
[0034] Specifically, during each round of molecular dynamics bonding force calculation, since the atoms involved in the bonding task may be stored in any computing module of the three-dimensional interconnected architecture due to spatial migration, each computing module first needs to retrieve the atomic information such as the three-dimensional coordinates, charge, and bonding parameters of the atoms required for the bonding atom set from its own module or other computing modules where the atoms are currently located. Alternatively, it can retrieve only the dynamic parameters such as coordinates and the static parameters such as charge required for this round of calculation and pre-fill them into the pre-matched storage locations in the bonding atom set.
[0035] Based on the index information recorded in the bonding task index table, the atomic information required for each bonding task is extracted from the bonding atom set. Based on this information, the bonding component force of each atom in each bonding task is calculated. Then, the bonding component forces generated by the same atom in different bonding tasks are accumulated to finally obtain the resultant bonding force of each atom in the bonding atom set, thus completing the calculation process of a single round of bonding force.
[0036] S150. Based on the calculated resultant bonding force of each atom in the bonding atom set, information is exchanged with other calculation modules to update the atomic information of each atom stored in each calculation module.
[0037] In this embodiment of the invention, the resultant force of bonding can be specifically understood as the sum of the forces experienced by the same atom in all bonding tasks within the current calculation module.
[0038] Specifically, after obtaining the resultant bonding force of each atom in the bonding atom set, each calculation module sends the resultant force to the storage module where the atom is actually located. The modules exchange force information through the interconnection structure, and the corresponding storage module accumulates and integrates the received resultant bonding forces and stores them in the atom information, thus completing a unified update of the atom information stored in each calculation module.
[0039] S160. After the parallel simulation is completed, based on the bonding forces of each atom recorded in the atomic information, the spatial arrangement of each atom in the molecular system is updated, and the atomic information of each atom is updated and stored in the spatially matched calculation modules according to the new spatial arrangement.
[0040] In this embodiment of the invention, the completion of parallel simulation execution can be understood as follows: the calculation of bonding forces, the accumulation of forces, and the interaction between modules in the current round of calculations have all been completed. The bonding force situation can be specifically understood as: the resultant bonding force obtained by the atom in this round of calculations.
[0041] S170, Return to the parallel trigger of each calculation module to perform simulation operations on the bonding interactions of each atom in the molecular system until the simulation termination condition is met.
[0042] In this embodiment of the invention, the conditions for ending the simulation can be specifically understood as: reaching a preset number of simulation steps, system energy convergence, or the end of the simulation time, etc.
[0043] Specifically, after each round of parallel simulation, the spatial coordinates and distribution state of each atom are updated based on the resultant bonding forces recorded in the atomic information. The atomic information is then migrated and stored in the computational module that matches the new spatial location. The simulation then returns to parallel operation, triggering all computational modules to execute the next round of bonding simulation, iterating continuously until the simulation termination condition is met.
[0044] Because only the resultant bonding force of each atom in the bonding atom set is transmitted, rather than the component forces of each bonding task, the amount of data transmitted between modules is only related to the number of atoms in the bonding atom set, which significantly reduces communication overhead while ensuring computational accuracy.
[0045] The technical solution of this invention employs a three-dimensional interconnected computing architecture to allocate bonding tasks. Within each computing module, a set of bonding atoms and a bonding task index table matching the allocated bonding tasks are constructed. This ensures that when executing all bonding tasks, identical atoms do not need to be stored repeatedly; the bonding task index table allows for locating the index position of atomic information within the bonding atom set, reducing the storage overhead of atomic information. By dynamically acquiring and filling atomic information from the local machine or other computing modules into the corresponding storage positions of the bonding atom set, and extracting atomic information based on the index table to calculate bonding components in parallel, the bonding components of identical atoms are accumulated to obtain the resultant bonding force, improving the parallelism and computational efficiency of bonding calculations. Furthermore, by interacting with modules to exchange the resultant bonding force and update atomic information, and then re-storing the atomic information according to the updated spatial arrangement, atomic position updates and module data migrations become more accurate and efficient. This reduces the amount of data transmitted between modules while maintaining the accuracy of molecular bonding simulation, thereby improving the stability and operational efficiency of the overall molecular dynamics simulation.
[0046] Example 2 Figure 2 This is a flowchart of another method for calculating bonding interactions in molecules provided in Embodiment 2 of the present invention. This embodiment is a refinement of the step described in the above embodiment, which involves "assigning each bonding task in the bonding task list corresponding to the molecular system to be analyzed to each computing module of the three-dimensional interconnected computing architecture." Figure 2 As shown, the method includes: S210. Obtain the bonding tasks of two-atom bonds, three-atom angles, four-atom dihedral angles of the first kind, and four-atom dihedral angles of the second kind in the molecular system to be analyzed, form a bonding task list, and sort the bonding tasks in the task list according to the rule of ascending order of the atom identifiers in the bonding tasks.
[0047] In this embodiment of the invention, the bonding task list can be specifically understood as: a set of tasks constructed with bonding tasks and atom identifiers as dimensions, covering all bonding types that need to be calculated in the molecular system.
[0048] A diatomic bond can be understood as a chemical bond formed directly between two adjacent atoms, requiring the calculation of the interaction force between these two atoms. A triatomic angle can be understood as an angled structure formed by three sequentially connected atoms, requiring the calculation of the forces acting on the atoms at that angle. A tetraatomic dihedral of the first kind can be understood as a dihedral structure formed by four sequentially connected atoms, used to describe the rotational effects of molecular chain segments. A tetraatomic dihedral of the second kind (improper) can be understood as a non-planar twisted structure formed by four atoms, used to maintain the spatial configuration of the molecule and prevent planar inversion.
[0049] S220: Calculate the total number of tasks in the bonding task list and the total number of computing modules in the 3D interconnected computing architecture, and use the rounding up method to calculate the number of bonding tasks that need to be allocated to each computing module.
[0050] S230. Based on the number of bonding tasks to be allocated to each computing module, assign bonding tasks to each computing module in the order of the bonding tasks in the bonding task list, and synchronously build a bonding atom set and a bonding task index table that match the assigned bonding tasks within each computing module.
[0051] The bonding atom set reserves multiple storage locations. Each storage location is used to fill the atomic information of each atom required by the computing module when executing all assigned bonding tasks. The bonding task index table defines the index position of the atomic information of each atom required in each bonding task in the bonding atom set.
[0052] Specifically, all bonding tasks in the molecular system can be obtained, including: two-atom bonds between two atoms, three-atom angle interactions between three atoms, and two types of dihedral angle interactions between four atoms, to construct a complete list of bonding tasks. For example, these bonding tasks can be arranged as rows, and the atomic identifiers of the corresponding atoms in each task can be arranged as columns.
[0053] All bonding tasks (rows) are sorted in ascending order of their atom identifier columns. The total number of bonding tasks (total number of rows) in the bonding task list is compared with the total number of computing modules in the 3D interconnected computing architecture. The number of bonding tasks to be allocated to each computing module is calculated by rounding up and dividing the total number of tasks by the total number of computing modules, ensuring balanced task allocation and no idle modules.
[0054] According to the sorted key task row order, tasks are assigned to each module in turn according to the number of key tasks to be assigned. After the key tasks of all computing modules except the last module are assigned, all the remaining unassigned key tasks in the key task list are assigned to the last computing module to ensure that all key tasks are accurately assigned to each computing module, thus completing the allocation of key tasks among computing modules and ensuring the orderliness and completeness of task allocation in each module.
[0055] Understandably, when the total number of tasks is less than the total number of computing modules, the rounding-up method is used. The number of keying tasks to be allocated to each computing module is calculated by dividing the total number of tasks by the total number of computing modules. At this time, because the total number of tasks is insufficient, the calculation result cannot be divided evenly and the result is 1 (after rounding up). Accordingly, according to the sorted keying task row order, one keying task is allocated to each of the first few computing modules with the total number of tasks. The remaining (total number of computing modules - total number of tasks) computing modules are not allocated keying tasks for the time being. After the keying tasks are updated or a new round of simulation is started, the allocation will be dynamically adjusted according to the task volume. This method follows the rounding-up calculation rule, avoids modules with no tasks to be allocated occupying computing resources, and ensures that all keying tasks can be effectively allocated and executed.
[0056] It should be noted that since the relative positions of molecules may span different computing modules, the atoms involved in the bonding task may be stored in different modules, and atoms may migrate to any module as they move. Therefore, in addition to allocating tasks sequentially according to the bonding task order (row order), this task allocation method can also optimize the allocation order by combining the initial storage module of atoms, reducing the frequency of subsequent cross-module retrieval of atomic information, while taking into account the regularity of task allocation and computational efficiency, ensuring that bonding tasks are efficiently allocated to each computing module.
[0057] In a specific example, before starting molecular dynamics calculations, all bonding tasks in the system containing two-atom bonds, three-atom angles, four-atom dihedral angles of the first kind, and four-atom dihedral angles of the second kind are compiled into a list. Each row corresponds to the atom ID (identifier) of a bonding task. The list of bonding tasks is then sorted according to the rule of ascending order of the atom IDs in the first column, then the second column, and so on up to the fourth column. Table 1 shows the sorted list of bonding tasks, which is listed with the bonding task type as the first row, recording two-atom bonds (Bond), three-atom angles (Angle), four ... The system identifies four types of bonding tasks: Dihedral (subclass 1), Improper (subclass 2), and so on. These tasks are sorted by atom IDs in ascending order from the first to the fourth column. Each row corresponds to the atom IDs involved in a bonding task. Specifically, Bond tasks contain 2 atom IDs, Angle tasks contain 3 atom IDs, and Dihedral and Improper tasks contain 4 atom IDs. This sorting method allows bonding tasks containing the same atoms to be grouped together, laying the foundation for allocating subsequent bonding tasks to the three-dimensional interconnected computing architecture and improving atom reuse.
[0058] Table 1 The sorted tasks are evenly distributed among the computing modules. The number of tasks per module is obtained by dividing the total number of tasks by the total number of modules and rounding up. That is, the i-th module is assigned keying tasks from row (i-1) × number of tasks per module + 1 to min(i × number of tasks per module, total number of task rows), thus achieving an even distribution of keying tasks. Here, min represents taking the minimum of the two numbers.
[0059] Optionally, based on the above embodiments, synchronously constructing a set of bonding atoms and a bonding task index table matching the assigned bonding tasks within each computing module may include: The system performs a statistical analysis and deduplication of all atoms involved in the bonding tasks assigned to the current computing module to obtain the atom set corresponding to the computing module. Each atom in the atom set is assigned a fixed storage address in the bonding atom set according to its ascending atomic identifier, and an atom index is assigned to each atom based on the fixed storage address. The system determines the number of storage bits required for the atom index based on the number of atoms allowed to be stored in the bonding atom set, and stores the atom index of each atom in this bit-number format. Based on the atom indexes corresponding to the atoms involved in each bonding task, a bonding task index table corresponding to each bonding task is constructed.
[0060] In this embodiment of the invention, the atom set can be specifically understood as: the complete set of non-repeating atoms required by the current computing module to perform all bonding tasks. The fixed storage address can be specifically understood as: the unchanging storage location allocated to each atom in the bonding atom set. The atom index can be specifically understood as: the atom's number in the bonding atom set, used for fast location. The number of storage bits can be specifically understood as: the number of binary bits required to represent the atom index, which can be determined by the maximum number of atoms.
[0061] Specifically, the atoms involved in all bonding tasks assigned to the current computing module are counted and deduplicated to obtain a unique set of atoms corresponding to that module.
[0062] Following the ascending order of atom identifiers, each atom in the atom set is assigned a fixed storage address within the bonding atom set, and an atom index is assigned to each atom based on this fixed storage address. The number of storage bits required for the index is determined based on the maximum number of atoms that the bonding atom set can store. For example, when the maximum number of atoms is 256, an 8-bit index (0-255) can be used, and the atom index of each atom is stored in this bit-count format, minimizing storage space usage while ensuring index uniqueness. Based on the atom indexes corresponding to the atoms involved in each bonding task, a bonding task index table is constructed corresponding to each bonding task. This ensures that the same atom in different bonding tasks only needs to be stored once, avoiding resource waste caused by duplicate storage and effectively reducing storage overhead.
[0063] In a specific example, the atoms in the bonding atom set are arranged in a fixed order, such as ascending order of atom identifiers, and a storage address for atom information is reserved for each atom. Taking the first ten rows of bonding tasks in Table 1 as an example of assigning bonding tasks to the same computing module, atoms 1 (index 1), 2 (index 2), 3 (index 3), 5 (index 4), 6 (index 5), 7 (index 6), 9 (index 7), 10 (index 8), 11 (index 9), 23 (index 10), 24 (index 11), and 25 (index 12) can be arranged in ascending order of atom ID at their corresponding storage locations in the bonding atom set, forming a fixed atom sequence. Then, a corresponding atom index is assigned to each atom. Since the bonding atom set contains a total of 12 atoms, and its index number ranges from 0 to 11, only 4 bits of binary data are needed to complete the index storage. After storing the index, for each bonding task, the corresponding atom index can be matched directly according to the fixed order and reserved address of each atom in the bonding atom set to construct a bonding task index table.
[0064] Table 2 is the bonding task index table, with the bonding task type as the first row. It records four types of bonding tasks in sequence: two-atom bond (Bond), three-atom angle (Angle), four-atom dihedral (Dihedral), and four-atom impproper (Improper). Each row corresponds to the index number of the atoms involved in a bonding task in the bonding atom set. The Bond task contains 2 atom indices, the Angle task contains 3 atom indices, and the Dihedral and Impproper tasks contain 4 atom indices. This table can be used to quickly locate the storage location of the atoms required for each bonding task in the bonding atom set, providing support for efficient retrieval of atomic information during subsequent bonding calculations.
[0065] Table 2 By statistically analyzing and deduplicating all atoms involved in the bonding tasks assigned to the current computing module, the required set of unique atoms can be accurately extracted, avoiding redundant storage of atomic information and thus reducing the storage overhead of the bonding atom set. Assigning fixed storage addresses to atoms in ascending order of their atomic identifiers and generating atomic indexes ensures that the position of an atom in the bonding atom set is unique and fixed. Subsequent atom information filling and retrieval only require address location, improving addressing efficiency. Determining the number of storage bits required for the atomic index based on the number of atoms allowed to be stored in the bonding atom set and storing the index in this format ensures index uniqueness. Minimize the storage space occupied by the index and optimize the utilization of storage resources; construct a bonding task index table based on the atom indexes corresponding to the atoms involved in each bonding task to achieve a fast mapping between each bonding task and the atom index. During subsequent bonding calculations, the required atom information can be directly extracted from the bonding atom set through the index table without traversing the entire atom set. Combining the above steps to synchronously construct the bonding atom set and the bonding task index table can keep the computational logic and data structure of each computation module synchronized and unified, ensuring the consistency and accuracy of atom information retrieval during parallel computation, thereby improving the overall efficiency and stability of molecular dynamics bonding calculations.
[0066] S240. According to the initial spatial arrangement of each atom in the molecular system, initialize and store the atomic information of each atom in the corresponding calculation modules with matching spatial positions.
[0067] Each computational module is triggered in parallel to perform simulation operations S250-S290 on the bonding interactions of each atom within the molecular system: S250. Obtain the atomic information of each atom defined in the bonding atom set from the local module or other computing modules, and fill it into the corresponding storage location in the bonding atom set.
[0068] Optionally, based on the above embodiments, obtaining the atomic information of each atom defined in the bonding atom set from the local module or other computing modules and filling it into the corresponding storage location in the bonding atom set may include: Obtain the atomic information of each atom defined in the bonding atom set from the local module or other computing modules; based on the fixed storage address corresponding to the ascending order of the preset atomic identifiers in the current computing module, write the atomic information of each atom obtained from the local module or other computing modules into the fixed storage address corresponding to the bonding atom set in sequence.
[0069] Specifically, before performing bonding calculations, the atomic information of each atom required for the bonding atom set is obtained from the local module or other calculation modules where the atom is currently located. Based on the fixed storage addresses that are pre-set in ascending order according to the atom identifiers in the current calculation module, the atomic information of each atom is sequentially written into the corresponding fixed storage address in the bonding atom set, so that the atomic information is accurately stored in its matching position, and a stable and unique correspondence is formed between the atomic information and the atom index.
[0070] By obtaining the atomic information required for the bonding atom set from the local machine or other computing modules, it can adapt to scenarios where atoms dynamically migrate in a three-dimensional interconnected architecture, ensuring the integrity and timeliness of the atomic data required for bonding calculation. Atom information is written sequentially to fixed storage addresses in ascending order according to preset atomic identifiers, ensuring that the atomic information always maintains a strict correspondence with the pre-allocated addresses. This avoids information misalignment or reading errors caused by address confusion. Simultaneously, the fixed address rules allow for efficient execution of the atomic information filling process without the need for dynamic calculation of storage locations, improving data writing speed. This ensures that the mapping relationship between atomic information and atomic indexes remains consistent in each round of calculation, providing a stable foundation for the rapid addressing and extraction of atomic information from the subsequent bonding task index table. This not only guarantees data consistency during parallel computing but also reduces the additional overhead of address resolution and verification, thus improving the overall efficiency and reliability of atomic information scheduling and storage during the bonding calculation stage.
[0071] S260. According to the index information in the bonding task index table, extract the matching atom information from the bonding atom set, calculate the bonding component force of each atom in each assigned bonding task, and accumulate the bonding component forces generated by the same atom in different bonding tasks to obtain the resultant bonding force of each atom in the bonding atom set.
[0072] Optionally, based on the above embodiments, calculating the bonding force of each atom in each assigned bonding task may include: Based on the atomic information corresponding to the two-atom bonding task, combined with the resonance coefficient, the relative distance between atoms, and the standard distance, the bonding potential energy of each atom in the two-atom bonding task and the bonding component force matching the bonding potential energy are calculated. Based on the atomic information corresponding to the three-atom angle bonding task, combined with the resonance coefficient, the actual angle between atoms, and the standard angle, the bonding potential energy of each atom in the three-atom angle bonding task and the bonding component force matching the bonding potential energy are calculated. Based on the atomic information corresponding to the four-atom type I dihedral angle bonding task, combined with the energy coefficient, the actual dihedral angle, and the standard angle... The bonding potential energy is calculated based on the degree of rotation and the number of extreme rotational energies. Combined with the plane normal vector calculated from the atomic information corresponding to the first type of dihedral bonding task of four atoms, the bonding component force of each atom in the first type of dihedral bonding task of four atoms is solved. Based on the atomic information corresponding to the second type of dihedral bonding task of four atoms, the bonding potential energy is calculated using the resonance coefficient, the actual dihedral angle, and the standard angle. Combined with the plane normal vector calculated from the atomic information corresponding to the second type of dihedral bonding task of four atoms, the bonding component force of each atom in the second type of dihedral bonding task of four atoms is solved.
[0073] In this embodiment of the invention, the bonding component force can be specifically understood as: the targeted interaction force experienced by atoms participating in a single type of bonding task in the molecular system, which is the basis for calculating the resultant bonding force. The resonance coefficient can be specifically understood as: a parameter characterizing the interatomic bonding stiffness in diatomic and triatomic angle bonding, determining the magnitude of the change in bonding potential energy and force with distance or angle. The plane normal vector can be specifically understood as: a vector perpendicular to the plane formed by the atoms, calculated from the coordinate differences of the relevant atoms in the bonding task, which is the geometric parameter for solving the bonding component force of a tetraatomic dihedral angle. The number of rotational energy extrema can be specifically understood as: the number of times the bonding potential energy reaches its maximum or minimum value during one rotation of a tetraatomic dihedral angle around the bond, which is a parameter for calculating the dihedral angle bonding potential energy.
[0074] Specifically, for the four types of bonding tasks assigned to the calculation module, matching computational logic is used to solve for the bonding force of each atom. Specifically, based on the atomic information of the two-atom bonding task, combined with the resonance coefficient, the relative distance between atoms, and the standard distance, the bonding potential energy and the bonding force of the corresponding atom are calculated for the task; based on the atomic information of the three-atom angle bonding task, combined with the resonance coefficient, the actual angle between atoms, and the standard angle, the bonding potential energy and the bonding force of the corresponding atom are calculated for the task; for the four-atom first and second type dihedral angle bonding tasks, the bonding potential energy is first calculated by combining the energy coefficient, the actual angle of the dihedral angle, the standard angle, and the number of rotational energy extrema, and then the bonding force of each atom in the two types of dihedral angle bonding tasks is solved by combining the plane normal vector calculated from the corresponding atomic information, thus realizing the calculation of the bonding force of the four types of bonding tasks.
[0075] In a specific example, for the task of forming a two-atom bond, based on the atomic information corresponding to the task, combined with the resonance coefficient Kb, the relative distance r between atoms, and the standard distance r0, which characterize the bonding stiffness between the two atoms, the method is as follows: Calculate the bonding potential energy U, and then... Calculate the bonding force F of the corresponding atom, where x is the coordinate difference between the two atoms in the three-dimensional direction. Therefore, the calculated bonding force is the component force in the three-dimensional direction.
[0076] For the triatomic angle bonding task, based on the atomic information corresponding to the task (three atoms a, b, and c connected in sequence), combined with the resonance coefficient Kb and the actual angle between the atoms, Standard angle First, through the formula Calculate the bonding potential energy U, and then calculate the bonding components of atoms a, b, and c based on this. , ,as well as .
[0077] in, , , ;in , Let be the relative distance between atoms a and b. Let be the relative distance between atoms c and b. Let be the coordinate difference between atoms b and a. Let be the coordinate difference between atoms b and c, and let be the bonding force component in three dimensions.
[0078] For a tetraatomic type I dihedral bonding task, based on the atomic information corresponding to the task (four sequentially connected atoms a, b, c, d), first combining the energy coefficient A, the actual dihedral angle Φabcd, the standard angle δ, and the rotational energy extremum m, the formula is used to... Calculate the bonding potential energy U.
[0079] Calculate the coordinate differences between atoms based on atomic information. , , , , , , , , And by using the coordinate difference, the normal vector Pb of the plane containing a, b, and c is calculated. , , ) and the normal vector Pc of the plane containing b, c, and d ( , , Calculate the negative derivative of the bonding potential energy with respect to the actual angle of the dihedral angle. Then calculate the intermediate force components of each atom: the intermediate force component of atom a: , , The intermediate component of atom c: , , The intermediate component of atom b: , , ; The intermediate component of atom d: , , The final bonding force is calculated as follows: , , , , , , , , , , , .in, , , These are the final bonding forces of atom a in the x, y, and z directions, respectively. Similarly, the final bonding forces of atom a, b, c, and d in the x, y, and z directions can be obtained.
[0080] For four-atom type II impproper bonding tasks, based on the atomic information corresponding to the task, we first combine the resonance coefficient K and the actual dihedral angle. and standard angle Calculate the bonding potential energy Then, the coordinate difference between atoms is calculated using atomic information, and the normal vector of the corresponding plane is solved based on the coordinate difference. Finally, the negative derivative of the bonding potential energy with respect to the actual angle of the dihedral is calculated. The subsequent solution logic and formula for bonding components are completely consistent with the first type of dihedral bonding task for four atoms, and finally the bonding components of each atom in this task are obtained.
[0081] Bonding potential energy and bonding force together constitute the complete calculation result of bonding interaction. Bonding potential energy reflects the total energy state of atoms in the current spatial arrangement of the molecular system. It is a key indicator for judging the stability and energy convergence of the molecular system, and also provides the basis for calculating the energy gradient for solving the equations of motion in subsequent molecular dynamics simulations. Bonding force is a direct force derived from the negative gradient of bonding potential energy with respect to atomic coordinates. It determines the motion tendency and acceleration of atoms under bonding interaction. The combination of the two not only describes the potential energy characteristics of bonding interaction from an energy level, but also clarifies the dynamic response law of atoms from a force level. Together, they completely describe the dual influence of bonding interaction on the energy and motion state of the molecular system, ensuring that the bonding calculation results can reflect the energy state of the system and support the accurate simulation of atomic motion trajectories.
[0082] By employing matched potential energy and force calculation logics for four types of bonding tasks—diatomic bonds, triatomic angles, and two types of tetraatomic dihedral angles—this approach adapts to the physical nature of different bonding interactions, ensuring that the calculated bonding potential energy and bonding force components conform to classical molecular dynamics force field theory, thus guaranteeing the physical accuracy of the calculations. Treating the bonding potential energy and bonding force components as complete outputs of bonding interactions allows for both characterizing the stability and energy state of the molecular system from an energy perspective, providing a core basis for simulation convergence judgment and thermodynamic analysis, and directly driving the solution of atomic motion equations from a force perspective, supporting the iteration of atomic trajectories in molecular dynamics simulations. For the tetraatomic dihedral angle task, the introduction of planar normal vectors in force calculations allows for the derivation of force direction and magnitude according to geometric constraints, avoiding the accuracy loss caused by model simplification. The reuse of intermediate calculation logic such as coordinate differences and planar normal vectors across the four bonding tasks further improves computational efficiency and code reusability, ensuring both the completeness and physical accuracy of the bonding interaction description while also considering the computational performance of molecular dynamics simulations.
[0083] S270. Based on the calculated resultant bonding force of each atom in the bonding atom set, information is exchanged with other calculation modules to update the atomic information of each atom stored in each calculation module.
[0084] Optionally, based on the above embodiments, according to the calculated resultant bonding force of each atom in the bonding atom set, information is exchanged with other calculation modules to update the atomic information of each atom stored in each calculation module. This may include: If the atomic information of the first atom in the bonding atom set is stored in another computing module, the resultant bonding force of the first atom is sent to that other computing module that stores the atomic information of the first atom. If the atomic information of the second atom in the bonding atom set is stored in the local module, the resultant bonding force sent by other computing modules for the second atom within a preset time period is added to the resultant bonding force of the second atom calculated by the local module, and the atomic information of the second atom stored in the local module is updated according to the addition result. After the local module receives the resultant bonding force of a third atom not included in the bonding atom set of the local module from other computing modules, the resultant bonding force of the third atom is directly added to the force storage address of the third atom in the local module, and the atomic information of the third atom stored in the local module is updated according to the addition result.
[0085] Specifically, based on the resultant bonding force of each atom in the bonding atom set, atomic information is updated through inter-module information exchange: The storage affiliation of each atom in the bonding atom set is determined. For atoms stored in other modules, only the resultant bonding force calculated locally is sent to their respective modules, avoiding redundant data transmission. For atoms stored locally, the locally calculated force is asynchronously accumulated with the forces of the same atom from other modules, ensuring that the total force on that atom throughout the entire system is completely recorded.
[0086] If the local module receives bonding force results from other computing modules for atoms not included in its current bonding atom set (i.e., bonding force results for atoms not included in the local module's current bonding atom set and not within the corresponding spatial location range of the local module during initial space allocation), then the local module directly adds the bonding force results to the corresponding force storage address allocated for that atom in the local module. The local module then updates the atom information stored in the local module based on the accumulated force results, ensuring that all bonding forces experienced by that atom in the entire molecular system are fully summarized without omitting any force contributions from other computing modules.
[0087] By distributing bonding forces according to atom storage affiliation, redundant data transmission to non-storage modules can be avoided, reducing communication overhead between modules. For atoms stored locally, asynchronous force accumulation across multiple modules can comprehensively summarize all bonding forces acting on that atom throughout the entire system, ensuring the accuracy and completeness of atom force information. For atoms in non-local bonding atom sets, forces are directly accumulated, enabling dynamic completion of force information in a distributed environment and avoiding the omission of any bonding force contribution. Overall, this interactive update method, while ensuring the accuracy of force calculations in molecular dynamics simulations, optimizes the communication efficiency and data consistency of distributed computing, improving the stability and scalability of large-scale molecular system simulations.
[0088] S280. After the parallel simulation is completed, based on the bonding forces of each atom recorded in the atomic information, the spatial arrangement of each atom in the molecular system is updated, and the atomic information of each atom is updated and stored in the corresponding computational modules according to the new spatial arrangement.
[0089] S290, Return to the parallel trigger of each calculation module to perform simulation operations on the bonding interactions of each atom in the molecular system until the simulation termination condition is met.
[0090] The technical solution of this invention, by uniformly incorporating two-atom bonds, three-atom angles, four-atom first-type dihedral angles, and four-atom second-type dihedral angles in the molecular system into a bonding task list and sorting them in ascending order by atom identifier, enables the bonding tasks to be arranged in a regular and orderly manner. Furthermore, by combining the total number of bonding tasks with the total number of computing modules, and using an up-rounding method to determine the task allocation quantity for each computing module, and then sequentially allocating bonding tasks, a uniform distribution of bonding tasks in the three-dimensional interconnected computing architecture can be achieved. This ensures a balanced computational load for each computing module, avoiding computational bottlenecks caused by uneven task distribution. Simultaneously, the orderly task allocation method facilitates the subsequent construction of bonding atom sets and the unified scheduling of atomic information, improving the overall parallel execution efficiency and stability of bonding computation. Within each computational module, a set of bonding atoms and a bonding task index table matching the assigned bonding tasks are constructed. This ensures that when executing all bonding tasks, identical atoms do not need to be stored repeatedly. The bonding task index table can be used to locate the index position of atomic information in the bonding atom set, reducing the storage overhead of atomic information. By dynamically acquiring and filling atomic information from the local machine or other computational modules into the corresponding storage positions of the bonding atom set, and extracting atomic information based on the index table to calculate bonding components in parallel, the bonding components of identical atoms are accumulated to obtain the resultant bonding force, which improves the parallelism and computational efficiency of bonding calculations. By exchanging the resultant bonding force between modules and updating atomic information, and then re-storing atomic information according to the updated spatial arrangement, the atomic position updates and module data migrations become more accurate and efficient. While ensuring the accuracy of molecular bonding simulation, this reduces the amount of data transmission between modules, improving the stability and operational efficiency of the overall molecular dynamics simulation.
[0091] Example 3 Figure 3 This is a flowchart illustrating another method for calculating bonding interactions in molecules, provided in Embodiment 3 of the present invention. This embodiment is a refinement of the method for calculating bonding interactions in molecules described in the above embodiments. Figure 3 As shown, the method includes: S310. The three-dimensional periodic space of molecular dynamics calculation is uniformly divided into multiple spatial regions along the three-dimensional direction. The relative positions of each calculation module are corresponding to the relative positions of the multiple spatial regions of the three-dimensional periodic space, thus constructing a three-dimensional interconnected calculation architecture in which the relative positions of each calculation module are mapped to the real three-dimensional space of the molecule.
[0092] Specifically, since molecular dynamics calculations need to be carried out within a finite space box with periodic boundaries, this space box is divided into several spatial blocks along three dimensions. The atomic information in each spatial block is stored in the corresponding calculation module, so that the calculation modules maintain a three-dimensional interconnection relationship and their relative layout is completely matched with the real three-dimensional spatial position of the molecular system. This ensures that subsequent atomic force calculations, atomic information interaction and spatial position retrieval can be performed in accordance with the real physical space.
[0093] S320. Assign each bonding task in the bonding task list corresponding to the molecular system to be analyzed to each computing module of the three-dimensional interconnected computing architecture, and synchronously construct a bonding atom set and a bonding task index table matching the assigned bonding tasks within each computing module.
[0094] The bonding atom set reserves multiple storage locations. Each storage location is used to fill the atomic information of each atom required by the computing module when executing all assigned bonding tasks. The bonding task index table defines the index position of the atomic information of each atom required in each bonding task in the bonding atom set.
[0095] S330. According to the initial spatial arrangement of each atom in the molecular system, initialize and store the atomic information of each atom in the corresponding calculation modules with matching spatial positions.
[0096] Each computation module is triggered in parallel to perform simulation operations S340-S380 on the bonding interactions of each atom within the molecular system: S340. Obtain the atomic information of each atom defined in the bonding atom set from the local module or other computing modules, and fill it into the corresponding storage location in the bonding atom set.
[0097] S350. According to the index information in the bonding task index table, extract the matching atom information from the bonding atom set, calculate the bonding component force of each atom in each assigned bonding task, and accumulate the bonding component forces generated by the same atom in different bonding tasks to obtain the resultant bonding force of each atom in the bonding atom set.
[0098] S360. Based on the calculated resultant bonding force of each atom in the bonding atom set, information is exchanged with other calculation modules to update the atomic information of each atom stored in each calculation module.
[0099] S370. After the parallel simulation is completed, based on the bonding forces of each atom recorded in the atomic information, the spatial arrangement of each atom in the molecular system is updated, and the atomic information of each atom is updated and stored in the corresponding computational modules according to the new spatial arrangement.
[0100] S380, Return to the parallel trigger of each calculation module to perform simulation operations on the bonding interactions of each atom in the molecular system until the simulation termination condition is met.
[0101] Figure 4 This is a schematic diagram of a three-dimensional interconnected computing architecture applicable to an embodiment of the present invention, such as... Figure 4 As shown, a three-dimensional periodic space box for molecular dynamics calculations is presented in the form of a three-dimensional cube. The box is uniformly divided into multiple regular small spatial blocks along the three dimensions of x, y, and z. Each small spatial block corresponds to an independent calculation module. The relative positions between the calculation modules are completely mapped to the positions of the spatial blocks in the real three-dimensional space, forming a three-dimensional interconnected topology consistent with the real spatial layout of the molecular system. This intuitively presents a distributed computing architecture that uniformly partitions a finite periodic space and makes the positions of the calculation modules correspond one-to-one with the spatial regions.
[0102] Figure 5 This is a schematic representation of a bonding atom set and bonding task index applicable to embodiments of the present invention, such as... Figure 5 As shown in the figure, the left side represents the bonding atom set area, displaying a list of non-repeating atoms from atom 1 to atom N; the right side represents the bonding task index table area, divided into four categories according to task type: Bond, Angle, Dihedral, and Improper. Each task category records the atom indices involved in the corresponding bonding task as task entries. Bond task entries contain 2 atom indices, Angle task entries contain 3 atom indices, and Dihedral and Improper task entries contain 4 atom indices. This visually presents the correspondence between the bonding atom set and the bonding task index table, demonstrating the index mapping logic between each bonding task and the atoms in the bonding atom set.
[0103] The technical solution of this invention constructs a three-dimensional interconnected computing architecture that maps to the real three-dimensional space of the molecule by uniformly dividing the three-dimensional periodic space of molecular dynamics calculations into multiple spatial regions along the three-dimensional direction and making the relative positions of each computing module in the three-dimensional interconnected computing architecture correspond one-to-one with the relative positions of these spatial regions. This allows the layout of the computing modules to accurately correspond to the real spatial distribution of molecular atoms, thereby enabling subsequent bonding task allocation to be performed in accordance with the spatial positions of atoms, reducing the data transmission distance and amount caused by the scheduling of atoms across spatial regions between different computing modules. This architecture design that maps to the real space allows each computing module to quickly locate and retrieve atomic information in its corresponding spatial region, avoiding confusion and redundancy in the atomic information scheduling process, reducing data transmission overhead, improving atomic information retrieval efficiency, laying a stable foundation for the parallel computing of subsequent bonding tasks, and further ensuring the efficiency and accuracy of the overall bonding interaction calculation. A three-dimensional interconnected computing architecture is adopted to allocate bonding tasks. Within each computing module, a set of bonding atoms and a bonding task index table matching the assigned bonding tasks are constructed. This ensures that when executing all bonding tasks, identical atoms do not need to be stored repeatedly; the bonding task index table can be used to locate the index position of atomic information within the bonding atom set, reducing the storage overhead of atomic information. By dynamically acquiring and filling atomic information from the local machine or other computing modules into the corresponding storage positions of the bonding atom set, and extracting atomic information based on the index table to calculate bonding components in parallel, the bonding components of identical atoms are accumulated to obtain the resultant bonding force, which improves the parallelism and computational efficiency of bonding calculations. Inter-module interaction of the resultant bonding force and updating atomic information, followed by re-storing atomic information according to the updated spatial arrangement, makes atomic position updates and module data migration more accurate and efficient. While ensuring the accuracy of molecular bonding simulation, this reduces the amount of data transmission between modules, improving the stability and operational efficiency of the overall molecular dynamics simulation.
[0104] Example 4 Figure 6 This is a schematic diagram of a device for calculating bonding interactions in molecules, provided in Embodiment 4 of the present invention. Figure 6 As shown, the device includes: a task allocation module 610, an initial storage module 620, an information filling module 630, a combined force calculation module 640, an information update module 650, a layout update module 660, and a return execution module 670, wherein: The task allocation module 610 is used to allocate each bonding task in the bonding task list corresponding to the molecular system to be analyzed to each computing module of the three-dimensional interconnected computing architecture, and synchronously build a bonding atom set and a bonding task index table matching the assigned bonding tasks within each computing module. The bonding atom set reserves multiple storage locations. Each storage location is used to fill the atomic information of each atom required by the computing module when executing all the assigned bonding tasks. The bonding task index table defines the index position of the atomic information of each atom required in each bonding task in the bonding atom set. The initial storage module 620 is used to initialize and store the atomic information of each atom into the corresponding calculation modules according to the initial spatial arrangement of each atom in the molecular system. Each computational module is triggered in parallel to perform simulations of the bonding interactions between atoms within the molecular system: The information filling module 630 is used to obtain the atomic information of each atom defined in the bonding atom set from the local module or other computing modules, and fill it into the corresponding storage location in the bonding atom set. The resultant force calculation module 640 is used to extract matching atom information from the bonding atom set according to the index information in the bonding task index table, calculate the bonding component force of each atom in each assigned bonding task, and accumulate the bonding component forces generated by the same atom in different bonding tasks to obtain the resultant force of bonding force of each atom in the bonding atom set. The information update module 650 is used to interact with other calculation modules based on the resultant bonding force of each atom in the calculated bonding atom set, and update the atomic information of each atom stored in each calculation module. The arrangement update module 660 is used to update the spatial arrangement of each atom in the molecular system according to the bonding force of each atom recorded in the atomic information after the parallel simulation is completed, and then update and store the atomic information of each atom to the spatially matched calculation modules according to the new spatial arrangement. Return to execution module 670, which is used to return to the execution parallel trigger of each calculation module to perform simulation operations on the bonding interactions of each atom in the molecular system until the simulation termination conditions are met.
[0105] The technical solution of this invention employs a three-dimensional interconnected computing architecture to allocate bonding tasks. Within each computing module, a set of bonding atoms and a bonding task index table matching the allocated bonding tasks are constructed. This ensures that when executing all bonding tasks, identical atoms do not need to be stored repeatedly; the bonding task index table allows for locating the index position of atomic information within the bonding atom set, reducing the storage overhead of atomic information. By dynamically acquiring and filling atomic information from the local machine or other computing modules into the corresponding storage positions of the bonding atom set, and extracting atomic information based on the index table to calculate bonding components in parallel, the bonding components of identical atoms are accumulated to obtain the resultant bonding force, improving the parallelism and computational efficiency of bonding calculations. Furthermore, by interacting with modules to exchange the resultant bonding force and update atomic information, and then re-storing the atomic information according to the updated spatial arrangement, atomic position updates and module data migrations become more accurate and efficient. This reduces the amount of data transmitted between modules while maintaining the accuracy of molecular bonding simulation, thereby improving the stability and operational efficiency of the overall molecular dynamics simulation.
[0106] Based on the above embodiments, the task allocation module 610 is specifically used for: obtaining bonding tasks of two-atom bonds, three-atom angles, four-atom first-type dihedral angles, and four-atom second-type dihedral angles in the molecular system to be analyzed to form a bonding task list, and sorting the bonding tasks in the task list according to the ascending order of the atom identifiers in the bonding tasks; counting the total number of tasks in the bonding task list and the total number of computing modules in the three-dimensional interconnected computing architecture, and calculating the number of bonding tasks to be allocated to each computing module by rounding up; and allocating bonding tasks to each computing module in the order of the bonding tasks in the bonding task list according to the number of bonding tasks to be allocated to each computing module.
[0107] Based on the above embodiments, the task allocation module 610 is further configured to: count and deduplicate all atoms involved in the bonding tasks allocated by the current computing module to obtain the atom set corresponding to the computing module; allocate a fixed storage address to each atom in the bonding atom set according to the ascending order of the atom identifiers, and allocate an atom index to each atom based on the fixed storage address; determine the number of storage bits required for the atom index according to the number of atoms allowed to be stored in the bonding atom set, and store the atom index of each atom in the format of the number of storage bits; and construct a bonding task index table corresponding to each bonding task based on the atom index corresponding to the atoms involved in each bonding task.
[0108] Based on the above embodiments, the information filling module 630 is specifically used to: obtain the atomic information of each atom defined in the bonding atom set from the local module or other computing modules; and write the atomic information of each atom obtained from the local module or other computing modules into the fixed storage address corresponding to the bonding atom set in sequence according to the fixed storage address corresponding to the preset ascending order of the atom identifiers in the current computing module.
[0109] Based on the above embodiments, the combined force calculation module 640 is specifically used for: calculating the bonding potential energy of each atom in the two-atom bond bonding task and the bonding component force matching the bonding potential energy, based on the atomic information corresponding to the two-atom bond bonding task, combined with the resonance coefficient, the relative distance between atoms, and the standard distance; calculating the bonding potential energy of each atom in the three-atom angle bonding task and the bonding component force matching the bonding potential energy, based on the atomic information corresponding to the three-atom angle bonding task, combined with the resonance coefficient, the actual angle between atoms, and the standard angle; and calculating the bonding potential energy of each atom in the three-atom angle bonding task and the bonding component force matching the bonding potential energy, based on the atomic information corresponding to the four-atom first-type dihedral angle bonding task, combined with the energy system... The bonding potential energy is calculated using the number of dihedral angles, the actual angle of the dihedral angle, the standard angle, and the number of extreme rotational energies. Combined with the plane normal vector calculated based on the atomic information corresponding to the first type of dihedral bonding task for four atoms, the bonding component force of each atom in the first type of dihedral bonding task for four atoms is solved. Similarly, the bonding potential energy is calculated using the atomic information corresponding to the second type of dihedral bonding task for four atoms, combined with the resonance coefficient, the actual angle of the dihedral angle, and the standard angle. Again, the bonding component force of each atom in the second type of dihedral bonding task for four atoms is solved using the plane normal vector calculated based on the atomic information corresponding to the second type of dihedral bonding task for four atoms.
[0110] Based on the above embodiments, the information update module 650 is specifically used for: if the atomic information of the first atom in the bonding atom set is stored in other computing modules, then the bonding force resultant of the first atom is sent to the other computing modules that store the atomic information of the first atom; if the atomic information of the second atom in the bonding atom set is stored in the local module, then the bonding force resultant of the second atom sent by other computing modules for the second atom within a preset time period is accumulated with the bonding force resultant of the second atom calculated by the local module, and the atomic information of the second atom stored in the local module is updated according to the accumulation result; after the local module receives the bonding force resultant of the third atom not included in the bonding atom set of the local module sent by other computing modules, the bonding force resultant of the third atom is directly accumulated to the force storage address of the third atom in the local module, and the atomic information of the third atom stored in the local module is updated according to the accumulation result.
[0111] Furthermore, based on the above embodiments, the apparatus for calculating bonding interactions in molecules may further include: an architecture building module, wherein: the architecture building module is used to uniformly divide the three-dimensional periodic space of molecular dynamics calculations into multiple spatial regions along the three-dimensional direction before assigning each bonding task in the bonding task list corresponding to the molecular system to be analyzed to each computing module of the three-dimensional interconnected computing architecture, and to correspond the relative positions of each computing module to the relative positions of the multiple spatial regions of the three-dimensional periodic space, thereby constructing a three-dimensional interconnected computing architecture in which the relative positions between each computing module are mapped to the real three-dimensional space of the molecule.
[0112] The apparatus for calculating bonding interactions in molecules provided in the embodiments of the present invention can execute the method for calculating bonding interactions in molecules provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects for executing the method.
[0113] The collection, storage, use, processing, transmission, provision, and disclosure of user personal information involved in the technical solution disclosed herein comply with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0114] In the technical solution disclosed herein, the information collected is information and data authorized by the user or fully authorized by all parties, and the collection, storage, use, processing, transmission, provision, disclosure and application of the relevant data all comply with the relevant laws, regulations and standards of the relevant countries and regions, necessary confidentiality measures have been taken, and they do not violate public order and good morals. Corresponding operation entry points are provided for users to choose to authorize or refuse.
[0115] In the technical solution disclosed herein, if automated decision-making is involved, a corresponding operation entry will be provided to the user, allowing the user to choose to agree to or reject the automated decision result; if the user chooses to reject, the process will proceed to the expert decision-making process.
[0116] Example 5 Figure 7 A schematic diagram of an electronic device 10, which can be used to implement embodiments of the present invention, is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.
[0117] like Figure 7As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 can also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0118] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0119] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as methods for calculating bonding interactions in molecules, i.e.: Each bonding task in the bonding task list corresponding to the molecular system to be analyzed is assigned to a computing module of the three-dimensional interconnected computing architecture. Within each computing module, a bonding atom set and a bonding task index table matching the assigned bonding tasks are constructed synchronously. Multiple storage locations are reserved in the bonding atom set, each used to fill in the atomic information of each atom required by the computing module when executing all assigned bonding tasks. The bonding task index table defines the index position of the atomic information of each atom required in each bonding task within the bonding atom set. According to the initial spatial arrangement of atoms in the molecular system, the atomic information of each atom is initialized and stored in the spatially matched computing modules. Each computing module is triggered in parallel to perform a simulation operation on the bonding interactions of atoms within the molecular system: the atomic information of each atom defined in the bonding atom set is obtained from the local module or other computing modules and filled into the corresponding bonding atom sets. The system is located at the centrally matched storage location. Based on the index information in the bonding task index table, it extracts the matching atomic information from the bonding atom set, calculates the bonding force of each atom in each assigned bonding task, and accumulates the bonding forces generated by the same atom in different bonding tasks to obtain the resultant bonding force of each atom in the bonding atom set. Based on the calculated resultant bonding force, it interacts with other calculation modules to update the atomic information of each atom stored in each calculation module. After the parallel simulation ends, based on the bonding force situation recorded in the atomic information, it updates the spatial arrangement of each atom in the molecular system and then updates and stores the atomic information of each atom in the spatially matched calculation modules according to the new spatial arrangement. The system then returns to the parallel execution of each calculation module, performing the simulation operation on the bonding interaction of each atom in the molecular system until the simulation termination condition is met.
[0120] In some embodiments, the method for calculating bonding interactions in molecules may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or mounted on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the method for calculating bonding interactions in molecules described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform the method for calculating bonding interactions in molecules by any other suitable means (e.g., by means of firmware).
[0121] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0122] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0123] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0124] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0125] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0126] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.
[0127] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.
[0128] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.
Claims
1. A method for calculating bonding interactions in a molecule, characterized in that, Executed by a 3D interconnected computing architecture, which includes multiple computing modules arranged in 3D, the methods include: Each bonding task in the bonding task list corresponding to the molecular system to be analyzed is assigned to a computing module of the three-dimensional interconnected computing architecture, and a bonding atom set and bonding task index table matching the assigned bonding task are synchronously constructed within each computing module. The bonding atom set reserves multiple storage locations. Each storage location is used to fill the atomic information of each atom required by the computing module when executing all the assigned bonding tasks. The bonding task index table defines the index position of the atomic information of each atom required in each bonding task in the bonding atom set. According to the initial spatial arrangement of each atom in the molecular system, the atomic information of each atom is initialized and stored in each calculation module with matching spatial position; Each computational module is triggered in parallel to perform simulations of the bonding interactions between atoms within the molecular system: Obtain the atomic information of each atom defined in the bonding atom set from the local module or other computing modules, and fill it into the corresponding storage location in the bonding atom set; According to the index information in the bonding task index table, the matching atomic information is extracted from the bonding atom set, the bonding component force of each atom in each assigned bonding task is calculated, and the bonding component forces generated by the same atom in different bonding tasks are accumulated to obtain the resultant bonding force of each atom in the bonding atom set. Based on the calculated resultant bonding force of each atom in the bonding atom set, information is exchanged with other calculation modules to update the atomic information of each atom stored in each calculation module. After the parallel simulation is completed, the spatial arrangement of each atom in the molecular system is updated according to the bonding force of each atom recorded in the atomic information. Then, the atomic information of each atom is updated and stored in the spatially matched calculation modules according to the new spatial arrangement. Return to the parallel execution of each computation module, performing simulation operations on the bonding interactions of each atom in the molecular system until the conditions for ending the simulation are met.
2. The method according to claim 1, characterized in that, Each bonding task in the bonding task list corresponding to the molecular system to be analyzed is assigned to a computing module in the three-dimensional interconnected computing architecture, including: A bonding task list is formed by obtaining the bonding tasks of two-atom bonds, three-atom angles, four-atom dihedral angles of the first kind, and four-atom dihedral angles of the second kind in the molecular system to be analyzed, and the bonding tasks in the task list are sorted in ascending order according to the atomic identifiers in the bonding tasks. The total number of tasks in the bonding task list and the total number of computing modules in the 3D interconnected computing architecture are counted, and the number of bonding tasks to be allocated to each computing module is calculated by rounding up. Based on the number of keying tasks to be allocated to each computing module, keying tasks are allocated to each computing module in the order of keying tasks in the keying task list.
3. The method according to claim 1, characterized in that, Within each computing module, a set of bonding atoms and a bonding task index table matching the assigned bonding task are constructed synchronously, including: The atoms involved in all bonding tasks assigned to the current computing module are counted and duplicates are removed to obtain the atom set corresponding to the computing module. In ascending order of atom identifiers, each atom in the atom set is assigned a corresponding fixed storage address in the bonding atom set, and an atom index is assigned to each atom based on the fixed storage address; Based on the number of atoms that can be stored in the bonding atom set, determine the number of storage bits required for the atom index, and store the atom index of each atom in the format of the number of storage bits. Based on the atom indices corresponding to the atoms involved in each bonding task, a bonding task index table corresponding to each bonding task is constructed.
4. The method according to claim 3, characterized in that, Retrieve the atomic information of each atom defined in the bonding atom set from the local module or other computing modules, and fill it into the corresponding storage location in the bonding atom set, including: Obtain the atomic information of each atom defined in the bonding atom set from the local module or other computing modules; Based on the fixed storage addresses corresponding to the ascending order of the preset atom identifiers within the current computing module, the atomic information of each atom obtained from the local module or other computing modules is sequentially written into the fixed storage addresses corresponding to the bonding atom set.
5. The method according to claim 1, characterized in that, Calculate the bonding forces of each atom in each assigned bonding task, including: Based on the atomic information corresponding to the binary bond bonding task, combined with the resonance coefficient, the relative distance between atoms, and the standard distance, the bonding potential energy of each atom in the binary bond bonding task and the bonding component force matching the bonding potential energy are calculated. Based on the atomic information corresponding to the three-atom angle bonding task, combined with the resonance coefficient, the actual angle between atoms, and the standard angle, the bonding potential energy of each atom in the three-atom angle bonding task and the bonding component force matching the bonding potential energy are calculated. Based on the atomic information corresponding to the first type of dihedral bonding task of four atoms, the bonding potential energy is calculated by combining the energy coefficient, the actual angle of the dihedral angle, the standard angle, and the number of extreme rotational energies. The bonding component force of each atom in the first type of dihedral bonding task of four atoms is solved by combining the plane normal vector calculated based on the atomic information corresponding to the first type of dihedral bonding task of four atoms. Based on the atomic information corresponding to the tetraatomic second type dihedral bonding task, the bonding potential energy is calculated by combining the resonance coefficient, the actual angle of the dihedral angle, and the standard angle. Then, the bonding component force of each atom in the tetraatomic second type dihedral bonding task is solved by combining the plane normal vector calculated based on the atomic information corresponding to the tetraatomic second type dihedral bonding task.
6. The method according to any one of claims 1-4, characterized in that, Based on the calculated resultant bonding force of each atom in the bonding atom set, information is exchanged with other calculation modules to update the atomic information of each atom stored in each calculation module, including: If the atomic information of the first atom in the bonding atom set is stored in another computing module, then the resultant bonding force of the first atom is sent to the other computing module that stores the atomic information of the first atom. If the atomic information of the second atom in the bonding atom set is stored in the local module, the bonding force resultant force sent by other calculation modules for the second atom within the preset time period will be accumulated with the bonding force resultant force of the second atom calculated by the local module, and the atomic information of the second atom stored in the local module will be updated according to the accumulation result. After the local module receives a third atom whose bonding force resultant force is not included in the bonding atom set of the local module sent by other computing modules, the bonding force resultant force corresponding to the third atom is directly added to the force storage address of the third atom in the local module, and the atomic information of the third atom stored in the local module is updated according to the accumulation result.
7. The method according to any one of claims 1-6, characterized in that, Before assigning the bonding tasks from the bonding task list corresponding to the molecular system to be analyzed to the computing modules of the three-dimensional interconnected computing architecture, the following steps are also included: The three-dimensional periodic space of molecular dynamics calculations is uniformly divided into multiple spatial regions along the three-dimensional direction. The relative positions of each calculation module are mapped to the relative positions of the multiple spatial regions of the three-dimensional periodic space, thus constructing a three-dimensional interconnected calculation architecture in which the relative positions of each calculation module are mapped to the real three-dimensional space of the molecule.
8. An electronic device, characterized in that, The electronic device includes: At least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores a computer program executable by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the method for calculating bonding interactions in molecules according to any one of claims 1-7.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions for causing a processor to execute the method for calculating bonding interactions in a molecule as described in any one of claims 1-7.
10. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by a processor, implements the method for calculating bonding interactions in molecules according to any one of claims 1-7.