CDTK.Dynamics.MolcasInterfaceSH module

CDTK.Dynamics.MolcasInterfaceSH.getAOCoeff_mld(QOUT, NOCC, state_current)[source]

Return coefficients of atomic orbitals for the molecular orbital of current electronic state [NOCC - state_current]. Koopmans theorem.

molecular orbitals from [molcas.scf.molden]

CDTK.Dynamics.MolcasInterfaceSH.getAO_Coeff(QOUT, NOCC, state_current)[source]

Return coefficients of atomic orbitals for the molecular orbital of current electronic state [NOCC - state_current]. Koopmans theorem.

CDTK.Dynamics.MolcasInterfaceSH.getAO_NOCC(QOUT)[source]

Return the number of occupied orbitals

CDTK.Dynamics.MolcasInterfaceSH.getCASSCF_AnalyticalGrad(QOUT)[source]

Get Analytical gradients for a given ROOT from Molcas output file

CDTK.Dynamics.MolcasInterfaceSH.getCASSCF_AnalyticalGradMultElecS(QOUT, nstates_g)[source]

Get Analytical gradients for a given ROOT from Molcas output file

For the case of simultaneous computation of [gradient]s for [mult]i-[elec]tronic [s]tates.

Input:
nstates_g - number of electronic states requiring gradient

default = 1

CDTK.Dynamics.MolcasInterfaceSH.getCASSCF_Cplmat(QOUT, DT, phase_track, **opts)[source]

Return the non-adiabatic coupling matrix at T+DT/2 calculated from overlap of wavefunctions at T and T+DT

Input: - QOUT: Molcas output of wavefunction overlap calculation - DT: Classical time-step - phase_track: track of electronic wavefunction phase

optional arguments: - nstates: number of electronic states

default = 1

CDTK.Dynamics.MolcasInterfaceSH.getCASSCF_Energy(QOUT)[source]

Get HF and CASSCF orbital energies from a Molcas output file

CDTK.Dynamics.MolcasInterfaceSH.getHFKoopmans_Cplmat(QOUT, DT, phase_track, idx_block_init, **opts)[source]

Return the non-adiabatic coupling matrix at T+DT/2 calculated from overlap of wavefunctions at T and T+DT

Input: - QOUT: Molcas output of wavefunction overlap calculation - DT: Classical time-step - phase_track: track of electronic wavefunction phase - idx_block_init: the initial state of the block

optional arguments: - nstates_block: number of electronic states in the block

default = 2

  • nstates: number of electronic states

    default = 1

CDTK.Dynamics.MolcasInterfaceSH.getHFKoopmans_Energy(QOUT)[source]

Get HF and orbital energies from a Molcas output file

CDTK.Dynamics.MolcasInterfaceSH.getHFKoopmans_Gradient(QOUT, nstates_g)[source]

Get analytical gradients for a given ROOT from Molcas output file

For the case of simultaneous computation of [gradient]s for [mult]i-[elec]tronic [s]tates.

Input:
nstates_g - number of electronic states requiring gradient

default = 1

CDTK.Dynamics.MolcasInterfaceSH.getKoopmans_Energy(QOUT)[source]

Get HF and orbital energies from a Molcas output file

CDTK.Dynamics.MolcasInterfaceSH.getTAS_DipEn(QOUT, core_shell)[source]

Return the matrix element for transition dipoles and transition energies

Input:
  • QOUT: Molcas output of transition dipoles and energies

  • core_shell: the electronic states for certain core shell

Output:

-DipEn: pairs of transition dipoles and energies

CDTK.Dynamics.MolcasInterfaceSH.load_input(a_fname, **opts)[source]

Return contents of a Molcas input file

CDTK.Dynamics.MolcasInterfaceSH.runMolcasAOCoeff(X_au, state_current, **opts)[source]

Return the coefficients of atomic orbitals for the molecular orbital of current electronic state

Input:
  • X_au: 3N array, molecular coordinates in bohr

  • state_current: current electronic state

CDTK.Dynamics.MolcasInterfaceSH.runMolcasCplmat(X_au_T, X_au_TpDT, DT, phase_track, **opts)[source]

Return the non-adiabatic coupling matrix of the given molecule

Run Molcas for given molecular coordinates.

Input:
  • X_au_T: 3N array, molecular coordinates in bohr at T

  • X_au_TpDT: 3N array, molecular coordinates in bohr at T+DT

  • DT: Classical time-step

  • phase_track: track of electronic wavefunction phase

Output: VD - The non-adiabatic coupling matrix

optional arguments: - unit: Unit of coordinates

default: Bohr option : Angstrom

  • nstates: number of electronic states

    default = 1

  • is_init: whether to be the initializing classical step for wavefunction overlap calculation of non-adiabatic coupling

    default: False

CDTK.Dynamics.MolcasInterfaceSH.runMolcasEnergy(X_au, **opts)[source]

Return the energy of the given molecule

Run Molcas for given molecular coordinates.

Input:
  • X_au: 3N array, molecular coordinates in bohr

Output: if state == 0, EHF (Hartree Fock)

if state == 1, ECAS …

optional arguments: - unit: Unit of coordinates

default: Bohr option : Angstrom

CDTK.Dynamics.MolcasInterfaceSH.runMolcasGradient(X_au, **opts)[source]

Return the energy gradient of given molecule

Run Molcas for given molecular coordinates.

ROOT_g in the input file serves to designate certain electronic state requiring analytical gradient

Input:
  • X_au: 3N array, molecular coordinates in bohr

