Author Topic: device k-point convergence  (Read 3239 times)

0 Members and 1 Guest are viewing this topic.

Offline karma

  • Regular QuantumATK user
  • **
  • Posts: 14
  • Country: in
  • Reputation: 0
    • View Profile
device k-point convergence
« on: January 9, 2018, 20:17 »
for a device configuration we calculate the k-points for the electrodes and then the centeral region ...it was mentioned in a forum that since the centeral region is non periodic the k-point in the c direction is automatically kept as 1
but when we calculate the configuration as a device then  how do we set the k-points for the device  along  a,b & c  ...also in the tutorial although the convergence is at a much lower value for electrode at  11 along c the value of 51 is taken.

Offline Jess Wellendorff

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 933
  • Country: dk
  • Reputation: 29
    • View Profile
Re: device k-point convergence
« Reply #1 on: January 10, 2018, 08:17 »
The simple answer is that you do not really need to think about such details. You just need to select one single set of k-points (kA, kB, kC) in the VNL Scripter, then the k-point sampling for both electrode calculations and for the device calculation are automatically set up correctly. The more advanced answer is that 3 calculations are needed (electrode #1, electrode #2, device NEGF), so 3 k-point grids are set up in the ATK Python script. But they are all identical. Example:
Code
left_electrode_k_point_sampling = MonkhorstPackGrid(
    na=5,
    nb=5,
    nc=165,
    )
left_electrode_numerical_accuracy_parameters = NumericalAccuracyParameters(
    k_point_sampling=left_electrode_k_point_sampling,
    density_mesh_cutoff=140.0*Hartree,
    )

right_electrode_k_point_sampling = MonkhorstPackGrid(
    na=5,
    nb=5,
    nc=165,
    )
right_electrode_numerical_accuracy_parameters = NumericalAccuracyParameters(
    k_point_sampling=right_electrode_k_point_sampling,
    density_mesh_cutoff=140.0*Hartree,
    )

device_k_point_sampling = MonkhorstPackGrid(
    na=5,
    nb=5,
    nc=165,
    )
device_numerical_accuracy_parameters = NumericalAccuracyParameters(
    k_point_sampling=device_k_point_sampling,
    density_mesh_cutoff=140.0*Hartree,
    )