pyblock3.algorithms

pyblock3.algorithms.core

Common methods for sweep algorithms.

class pyblock3.algorithms.core.DecompositionTypes(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: Enum

DensityMatrix = 1
SVD = 2
class pyblock3.algorithms.core.NoiseTypes(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: Enum

Perturbative = 1
Random = 2
class pyblock3.algorithms.core.SweepAlgorithm(cutoff=1e-14, decomp_type=DecompositionTypes.DensityMatrix, noise_type=NoiseTypes.Perturbative, mpi=False)

Bases: object

add_dm_noise(dm, mpo, wfn, noise, forward)
add_wfn_noise(wfn, noise, forward)
decomp_two_site(mpo, wfns, forward, noise, bond_dim, weights=None)
pyblock3.algorithms.core.fmt_size(i, suffix='B')

pyblock3.algorithms.dmrg

class pyblock3.algorithms.dmrg.DMRG(mpe, bdims, noises=None, dav_thrds=None, max_iter=500, iprint=2, cutoff=1e-14, extra_mpes=None, weights=None, init_site=None)

Bases: SweepAlgorithm

Density Matrix Renormalization Group (DMRG).

solve(n_sweeps=10, tol=1e-06, dot=2, forward=True)

pyblock3.algorithms.green

class pyblock3.algorithms.green.GreensFunction(mpe, mpo, omega, eta, bdims, noises=None, cg_thrds=None, iprint=2)

Bases: SweepAlgorithm

DDMRG++ for solving Green’s function.

solve(n_sweeps=10, tol=1e-06, dot=2)

pyblock3.algorithms.linear

class pyblock3.algorithms.linear.Linear(mpe, bdims, noises=None, cg_thrds=None, iprint=2)

Bases: SweepAlgorithm

Solving linear equation or compression in sweeps.

solve(n_sweeps=10, tol=1e-06, dot=2)

pyblock3.algorithms.tddmrg

class pyblock3.algorithms.tddmrg.TDDMRG(mpe, bdims, iprint=2, **kwargs)

Bases: SweepAlgorithm

Time-step targetting td-DMRG approach.

solve(dt, n_sweeps=10, n_sub_sweeps=2, dot=2, forward=True, normalize=True)