Pseudopotential parameters

This section summarizes the parameters of the pseudopotential.

calculation.pseudoPotential.nonOverlapInteractionMode

keyword: calculation.pseudoPotential.nonOverlapInteractionMode

possible values: 0, 1, 2

default value: 2

description: A non-local pseudo-potential matrix (Vnl) element <phi_i | Vnl | phi_j> can be non-zero even when the two atomic orbital functions |phi_i> and |phi_j> do not overlap. This parameter is for controlling the calculation of those non-overlapping Vnl elements. If nonOverlapInteractionMode is 0, all non-overlapping Vnl elements will be set to zero. If it is 2, none of the non-overlapping Vnl elements will be set to zero. If it is 1, the element <phi_i | Vnl | phi_j> will be set to zero when and only when there is no orbital in the cell which contains |phi_i> overlap with any orbital in the image cell which contains |phi_j>.

an example:

calculation.pseudoPotential.nonOverlapInteractionMode = 1

calculation.pseudoPotential.Lmax4Vnl

keyword: calculation.pseudoPotential.Lmax4Vnl

possible values: an integer

default value: 2

description: The highest angular momentum used in the Kleinman-Bylander Vnl projector. Namely, those projectors having angular momentum higher than Lmax4Vnl will not be used in the calculation of Vnl.

an example:

calculation.pseudoPotential.Lmax4Vnl = 3

calculation.IVCurve.systemObjectStatus

keyword: calculation.IVCurve.systemObjectStatus

possible values: AllCalculated, AllToBeCalculated

default value: AllCalculated

description: This parameter indicates calculation status of the self-consistent field of the system. If AllCalculated, the Hamiltonian calculation has already been completed under all bias voltages. If AllToBeCalculated, needs to calculate the Hamiltonian before the current-voltage curve calculation. In this case, all input parameters for the Hamiltonian calculation should be included, except the calculation.name which will be given in IVCurve.hamiltonianCalculationName and the system.voltageOfLead# which will be given in IVCurve.leadsVoltages.

an example:

calculation.IVCurve.systemObjectStatus = ...
AllToBeCalculated

calculation.IVCurve.hamiltonianCalculationName

keyword: calculation.IVCurve.hamiltonianCalculationName

possible values: a string which will be used as the parameter calculation.name when performing the Hamiltonian calculation.

default value: SCF

description: not used when systemObjectStatus is AllCalculated.

an example:

calculation.IVCurve.hamiltonianCalculationName = SCF

calculation.IVCurve.leadsVoltages

keyword: calculation.IVCurve.leadsVoltages

possible values: a cell array of 1 by number of leads. each cell is an 1 by n double array with n an integer.

default value: no default value

description: the bias voltages applied to all leads, in unit of Volt. Not used when systemObjectStatus is AllCalculated. Note that the chemical potential shift by application of a bias V is -eV.

an example:

calculation.IVCurve.leadsVoltages = ...
{0, -1:0.1:1}

calculation.IVCurve.leadIndex

keyword: calculation.IVCurve.leadIndex

possible values: integer array

default value: all leads

description: Index of those leads whose current is to be calculated.

an example:

calculation.IVCurve.leadIndex = 2

calculation.IVCurve.temperature

keyword: calculation.IVCurve.temperature

possible values: a double value

default value: the value used in the calculation of Hamiltonian, or 0 if an user provided Hamiltonian is used.

description: temperature used in the Fermi function when calculating the conductance or current, in unit of K. Note: the Boltzmann constant k = 8.617342e-05(eV/K) = 3.1668151e-06 (Hartree/K).

an example:

calculation.IVCurve.temperature = 100

calculation.IVCurve.kSpacePoints

keyword: calculation.IVCurve.kSpacePoints

possible values: 3\(\times\)n double array

default value: defined in the k-point file if the file is given by the parameter IVCurve.kPointFile, or produced by the parameters IVCurve.kSpaceGridNumber and IVCurve.kSpaceGridShift.

description: the fractional coordinates of n transverse wave vectors which are used in the k-space integration.

an example:

calculation.IVCurve.kSpacePoints = [0 0 0]

calculation.IVCurve.kPointWeights

keyword: calculation.IVCurve.kPointWeights

possible values: 1\(\times\)n double array

default value: defined in the k-point file if the corresponding parameter IVCurve.kSpacePoints is using the k-values in the same file. Otherwise, equally weighted.

description: the weights of the k-space points in the k-space integration.

an example:

calculation.IVCurve.kPointWeights = [1/2 1/3 1/6]

calculation.IVCurve.energyPoints

keyword: calculation.IVCurve.energyPoints

possible values: double array

default value: determined by nanodcal according to the applied voltages, temperature, etc.

description: the energy points which are used in the energy space integration. Note that the energy values are measured from chemical potential of a lead having zero applied voltage.

an example:

calculation.IVCurve.energyPoints = 0:0.03:3

calculation.IVCurve.energyPointWeights

keyword: calculation.IVCurve.energyPointWeights

possible values: double array with the same length of energyPoints.

default value: no default value if the parameter energyPoints is given explicitly. Otherwise, determined by nanodcal according to the applied voltages, temperature, etc.

description: the weights used in the energy space integration. The parameter is only used when energyPoints is given explicitly.

an example:

calculation.IVCurve.energyPointWeights = ones(1,101)/3

calculation.IVCurve.etaSigma

keyword: calculation.IVCurve.etaSigma

possible values: a small double number

default value: 1e-6 Hartree

description: the small eta used in the calculation of self-energy when the GreenFunction method is chosen.

an example:

calculation.IVCurve.etaSigma = 1e-4

calculation.IVCurve.etaGF

keyword: calculation.IVCurve.etaGF

possible values: a small double number

default value: 0

description: the small eta used in the calculation of Greens function when the GreenFunction method is chosen.

an example:

calculation.IVCurve.etaGF = 1e-4

calculation.IVCurve.eta

keyword: calculation.IVCurve.eta

possible values: a small double number

default value: no default value

description: the small eta used in the calculation of self-energy and/or Greens function when the GreenFunction method is chosen. This parameter is only used when the parameter IVCurve.etaSigma and/or IVCurve.etaGF is not given.

an example:

calculation.IVCurve.eta = 1e-4

calculation.IVCurve.epsilon

keyword: calculation.IVCurve.epsilon

possible values: a small double number

default value: 1e-9

description: used as a criterion of Bloch wave. For a wave with wave-vector k, if ||exp(ika)|-1| < epsilon, where a is unit cell length, it is considered as a Bloch wave; otherwise it is considered as an evanescent wave.

an example:

calculation.IVCurve.epsilon = 1e-4