Information processing program, and information processing method
By setting end conditions based on digit matching or variation thresholds, the method addresses the computational inefficiencies in electron density calculations, ensuring accurate and timely convergence.
Patent Information
- Application Number
- JP2024515282
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-04-14
- Publication Date
- 2025-07-09
- Estimated Expiration
- 2042-04-14
Smart Images

Figure 0007705082000001 
Figure 0007705082000002 
Figure 0007705082000003
Abstract
Description
Technical Field
[0001] The present invention relates to an information processing program and an information processing method.
Background Art
[0002] Conventionally, in the field of material development, there is a technique for calculating electron density by a numerical analysis method. The numerical analysis method is, for example, the self-consistent field method. For example, when calculating electron density by the self-consistent field method, an operation for calculating electron density using a wave function is repeated until it is determined that the electron density has converged. For example, when calculating electron density by the self-consistent field method, if the number of atoms is N, the computational complexity is O(N^3).
[0003] As prior art, for example, there is one that repeatedly calculates a value indicating the spin state of electrons contained in a substance using a value indicating a virtual magnetic field. Also, for example, there is a technique for determining convergence by comparing the result obtained in the previous calculation with the result calculated this time for energy and the one-electron reduced density matrix. Also, for example, in the self-consistent field method, there is a technique for making an end determination based on a comparison between the total energy value and a convergence determination value.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Patent Document 2
Patent Document 3
Summary of the Invention
Problems to be Solved by the Invention
[0005] However, in the prior art, there is a problem that the amount of calculation increases when calculating the electron density by a numerical analysis method. For example, when calculating the electron density by the self-consistent field method, it is difficult to determine that the electron density has converged, and the number of times of repeating the calculation may increase, resulting in an increase in the amount of calculation.
[0006] In one aspect, an object of the present invention is to suppress an increase in the amount of calculation.
Means for Solving the Problems
[0007] According to one embodiment, an information processing program and an information processing method are proposed, in which a specific operation for calculating a solution of a parameter using a function is repeatedly performed until the number of upper digits where the values match between a characteristic value corresponding to the previously calculated solution of the parameter and a characteristic value corresponding to the currently calculated solution of the parameter becomes equal to or greater than a threshold value.
[0008] Also, according to one embodiment, an information processing program and an information processing method are proposed, in which a specific operation for calculating a solution of a parameter using a function is repeatedly performed until the degree of variation between the difference between the previously calculated solution of the parameter and the solution of the parameter calculated the time before last and the difference between the currently calculated solution of the parameter and the previously calculated solution of the parameter becomes equal to or less than a threshold value.
Effects of the Invention
[0009] According to one aspect, it becomes possible to suppress an increase in the amount of calculation.
Brief Description of the Drawings
[0010]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Embodiments for Carrying Out the Invention
[0011] Hereinafter, with reference to the drawings, embodiments of the information processing program and the information processing method according to the present invention will be described in detail.
[0012] (An Example of the Information Processing Method According to the Embodiment) FIG. 1 is an explanatory diagram showing an example of the information processing method according to the embodiment. The information processing apparatus 100 is a computer for suppressing an increase in the amount of calculation involved in numerical calculation. The information processing apparatus 100 is, for example, a server or a PC (Personal Computer).
[0013] The numerical calculation corresponds to, for example, an iterative solution method. The iterative solution method is a method of repeatedly performing a specific operation until it is determined that the solution has converged. Convergence is, for example, a state where the difference between the previously calculated solution and the currently calculated solution is equal to or less than a threshold value. Specifically, the numerical calculation corresponds to the self-consistent field method. The self-consistent field method involves repeatedly performing a specific operation of calculating the electron density at each point in space using a wave function until it is determined that the electron density has converged. Convergence is, for example, a state where the difference between the previously calculated electron density and the currently calculated electron density is equal to or less than a threshold value.
[0014] The self-consistent field method is considered to be used, for example, in the field of material development when calculating the electron density. Specifically, in the field of material development, the self-consistent field method is used to accumulate material data by calculating the electron density according to the density functional theory for materials informatics aiming at shortening research institutions. For the density functional theory, reference can be made to, for example, the following Reference 1.
[0015] Reference 1: Takao Tokita, and Eiko Shimojima. "Fundamentals of the Density Functional Method." Book 11 (2012): 12.
[0016] Here, the larger the scale of the problem to be calculated, the greater the tendency for the amount of calculation required for the numerical calculation to increase. For example, when calculating the electron density, the larger the number of atoms, the greater the tendency for the amount of calculation required for the self-consistent field method to increase. Furthermore, depending on the problem to be calculated, the time required until it is determined that the solution has converged may become longer, leading to an increase in the number of times a specific operation is performed and an increase in the amount of calculation.
[0017] Specifically, in the self-consistent field method, when a predetermined condition is satisfied, it leads to an increase in the number of times of repeating a specific operation of calculating the electron density at each point in space. The predetermined condition is that the total electron energy transitions to a state of minute fluctuation.
[0018] Specifically, the predetermined condition is that there is a point in space where the degree of influence on the total electronic energy is relatively small, and the electron density at that point becomes difficult to converge. Specifically, the predetermined condition is that there is a point in space where the fluctuation rate of the difference between the previously calculated electron density and the currently calculated electron density is relatively small, and the electron density at that point becomes difficult to converge.
[0019] Therefore, in this embodiment, an information processing method capable of suppressing an increase in the amount of calculation for numerical calculation will be described. In the following description, the self-collisionless field method may be referred to as the "SCF (Self Consistent Field) method".
[0020] In FIG. 1, the information processing apparatus 100 stores a function 101 that can calculate a parameter. The parameter is, for example, an electron density. The function 101 is, for example, the Kohn-Sham equation that can derive a one-electron wave function that can calculate the parameter.
[0021] (1-1) The information processing apparatus 100 sets an end condition. The information processing apparatus 100 sets, as an end condition, a condition A indicating that the number of upper digits where the values match between the characteristic value corresponding to the solution of the parameter calculated last time and the characteristic value corresponding to the solution of the parameter calculated this time is equal to or greater than a threshold value a. The characteristic value is, for example, the total electronic energy. The characteristic value may be, for example, the parameter itself. The characteristic value may be, for example, the electron density itself.
[0022] The information processing apparatus 100 sets, as an end condition, a condition B indicating that the degree of variation between the difference between the solution of the parameter calculated last time and the solution of the parameter calculated the time before last and the difference between the solution of the parameter calculated this time and the solution of the parameter calculated last time is equal to or less than a threshold value b. The information processing apparatus 100 may set only one of condition A and condition B as the end condition. The information processing apparatus 100 may set both condition A and condition B as the end condition. The information processing apparatus 100 may further set, as an end condition, a condition C indicating that the difference between the solution of the parameter calculated last time and the solution of the parameter calculated this time is equal to or less than a threshold value c.
[0023] (1-2) The information processing apparatus 100 repeatedly performs a specific operation of calculating the solution of the parameter using the function 101 until the end condition is satisfied. Specifically, the specific operation is a series of operations of calculating the solution of the parameter using the function 101 based on the solution of the parameter calculated last time. For example, the information processing apparatus 100 sets an initial value of the parameter and calculates the first solution of the parameter using the function 101. Thereafter, the information processing apparatus 100 repeatedly performs a series of operations of calculating the solution of the parameter using the function 101 based on the solution of the parameter calculated last time until the end condition is satisfied.
[0024] (1-3) When the information processing apparatus 100 satisfies condition A, it does not repeat the specific operation and outputs the solution of the parameter calculated this time. The output format is, for example, display on a display, print output to a printer, transmission to an external device via a network I / F, or storage in a storage area. For example, the information processing apparatus 100 outputs the solution of the parameter calculated this time so that the user can refer to it. Thereby, the information processing apparatus 100 can suppress an increase in the amount of calculation. For example, even if there are points in the space where the degree of influence on the total electronic energy is relatively small, the information processing apparatus 100 can suppress an increase in the number of times of repeating the specific operation.
[0025] When the information processing apparatus 100 satisfies condition B, it does not repeat a specific operation and outputs a notification that the parameter has not converged. For example, the information processing apparatus 100 outputs the notification that the parameter has not converged so that the user can refer to it. Thereby, the information processing apparatus 100 can suppress an increase in the amount of calculation. For example, the information processing apparatus 100 can prevent the amount of calculation from becoming extremely large while the parameter remains unconverged when there is a point in the space where the rate of change of the difference between the previously calculated electron density and the currently calculated electron density is relatively small.
[0026] When the information processing apparatus 100 satisfies condition C, it does not repeat a specific operation and outputs the solution of the parameter calculated this time. For example, the information processing apparatus 100 outputs the solution of the parameter calculated this time so that the user can refer to it. Thereby, the information processing apparatus 100 can suppress an increase in the amount of calculation. The information processing apparatus 100 can make available the solution of the parameter with relatively good accuracy. Thus, the information processing apparatus 100 can suppress an increase in the amount of calculation and can suppress an increase in the calculation time and the calculation load.
[0027] Here, the case where the information processing apparatus 100 operates alone has been described, but it is not limited to this. For example, a plurality of computers may cooperate to realize the function as the information processing apparatus 100. Specifically, a specific operation may be distributedly processed by a plurality of computers. A specific example of the case where a plurality of computers cooperate will be described later with reference to FIG. 2, for example. For example, the function as the information processing apparatus 100 may be implemented on the cloud.
[0028] (An example of the information processing system 200) Next, an example of the information processing system 200 to which the information processing apparatus 100 shown in FIG. 1 is applied will be described with reference to FIG. 2.
[0029] FIG. 2 is an explanatory diagram showing an example of the information processing system 200. In FIG. 2, the information processing system 200 includes an information processing apparatus 100, a numerical calculation apparatus 201, and a client apparatus 202.
[0030] In the information processing system 200, the information processing apparatus 100 and the client apparatus 202 are connected via a wired or wireless network 210. The network 210 is, for example, a LAN (Local Area Network), a WAN (Wide Area Network), the Internet, or the like. In the information processing system 200, the information processing apparatus 100 and the numerical calculation apparatus 201 are connected via a wired or wireless network 210.
[0031] The information processing apparatus 100 is a computer that manages numerical calculations. The information processing apparatus 100, for example, receives a calculation instruction from the client apparatus 202. The calculation instruction specifies a problem to be calculated. The information processing apparatus 100 sets an end condition. The information processing apparatus 100 repeatedly performs a specific operation until the end condition is satisfied in response to the calculation instruction.
[0032] The information processing apparatus 100, for example, sets an initial value of the electron density, and calculates a first solution of the electron density using a one-electron wave function derived by solving the Kohn-Sham equation based on the initial value. Thereafter, the information processing apparatus 100 repeatedly performs a series of operations of calculating the solution of the electron density using a one-electron wave function derived by solving the Kohn-Sham equation based on the previously calculated solution of the electron density until the end condition is satisfied.
[0033] Here, for example, the information processing apparatus 100 may perform distributed processing of the operation of calculating the solution of the electron density with the numerical calculation apparatus 201. When the end condition is satisfied and the solution of the electron density has converged, the information processing apparatus 100 transmits the solution of the electron density to the client apparatus 202. When the end condition is satisfied and the solution of the electron density has not converged, the information processing apparatus 100 transmits a notification of non-convergence to the client apparatus 202. The information processing apparatus 100 is, for example, a server or a PC.
[0034] The numerical calculation apparatus 201 is a computer that shares the operation of calculating the solution of the electron density. The numerical calculation apparatus 201 is, for example, a server or a PC. The client apparatus 202 is a computer that transmits a calculation instruction to the information processing apparatus 100 based on a user's operation input. When the client apparatus 202 receives the solution of the electron density from the information processing apparatus 100, it outputs the solution so that the user can refer to it. When the client apparatus 202 receives a notification of non-convergence from the information processing apparatus 100, it outputs the notification so that the user can refer to it. The client apparatus 202 is, for example, a PC, a tablet terminal, or a smartphone.
[0035] In the following description, the case where the information processing apparatus 100 operates alone will be mainly described.
[0036] (Example of the hardware configuration of the information processing apparatus 100) Next, with reference to FIG. 3, an example of the hardware configuration of the information processing apparatus 100 will be described.
[0037] FIG. 3 is a block diagram showing an example of the hardware configuration of the information processing apparatus 100. In FIG. 3, the information processing apparatus 100 includes a CPU (Central Processing Unit) 301, a memory 302, a network I / F (Interface) 303, a recording medium I / F 304, and a recording medium 305. Each component is connected by a bus 300.
[0038] Here, the CPU 301 controls the entire information processing apparatus 100. The memory 302 has, for example, a ROM (Read Only Memory), a RAM (Random Access Memory), and a flash ROM. Specifically, for example, the flash ROM and the ROM store various programs, and the RAM is used as the work area of the CPU 301. The programs stored in the memory 302 are loaded into the CPU 301 to cause the CPU 301 to execute the coded processing.
[0039] The network I / F 303 is connected to the network 210 through a communication line and is connected to other computers via the network 210. Then, the network I / F 303 manages the interface between the network 210 and the inside and controls the input / output of data from other computers. The network I / F 303 is, for example, a modem or a LAN adapter.
[0040] The recording medium I / F 304 controls the read / write of data with respect to the recording medium 305 according to the control of the CPU 301. The recording medium I / F 304 is, for example, a disk drive, an SSD (Solid State Drive), a USB (Universal Serial Bus) port, or the like. The recording medium 305 is a non-volatile memory that stores the data written under the control of the recording medium I / F 304. The recording medium 305 is, for example, a disk, a semiconductor memory, a USB memory, or the like. The recording medium 305 may be detachable from the information processing apparatus 100.
[0041] In addition to the components described above, the information processing apparatus 100 may have, for example, a keyboard, a mouse, a display, a printer, a scanner, a microphone, a speaker, and the like. Also, the information processing apparatus 100 may have a plurality of recording medium I / Fs 304 and recording media 305. Further, the information processing apparatus 100 may not have the recording medium I / F 304 and the recording medium 305.
[0042] (Functional configuration example of the information processing apparatus 100) Next, with reference to FIG. 4, a functional configuration example of the information processing apparatus 100 will be described.
[0043] FIG. 4 is a block diagram showing a functional configuration example of the information processing apparatus 100. The information processing apparatus 100 includes a storage unit 400, an acquisition unit 401, a setting unit 402, an arithmetic unit 403, a determination unit 404, and an output unit 405.
[0044] The storage unit 400 is realized by a storage area such as the memory 302 and the recording medium 305 shown in FIG. 3, for example. Hereinafter, the case where the storage unit 400 is included in the information processing apparatus 100 will be described, but it is not limited thereto. For example, the storage unit 400 may be included in a device different from the information processing apparatus 100, and the stored content of the storage unit 400 may be referable from the information processing apparatus 100.
[0045] The acquisition unit 401 to the output unit 405 function as an example of a control unit. Specifically, the acquisition unit 401 to the output unit 405 realize their functions by causing the CPU 301 to execute a program stored in a storage area such as the memory 302 and the recording medium 305 shown in FIG. 3, or by the network I / F 303. The processing result of each functional unit is stored in a storage area such as the memory 302 and the recording medium 305 shown in FIG. 3, for example.
[0046] The storage unit 400 stores various information that is referred to or updated in the processing of each functional unit. The storage unit 400 stores a function for calculating a solution of a parameter. The parameter is, for example, an electron density. The function is, for example, the Kohn-Sham equation that enables derivation of a one-electron wave function that enables calculation of the parameter.
[0047] The acquisition unit 401 acquires various types of information used in the processing of each functional unit. The acquisition unit 401 stores the acquired various types of information in the storage unit 400 or outputs it to each functional unit. Also, the acquisition unit 401 may output the various types of information stored in the storage unit 400 to each functional unit. The acquisition unit 401 acquires various types of information, for example, based on the operation input of the user. The acquisition unit 401 may receive various types of information from a device different from the information processing apparatus 100, for example.
[0048] The acquisition unit 401 acquires, for example, a calculation instruction. The calculation instruction includes information for specifying a problem to be calculated, for example. Specifically, the acquisition unit 401 receives an input of a calculation instruction based on the operation input of the user. Specifically, the acquisition unit 401 acquires it by receiving a calculation instruction from another computer.
[0049] The acquisition unit 401 may receive a start trigger for starting the processing of any functional unit. The start trigger is, for example, that there has been a predetermined operation input by the user. The start trigger may be, for example, that predetermined information has been received from another computer. The start trigger may be, for example, that any functional unit has output predetermined information.
[0050] Specifically, the acquisition unit 401 receives the acquisition of a calculation instruction as a start trigger for starting the processing of the setting unit 402, the calculation unit 403, and the determination unit 404.
[0051] The setting unit 402 sets an end condition for the repetition of a specific calculation. The specific calculation is, for example, a series of calculations for calculating a solution of a parameter using a function. The specific calculation is, for example, a series of calculations for calculating a solution of a parameter using a function based on the solution of the parameter calculated last time. Specifically, the specific calculation corresponds to the SCF method.
[0052] The setting unit 402 sets an end condition A indicating that the number of upper digits where the values match between, for example, the characteristic value corresponding to the solution of the parameter calculated last time and the characteristic value corresponding to the solution of the parameter calculated this time is equal to or greater than a first threshold value. The first threshold value is, for example, set in advance by the user. The characteristic value is, for example, the total electronic energy. The number of digits is, for example, when the characteristic value corresponding to the solution of the parameter calculated last time is "5678" and the characteristic value corresponding to the solution of the parameter calculated this time is "5679", since the three values of "567" from the upper digits match, it is "3".
[0053] Also, the number of digits is, for example, when the characteristic value corresponding to the solution of the parameter calculated last time is "1234" and the characteristic value corresponding to the solution of the parameter calculated this time is "123.4", since the values existing in the same digits from the upper digits do not match, it is "0". Thereby, the setting unit 402 can set a guideline for reducing the calculation amount. The setting unit 402 can, for example, make it possible to detect that the solution of the parameter has been calculated accurately.
[0054] The setting unit 402 sets an end condition B indicating that the difference between the solution of the parameter calculated last time and the solution of the parameter calculated this time is equal to or less than a second threshold value. The second threshold value is, for example, a threshold value different from the first threshold value. The second threshold value is, for example, set in advance by the user. Thereby, the setting unit 402 can set a guideline for reducing the calculation amount. The setting unit 402 can, for example, make it possible to detect that the solution of the parameter has been calculated accurately.
[0055] The setting unit 402 sets an end condition C indicating that the degree of variation between the difference between the solution of the parameter calculated last time and the solution of the parameter calculated the time before last time and the difference between the solution of the parameter calculated this time and the solution of the parameter calculated last time is equal to or less than a third threshold value. The third threshold value is, for example, a threshold value different from the first threshold value and the second threshold value. The third threshold value is, for example, set in advance by the user. Thereby, the setting unit 402 can set a guideline for reducing the calculation amount. The setting unit 402 can, for example, be made capable of detecting that the solution of the parameter has not converged.
[0056] Specifically, the setting unit 402 sets at least one of the end condition A and the end condition C. Specifically, the setting unit 402 may set all of the end condition A, the end condition B, and the end condition C. Specifically, the setting unit 402 may set any two of the end condition A, the end condition B, and the end condition C.
[0057] The calculation unit 403 repeatedly performs a specific calculation. For example, the calculation unit 403 repeatedly performs a specific calculation until the end condition A is satisfied. Specifically, the calculation unit 403 calculates the solution of the parameter using a function based on the initial value of the parameter. Thereafter, specifically, the calculation unit 403 repeatedly performs a specific calculation of calculating the solution of the parameter using a function based on the solution of the parameter calculated last time until the end condition A is satisfied. Thereby, the calculation unit 403 can accurately calculate the solution of the parameter. The calculation unit 403 can suppress an increase in the calculation amount.
[0058] For example, the calculation unit 403 repeatedly performs a specific calculation until the end condition C is satisfied. Specifically, the calculation unit 403 calculates the solution of the parameter using a function based on the initial value of the parameter. Thereafter, specifically, the calculation unit 403 repeatedly performs a specific calculation of calculating the solution of the parameter using a function based on the solution of the parameter calculated last time until the end condition C is satisfied. Thereby, the calculation unit 403 can make it easier to detect relatively early that the solution of the parameter has not converged. The calculation unit 403 can suppress an increase in the calculation amount.
[0059] The calculation unit 403 may, for example, repeatedly perform a specific calculation until at least one of the end condition A or the end condition B is satisfied. Specifically, the calculation unit 403 calculates the solution of the parameter using a function based on the initial value of the parameter. Thereafter, the calculation unit 403 specifically repeatedly performs a specific calculation for calculating the solution of the parameter using a function based on the previously calculated solution of the parameter until at least one of the end condition A or the end condition B is satisfied. Thereby, the calculation unit 403 can accurately calculate the solution of the parameter. The calculation unit 403 can suppress an increase in the amount of calculation.
[0060] The calculation unit 403 may, for example, repeatedly perform a specific calculation until at least one of the end condition C or the end condition B is satisfied. Specifically, the calculation unit 403 calculates the solution of the parameter using a function based on the initial value of the parameter. Thereafter, the calculation unit 403 specifically repeatedly performs a specific calculation for calculating the solution of the parameter using a function based on the previously calculated solution of the parameter until at least one of the end condition C or the end condition B is satisfied. Thereby, the calculation unit 403 can accurately calculate the solution of the parameter. The calculation unit 403 can more easily detect at an earlier stage that the solution of the parameter has not converged. The calculation unit 403 can suppress an increase in the amount of calculation.
[0061] The calculation unit 403 may, for example, repeatedly perform a specific calculation until at least one of the end condition A or the end condition C is satisfied. Specifically, the calculation unit 403 calculates the solution of the parameter using a function based on the initial value of the parameter. Thereafter, specifically, the calculation unit 403 repeatedly performs a specific calculation for calculating the solution of the parameter using a function based on the solution of the parameter calculated last time until at least one of the end condition A or the end condition C is satisfied. Thereby, the calculation unit 403 can accurately calculate the solution of the parameter. The calculation unit 403 can easily detect relatively early that the solution of the parameter has not converged. The calculation unit 403 can suppress an increase in the amount of calculation.
[0062] The calculation unit 403 may, for example, repeatedly perform a specific calculation until at least one of the end condition A, the end condition B, or the end condition C is satisfied. Specifically, the calculation unit 403 calculates the solution of the parameter using a function based on the initial value of the parameter. Thereafter, specifically, the calculation unit 403 repeatedly performs a specific calculation for calculating the solution of the parameter using a function based on the solution of the parameter calculated last time until at least one of the end condition A, the end condition B, or the end condition C is satisfied. Thereby, the calculation unit 403 can accurately calculate the solution of the parameter. The calculation unit 403 can easily detect relatively early that the solution of the parameter has not converged. The calculation unit 403 can suppress an increase in the amount of calculation.
[0063] The determination unit 404 determines whether or not the solution of the parameter has converged. When the end condition A is satisfied, the determination unit 404 determines that the solution of the parameter has converged. When the end condition B is satisfied, the determination unit 404 determines that the solution of the parameter has converged. When the end condition C is satisfied, the determination unit 404 determines that the solution of the parameter has not converged.
[0064] The output unit 405 outputs the processing result of at least any one of the functional units. The output format is, for example, display on a display, print output to a printer, transmission to an external device via the network I / F 303, or storage in a storage area such as the memory 302 or the recording medium 305. Thereby, the output unit 405 can notify the user of the processing result of at least any one of the functional units, and can improve the convenience of the information processing apparatus 100.
[0065] For example, when the end condition A is satisfied, the output unit 405 outputs the solution of the parameter calculated this time. Specifically, the output unit 405 outputs the solution of the parameter so that the user can refer to it. Thereby, the output unit 405 can make the solution of the parameter with relatively high accuracy available.
[0066] For example, when the end condition B is satisfied, the output unit 405 outputs the solution of the parameter calculated this time. Specifically, the output unit 405 outputs the solution of the parameter so that the user can refer to it. Thereby, the output unit 405 can make the solution of the parameter with relatively high accuracy available.
[0067] For example, when the end condition C is satisfied, the output unit 405 outputs a notification indicating that the solution of the parameter has not converged. Specifically, the output unit 405 outputs a notification indicating that the solution of the parameter has not converged so that the user can refer to it. Thereby, the output unit 405 can enable the user to grasp that the solution of the parameter has not converged.
[0068] (Operation Example 1 of Information Processing Apparatus 100) Next, with reference to FIG. 5, operation example 1 of the information processing apparatus 100 will be described. Operation example 1 corresponds to the case where the information processing apparatus 100 uses at least the above-described end condition C.
[0069] FIG. 5 is an explanatory diagram showing operation example 1 of the information processing apparatus 100. In FIG. 5, the information processing apparatus 100 repeatedly performs a specific calculation for calculating the electron density ρ(r) at each point in space in a predetermined situation setting according to the SCF method.
[0070] In the following description, the electron density ρ(r) calculated for the x-th time may be denoted as "electron density ρ x (r)". Also, in the following description, for the sake of simplicity of explanation, the electron density ρ(r) may be shown for the electron density ρ(r) at any point in space.
[0071] The information processing apparatus 100 sets an end condition, for example. The end condition includes, for example, that when the electron density ρ n (r) is calculated, the difference fluctuation rate between the difference Δρ n-1 (r) between the electron density ρ n-2 (r) and the electron density ρ n-1 (r), and the difference Δρ n (r) between the electron density ρ n-1 (r) and the electron density ρ n (r) is equal to or less than a threshold value DTH. DTH is, for example, 5 [%].
[0072] For example, the difference Δρ n-1 (r) = electron density ρ n-2 (r) - electron density ρ n-1 (r). For example, the difference Δρ n (r) = electron density ρ n-1 (r) - electron density ρ n (r). The difference fluctuation rate is (difference Δρ n (r) - difference Δρ n-1 (r)) / difference Δρ n-1 (r). Specifically, when there are a plurality of points in space, the end condition includes that the difference fluctuation rate at all points is equal to or less than the threshold value DTH.
[0073] The end condition may further include that the difference Δρ n (r) between the electron density ρ n-1 (r) and the electron density ρ n (r) is equal to or less than the Δρ tolerance value. Specifically, when there are a plurality of points in space, the end condition may include that the difference Δρ n (r) at all points is equal to or less than the Δρ tolerance value.
[0074] The information processing apparatus 100, when calculating the n-th electron density ρ n (r), if the differential fluctuation rate is equal to or less than the threshold value DTH, ends the repetition of a specific calculation and determines that the electron density ρ n (r) is unconverged. When the information processing apparatus 100 determines that the electron density ρ n (r) is unconverged, it outputs a notification indicating that the electron density ρ n (r) is unconverged so that the user can refer to it.
[0075] The information processing apparatus 100, when calculating the n-th electron density ρ n (r), if the difference Δρ n (r) is equal to or less than the Δρ tolerance value, ends the repetition of a specific calculation and determines that the electron density ρ n (r) has converged. When the information processing apparatus 100 determines that the electron density ρ n (r) has converged, it outputs the electron density ρ n (r) so that the user can refer to it.
[0076] In addition, when the number of times n reaches the upper limit, the information processing apparatus 100 may end the repetition of a specific calculation and determine that the electron density ρ n (r) is unconverged.
[0077] On the other hand, the conventional method adopts, as an end condition, that the difference Δρ n (r) between the electron density ρ n-1 (r) and the electron density ρ n (r) is equal to or less than the Δρ tolerance value. Therefore, the conventional method continuously repeats a specific calculation until the number of times n reaches the upper limit unless the difference Δρ n (r) becomes equal to or less than the Δρ tolerance value.
[0078] Graph 500 shows a characteristic curve 501 representing the correspondence between the number of times n of repeating a specific calculation and the difference Δρ n (r) with respect to the conventional method. As shown in Graph 500, the conventional method has the electron density ρ nIf the situation is such that (r) has difficulty converging, a specific operation will continue to be repeatedly performed until the number of times n reaches the upper limit, leading to an increase in the amount of calculation. In the conventional method, if there is no upper limit set for the number of times n, it will fall into an infinite loop.
[0079] On the other hand, Graph 510 shows a characteristic curve 511 representing the correspondence between the number of times n that a specific operation is repeated and the differential fluctuation rate for the information processing apparatus 100. As shown in Graph 510, the information processing apparatus 100 has an electron density ρ n Even in a situation where (r) has difficulty converging, at the number of times n = a, it is possible to relatively early determine that the electron density ρ n (r) is not converged, and it is possible to end the repetition of the specific operation. For this reason, the information processing apparatus 100 can suppress an increase in the amount of calculation.
[0080] Here, the case where the information processing apparatus 100 is applied to the problem of calculating the electron density ρ(r) has been described, but it is not limited to this. For example, the information processing apparatus 100 may be applied to other problems other than the problem of calculating the electron density ρ(r). Here, the case where the information processing apparatus 100 realizes the SCF method has been described, but it is not limited to this. For example, the information processing apparatus 100 may realize an iterative solution method other than the SCF method.
[0081] (Overall processing procedure in Operation Example 1) Next, an example of the overall processing procedure in Operation Example 1 executed by the information processing apparatus 100 will be described with reference to FIG. 6. The overall processing is realized, for example, by the CPU 301 shown in FIG. 3, a storage area such as the memory 302 and the recording medium 305, and the network I / F 303.
[0082] FIG. 6 is a flowchart showing an example of the overall processing procedure in Operation Example 1. In FIG. 6, the information processing apparatus 100 sets an end condition using the variation value of the difference (step S601). Next, the information processing apparatus 100 performs the SCF method (step S602). Then, if the solution of the electron density has converged, the information processing apparatus 100 outputs the solution of the electron density and the total electron energy, and if the solution of the electron density has not converged, the information processing apparatus 100 outputs a notification indicating non-convergence (step S603).
[0083] In step S603, specifically, when there are a plurality of points in the space, if the solutions of the electron densities at all the points have converged, the information processing apparatus 100 outputs the solutions of the electron densities at the respective points and the total electron energy. Specifically, when there are a plurality of points in the space, if the solution of the electron density at at least any one of the points has not converged, the information processing apparatus 100 outputs a notification indicating non-convergence. After that, the information processing apparatus 100 ends the overall processing.
[0084] (Calculation Processing Procedure in Operation Example 1) Next, an example of the calculation processing procedure in Operation Example 1 executed by the information processing apparatus 100 will be described with reference to FIG. 7. The calculation processing is realized by, for example, the CPU 301 shown in FIG. 3, a storage area such as the memory 302 and the recording medium 305, and the network I / F 303.
[0085] FIG. 7 is a flowchart showing an example of the calculation processing procedure in Operation Example 1. In FIG. 7, the information processing apparatus 100 sets the electron density ρ(r) (step S701). When there are a plurality of points in the space, for example, the information processing apparatus 100 sets the electron density ρ(r) at each point. For example, if it is the first setting, the information processing apparatus 100 sets the initial value of the electron density ρ(r), and if it is the second or subsequent setting, the information processing apparatus 100 sets the electron density ρ(r) by some method.
[0086] Next, the information processing apparatus 100 solves the Kohn-Sham equation based on the electron density ρ(r) and derives the one-electron wave function φi(r) (step S702). For example, when there are a plurality of points in space, the information processing apparatus 100 derives the one-electron wave function φi(r) for each point. Then, the information processing apparatus 100 calculates the electron density ρ’(r) using the one-electron wave function φi(r) (step S703). For example, when there are a plurality of points in space, the information processing apparatus 100 calculates the electron density ρ’(r) for each point.
[0087] Next, the information processing apparatus 100 calculates the difference Δρ(r) = electron density ρ(r) - electron density ρ’(r) (step S704). Then, the information processing apparatus 100 calculates the difference variation rate = (the current difference Δρ(r) - the previous difference Δρ(r)) / the previous difference Δρ(r) (step S705). For example, when there are a plurality of points in space, the information processing apparatus 100 calculates the difference Δρ(r) and the difference variation rate for each point.
[0088] Next, the information processing apparatus 100 determines whether the difference Δρ(r) ≤ the allowable value of Δρ (step S706). For example, when there are a plurality of points in space, the information processing apparatus 100 determines whether the difference Δρ(r) ≤ the allowable value of Δρ for all points.
[0089] Here, when the difference Δρ(r) ≤ the allowable value of Δρ (step S706: Yes), the information processing apparatus 100 determines that the electron density ρ(r) has converged, outputs the electron density ρ(r), and ends the arithmetic processing. For example, when there are a plurality of points in space, if the difference Δρ(r) ≤ the allowable value of Δρ for all points, the information processing apparatus 100 ends the arithmetic processing.
[0090] On the other hand, when the difference Δρ(r) > the allowable value of Δρ (step S706: No), the information processing apparatus 100 proceeds to the process of step S707. For example, when there are a plurality of points in space, if the difference Δρ(r) > the allowable value of Δρ for at least any one point, the information processing apparatus 100 proceeds to the process of step S707.
[0091] In step S707, the information processing apparatus 100 determines whether the differential fluctuation rate ≤ DTH (step S707). For example, when there are a plurality of points in the space, the information processing apparatus 100 determines whether the difference Δρ(r) at at least any one of the points is ≤ the allowable value of Δρ.
[0092] Here, when the differential fluctuation rate ≤ DTH (step S707: Yes), the information processing apparatus 100 determines that the electron density ρ(r) is unconverged, outputs a notification of unconvergence, and ends the arithmetic processing. For example, when there are a plurality of points in the space, if the differential fluctuation rate at at least any one of the points is ≤ DTH, the information processing apparatus 100 ends the arithmetic processing.
[0093] On the other hand, when the differential fluctuation rate > DTH (step S707: No), the information processing apparatus 100 returns to the process of step S701. For example, when there are a plurality of points in the space, if the differential fluctuation rate at all the points is > DTH, the information processing apparatus 100 returns to the process of step S701.
[0094] Here, the information processing apparatus 100 may execute by swapping the order of processing of some steps in each of the flowcharts of FIGS. 6 and 7. For example, the order of processing of steps S706 and S707 can be swapped. Further, the information processing apparatus 100 may omit the processing of some steps in each of the flowcharts of FIGS. 6 and 7. For example, the processing of step S706 can be omitted.
[0095] (Operation Example 2 of Information Processing Apparatus 100) Next, with reference to FIG. 8, operation example 2 of the information processing apparatus 100 will be described. Operation example 2 corresponds to the case where the information processing apparatus 100 uses at least the above-described end condition A.
[0096] FIG. 8 is an explanatory diagram showing operation example 2 of the information processing apparatus 100. In FIG. 8, the information processing apparatus 100 repeatedly executes a specific calculation for calculating the electron density ρ(r) at each point in the space in a predetermined situation setting according to the SCF method.
[0097] In the following description, the electron density ρ(r) calculated for the x-th time may be denoted as "electron density ρ x (r)". Also, in the following description, for the sake of simplicity of explanation, the electron density ρ(r) may be shown for the electron density ρ(r) at any point in space.
[0098] The information processing apparatus 100 sets, for example, an end condition. The end condition is, for example, when calculating the electron density ρ n (r), the number of significant digits in the total electron energy corresponding to the electron density ρ n-1 (r) and the total electron energy corresponding to the electron density ρ n (r) is equal to or greater than the threshold value SD. SD is, for example, 5 [digits].
[0099] Significant digits are a sequence of digits in the part where the values in the same consecutive digit from the upper digit match. The number of significant digits is a number indicating how many digits in which the values match when the values in the same consecutive digit from the upper digit match.
[0100] The end condition may, for example, include that when calculating the electron density ρ n (r), the number of significant digits in the past i or more consecutive times up to this time is equal to or greater than the threshold value SD. i is, for example, an integer of 2 or more.
[0101] The end condition may further include, for example, that the difference Δρ n (r) between the electron density ρ n-1 (r) and the electron density ρ n (r) is equal to or less than the Δρ tolerance value. Specifically, when there are a plurality of points in space, the end condition may include that the difference Δρ n (r) at all points is equal to or less than the Δρ tolerance value.
[0102] When the information processing apparatus 100 calculates the electron density ρ n (r) for the n-th time, if the number of significant digits is equal to or greater than SD, it ends the repetition of a specific operation and the electron density ρn Determine that (r) has converged. The information processing apparatus 100 has an electron density ρ n When it is determined that (r) has converged, the electron density ρ n (r) is output so that the user can refer to it.
[0103] When the information processing apparatus 100 calculates the electron density ρ at the n-th time n (r), if the difference Δρ n (r) is less than or equal to the Δρ tolerance value, the repetition of a specific calculation is terminated, and it is determined that the electron density ρ n (r) has converged. The information processing apparatus 100 has an electron density ρ n When it is determined that (r) has converged, the electron density ρ n (r) is output so that the user can refer to it.
[0104] In addition, when the number of times n reaches the upper limit, the information processing apparatus 100 terminates the repetition of a specific calculation, and it may be determined that the electron density ρ n (r) has not converged.
[0105] On the other hand, the conventional method adopts, as an end condition, that the difference Δρ n (r) between the electron density ρ n-1 (r) and the electron density ρ n (r) is less than or equal to the Δρ tolerance value. For this reason, the conventional method continues to repeatedly perform a specific calculation until the number of times n reaches the upper limit unless the difference Δρ n (r) becomes less than or equal to the Δρ tolerance value.
[0106] Graph 800 shows characteristic curves 801 to 803 representing the correspondence between the number of times n of repeating a specific calculation and the difference Δρ n (r i ) with respect to the point i in the space. Specifically, the characteristic curve 801 corresponds to the point i where the electron density ρ n (r i ) is relatively small. Specifically, the characteristic curve 802 corresponds to the point i where the electron density ρ n (r i ) is medium. Specifically, the characteristic curve 803 corresponds to the point i where the electron density ρ n (r icorresponds to the point i where ( ) is relatively large.
[0107] As shown in graph 800, in the conventional method, when the electron density ρ n (r i ) is relatively small and the degree of decrease in the difference Δρ n (r i ) is relatively small, the number of times n of repeating a specific operation tends to increase, leading to an increase in the amount of calculation.
[0108] On the other hand, graph 810 shows a characteristic curve 811 representing the correspondence between the number of times n of repeating a specific operation and the number of significant digits for the information processing apparatus 100. As shown in graph 810, even in a situation where the electron density ρ n (r i ) is relatively small and the degree of decrease in the difference Δρ n (r i ) is relatively small, the information processing apparatus 100 can determine relatively early that the electron density ρ n (r i ) has converged. Then, the information processing apparatus 100 can terminate the repetition of the specific operation. Therefore, the information processing apparatus 100 can suppress an increase in the amount of calculation.
[0109] Here, the case where the information processing apparatus 100 is applied to the problem of calculating the electron density ρ(r) has been described, but it is not limited to this. For example, the information processing apparatus 100 may be applied to other problems other than the problem of calculating the electron density ρ(r). Here, the case where the information processing apparatus 100 implements the SCF method has been described, but it is not limited to this. For example, the information processing apparatus 100 may implement an iterative solution method other than the SCF method.
[0110] (Overall processing procedure in operation example 2) Next, with reference to FIG. 9, an example of the overall processing procedure in Operation Example 2 executed by the information processing apparatus 100 will be described. The overall processing is realized by, for example, the CPU 301 shown in FIG. 3, storage areas such as the memory 302 and the recording medium 305, and the network I / F 303.
[0111] FIG. 9 is a flowchart showing an example of the overall processing procedure in Operation Example 2. In FIG. 9, the information processing apparatus 100 sets an end condition using physical characteristic values (step S901). Next, the information processing apparatus 100 performs the SCF method (step S902). Then, if the solution of the electron density has converged, the information processing apparatus 100 outputs the solution of the electron density and the total electron energy, and if the solution of the electron density has not converged, the information processing apparatus 100 outputs a notification indicating non-convergence (step S903).
[0112] In step S903, specifically, when there are a plurality of points in the space, if the solutions of the electron density at all the plurality of points have converged, the information processing apparatus 100 outputs the solution of the electron density at each point and the total electron energy. Specifically, when there are a plurality of points in the space, if the solution of the electron density at at least one of the points has not converged, the information processing apparatus 100 outputs a notification indicating non-convergence. After that, the information processing apparatus 100 ends the overall processing.
[0113] (Calculation Processing Procedure in Operation Example 2) Next, with reference to FIG. 10, an example of the calculation processing procedure in Operation Example 2 executed by the information processing apparatus 100 will be described. The calculation processing is realized by, for example, the CPU 301 shown in FIG. 3, storage areas such as the memory 302 and the recording medium 305, and the network I / F 303.
[0114] Figure 10 is a flowchart showing an example of an arithmetic processing procedure in Operation Example 2. In Figure 10, the information processing apparatus 100 sets the electron density ρ(r) (step S1001). For example, when there are a plurality of points in space, the information processing apparatus 100 sets the electron density ρ(r) for each point. For example, if it is the first setting, the information processing apparatus 100 sets the initial value of the electron density ρ(r), and if it is the second or subsequent setting, the information processing apparatus 100 sets the electron density ρ(r) by some method.
[0115] Next, the information processing apparatus 100 solves the Kohn-Sham equation based on the electron density ρ(r) and derives the one-electron wave function φi(r) (step S1002). For example, when there are a plurality of points in space, the information processing apparatus 100 derives the one-electron wave function φi(r) for each point. Then, the information processing apparatus 100 calculates the electron density ρ’(r) using the one-electron wave function φi(r) (step S1003). For example, when there are a plurality of points in space, the information processing apparatus 100 calculates the electron density ρ’(r) for each point.
[0116] Next, the information processing apparatus 100 calculates the difference Δρ(r) = electron density ρ(r) - electron density ρ’(r) (step S1004). For example, when there are a plurality of points in space, the information processing apparatus 100 calculates the difference Δρ(r) for each point. Then, the information processing apparatus 100 calculates the total electron energy as a physical characteristic value based on the electron density ρ’(r) (step S1005).
[0117] Next, the information processing apparatus 100 determines whether the difference Δρ(r) ≤ the allowable value of Δρ (step S1006). For example, when there are a plurality of points in space, the information processing apparatus 100 determines whether the difference Δρ(r) ≤ the allowable value of Δρ for all points.
[0118] Here, when the difference Δρ(r) ≤ the allowable value of Δρ (step S1006: Yes), the information processing apparatus 100 determines that the electron density ρ(r) has converged, outputs the electron density ρ(r), and ends the arithmetic processing. For example, when there are a plurality of points in the space, if the difference Δρ(r) of all points ≤ the allowable value of Δρ, the information processing apparatus 100 ends the arithmetic processing.
[0119] On the other hand, when the difference Δρ(r) > the allowable value of Δρ (step S1006: No), the information processing apparatus 100 proceeds to the process of step S1007. For example, when there are a plurality of points in the space, if the difference Δρ(r) of at least any one point > the allowable value of Δρ, the information processing apparatus 100 proceeds to the process of step S1007.
[0120] In step S1007, the information processing apparatus 100 determines whether the number of significant digits of the total electron energy ≥ SD (step S1007). Here, when the number of significant digits ≥ SD (step S1007: Yes), the information processing apparatus 100 determines that the electron density ρ(r) has converged, outputs the electron density ρ(r), and ends the arithmetic processing. On the other hand, when the number of significant digits ≥ SD is not satisfied (step S1007: No), the information processing apparatus 100 returns to the process of step S1001.
[0121] Here, the information processing apparatus 100 may execute by swapping the order of the processes of some steps of each flowchart in FIGS. 9 and 10. For example, the order of the processes of steps S1006 and S1007 can be swapped. Further, the information processing apparatus 100 may omit the processes of some steps of each flowchart in FIGS. 9 and 10. For example, the process of step S1006 can be omitted.
[0122] (Effect by the information processing apparatus 100) Next, an example of the effect by the information processing apparatus 100 will be described with reference to FIGS. 11 to 13.
[0123] FIG. 11 is an explanatory diagram showing a comparison example of calculation results with a conventional method. Table 1100 in FIG. 11 shows, regarding the problem of an ammonia catalyst, the calculation result of the conventional method using CP2K, calculation result 1 when SD = 5 is set using CP2K in operation example 2, and calculation result 2 when SD = 4 is set using CP2K in operation example 2. CP2K is open source software.
[0124] The conventional method calculates the total electronic energy = -7572.428. In the conventional method, the number of steps when calculating the total electronic energy = -7572.428 is 53 steps. In the conventional method, the elapsed time = calculation time when calculating the total electronic energy = -7572.428 is 383.261 s.
[0125] On the other hand, in calculation result 1, the total electronic energy = -7572.409. In calculation result 1, the number of steps when calculating the total electronic energy = -7572.409 is 37 steps. In calculation result 1, the elapsed time = calculation time when calculating the total electronic energy = -7572.409 is 266.375 s. In calculation result 1, the acceleration rate of the calculation time based on the conventional method is 1.44. As shown in calculation result 1, the information processing apparatus 100 can calculate the same total electronic energy value as the conventional method 1.44 times faster than the conventional method.
[0126] Also, in calculation result 2, the total electronic energy = -7572.240. In calculation result 2, the number of steps when calculating the total electronic energy = -7572.240 is 20 steps. In calculation result 2, the elapsed time = calculation time when calculating the total electronic energy = -7572.240 is 145.025 s. In calculation result 2, the acceleration rate of the calculation time based on the conventional method is 2.64. As shown in calculation result 2, the information processing apparatus 100 can calculate the same total electronic energy value as the conventional method 2.64 times faster than the conventional method. Next, we will move on to the description of FIG. 12.
[0127] FIG. 12 is an explanatory diagram showing a comparison example of the speedup ratio with the conventional method. Graph 1200 in FIG. 12 shows the speedup ratio of calculation result 1 and the speedup ratio of calculation result 2 when the conventional method is taken as the reference: 1. As shown in Graph 1200, the information processing apparatus 100 can speed up the SCF method and suppress the increase in the calculation time required for the SCF method as compared with the conventional method. The information processing apparatus 100 can, for example, achieve a speedup of 1.4 to 2.6 times as compared with the conventional method. Next, we will move on to the explanation of FIG. 13.
[0128] FIG. 13 is an explanatory diagram showing a display example. In FIG. 13, the information processing apparatus 100 outputs a log 1300 showing the calculation results for each step. In the example of FIG. 13, specifically, the information processing apparatus 100 outputs a log 1300 showing the calculation results for each step corresponding to calculation result 2. The log 1300 shows, for each step, the step number in that step, the difference in that step, the total electronic energy in that step, and the calculation time in that step, in association with each other.
[0129] In this way, the information processing apparatus 100 can determine that the electron density ρ(r) and the total electronic energy have converged before the difference Δρ(r) becomes less than or equal to the allowable value of Δρ based on the significant digits, and can suppress the increase in the amount of calculation.
[0130] As described above, according to the information processing apparatus 100, a specific operation can be repeatedly performed until the number of upper digits where the values match between the characteristic value corresponding to the solution of the parameter calculated last time and the characteristic value corresponding to the solution of the parameter calculated this time becomes equal to or greater than the first threshold value. Thereby, the information processing apparatus 100 can suppress the increase in the amount of calculation.
[0131] According to the information processing apparatus 100, when the number of digits becomes equal to or greater than the first threshold value, the solution of the parameter calculated this time can be output. Thereby, the information processing apparatus 100 can make the solution of the parameter available.
[0132] According to the information processing apparatus 100, a specific operation can be repeatedly performed until the number of digits becomes equal to or greater than a first threshold value, or until the difference between the solution of the parameter calculated last time and the solution of the parameter calculated this time becomes equal to or less than a second threshold value. Thereby, the information processing apparatus 100 can suppress an increase in the amount of calculation. The information processing apparatus 100 can detect that a solution of a parameter with relatively high accuracy has been calculated.
[0133] According to the information processing apparatus 100, a solution of a parameter can be calculated using a function based on an initial value of the parameter. According to the information processing apparatus 100, a specific operation of calculating a solution of a parameter using a function based on the solution of the parameter calculated last time can be repeatedly performed until the number of digits becomes equal to or greater than a first threshold value. Thereby, the information processing apparatus 100 can enable calculation of a solution of a parameter.
[0134] According to the information processing apparatus 100, a specific operation can be repeatedly performed until the degree of variation between the difference between the solution of the parameter calculated last time and the solution of the parameter calculated the time before last time and the difference between the solution of the parameter calculated this time and the solution of the parameter calculated last time becomes equal to or less than a third threshold value. Thereby, the information processing apparatus 100 can suppress an increase in the amount of calculation.
[0135] According to the information processing apparatus 100, when the degree of variation becomes equal to or less than a third threshold value, a notification indicating that the solution of the parameter has not converged can be output. Thereby, the information processing apparatus 100 can enable a user to grasp that the solution of the parameter has not converged.
[0136] According to the information processing apparatus 100, a specific operation can be repeatedly performed until the degree of variation becomes equal to or less than a third threshold value, or until the difference between the solution of the parameter calculated last time and the solution of the parameter calculated this time becomes equal to or less than a second threshold value. Thereby, the information processing apparatus 100 can suppress an increase in the amount of calculation. The information processing apparatus 100 can detect that a solution of a parameter with relatively high accuracy has been calculated.
[0137] According to the information processing apparatus 100, a solution of a parameter can be calculated using a function based on an initial value of the parameter. According to the information processing apparatus 100, a specific operation of calculating a solution of a parameter using a function based on the previously calculated solution of the parameter can be repeatedly performed until the degree of variation becomes equal to or less than a third threshold value. Thereby, the information processing apparatus 100 can enable calculation of a solution of the parameter.
[0138] According to the information processing apparatus 100, the specific operation can be repeatedly performed until the number of digits becomes equal to or more than a first threshold value or the degree of variation becomes equal to or less than a third threshold value. Thereby, the information processing apparatus 100 can suppress an increase in the amount of calculation.
[0139] According to the information processing apparatus 100, electron density can be adopted as the parameter. According to the information processing apparatus 100, the function can include the Kohn-Sham equation that enables calculation of a one-electron wave function. Thereby, the information processing apparatus 100 can suppress an increase in the amount of calculation when calculating the electron density.
[0140] According to the information processing apparatus 100, an operation corresponding to the SCF method can be adopted for the specific operation. Thereby, the information processing apparatus 100 can accelerate the SCF method.
[0141] Note that the information processing method described in the present embodiment can be realized by executing a program prepared in advance on a computer such as a PC or a workstation. The information processing program described in the present embodiment is recorded on a computer-readable recording medium and is executed by being read from the recording medium by a computer. The recording medium is a hard disk, a flexible disk, a CD (Compact Disc)-ROM, an MO (Magneto Optical disc), a DVD (Digital Versatile Disc), or the like. Further, the information processing program described in the present embodiment may be distributed via a network such as the Internet.
[0142] Regarding the above-described embodiments, the following additional remarks are disclosed.
[0143] (Supplementary Note 1) Repeatedly perform a specific operation for calculating a solution of a parameter using a function until the number of upper digits where the values match between the characteristic value corresponding to the previously calculated solution of the parameter and the characteristic value corresponding to the currently calculated solution of the parameter reaches or exceeds a first threshold value. An information processing program characterized by causing a computer to execute the processing.
[0144] (Supplementary Note 2) When the number of digits reaches or exceeds the first threshold value, output the solution of the parameter calculated this time. The information processing program according to Supplementary Note 1, characterized by causing the computer to execute the processing.
[0145] (Supplementary Note 3) The processing to be performed Repeatedly perform the specific operation until the number of digits reaches or exceeds the first threshold value or the difference between the previously calculated solution of the parameter and the currently calculated solution of the parameter becomes equal to or less than a second threshold value. The information processing program according to Supplementary Note 1 or 2, characterized by this.
[0146] (Supplementary Note 4) Calculate the solution of the parameter using the function based on the initial value of the parameter. After causing the computer to execute the processing The processing to be performed Repeatedly perform a specific operation for calculating the solution of the parameter using the function based on the previously calculated solution of the parameter until the number of digits reaches or exceeds the first threshold value. The information processing program according to Supplementary Note 1 or 2, characterized by this.
[0147] (Supplementary Note 5) Repeatedly perform a specific operation for calculating the solution of the parameter using a function until the degree of variation between the difference between the previously calculated solution of the parameter and the solution of the parameter calculated two times before and the difference between the currently calculated solution of the parameter and the previously calculated solution of the parameter becomes equal to or less than a first threshold value. An information processing program characterized by causing a computer to execute a process.
[0148] (Appendix 6) When the degree of variation becomes equal to or less than the first threshold value, output a notification indicating that the solution of the parameter has not converged. An information processing program according to Appendix 5, characterized by causing the computer to execute a process.
[0149] (Appendix 7) The process to be executed is Repeat the specific operation until the degree of variation becomes equal to or less than the first threshold value, or until the difference between the solution of the parameter calculated this time and the solution of the parameter calculated last time becomes equal to or less than the second threshold value. The information processing program according to Appendix 5 or 6, characterized by the above.
[0150] (Appendix 8) Calculate the solution of the parameter using the function based on the initial value of the parameter. After causing the computer to execute a process, The process to be executed is Repeat the specific operation of calculating the solution of the parameter using the function based on the solution of the parameter calculated last time until the degree of variation becomes equal to or less than the first threshold value. The information processing program according to Appendix 5 or 6, characterized by the above.
[0151] (Appendix 9) The process to be executed is Repeat the specific operation until the number of digits becomes equal to or greater than the first threshold value, or until the degree of variation between the difference between the solution of the parameter calculated this time and the solution of the parameter calculated last time and the difference between the solution of the parameter calculated last time and the solution of the parameter calculated the time before last becomes equal to or less than the third threshold value. The information processing program according to Appendix 1 or 2, characterized by the above.
[0152] (Appendix 10) The parameter is the electron density. The function includes the Kohn-Sham equation that enables calculation of a one-electron wave function, and is the information processing program according to any one of Appendices 1, 2, 5, and 6.
[0153] (Appendix 11) The specific operation corresponds to the Self Consistent Field method, and is the information processing program according to any one of Appendices 1, 2, 5, and 6.
[0154] (Appendix 12) A specific operation of calculating a solution of a parameter using a function is repeatedly performed until the number of upper digits where the values match between the eigenvalue corresponding to the previously calculated solution of the parameter and the eigenvalue corresponding to the currently calculated solution of the parameter becomes equal to or greater than a first threshold. An information processing method characterized in that a computer executes the process.
[0155] (Appendix 13) A specific operation of calculating a solution of a parameter using a function is repeatedly performed until the degree of variation between the difference between the previously calculated solution of the parameter and the solution of the parameter calculated two times before and the difference between the currently calculated solution of the parameter and the previously calculated solution of the parameter becomes equal to or less than a first threshold. An information processing method characterized in that a computer executes the process.
Explanation of Signs
[0156] 100 Information processing apparatus 101 Function 200 Information processing system 201 Numerical calculation device 202 Client device 210 Network 300 Bus 301 CPU 302 Memory 303 Network I / F 304 Recording medium I / F 305 Recording medium 400 Storage unit 401 Acquisition unit 402 Setting unit 403 Calculation Unit 404 Judgment Unit 405 Output Unit 500, 510, 800, 810, 1200 Graph 501, 511, 801 - 803, 811 Characteristic Curve 1100 Table 1300 Log
Claims
1. A specific operation for calculating a solution of a parameter using a function is repeatedly performed between a characteristic value corresponding to the previously calculated solution of the parameter and a characteristic value corresponding to the currently calculated solution of the parameter until the number of upper digits where the values match becomes equal to or greater than a first threshold value. An information processing program characterized by causing a computer to execute the process.
2. When the number of digits becomes equal to or greater than the first threshold value, the computer is caused to execute a process of outputting the solution of the parameter calculated this time. The information processing program according to claim 1, characterized in that the computer is caused to execute the process.
3. The process to be performed is repeatedly performed until the number of digits becomes equal to or greater than the first threshold value or the difference between the solution of the parameter calculated previously and the solution of the parameter calculated this time becomes equal to or less than a second threshold value. The information processing program according to claim 1 or 2, characterized in that.
4. A specific operation for calculating a solution of a parameter using a function is repeatedly performed until the degree of variation between the difference between the solution of the parameter calculated previously and the solution of the parameter calculated two times before and the difference between the solution of the parameter calculated this time and the solution of the parameter calculated previously becomes equal to or less than a first threshold value. An information processing program characterized by causing a computer to execute the process.
5. When the degree of variation becomes equal to or less than the first threshold value, a computer is caused to execute a process of outputting a notification indicating that the solution of the parameter has not converged. The information processing program according to claim 4, characterized in that the computer is caused to execute the process.
6. The process to be performed is repeatedly performed until the degree of variation becomes equal to or less than the first threshold value or the difference between the solution of the parameter calculated previously and the solution of the parameter calculated this time becomes equal to or less than a second threshold value. The information processing program according to claim 4 or 5, characterized in that.
7. A specific operation for calculating a solution of a parameter using a function is repeatedly performed between a characteristic value corresponding to the previously calculated solution of the parameter and a characteristic value corresponding to the currently calculated solution of the parameter until the number of upper digits where the values match becomes equal to or greater than a first threshold value. An information processing method characterized in that a computer executes the process.
8. A specific operation for calculating a solution of a parameter using a function is repeatedly performed until the degree of variation between the difference between the solution of the parameter calculated last time and the solution of the parameter calculated the time before last time and the difference between the solution of the parameter calculated this time and the solution of the parameter calculated last time becomes equal to or less than a first threshold value. An information processing method, characterized in that a computer executes the processing.
Citation Information
Patent Citations
Numerical fluid computation method and convergence determination method of numerical computation
JP2003248672A
Molecular orbital method calculation method and calculation device
JP2006277582A
Electronic state calculation device, electronic state calculation method, and electronic state calculation program
JP2015141533A
Loop division detection program and loop division detection method
JP2015141543A
Apparatus and methods for predicting physical and chemical properties of materials
US6106562A