(git:9754b87)
Loading...
Searching...
No Matches
smeagol_interface Module Reference

CP2K+SMEAGOL interface. More...

Functions/Subroutines

subroutine, public run_smeagol_bulktrans (qs_env)
 Save overlap, Kohn-Sham, electron density, and energy-density matrices of semi-infinite electrodes in SIESTA format.
 
subroutine, public smeagol_shift_v_hartree (v_hartree_rspace, cell, hartreeleadsleft, hartreeleadsright, hartreeleadsbottom, vbias, zleft, zright, isexplicit_zright, isexplicit_bottom)
 Align Hatree potential of semi-infinite leads to match bulk-transport calculation and apply external electrostatic potential (bias).
 
subroutine, public run_smeagol_emtrans (qs_env, last, iter, rho_ao_kp)
 Run NEGF/SMEAGOL transport calculation.
 

Detailed Description

CP2K+SMEAGOL interface.

Author
Sergey Chulkov
Christian Ahart
Clotilde Cucinotta

Function/Subroutine Documentation

◆ run_smeagol_bulktrans()

subroutine, public smeagol_interface::run_smeagol_bulktrans ( type(qs_environment_type), pointer  qs_env)

Save overlap, Kohn-Sham, electron density, and energy-density matrices of semi-infinite electrodes in SIESTA format.

Parameters
qs_envQuickStep environment

Definition at line 98 of file smeagol_interface.F.

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

◆ smeagol_shift_v_hartree()

subroutine, public smeagol_interface::smeagol_shift_v_hartree ( type(pw_r3d_rs_type), pointer  v_hartree_rspace,
type(cell_type), pointer  cell,
real(kind=dp), intent(in)  hartreeleadsleft,
real(kind=dp), intent(in)  hartreeleadsright,
real(kind=dp), intent(in)  hartreeleadsbottom,
real(kind=dp), intent(in)  vbias,
real(kind=dp), intent(in)  zleft,
real(kind=dp), intent(in)  zright,
logical, intent(in)  isexplicit_zright,
logical, intent(in)  isexplicit_bottom 
)

Align Hatree potential of semi-infinite leads to match bulk-transport calculation and apply external electrostatic potential (bias).

Parameters
v_hartree_rspaceHartree potential on a real-space 3-D grid [inout]
cellunit cell
HartreeLeadsLeftz-coordinate of the left lead
HartreeLeadsRightz-coordinate of the right lead
HartreeLeadsBottomaverage Hartree potential (from bulk-transport calculation) at HartreeLeadsLeft and HartreeLeadsRight
Vbiasthe value of external potential to apply
zleftstarting point of external potential drop (initial value 0.5*Vbias)
zrightfinal point of external potential drop (final value -0.5*Vbias)
isexplicit_zrightwhether zright has beed provided explicitly via the input file. If not, use the cell boundary.
isexplicit_bottomwhether the reference Hatree potential for bulk regions has been provided explicitly via the input file. If not, do not align the potential at all (instead of aligning it to 0 which is incorrect).
Note
This routine assumes that the lattice vector 'k' coincides with z-axis

Definition at line 523 of file smeagol_interface.F.

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

◆ run_smeagol_emtrans()

subroutine, public smeagol_interface::run_smeagol_emtrans ( type(qs_environment_type), pointer  qs_env,
logical, intent(in)  last,
integer, intent(in)  iter,
type(dbcsr_p_type), dimension(:, :), optional, pointer  rho_ao_kp 
)

Run NEGF/SMEAGOL transport calculation.

Parameters
qs_envQuickStep environment
lastconverged SCF iterations; compute NEGF properties [in]
iterindex of the current iteration [in]
rho_ao_kprefined electron density; to be mixed with electron density from the previous SCF iteration [out]

Definition at line 627 of file smeagol_interface.F.

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