netket.operator.ContinuousOperator#

class netket.operator.ContinuousOperator[source]#

Bases: AbstractOperator

This class is the abstract base class for operators defined on a continuous Hilbert space. Users interested in implementing new quantum Operators for continuous Hilbert spaces should subclass ContinuousOperator and implement its interface.

Inheritance
Inheritance diagram of netket.operator.ContinuousOperator
__init__(hilbert, dtype=None)[source]#

Constructs the continuous operator acting on the given hilbert space and with a certain data type.

Parameters:
  • hilbert (AbstractHilbert) – The underlying Hilbert space on which the operator is defined

  • dtype (Optional[Any]) – Data type of the operator, which is used to infer the dtype of expectation values

Attributes
H#

Returns the Conjugate-Transposed operator

T#

Returns the transposed operator

dtype#
hilbert#

The hilbert space associated to this observable.

is_hermitian#

Returns true if this operator is hermitian.

Methods
collect()#

Returns a guaranteed concrete instance of an operator.

As some operations on operators return lazy wrappers (such as transpose, hermitian conjugate…), this is used to obtain a guaranteed non-lazy operator.

Return type:

AbstractOperator

conj(*, concrete=False)#
Return type:

AbstractOperator

conjugate(*, concrete=False)#

Returns the complex-conjugate of this operator.

Parameters:

concrete – if True returns a concrete operator and not a lazy wrapper

Return type:

AbstractOperator

Returns:

if concrete is not True, self or a lazy wrapper; the complex-conjugated operator otherwise

transpose(*, concrete=False)#

Returns the transpose of this operator.

Parameters:

concrete – if True returns a concrete operator and not a lazy wrapper

Return type:

AbstractOperator

Returns:

if concrete is not True, self or a lazy wrapper; the transposed operator otherwise