forte2.orbitals.avas#

Module Contents#

class forte2.orbitals.avas.AVAS#

Bases: forte2.base_classes.mixins.MOsMixin, forte2.base_classes.mixins.SystemMixin, forte2.base_classes.mixins.MOSpaceMixin

Atomic valence active space (AVAS) method for selecting active orbitals for multi-reference calculations.

Parameters:
subspacelist

The subspace of orbitals to be considered for AVAS selection.

subspace_pi_planeslist, optional

A list of planes defined by atoms in the molecule, used to determine π orbitals.

selection_methodstr, optional, default=”cumulative”

The method for selecting active orbitals. Options are “cumulative”, “cutoff”, “separate”, and “total”. - “cumulative”: Selects orbitals based on cumulative eigenvalues of the overlap matrix. Must define sigma. - “cutoff”: Selects orbitals based on a cutoff value for eigenvalues of the overlap matrix. Must define cutoff. - “separate”: Selects occupied and virtual orbitals separately. Must define num_active_docc and num_active_uocc. - “total”: Selects a total number of active orbitals. Must define num_active.

diagonalizebool, optional, default=True

Whether to diagonalize the occupied and virtual space overlap matrices.

sigmafloat, optional, default=0.98

Cumulative cutoff for the eigenvalues of the overlap matrix, controlling the size of the active space.

cutofffloat, optional, default=1.0

Cutoff for the eigenvalues of the overlap matrix; eigenvalues greater than this value are considered active.

evals_thresholdfloat, optional, default=1.0e-6

Threshold below which an eigenvalue of the projected overlap is considered zero.

num_active_doccint, optional, default=0

Number of active doubly occupied orbitals. This is on top of any singly occupied orbitals if an ROHF reference is used.

num_active_uoccint, optional, default=0

Number of active unoccupied orbitals.

num_activeint, optional, default=0

Total number of active orbitals. Again, this is on top of any singly occupied orbitals if an ROHF reference is used.

Notes

The allow subspace specification is a list of strings, non-exhaustive examples:

- ["C"]              # all carbon atoms
- ["C","N"]          # all carbon and nitrogen atoms
- ["C1"]             # carbon atom #1
- ["C1-3"]           # carbon atoms #1, #2, #3
- ["C(2p)"]          # the 2p subset of all carbon atoms
- ["C(1s)","C(2s)"]  # the 1s/2s subsets of all carbon atoms
- ["C1-3(2s)"]       # the 2s subsets of carbon atoms #1, #2, #3
- ["Ce(4fzx2-zy2)"]  # the 4f zxx-zyy orbital of all Ce atoms

See J. Chem. Theory Comput. 2017, 13, 4063-4078 for details on the AVAS method.

subspace: list#
subspace_pi_planes: list = None#
selection_method: str = 'cumulative'#
diagonalize: bool = True#
sigma: float = 0.98#
cutoff: float = 1.0#
evals_threshold: float = 1e-06#
num_active: int = 0#
num_active_docc: int = 0#
num_active_uocc: int = 0#
executed: bool = False#
run()#