BLOCK_DIAGONALIZE
Control section to setup block diagonalization of the mixed CDFT Hamiltonian. Constructs a new Hamiltonian by diagonalizing the initial matrix within each block and by rotating the off-diagonal blocks (which represent the interactions between different blocks) by the eigenvectors of diagonal blocks. [Edit on GitHub]
Keywords
Keyword descriptions
- BLOCK: integer
Keyword can be repeated.
Usage: BLOCK 1 2
Defines which CDFT states are included in a block. Each repetition of this keyword defines a new block. The Hamiltonian matrix elements of the requested states are collected into a new matrix and subsequently diagonalized. The eigenvectors of this matrix are used to rotate the matrix blocks describing the interactions between blocks. [Edit on GitHub]
- IGNORE_EXCITED: logical = T
Lone keyword:
T
Usage: IGNORE_EXCITED FALSE
Ignore excited states related to each block when constructing the new mixed CDFT Hamiltonian. This reduces the dimensionality of the Hamiltonian. [Edit on GitHub]
- RECURSIVE_DIAGONALIZATION: logical = F
Lone keyword:
T
Usage: RECURSIVE_DIAGONALIZATION TRUE
Perform block diagonalization recursively until only two blocks remain. For example, if the elements of a 8x8 matrix are first collected into 4 blocks (using keyword BLOCK), this keyword will transform the matrix to a 2x2 matrix (8x8 -> 4x4 -> 2x2). In this example, the blocks of the 2x2 matrix would be assembled from the first and last 2 blocks of the 4x4 matrix. [Edit on GitHub]