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