Author Topic: Problem in the zero-bias transmittance of Perfect Au(111) wire  (Read 6893 times)

0 Members and 1 Guest are viewing this topic.

Offline jjhskang

  • Heavy QuantumATK user
  • ***
  • Posts: 54
  • Reputation: 0
    • View Profile
Hi !

I am a new user of ATK. As a simple problem, I have calculated the zero-bias conductance of a perfect Au(111) wire. We should expect nonzero conductance quantum at the Fermi level at zero bias, since the band structure calculation clearly shows the existence of bands crossing the Fermi level. However, my calculation using ATK shows that the quantum is nearly zero (~ 0.00007 or less), which does not make sense.
I do not know why this problem occurs, if it is due to the bug in the code or not.

Let me explain the procedure for that
(1) run wire_perfect_232.py, whose coordinates was built from the relaxation of the wire with 7 atoms on each (111) plane using another DFT code. If you look at the vnl file geneated after the execution of this script, you will find that electrode-central region-electrode have 2-3-2 unit cells along Z direction.

(2) run wire_perfect_232-scf.py
This scf calculation converges without problem.

(3) calculate zero-bias transmittance running the scrpt
wire_perfect_232-trans-spectrum.py.

Then, it shows that the transmittance T(E=0; V=0) is very small (~ 0.00007 or less), while we would expect the value of O(1), corresponding number of eigenchannels corssing the Fermi level.

I have attached three python scripts for your convenience.

Does anybody have any suggestion for this problem?
 
« Last Edit: September 3, 2009, 17:00 by jjhskang »

Offline Anders Blom

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 5416
  • Country: dk
  • Reputation: 89
    • View Profile
    • QuantumATK at Synopsys
Re: Problem in the zero-bias transmittance of Perfect Au(111) wire
« Reply #1 on: September 3, 2009, 17:15 »
Can you attach the output log, it may be that the calculation converged to zero charge. If so, zero transmission follows as a natural consequence.

Another possibility is that the unit cell is too small in the XY plane. This could introduce a band splitting right around the Fermi energy. You should be able to see this already in the band structure, if you use the same cell.

Is the transmission also zero at a finite energy close to the Fermi level? Like at E=0.1 eV?

« Last Edit: September 3, 2009, 17:17 by Anders Blom »

Offline jjhskang

  • Heavy QuantumATK user
  • ***
  • Posts: 54
  • Reputation: 0
    • View Profile
Re: Problem in the zero-bias transmittance of Perfect Au(111) wire
« Reply #2 on: September 4, 2009, 04:20 »
Hi !
 
Thanks for your reply.

Clearly, my calculation shows zero transmittance at all E around zero. As you pointed out, I fiound that this problem is related to the disappearance of charge to zero!

I tried to solve this problem by increasing # of k-points. In addtion, I also tried to use the same real space density for the electrode as that for the bulk calculation, as suggested in the ATK 2008.10 manual p462. However, these two prescriptions still do not solve the problem.


Here is a part of the log file which might be the most important.

---------------------------------------
# TwoProbe Calculation
# ----------------------------------------------------------------
# sc  0 : q =  461.97252 e
# sc  1 : q =  471.40931 e  dRho =  4.5749E-01
# sc  2 : q =  406.85840 e  dRho =  9.1820E+00
# sc  3 : q =  466.50694 e  dRho =  9.0783E+00
# sc  4 : q =  464.26979 e  dRho =  4.8717E-02
# sc  5 : q =  463.56899 e  dRho =  2.4212E-02
# sc  6 : q =  463.24161 e  dRho =  1.0085E-02
# sc  7 : q =  462.70733 e  dRho =  1.4300E-02
# sc  8 : q =  462.60460 e  dRho =  2.7386E-03
# sc  9 : q =  462.57537 e  Etot = -9449.98611 Ry  dRho =  2.9720E-03
# sc 10 : q =  462.41415 e  Etot = -9449.97610 Ry  dRho =  9.2112E-03  dEtot =  1.0017E-02 Ry
# sc 11 : q =  462.40735 e  Etot = -9449.97535 Ry  dRho =  3.3055E-03  dEtot =  7.5075E-04 Ry
# sc 12 : q =  462.40821 e  Etot = -9449.97514 Ry  dRho =  8.6631E-04  dEtot =  2.0585E-04 Ry
# sc 13 : q =  462.41030 e  Etot = -9449.97500 Ry  dRho =  7.6035E-04  dEtot =  1.4383E-04 Ry
# sc 14 : q =  462.41263 e  Etot = -9449.97490 Ry  dRho =  3.5163E-04  dEtot =  9.4725E-05 Ry
# sc 15 : q =  462.41403 e  Etot = -9449.97489 Ry  dRho =  3.0820E-04  dEtot =  1.2932E-05 Ry
# sc 16 : q =  462.41388 e  Etot = -9449.97489 Ry  dRho =  3.4616E-05  dEtot = -4.3822E-06 Ry
# sc  0 : q =  462.41388 e
# sc  1 : q =   -0.27836 e  dRho =  5.9906E+01
# sc  2 : q =   -0.35504 e  dRho =  1.0267E+02
# sc  3 : q =   -0.01833 e  dRho =  1.4098E+02
------------------------------------------------------------------------------------------------

Constained run seems to be OK. However, the nomconstrained run rapidly gives q = 0 !!

What can I do more?

Offline zh

  • QuantumATK Support
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 1141
  • Reputation: 24
    • View Profile
Re: Problem in the zero-bias transmittance of Perfect Au(111) wire
« Reply #3 on: September 4, 2009, 06:41 »
The discussions in this thread are related to your problem:
http://quantumwise.com/forum/index.php?topic=308.0

Offline Anders Blom

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 5416
  • Country: dk
  • Reputation: 89
    • View Profile
    • QuantumATK at Synopsys
Re: Problem in the zero-bias transmittance of Perfect Au(111) wire
« Reply #4 on: September 4, 2009, 09:10 »
Your parameters are quite reasonable (but apparently not sufficiently good!). In particular I'm quite confident you have enough electrode layers, which otherwise is a typical issue.

Increasing the k-points in A/B will do nothing for this system, but maybe 100-200 in C will be a good idea; this will not affect the calculation time noticeably.

I would increase the XY unit cell, and try LDA for now (saves time and memory!). A larger mesh cut-off could be a good idea to try, and perhaps also ad extending the contour a bit.

However, I think (guess, hope, believe) the key to success here is to increase the electron temperature.

At the same time, DoubleZetaDoublePolarized might be overkill, esp. since this is just a test after all. DoubleZetaPolarized or even SingleZetaPolarized or DoubleZeta are often good enough for gold.

Do let us know which parameter set that results in successful convergence, I think your system is a good test case, although it should be noticed that sometimes it's surprisingly hard to compute perfect metallic systems; ATK actually works best when the central region is semiconducting (to which I count molecules) or semi-metallic.

Offline jjhskang

  • Heavy QuantumATK user
  • ***
  • Posts: 54
  • Reputation: 0
    • View Profile
Re: Problem in the zero-bias transmittance of Perfect Au(111) wire
« Reply #5 on: September 8, 2009, 04:25 »
Hi!

I have tried many possible combinations of parameter set inclduing complex integration parameters, temperature, k-points, mixing parameter, etc, all of which result in zero charge.!!

If anybody has a further suggestion, it will be good.

Offline zh

  • QuantumATK Support
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 1141
  • Reputation: 24
    • View Profile
Re: Problem in the zero-bias transmittance of Perfect Au(111) wire
« Reply #6 on: September 8, 2009, 09:59 »
This problem can not fixed by adjusting the calculation parameters, so you had better check the geometry structure of your two-probe system:
i) Are there two atoms overlapped or too close to each other?
ii) Does the stacking sequence of atoms in surface layers of the center region keep the 'ABCABC...' order and continuously match the atomic layers in the electrodes (i.e., Au(111))?

Offline Anders Blom

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 5416
  • Country: dk
  • Reputation: 89
    • View Profile
    • QuantumATK at Synopsys
Re: Problem in the zero-bias transmittance of Perfect Au(111) wire
« Reply #7 on: September 8, 2009, 21:34 »
As a check, try switching off the equivalent bulk run, by using InitialDensityType.NeutralAtom instead of InitialDensityType.EquivalentBulk.

Offline jjhskang

  • Heavy QuantumATK user
  • ***
  • Posts: 54
  • Reputation: 0
    • View Profile
Re: Problem in the zero-bias transmittance of Perfect Au(111) wire
« Reply #8 on: September 8, 2009, 23:37 »
Hi!

