(git:6a2e663)
transport Module Reference

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

Functions/Subroutines

subroutine, public transport_env_create (qs_env)
 creates the transport environment More...
 
subroutine, public transport_initialize (ks_env, transport_env, template_matrix)
 initializes the transport environment More...
 
subroutine, public external_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. More...
 
subroutine, public qs_scf_post_transport (qs_env)
 post scf calculations for transport More...
 

Detailed Description

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

History
12.2012 created external_scf_method [Hossein Bani-Hashemian] 05.2013 created rotines to work with C-interoperable matrices [Hossein Bani-Hashemian] 07.2013 created transport_env routines [Hossein Bani-Hashemian] 11.2014 switch to CSR matrices [Hossein Bani-Hashemian] 12.2014 merged [Hossein Bani-Hashemian] 04.2016 added imaginary DM and current density cube [Hossein Bani-Hashemian]
Author
Mohammad Hossein Bani-Hashemian

Function/Subroutine Documentation

◆ transport_env_create()

subroutine, public transport::transport_env_create ( type(qs_environment_type), pointer  qs_env)

creates the transport environment

Parameters
[in,out]qs_envthe qs_env containing the transport_env
Author
Mohammad Hossein Bani-Hashemian

Definition at line 124 of file transport.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ transport_initialize()

subroutine, public transport::transport_initialize ( type(qs_ks_env_type), pointer  ks_env,
type(transport_env_type), intent(inout)  transport_env,
type(dbcsr_type), intent(in)  template_matrix 
)

initializes the transport environment

Parameters
ks_env...
[in,out]transport_envthe transport env to be initialized
[in]template_matrixtemplate matrix to keep the sparsity of matrices fixed
Author
Mohammad Hossein Bani-Hashemian

Definition at line 289 of file transport.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ external_scf_method()

subroutine, public transport::external_scf_method ( type(transport_env_type), intent(inout)  transport_env,
type(dbcsr_type), intent(in)  matrix_s,
type(dbcsr_type), intent(in)  matrix_ks,
type(dbcsr_type), intent(inout)  matrix_p,
integer, intent(in)  nelectron_spin,
integer, intent(in)  natoms,
real(dp), intent(in)  energy_diff,
integer, intent(in)  iscf,
logical, intent(in)  extra_scf 
)

SCF calcualtion with an externally evaluated density matrix.

Parameters
[in,out]transport_envtransport environment
[in]matrix_sDBCSR overlap matrix
[in]matrix_ksDBCSR Kohn-Sham matrix
[in,out]matrix_pDBCSR density matrix
[in]nelectron_spinnumber of electrons
[in]natomsnumber of atoms
[in]energy_diffscf energy difference
[in]iscfthe current scf iteration
[in]extra_scfwhether or not an extra scf step will be performed
History
12.2012 created [Hossein Bani-Hashemian] 12.2014 revised [Hossein Bani-Hashemian]
Author
Mohammad Hossein Bani-Hashemian

Definition at line 367 of file transport.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ qs_scf_post_transport()

subroutine, public transport::qs_scf_post_transport ( type(qs_environment_type), pointer  qs_env)

post scf calculations for transport

Parameters
[in]qs_envqs environment
Author
Mohammad Hossein Bani-Hashemian

Definition at line 748 of file transport.F.

Here is the caller graph for this function: