Module to handle ballistic transport. Based on < dosqc_1.0 > Density Of States and Quantum Conductance - Version 1.0 Marco Buongiorno Nardelli, January 2000. Reference: - M. Buongiorno Nardelli, "Electronic transport in extended systems: application to carbon nanotubes", Phys. Rev. B, vol. 60(11), 7828 (1999)
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
complex(kind=dp), | private, | parameter | :: | eta | = | (0.0_dp, 0.0005_dp) | small complex number |
integer, | private, | parameter | :: | nterx | = | 50 | nterx = # of maximum iteration to calculate transfer matrix |
integer, | private | :: | one_dim_vec | cartesian axis to which real_lattice(:,one_dim_vec) is parallel |
|||
integer, | private | :: | nrpts_one_dim | ||||
integer, | private | :: | num_pl | number of unit cell in a principal layer |
|||
integer, | private, | dimension(3) | :: | coord | coord : coord(1) defines the conduction direction according to 1=x,2=y,3=z, coord(2),coord(3) define the other directions during sorting routines |
||
integer, | private, | allocatable | :: | tran_sorted_idx(:) | index of sorted WF centres to unsorted |
||
real(kind=dp), | private, | allocatable | :: | hr_one_dim(:,:,:) | |||
real(kind=dp), | private, | allocatable | :: | hB0(:,:) | |||
real(kind=dp), | private, | allocatable | :: | hB1(:,:) | |||
real(kind=dp), | private, | allocatable | :: | hL0(:,:) | |||
real(kind=dp), | private, | allocatable | :: | hL1(:,:) | |||
real(kind=dp), | private, | allocatable | :: | hR0(:,:) | |||
real(kind=dp), | private, | allocatable | :: | hR1(:,:) | |||
real(kind=dp), | private, | allocatable | :: | hC(:,:) | |||
real(kind=dp), | private, | allocatable | :: | hLC(:,:) | |||
real(kind=dp), | private, | allocatable | :: | hCR(:,:) |
Main transport subroutine
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=dp), | intent(out) | :: | tot(nxx,nxx) | |||
complex(kind=dp), | intent(out) | :: | tott(nxx,nxx) | |||
real(kind=dp), | intent(in) | :: | h_00(nxx,nxx) | |||
real(kind=dp), | intent(in) | :: | h_01(nxx,nxx) | |||
complex(kind=dp), | intent(in) | :: | e_scan_cmp | |||
integer, | intent(in) | :: | nxx |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=dp), | intent(in) | :: | tot(nxx,nxx) | |||
complex(kind=dp), | intent(in) | :: | tott(nxx,nxx) | |||
real(kind=dp), | intent(in) | :: | h_00(nxx,nxx) | |||
real(kind=dp), | intent(in) | :: | h_01(nxx,nxx) | |||
real(kind=dp), | intent(in) | :: | e_scan | |||
complex(kind=dp), | intent(out) | :: | g(nxx,nxx) | |||
integer, | intent(in) | :: | igreen | |||
integer, | intent(in) | :: | invert | |||
integer, | intent(in) | :: | nxx |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nxx | |||
real(kind=dp), | intent(out) | :: | h_00(nxx,nxx) | |||
real(kind=dp), | intent(out) | :: | h_01(nxx,nxx) | |||
character(len=50), | intent(in) | :: | h_file |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nxx | |||
real(kind=dp), | intent(out) | :: | h_00(nxx,nxx) | |||
character(len=50), | intent(in) | :: | h_file |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nxx1 | |||
integer, | intent(in) | :: | nxx2 | |||
real(kind=dp), | intent(out) | :: | h_01(nxx1,nxx2) | |||
character(len=50), | intent(in) | :: | h_file |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(out), | allocatable, dimension(:, :) | :: | signatures | ||
integer, | intent(out) | :: | num_G |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in), | dimension(:, :) | :: | signatures | ||
integer, | intent(in) | :: | num_G | |||
logical, | intent(out) | :: | pl_warning |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(inout), | dimension(2, Array_size) | :: | Array | ||
integer, | intent(in), | dimension(:) | :: | Array_groups | ||
integer, | intent(in) | :: | Array_size | |||
integer, | intent(out), | allocatable, dimension(:, :) | :: | subgroup_info |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(inout), | dimension(:, :) | :: | non_sorted | ||
real(kind=dp), | intent(out), | dimension(:, :) | :: | sorted |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in), | dimension(:, :) | :: | array | ||
integer, | intent(out), | allocatable, dimension(:) | :: | array_groups |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in), | dimension(:, :) | :: | signatures | ||
integer, | intent(in) | :: | num_G |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(inout), | dimension(:, :) | :: | signatures |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(in) | :: | pl_warning |
Dellocate module data