Grid point information processing method and device, electronic equipment and storage medium
By calculating the coordinate information of the target grid point in real time, the storage space occupation problem caused by the increase in the grid point information data volume is solved, and the effect of reducing hardware storage needs and avoiding data trampling is achieved.
Patent Information
- Application Number
- CN202411303349.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-18
- Publication Date
- 2025-01-03
AI Technical Summary
As the size of grid information increases, directly storing grid information will occupy a large amount of storage space, resulting in data trampling and high requirements for hardware storage devices.
By obtaining the coordinate information of the reference grid point and the coordinate change of the target grid point, the coordinate information of the target grid point is calculated in real time, thereby reducing the space occupied by storing grid point information, reducing the requirements for hardware storage devices, and avoiding the use of other components storage space.
It effectively reduces the storage space required to store grid information, reduces the requirements for hardware storage devices, avoids data trampling, and improves data handling efficiency.
Smart Images

Figure CN119252356A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of chip technology, and in particular, to a grid information processing method, device, electronic device and storage medium. Background Art
[0002] In molecular dynamics, the grid point data of each atom is usually needed to analyze the interaction relationship between atoms. In related technologies, the grid point data of each atom is usually sent to a designated chip for subsequent calculations. However, as the volume of data gradually increases, the storage space required for grid point information will also increase. If the grid point information continues to be stored according to the above solution, the grid point information will occupy the storage space of other components, causing data trampling. Summary of the invention
[0003] The embodiments of the present application provide a grid information processing method, device, electronic device and storage medium.
[0004] A first aspect of an embodiment of the present application provides a grid point information processing method, comprising:
[0005] Obtaining coordinate information of reference grid points; wherein the coordinate information of the reference grid points includes: lx / (a*b*c*n), ly / (a*b*c*n), lz / (a*b*c*n); lx, ly, lz are respectively the dimensions of a box for holding crystals in the first direction, the second direction, and the third direction, and the first direction, the second direction, and the third direction are perpendicular to each other; a, b, and c are respectively constants; n is the cube root of the number of grid points in a grid point block, and the grid point block is the smallest unit occupied by the grid points in the box for holding crystals;
[0006] Determine the coordinate change of the target grid point in each direction; wherein the coordinate change is the coordinate difference of the target grid point relative to the reference grid point in the corresponding direction;
[0007] Based on the coordinate information of the reference grid points and the coordinate changes of the target grid points in various directions, the coordinate information of the target grid points is determined.
[0008] In an optional embodiment of the present application, determining the coordinate changes of the target grid points in each direction includes:
[0009] Determining the relative position change of the target grid point in each direction according to the placement position of the grid point block in the box for holding the crystal;
[0010] The product of the relative position change of the target grid point in each direction and the grid point basic coordinate difference in the corresponding direction is used as the coordinate change of the target grid point in each direction.
[0011] In an optional embodiment of the present application, the coordinate change amount of the target grid point in the first direction is: (ix-1)*lx / (a*b*n); wherein ix indicates that the current target grid point is the ixth grid point along the first direction;
[0012] The coordinate change of the target grid point in the second direction is: (iy-1)*ly / (a*b*n); wherein iy indicates that the current target grid point is the iyth grid point along the second direction;
[0013] The coordinate change of the target grid point in the third direction is: (iz-1)*lz / (a*b*n); wherein iz indicates that the current target grid point is the iz-th grid point along the third direction.
[0014] In an optional embodiment of the present application, determining the coordinate information of the target grid point based on the coordinate information of the reference grid point and the coordinate variation of the target grid point in each direction includes:
[0015] The coordinate change of the selected target grid point in the first direction is summed with the coordinate value of the reference grid point in the first direction to obtain the coordinate value of the target grid point in the first direction;
[0016] The coordinate change of the selected target grid point in the second direction is summed with the coordinate value of the reference grid point in the second direction to obtain the coordinate value of the target grid point in the second direction;
[0017] The coordinate change amount of the selected target grid point in the third direction is summed with the coordinate value of the reference grid point in the third direction to obtain the coordinate value of the target grid point in the third direction;
[0018] Coordinate information of the target grid point is determined based on the coordinate value of the target grid point in the first direction, the coordinate value of the target grid point in the second direction, and the coordinate value of the target grid point in the third direction.
[0019] In an optional embodiment of the present application, the coordinate information of the target grid point includes: lx / (a*b*c*n)+(ix-1)ix*lx / (a*b*n), (iy-1)*ly / (a*b*n), lz / (a*b*c*n)+(iz-1)*lz / (a*b*n), 0;
[0020] Among them, ix indicates that the current target grid point is the ixth grid point along the first direction; iy indicates that the current target grid point is the iyth grid point along the second direction; iz indicates that the current target grid point is the izth grid point along the third direction.
[0021] In an optional embodiment of the present application, after determining the coordinate information of the target grid point, the method further includes:
[0022] A target word is selected from the coordinate information of the target grid point, and a processing result is generated based on the target word; wherein the coordinate value of each direction in the coordinate information includes at least two words.
[0023] In an optional embodiment of the present application, after determining the coordinate information of the target grid point, the method further includes:
[0024] The coordinate information of the target grid point is stored.
[0025] In an optional embodiment of the present application, the grid information processing method further includes:
[0026] The grid point information of at least two groups of the target grid points is processed in parallel.
[0027] A second aspect of an embodiment of the present application provides a grid point information processing device, including:
[0028] An acquisition unit, used for acquiring coordinate information of reference grid points; wherein the coordinate information of the reference grid points includes: lx / (a*b*c*n), ly / (a*b*c*n), lz / (a*b*c*n); lx, ly, lz are respectively the dimensions of a box for holding crystals in a first direction, a second direction and a third direction, and the first direction, the second direction and the third direction are perpendicular to each other; a, b, c are respectively constants; n is the cube root of the number of grid points in a grid point block, and the grid point block is the smallest unit occupied by the grid points in the box for holding crystals;
[0029] A first determining unit is used to determine the coordinate change amount of the target grid point in each direction; wherein the coordinate change amount is the coordinate difference of the target grid point relative to the reference grid point in the corresponding direction;
[0030] The second determining unit is used to determine the coordinate information of the target grid point based on the coordinate information of the reference grid point and the coordinate changes of the target grid point in each direction.
[0031] According to a third aspect of an embodiment of the present application, an electronic device is provided, comprising: a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of any of the above methods when executing the computer program.
[0032] A fourth aspect of an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program implements the steps of any of the above methods when executed by a processor.
[0033] The grid point information processing method provided in the embodiment of the present application obtains the coordinate information of the reference grid point; wherein the coordinate information of the reference grid point includes: lx / (a*b*c*n), ly / (a*b*c*n), lz / (a*b*c*n); lx, ly, lz are the dimensions of the box for holding the crystal in the first direction, the second direction and the third direction, respectively, and the first direction, the second direction and the third direction are perpendicular to each other; a, b, c are constants; n is the cube root of the number of grid points in the grid point block, and the grid point block is the smallest unit occupied by the grid point in the box for holding the crystal; determine the target The coordinate change of the grid points in each direction; wherein the coordinate change is the coordinate difference of the target grid points relative to the reference grid points in the corresponding direction; based on the coordinate information of the reference grid points and the coordinate change of the target grid points in each direction, the coordinate information of the target grid points is determined. With such an arrangement, when necessary, the coordinate information of the reference grid points and other information can be used to analyze and calculate the grid point information of the required target grid points in real time, thereby reducing the storage space occupied by storing the grid point information, which is conducive to reducing the requirements for hardware storage devices, and can reduce or even avoid occupying the storage space of other components, reducing or even avoiding data trampling. BRIEF DESCRIPTION OF THE DRAWINGS
[0034] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:
[0035] Figure 1 A flowchart of a grid point information processing method provided by an embodiment of the present application;
[0036] Figure 2 A schematic diagram of the structure of a grid point information processing device provided in one embodiment of the present application;
[0037] Figure 3 A schematic diagram of the structure of an electronic device provided for one embodiment of the present application. DETAILED DESCRIPTION
[0038] In the process of implementing the present application, the inventors discovered that as the grid information gradually increases, directly placing the grid information will occupy a huge storage space. On the one hand, it will place high requirements on the hardware storage space, and on the other hand, it will also occupy the storage space of other components, causing data trampling.
[0039] In response to the above problems, a grid information processing method is provided in an embodiment of the present application. By utilizing some basic data, when grid information is needed, the basic data can be used to analyze and calculate the required grid data in real time, thereby reducing the storage space occupied by storing grid information, which is conducive to reducing the requirements for hardware storage devices, and can reduce or even avoid occupying the storage space of other components, thereby reducing or even avoiding data trampling.
[0040] The solutions in the embodiments of the present application can be implemented using various computer languages, for example, the object-oriented programming language Java and the interpreted scripting language JavaScript.
[0041] In order to make the technical solutions and advantages in the embodiments of the present application more clearly understood, the exemplary embodiments of the present application are further described in detail below in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present application, rather than an exhaustive list of all the embodiments. It should be noted that the embodiments in the present application and the features in the embodiments can be combined with each other without conflict.
[0042] See also Figure 1 This embodiment provides a grid point information processing method, comprising the following steps:
[0043] Step 110, obtaining coordinate information of reference grid points; wherein the coordinate information of reference grid points includes: lx / (a*b*c*n), ly / (a*b*c*n), lz / (a*b*c*n); lx, ly, lz are respectively the dimensions of the box for containing the crystal in the first direction, the second direction and the third direction, and the first direction, the second direction and the third direction are perpendicular to each other; a, b, c are respectively constants; n is the cube root of the number of grid points in a grid point block (the English name may be block), and block is the smallest unit occupied by the grid points in the box for containing the crystal;
[0044] Step 120, determining the coordinate variation of the target grid point in each direction; wherein the coordinate variation is the coordinate difference of the target grid point relative to the reference grid point in the corresponding direction;
[0045] Step 130: Determine the coordinate information of the target grid point based on the coordinate information of the reference grid point and the coordinate changes of the target grid point in each direction.
[0046] First of all, it should be noted that the grid information processing of the embodiment of the present application can be performed by an electronic device, wherein the electronic device can be a terminal or a server. The terminal can be a smart phone, a tablet computer, a laptop computer and other devices, and the terminal can also include a client, which can be a browser client. The server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms.
[0047] In addition, the grid point information may include: the coordinate change amount of the grid point and the coordinate information of the grid point and other data related to the grid point.
[0048] In step 110, the lattice point generally refers to the equilibrium position of atoms in the crystal. Generally speaking, a crystal is formed by a preset number of lattice points arranged periodically according to a preset rule. Generally speaking, a crystal is a three-dimensional structure. To facilitate position description, a three-dimensional coordinate value system can be established in advance.
[0049] In the specific implementation process, a grid point can be selected from multiple grid points of the crystal as a reference grid point, and the coordinate information of the reference grid point in the three-dimensional coordinate value system can be determined. Exemplarily, the coordinate information of the reference grid point includes: lx / (a*b*c*n), ly / (a*b*c*n), lz / (a*b*c*n). Among them, lx, ly, lz are the dimensions of the box used to hold the crystal in the first direction, the second direction and the third direction, respectively, and the first direction, the second direction and the third direction are perpendicular to each other; a, b, c are constants; n is the cube root of the number of grid points in the block, and the block is the smallest unit occupied by the grid point in the box used to hold the crystal.
[0050] In a specific implementation, the coordinate information of the reference grid point may be: lx / (a*b*c*n), ly / (a*b*c*n), lz / (a*b*c*n), 0. The physical quantity corresponding to 0 may be specifically set according to actual needs, and this embodiment does not make specific limitations. In other examples, the number of parameters in the coordinate information of the reference grid point may also include five or more.
[0051] It is understandable that the number of parameters in the coordinate information of the remaining grid points is consistent with the number of parameters in the coordinate information of the reference grid point. For example, when the coordinate information of the reference grid point includes four parameters, the coordinate information of the remaining grid points also includes four parameters.
[0052] Optionally, each parameter in the coordinate information can include at least 2 words respectively. Word can be specifically understood as a data block. The number of bytes contained in 1 word (i.e., the size of the word) is a basic parameter in each operating system. In different operating systems, the number of bytes contained in a word is usually different. For example, for a 32-bit operating system, a word is 4 bytes; for a 64-bit operating system, a word is 8 bytes. Among them, it can be understood that: the specific number of words can be set according to the data type adopted. Taking the currently adopted data type as floating-point type data as an example, each parameter can include 2 words.
[0053] In addition, regarding the values of a, b, and c, a, b, and c are related to the number of locks in the first direction, the second direction, and the third direction of the box containing the crystal. Among them, the lock constitutes the smallest unit occupied by a grid point information in the box containing the crystal. Specifically, a, b, and c can represent the size of the lock in the first direction, the second direction, and the third direction.
[0054] In step 120, the relative position of the target grid point and the reference grid point may be determined, that is, the coordinate change of the target grid point relative to the reference grid point may be determined in each direction.
[0055] For example, the relative position change of the target grid point in each direction can be determined based on the hardware characteristics, and then the coordinate change of the target grid point can be obtained by multiplying the grid point basic coordinate difference in the corresponding direction. The hardware characteristics include the placement position of each block.
[0056] For example, the relative position change of the target grid point in the first direction is (ix-1)*lx / (a*b), where ix indicates that the current target grid point is the ixth grid point along the first direction; the relative position change of the target grid point in the second direction is (iy-1)*ly / (a*b), where iy indicates that the current target grid point is the iyth grid point along the second direction; the relative position change of the target grid point in the third direction is (iz-1)*lz / (a*b), where iz indicates that the current target grid point is the izth grid point along the third direction. The basic coordinate difference of the grid points in the first direction is lx / n; the basic coordinate difference of the grid points in the second direction is ly / n; and the basic coordinate difference of the grid points in the third direction is lz / n.
[0057] Furthermore, it can be obtained that the coordinate change of the target grid point in the first direction is: (ix-1)*lx / (a*b*n); wherein ix indicates that the current target grid point is the ixth grid point along the first direction; the coordinate change of the target grid point in the second direction is: (iy-1)*ly / (a*b*n); wherein iy indicates that the current target grid point is the iyth grid point along the second direction; the coordinate change of the target grid point in the third direction is: (iz-1)*lz / (a*b*n); wherein iz indicates that the current target grid point is the izth grid point along the third direction.
[0058] It can be understood that the reference grid point can be the first grid point along the first direction, the first grid point along the second direction, and the first grid point along the third direction. In addition, in an ideal state, 1<ix≤n; 1<iy≤n; 1<iz≤n.
[0059] Exemplarily, along the first direction, the coordinate changes of each grid point are: lx / (a*b*n); 2*lx / (a*b*n); ... (ix-1)*lx / (a*b*n) ...; (n-1)*lx / (a*b*n). Along the second direction, the coordinate changes of each grid point are: ly / (a*b*n); 2*ly / (a*b*n) ... (iy-1)*ly / (a*b*n) ...; (n-1)*ly / (a*b*n). Along the third direction, the coordinate changes of each grid point are: lz / (a*b*n); 2*lz / (a*b*n) ... (iz-1)*lz / (a*b*n) ...; (n-1)*lz / (a*b*n).
[0060] In this example, the target grid point may include one target grid point or multiple target grid points. The specific number of target grid points may be set according to actual needs. In some scenarios, the target grid points may also include other grid points except the reference grid points.
[0061] In step 130, the coordinate change of the target grid point and the coordinate value of the reference grid point in the corresponding direction can be used to obtain the coordinate value of the target grid point in the corresponding direction. Specifically, the coordinate change of the target grid point in the first direction is superimposed with the coordinate value of the reference grid point in the first direction to obtain the coordinate value of the target grid point in the first direction; the coordinate change of the target grid point in the second direction is superimposed with the coordinate value of the reference grid point in the second direction to obtain the coordinate value of the target grid point in the second direction; the coordinate change of the target grid point in the third direction is superimposed with the coordinate value of the reference grid point in the third direction to obtain the coordinate value of the target grid point in the third direction.
[0062] Exemplarily, step 130 may include the following steps a10 to a40:
[0063] Step a10, summing the coordinate change of the selected target grid point in the first direction and the coordinate value of the reference grid point in the first direction to obtain the coordinate value of the target grid point in the first direction;
[0064] Step a20, summing the coordinate change of the selected target grid point in the second direction and the coordinate value of the reference grid point in the second direction to obtain the coordinate value of the target grid point in the second direction;
[0065] Step a30, summing the coordinate change of the selected target grid point in the third direction and the coordinate value of the reference grid point in the third direction to obtain the coordinate value of the target grid point in the third direction;
[0066] Step a40, determining the coordinate information of the target grid point based on the coordinate value of the target grid point in the first direction, the coordinate value of the target grid point in the second direction, and the coordinate value of the target grid point in the third direction.
[0067] In steps a10 to a30, the coordinate changes of the target grid point in the first direction, the second direction and the third direction and the coordinate values of the reference grid point in the corresponding directions are summed, and the summed result can be used as the coordinate value of the target grid point in the corresponding direction.
[0068] In step a40, the coordinate information of the target grid point is obtained based on the coordinate values of the target grid point in each direction, thereby realizing the dynamic generation of the grid point information of the target grid point. The obtained coordinate information of the target grid point is the absolute position information of the target grid point.
[0069] In some examples, the coordinate information of the target grid point includes: lx / (a*b*c*n)+(ix-1)ix*lx / (a*b*n), (iy-1)*ly / (a*b*n), lz / (a*b*c*n)+(iz-1)*lz / (a*b*n).
[0070] Specifically, the coordinate information of each node can be:
[0071] lx / (a*b*c*n),ly / (a*b*c*n),lz / (a*b*c*n);
[0072] lx / (a*b*c*n)+lx / (a*b*n),ly / (a*b*c*n),lz / (a*b*c*n);
[0073] lx / (a*b*c*n)+2*lx / (a*b*n),ly / (a*b*c*n),lz / (a*b*c*n); ......
[0075] lx / (a*b*c*n)+(n-1)*lx / (a*b*n),ly / (a*b*c*n),lz / (a*b*c*n);
[0076] lx / (a*b*c*n),ly / (a*b*c*n)+ly / (a*b*n),lz / (a*b*c*n),0;
[0077] lx / (a*b*c*n)+lx / (a*b*n),ly / (a*b*c*n)+ly / (a*b*n),lz / (a*b*c*n);
[0078] lx / (a*b*c*n)+2*lx / (a*b*n),ly / (a*b*c*n)+ly / (a*b*n),lz / (a*b*c*n); ......
[0080] lx / (a*b*c*n)+(n-1)*lx / (a*b*n),ly / (a*b*c*n)+ly / (a*b*n),lz / (a*b*c*n); ......
[0082] lx / (a*b*c*n)+(n-1)*lx / (a*b*n), ly / (a*b*c*n)+(n-1)*ly / (a*b*n),lz / (a*b*c*n)+(n-1)*lz / (a*b*n).
[0083] In other examples, the coordinate information of the target grid point includes: lx / (a*b*c*n)+(ix-1)ix*lx / (a*b*n), (iy-1)*ly / (a*b*n), lz / (a*b*c*n)+(iz-1)*lz / (a*b*n), 0. Then the coordinate information of each node can be:
[0084] lx / (a*b*c*n),ly / (a*b*c*n),lz / (a*b*c*n),0;
[0085] lx / (a*b*c*n)+lx / (a*b*n),ly / (a*b*c*n),lz / (a*b*c*n),0;
[0086] lx / (a*b*c*n)+2*lx / (a*b*n),ly / (a*b*c*n),lz / (a*b*c*n),0; ......
[0088] lx / (a*b*c*n)+(n-1)*lx / (a*b*n),ly / (a*b*c*n),lz / (a*b*c*n),0;
[0089] lx / (a*b*c*n),ly / (a*b*c*n)+ly / (a*b*n),lz / (a*b*c*n),0;
[0090] lx / (a*b*c*n)+lx / (a*b*n),ly / (a*b*c*n)+ly / (a*b*n),lz / (a*b*c*n),0;
[0091] lx / (a*b*c*n)+2*lx / (a*b*n),ly / (a*b*c*n)+ly / (a*b*n),lz / (a*b*c*n),0; ......
[0093] lx / (a*b*c*n)+(n-1)*lx / (a*b*n),ly / (a*b*c*n)+ly / (a*b*n),lz / (a*b*c*n),0; ......
[0095] lx / (a*b*c*n)+(n-1)*lx / (a*b*n),ly / (a*b*c*n)+(n-1)*ly / (a*b*n),lz / (a*b*c*n)+(n-1)*lz / (a*b*n),0.
[0096] The grid point information processing method provided in the present embodiment obtains the coordinate information of the reference grid point; wherein the coordinate information of the reference grid point includes: lx / (a*b*c*n), ly / (a*b*c*n), lz / (a*b*c*n); lx, ly, lz are the dimensions of the crystal in the first direction, the second direction and the third direction, respectively, and the first direction, the second direction and the third direction are perpendicular to each other; a, b, c are constants; n is the cube root of the number of grid points in the crystal; the coordinate change amount of the target grid point in each direction is determined; wherein the coordinate change amount is the coordinate difference of the target grid point relative to the reference grid point in the corresponding direction; based on the coordinate information of the reference grid point and the coordinate change amount of the target grid point in each direction, the coordinate information of the target grid point is determined. With such an arrangement, when necessary, the coordinate information of the reference grid point and other information can be used to analyze and calculate the required grid point information of the target grid point in real time, thereby reducing the storage space occupied by storing the grid point information, which is conducive to reducing the requirements for hardware storage devices, and can reduce or even avoid occupying the storage space of other components, and reduce or even avoid data trampling.
[0097] In an optional embodiment of the present application, after determining the coordinate information of the target grid point based on the coordinate information of the reference grid point and the coordinate change of the target grid point in each direction in step 130, it also includes: filtering out the target word from the coordinate information of the target grid point, and generating a processing result based on the target word; wherein the coordinate value of each direction in the coordinate information includes at least two words.
[0098] In specific implementation, filtering conditions can be set according to hardware characteristics or actual needs, and target words can be filtered out from the coordinate information of the target grid points based on the filtering conditions, thereby facilitating layer-by-layer processing of grid point information in three directions.
[0099] For example, the coordinate values of the target grid points in the first direction are selected as output, and for another example, the coordinate values of the target grid points in the second direction and the third direction are selected as output, etc.
[0100] In an optional embodiment of the present application, after determining the coordinate information of the target grid point based on the coordinate information of the reference grid point and the coordinate changes of the target grid point in each direction in step 130, the method further includes: storing the coordinate information of the target grid point.
[0101] In specific implementation, the coordinate information of the target grid point obtained in step 130 can be stored in a local preset storage area. In some examples, the number of times or frequency of use of the coordinate information of the target grid point obtained can be determined based on the historical grid point information processing data; when the number of times or frequency of use of the coordinate information of the target grid point reaches a corresponding threshold, the coordinate information of the target grid point is stored in the preset storage area; when the number of times or frequency of use of the coordinate information of the target grid point is lower than the corresponding threshold, the coordinate information of the target grid point is deleted after the coordinate information of the target grid point is used this time, so as to reduce the storage space occupied by storing the coordinate information of the target grid point.
[0102] In other examples, after obtaining the coordinate information of the target grid point, the available space of the local storage space can also be obtained. When the available space of the local storage space meets the preset conditions, for example, when the available space of the local storage space reaches the preset storage space threshold, the coordinate information of the target grid point is stored; if the available space of the local storage space does not meet the preset conditions, for example, when the available space of the local storage space is lower than the preset storage space threshold, a prompt message can be generated to remind the user through the prompt message that the current available space is insufficient, so that the user can clean up local data in time or take other measures.
[0103] Optionally, after prompting the user based on the prompt information, if no response information from the user is received within a preset time period, local data can be cleaned up to release local storage space, and the available space of the local storage space can be obtained again to determine whether the available space of the local storage space meets preset conditions.
[0104] In an optional embodiment of the present application, after determining the coordinate information of the target grid points based on the coordinate information of the reference grid points and the coordinate changes of the target grid points in various directions in step 130, the method further includes: parallel processing of the coordinate information of at least two groups of target grid points.
[0105] In specific implementation, multiple processes can be used to respectively determine the coordinate changes of two target grid points in the first direction, the second direction and the third direction; for example, the first process determines the coordinate change of the first target grid point in the first direction, the second process determines the coordinate change of the first target grid point in the second direction, the third process determines the coordinate change of the first target grid point in the third direction, and the fourth process determines the fourth parameter of the first target grid point; the fifth process determines the coordinate change of the second target grid point in the first direction, the sixth process determines the coordinate change of the second target grid point in the second direction, the seventh process determines the coordinate change of the second target grid point in the third direction, and the eighth process determines the change of the fourth parameter of the second target grid point.
[0106] Next, the first process adds the coordinate change of the first target grid point in the first direction and the coordinate value of the reference grid point in the first direction to obtain the coordinate value of the first target grid point in the first direction; the second process adds the coordinate change of the first target grid point in the second direction and the coordinate value of the reference grid point in the second direction to obtain the coordinate value of the first target grid point in the second direction; the third process adds the coordinate change of the first target grid point in the third direction and the coordinate value of the reference grid point in the third direction to obtain the coordinate value of the first target grid point in the third direction; the fourth process determines the fourth parameter of the first target grid point based on the change of the fourth parameter of the first target node and the fourth parameter of the reference grid point. The fifth process adds the coordinate change of the second target grid point in the first direction and the coordinate value of the reference grid point in the first direction to obtain the coordinate value of the first target grid point in the first direction; the sixth process adds the coordinate change of the second target grid point in the second direction and the coordinate value of the reference grid point in the second direction to obtain the coordinate value of the second target grid point in the second direction; the seventh process adds the coordinate change of the second target grid point in the third direction and the coordinate value of the reference grid point in the third direction to obtain the coordinate value of the second target grid point in the third direction; the eighth process determines the fourth parameter of the second target grid point based on the change of the fourth parameter of the second target node and the fourth parameter of the reference grid point.
[0107] In other examples, grid point information of multiple groups of target grid points may also be determined by multiple processes. Specifically, after each process determines the coordinate change of the target grid point in the first direction, the process continues to determine the coordinate change of the target grid point in the second direction and the third direction in sequence.
[0108] Of course, the implementation of parallel processing is not limited to this, and this embodiment is only used as an example.
[0109] The grid point information processing method provided in this embodiment can obtain the required grid point information of the target grid point in real time according to the coordinate information of the reference grid point and the distribution of the grid point when the grid point information is needed, thereby reducing the storage space required for storing the grid point information of the target grid point, which is conducive to reducing the requirements for hardware storage devices, and can reduce or even avoid occupying the storage space of other components, reducing or even avoiding data trampling. In addition, there is no need to initially send a large amount of grid point data, which is also conducive to improving the efficiency of data handling.
[0110] Before obtaining the coordinate information of the reference grid point, the above-mentioned grid point information processing method further includes updating the position of the atom. Taking the atom as an atom in a protein structure as an example, the atomic position updating process includes at least the following steps:
[0111] Mapping each atomic data in the protein structure to be processed to each node unit in a pre-configured three-dimensional network structure; wherein each node unit includes at least one storage unit and at least one computing unit;
[0112] According to the preset multi-level parallel computing architecture, from small to large levels, the global center of mass mass and global center of mass coordinates of the protein structure to be processed are calculated in sequence in the three-dimensional network structure;
[0113] Calculate the restriction force of the calculation unit of the center point of the protein structure to be processed in the three-dimensional network structure according to the global center of mass coordinates and the initial center of mass coordinates;
[0114] According to a preset multi-level parallel computing architecture, from large to small levels, the restraining force is distributed to each atom in the protein structure to be processed to obtain the combined force of each atom;
[0115] The corresponding atomic positions are updated based on each of the combined forces. If the updated atomic positions exceed the set simulation space of the protein structure to be processed in the three-dimensional network structure, the atomic coordinates are adjusted to the preset positions in the set simulation space.
[0116] In an optional embodiment of the present application, mapping each atomic data in the protein structure to be processed to each node unit in a preconfigured three-dimensional network structure includes:
[0117] Acquiring structural data of the protein structure to be processed, and extracting the atomic coordinates and atomic mass of each atom in the structural data;
[0118] Constructing a set simulation space of the protein structure to be processed based on the structural data, and dividing the set simulation space into a plurality of subspaces;
[0119] The atomic coordinates and the atomic mass corresponding to each subspace in the set simulation space are mapped to each node unit in the three-dimensional network structure.
[0120] In an optional embodiment of the present application, the preset multi-level parallel computing architecture includes, from small to large, a single node unit, a computing cluster structure, and a central structure; wherein one computing cluster structure includes at least two node units, and one central structure includes at least two computing cluster structures.
[0121] In an optional embodiment of the present application, the global center of mass mass and global center of mass coordinates of the protein structure to be processed are calculated in sequence in the three-dimensional network structure from small to large levels according to the preset multi-level parallel computing architecture, including:
[0122] For each of the node units, calculating the sum of the first atomic masses of all atoms in the node unit and the first coordinate component in the local process;
[0123] For each of the computing cluster structures, calculating the second atomic masses of all atoms in each of the computing cluster structures and the second coordinate component in the cluster according to the first atomic masses of each of the node units in the computing cluster structure and the first coordinate component;
[0124] For the central structure, the global center of mass mass and the global center of mass coordinates of the protein structure to be processed are calculated according to the second atomic masses and the second coordinate components in each of the cluster structures in the central structure.
[0125] In an optional embodiment of the present application, the limiting force is distributed to each atom in the protein structure to be processed from large to small levels according to a preset multi-level parallel computing architecture to obtain the combined force of each atom, including:
[0126] Distributing the restraining force to the protein structure to be processed and to each of the calculation cluster structures according to the second atomic masses and ratios of all atoms in each of the calculation cluster structures;
[0127] Each of the computing cluster structures distributes the received cluster structure restriction force to each of the node units according to the first atomic masses and proportions of all atoms in each of the node units;
[0128] Each of the node units distributes the received unit limiting force to each atom to obtain the resultant force of each atom.
[0129] In an optional embodiment of the present application, the method further includes:
[0130] For each atom in each of the node units, the atom is updated based on each resultant force to obtain updated atomic coordinates;
[0131] Determine whether the updated atomic coordinates are in the current node unit, and if the updated atomic coordinates exceed the current node unit, determine the new node unit to which the atom belongs according to the updated atomic coordinates;
[0132] The atoms and the atomic data corresponding to the atoms are transferred to the new node unit.
[0133] In an optional embodiment of the present application, the updating of the corresponding atomic positions based on each of the combined forces, if the updated atomic positions exceed the set simulation space of the protein structure to be processed in the three-dimensional network structure, adjusting the atomic coordinates to a preset position in the set simulation space, comprises:
[0134] Determining whether the updated atomic coordinates exceed the set simulation space;
[0135] If the updated atomic coordinates exceed the set simulation space, the atomic coordinates are adjusted to the nearest node unit in the set simulation space according to the updated atomic coordinates and the boundary data of the set simulation space.
[0136] It should be understood that, although the various steps in the flow chart are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear description in this article, the execution of these steps is not strictly limited in order, and these steps can be executed in other orders. Moreover, at least a portion of the steps in the figure may include multiple sub-steps or multiple stages, and these sub-steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these sub-steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a portion of the sub-steps or stages of other steps.
[0137] See also Figure 2 An embodiment of the present application provides a grid information processing device, including:
[0138] The acquisition unit 210 is used to acquire the coordinate information of the reference grid points; wherein the coordinate information of the reference grid points includes: lx / (a*b*c*n), ly / (a*b*c*n), lz / (a*b*c*n); lx, ly, lz are the dimensions of the box for holding the crystal in the first direction, the second direction and the third direction respectively, and the first direction, the second direction and the third direction are perpendicular to each other; a, b, c are constants respectively; n is the cube root of the number of grid points in a block, and a block is the smallest unit occupied by the grid points in the box for holding the crystal;
[0139] The first determining unit 220 is used to determine the coordinate change amount of the target grid point in each direction; wherein the coordinate change amount is the coordinate difference of the target grid point relative to the reference grid point in the corresponding direction;
[0140] The second determining unit 230 is used to determine the coordinate information of the target grid point based on the coordinate information of the reference grid point and the coordinate changes of the target grid point in each direction.
[0141] In some embodiments, the second determining unit is specifically configured to:
[0142] Determine the relative position change of the target grid points in all directions according to the placement of the block in the box used to hold the crystal;
[0143] The product of the relative position change of the target grid point in each direction and the basic coordinate difference of the grid point in the corresponding direction is taken as the coordinate change of the target grid point in each direction.
[0144] In some embodiments, the coordinate change amount of the target grid point in the first direction is: (ix-1)*lx / (a*b*n); wherein ix indicates that the current target grid point is the ixth grid point along the first direction;
[0145] The coordinate change of the target grid point in the second direction is: (iy-1)*ly / (a*b*n); wherein iy indicates that the current target grid point is the iyth grid point along the second direction;
[0146] The coordinate change of the target grid point in the third direction is: (iz-1)*lz / (a*b*n); where iz indicates that the current target grid point is the iz-th grid point along the third direction.
[0147] In some embodiments, the first determining unit 220 is specifically configured to:
[0148] Screen the coordinate changes of the target grid points in all directions;
[0149] The coordinate change amount of the selected target grid point in the first direction is summed with the coordinate value of the reference grid point in the first direction to obtain the coordinate value of the target grid point in the first direction;
[0150] The coordinate change amount of the selected target grid point in the second direction is summed with the coordinate value of the reference grid point in the second direction to obtain the coordinate value of the target grid point in the second direction;
[0151] The coordinate change of the selected target grid point in the third direction is summed with the coordinate value of the reference grid point in the third direction to obtain the coordinate value of the target grid point in the third direction;
[0152] Coordinate information of the target grid point is determined based on the coordinate value of the target grid point in the first direction, the coordinate value of the target grid point in the second direction, and the coordinate value of the target grid point in the third direction.
[0153] In some embodiments, the coordinate information of the target grid point includes: lx / (a*b*c*n)+(ix-1)ix*lx / (a*b*n), (iy-1)*ly / (a*b*n), lz / (a*b*c*n)+(iz-1)*lz / (a*b*n);
[0154] Among them, ix indicates that the current target grid point is the ixth grid point along the first direction; iy indicates that the current target grid point is the iyth grid point along the second direction; iz indicates that the current target grid point is the izth grid point along the third direction.
[0155] In some embodiments, the grid point information processing device also includes: a first processing unit, which is used to filter out target words from the coordinate information of the target grid points after determining the coordinate information of the target grid points, and generate a processing result based on the target words; wherein the coordinate value of each direction in the coordinate information includes at least two words.
[0156] In some embodiments, the grid point information processing device further includes: a storage unit, configured to store the coordinate information of the target grid point after determining the coordinate information of the target grid point.
[0157] In some embodiments, the grid point information processing device further includes: a second processing unit, configured to perform parallel processing on grid point information of at least two groups of target grid points.
[0158] For the specific definition of the above-mentioned grid information processing device, please refer to the definition of the grid information processing method above, which will not be repeated here. Each module in the above-mentioned grid information processing device can be implemented in whole or in part by software, hardware and a combination thereof. The above-mentioned modules can be embedded in or independent of the processor in the electronic device in the form of hardware, or can be stored in the memory of the electronic device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.
[0159] In one embodiment, an electronic device is provided, the internal structure diagram of the electronic device can be as follows: Figure 3 As shown. The electronic device includes a processor, a memory, a network interface and a database connected via a system bus. Among them, the processor of the electronic device is used to provide computing and control capabilities. The memory of the electronic device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the electronic device is used to store data. The network interface of the electronic device is used to communicate with an external terminal via a network connection. When the computer program is executed by the processor, a grid information processing method as described above is implemented. It includes: a memory and a processor, the memory stores a computer program, and when the processor executes the computer program, any step in the grid information processing method as described above is implemented.
[0160] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, any step in the above grid information processing method can be implemented.
[0161] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.
[0162] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0163] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0164] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0165] Although the preferred embodiments of the present application have been described, those skilled in the art may make other changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications falling within the scope of the present application.
[0166] Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.
Claims
1. A grid information processing method, characterized in that: include: Obtaining coordinate information of reference grid points; wherein the coordinate information of the reference grid points includes: lx / (a*b*c*n), ly / (a*b*c*n), lz / (a*b*c*n); lx, ly, lz are respectively the dimensions of a box for holding crystals in the first direction, the second direction, and the third direction, and the first direction, the second direction, and the third direction are perpendicular to each other; a, b, and c are respectively constants; n is the cube root of the number of grid points in a grid point block, and the grid point block is the smallest unit occupied by the grid points in the box for holding crystals; Determine the coordinate change of the target grid point in each direction; wherein the coordinate change is the coordinate difference of the target grid point relative to the reference grid point in the corresponding direction; Based on the coordinate information of the reference grid points and the coordinate changes of the target grid points in various directions, the coordinate information of the target grid points is determined.
2. The grid point information processing method according to claim 1, characterized in that: Determining the coordinate changes of the target grid points in various directions includes: Determining the relative position change of the target grid point in each direction according to the placement position of the grid point block in the box for holding the crystal; The product of the relative position change of the target grid point in each direction and the grid point basic coordinate difference in the corresponding direction is used as the coordinate change of the target grid point in each direction.
3. The grid point information processing method according to claim 1 or 2, characterized in that: The coordinate change of the target grid point in the first direction is: (ix-1)*lx / (a*b*n); wherein ix indicates that the current target grid point is the ixth grid point along the first direction; The coordinate change of the target grid point in the second direction is: (iy-1)*ly / (a*b*n); wherein iy indicates that the current target grid point is the iyth grid point along the second direction; The coordinate change of the target grid point in the third direction is: (iz-1)*lz / (a*b*n); wherein iz indicates that the current target grid point is the iz-th grid point along the third direction.
4. The grid point information processing method according to claim 3, characterized in that: The determining the coordinate information of the target grid point based on the coordinate information of the reference grid point and the coordinate variation of the target grid point in each direction includes: The coordinate change of the selected target grid point in the first direction is summed with the coordinate value of the reference grid point in the first direction to obtain the coordinate value of the target grid point in the first direction; The coordinate change of the selected target grid point in the second direction is summed with the coordinate value of the reference grid point in the second direction to obtain the coordinate value of the target grid point in the second direction; The coordinate change amount of the selected target grid point in the third direction is summed with the coordinate value of the reference grid point in the third direction to obtain the coordinate value of the target grid point in the third direction; Coordinate information of the target grid point is determined based on the coordinate value of the target grid point in the first direction, the coordinate value of the target grid point in the second direction, and the coordinate value of the target grid point in the third direction.
5. The grid point information processing method according to claim 4, characterized in that: The coordinate information of the target grid point includes: lx / (a*b*c*n)+(ix-1)ix*lx / (a*b*n), (iy-1)*ly / (a*b*n), lz / (a*b*c*n)+(iz-1)*lz / (a*b*n), 0; Among them, ix indicates that the current target grid point is the ixth grid point along the first direction; iy indicates that the current target grid point is the iyth grid point along the second direction; iz indicates that the current target grid point is the izth grid point along the third direction.
6. The grid point information processing method according to claim 4, characterized in that: After determining the coordinate information of the target grid point, the method further includes: Filtering out a target word from the coordinate information of the target grid point, and generating a processing result based on the target word; wherein the coordinate value of each direction in the coordinate information includes at least two words; And / or, after determining the coordinate information of the target grid point, further comprising: The coordinate information of the target grid point is stored.
7. The grid point information processing method according to claim 1, characterized in that: Also includes: The grid point information of at least two groups of the target grid points is processed in parallel.
8. A grid information processing device, characterized in that: include: An acquisition unit, used for acquiring coordinate information of reference grid points; wherein the coordinate information of the reference grid points includes: lx / (a*b*c*n), ly / (a*b*c*n), lz / (a*b*c*n); lx, ly, lz are respectively the dimensions of a box for holding crystals in a first direction, a second direction and a third direction, and the first direction, the second direction and the third direction are perpendicular to each other; a, b, c are respectively constants; n is the cube root of the number of grid points in a grid point block, and the grid point block is the smallest unit occupied by the grid points in the box for holding crystals; A first determining unit is used to determine the coordinate change amount of the target grid point in each direction; wherein the coordinate change amount is the coordinate difference of the target grid point relative to the reference grid point in the corresponding direction; The second determining unit is used to determine the coordinate information of the target grid point based on the coordinate information of the reference grid point and the coordinate changes of the target grid point in each direction.
9. An electronic device, comprising: The method comprises a memory and a processor, wherein the memory stores a computer program, and wherein the processor implements the steps of the method according to any one of claims 1 to 7 when executing the computer program.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.
