Lattice Hamiltonian automatic generator and lattice Hamiltonian automatic generation method
Through the modularly programmed lattice Hamiltonian automatic generator, the problems of high error rate and low efficiency in the lattice Hamiltonian construction process are solved, and efficient and accurate lattice Hamiltonian automatic generation is achieved to meet the calculation needs of large-scale numerical simulation.
Patent Information
- Application Number
- CN202510862168.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-25
- Publication Date
- 2025-07-22
- Estimated Expiration
- 2045-06-25
AI Technical Summary
In the prior art, the lattice Hamiltonian construction process relies on manual operations, resulting in high error rate and low efficiency, making it difficult to adapt to the calculation needs of large-scale numerical simulations.
It provides a lattice Hamiltonian automatic generator, which disassembles the lattice Hamiltonian construction process into a lattice base vector definition module, a lattice point filling module and a Hamiltonian generation module through modular programming to achieve automated and programmatic generation.
It improves the efficiency and accuracy of lattice Hamiltonian construction, reduces the error caused by manual intervention, and adapts to the calculation needs of large-scale numerical simulations.
Smart Images

Figure CN120354959A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of quantum simulation computing, and more particularly, to a lattice Hamiltonian automatic generator and a lattice Hamiltonian automatic generation method. Background Art
[0002] The lattice Hamiltonian is the basis for the research of condensed matter physics, and its construction process is essentially a mathematical abstraction and modeling of real physical systems. However, in related technologies, the process of constructing the lattice Hamiltonian involves too much user participation and has a strong dependence on manual labor, resulting in a high error rate in the construction of the lattice Hamiltonian. Summary of the Invention
[0003] This application provides a lattice Hamiltonian automatic generator.
[0004] An embodiment of this application provides a lattice Hamiltonian automatic generator, which includes a lattice basis vector definition module, a lattice site filling module, and a Hamiltonian generation module; The lattice basis vector definition module is configured to programmatically parse the input basis vector parameters to generate the primitive cell and lattice structure data; The lattice site filling module is configured to fill the lattice sites of the primitive cell according to the lattice structure data to determine the lattice site filling result; The Hamiltonian generation module is configured to automatically generate the lattice Hamiltonian according to the lattice structure data and the lattice site filling result.
[0005] In this way, the lattice Hamiltonian automatic generator provided by the embodiment of this application includes a lattice basis vector definition module, a lattice site filling module, and a Hamiltonian generation module. Among them, the lattice basis vector definition module can programmatically parse the input basis vector parameters to generate the primitive cell and lattice structure data. The lattice site filling module can fill the lattice sites of the primitive cell according to the lattice structure data to determine the lattice site filling result. The Hamiltonian generation module can automatically generate the lattice Hamiltonian according to the lattice structure data and the lattice site filling result. In this way, the lattice Hamiltonian automatic generator provided by the embodiment of this application avoids the problem of excessive manual intervention in the traditional lattice Hamiltonian construction process by automating and modularizing the process of generating the lattice Hamiltonian, thereby improving the efficiency and accuracy of the lattice Hamiltonian construction.
[0006] In some embodiments, the basis vector parameters include the cell dimension of the primitive cell, the primitive cell basis vector list, the lattice site coordinate list, the lattice type, the lattice vector list, the lattice size flag, the lattice length, and / or the boundary condition type, and the lattice basis vector definition module is configured to: Determine the primitive cell according to the cell dimension, the primitive cell basis vector list, and the lattice site coordinate list; Determine the lattice configuration data according to the lattice type and the list of lattice vectors; Determine the lattice physical property data according to the lattice size flag, the lattice length, and / or the boundary condition type; Determine the lattice structure data according to the primitive cell, the lattice configuration data, and the lattice physical property data.
[0007] In this way, the lattice basis vector definition module can determine the primitive cell according to the cell dimension, the list of primitive cell basis vectors, and the list of lattice point coordinates. Then, the lattice basis vector definition module can determine the lattice configuration data according to the lattice type and the list of lattice vectors. Next, the lattice basis vector definition module can determine the lattice physical property data according to the lattice size flag, the lattice length, and / or the boundary condition type. Finally, the lattice basis vector definition module can determine the lattice structure data according to the primitive cell, the lattice configuration data, and the lattice physical property data. In this way, by automatically parsing the basis vector parameters input by the user, the primitive cell and the lattice structure data are generated, avoiding the cumbersome process of manually drawing the lattice, significantly improving the lattice model construction efficiency, and at the same time avoiding the geometric errors when manually marking the lattice point coordinates or basis vectors, ensuring the accuracy of the lattice model.
[0008] In some embodiments, the lattice basis vector definition module is configured to: In response to a lattice configuration selection operation, determine the lattice configuration data from a preset lattice configuration template, where the preset lattice configuration template includes a chain lattice, a square lattice, a triangular lattice, a honeycomb lattice, and a kagome lattice.
[0009] In this way, the lattice basis vector definition module can also determine the lattice configuration data from a preset lattice configuration template in response to a lattice configuration selection operation, and the preset lattice configuration template includes a chain lattice, a square lattice, a triangular lattice, a honeycomb lattice, and a kagome lattice. In this way, the lattice configuration data is directly generated from the preset lattice configuration template through the lattice configuration selection operation, without manually inputting basis vector parameters or geometric rules, significantly shortening the lattice construction time.
[0010] In some embodiments, the lattice point filling result includes lattice point filling information and supercell definition information, and the lattice point filling module is configured to: Determine the initial lattice point filling information according to the input atomic type and spin state, and the lattice type, the list of primitive cell basis vectors, and the list of lattice point coordinates; Determine the lattice point filling information according to the initial lattice point filling information.
[0011] Thus, the lattice filling result includes lattice filling information and supercell definition information. The lattice filling module can determine the initial lattice filling information based on the input atomic types, spin states, lattice type, primitive cell basis vector list, and lattice coordinate list. Subsequently, the lattice filling module can determine the lattice filling information based on the initial lattice filling information. In this way, the manual operation steps are reduced through a standardized process, avoiding operation errors and information omissions caused by manual filling, thereby improving the efficiency of generating the lattice Hamiltonian.
[0012] In some embodiments, the lattice filling module is configured to: In the case where defects need to be constructed in the primitive cell, determine the lattice filling information according to the initial lattice filling information, the input defect primitive cell coordinate list, and the defect type; In the case where no defects need to be constructed in the primitive cell, determine the initial lattice filling information as the lattice filling information.
[0013] Thus, the lattice filling module can determine the lattice filling information according to the initial lattice filling information, the input defect primitive cell coordinate list, and the defect type in the case where defects need to be constructed in the primitive cell. Subsequently, the lattice filling module can determine the initial lattice filling information as the lattice filling information in the case where no defects need to be constructed in the primitive cell. In this way, precise modification of a specific primitive cell is achieved through the defect primitive cell coordinate list and the defect type.
[0014] In some embodiments, the lattice filling result includes supercell definition information, and the lattice filling module is configured to: Determine the supercell definition information according to the lattice type and the input supercell lattice vectors, where the supercell lattice vectors are represented by the primitive cell basis vector list.
[0015] Thus, the lattice filling module can determine the supercell definition information according to the lattice type and the input supercell lattice vectors, where the supercell lattice vectors are represented by the primitive cell basis vector list. In this way, the manual operation steps are reduced through a standardized process, avoiding operation errors and information omissions caused by manual filling, thereby improving the efficiency of generating the lattice Hamiltonian.
[0016] In some embodiments, the lattice structure data includes a primitive cell basis vector list, the lattice filling result includes supercell lattice vectors, and the Hamiltonian generation module is configured to: Determine a zero matrix according to the lattice filling result and the input Hamiltonian type; Determine the hopping matrix elements according to the zero matrix, the primitive cell basis vector list, the supercell lattice vectors, and the input hopping parameters; Determine the interaction matrix elements based on the lattice filling result and the input interaction parameters; Determine the lattice Hamiltonian based on the transition matrix elements and the interaction matrix elements.
[0017] In this way, the lattice structure data includes a list of primitive cell basis vectors, the lattice filling result includes the supercell lattice vectors, and the Hamiltonian generation module can determine the zero matrix according to the lattice filling result and the input Hamiltonian type. Then, the Hamiltonian generation module can determine the transition matrix elements according to the zero matrix, the list of primitive cell basis vectors, the supercell lattice vectors, and the input transition parameters. Next, the Hamiltonian generation module can determine the interaction matrix elements based on the lattice filling result and the input interaction parameters. Finally, the Hamiltonian generation module can determine the lattice Hamiltonian based on the transition matrix elements and the interaction matrix elements. In this way, the Hamiltonian generation module can realize the full-process programmed generation from lattice geometry to lattice Hamiltonian, without manual intervention in the details of matrix construction, thereby improving the efficiency of lattice Hamiltonian generation.
[0018] In some embodiments, the lattice structure data includes lattice symmetry parameters, and the Hamiltonian generation module is configured to: Determine the optimized lattice Hamiltonian based on the lattice symmetry parameters and the lattice Hamiltonian.
[0019] In this way, the lattice structure data includes lattice symmetry parameters, and the Hamiltonian generation module can determine the optimized lattice Hamiltonian according to the lattice symmetry parameters and the lattice Hamiltonian. In this way, the redundant elements in the Hamiltonian matrix can be identified through the lattice symmetry parameters, thereby reducing the matrix dimension and the computational complexity.
[0020] In some embodiments, the lattice Hamiltonian automatic generator further includes a quantum cluster method interface module, and the quantum cluster method interface module is configured to: Based on a preset quantum cluster method, determine the formatted Hamiltonian data according to the lattice Hamiltonian.
[0021] In this way, the lattice Hamiltonian automatic generator further includes a quantum cluster method interface module, and the quantum cluster method interface module can determine the formatted Hamiltonian data according to the lattice Hamiltonian based on a preset quantum cluster method. In this way, the quantum cluster method interface module converts the automatically generated lattice Hamiltonian into the formatted data required by the corresponding method according to the input requirements of the preset quantum cluster method, ensuring that the Hamiltonian data can be directly input into the subsequent calculation process and reducing the cumbersome operation of manual format conversion.
[0022] In some embodiments, during the automatic generation process of the lattice Hamiltonian, the basis vector parameters, the atomic types, the spin states, the supercell lattice vectors, and / or the Hamiltonian type can be adjusted.
[0023] Thus, during the automatic generation process of the lattice Hamiltonian, the basis vector parameters, the atomic types, the spin states, the supercell lattice vectors, and / or the Hamiltonian type can be adjusted. In this way, by adjusting multiple parameters, lattice models from simple to complex can be covered to adapt to diverse requirements.
[0024] An embodiment of the present application provides a method for automatically generating a lattice Hamiltonian. The method is based on the above-mentioned lattice Hamiltonian generator, and the method includes: Based on the lattice basis vector definition module, programmatically parse the input basis vector parameters to generate primitive cell and lattice structure data; Based on the lattice site filling module, according to the lattice structure data, fill the lattice sites of the primitive cell to determine the lattice site filling result; Based on the Hamiltonian generation module, automatically generate the lattice Hamiltonian according to the lattice structure data and the lattice site filling result.
[0025] Thus, based on the lattice basis vector definition module, programmatically parse the input basis vector parameters to generate primitive cell and lattice structure data. Then, based on the lattice site filling module, according to the lattice structure data, fill the lattice sites of the primitive cell to determine the lattice site filling result. Finally, based on the Hamiltonian generation module, automatically generate the lattice Hamiltonian according to the lattice structure data and the lattice site filling result. In this way, by automating and modularizing the process of generating the lattice Hamiltonian, the problem of excessive manual intervention in the traditional construction process of the lattice Hamiltonian is avoided, thereby improving the efficiency and accuracy of constructing the lattice Hamiltonian.
[0026] Additional aspects and advantages of the embodiments of the present application will be given in part in the following description, will become apparent in part from the following description, or will be understood through the practice of the embodiments of the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] The above and / or additional aspects and advantages of the present application will become apparent and be readily understood from the description of the embodiments in conjunction with the following drawings, where: Figure 1 is one of the schematic structural diagrams of the lattice Hamiltonian generator according to the embodiment of the present application; Figure 2 is the schematic diagram of the supercell configuration according to the embodiment of the present application; Figure 3 is the second schematic flow diagram of the lattice Hamiltonian generator according to the embodiment of the present application; Figure 4 Schematic diagram of the construction process of the lattice Hamiltonian according to an embodiment of the present application; Figure 5 Schematic diagram of the process of the automatic generation method of the lattice Hamiltonian according to an embodiment of the present application. Specific embodiments
[0028] The following details the embodiments of the present application. The examples of the embodiments are shown in the accompanying drawings, where the same or similar reference numerals denote the same or similar elements or elements with the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the embodiments of the present application, and should not be construed as a limitation to the embodiments of the present application.
[0029] In the research fields of condensed matter physics and materials science, the lattice Hamiltonian plays a fundamental role. It is a key tool for mathematically abstracting and modeling real physical systems. That is, through precise mathematical language, complex physical phenomena such as the interaction between electrons and atomic nuclei and the strong correlation effects between electrons in the crystal structure are refined into computable lattice Hamiltonian expressions, thereby providing a theoretical basis for in-depth exploration of key physical properties such as the electronic structure, phase transition behavior, and transport properties of materials.
[0030] However, in the related art, the construction process of the lattice Hamiltonian faces significant challenges. Specifically, every key link from the definition of the lattice configuration, the selection of the superlattice basis vectors, to the setting of the lattice site filling rules and the filling of the lattice Hamiltonian highly depends on manual operations. In practical applications, researchers need to manually define the basis vector parameters of the superlattice and, according to different lattice types (such as chain lattices, square lattices, and honeycomb lattices, etc.) and calculation requirements, fill in the lattice site information one by one, specifying whether each lattice site is filled with an atom, the type of atom (boson or fermion), and the spin state, so as to construct the lattice Hamiltonian.
[0031] In this way, this strong dependence on manual operations brings various problems. First of all, manual operations inevitably have subjectivity and randomness. Different researchers may adopt different primitive cell selection methods or superlattice division strategies for the same physical system, and different choices will directly lead to differences in the Hamiltonian construction rules, thereby introducing human errors, resulting in a relatively high error rate in the construction of the lattice Hamiltonian. For example, when dealing with a two-dimensional square lattice, if the selection of the superlattice basis vectors changes from the default (1, 0), (0, 1) to ( , ), ( , - ), the form of the lattice Hamiltonian will change, resulting in deviations in the calculation results.
[0032] Moreover, when parameters such as the lattice configuration, many-body model, or superlattice size change, the entire construction process of the lattice Hamiltonian needs to be restarted and comprehensively adjusted. For example, when transitioning from studying a simple spinless fermion system to a spinful system, or from a two-dimensional lattice to a three-dimensional lattice, researchers must redefine the lattice basis vectors, lattice filling rules, and manually modify the lattice Hamiltonian. This repetitive labor not only consumes a large amount of manpower and time but also easily leads to omissions due to the cumbersome process, further increasing the risk of errors.
[0033] In addition, in large-scale numerical simulation scenarios, manually constructing the Hamiltonian is too inefficient. As the dimension of the computational system increases, the complexity of strongly correlated electron systems grows exponentially, posing extremely high requirements for computing resources and modeling efficiency. The traditional manual operation mode is difficult to meet this demand, which may not only delay the research progress but also lead to the invalidation of the entire simulation result due to the inability to correct manual errors in a timely manner.
[0034] Based on the above problems, please refer to Figure 1 , an embodiment of the present application provides a lattice Hamiltonian automatic generator 100, which includes a lattice basis vector definition module 10, a lattice filling module 20, and a Hamiltonian generation module 30.
[0035] Among them, the lattice basis vector definition module 10 is configured to programmatically parse the input basis vector parameters to generate primitive cell and lattice structure data.
[0036] The lattice filling module 20 is configured to fill the lattice points of the primitive cell according to the lattice structure data to determine the lattice filling result.
[0037] The Hamiltonian generation module 30 is configured to automatically generate the lattice Hamiltonian according to the lattice structure data and the lattice filling result.
[0038] Specifically, the essence of the lattice Hamiltonian automatic generator 100 is to disassemble the lattice Hamiltonian construction process into three logically independent and interconnected modules through modular programming, namely the lattice basis vector definition module 10, the lattice filling module 20, and the Hamiltonian generation module 30, and replace the traditional manual operation in a programmatic way to achieve the full process automation from lattice geometric definition to Hamiltonian generation, replacing the cumbersome process of traditional manual construction of the Hamiltonian.
[0039] Among them, the lattice basis vector definition module 10 is the foundation. The lattice structure data (such as the primitive cell and lattice structure data) generated by the lattice basis vector definition module 10 provides geometric input for subsequent modules. The lattice site filling module 20 further refines the physical properties (such as spin type, etc.) of the lattice sites based on the lattice structure and outputs the lattice site filling result. The Hamiltonian generation module 30, as the core, integrates the data of the lattice basis vector definition module 10 and the lattice site filling module 20 to automatically generate the lattice Hamiltonian, realizing the mapping from the structure to the physical model.
[0040] The lattice Hamiltonian refers to the matrix that describes the interactions and energies of particles in a lattice system and is automatically constructed by the Hamiltonian generation module 30.
[0041] Programmatic parsing refers to the mathematical parsing and structured processing of the basis vector parameters input by the user through pre-written program algorithms to automatically generate geometric structure data recognizable by a computer. For example, when the input primitive cell basis vectors are (1, 0) and (0, 1), the program can automatically generate the lattice point coordinate network of a two-dimensional square lattice.
[0042] The primitive cell refers to the smallest repeating unit of a crystal structure, which can completely fill the entire crystal through translation operations. The selection of the primitive cell is not unique, but the volumes are the same. The primitive cell can be understood as the "building block unit" of the crystal. For example, the primitive cell of graphene contains two carbon atoms, while the primitive cell of a simple cubic lattice contains only one lattice point. The definition of the primitive cell directly determines the periodicity and symmetry of the lattice.
[0043] The lattice structure data refers to the complete lattice geometric information generated by translating the primitive cell through basis vectors, including lattice type, lattice dimension, lattice basis vectors, lattice size, and boundary conditions, etc. The lattice structure data is the digital representation of the crystal. For example, the structure data of a two-dimensional square lattice can be described as "an infinite grid generated by translating the primitive cell (1, 0) and (0, 1), with open boundary conditions".
[0044] The lattice site filling result refers to the result of configuring the physical properties of the lattice sites within the primitive cell based on the lattice structure data, including lattice site filling information and supercell definition information.
[0045] In summary, the lattice Hamiltonian automatic generator provided by the embodiments of the present application includes a lattice basis vector definition module, a lattice point filling module, and a Hamiltonian generation module. Among them, the lattice basis vector definition module can programmatically parse the input basis vector parameters to generate primitive cell and lattice structure data. The lattice point filling module can fill the lattice points in the primitive cell according to the lattice structure data to determine the lattice point filling result. The Hamiltonian generation module can automatically generate the lattice Hamiltonian according to the lattice structure data and the lattice point filling result. In this way, the lattice Hamiltonian automatic generator 100 provided by the embodiments of the present application avoids the problem of excessive manual intervention in the traditional lattice Hamiltonian construction process by automating and modularizing the process of generating the lattice Hamiltonian, thereby improving the efficiency and accuracy of the lattice Hamiltonian construction.
[0046] In some embodiments, the basis vector parameters include the cell body dimension of the primitive cell, the list of primitive cell basis vectors, the list of lattice point coordinates, the lattice type, the list of lattice vectors, the lattice size flag, the lattice length, and / or the boundary condition type. The lattice basis vector definition module 10 is configured to: Determine the primitive cell according to the cell body dimension, the list of primitive cell basis vectors, and the list of lattice point coordinates; Determine the lattice configuration data according to the lattice type and the list of lattice vectors; Determine the lattice physical property data according to the lattice size flag, the lattice length, and / or the boundary condition type; Determine the lattice structure data according to the primitive cell, the lattice configuration data, and the lattice physical property data.
[0047] Specifically, the basis vector parameters include the cell body dimension of the primitive cell, the list of primitive cell basis vectors, the list of lattice point coordinates, the lattice type, the list of lattice vectors, the lattice size flag, the lattice length, and / or the boundary condition type.
[0048] Among them, the cell body dimension of the primitive cell, the list of primitive cell basis vectors, and the list of lattice point coordinates are all related parameters of the primitive cell.
[0049] The cell body dimension of the primitive cell refers to the spatial dimension of the primitive cell, such as one-dimensional, two-dimensional, or three-dimensional, etc., which can determine the geometric space attributes of the primitive cell. For example, a two-dimensional primitive cell has two basis vectors, and a three-dimensional primitive cell has three basis vectors.
[0050] The list of primitive cell basis vectors refers to the basis vector coordinates of each dimension of the primitive cell, which is used to describe the shape and size of the primitive cell. For example, the two-dimensional primitive cell basis vectors can be (1, 0) and (0, 1) (square primitive cell), or (1, 0) and ( , ) (honeycomb primitive cell). The list of primitive cell basis vectors directly determines the volume and symmetry of the primitive cell.
[0051] The list of lattice point coordinates refers to the coordinate values of each lattice point within the primitive cell (in the coordinate system relative to the primitive cell basis vectors), which can determine the distribution of particles within the primitive cell and serves as the geometric basis for subsequent lattice filling (such as defining atomic types and spins).
[0052] The lattice type, list of lattice vectors, lattice size flag, lattice length, and boundary condition type are parameters related to the lattice.
[0053] The lattice type refers to the geometric type of the lattice, such as chain lattice, square lattice, triangular lattice, honeycomb lattice, kagome lattice, etc. It should be noted that the lattice type is usually associated with default lattice basis vectors, and users can also break through the conventional type limitations by customizing the basis vectors.
[0054] The list of lattice vectors refers to the extended vectors in each dimension of the lattice, which are used to describe how the primitive cell forms a complete lattice through translation, can determine the spatial expansion direction of the lattice, and its length and direction can be the same as or different from the primitive cell basis vectors.
[0055] The lattice size flag is a parameter used to identify whether the lattice is of finite size or infinite size. For a finite lattice, the lattice length needs to be specified. For an infinite lattice, the length does not need to be input.
[0056] The lattice length refers to the number of lattice points or the physical length in each dimension.
[0057] The boundary condition type refers to the way of handling the lattice at the spatial boundary, including periodic boundary conditions (i.e., the lattice is connected end to end) and open boundary conditions (i.e., the lattice edges are truncated). The boundary conditions will affect the calculation of the hopping terms across the boundary in the Hamiltonian. For example, periodic boundaries will introduce a phase factor, while open boundaries will ignore the interactions outside the boundary.
[0058] First, according to the cell dimension, list of primitive cell basis vectors, and list of lattice point coordinates input by the user, construct the primitive cell. The specific operations are as follows: 1. Determine the spatial dimension of the primitive cell according to the cell dimension (e.g., a 2D primitive cell needs to define two basis vectors); 2. Construct the geometric framework of the primitive cell through the list of primitive cell basis vectors; 3. Use the list of lattice point coordinates to assign specific positions to each lattice point within the primitive cell.
[0059] Next, when the user selects a custom lattice, determine the lattice configuration data according to the lattice type and list of lattice vectors input by the user.
[0060] Then, according to the lattice size flag, lattice length, and boundary condition type input by the user, determine the lattice physical property data.
[0061] Finally, merge the primitive cell definition, lattice configuration data, and physical property data to form a complete lattice structure description (i.e., lattice structure data) for use by the subsequent lattice filling module 20 and Hamiltonian generation module 30.
[0062] In this way, the lattice basis vector definition module can determine the primitive cell according to the cell dimension, the list of primitive cell basis vectors, and the list of lattice point coordinates. Then, the lattice basis vector definition module can determine the lattice configuration data according to the lattice type and the list of lattice vectors. Then, the lattice basis vector definition module can determine the lattice physical property data according to the lattice size flag, the lattice length, and / or the boundary condition type. Finally, the lattice basis vector definition module can determine the lattice structure data according to the primitive cell, the lattice configuration data, and the lattice physical property data. In this way, by automatically parsing the basis vector parameters input by the user, the primitive cell and the lattice structure data are generated, avoiding the cumbersome process of manually drawing the lattice, significantly improving the lattice model construction efficiency, and at the same time avoiding the geometric errors when manually labeling the lattice point coordinates or basis vectors, ensuring the accuracy of the lattice model.
[0063] In some embodiments, the lattice basis vector definition module 10 is configured to: In response to a lattice configuration selection operation, determine the lattice configuration data from a preset lattice configuration template.
[0064] Specifically, the lattice configuration selection operation refers to the behavior of the user selecting the type of the lattice through the interface or parameter input.
[0065] The lattice basis vector definition module 10 can provide a preset lattice for the user to select. The user selects to use the preset lattice (instead of a custom lattice) through the module interface. For example, in a two-dimensional scenario, "square lattice" is selected.
[0066] Then, the system retrieves the predefined parameters of the corresponding lattice from the built-in preset lattice configuration template library according to the user's selection. For example, for a square lattice: the default basis vectors are two-dimensional orthogonal vectors (1, 0) and (0, 1), and the lattice points are arranged in a square.
[0067] Subsequently, the system automatically generates the geometric structure data of the lattice based on the template parameters.
[0068] In this way, the lattice basis vector definition module can also determine the lattice configuration data from a preset lattice configuration template in response to a lattice configuration selection operation. The preset lattice configuration template includes a chain lattice, a square lattice, a triangular lattice, a honeycomb lattice, and a kagome lattice. In this way, the lattice configuration data is generated directly from the preset lattice configuration template through the lattice configuration selection operation, without manually inputting basis vector parameters or geometric rules, significantly shortening the modeling time.
[0069] In some embodiments, the lattice point filling result includes lattice point filling information and supercell definition information. The lattice point filling module 20 is configured to: Determine the initial lattice point filling information according to the input atomic type and spin state, and the lattice type, the list of primitive cell basis vectors, and the list of lattice point coordinates; Determine the lattice filling information according to the initial lattice filling information.
[0070] Specifically, the atomic type refers to the type of particles filled on the lattice, including bosons and fermions. Among them, bosons refer to particles that follow Bose-Einstein statistics (such as photons, phonons, etc.), and the transition terms in their Hamiltonian do not involve spin exchange symmetry. Fermions refer to particles that follow Fermi-Dirac statistics (such as electrons, protons, etc.), and the Pauli exclusion principle needs to be considered. The Hamiltonian may contain spin-related terms (such as spin-orbit coupling, exchange interaction).
[0071] The spin state describes the spin property of particles, including no spin and having spin. Among them, no spin does not consider the spin degree of freedom (such as electrons in a simplified model), and the dimension of the lattice Hamiltonian is only related to the number of orbits. Having spin has a spin degree of freedom (such as the spin-up / down of electrons), and the Hamiltonian needs to introduce spin indices.
[0072] The initial lattice filling information refers to the default lattice filling rule automatically generated based on the lattice type, the list of primitive cell basis vectors, the list of lattice coordinates, and the atomic type and spin state input by the user.
[0073] In this way, the lattice filling result includes lattice filling information and supercell definition information. The lattice filling module can determine the initial lattice filling information according to the input atomic type and spin state, as well as the lattice type, the list of primitive cell basis vectors, and the list of lattice coordinates. Then, the lattice filling module can determine the lattice filling information according to the initial lattice filling information. In this way, the manual operation steps are reduced through a standardized process, avoiding operation errors and information omissions caused by manual filling, thereby improving the efficiency of generating the lattice Hamiltonian.
[0074] In some embodiments, the lattice filling module 20 is configured to: In the case where defects need to be constructed in the primitive cell, determine the lattice filling information according to the initial lattice filling information, the input list of defect primitive cell coordinates, and the defect type; In the case where no defects need to be constructed in the primitive cell, determine the initial lattice filling information as the lattice filling information.
[0075] Specifically, constructing defects in the primitive cell means modifying the lattice filling rule of a specific primitive cell to a non-default state during the lattice filling process, breaking the consistency of the lattice filling of the primitive cell. Under normal circumstances, the lattice filling module 20 defaults that the lattice filling rules of all primitive cells are the same (such as full filling, the same atomic type and spin). If defects need to be constructed, the user is allowed to individually adjust the filling rule of a specific primitive cell, for example, changing whether an atom is filled in a certain lattice point in the primitive cell, the type or spin state of the filled atom, so as to simulate defects in the crystal structure.
[0076] The list of defective primitive cell coordinates refers to the set of primitive cell coordinates input by the user that need to be used for defect construction, and is used to locate the primitive cells for which the filling rule needs to be modified. Generally speaking, each primitive cell has a unique coordinate in the lattice (such as the (x, y) coordinate in a two-dimensional lattice and the (x, y, z) coordinate in a three-dimensional lattice). The user specifies which primitive cells need to be modified by inputting a specific list of coordinates (such as the primitive cell coordinates (1, 1), (2, 3)).
[0077] The defect type refers to the specific type of modification made to the lattice point filling rule of the target primitive cell, including the lattice point filling state, atomic species, and atomic spin. The defect type is a specific modification instruction for the lattice point filling rule of the primitive cell and needs to be used in conjunction with the defective primitive cell coordinates.
[0078] In this way, the lattice point filling module can determine the lattice point filling information according to the initial lattice point filling information, the input list of defective primitive cell coordinates, and the defect type when defects need to be constructed for the primitive cell. Then, the lattice point filling module can determine the initial lattice point filling information as the lattice point filling information when there is no need to construct defects for the primitive cell. In this way, precise modification of specific primitive cells is achieved through the list of defective primitive cell coordinates and the defect type.
[0079] In some embodiments, the lattice point filling result includes supercell definition information, and the lattice point filling module 20 is configured to: Determine the supercell definition information according to the lattice type and the input supercell lattice vectors.
[0080] Specifically, the supercell lattice vectors refer to the vectors used to describe the geometric structure of the supercell, which are represented based on the primitive cell basis vectors (the dimensional vectors of the primitive cell) and reflect the size and shape of the supercell in the lattice. For example, if the lattice dimension is two-dimensional, then the user inputs two supercell lattice vector coordinates. The values of the supercell lattice vectors can determine the size and shape of the supercell. For example, the vectors (1, 0) and (0, 1) indicate that the supercell expands 1 time in the direction of the primitive cell basis vectors and contains 1 primitive cell. Moreover, the definition of the supercell lattice vectors directly affects the simulation of long-range correlation effects in the quantum cluster method. For example, by dividing the supercell with different vectors, the electronic correlation behavior at different scales can be studied.
[0081] The supercell definition information refers to the complete information that determines the supercell structure and is defined by the supercell lattice vectors and related parameters. Its core is to clarify the geometric configuration of the supercell, the number of primitive cells it contains, and the arrangement pattern, providing a structured input for the subsequent generation of the Hamiltonian. The supercell definition information is the basic data for the Hamiltonian generation module 30 and is used to distinguish the local hopping terms and the cross-boundary hopping terms within the supercell. For example, when the target primitive cell of a hopping term is inside the supercell, it is retained as a local term; if it exceeds the boundary, it is decomposed by the supercell lattice vectors, mapped to the equivalent position in the adjacent supercell, and the momentum space phase factor is calculated.
[0082] Moreover, the supercell is the basic unit for the quantum cluster method to handle strongly correlated systems, and its definition information directly affects the calculation accuracy of the quantum cluster method. For example, the lattice Hamiltonians generated by different supercell lattice vectors need to be passed to the subsequent quantum cluster method for energy spectrum analysis.
[0083] Please refer to Figure 2 , Figure 2 for the schematic diagrams of the supercell configurations obtained from different supercell definition information. Among them, Figure 2 the vectors of the left supercell configuration are (1, 0), (0, 1), Figure 2 the vectors of the left supercell configuration are ( , ), ( , - ).
[0084] In this way, the lattice filling module can determine the supercell definition information according to the lattice type and the input supercell lattice vectors, where the supercell lattice vectors are represented as a list of primitive cell basis vectors. In this way, the standardized process reduces the manual operation steps, avoiding operation errors and information omissions caused by manual filling, thereby improving the efficiency of lattice Hamiltonian generation.
[0085] The lattice structure data includes a list of primitive cell basis vectors, the lattice filling result includes the supercell lattice vectors, and the Hamiltonian generation module 30 is configured to: Determine the zero matrix according to the lattice filling result and the input Hamiltonian type; Determine the hopping matrix elements according to the zero matrix, the list of primitive cell basis vectors, the supercell lattice vectors, and the input hopping parameters; Determine the interaction matrix elements according to the lattice filling result and the input interaction parameters; Determine the lattice Hamiltonian according to the hopping matrix elements and the interaction matrix elements.
[0086] Specifically, the Hamiltonian type refers to the category of Hamiltonians used to distinguish different physical models, such as the Hubbard Model, the Heisenberg Model, etc. Different models correspond to different Hamiltonian expressions and physical meanings. For example, the Hubbard model mainly describes the hopping of electrons and Coulomb interactions, and is applicable to strongly correlated electron systems; the Heisenberg model focuses on spin interactions and is used for the study of magnetic systems. The user needs to input the Hamiltonian type to determine the basic form of matrix construction, and the lattice Hamiltonian automatic generator 100 calls the corresponding calculation rules according to the type.
[0087] The zero matrix refers to a matrix initialized to all zeros, which serves as the basic framework for constructing the lattice Hamiltonian. Its dimension is determined by the number of orbitals in the supercell (each supercell contains N×S orbitals, where N is the number of orbitals in the primitive cell and S is the number of lattice points in the supercell). For example, if the supercell contains 4 lattice points and 1 orbital per lattice point (without spin), then the dimension of the zero matrix is 4×4; if spin is considered and there are 2 orbitals per lattice point (spin up / down), then the dimension is 8×8.
[0088] The hopping parameter refers to the physical quantity that describes the hopping of electrons (or particles) between different lattice points (or orbitals), usually the hopping strength in the form of a complex number. The hopping parameter reflects the motion ability of particles in the lattice, such as the tunneling strength t in the Hubbard model. The hopping parameter needs to be combined with the list of primitive cell basis vectors and the supercell lattice vectors to determine the lattice point pairs where hopping occurs and the corresponding displacement vectors.
[0089] The hopping matrix element refers to the matrix element calculated based on the hopping parameter, the primitive cell basis vectors, and the supercell lattice vectors, which describes the hopping contribution between different orbitals.
[0090] The interaction parameter refers to the physical quantity that describes the interaction between particles, such as the Coulomb repulsion energy U in the Hubbard model. It should be noted that the interaction parameter is usually a local term and only acts on the orbitals within the same lattice point (or primitive cell). Moreover, the interaction parameter needs to be combined with the lattice filling results (such as atomic type, spin state) to determine the type and strength of the interaction. For example, the Coulomb interaction between electrons with opposite spins at the same lattice point.
[0091] The interaction matrix element refers to the matrix element calculated based on the interaction parameter and the lattice filling results, which describes the interaction contribution between particles within the same lattice point (or primitive cell).
[0092] The lattice Hamiltonian refers to the complete matrix obtained by integrating the hopping matrix element and the interaction matrix element, which describes the energy state of the entire supercell system and is the core input for quantum cluster method calculations.
[0093] First, according to the lattice filling result (the number of lattice points S determined by the supercell lattice vectors) and the type of Hamiltonian (determining the number of orbitals N), a zero matrix with dimensions N×S×N×S is generated as a blank framework.
[0094] Next, the input hopping parameters are parsed to determine the scope of action of each hopping term (within the supercell or across boundaries). If it is a cross-boundary hopping, the displacement vector is decomposed by the primitive cell basis vectors , and the phase factor is calculated. Finally, all hopping terms are integrated to fill the off-diagonal elements of the zero matrix, obtaining the hopping matrix.
[0095] Then, according to the lattice filling situation (such as whether an atom is filled and the spin direction), the action points of the interaction are determined (such as electrons with opposite spins at the same lattice point). And the interaction parameters are converted into the diagonal elements of the matrix.
[0096] Finally, the hopping matrix elements and the interaction matrix elements are superimposed into the zero matrix to obtain the final lattice Hamiltonian.
[0097] For example, when the type of Hamiltonian is the Hubbard model, the Hubbard model Hamiltonian can be written in the following form:
[0098] where is the particle creation operator at lattice site i, is the particle annihilation operator at lattice site i, used to describe the quantum state operations of fermions (such as electrons); is the hopping integral (i.e., the hopping parameter) between lattice sites i and j, characterizing the tunneling ability of electrons between different lattice sites; is the four-body interaction coefficient, describing the many-body interaction (such as Coulomb interaction) between lattice sites i, j, k, l, usually used to characterize the non-local effect of electron-electron interaction; is the particle creation operator at lattice site j, is the particle annihilation operator at lattice site k, is the particle annihilation operator at lattice site l.
[0099] Suppose there are N orbitals in the primitive cell and S lattice points in each supercell, then there are N×S orbitals in each supercell.
[0100] First, the inter-primitive-cell hopping terms are mapped to the supercell: 1. Traverse all the hopping parameters in the primitive cell Hamiltonian (such as the hopping coefficient of , where R represents the displacement vector between different supercells, characterizing the relative position offset of the primitive cell in the lattice). 2. For each hopping parameter , determine its scope of action: If the target primitive cell is inside the supercell, it remains as a local term within the supercell; if the target primitive cell extends beyond the supercell, through the decomposition of the superlattice vector, the transition is mapped to the equivalent position in the adjacent supercell, and the corresponding supercell displacement vector Δ is recorded.
[0101] Next, calculate the momentum space phase factor: For each non-zero supercell displacement Δ (i.e., the case where the transition term crosses the supercell boundary), calculate its real space displacement vector: , where is the supercell displacement vector, representing the spatial displacement when the transition term crosses the supercell boundary, which is linearly combined by the primitive cell basis vectors ; is the component of the displacement vector in the direction of the primitive cell basis vector (i = 1, 2, 3 corresponding to the three dimensions of the three-dimensional lattice); are the basis vectors of the primitive cell, used to define the geometric structure of the lattice. And based on solve the phase factor of momentum q , where q is the wave vector in momentum space, characterizing the momentum state of the electron; the phase factor is used to describe the phase shift generated by the wave vector q when the electron crosses the supercell boundary.
[0102] Finally, integrate the transition matrix to obtain T(q): 1. For each supercell displacement Δ, extract its corresponding transition matrix t( ) (with dimension N×N, and each element corresponding to the transition coefficient between primitive cell orbits). 2. Weighted sum the contributions of all non-zero displacements: , where is the transition matrix with dimension N×N, where N is the number of orbits within the primitive cell, and the matrix elements correspond to the transition coefficients between primitive cell orbits; T(q) is the effective transition matrix with dimension N×S×N×S, where S is the number of lattice points in the supercell, describing the effective transitions of all orbits within the supercell at momentum q.
[0103] Thus, the lattice structure data includes a list of primitive cell basis vectors, the lattice filling result includes the supercell lattice vectors, and the Hamiltonian generation module can determine a zero matrix based on the lattice filling result and the input Hamiltonian type. Then, the Hamiltonian generation module can determine the hopping matrix elements based on the zero matrix, the list of primitive cell basis vectors, the supercell lattice vectors, and the input hopping parameters. Next, the Hamiltonian generation module can determine the interaction matrix elements based on the lattice filling result and the input interaction parameters. Finally, the Hamiltonian generation module can determine the lattice Hamiltonian based on the hopping matrix elements and the interaction matrix elements. In this way, the Hamiltonian generation module can achieve the full-process procedural generation from lattice geometry to lattice Hamiltonian, without the need for manual intervention in the details of matrix construction, thus improving the efficiency of lattice Hamiltonian generation.
[0104] In some embodiments, the lattice structure data includes lattice symmetry parameters, and the Hamiltonian generation module 30 is configured to: Determine an optimized lattice Hamiltonian based on the lattice symmetry parameters and the lattice Hamiltonian.
[0105] Specifically, the lattice symmetry parameters refer to physical quantities that describe the geometric symmetry of the lattice and are used to characterize the invariant characteristics of the lattice under transformations such as translation, rotation, and reflection. The lattice symmetry parameters include the point group symmetry of the lattice (such as rotation axes of symmetry, mirror planes) and the space group symmetry (the combination of translational symmetry and point group). For example, a two-dimensional square lattice has 4-fold rotational symmetry and mirror symmetry, and a honeycomb lattice has 6-fold rotational symmetry. The lattice symmetry parameters are automatically derived by the lattice basis vector definition module 10 based on the input basis vector parameters (such as the list of primitive cell basis vectors, lattice type). For example, when the user selects a square lattice, the system defaults to its symmetry parameters of the square symmetry group.
[0106] The lattice symmetry parameters can be used to simplify the calculation of the lattice Hamiltonian, reducing the number of independent matrix elements using symmetry and lowering the computational complexity.
[0107] The optimized lattice Hamiltonian refers to a matrix obtained by simplifying or transforming the lattice Hamiltonian based on the lattice symmetry parameters, which has fewer independent parameters or a more compact form. The optimization logic of the optimized lattice Hamiltonian is to reduce the initial matrix (composed of hopping and interaction matrix elements) using lattice symmetries (such as translational symmetry, rotational symmetry). For example, a lattice with translational symmetry can transform the Hamiltonian from real space to momentum space through Fourier transform and simplify it to a block diagonal matrix (each block corresponds to a momentum component) using Bloch's theorem.
[0108] Thus, the lattice structure data includes lattice symmetry parameters, and the Hamiltonian generation module can determine an optimized lattice Hamiltonian according to the lattice symmetry parameters and the lattice Hamiltonian. In this way, redundant elements in the Hamiltonian matrix can be identified through the lattice symmetry parameters, thereby reducing the matrix dimension and computational complexity.
[0109] Please refer to Figure 3 , in some embodiments, the lattice Hamiltonian automatic generator 100 further includes a quantum cluster method interface module 40, and the quantum cluster method interface module 40 is configured to: Determine formatted Hamiltonian data based on a preset quantum cluster method and according to the lattice Hamiltonian.
[0110] Specifically, the quantum cluster method interface module 40 is one of the modules in the lattice Hamiltonian automatic generator 100, responsible for passing the generated lattice Hamiltonian to the Quantum Cluster Methods (QCM) for subsequent calculation and analysis. It is a bridge connecting Hamiltonian generation and actual physical simulation, realizing the docking of the lattice Hamiltonian with the QCM method and ensuring the compatibility of data formats and calculation processes.
[0111] The preset quantum cluster method refers to the quantum cluster theory calculation method pre-integrated in the system for dealing with the many-body problems of strongly correlated electron systems. The preset quantum cluster methods include Cluster Perturbation Theory (CPT), Variational Cluster Approximation (VCA), and Cellular Dynamical Mean Field Theory (CDMFT). The quantum cluster method interface module 40 can provide quantum cluster methods with different precisions and computational costs, and users can select according to their needs.
[0112] The formatted Hamiltonian data refers to the data obtained after format conversion or preprocessing of the lattice Hamiltonian according to the input requirements of the preset quantum cluster method. The quantum cluster method interface module 40 converts the lattice Hamiltonian into formatted Hamiltonian data, which can ensure that the lattice Hamiltonian can be correctly read and processed by the QCM method, avoiding calculation errors caused by incompatible data formats.
[0113] The quantum cluster method interface module 40, as a carrier, calls the preset quantum cluster method to process the lattice Hamiltonian into formatted Hamiltonian data, thereby realizing the complete process from automatic Hamiltonian generation to numerical simulation of many-body systems.
[0114] Thus, the lattice Hamiltonian automatic generator further includes a quantum cluster method interface module, which can determine the formatted Hamiltonian data based on a preset quantum cluster method and the lattice Hamiltonian. In this way, the quantum cluster method interface module converts the automatically generated lattice Hamiltonian into the formatted data required by the corresponding method according to the input requirements of the preset quantum cluster method, ensuring that the Hamiltonian data can be directly input into the subsequent calculation process and reducing the cumbersome operation of manual format conversion.
[0115] In some embodiments, during the automatic generation of the lattice Hamiltonian, the basis vector parameters, atomic types, spin states, supercell lattice vectors, and / or Hamiltonian types can be adjusted.
[0116] Specifically, any one or more of the parameters input by the user, such as basis vector parameters, atomic types, spin states, supercell lattice vectors, and Hamiltonian types, can be adjusted.
[0117] The user can change the geometric configuration of the lattice (such as switching from a two-dimensional square lattice to a honeycomb lattice) or physical properties (such as changing from a finite lattice to an infinite lattice) by modifying the basis vector parameters to meet the requirements of different material models.
[0118] Adjusting the atomic types and spin states can be used to simulate different particle systems (such as electrons, photons) or spin-related physical phenomena (such as ferromagnetism, spin polarization).
[0119] Adjusting the supercell lattice vectors can change the size and shape of the supercell (such as adjusting from a supercell of 1×1 primitive cells to a 2×2 or rhombic configuration) to study the electron correlation effects at different scales.
[0120] Switching different Hamiltonian types can be used to study different physical problems (such as changing from an electron transport problem to a magnetic system). For example, the Hubbard model focuses on electron hopping and Coulomb interactions, while the Heisenberg model focuses on spin exchange interactions.
[0121] Please refer to Figure 4 , Figure 4Schematic diagram of the construction process of the lattice Hamiltonian. Among them, the elliptical box is used to indicate the lattice basis vector definition module 10, the rectangular box is used to indicate the lattice site filling module 20, the parallelogram box is used to indicate the Hamiltonian generation module 30, and the diamond is used to indicate the quantum cluster method interface module 40. The input of the lattice basis vector definition module 10 is the basis vector parameters defined by the user, and the output is the primitive cell and lattice structure data. The input of the lattice site filling module 20 is the lattice structure data generated by the lattice basis vector definition module 10, the atomic type, spin state, and supercell lattice vector input by the user, and the output is the lattice site filling result, that is, the lattice site filling information and supercell definition information. The input of the Hamiltonian generation module 30 is the lattice structure data, the lattice site filling result, and the Hamiltonian type input by the user, and the output is the lattice Hamiltonian. The input of the quantum cluster method interface module 40 is the lattice Hamiltonian, and the output is the formatted Hamiltonian data and QCM calculation results.
[0122] In this way, during the automatic generation of the lattice Hamiltonian, the basis vector parameters, atomic type, spin state, supercell lattice vector, and / or Hamiltonian type can be adjusted. In this way, by adjusting multiple parameters, lattice models from simple to complex can be covered to adapt to diverse requirements.
[0123] Please refer to Figure 5 , the embodiment of the present application provides a method for automatically generating a lattice Hamiltonian. The method is based on the above-mentioned lattice Hamiltonian automatic generator, and the method includes: 01: Based on the lattice basis vector definition module, programmatically parse the input basis vector parameters to generate the primitive cell and lattice structure data; 02: Based on the lattice site filling module, fill the lattice sites of the primitive cell according to the lattice structure data to determine the lattice site filling result; 03: Based on the Hamiltonian generation module, automatically generate the lattice Hamiltonian according to the lattice structure data and the lattice site filling result.
[0124] The embodiment of the present application also provides a computer device, including a memory and a processor. The task processing method of the embodiment of the present application can be implemented by the computer device of the embodiment of the present application. Specifically, a computer program is stored in the memory, and the processor is used to programmatically parse the input basis vector parameters based on the lattice basis vector definition module to generate the primitive cell and lattice structure data. And based on the lattice site filling module, fill the lattice sites of the primitive cell according to the lattice structure data to determine the lattice site filling result. And based on the Hamiltonian generation module, automatically generate the lattice Hamiltonian according to the lattice structure data and the lattice site filling result.
[0125] The method for automatically generating a lattice Hamiltonian according to an embodiment of the present application can be implemented by the automatic generator of the lattice Hamiltonian according to an embodiment of the present application. Specifically, the automatic generator of the lattice Hamiltonian includes a lattice basis vector definition module, a lattice site filling module, and a Hamiltonian generation module. Based on the lattice basis vector definition module, the input basis vector parameters are programmatically parsed to generate the primitive cell and lattice structure data. Then, based on the lattice site filling module, according to the lattice structure data, the primitive cell is filled with lattice sites to determine the lattice site filling result. Finally, based on the Hamiltonian generation module, according to the lattice structure data and the lattice site filling result, the lattice Hamiltonian is automatically generated.
[0126] Specifically, the method for automatically generating a lattice Hamiltonian provided by an embodiment of the present application will be described below with an example.
[0127] Suppose a user hopes to use QCM to study the time-dependent evolution problem of the Hubbard model in a two-dimensional square lattice system. The system Hamiltonian can be written as:
[0128] where i and j are neighboring lattice sites in the model; t is the tunneling strength (hopping energy), which characterizes the hopping ability of electrons between neighboring lattice sites ( ); is the electron spin quantum number; represents the creation operator of an electron with spin at lattice site i; represents the annihilation operator of an electron with spin at lattice site j; is the Hermitian conjugate term, which ensures that the Hamiltonian is a Hermitian operator (i.e., a necessary condition for a physical observable), corresponding to the conjugate symmetric part of the hopping term; U is the local Coulomb interaction strength, which describes the repulsive interaction between electrons with different spins at the same lattice site; u is the chemical potential, which is used to adjust the number of particles in the system; is the number operator of particles with spin up at lattice site i; is the number operator of particles with spin down at lattice site i; is the total number operator of particles at lattice site i ( ).
[0129] Suppose the tunneling strength t = -1, the interaction strength U = 0.5, and the chemical potential u = -1. The system performs the following steps: First, in the lattice basis vector definition module, the primitive cell parameters are input. The dimension of the primitive cell is 2, and the vectors in each dimension are (1, 0) and (0, 1). There is one lattice site in each primitive cell; the lattice parameters are input. The lattice is the default two-dimensional square lattice (the lattice vectors in two dimensions are (1, 0) and (0, 1)), and the lattice is an infinite lattice. The open boundary condition is selected for the boundary condition.
[0130] Next, in the lattice filling module, non-spin fermions are filled in the lattice points in each primitive cell of the lattice model, and the user can define the size of the supercell, such as defining the superlattice vectors (1, 0) and (0, 1).
[0131] Then, the Hamiltonian generation module constructs the lattice Hamiltonian. According to the Hamiltonian generator, the lattice Hamiltonian with superlattice vectors (1, 0) and (0, 1) is as follows:
[0132] The superlattice vectors are ( , ), ( , - ) and the lattice Hamiltonian is as follows:
[0133] Finally, the lattice Hamiltonian is passed to the quantum cluster method interface module, and the eigenenergies are calculated through diagonalization for spectral analysis, and the program automatically outputs the calculation results.
[0134] In summary, based on the lattice basis definition module, the input basis vector parameters are programmatically parsed to generate primitive cell and lattice structure data. Next, based on the lattice filling module, according to the lattice structure data, the primitive cell is filled with lattice points to determine the lattice point filling result. Finally, based on the Hamiltonian generation module, according to the lattice structure data and the lattice point filling result, the lattice Hamiltonian is automatically generated. In this way, by automating and modularizing the process of generating the lattice Hamiltonian, the problem of excessive manual intervention in the traditional construction process of the lattice Hamiltonian is avoided, thereby improving the efficiency and accuracy of the construction of the lattice Hamiltonian.
[0135] In the description of this specification, the descriptions referring to terms such as "specifically", "further", "specially", "understandably", etc. mean that the specific features, structures, materials or characteristics described in connection with the embodiments or examples are included in at least one embodiment or example of the present application. In this specification, the schematic descriptions of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described can be combined in a suitable manner in any one or more embodiments or examples. In addition, without contradiction, those skilled in the art can combine and combine the different embodiments or examples described in this specification and the features of different embodiments or examples.
[0136] Any process or method description, whether in a flowchart or otherwise described herein, can be understood to represent a module, segment, or portion of code including one or more executable instructions for implementing a specific logical function or process. The scope of the preferred embodiments of the present application includes additional implementations where functions may be executed not in the order shown or discussed, including substantially concurrently or in reverse order depending on the functions involved, which should be understood by those skilled in the art to which the embodiments of the present application pertain.
[0137] Although the embodiments of the present application have been shown and described above, it can be understood that the above embodiments are exemplary and should not be construed as limiting the present application. Those of ordinary skill in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of the present application.
Claims
1. An automatic generator for lattice Hamiltonian, characterized in that, The lattice Hamiltonian generator includes a lattice basis vector definition module, a lattice site filling module, and a Hamiltonian generation module; The lattice basis vector definition module is configured to programmatically parse the input basis vector parameters to generate primitive cell and lattice structure data; The lattice site filling module is configured to perform lattice site filling on the primitive cell according to the lattice structure data to determine the lattice site filling result; The Hamiltonian generation module is configured to automatically generate the lattice Hamiltonian according to the lattice structure data and the lattice site filling result.
2. The lattice Hamiltonian automatic generator according to claim 1, characterized in that The basis vector parameters include the cell body dimension of the primitive cell, the list of primitive cell basis vectors, the list of lattice site coordinates, the lattice type, the list of lattice vectors, the lattice size flag, the lattice length, and / or the boundary condition type. The lattice basis vector definition module is configured to: Determine the primitive cell according to the cell body dimension, the list of primitive cell basis vectors, and the list of lattice site coordinates; Determine the lattice configuration data according to the lattice type and the list of lattice vectors; Determine the lattice physical property data according to the lattice size flag, the lattice length, and / or the boundary condition type; Determine the lattice structure data according to the primitive cell, the lattice configuration data, and the lattice physical property data.
3. The lattice Hamiltonian automatic generator according to claim 2, wherein The lattice basis vector definition module is configured to: In response to a lattice configuration selection operation, determine the lattice configuration data from a preset lattice configuration template, where the preset lattice configuration template includes a chain lattice, a square lattice, a triangular lattice, a honeycomb lattice, and a kagome lattice.
4. The lattice Hamiltonian automatic generator according to claim 2, characterized in that, The lattice site filling result includes lattice site filling information. The lattice site filling module is configured to: Determine the initial lattice site filling information according to the input atomic type and spin state, and the lattice type, the list of primitive cell basis vectors, and the list of lattice site coordinates; Determine the lattice site filling information according to the initial lattice site filling information.
5. The lattice Hamiltonian automatic generator according to claim 4, characterized in that The lattice site filling module is configured to: In the case where defects need to be constructed for the primitive cell, determine the lattice site filling information according to the initial lattice site filling information, the input list of defect primitive cell coordinates, and the defect type; In the case where no defects need to be constructed for the primitive cell, determine the initial lattice site filling information as the lattice site filling information.
6. The lattice Hamiltonian automatic generator according to claim 4, characterized in that, The lattice site filling result includes supercell definition information. The lattice site filling module is configured to: Determine the supercell definition information according to the lattice type and the input supercell lattice vectors, where the supercell lattice vectors are represented by the list of primitive cell basis vectors.
7. The lattice Hamiltonian automatic generator according to claim 6, characterized in that The lattice structure data includes the list of primitive cell basis vectors, and the lattice site filling result includes the supercell lattice vectors. The Hamiltonian generation module is configured to: Determine a zero matrix according to the lattice site filling result and the input Hamiltonian type; Determine the hopping matrix elements according to the zero matrix, the list of primitive cell basis vectors, the supercell lattice vectors, and the input hopping parameters; Determine the interaction matrix elements according to the lattice site filling result and the input interaction parameters; Determine the lattice Hamiltonian according to the hopping matrix elements and the interaction matrix elements.
8. The lattice Hamiltonian automatic generator according to claim 7, wherein The lattice structure data includes lattice symmetry parameters, and the Hamiltonian generation module is configured to: Determine an optimized lattice Hamiltonian according to the lattice symmetry parameters and the lattice Hamiltonian.
9. The lattice Hamiltonian automatic generator according to claim 1, characterized in that The lattice Hamiltonian automatic generator further includes a quantum cluster method interface module, and the quantum cluster method interface module is configured to: Determine formatted Hamiltonian data based on a preset quantum cluster method according to the lattice Hamiltonian.
10. The lattice Hamiltonian automatic generator according to claim 7, characterized in that, During the automatic generation process of the lattice Hamiltonian, the basis vector parameters, the atomic types, the spin states, the supercell lattice vectors, and / or the Hamiltonian types can be adjusted.
11. A method for automatically generating a lattice Hamiltonian, characterized in that, The method is based on the lattice Hamiltonian automatic generator as claimed in claim 1, and the method includes: Based on the lattice basis vector definition module, programmatically parse the input basis vector parameters to generate a primitive cell and lattice structure data; Based on the lattice site filling module, perform lattice site filling on the primitive cell according to the lattice structure data to determine the lattice site filling result; Based on the Hamiltonian generation module, automatically generate the lattice Hamiltonian according to the lattice structure data and the lattice site filling result.
Citation Information
Patent Citations
Close-packed hexagonal metal twin crystal interface modeling method
CN113555071A
Method and system for determining aging number of quantum anomalous Hall insulator based on topological defect, computer equipment, storage medium and program product
CN119670905A
Method for determining a quantum phase parameter and apparatus for implementing the same
EP4567684A1
A computer-implemented method for determining a control sequence for performing a series of qubit interactions to simulate a fermionic hamiltonian, a computer program product, a quantum circuit, and a method for determining a characteristic of a system
TW202433345A
Simulating materials using quantum computation
US20200065439A1