Schema definitions#

The lattice_validator asserts user input, represented as python dictionaries, against schemata. These schemata define what is considered valid input. The following sections give a summary of these schemata. However, note that only basic information about valid input keys, their respective type and a short description are given. In order to access the precise restrictions imposed by the schemata please refer to the scripts in the schemata module, or just validate your input with the lattice_validator and read potential error messages.

NOTE:
  • Required keys are typeset in bold.

  • If the type is a dictionary, and the dictionary is validated against a schema, the schema, against which the dictionary is validated, is linked.

  • The type complex strictly speaking means a list of two floats. However, the normalization methods for complex try to cast input using on-board python casting, e.g., "1.+1.j" will be correctly interpreted.

  • If the type is a list, either the type of all components is shown (fixed length, tuple in python) or the type of the elements is shown followed by ellipses (variable length, list in python).

  • At the moment there are four variantions on the schemata: cloud, onPremise, unlimited, and cloudUI, which affect, for example, the hard-coded limits set via max_system_size and max_cluster_size keys (not shown in input specifications). The schema specifications below correspond to the default profile cloud.

  • You can switch between the profiles by specifying the keyword profile during the initialization of the lattice_validator.

atom#

Key

Type

Description

id

integer

Unique identifier for atom.

name

string

Human readable name for atom.

position

[float, float, float]

Position of atom in cartesian coordinates.

onsite_E

[float, float, float, float]

DEPRECATED. List input for onsite potential.

e0

float

Onsite energy (independent on spin channel).

e_up

float

Onsite energy for spin-up channel.

e_down

float

Onsite energy for spin-down channel.

e_0

alias for 'e0'

no description available

eup

alias for 'e_up'

no description available

edown

alias for 'e_down'

no description available

Bx

float

Onsite magnetic field (x component).

By

float

Onsite magnetic field (y component).

Bz

float

Onsite magnetic field (z component).

B

[float, float, float]

Onsite magnetic field provided as vector.

e_uu

float

Onsite energy in local spin space (up-up component).

e_dd

float

Onsite energy in local spin space (down-down component).

e_ud

complex

Onsite energy in local spin space (up-down component).

euu

alias for 'e_uu'

no description available

edd

alias for 'e_dd'

no description available

eud

alias for 'e_ud'

no description available

onsite_U

float

Onsite interaction.

U

alias for 'onsite_U'

no description available

onsite_BCS

complex

Onsite pairing amplitude (e.g., BCS pairing induced by proximity effect).

onsite_D

alias for 'onsite_BCS'

no description available

D

alias for 'onsite_BCS'

no description available

part

string

Tag allowing for decomposition of Hamiltonian into various parts.

bond#

Key

Type

Description

id_from

integer

Unique identifier of first atom connected by bond.

id_to

integer

Unique identifier of second atom connected by bond.

translation

[integer, integer, integer]

Translation vector between both atoms connected by bond in terms of lattice vectors.

hopping

[complex, complex, complex, complex]

DEPRECATED. List input for hopping amplitudes.

t

complex

Hopping amplitude (independent on spin channel).

t_up

complex

Hopping amplitude for spin-up channel.

t_down

complex

Hopping amplitude for spin-down channel.

t_uu

complex

Hopping amplitude in spinor representation (up-up channel).

t_dd

complex

Hopping amplitude in spinor representation (down-down channel).

t_ud

complex

Hopping amplitude in spinor representation (up-down channel, e.g., spin-orbit coupling).

t_du

complex

Hopping amplitude in spinor representation (down-up channel, e.g., spin-orbit coupling).

tup

alias for 't_up'

no description available

tdown

alias for 't_down'

no description available

tuu

alias for 't_uu'

no description available

tdd

alias for 't_dd'

no description available

tud

alias for 't_ud'

no description available

tdu

alias for 't_du'

no description available

interaction

[float, float, float, float]

DEPRECATED. List input for interactions.

U

float

Density-density interaction between atoms connected by bond.

J

float

Isotropic spin-spin interaction (Heisenberg) between atoms connected by bond.

Jz

float

Sz-Sz interaction (Ising, longitudinal spin-spin) between atoms connected by bond.

Jx

float

Sx-Sx interaction between atoms connected by bond.

Jy

float

Sy-Sy interaction between atoms connected by bond.

Jperp

float

(Sx-Sx + Sy-Sy) interaction (transverse spin-spin) between atoms connected by bond.

Jd

float

(Sx-Sx - Sy-Sy) interaction (transverse spin-spin) between atoms connected by bond.

