Releases: Quantum-Many-Body/QuantumLattices.jl
v0.10.4
QuantumLattices v0.10.4
v0.10.3
QuantumLattices v0.10.3
v0.10.2
QuantumLattices v0.10.2
v0.10.1
QuantumLattices v0.10.1
v0.10.0
QuantumLattices v0.10.0
Breaking changes
Such changes do affect the public interfaces that users interact with.
Fermion/boson/spin/phonon indexes and operators
-
Construction of fermion/boson/spin/phonon indexes and operators are changed.
𝕗
(\bbf<tab>
ferimion),𝕓
(\bbb<tab>
, boson),𝕊
(\bbS<tab>
, spin),𝕦
(\bbu<tab>
, displacement of lattice vibration) and𝕡
(\bbp<tab>
, momentum of lattice vibration) are the new interfaces to construct and display such indexes and operators. -
Underlying types to implement fermion/boson/spin/phonon indexes and operators are renamed: 1) the abstract type
IID
=>InternalIndex
, and the concrete typesFID
=>FockIndex
,SID
=>SpinIndex
,PID
=>PhononIndex
; 2)CompositeIndex
=>CoordinatedIndex
. -
The
:iid
attribute ofIndex
now is renamed to:internal
.
Coupling
- A new type,
Pattern
, is introduced to represent the coupling pattern in aCoupling
. - Construction of
Coupling
with constraints now uses a new macro,@pattern
. The old@indexes
macro is removed. Coupling
with different types ofIndex
es now must be initialized with the@pattern
macro.- The
:site
attribute of anIndex
used to construct aCoupling
can no longer be an integer; it must now be either a:
or anOrdinal
to clearly indicate that it represents the ordinal in a bond.
Quantum numbers
Quantum numbers are completely redesigned.
Mechanism changes
Such changes typically do not affect the public interfaces that users interact with, but they are significant for developers looking to extend this package.
- New function
Patternrule
is introduced to implement default rules for coupling patterns. - Interface of
script
, which is used to support latex-formatted output of operators, is changed. - Interface of
expand
for aCoupling
is changed. - Interfaces of
Toolkit.VectorSpace
are changed.
Merged pull requests: