Author Topic: two "0" values in the calculation result of MPSH energy spectrum. Why?  (Read 8242 times)

0 Members and 1 Guest are viewing this topic.

Offline iamddba

  • Regular QuantumATK user
  • **
  • Posts: 16
  • Reputation: 0
    • View Profile
hello, fellows! this is my first post here:)
A problem. After I performed the calculation of MPSH energy spectrum under a specify bias in my probe system, I found there are two "0 eV" values in the export result.  what is the reason? and what it means ???
thanks in advance!

Offline zh

  • Supreme QuantumATK Wizard
  • *****
  • Posts: 1141
  • Reputation: 24
    • View Profile
These two levels may be degenerated.
« Last Edit: August 25, 2009, 14:16 by zh »

Offline Anders Blom

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 5576
  • Country: dk
  • Reputation: 96
    • View Profile
    • QuantumATK at Synopsys
Welcome to the ATK community!

Sometimes when you select certain "Analysis" quantities in the NanoLanguage Scripter, the script produced by VNL will print some information to the log, which you perhaps did not anticipate. If you post the script and the output we can have a quick look. You can remove the geometry and any other confidential information, if needed.

Offline iamddba

  • Regular QuantumATK user
  • **
  • Posts: 16
  • Reputation: 0
    • View Profile
Thank you two, zh and Blom.
In fact, I have calculated that system under varied biases, only 0.2V-result has two "0 eV" levels, and the others have no "0" output. I know there may be degenerated levels and they are existent in all my results. Therefore, I think the little problem shouldn't attribute to the script or the configuration. I just can't know the meaning of the two "0" values. 

Offline Anders Blom

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 5576
  • Country: dk
  • Reputation: 96
    • View Profile
    • QuantumATK at Synopsys
Right, no, I don't think there is anything wrong with the script or so. It's just not clear to me exactly how this "0 eV" appears. Is it an eigenvalue of the MPSH spectrum? How does it look, exactly, in the output log?

Offline iamddba

  • Regular QuantumATK user
  • **
  • Posts: 16
  • Reputation: 0
    • View Profile
Right, no, I don't think there is anything wrong with the script or so. It's just not clear to me exactly how this "0 eV" appears. Is it an eigenvalue of the MPSH spectrum? How does it look, exactly, in the output log?

hi, Blom, I am glad that you give me reply rapidly.
Attached is the result part of the output file.  "0 eV" is an eigenvalue and there are two. Are they all degenerated with fermi level?
thanks
« Last Edit: August 25, 2009, 15:39 by iamddba »

Offline Anders Blom

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 5576
  • Country: dk
  • Reputation: 96
    • View Profile
    • QuantumATK at Synopsys
I see nothing wrong here. You happen to have two molecular levels that coincide with the average Fermi level, but if there were more decimals I'm sure you would not have 0.000000000 eV but perhaps 0.0043 eV or so. They might not even be degenerate, but only so to within 2 decimals. To print the spectrum with more decimals (nlPrint doesn't do a supergood job there...), replace the line
Code
if processIsMaster(): nlPrint(projected_hamiltonian_energy_spectrum)
by
Code
if processIsMaster(): 
    print "# MPSH Spectrum (eV)"
    print "# -----------------------------------------------------------------------------"
    for E in projected_hamiltonian_energy_spectrum.energies():
        print E.inUnitsOf(eV)

Offline iamddba

  • Regular QuantumATK user
  • **
  • Posts: 16
  • Reputation: 0
    • View Profile
I see. Thank you very much! :) :)

Offline zhangguangping

  • QuantumATK Guru
  • ****
  • Posts: 193
  • Country: cn
  • Reputation: 2
    • View Profile
I see nothing wrong here. You happen to have two molecular levels that coincide with the average Fermi level, but if there were more decimals I'm sure you would not have 0.000000000 eV but perhaps 0.0043 eV or so. They might not even be degenerate, but only so to within 2 decimals. To print the spectrum with more decimals (nlPrint doesn't do a supergood job there...), replace the line
Code
if processIsMaster(): nlPrint(projected_hamiltonian_energy_spectrum)
by
Code
if processIsMaster(): 
    print "# MPSH Spectrum (eV)"
    print "# -----------------------------------------------------------------------------"
    for E in projected_hamiltonian_energy_spectrum.energies():
        print E.inUnitsOf(eV)
Dear Anders Blom , If I want to output the transmission_spectrum to the output file,and have some more decimals.How should I change the following command,except using the script in the forum to extract from the VNL file. if processIsMaster(): nlPrint(transmission_spectrum) if processIsMaster(): file.addToSample(transmission_spectrum, 'twoprobe_configuration', 'Transmission Spectrum') Thank you in advance.I am not familiar with python.

Offline Anders Blom

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 5576
  • Country: dk
  • Reputation: 96
    • View Profile
    • QuantumATK at Synopsys

Offline zhangguangping

  • QuantumATK Guru
  • ****
  • Posts: 193
  • Country: cn
  • Reputation: 2
    • View Profile