Molecular energy calculation program, molecular energy calculation device, and molecular energy calculation method

JP2026144891APending Publication Date: 2026-09-09FUJITSU LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2025032450
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-02-28
Publication Date
2026-09-09

AI Technical Summary

Benefits of technology

【0007】 1つの側面では、分子エネルギー計算の計算量を削減できる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026144891000001_ABST
    Figure 2026144891000001_ABST
Patent Text Reader

Abstract

The accuracy and computational complexity of molecular energy calculations vary depending on the basis set and algorithm used. However, calculations for large-scale systems become exponentially more complex, making high-precision molecular energy calculations currently difficult. [Solution] The molecular energy calculation program divides the molecule into multiple fragments, calculates a first eigenvalue for each bus orbital contained in each fragment, calculates a second value for each bus orbital based on the first eigenvalue, sorts the second values ​​in descending order to derive a cumulative distribution function of the second values, determines the number of bus orbitals whose cumulative probability of the cumulative distribution function exceeds a predetermined threshold, selects the bus orbitals corresponding to that number of second values ​​starting with the largest second values ​​sorted in descending order, and has the computer perform the process of calculating the molecular energy using the selected bus orbitals.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a molecular energy calculation technique. [Background Art]

[0002] The properties of a molecule can be grasped by determining the energy of the molecule. For example, a stable state of the molecular structure can be grasped from the ground energy of the molecule, and an unstable state of the molecular structure can be grasped from the excitation energy of the molecule. Since grasping such molecular properties is useful for drug discovery, discovery of new materials, and the like, quantum chemical calculation is of high importance. [Prior Art Literature] [Patent Literature]

[0003] [Patent Literature 1] International Publication No. WO 2022 / 097298 [Patent Literature 2] Japanese Unexamined Patent Application Publication No. 2024-158044 [Patent Literature 3] United States Patent Application Publication No. 2021 / 0406421 Specification [Patent Literature 4] United States Patent Application Publication No. 2023 / 0359929 Specification [Summary of the Invention] [Problem to be Solved by the Invention]

[0004] However, although the accuracy and calculation amount of molecular energy calculation vary depending on the basis set and algorithm used, the calculation amount for a large-scale system increases exponentially, and therefore, at present, high-accuracy molecular energy calculation is considered difficult.

[0005] In one aspect, an object of the invention is to reduce the calculation amount of molecular energy calculation. [Means for Solving the Problem]

[0006] In one embodiment, a molecular energy calculation program divides a molecule into multiple fragments, calculates a first eigenvalue for each bus orbital contained in each fragment, calculates a second value for each bus orbital based on the first eigenvalue, sorts the second values ​​in descending order to derive a cumulative distribution function of the second values, determines the number of bus orbitals whose cumulative probability of the cumulative distribution function exceeds a predetermined threshold, selects the bus orbitals corresponding to that number of second values ​​starting with the largest second values ​​sorted in descending order, and has the computer perform the process of calculating the molecular energy using the selected bus orbitals. [Effects of the Invention]

[0007] In one respect, it can reduce the computational complexity of molecular energy calculations. [Brief explanation of the drawing]

[0008] [Figure 1] Figure 1 is a diagram illustrating the accuracy and computational complexity of molecular energy calculations. [Figure 2] Figure 2 shows an example of a fragmentation method. [Figure 3] Figure 3 illustrates the problems with energy calculations using the fragmentation method. [Figure 4] Figure 4 shows the relationship between the accuracy of molecular energy calculations and the number of bus orbitals. [Figure 5] Figure 5 shows an example of the configuration of the molecular energy calculation device according to this embodiment. [Figure 6] Figure 6 shows an example of the distribution of min(2-λ,λ) in DMET. [Figure 7] Figure 7 shows an example of a method for determining the number of bus tracks according to this embodiment. [Figure 8] Figure 8 is a flowchart showing the flow of the molecular energy calculation process according to this embodiment. [Figure 9] Figure 9 is a flowchart showing an example of the bus track number determination process according to this embodiment. [Figure 10] Figure 10 shows an example of the effects according to this embodiment. [Figure 11] Figure 11 shows an example of the hardware configuration of the molecular energy calculation device according to this embodiment. [Modes for carrying out the invention]

[0009] The following describes in detail, with reference to the drawings, embodiments of the molecular energy calculation program, molecular energy calculation apparatus, and molecular energy calculation method according to this embodiment. However, this embodiment is not limited to these embodiments. Furthermore, each embodiment can be appropriately combined within a consistent range.

[0010] Figure 1 illustrates the accuracy and computational complexity of molecular energy calculations. Regarding the algorithms shown in Figure 1, HF is the Hartree-Fock method, MP2 is the Second-order Moller-Plesset method, and CCSD is the Coupling Cluster Singles and Doubles method. Furthermore, CCSD(T) is the Coupling Cluster Singles, Doubles, and perturbative Triples method, and FCI is the Full Configuration Interaction method.

[0011] The basis sets and algorithms used in molecular energy calculations differ in their accuracy and computational complexity, and are selected based on the purpose. However, calculations for large-scale systems increase computationally exponentially, making it currently difficult to perform large-scale molecular energy calculations while maintaining high accuracy.

[0012] Accordingly, there are existing methods such as DMET and BE, which obtain the energy of the entire molecule by dividing the molecule into a plurality of fragments, calculating the energy of each fragment, and summing the energies at the end. Here, in the existing methods, DMET stands for Density Matrix Embedding Theory, and BE stands for Bootstrap Embedding. Regarding BE, the present embodiment focuses on ABE (Atom-Based Bootstrap Embedding), which is an atomic-unit BE. By using such a method and dividing a molecule into a plurality of fragments, the number of orbitals of each fragment can be reduced compared to that of the entire molecule, thereby reducing the amount of calculation.

[0013] Figure 2 is a diagram showing an example of a fragment division method. In Figure 2, the left side shows an example of DMET, and the right side shows an example of BE. As shown in Figure 2, in DMET, fragments are generated such that atoms do not overlap. On the other hand, in BE, fragments are generated by shifting atoms (or orbitals) one by one.

[0014] Figure 3 is a diagram for explaining problems of energy calculation using a fragment division method. As shown in Figure 3, each fragment divided by a method such as DMET or BE includes, for example, orbitals owned by the fragment and bath orbitals that are part of the orbitals of other fragments. In the example of Figure 3, the orbitals shown within the broken line are the bath orbitals. By including bath orbitals in each fragment in this manner, the surrounding environment not included in the fragments, for example, the interaction between fragments, can be expressed, and calculation accuracy can be improved.

[0015] However, the number of bath orbitals shown in Figure 3 is merely an example, and the number varies depending on the fragment, and furthermore, the number of bath orbitals that provides the highest accuracy varies depending on the molecule. On the other hand, as the number of bath orbitals increases, the amount of calculation increases. Therefore, unless an appropriate number of bath orbitals is set, problems such as decreased accuracy of molecular energy calculation and increased amount of calculation will be caused.

[0016] Figure 4 shows the relationship between the accuracy of molecular energy calculations and the number of bus orbitals. Figure 4 shows the relationship between the number of bus orbitals and the accuracy when performing energy calculations for three types of molecules, including hexane / 6-31G. In Figure 4, the calculation accuracy for each number of bus orbitals can be evaluated by comparing it with the error (hereinafter referred to as "sequence error") between the calculated energy and the total molecular energy obtained using a highly accurate algorithm (for example, the CCSD method) without using DMET or BE. In Figure 4, the horizontal dotted line indicates the division error when all bus orbitals are included. "All bus orbitals" refers to all bus orbitals after excluding those deemed unlikely to affect the energy calculation based on a threshold value for the function "min(2-λ,λ-0)" described later. When reducing the number of bus orbitals, it is desirable to achieve an error equal to or less than that when all bus orbitals are included.

[0017] For example, referring to the molecule hexane / 6-31G on the left side of Figure 4, calculations using ABE show smaller errors and higher accuracy compared to calculations using all bus orbitals (shown by the dotted horizontal line) when the number of bus orbitals is 8, 10, or 11. Similarly, in the examples of the molecules 3hexene / 6-31G in the center of Figure 4 and 3hexyne / 6-31G on the right, the accuracy can be higher than calculations using all bus orbitals even with a small number of bus orbitals. Conversely, the accuracy can decrease significantly depending on the number of bus orbitals. Thus, the appropriate number of bus orbitals varies depending on the molecule, the algorithm used, and even for each fragment, making it extremely difficult to determine.

[0018] Therefore, one of the objectives of this embodiment is to determine the minimum number of bus orbitals that can achieve accuracy equivalent to or better than when all bus orbitals are used, and to reduce the computational load while maintaining accuracy by calculating the molecular energy by focusing on the minimum number of bus orbitals.

[0019] (Functional configuration of molecular energy calculation device 10) Next, the functional configuration of the molecular energy calculation device 10, which is the main operating component of this embodiment, will be described. Figure 5 is a diagram showing an example of the configuration of the molecular energy calculation device according to this embodiment. The molecular energy calculation device 10 shown in Figure 5 is, for example, a quantum computer such as a NISQ (Noisy Intermediate-Scale Quantum Computer). Alternatively, the molecular energy calculation device 10 may be, for example, an information processing device such as a server computer or a desktop PC (Personal Computer). In Figure 5, the molecular energy calculation device 10 is shown as a single computer, but it may be a distributed computing system composed of multiple computers. Furthermore, for example, the molecular energy calculation device 10 may be a cloud computing device in part or all of which is managed by a service provider that provides cloud computing services.

[0020] As shown in Figure 5, the molecular energy calculation device 10 includes, for example, a communication unit 20, a storage unit 30, and a control unit 40.

[0021] The communication unit 20 is a processing unit that controls communication with other information processing devices, such as a communication interface such as a network interface card or a USB (Universal Serial Bus) interface.

[0022] The storage unit 30 has the function of storing various data and programs executed by the control unit 40, and is implemented by a storage device such as memory or a hard disk. The storage unit 30 stores circuit information 31, state information 32, and fragment information 33, etc.

[0023] The circuit information 31 stores, for example, information about circuits executed by the molecular energy calculation device 10. This circuit information may be, for example, information about digital circuits for executing algorithms such as CCSD. Alternatively, this circuit information may be, for example, information about parameterized quantum circuits for executing quantum algorithms such as VQE (Variational Quantum Eigensolver), which is a variational algorithm for NISQ. In quantum chemical calculations, VQE is an algorithm that uses quantum states to search for the ground state and calculate the ground energy.

[0024] State information 32 may store, for example, information about the state of bits input when the molecular energy calculation device 10 executes a digital circuit. Alternatively, state information 32 may store, for example, information about the state of bits output from the digital circuit executed by the molecular energy calculation device 10. Or, it may store information about quantum states, which are the states of qubits input when the molecular energy calculation device 10 executes a quantum circuit. Furthermore, state information 32 may store, for example, information about quantum states output from the quantum circuit executed by the molecular energy calculation device 10.

[0025] Fragment information 33 stores information about fragments that have been divided using methods such as DMET or ABE. More specifically, fragment information 33 may store information such as the orbital and bus orbital of each fragment, the number of orbitals for each fragment, and the energy and number of electrons calculated for each fragment.

[0026] The above information stored in the memory unit 30 is merely an example, and the memory unit 30 can store various other types of information besides the above.

[0027] The control unit 40 is a processing unit that oversees the entire molecular energy calculation device 10, and is, for example, a processor. The control unit 40 comprises a division unit 41, a calculation unit 42, a determination unit 43, and an output unit 44. Each processing unit is an example of an electronic circuit in the processor or an example of a process executed by the processor.

[0028] The splitting unit 41 divides the molecule into multiple fragments using, for example, DMET or ABE.

[0029] The calculation unit 42 calculates a first eigenvalue for each bus orbital contained in each fragment, for example, for each fragment divided by the division unit 41. Here, the first eigenvalue is a numerical value between 0 and 2, and is expressed as eigenvalue λ (0 ≤ λ ≤ 2). For example, if λ = 0, it indicates that the bus orbital is a virtual orbital not occupied by electrons, and if λ = 2, it indicates that the bus orbital is an occupied orbital occupied by two electrons. Furthermore, the closer λ is to 1, the more likely that the orbital is to influence the Hamiltonian calculation. Conversely, virtual orbitals with a value far from 1, such as λ = 0 or occupied orbitals with λ = 2, have little influence on the Hamiltonian calculation, so excluding them from the calculation does not significantly reduce accuracy. Therefore, by excluding such bus orbitals that do not significantly affect accuracy from the calculation, the amount of computation can be reduced while minimizing the loss of accuracy in molecular energy calculations.

[0030] The method for calculating the first eigenvalue, eigenvalue λ, will now be explained in more detail. The calculation unit 42 calculates the Hamiltonian of the entire molecule using, for example, an existing low-precision method such as HF (Hartree-Fock method), and generates a one-electron density matrix representing the electronic state of the entire molecule. Next, the calculation unit 42 extracts a submatrix corresponding to the bus orbital from the one-electron density matrix for each fragment. Then, the calculation unit 42 diagonalizes the extracted submatrix and calculates the first eigenvalue for each fragment.

[0031] Furthermore, the calculation unit 42 calculates a second value for each bus trajectory based on the first eigenvalue, for example. Here, the second value indicates, for example, how close the first eigenvalue, eigenvalue λ, is to the numerical value 1, and can be calculated using the function "min(2-λ,λ)". The function "min(2-λ,λ)" outputs 1 when λ=1 is input, and outputs 0 when λ=0 or 2 is input. In other words, by using the function "min(2-λ,λ)", it is shown that the closer the output value is to 1, the closer the bus trajectory is to the numerical value 1 of the eigenvalue λ, and conversely, the closer the output value is to 0, the further the bus trajectory is from the numerical value 1 of the eigenvalue λ. Note that the function "min(2-λ,λ)" is strictly speaking the function "min(2-λ,λ-0)".

[0032] Furthermore, as mentioned above, bus orbitals with λ values ​​far from 1 have little impact on Hamiltonian calculations. Therefore, for example, by setting a predetermined threshold for the function "min(2-λ,λ-0)" and excluding bus orbitals below that threshold from the calculation, the amount of computation can be reduced while minimizing the loss of accuracy in molecular energy calculations. Note that the threshold for the function "min(2-λ,λ-0)" can be, for example, 1E-13(10 -13 ) However, it can be smaller or larger than this.

[0033] Figure 6 shows an example of the distribution of min(2-λ,λ) in DMET. Figure 6 shows the output values ​​obtained by calculating the eigenvalue λ for each bus trajectory contained in the fragment divided using DMET and inputting them into the function "min(2-λ,λ-0)", arranged in descending order.

[0034] In Figure 6, the left vertical axis and bar graph represent the output values ​​of the function "min(2-λ,λ-0)" on a normal scale, while the right vertical axis and line graph represent the output values ​​of the function "min(2-λ,λ-0)" on a logarithmic scale. Furthermore, in the example in Figure 6, bus tracks with output values ​​below the threshold "1E-13" have been excluded.

[0035] Referring to Figure 6, it can be seen that only a small portion of the bus trajectories, represented by bus trajectories IDs 0 to 5, have an output value close to 1 for the function "min(2-λ,λ-0)". Here, bus trajectories IDs 2 to 5 appear to have an output value close to 0 on a normal scale, but are close to 1 on a logarithmic scale, indicating that only a small fraction of the total bus trajectories affect the Hamiltonian calculation. Conversely, in Figure 6, bus trajectories with an output value of "min(2-λ,λ-0)" that is close to 0, i.e., bus trajectories ID 6 and beyond, have almost no effect on the Hamiltonian calculation.

[0036] Therefore, for example, in the example in Figure 6, the threshold for the function "min(2-λ,λ-0)" is 1E-3(10 -3 By setting it to something like ), you can exclude bus orbitals ID 6 and beyond. This allows you to exclude bus orbitals ID 6 and beyond, which have little impact on Hamiltonian calculations, and perform molecular energy calculations using the remaining six bus orbitals IDs 0-5, thereby reducing the computational load while minimizing the loss of accuracy.

[0037] However, setting an appropriate threshold value for the function "min(2-λ,λ-0)" is not easy, for example, because it differs depending on the molecule. Therefore, in this embodiment, the cumulative distribution function (CDF) of the output value of the function "min(2-λ,λ-0)" is used to determine the number of bus orbitals that affect the Hamiltonian calculation, i.e., the number of bus orbitals used in the molecular energy calculation.

[0038] Therefore, the calculation unit 42, for example, sorts the calculated second values ​​in descending order to derive the cumulative distribution function of the second values. Figure 7 is a diagram showing an example of the method for determining the number of bus orbitals according to this embodiment. The graph shown on the left side of Figure 7 shows the output value obtained by sorting the min(2-λ,λ-0) of the bus orbitals contained in the fragments obtained by dividing the molecule 3hexene / 6-31G using DMET and ABE respectively in descending order and inputting them into the cumulative distribution function.

[0039] Next, for example, in the example on the left of Figure 7, a threshold such as 0.999 is set for the cumulative probability, and the minimum number of bus orbits that exceeds this threshold is determined as the number of bus orbits that affect the Hamiltonian calculation. This threshold is shown by a horizontal dotted line in the example on the left of Figure 7. Also, in the example on the left of Figure 7, the bus orbit numbers circled in the plots for DMET and ABE, respectively, are determined to be the number of bus orbits that affect the Hamiltonian calculation, with 6 and 13 being circled. In other words, the determination unit 43 shown in Figure 5 determines, for example, the number of bus orbits in which the cumulative probability of the cumulative distribution function derived by the calculation unit 42 exceeds a predetermined threshold.

[0040] On the other hand, the graph shown on the right side of Figure 7 shows the relationship between the accuracy of the energy calculation for the molecule 3hexene / 6-31G shown in the center of Figure 4 and the number of bus orbitals, with the number of bus orbitals determined to have a cumulative probability exceeding a predetermined threshold circled. Referring to the example on the right side of Figure 7, it can be seen that in both the DMET and ABE cases, the determined number of bus orbitals can achieve an accuracy equal to or better than that achieved when calculating using all bus orbitals.

[0041] The determination unit 43 then selects, for example, the bus orbitals corresponding to the second value, starting with the largest second value after sorting in descending order, for the number of bus orbitals whose cumulative probability exceeds a predetermined threshold. Here, the second value is, for example, the output value of the function "min(2-λ,λ-0)" for each bus orbital, calculated by the calculation unit 42. In the example on the left side of Figure 7, as described above, when DMET is used for the numerator 3hexene / 6-31G, the number of bus orbitals whose cumulative probability of the cumulative distribution function exceeds a predetermined threshold is determined to be 6. Therefore, the 6 largest output values ​​of the function "min(2-λ,λ-0)" for each bus orbital of the numerator 3hexene / 6-31G, as shown in Figure 6, are selected, i.e., bus orbitals IDs 0 to 5.

[0042] Furthermore, the calculation unit 42 calculates the energy of the molecule using, for example, the bus orbital selected by the determination unit 43. This allows the molecular energy calculation to be performed using a minimum number of bus orbitals, reducing the computational load while maintaining calculation accuracy. The calculation unit 42 can also calculate the energy of the molecule using, for example, a second quantum chemical calculation method that is more accurate than the first quantum chemical calculation method. Here, the first method is, for example, an existing low-accuracy method such as HF (Hartree-Fock method). On the other hand, the second method is, for example, VQE or CCSD.

[0043] Returning to the explanation of Figure 5, the output unit 44 outputs, for example, the molecular energy calculated by the calculation unit 42. Here, the output of the molecular energy may be displayed via, for example, the display of the molecular energy calculation device 10, or it may be transmitted to another information processing device that is communicatively connected to the molecular energy calculation device 10.

[0044] (Process flow) Next, the molecular energy calculation process performed by the molecular energy calculation device 10 will be explained using Figure 8. Figure 8 is a flowchart showing the flow of the molecular energy calculation process according to this embodiment.

[0045] First, as shown in Figure 8, the molecular energy calculation device 10 calculates and generates the Hamiltonian for the entire molecule using, for example, an existing low-precision method such as HF (Hartree-Fock method) (step S101).

[0046] Next, the molecular energy calculation device 10 divides the molecule into multiple fragments using, for example, DMET or ABE (step S102). The subsequent steps S103 to S106 are executed repeatedly in a loop for each fragment divided in step S102, for all fragments.

[0047] Next, the molecular energy calculation device 10 calculates an eigenvalue λ, which is a first eigenvalue for each of the bus orbitals contained in the fragment divided in step S102 (step S103). More specifically, the molecular energy calculation device 10 generates a one-electron density matrix representing the electronic state of the entire molecule using the Hamiltonian of the entire molecule generated in step S101. Next, the molecular energy calculation device 10 extracts submatrices corresponding to the bus orbitals from the generated one-electron density matrix, and calculates an eigenvalue λ for each of the bus orbitals by diagonalizing the extracted submatrices.

[0048] Next, the molecular energy calculation device 10 determines, for example, the number of bus orbitals to be used for molecular energy (step S104). An example of the bus orbital number determination process in step S104 will be explained in more detail with reference to Figure 9.

[0049] Figure 9 is a flowchart showing an example of the bus orbital number determination process according to this embodiment. First, as shown in Figure 9, the molecular energy calculation device 10 calculates the function "min(2-λ,λ-0)" using, for example, the eigenvalues ​​λ for each of the bus orbitals calculated in step S103 as input values, and obtains an output value (step S201).

[0050] Next, the molecular energy calculation device 10 sorts all bus orbitals in descending order by the output value of the function "min(2-λ,λ-0)" for each of the bus orbitals, which was calculated in step S201 (step S202).

[0051] Next, the molecular energy calculation device 10 inputs the output values ​​of the function "min(2-λ,λ-0)" for each of the bus orbitals sorted in descending order in step S202 into the cumulative distribution function (CDF) and calculates the result (step S203).

[0052] Next, the molecular energy calculation device 10 uses, for example, the calculation result of the cumulative distribution function obtained in step S203 to determine the number of bus orbitals whose cumulative probability exceeds a predetermined threshold, such as 0.999 (step S204). After the execution of step S204, the bus orbital number determination process shown in Figure 9 is completed, and the process returns to step S104 of the molecular energy calculation process shown in Figure 8.

[0053] Next, the molecular energy calculation device 10 calculates and generates an embedded Hamiltonian containing the number of bus orbitals determined in step S204 (step S105). Specifically, the molecular energy calculation device 10 selects bus orbitals corresponding to the number of bus orbitals determined in step S204, starting with the bus orbitals with the largest output values ​​of the function "min(2-λ,λ-0)" for each of the bus orbitals, sorted in descending order. Then, the molecular energy calculation device 10 calculates and generates an embedded Hamiltonian containing the selected bus orbitals. Finally, the molecular energy calculation device 10 calculates the embedded Hamiltonian and calculates a density matrix representing the electronic state using existing methods such as CCSD or VQE.

[0054] Next, the molecular energy calculation device 10 calculates the energy of each fragment based on the density matrix calculated in step S105 (step S106). The molecular energy calculation device 10 also calculates the number of electrons contained in the fragments that include bus orbitals (step S106). Then, if the molecular energy calculation device 10 has performed the processes in steps S103 to S106 for all the fragments that were divided in step S102, for example, it proceeds to step S107.

[0055] Next, the molecular energy calculation device 10, for example, sums up the energy and electron count of each fragment calculated in step S106 (step S107).

[0056] Next, the molecular energy calculation device 10 determines, for example, whether or not predetermined convergence conditions are met (steps S108 and S109). Here, the predetermined convergence conditions are, for example, whether or not the total number of electrons calculated in step S107 matches the total number of electrons in the molecule. If the predetermined convergence conditions are not met, such as when these two electron counts do not match (step S109: No), the molecular energy calculation device 10 updates, for example, the penalty value for the Hamiltonian and restarts the process from step S103.

[0057] On the other hand, if the number of electrons in both molecules is the same (step S109: Yes), the molecular energy calculation device 10 outputs the sum of the energies obtained in step S107 as the molecular energy, and terminates the molecular energy calculation process shown in Figure 8.

[0058] (effect) As described above, the molecular energy calculation device 10 divides the molecule into multiple fragments, calculates a first eigenvalue for each bus orbital contained in each fragment, calculates a second value for each bus orbital based on the first eigenvalue, sorts the second values ​​in descending order to derive a cumulative distribution function of the second values, determines the number of bus orbitals whose cumulative probability of the cumulative distribution function exceeds a predetermined threshold, selects the bus orbitals corresponding to that number of second values ​​starting with the largest second values ​​sorted in descending order, and calculates the energy of the molecule using the selected bus orbitals.

[0059] In this way, the molecular energy calculation device 10 sorts the values ​​for each bus orbital based on the eigenvalues ​​of the bus orbitals contained in the molecular partitioned fragment in descending order to derive a cumulative distribution function, and calculates the molecular energy of the bus orbitals whose cumulative probability exceeds a threshold. As a result, the molecular energy calculation device 10 can calculate the molecular energy by narrowing it down to the minimum number of bus orbitals that can maintain calculation accuracy, thereby reducing the amount of computation required.

[0060] Furthermore, the process of dividing a molecule into multiple fragments, performed by the molecular energy calculation device 10, includes the process of dividing the molecule into multiple fragments using DMET or ABE.

[0061] As a result, the molecular energy calculation device 10 can reduce the computational load of molecular energy calculations using DMET and ABE.

[0062] Furthermore, the process of calculating the second value, performed by the molecular energy calculation device 10, includes the process of calculating a second value that indicates the proximity to a numerical value 1, which is one of the eigenvalues ​​for the bus trajectory, based on the first eigenvalue.

[0063] As a result, the molecular energy calculation device 10 can calculate molecular energies while excluding bus trajectories that have little impact on Hamiltonian calculations, thereby reducing the amount of computation required.

[0064] Furthermore, the process of calculating the first eigenvalue performed by the molecular energy calculation device 10 includes the process of calculating the first eigenvalue for each fragment using a first method of quantum chemical calculation, and the process of calculating the molecular energy includes the process of calculating the molecular energy using a second method of quantum chemical calculation that is more accurate than the first method, and a selected bus orbital.

[0065] This allows the molecular energy calculation device 10 to use different quantum chemical calculation methods depending on the required calculation accuracy, thereby reducing the computational load of molecular energy calculations.

[0066] Furthermore, the process of calculating the first eigenvalue performed by the molecular energy calculation device 10 includes the process of calculating a first eigenvalue for each fragment, which is a number between 0 and 2. The process of calculating a second value indicating proximity to the number 1 includes the process of calculating a second value indicating proximity to the number 1, using the function "min(2-λ,λ)" with the first eigenvalue being λ.

[0067] As a result, the molecular energy calculation device 10 can calculate molecular energies while excluding bus trajectories that have little impact on Hamiltonian calculations, thereby reducing the amount of computation required.

[0068] Furthermore, the molecular energy calculation device 10 generates a one-electron density matrix representing the electronic state of the entire molecule, and the process of calculating the first eigenvalue performed by the molecular energy calculation device 10 includes, for each fragment, extracting a submatrix corresponding to the bus orbital from the one-electron density matrix, diagonalizing the extracted submatrix, and calculating the first eigenvalue for each fragment.

