Author Topic: The problem of device NEGF DFT convergence?  (Read 5999 times)

0 Members and 1 Guest are viewing this topic.

Offline qiuweicheng

  • Heavy QuantumATK user
  • ***
  • Posts: 38
  • Country: cn
  • Reputation: 0
    • View Profile
The problem of device NEGF DFT convergence?
« on: June 27, 2017, 05:50 »
Dear sir, I calulated the I-V curve of a Magnetic tunnel junction. But, I find that when the bias>1V,  the device NEGF DFT  is not convergent. I try to solve this problem. The  Contour Integral Settings is changed:
contour_parameters = DoubleContourIntegralParameters(
    circle_points=40,
    real_axis_infinitesimal=0.0005*Hartree,
    real_axis_point_density=0.0005*Hartree,
    integral_lower_bound=2.0*Hartree,
    )
and use the lower bias results initial state:
initial_spin = InitialSpin(scaled_spins=[1.0, 1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 1.0])
old_calculation = nlread('BN-0.25V.nc', DeviceConfiguration)[0]
device_configuration.setCalculator(
    calculator,
    initial_spin=initial_spin,
    initial_state=old_calculation,
)
But, No matter what I do try, the device (bias>1V) has not been convergent. Which calculated parameters should be adjusted? and could you give me some suggestions about the size of related parameters? Because I have no idea about the  size of the parameter values.

Offline Petr Khomyakov

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 1290
  • Country: dk
  • Reputation: 25
    • View Profile
Re: The problem of device NEGF DFT convergence?
« Reply #1 on: June 27, 2017, 10:47 »
To have an idea on the convergence issue, it would be helpful to see the actual structure of the junction that is missing in the scripts.

Offline qiuweicheng

  • Heavy QuantumATK user
  • ***
  • Posts: 38
  • Country: cn
  • Reputation: 0
    • View Profile
Re: The problem of device NEGF DFT convergence?
« Reply #2 on: June 28, 2017, 10:07 »
Here, it is my strcture

Offline Petr Khomyakov

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 1290
  • Country: dk
  • Reputation: 25
    • View Profile
Re: The problem of device NEGF DFT convergence?
« Reply #3 on: June 28, 2017, 11:19 »
The structure looks OK. Which version of ATK are you using? In ATK-2017.b1, there is an option of using a more robust and faster Poisson solver:  [Parallel] Conjugate gradient.

In the Device Algorithm settings, you may also consider using Neutral Atom instead of Equivalent Bulk for initial density.

I would not change the Contour Integral Settings for the moment, unless you are sure that there are deeply-lying states of Ni. In this case, you might need to increase the value of integral_lower_bound. This can be checked by band structure calculation for bulk Ni.

Offline Anders Blom

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 5576
  • Country: dk
  • Reputation: 96
    • View Profile
    • QuantumATK at Synopsys
Re: The problem of device NEGF DFT convergence?
« Reply #4 on: June 29, 2017, 05:02 »
The electrodes are quite short, so this can cause some problems. But most importantly you should not try to run the high bias calculation from scratch, but rather restart from a converged state for a slightly lower bias. This approach is described in tutorials - or you can use the IVCurve object which does this automatically.

Offline qiuweicheng

  • Heavy QuantumATK user
  • ***
  • Posts: 38
  • Country: cn
  • Reputation: 0
    • View Profile
Re: The problem of device NEGF DFT convergence?
« Reply #5 on: July 3, 2017, 05:43 »
Thank you for your reply.  Our py file is in the attachments.
1. I just do this by using the results of lower-bias convergence. But it is also not convergence.
2. The length of Ni electrode is short ? or The length of Ni layers in the scattering region is short?
If it is the length of Ni layers in the scattering region. I have also made change for this, but it is also not  convergence.
3. Why using Neutral Atom instead of Equivalent Bulk for initial density? and how can I set py command for this.

Offline Petr Khomyakov

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 1290
  • Country: dk
  • Reputation: 25
    • View Profile
Re: The problem of device NEGF DFT convergence?
« Reply #6 on: July 4, 2017, 10:45 »
Regarding #2, this is the length of the actual electrode and related electrode extension that need to be enlarged.

Regarding #3, this can be done in the VNL or in the script by replacing 'EquivalentBulk' with 'NeutralAtom' if you saved the script with defaults, or otherwise
explicitly adding the initial_density_type in the Device Algorithm Settings:
#----------------------------------------
# Device Algorithm Settings
#----------------------------------------
initial_density_type = NeutralAtom(
    electrode_constraint_length=10.0*Angstrom,
    )

However, I notice that you may first try changing the electrode length before changing the defaults. There is no guarantee that 'EquivalentBulk' is not a better option compared to 'NeutralAtom'. So, you may want to try both settings if the problem is not gone.

Offline qiuweicheng

  • Heavy QuantumATK user
  • ***
  • Posts: 38
  • Country: cn
  • Reputation: 0
    • View Profile
Re: The problem of device NEGF DFT convergence?
« Reply #7 on: July 7, 2017, 10:10 »
I checked the ElectroStaticDifferencePotential  for the device under bias 0.9V.
The voltage curve is not right.  I have add the length of Electrode extension layer from 9 layers to 13 layers, but the voltage curve was still not convergence. The  ElectroStaticDifferencePotential  for the device under bias 0.8V is convergence. See the attachments.
How we solve this problem of  ElectroStaticDifferencePotential  for the device under bias>0.9V ?

Offline qiuweicheng

  • Heavy QuantumATK user
  • ***
  • Posts: 38
  • Country: cn
  • Reputation: 0
    • View Profile
Re: The problem of device NEGF DFT convergence?
« Reply #8 on: July 8, 2017, 06:46 »
By the way. The length of the actual electrode and related electrode extension have been much enlarged
In the Device Algorithm settings, We consider using Neutral Atom instead of Equivalent Bulk for initial density.
But, the device is still not convergence. What can I do next?
The longer  the length of the actual electrode and related electrode extension , the Better?

Offline Petr Khomyakov

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 1290
  • Country: dk
  • Reputation: 25
    • View Profile
Re: The problem of device NEGF DFT convergence?
« Reply #9 on: July 8, 2017, 15:05 »
The posted script for the 0.9 V case seems to suggest that you have not used your 0.8 V converged solution as an initial state for the higher bias voltage calculation.  You may try changing that.

As I said previously, you might need to use a more robust Poisson solver for this particular problem, e.g.,  [Parallel] Conjugate gradient available in ATK-2017. What is the ATK version you are using?


Offline qiuweicheng

  • Heavy QuantumATK user
  • ***
  • Posts: 38
  • Country: cn
  • Reputation: 0
    • View Profile
Re: The problem of device NEGF DFT convergence?
« Reply #10 on: July 9, 2017, 03:15 »
But, as my py file shown, I have used my 0.8 V converged solution as an initial state for the higher bias voltage calculation. I don't know why ? I use the ATK 2012 and 2016.
initial_spin = InitialSpin(scaled_spins=[1.0, 1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 1.0])
old_calculation = nlread('BN-0.8V.nc', DeviceConfiguration)[0]
device_configuration.setCalculator(
    calculator,
    initial_spin=initial_spin,
    initial_state=old_calculation,
)

Offline Petr Khomyakov

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 1290
  • Country: dk
  • Reputation: 25
    • View Profile
Re: The problem of device NEGF DFT convergence?
« Reply #11 on: July 9, 2017, 22:03 »
Which py file? And why do you need to use ATK-2012 if you have got the version of 2016?