# cisd

> Configuration Interaction with Single and Double excitations.

> This program takes a reference Slater determinant of ROHF-like occupancy,

> and performs all single and double excitations on top of it, disregarding spatial symmetry and compute the “n_states” lowest eigenstates of that CI matrix (see `determinants n_states`).

> This program can be useful in many cases:

> - GROUND STATE CALCULATION: if even after a `cis()` calculation, natural orbitals (see `save_natorb()`) and then `scf()` optimization, you are not sure to have the lowest scf solution, do the same strategy with the `cisd()` executable instead of the `cis()` exectuable to generate the natural orbitals as a guess for the `scf()`.

> - EXCITED STATES CALCULATIONS: the lowest excited states are much likely to be dominanted by single- or double-excitations. Therefore, running a `cisd()` will save the “n_states” lowest states within the CISD space in the EZFIO folder, which can afterward be used as guess wave functions for a further multi-state fci calculation if you specify “read_wf” = True before running the fci executable (see `determinants read_wf`). Also, if you specify “s2_eig” = True, the cisd will only retain states having the good value \(S^2\) value (see `determinants expected_s2` and `determinants s2_eig`). If “s2_eig” = False, it will take the lowest n_states, whatever multiplicity they are.

>   Note: if you would like to discard some orbitals, use qp_set_mo_class to specify:

>   - “core” orbitals which will be always doubly occupied
>   - “act” orbitals where an electron can be either excited from or to
>   - “del” orbitals which will be never occupied

> Needs:

> `read_wf` |  |

> Calls:

> `run()` |  |

> Touches:

> `fock_matrix_ao_alpha` `fock_matrix_ao_alpha` | `mo_coef` `level_shift` | `mo_coef` `read_wf`