v0.3.15
Added
- TAT.py: Add
const_blocks
for tensor to get the const block which will not check the ownership. - tetragono: Add
__contains__
and__len__
for hamiltonians handle of abstract state. - bridge: Add support for bridging from TNSP new format.
- tetragono: Stop saving configuration for ergodic sampling method during gradient descent.
- tetragono: Add function to convert sampling lattice back to simple update lattice.
- tetragono: Add support for simple update for long range two body interaction.
Changed
-
TAT.hpp: Rename the aliases of the symmetry types, the details are shown in the next item.
-
TAT.py: Rename the names of the symmetry types, since the previous naming is not consistent:
old name new name No No Z2 BoseZ2 U1 BoseU1 Fermi FermiU1 FemriZ2 FermiU1BoseZ2 FermiU1 FermiU1BoseU1 Parity FermiZ2 FermiFermi FermiU1FermiU1 -
TAT.py: Use
scikit-build-core
as build backend.MAKEFLAGS
andCMAKEFLAGS
are droped. Usescikit-build-core
environment variableSKBUILD_CMAKE_ARGS
to pass arguments to cmake command line when buildingPyTAT
wheel. -
tetragono: Use Lanczos algorithm instead of previous power iteration to optimize exact state.
update
function for
exact state does not have the second parameterapproximate_energy
any more, andex_update
in tetragono shell does
not have the second parameter either. -
TAT.hpp: Change the default exponential iteration step to
8
from2
, since in practice, it is difficult for
step=2
to convege to a usable result.
Removed
- tetragono: Remove merging Hamiltonians before simple update automatically.
Fixed
- TAT.py: Fix a bug in loading Symmetry or Edge.
- bridge: Fix several bugs in tnsp bridge, because of the TAT interface changes a lot since the first release of tnsp
bridge. - TAT.py Fix wrong arguments number for function
__deepcopy__
of tensor. - TAT.hpp: Fix a bug when reading tensors from text data with ANSI control char mixed.