Dear sir,
I am calculating the gate-drain curves of ZnS devices doped with MoO3 molecule. All the calculation at different gate voltage is SCF converged. But the drain current does not monotonously decrease with the rise of gate voltage. Is there any errors in this calculation?All the currents are calculated from the device configuration at lower gate voltage.
The .py is listed as following:
#read in the old configuration
device_configuration = nlread("F:/MoO3/gate-ZnS-MoO3-0.8V-b0.4V.nc",object_id='gID000')[0]
calculator = device_configuration.calculator()
metallic_region0 = device_configuration.metallicRegions()[0]
# Define gate_voltages
gate_voltage_list=numpy.linspace(0.6,0.6,1)*Volt
for gate_voltage in gate_voltage_list:
device_configuration.setMetallicRegions(
[metallic_region0(value = gate_voltage)] )
# make a copy of the calculator and attach it to the configuration
# restart from the previous scf state
device_configuration.setCalculator(calculator(),
initial_state=device_configuration)
device_configuration.update()
nlsave('F:/MoO3/gate-ZnS-MoO3-0.8V-b0.6V.nc', device_configuration)
#Analysis
filename= 'F:/MoO3/gate-ZnS-MoO3-0.8V-b0.6V.nc'
transmission_spectrum = TransmissionSpectrum(
configuration=device_configuration,
energies=numpy.linspace(-2,2,101)*eV,
kpoints=MonkhorstPackGrid(5,5),
energy_zero_parameter=AverageFermiLevel,
infinitesimal=1e-06*eV,
self_energy_calculator=RecursionSelfEnergy(),
)
nlsave('F:/MoO3/gate-ZnS-MoO3-0.8V-b0.6V.nc', transmission_spectrum,object_id='trans'+str(gate_voltage))
nlprint(transmission_spectrum)
The device configuration is attached.