OrthogonalNpcLinearOperator

  • full name: tenpy.linalg.sparse.OrthogonalNpcLinearOperator

  • parent module: tenpy.linalg.sparse

  • type: class

Inheritance Diagram

Inheritance diagram of tenpy.linalg.sparse.OrthogonalNpcLinearOperator

Methods

OrthogonalNpcLinearOperator.__init__(...)

OrthogonalNpcLinearOperator.adjoint()

Return the hermitian conjugate of self.

OrthogonalNpcLinearOperator.matvec(vec)

OrthogonalNpcLinearOperator.to_matrix()

Contract self to a matrix.

OrthogonalNpcLinearOperator.unwrapped()

Return to the original NpcLinearOperator.

class tenpy.linalg.sparse.OrthogonalNpcLinearOperator(orig_operator, ortho_vecs)[source]

Bases: NpcLinearOperatorWrapper

Replace H -> P H P with the projector P = 1 - sum_o |o> <o|.

Here, |o> are the vectors from ortho_vecs.

Parameters:
  • orig_operator (EffectiveH) – The original EffectiveH instance to wrap around.

  • ortho_vecs (list of Array) – The vectors to orthogonalize against.

to_matrix()[source]

Contract self to a matrix.

adjoint()[source]

Return the hermitian conjugate of self.

If self is hermitian, subclasses can choose to implement this to define the adjoint operator of self.

unwrapped()[source]

Return to the original NpcLinearOperator.

If multiple levels of wrapping were used, this returns the most unwrapped one.