Author Topic: Can ATK handle an ill-conditioned Hamiltonian?  (Read 3182 times)

0 Members and 1 Guest are viewing this topic.

Offline ipsecog

  • Heavy QuantumATK user
  • ***
  • Posts: 35
  • Country: se
  • Reputation: 0
    • View Profile
Can ATK handle an ill-conditioned Hamiltonian?
« on: April 14, 2012, 16:54 »
I have heard that some other transport software has implemented a special algorithm for treating an ill-conditioned self-energy/electrode Hamiltonian. How does ATK handle this case?

Offline Anders Blom

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 5582
  • Country: dk
  • Reputation: 99
    • View Profile
    • QuantumATK at Synopsys
Re: Can ATK handle an ill-conditioned Hamiltonian?
« Reply #1 on: April 14, 2012, 17:04 »
I guess you are referring to the case where (H-ES) for the electrode has a null space.

ATK has three methods for calculating the electrode self-energy: Krylov, Recursion and Direct.

The two first methods are iterative, and since there is never an inversion in this case, this is not a problem.

For the Direct method ATK does invert the matrix, however, we project out the null space first, using singular value decomposition. Thus, the ill-conditioning is not a problem in this case either.

Note: Until and including ATK 11.8, the Krylov method was the default; it is very fast (up to 10x faster than the other two), but it makes some approximations which can cause negative transmission in a few cases. The Direct method is robust, and has therefore been appointed default from 12.2, for safety. It can however often pay off to try the Krylov method first, since it is so much faster. It's only if the results look odd, if you get large negative transmission, that you really need to switch to the Direct method.