Output:
  • GCAS: The analytical gradient

optional arguments: - unit: Unit of coordinates

default: Bohr option : Angstrom

  • nstates_g: number of electronic states requiring gradient

    default = 1

  • state_g: the certain electronic state(s) requiring gradient

    default = None

  • clean: whether to clean the Molcas working directory

    default = False

CDTK.Dynamics.MolcasInterfaceSH.runMolcasGradientMultElecS(X_au, **opts)[source]

Return the energy gradient of given molecule

Run Molcas for given molecular coordinates.

For the case of simultaneous computation of [gradient]s for [mult]i-[elec]tronic [s]tates.

ROOT_g in the input file serves to designate certain electronic state requiring analytical gradient

Input:
  • X_au: 3N array, molecular coordinates in bohr

Output:
  • GCAS: The analytical gradient

optional arguments: - unit: Unit of coordinates

default: Bohr option : Angstrom

  • nstates_g: number of electronic states requiring gradient

    default = 1

  • state_g: the certain electronic state(s) requiring gradient

    default = None

CDTK.Dynamics.MolcasInterfaceSH.runMolcasHFKoopmansAOCoeff(X_au, state_current, **opts)[source]

Return the coefficients of atomic orbitals for the molecular orbital of current electronic state

Input:
  • X_au: 3N array, molecular coordinates in bohr

  • state_current: current electronic state

CDTK.Dynamics.MolcasInterfaceSH.runMolcasHFKoopmansCplmat(X_au_T, X_au_TpDT, DT, phase_track, state_block, **opts)[source]

Return the non-adiabatic coupling matrix of the given molecule

Run Molcas for given molecular coordinates.

Input:
  • X_au_T: 3N array, molecular coordinates in bohr at T

  • X_au_TpDT: 3N array, molecular coordinates in bohr at T+DT

  • DT: Classical time-step

  • phase_track: track of electronic wavefunction phase

  • state_block: block of states to be considered for overlap

Output: VD - The non-adiabatic coupling matrix

optional arguments: - unit: Unit of coordinates

default: Bohr option : Angstrom

  • nstates: number of electronic states

    default = 1

  • is_init: whether to be the initializing classical step for wavefunction overlap calculation of non-adiabatic coupling

    default: False

  • is_reinit: whether to be the re-initializing classical step for wavefunction overlap calculation of non-adiabatic coupling applied for Hartree-Fock-Koopmans method

    default: False

CDTK.Dynamics.MolcasInterfaceSH.runMolcasHFKoopmansCplmatAlter(X_au_T, X_au_TpDT, DT, phase_track, state_block, **opts)[source]

Return the non-adiabatic coupling matrix of the given molecule

Run Molcas for given molecular coordinates.

Input:
  • X_au_T: 3N array, molecular coordinates in bohr at T

  • X_au_TpDT: 3N array, molecular coordinates in bohr at T+DT

  • DT: Classical time-step

  • phase_track: track of electronic wavefunction phase

  • state_block: block of states to be considered for overlap

Output: VD - The non-adiabatic coupling matrix

optional arguments: - unit: Unit of coordinates

default: Bohr option : Angstrom

  • nstates: number of electronic states

    default = 1

  • is_init: whether to be the initializing classical step for wavefunction overlap calculation of non-adiabatic coupling

    default: False

  • is_reinit: whether to be the re-initializing classical step for wavefunction overlap calculation of non-adiabatic coupling applied for Hartree-Fock-Koopmans method

    default: False

CDTK.Dynamics.MolcasInterfaceSH.runMolcasHFKoopmansEnergy(X_au, **opts)[source]

Return the Koopmans energy of the given molecule

Run Molcas for given molecular coordinates.

Input:
  • X_au: 3N array, molecular coordinates in bohr

Output: if state == 0, EHF (Hartree Fock)

if state == 1, ECAS …

optional arguments: - unit: Unit of coordinates

default: Bohr option : Angstrom

CDTK.Dynamics.MolcasInterfaceSH.runMolcasHFKoopmansGradient(X_au, **opts)[source]

Return the Hartree-Fock-Koopmans energy gradient of given molecule

Run Molcas for given molecular coordinates.

For the case of simultaneous computation of [gradient]s for [mult]i-[elec]tronic [s]tates.

Input:
  • X_au: 3N array, molecular coordinates in bohr

Output:
  • GCAS: The analytical gradient

optional arguments: - unit: Unit of coordinates

default: Bohr option : Angstrom

  • nstates_g: number of electronic states requiring gradient

    default = 1

  • state_g: the certain electronic state(s) requiring gradient

    default = None

CDTK.Dynamics.MolcasInterfaceSH.runMolcasKoopmansEnergy(X_au, **opts)[source]

Return the Koopmans energy of the given molecule

Run Molcas for given molecular coordinates.

Input:
  • X_au: 3N array, molecular coordinates in bohr

Output: if state == 0, EHF (Hartree Fock)

if state == 1, ECAS …

optional arguments: - unit: Unit of coordinates

default: Bohr option : Angstrom

CDTK.Dynamics.MolcasInterfaceSH.runMolcasTASpectra(X_au, current_state, **opts)[source]

Return the matrix element for transition dipoles and transition energies

Run Molcas for given molecular coordinates

Input:
  • X_au: 3N array, molecular coordinates

  • current_state: current electronic state

Output: DipEn - pairs of [transition dipole. transition energy]

optional arguments:
  • unit: Unit of coordinates

    default: Bohr option : Angstrom

  • is_init: whether to be the initial classical step

    default: False