![]() |
(git:b77b4be)
|
Routines for calculating a complex matrix exponential. More...
Functions/Subroutines | |
subroutine, public | propagate_exp (rtp, rtp_control) |
performs propagations if explicit matrix exponentials are used ETRS: exp(i*H(t+dt)*dt/2)*exp(i*H(t)*dt/2)*MOS EM: exp[-idt/2H(t+dt/2)*MOS | |
subroutine, public | propagate_exp_density (rtp, rtp_control) |
Propagation of the density matrix instead of the atomic orbitals via a matrix exponential. | |
subroutine, public | propagate_arnoldi (rtp, rtp_control) |
computes U_prop*MOs using arnoldi subspace algorithm | |
subroutine, public | propagate_bch (rtp, rtp_control) |
Propagation using the Baker-Campbell-Hausdorff expansion, currently only works for rtp. | |
subroutine, public | compute_exponential (propagator, propagator_matrix, rtp_control, rtp) |
decides which type of exponential has to be computed | |
subroutine, public | compute_exponential_sparse (propagator, propagator_matrix, rtp_control, rtp) |
Sparse versions of the matrix exponentials. | |
Routines for calculating a complex matrix exponential.
subroutine, public rt_make_propagators::propagate_exp | ( | type(rt_prop_type), pointer | rtp, |
type(rtp_control_type), pointer | rtp_control | ||
) |
performs propagations if explicit matrix exponentials are used ETRS: exp(i*H(t+dt)*dt/2)*exp(i*H(t)*dt/2)*MOS EM: exp[-idt/2H(t+dt/2)*MOS
rtp | ... |
rtp_control | ... |
Definition at line 71 of file rt_make_propagators.F.
subroutine, public rt_make_propagators::propagate_exp_density | ( | type(rt_prop_type), pointer | rtp, |
type(rtp_control_type), pointer | rtp_control | ||
) |
Propagation of the density matrix instead of the atomic orbitals via a matrix exponential.
rtp | ... |
rtp_control | ... |
Definition at line 135 of file rt_make_propagators.F.
subroutine, public rt_make_propagators::propagate_arnoldi | ( | type(rt_prop_type), pointer | rtp, |
type(rtp_control_type), pointer | rtp_control | ||
) |
computes U_prop*MOs using arnoldi subspace algorithm
rtp | ... |
rtp_control | ... |
Definition at line 199 of file rt_make_propagators.F.
subroutine, public rt_make_propagators::propagate_bch | ( | type(rt_prop_type), pointer | rtp, |
type(rtp_control_type), pointer | rtp_control | ||
) |
Propagation using the Baker-Campbell-Hausdorff expansion, currently only works for rtp.
rtp | ... |
rtp_control | ... |
Definition at line 267 of file rt_make_propagators.F.
subroutine, public rt_make_propagators::compute_exponential | ( | type(dbcsr_p_type), dimension(:), pointer | propagator, |
type(dbcsr_p_type), dimension(:), pointer | propagator_matrix, | ||
type(rtp_control_type), pointer | rtp_control, | ||
type(rt_prop_type), pointer | rtp | ||
) |
decides which type of exponential has to be computed
propagator | ... |
propagator_matrix | ... |
rtp_control | ... |
rtp | ... |
Definition at line 338 of file rt_make_propagators.F.
subroutine, public rt_make_propagators::compute_exponential_sparse | ( | type(dbcsr_p_type), dimension(:), pointer | propagator, |
type(dbcsr_p_type), dimension(:), pointer | propagator_matrix, | ||
type(rtp_control_type), pointer | rtp_control, | ||
type(rt_prop_type), pointer | rtp | ||
) |
Sparse versions of the matrix exponentials.
propagator | ... |
propagator_matrix | ... |
rtp_control | ... |
rtp | ... |
Definition at line 402 of file rt_make_propagators.F.