As I stated earlier, the calculation with real space density constraint does not give zero charge. It runs OK. In addition, the transmittance quantum at Ef is 4, which seems to be reasonable in comparision with the band structure. Therefore, the problem is not related to a possibility of bad atomic configuration.

Charge disapparance occures when I turn-off the real space constraint.

Offline Anders Blom

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 5416
  • Country: dk
  • Reputation: 89
    • View Profile
    • QuantumATK at Synopsys
Re: Problem in the zero-bias transmittance of Perfect Au(111) wire
« Reply #9 on: September 9, 2009, 18:55 »
The different constraints may behave differently, and it is generally easier to converge the calculation with the RealSpaceDensity constraint. However, sometimes the results that come out of it are less than perfect (e.g. there can be discontinuities in the density).

I note that you state in the comment in the beginning that the period is 6.79 Ang, but yet you set lz=6.7. This might be enough to cause problems, esp. with InitialDensityType.EquivalentBulk, so I suggest you check the geometry in this respect.

However, I think my advise to try InitialDensityType.NeutralAtom is not a good idea, since the system is clearly homogeneous (and properly set up as such as well).

Another subtle thing is the ordering of the coordinates. I note that your atoms come almost in random order. This has been known to cause problem, so you should reorder them in increasing Z coordinate. After that, take care to get the equivalent atoms right again!

Offline jjhskang

  • Heavy QuantumATK user
  • ***
  • Posts: 54
  • Reputation: 0
    • View Profile
Re: Problem in the zero-bias transmittance of Perfect Au(111) wire
« Reply #10 on: September 14, 2009, 06:07 »
Hi!

I recalculated with the coorect Lz, which does not solve the problem. In addition, I want to mention that I had checked if the molecular configuration was OK by reading into VNL the vnl file containing the molecular geometry of the two probe system. There's nothing wrong there too!

In short, no prescription solves the problem up to now.

Offline zh

  • QuantumATK Support
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 1141
  • Reputation: 24
    • View Profile
Re: Problem in the zero-bias transmittance of Perfect Au(111) wire
« Reply #11 on: September 14, 2009, 07:14 »
Unfortunately, VNL can not ensure the correctness the geometry structure of the configuration that is read. That is to say, VNL does not check whether the atoms are overlapped or the geometry structure is reasonable for what you want to study.  You may do the following to check the geometry structure:
i) convert the configuration of your two-probe system into a equivalent bulk configuration;
ii)use nlPrint() to print out the coordinates of atoms in this equivalent bulk configuration;
iii) collect the obtained atomic  coordinates in the 2nd step and write them into a file with XYZ format;
iv) use Molden to visualize this XYZ file. If some atoms are overlapped or too close to each other, a warning will be printed on the screen.
« Last Edit: September 14, 2009, 07:17 by zh »

Offline zh

  • QuantumATK Support
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 1141
  • Reputation: 24
    • View Profile
Re: Problem in the zero-bias transmittance of Perfect Au(111) wire
« Reply #12 on: September 17, 2009, 06:44 »
I carefully checked the geometry structure of the two-probe system defined in your script file. I have the following comments:
i). Since your perfect Au nanowire is constructed from the <111> direction of fcc Au, the nearest neighbor (NN) distance of each atom in a same atomic plane (i.e., the cross plane of Au<111> nanowire) should be same. However, this is not observed in your case.  
ii). Along the <111> direction of fcc Au, the stacking sequence of atoms looks like ABCABC..... So, to reduce the required computing resource and time, it is reasonable that only 3 atomic layers are included in the electrodes.  In your case, there are 6 atomic layers and this will require more computing resource.
iii). More seriously, the z-coordinates of atoms in the first atomic layer (e.g.(   8.89000,    3.92900,    0.74400)*Angstrom,) in the electrode is not shifted to be zero. The other important issue is that the nanowire is not perfectly parallel to the z direction. To confirm this point, you may search "0.74400" in your script file. As mentioned in the 2nd comment, there are 6 atomic layers in the electrode and this means the atomic layers in electrodes are 'ABCABC', so, if you search "0.74400", you should find more than two "0.74400"s  in your script file, i.e., two "0.74400" belong to the atoms in the electrode and others are the z-coordinates of atoms in the center region.

The issues in the 3rd comment are the reasons  why you met the charge converging to zero.  So, you should construct a reasonable geometry structure of two-probe system.  I constructed one and it is well converged although the SZ basis set was used.