QuantumATK Forum
QuantumATK => Scripts, Tutorials and Applications => Topic started by: haroon on April 23, 2018, 09:53
-
Dear Friends,
I am facing a problem in IV-curves calculations of diodes and FET in Quantumwise. My calculated IV-curves show abrupt jumps in current values. I could not find out the reason of this. Kindly guide me. The python script and output curve is given:
First I did zero biase calculations then i used the output file to calculate IV-Curves and the graph is in the attachement whereas the script is below:
# -*- coding: utf-8 -*-
# -------------------------------------------------------------
# Analysis from File
# -------------------------------------------------------------
path = u'4h6h_new.nc'
configuration = nlread(path, object_id='gID000')[0]
# -------------------------------------------------------------
# IV Curve
# -------------------------------------------------------------
biases = [0.00, 0.05, 0.10, 0.15, 0.20, 0.25,
0.30, 0.35, 0.40, 0.45, 0.50, 0.55,
0.60, 0.65, 0.70, 0.75, 0.80, 0.85,
0.90, 0.95, 1.00]*Volt
kpoint_grid = MonkhorstPackGrid(
na=3,
nb=3,
)
iv_curve = IVCurve(
configuration=configuration,
biases=biases,
energies=numpy.linspace(-3,3,101)*eV,
kpoints=kpoint_grid,
self_energy_calculator=KrylovSelfEnergy(),
energy_zero_parameter=AverageFermiLevel,
infinitesimal=1e-06*eV,
selfconsistent_configurations_filename_prefix="ivcurve_selfcons_conf_AntsF_",
log_filename_prefix="ivcurve_AntsF_"
)
nlsave('iv-newF.nc', iv_curve)
nlprint(iv_curve)
-
Your k-point mesh might be not dense enough, but that also depends on the device cross section, i.e., lateral unit cell dimensions. More importantly, the energy mesh is very sparse, (3 eV - (-3 eV) )/101 ~ 0.06 eV. I think you may decrease the energy interval to [-1, 1] eV and use something like 201 points, at least.
Is there any particular reason that you have adopted the 'KrylovSelfEnergy' method, not a Recursive one?
-
Thanks for your reply. No there is no specific reason to use 'KrylovSelfEnergy,. Should i use less dense K-mesh? How much value for K-points should be chosen?
-
I would first increase the energy mesh density for a given k-point sampling, and then increase (not decrease as you wrote) the k-sampling density by factor of 2, e.g., using 6x6 k-point mesh, if you still get the oscillatory behavior.