boundary{ }

Calling sequence

quantum{ region{ boundary{ } } }

Properties

  • usage: conditional

  • items: maximum 1

Dependencies

Functionality

Specifies the boundary condition for Schrödinger equation along various axis dimensions. In general, Dirichlet boundary conditions correspond to f=constant and Neumann boundary conditions correspond to df/dx=constant. Quantum densities may exhibit pathological density values on the boundary (e.g. 0 in the case of Dirichlet boundary conditions). Using classical_boundary_x, classical_boundary_y, classical_boundary_z, the computation of a classical density can be enforced on the respective boundary points for the respective band(s). The calculation within the quantum model itself and respective results such as wave functions are not affected by this setting. Using num_classical_x, num_classical_y, num_classical_z you can explicitly specify the number of points to be cut at each side.

Nested keywords


x, y, z

Calling sequence

quantum{ region{ boundary{ x = ... } } }
quantum{ region{ boundary{ y = ... } } }
quantum{ region{ boundary{ z = ... } } }

Properties

  • usage: optional

  • type: choice

  • values: dirichlet or neumann or shifted_neumann

  • default: neumann

Functionality

Specifies boundary conditions at the borders of respective quantum{ region{} } in the x direction of the simulation. The dirichlet results in Dirichlet boundary conditions. The neumann results in Neumann boundary conditions. The shifted_neumann results in Neumann boundary conditions where the flux disappears half a grid spacing outside the boundary.

Note

Periodic boundary conditions along the appropriate direction(s) are taken automatically if global { ... periodic{ x/y/z = yes} } is specified and if the quantum region extends over the whole simulation region along the appropriate direction. In this case, the dirichlet or neumann specifications under quantum{ ... {region{ ... boundary{...} } } are ignored along the appropriate direction(s).


classical_boundary_x, …

Calling sequence

quantum{ region{ boundary{ classical_boundary_x = ... } } }
quantum{ region{ boundary{ classical_boundary_y = ... } } }
quantum{ region{ boundary{ classical_boundary_z = ... } } }

Properties

  • usage: optional

  • type: choice

  • values: yes or no

  • default: no

Functionality


num_classical_x, …

Calling sequence

quantum{ region{ boundary{ num_classical_x = [ ..., ... ] } } }
quantum{ region{ boundary{ num_classical_y = [ ..., ... ] } } }
quantum{ region{ boundary{ num_classical_z = [ ..., ... ] } } }

Properties

  • usage: conditional

  • type: vector of 2 integers: (z1,z2)

  • values: zi0

  • default: (1,1)

Functionality


Last update: 17/04/2025