Method and apparatus for determining electron density, non-volatile storage medium
By determining the target point within the Brillouin zone and combining the Hamiltonian operator and orthogonal random orbit method, the problem of low efficiency in calculating electron density under high temperature conditions in existing technologies has been solved, enabling accurate determination of electron density and property analysis of matter at high temperatures.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- PEKING UNIV
- Filing Date
- 2023-06-27
- Publication Date
- 2026-06-05
AI Technical Summary
In existing technologies, methods based on Cohen-Shen Lüjiu density functional theory are inefficient in calculating the electron density of large systems and cannot be applied to high-temperature environments, resulting in the inability to accurately determine the electron density of substances at high temperatures.
By identifying multiple target points within the Brillouin zone and employing a hybrid approach combining Hamiltonian operators, target orbitals, and orthogonal random orbitals, along with a plane-wave basis set, the electron density is calculated. KS orbitals are used to determine the contributions of low-energy orbitals, and orthogonal random orbitals are used to determine the contributions of high-energy orbitals, thereby improving computational efficiency and accuracy.
While reducing computational load, it can accurately determine the electron density of matter under high-temperature conditions, providing information on the structure and electronic properties of high-temperature materials, thus solving the problem that existing technologies cannot determine the electron density of matter under high-temperature conditions.
Smart Images