Jcross

float

(Sx-Sy - Sy-Sx) interaction (Dzyaloshinskii-Moriya) between atoms connected by bond.

pairing

[complex, complex, complex, complex]

DEPRECATED. List input for inter-atom pairing.

D

complex

Pairing (BCS) amplitude (independent on spin channel).

D_up

complex

Pairing (BCS) amplitude for spin-up channel.

D_down

complex

Pairing (BCS) amplitude for spin-down channel.

D_uu

complex

Pairing (BCS) amplitude in spinor representation (up-up channel).

D_dd

complex

Pairing (BCS) amplitude in spinor representation (down-down channel).

D_ud

complex

Pairing (BCS) amplitude in spinor representation (up-down channel).

D_du

complex

Pairing (BCS) amplitude in spinor representation (down-up channel).

Dup

alias for 'D_up'

no description available

Ddown

alias for 'D_down'

no description available

Duu

alias for 'D_uu'

no description available

Ddd

alias for 'D_dd'

no description available

Dud

alias for 'D_ud'

no description available

Ddu

alias for 'D_du'

no description available

part

string

Tag allowing for decomposition of Hamiltonian into various parts.

configuration#

Key

Type

Description

unitcell

unitcell

Contains definition of unitcell.

system

system

Contains definition of system.

optional

dict

Dictionary for experimental input keys (not validated against any schema).

run

run

Contains definition of parameters for the calculation.

run#

Key

Type

Description

states

integer

Number of eigenstates to be computed.

max_iter

integer

Maximum number of iterations in computation.

tol_mf

float

Convergence tolerance for mean-field cycle.

iMF

string

Specifies inverse mean-field method. Allowed values: iHF, iDFT, iFDFT, ikDFT

output_type

string

Specifies fiel format for output. Allowed values: hdf5, json, pandas, yaml

beta

float

Specifies inverse temperature.

max_system_size

integer

Sets maximum system size.

max_cluster_size

integer

Sets maximum cluster size.

eps_linear_dependence_lv

float

Criterion for determining whether lattice vectors are linearly independent.

enforce_complex_matrices

boolean

Enforce usage of complex matrices even if entries are purely real.

enforce_spin_matrices

boolean

Enforce usage of spin-resolved matrices for spinful fermions and tJ model even if Hamiltonian is spin-symmetric.

spinful_fermions_atom#

Key

Type

Description

id

integer

Unique identifier for atom.

name

string

Human readable name for atom.

position

[float, float, float]

Position of atom in cartesian coordinates.

onsite_E

[float, float, float, float]

DEPRECATED. List input for onsite potential.

e0

float

Onsite energy (independent on spin channel).

e_up

float

Onsite energy for spin-up channel.

e_down

float

Onsite energy for spin-down channel.

e_0

alias for 'e0'

no description available

eup

alias for 'e_up'

no description available

edown

alias for 'e_down'

no description available

Bx

float

Onsite magnetic field (x component).

By

float

Onsite magnetic field (y component).

Bz

float

Onsite magnetic field (z component).

B

[float, float, float]

Onsite magnetic field provided as vector.

e_uu

float

Onsite energy in local spin space (up-up component).

e_dd

float

Onsite energy in local spin space (down-down component).

e_ud

complex

Onsite energy in local spin space (up-down component).

euu

alias for 'e_uu'

no description available

edd

alias for 'e_dd'

no description available

eud

alias for 'e_ud'

no description available

onsite_U

float

Onsite interaction.

U

alias for 'onsite_U'

no description available

onsite_BCS

complex

Onsite pairing amplitude (e.g., BCS pairing induced by proximity effect).

onsite_D

alias for 'onsite_BCS'

no description available

D

alias for 'onsite_BCS'

no description available

part

string

Tag allowing for decomposition of Hamiltonian into various parts.

spinful_fermions_bond#

Key

Type

Description

id_from

integer

Unique identifier of first atom connected by bond.

id_to

integer

Unique identifier of second atom connected by bond.

translation

[integer, integer, integer]

Translation vector between both atoms connected by bond in terms of lattice vectors.

hopping

[complex, complex, complex, complex]

DEPRECATED. List input for hopping amplitudes.

t

complex

Hopping amplitude (independent on spin channel).

t_up

complex

Hopping amplitude for spin-up channel.

t_down

complex

Hopping amplitude for spin-down channel.

t_uu

complex

Hopping amplitude in spinor representation (up-up channel).

t_dd

complex

Hopping amplitude in spinor representation (down-down channel).

t_ud

complex

