forte2.state.mo_space ===================== .. py:module:: forte2.state.mo_space Module Contents --------------- .. py:class:: MOSpace A class to store the partitioning of the molecular orbital space. :Parameters: **nmo** : int The total number of molecular orbitals. **active_orbitals** : list[int] | list[list[int]] A list of integers or a list of lists of integers storing the orbital indices of the GASes. If a single list of integers is provided, it is treated as the CAS (a single GAS). **core_orbitals** : list[int], optional, default=[] A list of integers storing the core orbital indices. **frozen_core_orbitals** : list[int], optional, default=[] A list of integers storing the frozen core orbital indices. **frozen_virtual_orbitals** : list[int], optional, default=[] A list of integers storing the frozen virtual orbital indices. :Attributes: **ngas** : int The number of GASes (General Active Spaces) defined by the active_spaces. **nfrozen_core, ncore, nactv, nvirt, nfrozen_virtual** : int The number of frozen core, core, active, virtual, and frozen virtual orbitals. **\*_indices** : list[int] Flattened lists of all orbital indices in the respective spaces. **orig_to_contig** : np.ndarray An array that maps original orbital indices to contiguous indices. C_orig[:, orig_to_contig] gives the MOs that are organized as [frozen_core, core, gas1, gas2, ..., virt, frozen_virtual]. **contig_to_orig** : np.ndarray An array that maps contiguous indices back to original orbital indices. C_contig[:, contig_to_orig] gives the original MOs. **frozen_core, core, actv, virt, frozen_virt, uocc** : slice Slices for the different spaces in the **contiguous** space. `actv` returns the slice for the entire active space, including all GASes. **gas** : list[slice] A list of slices for each GAS in the contiguous space. **corr** : slice Slice giving the correlated space, i.e., all orbitals that are not frozen. **core_corr, actv_corr, virt_corr: slice** Slices for the spaces relative to the correlated space. **gas_corr** : list[slice] A list of slices for each GAS in the correlated space. .. !! processed by numpydoc !! .. py:attribute:: nmo :type: int .. py:attribute:: active_orbitals :type: list[int] | list[list[int]] :value: [] .. py:attribute:: core_orbitals :type: list[int] :value: [] .. py:attribute:: frozen_core_orbitals :type: list[int] :value: [] .. py:attribute:: frozen_virtual_orbitals :type: list[int] :value: [] .. py:method:: update_frozen_orbitals(frozen_core_orbitals: int | list[int] = None, frozen_virtual_orbitals: int | list[int] = None) Return a new `MOSpace` object with a new set of frozen core and virtual orbitals. These have to be a subset of the current core/virtual and frozen core/virtual orbitals. :Parameters: **frozen_core_orbitals** : int | list[int] A list of integers indicating the new frozen core orbital indices. If an integer is provided, the lowest `frozen_core_orbitals` orbitals will be frozen. **frozen_virtual_orbitals** : int | list[int] A list of integers indicating the new frozen virtual orbital indices. If an integer is provided, the highest `frozen_virtual_orbitals` orbitals will be frozen. .. !! processed by numpydoc !! .. py:method:: to_spinorbital_basis() .. py:class:: EmbeddingMOSpace Simplified attribute list as this is only used for semicanonicalization. .. !! processed by numpydoc !! .. py:attribute:: nmo :type: int .. py:attribute:: frozen_core_orbitals :type: list[int] .. py:attribute:: B_core_orbitals :type: list[int] .. py:attribute:: A_core_orbitals :type: list[int] .. py:attribute:: active_orbitals :type: list[int] .. py:attribute:: A_virtual_orbitals :type: list[int] .. py:attribute:: B_virtual_orbitals :type: list[int] .. py:attribute:: frozen_virtual_orbitals :type: list[int]