Node Shapes in Two-Dimensions¶
In the previous sections, we focused on one-dimensional problems. This tutorial expands the scope to two-dimensional problems, highlighting the differences and challenges involved. As the number of dimensions increases, managing nodes becomes progressively more complex. While in 1D a node is simply a point, such as a zero-crossing, in 2D, nodes can take on various shapes. These distinctions are explained in detail below.
Define the System to Solve¶
The interface to SigSpace is designed to handle problems across different dimensions efficiently, requiring only minor modifications to previously introduced examples. If you haven’t gone through the earlier tutorials, particularly the one on quantum wells, it’s recommended to review them first to understand the basic commands and concepts.
The first step is to define the system we want to study. Similar to the 1D case, the system is described using the Hamiltonian. The primary change for 2D problems is that the Hamiltonian now incorporates two dimensions during its creation. This is done by the sdims
parameter in sg.Hamiltonian(sdims=2)
:
import sigspace as sg
import numpy as np
def Vfun(pts):
return -1*(np.all(np.abs(pts) < 4, axis=1))
H = sg.Hamiltonian(sdims=2) + Vfun
solver = sg.Solver(H)
solver.grid((-10, 10, 30))
solver.print_info = True
sol = solver.run()
sg.quickplot(sol)