QuantumATK Forum

QuantumATK => General Questions and Answers => Topic started by: Jahanzaib on September 2, 2024, 15:44

Title: Current at each bias
Post by: Jahanzaib on September 2, 2024, 15:44
Dear Expert,
I hope you are doing well.

I am interested in calculating the current at each bias given in code below. This code work well, but I don't have an idea how to calculate current at each bias, any suggestion?

pos_bias_list = [0.10, 0.20, 0.30, 0.40, 0.50, 0.60, 0.70]*Volt

# Read DeviceConfiguration
zero_bias_file = '/home/hartree/jem/wolf6252/N-P/Device/Fe-H-D/Fe-H-D-3-3/Fe-H-D-3-3.hdf5'
device_configuration = nlread(zero_bias_file, DeviceConfiguration)[0]

for bias in pos_bias_list:
    if processIsMaster():
        print("Bias is now: ", bias)
    # Get the calculator
    calculator = device_configuration.calculator()

    # Set the bias voltage
    calculator=calculator(electrode_voltages=(bias/2, -bias/2))

    # Attach the calculator and use the old initial state
    device_configuration.setCalculator(
      calculator(),
      initial_state=device_configuration)
    device_configuration.update()
    nlsave('device_bias_%.2f.hdf5' % bias.inUnitsOf(Volt), device_configuration)
    nlprint(device_configuration)
Title: Re: Current at each bias
Post by: Anders Blom on September 5, 2024, 21:35
To get the current you also have to compute the transmission spectrum at each bias (can be done afterwards, using the saved configurations for each bias), and from each transmission spectrum you get the current.
Title: Re: Current at each bias
Post by: Jahanzaib on September 8, 2024, 01:08
If I understand you correctly then it's mean I have to apply different bias let's say -0.1, 0.2 etc and calculate the TS. ok?

I calculated the TS with -0.1 and also got current as shown in the figure? this is what you are explaining?
Title: Re: Current at each bias
Post by: Anders Blom on September 9, 2024, 21:02
Yes. There is appreciable band gap in this system, so the current will be zero for low bias (nano-Ampere is for practical purposes to be considered zero in a system like this), but once you bump up the bias a bit you should start to see a lot more.

You can also extract the current in a script, if you have many bias points, but it's instructive to visualize the transmission spectrum to discern why the I-V looks the way it does.
Title: Re: Current at each bias
Post by: Jahanzaib on September 10, 2024, 01:40
I got your point. Actually I was looking the following tutorial (https://docs.quantumatk.com/tutorials/std_transport/std_transport.html). I run many bias but I didnot get current using the following

 Calculate the current from the transmission spectrum
    current = transmission_spectrum.current()
Title: Re: Current at each bias
Post by: Anders Blom on September 11, 2024, 20:37
Right, that is correct, then in the script you can just nlprint(current)