[0069] This allows the molecular energy calculation device 10 to reduce the computational load required for molecular energy calculations.

[0070] Furthermore, to further demonstrate the effectiveness of this embodiment, comparative data on accuracy and execution time are shown for cases where molecular energy calculations are performed using all bus trajectories and cases where molecular energy calculations are performed with a limited number of bus trajectories according to this embodiment.

[0071] Figure 10 shows an example of the effects according to this embodiment. The two graphs on the left of Figure 10 show the accuracy when energy calculations are performed on three types of molecules, including hexane / 6-31G, and the two graphs on the right show the execution time for each case. In Figure 10, "full bath" is the data when molecular energy calculations are performed using all bus orbitals, and "auto bath" is the data when molecular energy calculations are performed with a limited number of bus orbitals according to this embodiment. The two upper graphs in Figure 10 are the results when DMET is used, and the two lower graphs are the results when ABE is used. In Figure 10, (3) in ABE(3) indicates that the number of atoms other than hydrogen atoms in the fragment separated by ABE is 3.

[0072] As shown in Figure 10, in the case of molecular energy calculations with a limited bus trajectory according to this embodiment, the execution time is significantly reduced while achieving equivalent or better accuracy compared to the case using all bus trajectories, regardless of whether DMET or ABE is used.

[0073] (system) The processing procedures, control procedures, specific names, and various data and parameters shown in the above documents and drawings may be modified at will unless otherwise specified. Furthermore, the specific examples, distributions, and numerical values ​​described in the embodiments are merely examples and may be modified at will.

[0074] Furthermore, the specific forms of distribution and integration of the components of the molecular energy calculation device 10 are not limited to those shown in the figures. For example, the calculation unit 42 of the molecular energy calculation device 10 may be distributed to multiple processing units, or the calculation unit 42 and the determination unit 43 of the molecular energy calculation device 10 may be integrated into a single processing unit. In other words, all or part of its components may be functionally or physically distributed and integrated in any unit depending on various loads and usage conditions. Moreover, each processing function of each device may be implemented in whole or in any part by a CPU (Central Processing Unit) and a program executed for analysis by the CPU, or by hardware using wired logic.

[0075] Figure 11 shows an example of the hardware configuration of a molecular energy calculation device according to this embodiment. As shown in Figure 11, the molecular energy calculation device 10 has a communication interface 10a, an HDD (Hard Disk Drive) 10b, memory 10c, and a processor 10d. Furthermore, these components shown in Figure 11 are interconnected by a bus or the like.

[0076] The communication interface 10a is a network interface card or the like, and communicates with other information processing devices. The HDD 10b stores programs and data that operate the various functions of the molecular energy calculation device 10, for example.

[0077] The processor 10d can be a CPU, MPU (Micro Processing Unit), GPU (Graphics Processing Unit), etc. Alternatively, the processor 10d may be implemented using an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or FPGA (Field Programmable Gate Array). For example, the processor 10d reads a program that performs processing similar to that shown in Figure 5 from the HDD 10b and loads it into memory 10c. This allows the processor 10d to operate as a hardware circuit that executes processes to realize each function of the molecular energy calculation device 10.

[0078] Furthermore, the molecular energy calculation device 10 reads a program from the recording medium using a media reader, for example, that performs the same processing as the processing units shown in Figure 5. The molecular energy calculation device 10 can then realize the same functions as the embodiments described above by executing the read program. It should be noted that the program is not limited to being executed by the molecular energy calculation device 10. For example, the program may be executed by another information processing device, or it may be executed in cooperation with the molecular energy calculation device 10.

[0079] Furthermore, the program may be distributed via a network such as the Internet. The program may also be recorded on a computer-readable storage medium such as a hard disk, flexible disk (FD), CD-ROM, MO (Magneto-Optical disk), or DVD (Digital Versatile Disc). The program may then be executed by being read from the storage medium by a molecular energy calculation device 10 or the like.

[0080] The following additional information is disclosed regarding embodiments including those described above.

[0081] (Note 1) Divide the molecule into multiple fragments, For each of the aforementioned fragments, a first eigenvalue is calculated for each of the bus trajectories included in the fragment. Based on the first eigenvalues, a second value is calculated for each of the bus trajectories. Sort the second values ​​in descending order and derive the cumulative distribution function of the second values. The number of bus trajectories in which the cumulative probability of the cumulative distribution function exceeds a predetermined threshold is determined. Select the bus tracks corresponding to the aforementioned second values, starting with the largest values ​​of the second values ​​sorted in descending order, The energy of the molecule is calculated using the selected bus orbital. A molecular energy calculation program characterized by having a computer perform the processing.

[0082] (Note 2) The process of dividing into multiple fragments is: The molecule is divided into multiple fragments using DMET (Density Matrix Embedding Theory) or ABE (Atom-Based Bootstrap Embedding). A molecular energy calculation program as described in Appendix 1, characterized by including processing.

[0083] (Note 3) The process for calculating the second value is as follows: Based on the first eigenvalue, the second value, which indicates the proximity to a numerical value 1, one of the eigenvalues ​​for the bus trajectory, is calculated. A molecular energy calculation program according to Appendix 1 or 2, characterized by including processing.

[0084] (Note 4) The process for calculating the first eigenvalue is as follows: For each of the aforementioned fragments, calculate the first eigenvalue, which is a numerical value between 0 and 2. Including processing, The process for calculating the second value indicating proximity to the aforementioned numerical value 1 is as follows: Let the first eigenvalue be λ, and use the function "min(2-λ,λ)" to calculate the second value indicating the proximity to the numerical value 1. A molecular energy calculation program as described in Appendix 3, characterized by including processing.