Hopping amplitude in spinor representation (up-down channel, e.g., spin-orbit coupling).

t_du

complex

Hopping amplitude in spinor representation (down-up channel, e.g., spin-orbit coupling).

tup

alias for 't_up'

no description available

tdown

alias for 't_down'

no description available

tuu

alias for 't_uu'

no description available

tdd

alias for 't_dd'

no description available

tud

alias for 't_ud'

no description available

tdu

alias for 't_du'

no description available

interaction

[float, float, float, float]

DEPRECATED. List input for interactions.

U

float

Density-density interaction between atoms connected by bond.

J

float

Isotropic spin-spin interaction (Heisenberg) between atoms connected by bond.

Jz

float

Sz-Sz interaction (Ising, longitudinal spin-spin) between atoms connected by bond.

Jx

float

Sx-Sx interaction between atoms connected by bond.

Jy

float

Sy-Sy interaction between atoms connected by bond.

Jperp

float

(Sx-Sx + Sy-Sy) interaction (transverse spin-spin) between atoms connected by bond.

Jd

float

(Sx-Sx - Sy-Sy) interaction (transverse spin-spin) between atoms connected by bond.

Jcross

float

(Sx-Sy - Sy-Sx) interaction (Dzyaloshinskii-Moriya) between atoms connected by bond.

pairing

[complex, complex, complex, complex]

DEPRECATED. List input for inter-atom pairing.

D

complex

Pairing (BCS) amplitude (independent on spin channel).

D_up

complex

Pairing (BCS) amplitude for spin-up channel.

D_down

complex

Pairing (BCS) amplitude for spin-down channel.

D_uu

complex

Pairing (BCS) amplitude in spinor representation (up-up channel).

D_dd

complex

Pairing (BCS) amplitude in spinor representation (down-down channel).

D_ud

complex

Pairing (BCS) amplitude in spinor representation (up-down channel).

D_du

complex

Pairing (BCS) amplitude in spinor representation (down-up channel).

Dup

alias for 'D_up'

no description available

Ddown

alias for 'D_down'

no description available

Duu

alias for 'D_uu'

no description available

Ddd

alias for 'D_dd'

no description available

Dud

alias for 'D_ud'

no description available

Ddu

alias for 'D_du'

no description available

part

string

Tag allowing for decomposition of Hamiltonian into various parts.

spinful_fermions_unitcell#

Key

Type

Description

lattice_vectors

[[float, float, float], ...]

List of lattice vectors spanning the system.

translational_vectors

alias for 'lattice_vectors'

no description available

atoms

[spinful_fermions_atom, ...]

List of atoms in unitcell.

bonds

[spinful_fermions_bond, ...]

('List of bonds connecting atoms within unitcell and between unitcells.',)

bondings

alias for 'bonds'

no description available

spinless_fermions_atom#

Key

Type

Description

id

integer

Unique identifier for atom.

name

string

Human readable name for atom.

position

[float, float, float]

Position of atom in cartesian coordinates.

onsite_E

[float, float, float, float]

DEPRECATED. List input for onsite potential.

e0

float

Onsite energy (independent on spin channel).

e_0

alias for 'e0'

no description available

part

string

Tag allowing for decomposition of Hamiltonian into various parts.

spinless_fermions_bond#

Key

Type

Description

id_from

integer

Unique identifier of first atom connected by bond.

id_to

integer

Unique identifier of second atom connected by bond.

translation

[integer, integer, integer]

Translation vector between both atoms connected by bond in terms of lattice vectors.

hopping

[complex, complex, complex, complex]

DEPRECATED. List input for hopping amplitudes.

t

complex

Hopping amplitude (independent on spin channel).

interaction

[float, float, float, float]

DEPRECATED. List input for interactions.

U

float

Density-density interaction between atoms connected by bond.

pairing

[complex, complex, complex, complex]

DEPRECATED. List input for inter-atom pairing.

D

complex

Pairing (BCS) amplitude (independent on spin channel).

part

string

Tag allowing for decomposition of Hamiltonian into various parts.

spinless_fermions_unitcell#

Key

Type

Description

lattice_vectors

[[float, float, float], ...]

List of lattice vectors spanning the system.

translational_vectors

alias for 'lattice_vectors'

no description available

atoms

[spinless_fermions_atom, ...]

List of atoms in unitcell.

bonds

[spinless_fermions_bond, ...]

('List of bonds connecting atoms within unitcell and between unitcells.',)

bondings

alias for 'bonds'

no description available

spins_atom#

Key

Type

