Documentation for module transport

routines for DFT+NEGF calculations (coupling with the quantum transport code OMEN)

source: transport.F
Loading...

public Subroutines/Functions:

SCF calcualtion with an externally evaluated density matrix
post scf calculations for transport
creates the transport environment
initializes the transport environment

SUBROUTINEexternal_scf_method(transport_env, matrix_s, matrix_ks, matrix_p, nelectron_spin, natoms, energy_diff, iscf, extra_scf)

SCF calcualtion with an externally evaluated density matrix

Arguments:
INTENT(inout)
:: transport_env transport environment
TYPE(dbcsr_type),
INTENT(in)
:: matrix_s DBCSR overlap matrix
TYPE(dbcsr_type),
INTENT(in)
:: matrix_ks DBCSR Kohn-Sham matrix
TYPE(dbcsr_type),
INTENT(inout)
:: matrix_p DBCSR density matrix
INTEGER,
INTENT(in)
:: nelectron_spin number of electrons
INTEGER,
INTENT(in)
:: natoms number of atoms
REAL(dp),
INTENT(in)
:: energy_diff scf energy difference
INTEGER,
INTENT(in)
:: iscf the current scf iteration
LOGICAL,
INTENT(in)
:: extra_scf whether or not an extra scf step will be performed

SUBROUTINEqs_scf_post_transport(qs_env)

post scf calculations for transport

Arguments:
POINTER
:: qs_env qs environment

SUBROUTINEtransport_env_create(qs_env)

creates the transport environment

Arguments:
POINTER
:: qs_env the qs_env containing the transport_env

SUBROUTINEtransport_initialize(ks_env, transport_env, template_matrix)

initializes the transport environment

Arguments:
POINTER
:: ks_env ...
INTENT(inout)
:: transport_env the transport env to be initialized
TYPE(dbcsr_type),
INTENT(in)
:: template_matrix template matrix to keep the sparsity of matrices fixed