[0085] (Appendix 5) The computer mentioned above, Using a first method of quantum chemical calculation, the Hamiltonian of the entire molecule is calculated, and a one-electron density matrix representing the electronic state of the entire molecule is generated. Execute the process, The process for calculating the first eigenvalue is as follows: For each of the aforementioned fragments, a submatrix corresponding to the bus orbit is extracted from the single-electron density matrix, The extracted submatrix is ​​diagonalized, and the first eigenvalue is calculated for each fragment. A molecular energy calculation program according to Appendix 1 or 2, characterized by including processing.

[0086] (Note 6) The process for calculating the energy of the molecule is as follows: The energy of the molecule is calculated using a second quantum chemical calculation method, which is more accurate than the first method, and the selected bus orbital. A molecular energy calculation program as described in Appendix 5, characterized by including processing.

[0087] (Note 7) Divide the molecule into multiple fragments, For each of the aforementioned fragments, a first eigenvalue is calculated for each of the bus trajectories included in the fragment. Based on the first eigenvalues, a second value is calculated for each of the bus trajectories. Sort the second values ​​in descending order and derive the cumulative distribution function of the second values. The number of bus trajectories in which the cumulative probability of the cumulative distribution function exceeds a predetermined threshold is determined. Select the bus tracks corresponding to the aforementioned second values, starting with the largest values ​​of the second values ​​sorted in descending order, The energy of the molecule is calculated using the selected bus orbital. A molecular energy calculation device characterized by having a control unit that performs processing.

[0088] (Note 8) The process of dividing into multiple fragments is: The molecule is divided into multiple fragments using DMET (Density Matrix Embedding Theory) or ABE (Atom-Based Bootstrap Embedding). A molecular energy calculation apparatus according to Appendix 7, characterized by including processing.

[0089] (Note 9) The process for calculating the second value is as follows: Based on the first eigenvalue, the second value, which indicates the proximity to a numerical value 1, one of the eigenvalues ​​for the bus trajectory, is calculated. A molecular energy calculation apparatus according to appendix 7 or 8, characterized by including processing.

[0090] (Note 10) The process for calculating the first eigenvalue is as follows: For each of the aforementioned fragments, calculate the first eigenvalue, which is a numerical value between 0 and 2. Including processing, The process for calculating the second value indicating proximity to the aforementioned numerical value 1 is as follows: Let the first eigenvalue be λ, and use the function "min(2-λ,λ)" to calculate the second value indicating the proximity to the numerical value 1. A molecular energy calculation apparatus according to Appendix 9, characterized by including processing.

[0091] (Note 11) The control unit, Using a first method of quantum chemical calculation, the Hamiltonian of the entire molecule is calculated, and a one-electron density matrix representing the electronic state of the entire molecule is generated. Execute the process, The process for calculating the first eigenvalue is as follows: For each of the aforementioned fragments, a submatrix corresponding to the bus orbit is extracted from the single-electron density matrix, The extracted submatrix is ​​diagonalized, and the first eigenvalue is calculated for each fragment. A molecular energy calculation apparatus according to appendix 7 or 8, characterized by including processing.

[0092] (Note 12) The process for calculating the energy of the molecule is as follows: The energy of the molecule is calculated using a second quantum chemical calculation method, which is more accurate than the first method, and the selected bus orbital. A molecular energy calculation apparatus according to Appendix 11, characterized by including processing.

[0093] (Note 13) Divide the molecule into multiple fragments, For each of the aforementioned fragments, a first eigenvalue is calculated for each of the bus trajectories included in the fragment. Based on the first eigenvalues, a second value is calculated for each of the bus trajectories. Sort the second values ​​in descending order and derive the cumulative distribution function of the second values. The number of bus trajectories in which the cumulative probability of the cumulative distribution function exceeds a predetermined threshold is determined. Select the bus tracks corresponding to the aforementioned second values, starting with the largest values ​​of the second values ​​sorted in descending order, The energy of the molecule is calculated using the selected bus orbital. A method for calculating molecular energy, characterized in that the processing is performed by a computer.

[0094] (Note 14) The process of dividing into multiple fragments is: The molecule is divided into multiple fragments using DMET (Density Matrix Embedding Theory) or ABE (Atom-Based Bootstrap Embedding). A method for calculating molecular energy according to Appendix 13, characterized by including processing.

[0095] (Note 15) The process for calculating the second value is as follows: Based on the first eigenvalue, the second value, which indicates the proximity to a numerical value 1, one of the eigenvalues ​​for the bus trajectory, is calculated. A method for calculating molecular energy according to appendix 13 or 14, characterized by including a process.

[0096] (Note 16) The process for calculating the first eigenvalue is as follows: For each of the aforementioned fragments, calculate the first eigenvalue, which is a numerical value between 0 and 2. Including processing, The process for calculating the second value indicating proximity to the aforementioned numerical value 1 is as follows: Let the first eigenvalue be λ, and use the function "min(2-λ,λ)" to calculate the second value indicating the proximity to the numerical value 1. A method for calculating molecular energy according to Appendix 15, characterized by including processing.

[0097] (Note 17) The computer said above Using a first method of quantum chemical calculation, the Hamiltonian of the entire molecule is calculated, and a one-electron density matrix representing the electronic state of the entire molecule is generated. Execute the process, The process for calculating the first eigenvalue is as follows: For each of the aforementioned fragments, a submatrix corresponding to the bus orbit is extracted from the single-electron density matrix, The extracted submatrix is ​​diagonalized, and the first eigenvalue is calculated for each fragment. A method for calculating molecular energy according to appendix 13 or 14, characterized by including a process.

