vayesta.core.types.ebwf

Submodules

vayesta.core.types.ebwf.ebcc

WaveFunction for interaction with ebcc solvers for arbitrary ansatzes. We subclass existing CCSD wavefunction functionality for the various utility functions (projection, symmetrisation etc), but don’t implement these for higher-order terms for now. Where ebcc and pyscf have different conventions, we store quantities following the ebcc convention and return values by pyscf convention for consistency and compatibility with existing interfaces.

vayesta.core.types.ebwf.ebcc.EBCC_WaveFunction(mo, *args, **kwargs)[source]
class vayesta.core.types.ebwf.ebcc.REBCC_WaveFunction(mo, ansatz, amplitudes, lambdas=None, mbos=None, projector=None, xi=None)[source]

Bases: EBWavefunction, RCCSD_WaveFunction

property options
property nbos
property name

Get a string representation of the method name.

property t1
property t2
property l1
property l2
make_rdm1(t_as_lambda=False, with_mf=True, ao_basis=False, hermitise=True, **kwargs)[source]
make_rdm2(t_as_lambda=False, with_dm1=True, ao_basis=False, approx_cumulant=False, hermitise=True, **kwargs)[source]
make_rdm1_b(hermitise=True, **kwargs)[source]
make_sing_b_dm(hermitise=True, **kwargs)[source]
make_rdm_eb(hermitise=True, **kwargs)[source]
make_rdm1_f(t_as_lambda=False, with_mf=True, ao_basis=False, hermitise=True, **kwargs)
make_rdm2_f(t_as_lambda=False, with_dm1=True, ao_basis=False, approx_cumulant=False, hermitise=True, **kwargs)
copy()[source]
as_ccsd()[source]
rotate_ov(*args, **kwargs)[source]

Rotate wavefunction representation to another basis. Only rotations which don’t mix occupied and virtual orbitals are supported.

Parameters:
  • to (new occupied orbital coefficients in terms of current ones.) –

  • tv (new virtual orbital coefficients in terms of current ones.) –

  • inplace (Whether to transform in-place or return a new object.) –

as_cisd(c0=1.0)

In intermediate normalization.

as_fci()
as_mp2()
as_unrestricted()
static from_pyscf(obj, **kwargs)
make_rdm2_non_cumulant(t_as_lambda=False, ao_basis=False)
make_rdm_bb(*args, **kwargs)
multiply(factor)
property nelec
property nocc
property nocca
property noccb
property norb
property norba
property norbb
property nvir
property nvira
property nvirb
pack(dtype=<class 'float'>)

Pack into a single array of data type dtype.

Useful for communication via MPI.

project(projector, inplace=False)
restore(projector=None, inplace=False, sym=True)
rotate(t, inplace=False)

Rotate wavefunction representation to another basis. Only rotations which don’t mix occupied and virtual orbitals are supported. Assumes rotated orbitals have same occupancy ordering as originals.

classmethod unpack(packed)

Unpack from a single array of data type dtype.

Useful for communication via MPI.

class vayesta.core.types.ebwf.ebcc.UEBCC_WaveFunction(mo, ansatz, amplitudes, lambdas=None, mbos=None, projector=None, xi=None)[source]

Bases: REBCC_WaveFunction, UCCSD_WaveFunction

property t1a
property t1b
property t1
property t2aa
property t2ab
property t2ba
property t2bb
property t2
property l1a
property l1b
property l1
as_ccsd()
as_cisd(c0=1.0)

In intermediate normalization.

as_fci()
as_mp2()
as_unrestricted()
copy()
static from_pyscf(obj, **kwargs)
property l2aa
make_rdm1_b(hermitise=True, **kwargs)
make_rdm1_f(t_as_lambda=False, with_mf=True, ao_basis=False, hermitise=True, **kwargs)
make_rdm2_f(t_as_lambda=False, with_dm1=True, ao_basis=False, approx_cumulant=False, hermitise=True, **kwargs)
make_rdm2_non_cumulant(t_as_lambda=False, ao_basis=False)
make_rdm_bb(*args, **kwargs)
make_sing_b_dm(hermitise=True, **kwargs)
multiply(factor)
property name

Get a string representation of the method name.

property nbos
property nelec
property nocc
property nocca
property noccb
property norb
property norba
property norbb
property nvir
property nvira
property nvirb
property options
pack(dtype=<class 'float'>)

Pack into a single array of data type dtype. Useful for communication via MPI.

project(projector, inplace=False)
restore(projector=None, inplace=False, sym=True)
rotate(t, inplace=False)

Rotate wavefunction representation to another basis. Only rotations which don’t mix occupied and virtual orbitals are supported. Assumes rotated orbitals have same occupancy ordering as originals.

rotate_ov(*args, **kwargs)

Rotate wavefunction representation to another basis. Only rotations which don’t mix occupied and virtual orbitals are supported.

Parameters:
  • to (new occupied orbital coefficients in terms of current ones.) –

  • tv (new virtual orbital coefficients in terms of current ones.) –

  • inplace (Whether to transform in-place or return a new object.) –

classmethod unpack(packed)

Unpack from a single array of data type dtype. Useful for communication via MPI.

property l2ab
property l2ba
property l2bb
property l2
make_rdm1(*args, **kwargs)[source]
make_rdm2(*args, **kwargs)[source]
make_rdm_eb(hermitise=True, **kwargs)[source]

vayesta.core.types.ebwf.ebwf

class vayesta.core.types.ebwf.ebwf.EBWavefunction(mo, mbos=None, projector=None)[source]

Bases: WaveFunction

property nbos
make_rdm_eb(*args, **kwargs)[source]
make_rdm_bb(*args, **kwargs)[source]
static from_pyscf(obj, **kwargs)
make_rdm1(*args, **kwargs)
make_rdm2(*args, **kwargs)
property nelec
property nocc
property nocca
property noccb
property norb
property norba
property norbb
property nvir
property nvira
property nvirb
rotate(*args, **kwargs)
rotate_ov(*args, **kwargs)

Module contents