Figure CN116822636B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of quantum mechanics, and more specifically, to a method and apparatus for determining electron density and a non-volatile storage medium. Background Technology
[0002] Density functional theory (DFT), based on quantum mechanics, is widely used in physics, chemistry, and materials science due to its balance between computational efficiency and accuracy. The properties of matter are generally determined by electron density. The Kohn-Sham (KS) DFT, used in related techniques, determines the KS orbitals occupied by electrons by diagonalizing the Hamiltonian matrix, thereby determining the electron density. However, this method requires computation time proportional to the cube of the number of electrons, thus limiting its application to calculating the electron density of large systems. Furthermore, as the temperature of the computational system increases, the number of KS orbitals to be solved also increases rapidly, and the computational system grows larger. Therefore, methods used to determine the electron density of matter cannot be applied to the complex environments of high-temperature simulations.
[0003] There is currently no effective solution to the above problems. Summary of the Invention
[0004] This application provides a method and apparatus for determining electron density, as well as a non-volatile storage medium, to at least solve the technical problem that the methods for determining electron density in related technologies are not applicable to substances in high-temperature environments and substances with a large number of electrons, thus making it impossible to determine the electron density of substances in high-temperature environments and substances with a large number of electrons.
[0005] According to one aspect of the embodiments of this application, a method for determining electron density is provided, comprising: determining the Brillouin zone of a target material, and determining multiple target points in the Brillouin zone, wherein the Brillouin zone is a region in which multiple electrons in the target material move in the lattice dual space of the target material, and the target points are uniformly distributed in the Brillouin zone; obtaining an initial electron density, and determining a Hamiltonian operator for each of the multiple target points based on the initial electron density, wherein the Hamiltonian operator reflects the electron energy at each target point; determining multiple target orbitals for each target point based on the Hamiltonian operator, wherein the multiple target orbitals are used to reflect the distribution of electrons in the target material; determining multiple random orbitals for each of the multiple target points, and determining multiple orthogonal random orbitals based on the multiple random orbitals and the multiple target orbitals, wherein the multiple random orbitals are generated based on a plane wave basis set; and determining the electron density of the target material based on the Hamiltonian operator, the multiple target orbitals, and the multiple orthogonal random orbitals.
[0006] Optionally, the initial electron density is obtained by: acquiring a random number and assigning a value to the random number to obtain an assigned random number; determining the first ratio of the assigned random number to a preset parameter as the initial electron density, wherein the preset parameter is a second ratio of the number of electrons corresponding to the initial electron density to the actual number of electrons; or, reading multiple first objective functions, determining the first square value of the modulus of each of the multiple first objective functions to obtain multiple first square values; and determining the sum of the multiple first square values as the initial electron density.
[0007] Optionally, the Hamiltonian operator for each target point is determined based on the initial electron density, including: determining the kinetic energy operator and the nonlocal potential operator for each target point; and determining the local potential operator for each target point based on the initial electron density; and determining the sum of the kinetic energy operator, the local potential operator, and the nonlocal potential operator as the Hamiltonian operator for each target point.
[0008] Optionally, determining the kinetic energy operator for each target point includes: obtaining the reciprocal lattice vector and the wave vector for each target point, and a second objective function with the reciprocal lattice vector and the wave vector as variables, wherein the kinetic energy of the plane wave of the reciprocal lattice vector at each target point is less than a preset kinetic energy threshold; determining the second square value of the sum of the reciprocal lattice vector and the wave vector, and determining the first product of the second square value and the second objective function; and determining half of the first product as the kinetic energy operator for multiple electrons at each target point.
[0009] Optionally, determining the local potential operator for each target point includes: performing a Fourier transform on the initial electron density to obtain the Fourier-transformed initial electron density; determining a first potential operator for each target point based on the Fourier-transformed initial electron density; obtaining a second potential operator for each target point from a database, wherein the first and second potential operators together reflect the potential energy generated by the interaction of multiple electrons in the target substance; determining the multiple elements constituting the target substance, and obtaining the structure factor and local potential function corresponding to each element from the database; obtaining the coordinates of each atom in the Brillouin zone corresponding to each element, and determining a third potential operator based on the coordinates, structure factor, and local potential function, wherein the third potential operator reflects the third potential energy generated by the interaction of multiple ions and multiple electrons in the target substance at each target point; and determining the sum of the first, second, and third potential operators as the local potential operator for each target point.
[0010] Optionally, determining the nonlocal operator for each target point includes: reading the radial projection function corresponding to each element, the third objective function corresponding to each target point, and the fourth objective function corresponding to each target point from the database; determining the projection function of the plane wave basis set at each target point based on the radial projection function, the third objective function, and the fourth objective function; obtaining the coupling coefficient corresponding to each element, and determining the nonlocal potential operator for each target point based on the coupling coefficient, the structure factor, and the projection function of the plane wave basis set at each target point.
[0011] Optionally, the electron density of the target substance is determined based on the Hamiltonian operator, multiple target orbitals, and multiple orthogonal random orbitals, including: determining the first density contributed by each target orbital at each target point based on the Hamiltonian operator; and determining the second density contributed by each orthogonal random orbital at each target point; determining the third density of each target point by summing the multiple first densities and multiple second densities at each target point; and determining the electron density of the target substance by summing the multiple third densities corresponding to the multiple target points.
[0012] Optionally, determining the first density contributed by each target orbital at each target point among multiple target orbitals based on the Hamiltonian operator includes: obtaining the wave function in real space and determining the third square value of the modulus of the wave function; obtaining a fifth objective function with the chemical potential of each electron in the target substance and the characteristic energy of each target point as variables; and determining the second product of the third square value and the fifth objective function as the first density.
[0013] Optionally, determining the second density contributed by each of the multiple orthogonal random orbits at each target point includes: determining a sixth objective function with the chemical potential of each electron and the Hamiltonian operator at each target point as variables, and determining the square root result of the sixth objective function at each target point, wherein the square root result is in the form of an operator; and determining the fourth square value of the modulus of the function determined by the square root result and each orthogonal random orbit as the second density.
[0014] Optionally, the method for determining electron density further includes: when determining the electron density of the target substance for the next time, replacing the Hamiltonian operator at each target point with a new Hamiltonian operator, wherein the new Hamiltonian operator is generated by the first electron density as input and the second electron density as output according to preset parameters.
[0015] According to another aspect of the embodiments of this application, an apparatus for determining electron density is also provided, comprising: a Brillouin zone determination module, configured to determine the Brillouin zone of a target material and determine multiple target points within the Brillouin zone, wherein the Brillouin zone is the region in which multiple electrons in the target material move within the lattice dual space of the target material, and the target points are uniformly distributed within the Brillouin zone; and a Hamiltonian operator determination module, configured to obtain an initial electron density and determine a Hamiltonian operator for each of the multiple target points based on the initial electron density, wherein the Hamiltonian operator reflects the electron energy at each target point. The system comprises: a target orbit determination module, used to determine multiple target orbits for each target point based on the Hamiltonian operator, wherein the multiple target orbits reflect the distribution of electrons in the target material; an orthogonal random orbit determination module, used to determine multiple random orbits for each target point among multiple target points, and to determine multiple orthogonal random orbits based on the multiple random orbits and multiple target orbits, wherein the multiple random orbits are generated based on plane wave basis sets; and an electron density determination module, used to determine the electron density of the target material based on the Hamiltonian operator, multiple target orbits, and multiple orthogonal random orbits.
[0016] According to another aspect of the embodiments of this application, a non-volatile storage medium is also provided, which stores a computer program, wherein the above-described method for determining electron density is executed by running the computer program in the device where the non-volatile storage medium is located.
[0017] According to another aspect of the embodiments of this application, an electronic device is also provided, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to execute the above-described method for determining electron density through the computer program.
[0018] In this embodiment, the Brillouin zone of the target material is determined, and multiple target points are identified within the Brillouin zone. The Brillouin zone is the region where multiple electrons in the target material move within the lattice dual space of the target material, and the target points are uniformly distributed within the Brillouin zone. An initial electron density is obtained, and a Hamiltonian operator is determined for each of the multiple target points based on this initial electron density. The Hamiltonian operator reflects the electron energy at each target point. Multiple target orbitals are determined for each target point based on the Hamiltonian operator, and these multiple target orbitals reflect the electron distribution in the target material. Multiple random orbitals are determined for each of the multiple target points, and multiple orthogonal random orbitals are determined based on these random orbitals and the multiple target orbitals. These multiple random orbitals are generated based on a plane-wave basis set. This method of determining the electron density of the target material by combining the Hamiltonian operator, the multiple target orbitals, and the multiple orthogonal random orbitals provides a hybrid random density method based on a plane-wave basis set. This method for determining the electron density of a substance improves the accuracy of the obtained electron density by performing multi-k-point sampling in the Brillouin zone. Simultaneously, it employs a hybrid stochastic density method combining stochastic density functional theory and KS density functional theory. For low-energy orbitals occupied by electrons in the substance, KS orbitals are used to determine the electron density contributed by low-energy orbitals. When the substance is in a high-temperature system (i.e., when electrons occupy high-energy orbitals), orthogonal random orbitals (orthogonal random orbitals) are used to determine the electron density contributed by high-energy orbitals. This reduces computational load while achieving the goal of determining the electron density of substances in high-temperature systems. This achieves the technical effect of obtaining the structure, electronic properties, and thermodynamic properties of high-temperature materials, and solves the technical problem of being unable to determine the electron density of substances in high-temperature environments and substances with a large number of electrons due to the inapplicability of existing methods for determining electron density. Attached Figure Description
[0019] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0020] Figure 1 This is a hardware structure block diagram of a computer terminal (or mobile device) for implementing a method for determining electron density according to an embodiment of this application;
[0021] Figure 2 This is a flowchart of a method for determining electron density according to an embodiment of this application;
[0022] Figure 3 This is a structural diagram of an apparatus for determining electron density according to an embodiment of this application;
[0023] Figure 4 This is a flowchart of the operation of an electron density apparatus according to an embodiment of this application. Detailed Implementation
[0024] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.
[0025] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0026] To better understand the embodiments of this application, the technical terms involved in the embodiments of this application are explained below:
[0027] Electron density: The number of electrons present per unit volume within a given spatial region.
[0028] Brillouin zone: Used to describe the energy distribution of electrons in a crystal, it is the region enclosed by the perpendicular bisector of the reciprocal lattice vector of the crystal.
[0029] Random orbit: A randomly distributed orbit generated in a given system. In this embodiment, it is used to describe the orbits generated by the random distribution of electrons in the target substance. By calculating the random orbits, the distribution of electrons in space can be obtained.
[0030] KS orbitals: orbitals used to describe multi-electron systems. The electron density at a spatial point can be described by a linear combination of the squared moduli of the wavefunctions of multiple KS orbitals at that spatial point.
[0031] Plane wave basis set: This is a set of basis functions used to describe wave phenomena. It represents the wave function of an electron as a linear combination of plane waves. Within the framework of the plane wave basis set, the electron density can be obtained through the Fourier transform of the wave function.
[0032] Hamiltonian operator: A physical quantity in quantum mechanics that describes the energy of a system, consisting of a kinetic energy term and a potential energy term.
[0033] Reciprocal lattice vectors: These are reciprocal to the translation vectors of the periodic crystal structure of a substance. They are used in Fourier series analysis and are suitable for handling the lattice momentum of phonons and electrons. In the reciprocal lattice (i.e., reciprocal space) of a crystal, reciprocal lattice vectors can be represented by a linear combination of lattice vectors.
[0034] Convergence number: The value of a function that gradually approaches a preset value through multiple iterations.
[0035] Real space: refers to the actual physical space in which objects exist and move, that is, the three-dimensional space that can be perceived and observed.
[0036] Reciprocal space: refers to a virtual space to which objects in real space are mapped through mathematical transformations. Reciprocal space is usually described using reciprocal lattice vectors and is the dual space of the real space lattice.
[0037] In related technologies, the number of plane waves used to represent electron density is greater than the number of plane waves used to represent wave functions. The plane waves corresponding to wave functions occupy a small sphere in reciprocal space, while the plane waves corresponding to electron density occupy a large sphere with a radius twice that of the small sphere. A cube formed by all the reciprocal space lattice points is tangent to the large sphere, meaning the side length of the cube is approximately the diameter of the large sphere. The reciprocal space and real space are transformed through a Fast Fourier Transform (FF), and both have the same number of lattice points. Therefore, the number of lattice points in real space is much greater than the number of plane waves for wave functions. This causes the random orbits used to determine electron density to occupy a large amount of memory in real space, leading to insufficient memory when determining the electron density of substances with a large number of electrons. Consequently, there are problems with determining the electron density of substances in high-temperature systems and substances with a large number of electrons. Furthermore, related technologies do not consider the existence of multiple sampling points (k-points) in the Brillouin zone when determining electron density. Instead, they use only a specific point (Gamma k-point) in the Brillouin zone to approximate the entire zone, resulting in inaccurate electron density and consequently, inaccurate energy, pressure, and transport coefficient properties determined from the electron density. To address this issue, this application provides a solution, which is detailed below.
[0038] According to an embodiment of this application, a method for determining electron density is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than that shown here.
[0039] The methods and embodiments provided in this application can be executed on mobile terminals, computer terminals, or similar computing devices. Figure 1 A hardware block diagram of a computer terminal (or mobile device) for implementing a method for determining electron density is shown. Figure 1 As shown, the computer terminal 10 (or mobile device 10) may include one or more processors 102 (shown as 102a, 102b, ..., 102n in the figure) (processor 102 may include, but is not limited to, a microprocessor MCU or a programmable logic device FPGA, etc.), a memory 104 for storing data, and a transmission module 106 for communication functions. In addition, it may also include: a display, an input / output interface (I / O interface), a universal serial bus (USB) port (which may be included as one of the ports of a BUS bus), a network interface, a power supply, and / or a camera. Those skilled in the art will understand that... Figure 1 The structure shown is for illustrative purposes only and does not limit the structure of the aforementioned electronic device. For example, computer terminal 10 may also include... Figure 1 The more or fewer components shown, or having the same Figure 1 The different configurations shown.
[0040] It should be noted that the aforementioned one or more processors 102 and / or other data processing circuits are generally referred to herein as "data processing circuits". These data processing circuits may be embodied, in whole or in part, in software, hardware, firmware, or any other combination thereof. Furthermore, the data processing circuits may be a single, independent processing module, or may be integrated, in whole or in part, into any other element within the computer terminal 10 (or mobile device). As involved in the embodiments of this application, the data processing circuits serve as a processor control mechanism (e.g., selection of a variable resistor termination path connected to an interface).
[0041] The memory 104 can be used to store software programs and modules for application software, such as the program instructions / data storage device corresponding to the method for determining electron density in this embodiment. The processor 102 executes various functional applications and data processing by running the software programs and modules stored in the memory 104, thereby implementing the aforementioned method for determining electron density. The memory 104 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include memory remotely located relative to the processor 102, and these remote memories can be connected to the computer terminal 10 via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0042] The transmission device 106 is used to receive or send data via a network. Specific examples of the network described above may include a wireless network provided by the communication provider of the computer terminal 10. In one example, the transmission device 106 includes a Network Interface Controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, the transmission device 106 may be a Radio Frequency (RF) module, used for wireless communication with the Internet.
[0043] The display can be, for example, a touchscreen liquid crystal display (LCD) that allows the user to interact with the user interface of the computer terminal 10 (or mobile device).
[0044] Under the above operating environment, embodiments of this application provide a method for determining electron density. Figure 2 This is a flowchart of a method for determining electron density according to an embodiment of this application, as shown below. Figure 2 As shown, the method includes the following steps:
[0045] Step S202: Determine the Brillouin zone of the target material and identify multiple target points within the Brillouin zone. The Brillouin zone is the region in which multiple electrons in the target material move within the lattice dual space of the target material, and the target points are uniformly distributed within the Brillouin zone.
[0046] The method provided in this application embodiment can be used to determine the electron density of any form of substance (liquid, solid, etc.). In step S202, the Brillouin zone in the crystal structure of the target substance and multiple sampling K points (i.e. target points) in the Brillouin zone are first determined. The sampling K points are discrete points uniformly distributed within the range of the Brillouin zone, usually represented by coordinates (x, y, z).
[0047] Step S204: Obtain the initial electron density and determine the Hamiltonian operator for each target point based on the initial electron density, wherein the Hamiltonian operator reflects the electron energy at each target point.
[0048] In step S204, the initial electron density obtained after initialization is acquired, and the Hamiltonian operator for each sampling k point (i.e., the target point) is determined based on the initial electron density. The Hamiltonian operator for each k point is used to reflect the energy generated by the interaction of electrons, atoms, ions, etc. in the matter at that point.
[0049] According to an optional embodiment of this application, the initial electron density is obtained by the following method: obtaining a random number and assigning a value to the random number to obtain an assigned random number; determining the first ratio of the assigned random number to a preset parameter as the initial electron density, wherein the preset parameter is a second ratio of the number of electrons corresponding to the initial electron density to the actual number of electrons; or, reading multiple first objective functions, determining the first square value of the modulus of each of the multiple first objective functions to obtain multiple first square values; and determining the sum of the multiple first square values as the initial electron density.
[0050] The initial electron density can be obtained by initializing with random numbers or by reading pseudofunctions (i.e., the first objective function). If the initial electron density is obtained by initializing with random numbers, multiple random numbers need to be assigned values. The result of the assignment is then integrated, and the integral value is taken as the number of electrons corresponding to the initial electron density. The ratio of this integral value (the number of electrons corresponding to the initial electron density) to the actual number of electrons in the target material (the second ratio) is used as an adjustment factor (i.e., a preset parameter). The ratio of the assignment result to the adjustment factor (the first ratio) is the initial electron density. The method for obtaining the initial electron density by reading pseudofunctions (i.e., the first objective function) is as follows: multiple pseudofunctions are read from a database, and the square of the modulus of each pseudofunction (i.e., the first square value) is determined. The sum of these first square values is taken as the initial electron density. For example, if N pseudofunctions are read, and the square of the modulus of each pseudofunction (i.e., the first square value) is N... a The initial electron density is Where a represents any pseudofunction.
[0051] Step S206: Determine multiple target orbitals for each target point based on Hamiltonian operators, wherein the multiple target orbitals are used to reflect the distribution of electrons in the target material.
[0052] The KS orbital (i.e., the target orbital) reflects the state of the electron at point k. Furthermore, the electron density of the low-energy levels at point k can be determined using the KS orbital. Therefore, in step S208, after the Hamiltonian operator for each sampled K point (i.e., the target point) is determined in step S206, the KS orbital (i.e., the target orbital) for each sampled K point (i.e., the target point) is determined based on the Hamiltonian operator. Determining the KS orbital is essentially solving the Hamiltonian operator. The eigenenergy ε of such a linear operator i,k With characteristic wave function |ψ i,k The KS orbit in this embodiment is generated based on a plane wave basis set; therefore, the characteristic equation can be solved using the plane wave basis set. The KS orbital at sampling point k with coordinates (q, q′) is obtained, where, Let ψ be the Hamiltonian operator for sampling k points with coordinates (q, q′). i,k (q′) is the wave function with respect to the ordinate q′, ε i,k It is an eigenvalue used to represent the feature energy of a sample point k with coordinates (q, q′), ψ i,k (q) is an eigenfunction with respect to the x-coordinate q.
[0053] Step S208: Determine multiple random orbits for each target point among multiple target points, and determine multiple orthogonal random orbits based on the multiple random orbits and multiple target orbits, wherein the multiple random orbits are generated based on plane wave basis sets.
[0054] Since the positions and momentum of the electrons in the target material are unknown, in step S208, random orbits are first determined to describe the distribution of electrons at each of the multiple sampling k-points (i.e., target points). In this embodiment, the random orbits are generated based on a plane wave basis set, with multiple random orbits existing at each k-point, and electrons distributed on each random orbit. The multiple random orbits obtained at each k-point (i.e., target point) and the multiple KS orbits (i.e., target orbits) obtained in step S206 are orthogonalized to obtain multiple orthogonal orbits at each k-point. The orthogonalization process is as follows: based on the formula... The random orbits and KS orbits are orthogonalized, whereby... Let |χ| represent any orthogonal random orbit. i,k > represents any random orbit, where i identifies which random orbit it is, and k identifies the k-th point corresponding to that random orbit; |ψ j,k> is an array used to represent any KS orbital, j is used to identify which KS orbital it is, and k is used to identify the k corresponding to this KS orbital; the array used to represent KS orbitals is stored in the database; the dimension of the array is (Nk, NbKS, NG), where Nk is the total number of k points, NbKS is the number of KS orbitals, and NG is the total number of plane wave basis groups.
[0055] Step S210: Determine the electron density of the target substance based on the Hamiltonian operator, multiple target orbitals, and multiple orthogonal random orbitals.
[0056] In step S210, the electron density contributed by each sampling k point is determined based on the Hamiltonian operator of each sampling k point (i.e., the target point) determined in the above steps, the multiple KS orbitals (i.e., the target orbitals) of each sampling k point, and the multiple orthogonal random orbitals. The sum of the electron densities contributed by multiple sampling k points is determined as the electron density of the target substance.
[0057] According to an optional embodiment of this application, determining the Hamiltonian operator for each target point based on the initial electron density includes: determining the kinetic energy operator and the nonlocal potential operator for each target point; and determining the local potential operator for each target point based on the initial electron density; and determining the sum of the kinetic energy operator, the local potential operator, and the nonlocal potential operator as the Hamiltonian operator for each target point.
[0058] In this embodiment, the Hamiltonian operator for each sampling k point (i.e., the target point) includes three operators: kinetic energy operator, local potential operator, and non-local potential operator. The Hamiltonian operator for each target point... It equals the sum of the kinetic energy operator, the local potential operator, and the non-local potential operator at the target point.
[0059] According to some optional embodiments of this application, determining the kinetic energy operator for each target point includes: obtaining the reciprocal lattice vector and the wave vector for each target point, and a second objective function with the reciprocal lattice vector and the wave vector as variables, wherein the kinetic energy of the plane wave of the reciprocal lattice vector at each target point is less than a preset kinetic energy threshold; determining the second square value of the sum of the reciprocal lattice vector and the wave vector, and determining the first product of the second square value and the second objective function; and determining half of the first product as the kinetic energy operator for multiple electrons at each target point.
[0060] Hamiltonian operator The kinetic energy operator is determined by obtaining the reciprocal lattice vector G and wave vector k of each sampling k point (i.e., the target point) through a predefined interface, and obtaining the wave function (i.e., the second objective function) f(G+K) at that target point; The kinetic energy operator at that point is determined. It should be noted that, in this embodiment, the wave function (i.e., the second objective function) obtained at the punctuation point is the wave function constituting the plane wave basis set, and the reciprocal lattice vector kinetic energy of the plane wave basis set wave function... All are less than the preset cutoff energy (i.e., the preset kinetic energy threshold).
[0061] The local potential operator in the Hamiltonian operator for each target point is determined by the following methods: including: performing a Fourier transform on the initial electron density to obtain the Fourier-transformed initial electron density; determining the first potential operator for each target point based on the Fourier-transformed initial electron density; obtaining the second potential operator for each target point from a database, wherein the first and second potential operators together reflect the potential energy generated by the interaction of multiple electrons in the target substance; determining the multiple elements constituting the target substance, and obtaining the structure factor and the local potential function corresponding to each element from the database; obtaining the coordinates of each atom in the Brillouin zone corresponding to each element, and determining the third potential operator based on the coordinates, structure factor, and local potential function, wherein the third potential operator reflects the third potential energy generated by the interaction of multiple ions and multiple electrons in the target substance at each target point; and determining the local potential operator for each target point by summing the first, second, and third potential operators.
[0062] Local potential operator V L [ρ] is derived from the operator V Hartree [ρ], operator V xc [ρ] and operators Together they form a whole; where the operator V Hartree [ρ] and operator V xc [ρ] collectively reflects the local potential energy generated by the interaction between multiple electrons in the target material, operator It reflects the local potential energy generated by the interaction between multiple electrons and multiple ions in the target substance. ρ represents the electron density of the target substance, that is, the electron density to be determined. V Hartree [ρ] is based on the formula Of the results, It is obtained by performing a Fourier transform on the electron density ρ(G) at the reciprocal lattice vector G, e iG·r The complex exponential function that is necessarily produced by the Fourier transform; the complex exponential function e iG·rIn this context, 'i' represents the imaginary unit, and G and r are in one-to-one correspondence. Specifically, in the space defined by the plane wave basis set, G is the reciprocal lattice vector. After Fourier transform to real space, a position vector 'r' corresponding to the reciprocal lattice vector G is obtained, representing the position of the random trajectory in real space. This position vector 'r' can be read from a database via a preset interface. It should be noted that in this embodiment, the electron density ρ(G) at each reciprocal lattice vector G is the same, representing the initial electron density. Operator V xc [ρ] can be obtained directly from the exchange-related mathematical library (i.e., database) through a pre-defined interface. Operator It is based on the formula The obtained value is given by where k represents any class of elements that make up the target substance. The local potential function v for any class of elements k κ (r) is obtained by performing a Fourier transform. κ (r) represents the local potential function corresponding to any class of elements, which is obtained from the database through a preset interface. The aforementioned S... κ (G) is the structure factor corresponding to any class of element k, and the structure factor S κ (G) is based on the formula The result is that exp(iG·τ) κ,j (e) is a complex exponential function iG·r The complex form τ κ,j This represents the position coordinates of atom j of any element k in real space.
[0063] The nonlocal potential operator in the Hamiltonian operator at each target point is determined by the following method: reading the radial projection function, the third objective function, and the fourth objective function corresponding to each target point from the database; determining the projection function of the plane wave basis set at each target point based on the radial projection function, the third objective function, and the fourth objective function; obtaining the coupling coefficient corresponding to each element; and determining the nonlocal potential operator at each target point based on the coupling coefficient, the structure factor, and the projection function of the plane wave basis set at each target point.
[0064] In this embodiment, the nonlocal potential operator V at each target point NL (q,q′) according to the formula We obtain q = G + K, where G is the reciprocal lattice vector of any target point, and K is the wave vector of that target point. For any class of elements k, there is a nonlocal potential operator, used to reflect the nuclear potential energy of the atom corresponding to any class of elements k among the N classes of elements constituting the target substance at the target point; for any class of elements k, there is a nonlocal potential operator. According to the formula We obtained, among which, This represents a matrix element corresponding to any class of elements, which is generated by using the orbital quantum number l, the spin quantum number m, the spatially transformed orbital quantum number l', and the spatially transformed spin quantum number m' as elements. and It is a set of conjugate functions, where, It is based on the formula Obtained. In solving... In the formula, Ω is Let j be a spherical harmonic function (i.e., the third objective function) with vector q as the variable. l (qr) is the spherical Bese function (i.e., the fourth objective function) with the product of vector q and spatial vector r as the variable. This is the radial projection function of any type of element onto the plane formed by the plane wave basis set. The radial projection function, spherical harmonic function (i.e., the third objective function), and spherical Bese function (i.e., the fourth objective function) mentioned above are all read from the database through a preset interface. Each type of objective function corresponds to one interface, and different functions are read from different interfaces.
[0065] According to some alternative embodiments of this application, the electron density of the target substance is determined based on the Hamiltonian operator, multiple target orbitals, and multiple orthogonal random orbitals, including: determining a first density contributed by each of the multiple target orbitals at each target point based on the Hamiltonian operator; and determining a second density contributed by each of the multiple orthogonal random orbitals at each target point; determining a third density at each target point by summing multiple first densities and multiple second densities; and determining the electron density of the target substance by summing multiple third densities corresponding to multiple target points.
[0066] In this embodiment, the electron density of the target material includes two parts: one part is the electron density contributed by the KS orbital (i.e., the target orbital), and the other part is the electron density contributed by the orthogonal random orbital; the electron density at each target point is the sum of the electron density contributed by the KS orbital and the electron density contributed by the orthogonal random orbital at that target point; the electron density of the target material is the sum of the electron densities at each target point (i.e., the third density). The electron density contributed by the KS orbital (i.e., the target orbital) is the sum of the densities contributed by the KS orbitals at each target point. Since there are multiple KS orbitals at each target point, the density contributed by the KS orbitals at each target point is the sum of the electron densities contributed by each of the multiple KS orbitals at that target point (i.e., the first density). Similarly, the electron density contributed by the orthogonal random orbital (i.e., the target orbital) is the sum of the densities contributed by the orthogonal random orbitals at each target point. Since there are multiple orthogonal random orbitals at each target point, the density contributed by the orthogonal random orbitals at each target point is the sum of the electron densities contributed by each of the multiple orthogonal random orbitals at that target point (i.e., the second density).
[0067] According to an optional embodiment of this application, determining the first density contributed by each target orbital at each target point among multiple target orbitals based on Hamiltonian operators includes: obtaining the wave function in real space and determining the third square value of the modulus of the wave function; obtaining a fifth objective function with the chemical potential of each electron in the target substance and the characteristic energy of each target point as variables; and determining the second product of the third square value and the fifth objective function as the first density.
[0068] In this embodiment, the KS orbit (i.e., the target orbit) is based on the plane wave basis set (N... φ The electron density contributed by (i.e., the first electron density). Through formula We obtain, where μ is the chemical potential of each electron in the target substance, and also the chemical potential of the entire calculation system, ε i,k Let ψ be the characteristic energy of any sampling point. i,k (r) is the KS wavefunction in real space, where the electron density contributed by the KS orbital at each sampling point k (i.e., the target point) is f(ε). i,k ;μ)|ψ i,k (r)| 2 .
[0069] According to another optional embodiment of this application, determining the second density contributed by each of the multiple orthogonal random orbits at each target point includes: determining a sixth objective function with the chemical potential of each electron and the Hamiltonian operator at each target point as variables, and determining the square root result of the sixth objective function at each target point, wherein the square root result is in the form of an operator; and determining the fourth square value of the modulus of the function determined by the square root result and each orthogonal random orbit as the second density.
[0070] In this embodiment, the electron density contributed by orthogonal random orbits (i.e., the second electron density) Through formula Certainly, among them, It is the Hamiltonian operator The chemical potential μ is used as a function (i.e., the sixth objective function). It is an operator form.
[0071] According to some optional embodiments of this application, the method for determining electron density further includes: when determining the electron density of the target substance for the next time, replacing the Hamiltonian operator of each target point with a new Hamiltonian operator, wherein the new Hamiltonian operator is generated by the first electron density as input and the second electron density as output according to preset parameters.
[0072] In some optional embodiments, since the Hamiltonian operator is constructed using an initial guess density (i.e., initial electron density) generated by random numbers or arbitrary pseudowave functions, the electron density obtained based on this initial guess density is not accurate. Therefore, it is necessary to iterate the obtained electron density until the density obtained by iteration is a convergent number. In this embodiment, if it is the first time the electron density is determined, the initial electron density is the input density (i.e., the first electron density), and the electron density obtained by running the method in this run is the output density (i.e., the second electron density). The initial density and the electron density obtained in this run are mixed and iterated according to a preset ratio (i.e., preset parameters) to obtain a mixed density. A new Hamiltonian operator is determined based on this mixed density; and the final electron density is obtained based on this new Hamiltonian operator when the method provided in the embodiments of this application is run again. If it is not the first time the electron density is determined, the electron density output from the most recent run is used as the input density (i.e., the first electron density), and the electron density output from this run is used as the output density (i.e., the second electron density).
[0073] Through the above steps, random orbitals and KS orbitals can be created for each of the multiple sampling k-points in the Brillouin zone of the target material based on a plane wave basis set. The electron density contributed by each k-point is determined by mixing the random and KS orbitals, thus improving the accuracy of the determined electron density. Specifically, when using a mixture of random and KS orbitals to determine the electron density contributed by each k-point, KS orbitals are used for low-energy orbitals occupied by electrons, while random orbitals orthogonal to the KS orbitals are used for high-energy orbitals. By considering multiple sampling k-points in the Brillouin zone and using different orbitals to determine the electron density at different energy levels, the accuracy of the output electron density is improved. Furthermore, using random orbitals orthogonal to the KS orbitals to determine the electron density at high energy levels reduces the amount of data processed, achieving a resource-saving technical effect.
[0074] Figure 3 This is a structural diagram of a device for determining electron density according to an embodiment of this application, as shown below. Figure 3As shown, the device includes: a Brillouin zone determination module 30, used to determine the Brillouin zone of the target material and to determine multiple target points within the Brillouin zone, wherein the Brillouin zone is the region in which multiple electrons in the target material move in the lattice dual space of the target material, and the target points are uniformly distributed within the Brillouin zone; a Hamiltonian operator determination module 32, used to obtain the initial electron density and determine the Hamiltonian operator for each of the multiple target points based on the initial electron density, wherein the Hamiltonian operator reflects the electron energy at each target point; and a target orbit determination module 34, used for... The system determines multiple target orbitals for each target point based on the Hamiltonian operator, where the multiple target orbitals reflect the distribution of electrons in the target material; the orthogonal random orbital determination module 36 is used to determine multiple random orbitals for each target point among multiple target points, and to determine multiple orthogonal random orbitals based on the multiple random orbitals and multiple target orbitals, where the multiple random orbitals are generated based on plane wave basis sets; the electron density determination module 38 is used to determine the electron density of the target material based on the Hamiltonian operator, multiple target orbitals and multiple orthogonal random orbitals.
[0075] Figure 4This is a flowchart of the device for determining electron density. The device outputs the electron density of a target substance by running the electron density determination method provided in the above embodiments. The device receives a user's request for the electron density of the target substance and begins operation. The Brillouin zone determination module 30 determines the crystal structure of the target substance whose electron density needs to be determined, identifies the Brillouin zone of the target substance from the crystal structure, and simultaneously determines multiple k-points (i.e., target points) at the boundaries of the Brillouin zone. Next, the initial electron density of the target substance is obtained, and the method stored in the Hamiltonian operator determination module 32 is used to calculate the initial electron density to obtain the Hamiltonian operator for each target point. Subsequently, after receiving the Hamiltonian operator transmitted by the Hamiltonian operator determination module 32, the target orbital determination module 34 runs its stored algorithm to calculate multiple KS orbitals (i.e., target orbitals) on each k-point (i.e., target point), and transmits the relevant data of the target orbitals to the orthogonal random orbital determination module 36. The orthogonal random orbit determination module 36 runs the stored algorithm to orthogonally process multiple random orbits and multiple KS orbits at each k-point (i.e., target point), obtaining multiple orthogonal random orbits at each k-point (i.e., target point). The Hamiltonian operator determination module 32, target orbit determination module 34, and orthogonal random orbit determination module 36, when running the stored algorithms, obtain various functions required for runtime by calling multiple predefined interfaces. Finally, the electron density determination module 38 runs the stored algorithm, obtains the chemical potential of each electron in the target substance from the predefined interface, determines the density contributed by the orthogonal random orbits and the density contributed by the KS orbits based on the chemical potential of each electron and the Hamiltonian operator at each target point, iterates the sum of the densities contributed by the orthogonal random orbits and the KS orbits to obtain a convergence number, which is output to the user as the electron density of the target substance.
[0076] It should be noted that, Figure 3 Preferred embodiments of the shown examples can be found in [reference needed]. Figure 2 The relevant descriptions of the embodiments shown will not be repeated here.
[0077] This application also provides a non-volatile storage medium storing a computer program, wherein the above-described method for determining electron density is executed by running the computer program in the device where the non-volatile storage medium is located.
[0078] The aforementioned non-volatile storage medium is used to store a program that performs the following functions: determining the Brillouin zone of a target material and identifying multiple target points within the Brillouin zone, wherein the Brillouin zone is the region in which multiple electrons in the target material move within the lattice dual space of the target material, and the target points are uniformly distributed within the Brillouin zone; obtaining the initial electron density and determining the Hamiltonian operator for each of the multiple target points based on the initial electron density, wherein the Hamiltonian operator reflects the electron energy at each target point; determining multiple target orbitals for each target point based on the Hamiltonian operator, wherein the multiple target orbitals reflect the distribution of electrons in the target material; determining multiple random orbitals for each of the multiple target points and determining multiple orthogonal random orbitals based on the multiple random orbitals and the multiple target orbitals, wherein the multiple random orbitals are generated based on a plane wave basis set; and determining the electron density of the target material based on the Hamiltonian operator, the multiple target orbitals, and the multiple orthogonal random orbitals.
[0079] In another aspect of this application, an electronic device is also provided, including a memory and a processor. The memory stores a computer program, and the processor is configured to execute the above-described method for determining electron density through the computer program.
[0080] The processor in the aforementioned electronic device is used to run a program that performs the following functions: determining the Brillouin zone of the target material and identifying multiple target points within the Brillouin zone, wherein the Brillouin zone is the region in which multiple electrons in the target material move in the lattice dual space of the target material, and the target points are uniformly distributed within the Brillouin zone; obtaining the initial electron density and determining the Hamiltonian operator for each of the multiple target points based on the initial electron density, wherein the Hamiltonian operator reflects the electron energy at each target point; determining multiple target orbitals for each target point based on the Hamiltonian operator, wherein the multiple target orbitals reflect the distribution of electrons in the target material; determining multiple random orbitals for each of the multiple target points and determining multiple orthogonal random orbitals based on the multiple random orbitals and the multiple target orbitals, wherein the multiple random orbitals are generated based on a plane wave basis set; and determining the electron density of the target material based on the Hamiltonian operator, the multiple target orbitals, and the multiple orthogonal random orbitals.
[0081] It should be noted that each module in the above-mentioned device for determining electron density can be a program module (e.g., a set of program instructions to implement a certain function) or a hardware module. For the latter, it can be manifested in the following forms, but is not limited to them: each of the above modules is manifested as a processor, or the functions of each of the above modules are implemented by a processor.
[0082] The sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.
[0083] In the above embodiments of this application, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0084] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units can be a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling, direct coupling, or communication connection may be through some interfaces; the indirect coupling or communication connection between units or modules may be electrical or other forms.
[0085] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0086] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0087] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to related technologies, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.
[0088] The above description is only a preferred embodiment of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this application, and these improvements and modifications should also be considered within the scope of protection of this application.
Claims
1. A method for determining electron density, characterized in that, include: The Brillouin zone of the target material is determined, and multiple target points are determined in the Brillouin zone. The Brillouin zone is the region in which multiple electrons in the target material move in the lattice dual space of the target material, and the target points are uniformly distributed in the Brillouin zone. Obtaining an initial electron density and determining the Hamiltonian operator for each of the plurality of target points based on the initial electron density includes: determining the kinetic energy operator and the nonlocal potential operator for each target point; and determining the local potential operator for each target point based on the initial electron density; and determining the sum of the kinetic energy operator, the local potential operator, and the nonlocal potential operator as the Hamiltonian operator for each target point, wherein the Hamiltonian operator reflects the electron energy at each target point; Multiple target orbitals are determined for each target point based on the Hamiltonian operator, wherein the multiple target orbitals are used to reflect the distribution of electrons in the target substance; Multiple random trajectories are determined for each of the plurality of target points, and multiple orthogonal random trajectories are determined based on the multiple random trajectories and the plurality of target trajectories, wherein the multiple random trajectories are generated based on a plane wave basis set; The electron density of the target substance is determined by the Hamiltonian operator, the multiple target orbitals, and the multiple orthogonal random orbitals.
2. The method according to claim 1, characterized in that, The initial electron density was obtained by the following method: Obtain a random number and assign a value to the random number to obtain a new random number; The initial electron density is determined by the first ratio of the assigned random number to a preset parameter, wherein the preset parameter is a second ratio of the number of electrons corresponding to the initial electron density to the actual number of electrons; or... Read multiple first objective functions, determine the first square value of the modulus of each of the multiple first objective functions, and obtain multiple first square values; The sum of the plurality of first squared values is determined as the initial electron density.
3. The method according to claim 1, characterized in that, Determining the kinetic energy operator for each target point includes: Obtain the reciprocal lattice vector and the wave vector of each target point, and a second objective function with the reciprocal lattice vector and the wave vector as variables, wherein the kinetic energy of the plane wave of the reciprocal lattice vector at each target point is less than a preset kinetic energy threshold. Determine the second squared value of the sum of the reciprocal lattice vector and the wave vector, and determine the first product of the second squared value and the second objective function; Half of the first product is determined as the kinetic energy operator of the plurality of electrons at each target point.
4. The method according to claim 1, characterized in that, Determining the local potential operator for each target point includes: Perform a Fourier transform on the initial electron density to obtain the Fourier-transformed initial electron density; The first potential energy operator for each target point is determined based on the initial electron density after the Fourier transform; and... Retrieve the second potential energy operator for each target point from the database, wherein the first and second potential energy operators together reflect the potential energy generated by the interaction of multiple electrons in the target material; and The multiple elements that make up the target substance are identified, and the structure factor and the local potential function corresponding to each of the multiple elements are obtained from the database. Obtain the coordinates of each atom corresponding to each element in the Brillouin zone, and determine a third potential energy operator based on the coordinates, the structure factor, and the local potential function, wherein the third potential energy operator reflects the third potential energy generated by the interaction of multiple ions and multiple electrons of the target substance at each target point; The sum of the first potential energy operator, the second potential energy operator, and the third potential energy operator is determined as the local potential operator for each target point.
5. The method according to claim 4, characterized in that, Determining the nonlocal operator for each target point includes: Read the radial projection function corresponding to each element, the third objective function corresponding to each target point, and the fourth objective function corresponding to each target point from the database; Based on the radial projection function, the third objective function and the fourth objective function determine the projection function of the plane wave basis set at each target point; Obtain the coupling coefficient corresponding to each element, and determine the nonlocal potential operator of each target point based on the coupling coefficient, the structure factor, and the projection function of the plane wave basis set at each target point.
6. The method according to claim 1, characterized in that, The electron density of the target substance is determined based on the Hamiltonian operator, the multiple target orbitals, and the multiple orthogonal random orbitals, including: Based on the Hamiltonian operator, determine the first density of the contribution of each target orbit among the multiple target orbits at each target point; and, Determine the second density contributed by each of the plurality of orthogonal random orbits at each target point; The sum of the plurality of first densities and the plurality of second densities at each target point is determined as the third density of each target point; The sum of the multiple third densities corresponding to the multiple target points is determined as the electron density of the target material.
7. The method according to claim 6, characterized in that, Determining the first density of the contribution of each target orbit at each target point based on the Hamiltonian operator includes: Obtain the wave function in real space and determine the third square value of the modulus of the wave function; Obtain a fifth objective function with the chemical potential of each electron in the target substance and the characteristic energy of each target point as variables; The third squared value and the second product of the fifth objective function are determined as the first density.
8. The method according to claim 7, characterized in that, Determining the second density of the contribution of each of the plurality of orthogonal random orbits at each target point includes: A sixth objective function is determined, with the chemical potential of each electron and the Hamiltonian operator at each target point as variables, and the square root result of the sixth objective function at each target point is determined, wherein the square root result is in the form of an operator; The fourth square value of the modulus of the function determined by the square root result and each orthogonal random orbit is determined as the second density.
9. The method according to claim 1, characterized in that, The method further includes: When determining the electron density of the target substance in the next step, the Hamiltonian operator of each target point is replaced with a new Hamiltonian operator, wherein the new Hamiltonian operator is generated by the first electron density as input and the second electron density as output according to preset parameters.
10. A device for determining electron density, characterized in that, include: The Brillouin zone determination module is used to determine the Brillouin zone of the target material and to determine multiple target points in the Brillouin zone. The Brillouin zone is the region in which multiple electrons in the target material move in the lattice dual space of the target material, and the target points are uniformly distributed in the Brillouin zone. A Hamiltonian operator determination module is used to obtain an initial electron density and determine the Hamiltonian operator for each of the plurality of target points based on the initial electron density, including: determining the kinetic energy operator and the nonlocal potential operator for each target point; and determining the local potential operator for each target point based on the initial electron density; and determining the sum of the kinetic energy operator, the local potential operator, and the nonlocal potential operator as the Hamiltonian operator for each target point, wherein the Hamiltonian operator reflects the electron energy at each target point; The target orbit determination module is used to determine multiple target orbits for each target point based on the Hamiltonian operator, wherein the multiple target orbits are used to reflect the distribution of electrons in the target substance; An orthogonal random trajectory determination module is used to determine multiple random trajectories for each of the multiple target points, and to determine multiple orthogonal random trajectories based on the multiple random trajectories and the multiple target trajectories, wherein the multiple random trajectories are generated based on a plane wave basis set; The electron density determination module is used to determine the electron density of the target substance based on the Hamiltonian operator, the multiple target orbitals, and the multiple orthogonal random orbitals.
11. A non-volatile storage medium, characterized in that, The non-volatile storage medium stores a computer program, wherein the device containing the non-volatile storage medium executes the method for determining electron density as described in any one of claims 1 to 9 by running the computer program.
12. An electronic device comprising a memory and a processor, characterized in that, The memory stores a computer program, and the processor is configured to execute the method for determining electron density as described in any one of claims 1 to 9 through the computer program.