[0098] (Note 18) The process for calculating the energy of the molecule is as follows: The energy of the molecule is calculated using a second quantum chemical calculation method, which is more accurate than the first method, and the selected bus orbital. A method for calculating molecular energy according to Appendix 17, characterized by including processing.

[0099] (Note 19) Processor and, Memory that is operablely connected to the processor and A molecular energy calculation device equipped with, the processor is Divide the molecule into multiple fragments, For each of the aforementioned fragments, a first eigenvalue is calculated for each of the bus trajectories included in the fragment. Based on the first eigenvalues, a second value is calculated for each of the bus trajectories. Sort the second values ​​in descending order and derive the cumulative distribution function of the second values. The number of bus trajectories in which the cumulative probability of the cumulative distribution function exceeds a predetermined threshold is determined. Select the bus tracks corresponding to the aforementioned second values, starting with the largest values ​​of the second values ​​sorted in descending order, The energy of the molecule is calculated using the selected bus orbital. A molecular energy calculation device characterized by performing processing. [Explanation of symbols]

[0100] 10. Molecular energy calculation device 10a communication interface 10b HDD 10c memory 10d processor 20 Communications Department 30 Storage section 31 Circuit Information 32 Status Information 33 Fragment Information 40 Control Unit 41 Split part 42 Calculation Section 43 Decision Section 44 Output section

Claims

1. Divide the molecule into multiple fragments, For each of the aforementioned fragments, a first eigenvalue is calculated for each of the bus trajectories included in the fragment. Based on the first eigenvalues, a second value is calculated for each of the bus trajectories. The second value is sorted in descending order to derive the cumulative distribution function of the second value. The number of bus trajectories in which the cumulative probability of the cumulative distribution function exceeds a predetermined threshold is determined. Select the bus tracks corresponding to the aforementioned second values, starting with the largest second values ​​sorted in descending order, The energy of the molecule is calculated using the selected bus orbital. A molecular energy calculation program characterized by having a computer perform the processing.

2. The process of dividing into multiple fragments is as follows: The molecule is divided into multiple fragments using DMET (Density Matrix Embedding Theory) or ABE (Atom-Based Bootstrap Embedding). A molecular energy calculation program according to claim 1, characterized by including processing.

3. The process for calculating the second value is: Based on the first eigenvalue, the second value, which indicates the proximity to a numerical value 1 that is one of the eigenvalues ​​for the bus trajectory, is calculated. A molecular energy calculation program according to claim 1 or 2, characterized by including processing.

4. The process for calculating the first eigenvalue is as follows: For each of the aforementioned fragments, the first eigenvalue, which is a numerical value between 0 and 2, is calculated. Including processing, The process for calculating the second value indicating proximity to the aforementioned numerical value 1 is as follows: Let the first eigenvalue be λ, and use the function "min(2-λ,λ)" to calculate the second value indicating the proximity to the numerical value 1. A molecular energy calculation program according to claim 3, characterized by including processing.

5. To the aforementioned computer, Using a first method of quantum chemical calculation, the Hamiltonian of the entire molecule is calculated, and a one-electron density matrix representing the electronic state of the entire molecule is generated. Execute the process, The process for calculating the first eigenvalue is as follows: For each of the aforementioned fragments, a submatrix corresponding to the bus orbit is extracted from the one-electron density matrix, The extracted submatrix is ​​diagonalized, and the first eigenvalue is calculated for each fragment. A molecular energy calculation program according to claim 1 or 2, characterized by including processing.

6. The process for calculating the energy of the aforementioned molecule is: The energy of the molecule is calculated using a second quantum chemical calculation method, which is more accurate than the first method, and the selected bus orbital. The molecular energy calculation program according to claim 5, characterized by including processing.

7. Divide the molecule into multiple fragments, For each of the aforementioned fragments, a first eigenvalue is calculated for each of the bus trajectories included in the fragment. Based on the first eigenvalues, a second value is calculated for each of the bus trajectories. The second value is sorted in descending order to derive the cumulative distribution function of the second value. The number of bus trajectories in which the cumulative probability of the cumulative distribution function exceeds a predetermined threshold is determined. Select the bus tracks corresponding to the aforementioned second values, starting with the largest second values ​​sorted in descending order, The energy of the molecule is calculated using the selected bus orbital. A molecular energy calculation device characterized by having a control unit that performs processing.

8. Divide the molecule into multiple fragments, For each of the aforementioned fragments, a first eigenvalue is calculated for each of the bus trajectories included in the fragment. Based on the first eigenvalues, a second value is calculated for each of the bus trajectories. The second value is sorted in descending order to derive the cumulative distribution function of the second value. The number of bus trajectories in which the cumulative probability of the cumulative distribution function exceeds a predetermined threshold is determined. Select the bus tracks corresponding to the aforementioned second values, starting with the largest second values ​​sorted in descending order, The energy of the molecule is calculated using the selected bus orbital. A method for calculating molecular energy, characterized in that the processing is performed by a computer.

Citation Information

Patent Citations

  • Quantum chemistry calculation program, quantum chemistry calculation method, and information processing device

    JP2024158044A

  • Simulating Quantum Systems with Quantum Computation

    US20210406421A1

  • Orbital mixer machine learning method for predicting an electronic structure of an atomic system

    US20230359929A1

  • Quantum chemical calculation program, quantum chemical calculation method, and quantum chemical calculation device

    WO2022097298A1