Description

id

integer

Unique identifier for atom.

name

string

Human readable name for atom.

position

[float, float, float]

Position of atom in cartesian coordinates.

onsite_E

[float, float, float, float]

DEPRECATED. List input for onsite potential.

Bx

float

Onsite magnetic field (x component).

By

float

Onsite magnetic field (y component).

Bz

float

Onsite magnetic field (z component).

B

[float, float, float]

Onsite magnetic field provided as vector.

part

string

Tag allowing for decomposition of Hamiltonian into various parts.

spins_bond#

Key

Type

Description

id_from

integer

Unique identifier of first atom connected by bond.

id_to

integer

Unique identifier of second atom connected by bond.

translation

[integer, integer, integer]

Translation vector between both atoms connected by bond in terms of lattice vectors.

interaction

[float, float, float, float]

DEPRECATED. List input for interactions.

J

float

Isotropic spin-spin interaction (Heisenberg) between atoms connected by bond.

Jz

float

Sz-Sz interaction (Ising, longitudinal spin-spin) between atoms connected by bond.

Jx

float

Sx-Sx interaction between atoms connected by bond.

Jy

float

Sy-Sy interaction between atoms connected by bond.

Jperp

float

(Sx-Sx + Sy-Sy) interaction (transverse spin-spin) between atoms connected by bond.

Jd

float

(Sx-Sx - Sy-Sy) interaction (transverse spin-spin) between atoms connected by bond.

Jcross

float

(Sx-Sy - Sy-Sx) interaction (Dzyaloshinskii-Moriya) between atoms connected by bond.

part

string

Tag allowing for decomposition of Hamiltonian into various parts.

spins_unitcell#

Key

Type

Description

lattice_vectors

[[float, float, float], ...]

List of lattice vectors spanning the system.

translational_vectors

alias for 'lattice_vectors'

no description available

atoms

[spins_atom, ...]

List of atoms in unitcell.

bonds

[spins_bond, ...]

('List of bonds connecting atoms within unitcell and between unitcells.',)

bondings

alias for 'bonds'

no description available

system#

Key

Type

Description

site_type

string

Specifies site type (Hamiltonian type) for calculation. Allowed values: spinless_fermions, spinful_fermions, tJ, spins

system_size

[integer, integer, integer]

Specifies number of cluster repetitions along each direction (lattice vector). Third direction currently restricted to 1.

system_boundary_conditions

[string, string, string]

Boundary conditions applied to each direction. Allowed values: hard-wall, periodic, anti-periodic

system_boundary_condition

alias for 'system_boundary_conditions'

no description available

boundary_conditions

alias for 'system_boundary_conditions'

no description available

boundary_condition

alias for 'system_boundary_conditions'

no description available

BC

alias for 'system_boundary_conditions'

no description available

cluster_size

[integer, integer, integer]

Specifies number of unitcell repetitions along each direction (lattice vector)defining the cluster. Third direction currently restricted to 1.

cluster_offset

[integer, integer, integer]

Specifies position of reference cluster in units of cluster repetitions. [0, 0, 0] denotes the lower, left, front cluster cluster of the system. Third direction currently restricted to 0.

N

integer

Specifies number of particles in the entire system.

Sz

integer

Specifies Sz quantum number of the eigenstates.

mod_N

integer

Eigenstates are allowed to be superpositions of states with particle number differing by mod_N (BCS). Average number of particles is controlled by chemical potential (constant shift of onsite energy).

mod_Sz

integer

Eigenstates are allowed to be superpositions of states with Sz quantum number differing by mod_Sz (non-collinear spins). Local spin magnetization controlled by external magnetic field.

modN

alias for 'mod_N'

no description available

modSz

alias for 'mod_Sz'

no description available

spin_representation

integer

Representation of spins.

spin_rep

alias for 'spin_representation'

no description available

tj_atom#

Key

Type

Description

id

integer

Unique identifier for atom.

name

string

Human readable name for atom.

position

[float, float, float]

Position of atom in cartesian coordinates.

onsite_E

[float, float, float, float]

DEPRECATED. List input for onsite potential.

e0

float

Onsite energy (independent on spin channel).

e_up

float

Onsite energy for spin-up channel.

e_down

float

Onsite energy for spin-down channel.

e_0

alias for 'e0'

no description available

eup

alias for 'e_up'

no description available

edown

alias for 'e_down'

no description available

Bx

float

Onsite magnetic field (x component).

By

float

Onsite magnetic field (y component).

Bz

float

Onsite magnetic field (z component).

B

[float, float, float]

Onsite magnetic field provided as vector.

e_uu

float

Onsite energy in local spin space (up-up component).

e_dd

float

Onsite energy in local spin space (down-down component).

e_ud

complex

Onsite energy in local spin space (up-down component).

euu

alias for 'e_uu'

no description available

edd

alias for 'e_dd'

no description available

eud

alias for 'e_ud'

no description available

onsite_BCS

complex

Onsite pairing amplitude (e.g., BCS pairing induced by proximity effect).

onsite_D

alias for 'onsite_BCS'

no description available

D

alias for 'onsite_BCS'

no description available

part

string

Tag allowing for decomposition of Hamiltonian into various parts.

tj_bond#

Key

Type

Description

id_from

integer

Unique identifier of first atom connected by bond.

id_to

integer

Unique identifier of second atom connected by bond.

translation

[integer, integer, integer]

Translation vector between both atoms connected by bond in terms of lattice vectors.

hopping

[complex, complex, complex, complex]

DEPRECATED. List input for hopping amplitudes.

t

complex

Hopping amplitude (independent on spin channel).

t_up

complex

Hopping amplitude for spin-up channel.

t_down

complex

Hopping amplitude for spin-down channel.

t_uu

complex

Hopping amplitude in spinor representation (up-up channel).

t_dd

complex

Hopping amplitude in spinor representation (down-down channel).

t_ud

complex

Hopping amplitude in spinor representation (up-down channel, e.g., spin-orbit coupling).

t_du

complex

Hopping amplitude in spinor representation (down-up channel, e.g., spin-orbit coupling).

tup

alias for 't_up'

no description available

tdown

alias for 't_down'

no description available

tuu

alias for 't_uu'

no description available

tdd

alias for 't_dd'

no description available

tud

alias for 't_ud'

no description available

tdu

alias for 't_du'

no description available

interaction

[float, float, float, float]

DEPRECATED. List input for interactions.

U

float

Density-density interaction between atoms connected by bond.

J

float

Isotropic spin-spin interaction (Heisenberg) between atoms connected by bond.

Jz

float

Sz-Sz interaction (Ising, longitudinal spin-spin) between atoms connected by bond.

Jx

float

Sx-Sx interaction between atoms connected by bond.

Jy

float

Sy-Sy interaction between atoms connected by bond.

Jperp

float

(Sx-Sx + Sy-Sy) interaction (transverse spin-spin) between atoms connected by bond.

Jd

float

(Sx-Sx - Sy-Sy) interaction (transverse spin-spin) between atoms connected by bond.

Jcross

float

(Sx-Sy - Sy-Sx) interaction (Dzyaloshinskii-Moriya) between atoms connected by bond.

pairing

[complex, complex, complex, complex]

DEPRECATED. List input for inter-atom pairing.

D

complex

Pairing (BCS) amplitude (independent on spin channel).

D_up

complex

Pairing (BCS) amplitude for spin-up channel.

D_down

complex

Pairing (BCS) amplitude for spin-down channel.

D_uu

complex

Pairing (BCS) amplitude in spinor representation (up-up channel).

D_dd

complex

Pairing (BCS) amplitude in spinor representation (down-down channel).

D_ud

complex

Pairing (BCS) amplitude in spinor representation (up-down channel).

D_du

complex

Pairing (BCS) amplitude in spinor representation (down-up channel).

Dup

alias for 'D_up'

no description available

Ddown

alias for 'D_down'

no description available

Duu

alias for 'D_uu'

no description available

Ddd

alias for 'D_dd'

no description available

Dud

alias for 'D_ud'

no description available

Ddu

alias for 'D_du'

no description available

part

string

Tag allowing for decomposition of Hamiltonian into various parts.

tj_unitcell#

Key

Type

Description

lattice_vectors

[[float, float, float], ...]

List of lattice vectors spanning the system.

translational_vectors

alias for 'lattice_vectors'

no description available

atoms

[tj_atom, ...]

List of atoms in unitcell.

bonds

[tj_bond, ...]

('List of bonds connecting atoms within unitcell and between unitcells.',)

bondings

alias for 'bonds'

no description available

unitcell#

Key

Type

Description

lattice_vectors

[[float, float, float], ...]

List of lattice vectors spanning the system.

translational_vectors

alias for 'lattice_vectors'

no description available

atoms

[atom, ...]

List of atoms in unitcell.

bonds

[bond, ...]

('List of bonds connecting atoms within unitcell and between unitcells.',)

bondings

alias for 'bonds'

no description available