Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Zhongjun Li

Pages: [1]
1
Thank Dr. Anders Blom for the reply. Ok, I will employ szp basis set to calculate again.

2
the following is my script.

from ATK.TwoProbe import *
import numpy
import ATK
ATK.setVerbosityLevel(1)

# Read the atomic configuration from a VNL file
vnl_file = VNLFile("2-G-opt.vnl")
configurations = vnl_file.readAtomicConfigurations()
two_probe_conf = configurations["2-G-opt"]

###############################################
# setting global parameters
###############################################

kpoints = (50,1,30)
mesh_cutoff = 250.*Rydberg
xc = LDA.PZ
temperature = 300.*Kelvin
tolerance = 1e-6
diagonal_mixing_parameter = 0.02
history_steps = 15
max_steps = 1000

 
 
basis_set_parameters = [basisSetParameters(SingleZeta,element = Carbon),   
                        basisSetParameters(SingleZeta,element = Nitrogen)]

###############################################
# setting two electrodes parameters
###############################################

electrode_brillouin_zone_integration_parameters = brillouinZoneIntegrationParameters(
    monkhorst_pack_parameters = (kpoints)
    )


electrode_electron_density_parameters = electronDensityParameters(
    mesh_cutoff = mesh_cutoff,
    )

electrode_iteration_control_parameters = iterationControlParameters(
    tolerance = tolerance,
    criterion = IterationControl.Strict,
    max_steps = max_steps
    )

electrode_iteration_mixing_parameters = iterationMixingParameters(
    algorithm = IterationMixing.Pulay,
    diagonal_mixing_parameter = diagonal_mixing_parameter,
    quantity = IterationMixing.Hamiltonian,
    history_steps = history_steps
    )

electrode_eigenstate_occupation_parameters = eigenstateOccupationParameters(
    temperature = temperature
    )
   
electrode_parameters = ElectrodeParameters(
    brillouin_zone_integration_parameters = electrode_brillouin_zone_integration_parameters,
    electron_density_parameters = electrode_electron_density_parameters,
    eigenstate_occupation_parameters = electrode_eigenstate_occupation_parameters,
    iteration_mixing_parameters = electrode_iteration_mixing_parameters,
    iteration_control_parameters = electrode_iteration_control_parameters
    )

###############################################
# setting scattering region parameters
###############################################

ite_mix_para = iterationMixingParameters(
    diagonal_mixing_parameter = diagonal_mixing_parameter,
    quantity = IterationMixing.Hamiltonian,
    history_steps = history_steps
    )

ite_con_para = iterationControlParameters(
    tolerance = tolerance,
    criterion = IterationControl.Strict,
    max_steps = max_steps
    )


ele_den_para = electronDensityParameters(
    mesh_cutoff = mesh_cutoff,
    )

two_probe_algorithm_parameters = twoProbeAlgorithmParameters(
    electrode_constraint = ElectrodeConstraints.RealSpaceDensity,
    initial_density_type = InitialDensityType.EquivalentBulk
    )

energy_contour_integral_parameters = energyContourIntegralParameters(
    circle_points = 300,
    integral_lower_bound = 30.0*Rydberg,
    fermi_line_points = 10,
    fermi_function_poles = 4,
    real_axis_infinitesimal = 0.01*electronVolt,
    real_axis_point_density = 0.02*electronVolt
    )

two_center_integral_parameters = twoCenterIntegralParameters(
    cutoff = 2500.0*Rydberg,
    points = 1024
    )

use_old=False 
#use_old=True                                                                     
for voltage0 in numpy.arange(0.00, 6.00+0.50, 0.50):       # gate_valtages
    voltage = -voltage0
    two_probe_method = TwoProbeMethod(
        exchange_correlation_type = xc,
        electrode_parameters = (electrode_parameters, electrode_parameters),               ###############
        electrode_voltages = (0.20, -0.20)*Volt,                                             ## parameters##
        iteration_mixing_parameters = ite_mix_para,                                        ###############
        iteration_control_parameters = ite_con_para,
        energy_contour_integral_parameters = energy_contour_integral_parameters,
        two_center_integral_parameters = two_center_integral_parameters,
        electron_density_parameters = ele_den_para,
        basis_set_parameters = basis_set_parameters,
        algorithm_parameters = two_probe_algorithm_parameters
        )
                                                                                            ###############
    #voltage = 0                                                                            ## parameters##
    three_probe_method = GatedTwoProbeMethod(                                               ###############
        two_probe_method = two_probe_method,                                                ###############
        gate_voltage = voltage*Volt,                                                             ## parameters##
        surface_atoms = (5, 5)                                                              ###############
        )

   
    if use_old:
        scf = executeSelfConsistentCalculation(                                                                 
                atomic_configuration = two_probe_conf,                                                         
                method = three_probe_method,                                                                   
                initial_calculation = Old_Scf,                                                                 
                runtime_parameters = runtimeParameters(verbosity_level = 1,                                     
                checkpoint_filename = 'GScf-gate-%.2f.nc' % voltage)                          ## parameters##
                )                                                                                               
    else:
        scf = executeSelfConsistentCalculation(                             
                atomic_configuration = two_probe_conf,                     
                method = three_probe_method,                                                             
                runtime_parameters = runtimeParameters(verbosity_level = 1,
                checkpoint_filename = 'GScf-gate-%.2f.nc' % voltage)     
                )                                                           
        use_old=True   
    Old_Scf=scf   
   

   
   
    current = calculateCurrent(scf)

    print "%.1f\t\t%.2e" %(voltage, current.inUnitsOf(Ampere))

3
Dear everyone,
At a certain bias voltage of 0.4 V, I have calculated drain current of Id  at different gate voltages. when the gate voltages are set to -6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6 V, the dependent curve of Id on gate voltages is smooth, and the trend is consistent with the experimental result. However, as the gate voltages are set to fractions, such as -6.5,-5.5,-4.5,-3.5,-2.5,-1.5,......or -6.1,-6.2,-6.3,-6.4,-6.5,-6.6,......, the curve shows very obvious oscillations. I can not understand and resolve my question. Have you experienced this case? maybe your experiences can lead me out of my troubles. Thank you for your attention.

4
Dear Prof. Anders Blom,
Thank you for your reply. I have run scf  in parallel by several cpu, and then calculated ldos by one cpu. The website link you gave may help me, I try it later. 

5
Dear everyone,
In order to achieve local density of state of my system, I want to write the configurations, electron density, and LDOS to a vnl file named LDOS-10.VNL, the part script as following:
...................................
   two_probe_conf = configurations["aaaa"]
....................................
    # Calculate electron density from old NetCDF data
    electron_density = calculateElectronDensity(scf)
    # Calculate local DOS for non-electrode atoms
    ldos = calculateLocalDensityOfStates(
        scf,
        energy = 0.0*eV,
        quantum_number = (0.0,0.0)
        )
    # Store obtained results in vnl file using different IDs

    file=VNLFile("LDOS-10.vnl"
    file.addToSample(two_probe_conf, 'LDOS-10')    #line 173
   file.addToSample(electron_density, 'LDOS-10')   #line 174
   file.addToSample(ldos, 'LDOS-10')                    #line 175
the above script can not work, and the errors are as

SError: [Errno 2] No such file or directory: 'LDOS-10.vnl'
Traceback (most recent call last):
File "<string>", line 174, in ?
OSError: [Errno 2] No such file or directory: 'LDOS-10.vnl'
Traceback (most recent call last):
  File "GhG9_LDOS_Vb04.py", line 174, in ?
    vnl_file.addToSample(electron_density, 'LDOS-10')
OSError: [Errno 2] No such file or directory: 'LDOS-10.vnl'
Traceback (most recent call last):
  File "<string>", line 175, in ?
OSError: [Errno 2] No such file or directory: 'LDOS-10.vnl'

These errors may be caused by the writing data  in parallel version of ATK.
How can I modify my script to resolve my question. Now I have no enough money to buy higher version of ATK.
Thank you for your attention.

6
Thank Kstokbro for your answer.

Is there any approach besides trying new version of ATK?


7
Thank  Anders Blom for the reply.
I has been confused by this question. I guessed that the parameter of integral_lower_bound was set too low, resulting in charge missing in the integrationand . Thus I changed it to be 20.0*Rydberg, and the circle_points was correspondingly set to be 100. However, the result was wrong as follwings.

Being eager to receive advise from anyone. Thank you.


# ----------------------------------------------------------------
# Electrodes Calculation
# ----------------------------------------------------------------
# sc  0 : Fermi Energy =    0.00000 Ry
# sc  1 : Fermi Energy =   -0.40330 Ry  Ebs = -107.59002 Ry  dRho =  1.8774E+00  dEbs = -1.0759E+02 Ry  dH =  3.4829E-01 Ry
# sc  2 : Fermi Energy =   -0.37937 Ry  Ebs = -105.36816 Ry  dRho =  1.9523E-02  dEbs =  2.2219E+00 Ry  dH =  2.8201E-01 Ry
# sc  3 : Fermi Energy =   -0.29754 Ry  Ebs =  -96.63868 Ry  dRho =  2.1721E-01  dEbs =  8.7295E+00 Ry  dH =  4.9657E-01 Ry
# sc  4 : Fermi Energy =   -0.28536 Ry  Ebs =  -95.23193 Ry  dRho =  2.7553E-01  dEbs =  1.4067E+00 Ry  dH =  3.1041E-01 Ry
# sc  5 : Fermi Energy =   -0.27090 Ry  Ebs =  -92.79956 Ry  dRho =  1.8471E-01  dEbs =  2.4324E+00 Ry  dH =  1.2587E-01 Ry
# sc  6 : Fermi Energy =   -0.27136 Ry  Ebs =  -92.42417 Ry  dRho =  1.6875E-01  dEbs =  3.7540E-01 Ry  dH =  3.3806E-01 Ry
# sc  7 : Fermi Energy =   -0.27152 Ry  Ebs =  -92.29207 Ry  dRho =  7.7558E-02  dEbs =  1.3210E-01 Ry  dH =  1.3710E-01 Ry
# sc  8 : Fermi Energy =   -0.27156 Ry  Ebs =  -92.25662 Ry  dRho =  8.9730E-03  dEbs =  3.5449E-02 Ry  dH =  1.6009E-01 Ry
# sc  9 : Fermi Energy =   -0.27152 Ry  Ebs =  -92.40973 Ry  dRho =  6.6951E-02  dEbs = -1.5311E-01 Ry  dH =  1.6005E-02 Ry
# sc 10 : Fermi Energy =   -0.27150 Ry  Ebs =  -92.41547 Ry  dRho =  4.3131E-03  dEbs = -5.7391E-03 Ry  dH =  4.7138E-03 Ry
# sc 11 : Fermi Energy =   -0.27155 Ry  Ebs =  -92.42627 Ry  dRho =  5.8759E-04  dEbs = -1.0798E-02 Ry  dH =  3.6406E-03 Ry
# sc 12 : Fermi Energy =   -0.27176 Ry  Ebs =  -92.43137 Ry  dRho =  2.9600E-03  dEbs = -5.0996E-03 Ry  dH =  3.9360E-03 Ry
# sc 13 : Fermi Energy =   -0.27176 Ry  Ebs =  -92.43426 Ry  dRho =  1.4531E-03  dEbs = -2.8875E-03 Ry  dH =  1.9517E-04 Ry
# sc 14 : Fermi Energy =   -0.27178 Ry  Ebs =  -92.43534 Ry  dRho =  1.0848E-04  dEbs = -1.0841E-03 Ry  dH =  1.2221E-04 Ry
# sc 15 : Fermi Energy =   -0.27178 Ry  Ebs =  -92.43560 Ry  dRho =  5.0903E-05  dEbs = -2.5900E-04 Ry  dH =  9.8672E-05 Ry
# sc 16 : Fermi Energy =   -0.27179 Ry  Ebs =  -92.43588 Ry  dRho =  4.9781E-05  dEbs = -2.8561E-04 Ry  dH =  5.6972E-05 Ry
# sc 17 : Fermi Energy =   -0.27180 Ry  Ebs =  -92.43630 Ry  dRho =  3.7144E-05  dEbs = -4.1400E-04 Ry  dH =  1.7289E-05 Ry
# sc 18 : Fermi Energy =   -0.27181 Ry  Ebs =  -92.43643 Ry  dRho =  1.5774E-05  dEbs = -1.3117E-04 Ry  dH =  2.0094E-05 Ry
# sc 19 : Fermi Energy =   -0.27181 Ry  Ebs =  -92.43651 Ry  dRho =  1.4072E-05  dEbs = -7.8119E-05 Ry  dH =  1.1251E-05 Ry
# sc  0 : Fermi Energy =    0.00000 Ry
# sc  1 : Fermi Energy =   -0.40330 Ry  Ebs = -107.59002 Ry  dRho =  1.8774E+00  dEbs = -1.0759E+02 Ry  dH =  3.4829E-01 Ry
# sc  2 : Fermi Energy =   -0.37937 Ry  Ebs = -105.36816 Ry  dRho =  1.9523E-02  dEbs =  2.2219E+00 Ry  dH =  2.8201E-01 Ry
# sc  3 : Fermi Energy =   -0.29754 Ry  Ebs =  -96.63868 Ry  dRho =  2.1721E-01  dEbs =  8.7295E+00 Ry  dH =  4.9657E-01 Ry
# sc  4 : Fermi Energy =   -0.28536 Ry  Ebs =  -95.23193 Ry  dRho =  2.7553E-01  dEbs =  1.4067E+00 Ry  dH =  3.1041E-01 Ry
# sc  5 : Fermi Energy =   -0.27090 Ry  Ebs =  -92.79956 Ry  dRho =  1.8471E-01  dEbs =  2.4324E+00 Ry  dH =  1.2587E-01 Ry
# sc  6 : Fermi Energy =   -0.27136 Ry  Ebs =  -92.42417 Ry  dRho =  1.6875E-01  dEbs =  3.7540E-01 Ry  dH =  3.3806E-01 Ry
# sc  7 : Fermi Energy =   -0.27152 Ry  Ebs =  -92.29207 Ry  dRho =  7.7558E-02  dEbs =  1.3210E-01 Ry  dH =  1.3710E-01 Ry
# sc  8 : Fermi Energy =   -0.27156 Ry  Ebs =  -92.25662 Ry  dRho =  8.9730E-03  dEbs =  3.5449E-02 Ry  dH =  1.6009E-01 Ry
# sc  9 : Fermi Energy =   -0.27152 Ry  Ebs =  -92.40973 Ry  dRho =  6.6951E-02  dEbs = -1.5311E-01 Ry  dH =  1.6005E-02 Ry
# sc 10 : Fermi Energy =   -0.27150 Ry  Ebs =  -92.41547 Ry  dRho =  4.3131E-03  dEbs = -5.7391E-03 Ry  dH =  4.7138E-03 Ry
# sc 11 : Fermi Energy =   -0.27155 Ry  Ebs =  -92.42627 Ry  dRho =  5.8759E-04  dEbs = -1.0798E-02 Ry  dH =  3.6406E-03 Ry
# sc 12 : Fermi Energy =   -0.27176 Ry  Ebs =  -92.43137 Ry  dRho =  2.9600E-03  dEbs = -5.0996E-03 Ry  dH =  3.9360E-03 Ry
# sc 13 : Fermi Energy =   -0.27176 Ry  Ebs =  -92.43426 Ry  dRho =  1.4531E-03  dEbs = -2.8875E-03 Ry  dH =  1.9517E-04 Ry
# sc 14 : Fermi Energy =   -0.27178 Ry  Ebs =  -92.43534 Ry  dRho =  1.0848E-04  dEbs = -1.0841E-03 Ry  dH =  1.2221E-04 Ry
# sc 15 : Fermi Energy =   -0.27178 Ry  Ebs =  -92.43560 Ry  dRho =  5.0903E-05  dEbs = -2.5900E-04 Ry  dH =  9.8672E-05 Ry
# sc 16 : Fermi Energy =   -0.27179 Ry  Ebs =  -92.43588 Ry  dRho =  4.9781E-05  dEbs = -2.8561E-04 Ry  dH =  5.6972E-05 Ry
# sc 17 : Fermi Energy =   -0.27180 Ry  Ebs =  -92.43630 Ry  dRho =  3.7144E-05  dEbs = -4.1400E-04 Ry  dH =  1.7289E-05 Ry
# sc 18 : Fermi Energy =   -0.27181 Ry  Ebs =  -92.43643 Ry  dRho =  1.5774E-05  dEbs = -1.3117E-04 Ry  dH =  2.0094E-05 Ry
# sc 19 : Fermi Energy =   -0.27181 Ry  Ebs =  -92.43651 Ry  dRho =  1.4072E-05  dEbs = -7.8119E-05 Ry  dH =  1.1251E-05 Ry
# sc  0 : q =   -0.00713 e
# sc  1 : q =   -0.00716 e  Ebs = -5007.96716 Ry  dRho =  3.0804E-03  dEbs = -5.0080E+03 Ry  dH =  2.9397E-01 Ry
# sc  2 : q =   -0.00716 e  Ebs = -5007.96696 Ry  dRho =  3.5417E-04  dEbs =  2.0413E-04 Ry  dH =  2.6507E-01 Ry
# sc  3 : q =   -0.00716 e  Ebs = -5007.96873 Ry  dRho =  2.7371E-03  dEbs = -1.7741E-03 Ry  dH =  1.8031E-03 Ry
# sc  4 : q =   -0.00716 e  Ebs = -5007.96877 Ry  dRho =  1.5004E-05  dEbs = -3.6600E-05 Ry  dH =  1.1175E-04 Ry
# sc  5 : q =   -0.00716 e  Ebs = -5007.96918 Ry  dRho =  1.4129E-07  dEbs = -4.0608E-04 Ry  dH =  1.1361E-06 Ry
# sc  6 : q =   -0.00716 e  Ebs = -5007.96917 Ry  dRho =  1.1693E-09  dEbs =  3.5890E-06 Ry  dH =  6.8041E-08 Ry
-4.0      -6.80e-21
-4.0      -6.80e-21
-4.0      -6.80e-21
-4.0      -6.80e-21
-4.0      -6.80e-21
-4.0      -6.80e-21
-4.0      -6.80e-21
-4.0      -6.80e-21
# ----------------------------------------------------------------
# Electrodes Calculation
# ----------------------------------------------------------------
# sc  0 : Fermi Energy =    0.00000 Ry
# sc  1 : Fermi Energy =   -0.40330 Ry  Ebs = -107.59002 Ry  dRho =  1.8774E+00  dEbs = -1.0759E+02 Ry  dH =  3.4829E-01 Ry
# sc  2 : Fermi Energy =   -0.37937 Ry  Ebs = -105.36816 Ry  dRho =  1.9523E-02  dEbs =  2.2219E+00 Ry  dH =  2.8201E-01 Ry
# sc  3 : Fermi Energy =   -0.29754 Ry  Ebs =  -96.63868 Ry  dRho =  2.1721E-01  dEbs =  8.7295E+00 Ry  dH =  4.9657E-01 Ry
# sc  4 : Fermi Energy =   -0.28536 Ry  Ebs =  -95.23193 Ry  dRho =  2.7553E-01  dEbs =  1.4067E+00 Ry  dH =  3.1041E-01 Ry
# sc  5 : Fermi Energy =   -0.27090 Ry  Ebs =  -92.79956 Ry  dRho =  1.8471E-01  dEbs =  2.4324E+00 Ry  dH =  1.2587E-01 Ry
# sc  6 : Fermi Energy =   -0.27136 Ry  Ebs =  -92.42417 Ry  dRho =  1.6875E-01  dEbs =  3.7540E-01 Ry  dH =  3.3806E-01 Ry
# sc  7 : Fermi Energy =   -0.27152 Ry  Ebs =  -92.29207 Ry  dRho =  7.7558E-02  dEbs =  1.3210E-01 Ry  dH =  1.3710E-01 Ry
# sc  8 : Fermi Energy =   -0.27156 Ry  Ebs =  -92.25662 Ry  dRho =  8.9730E-03  dEbs =  3.5449E-02 Ry  dH =  1.6009E-01 Ry
# sc  9 : Fermi Energy =   -0.27152 Ry  Ebs =  -92.40973 Ry  dRho =  6.6951E-02  dEbs = -1.5311E-01 Ry  dH =  1.6005E-02 Ry
# sc 10 : Fermi Energy =   -0.27150 Ry  Ebs =  -92.41547 Ry  dRho =  4.3131E-03  dEbs = -5.7391E-03 Ry  dH =  4.7138E-03 Ry
# sc 11 : Fermi Energy =   -0.27155 Ry  Ebs =  -92.42627 Ry  dRho =  5.8759E-04  dEbs = -1.0798E-02 Ry  dH =  3.6406E-03 Ry
# sc 12 : Fermi Energy =   -0.27176 Ry  Ebs =  -92.43137 Ry  dRho =  2.9600E-03  dEbs = -5.0996E-03 Ry  dH =  3.9360E-03 Ry
# sc 13 : Fermi Energy =   -0.27176 Ry  Ebs =  -92.43426 Ry  dRho =  1.4531E-03  dEbs = -2.8875E-03 Ry  dH =  1.9517E-04 Ry
# sc 14 : Fermi Energy =   -0.27178 Ry  Ebs =  -92.43534 Ry  dRho =  1.0848E-04  dEbs = -1.0841E-03 Ry  dH =  1.2221E-04 Ry
# sc 15 : Fermi Energy =   -0.27178 Ry  Ebs =  -92.43560 Ry  dRho =  5.0903E-05  dEbs = -2.5900E-04 Ry  dH =  9.8672E-05 Ry
# sc 16 : Fermi Energy =   -0.27179 Ry  Ebs =  -92.43588 Ry  dRho =  4.9781E-05  dEbs = -2.8561E-04 Ry  dH =  5.6972E-05 Ry
# sc 17 : Fermi Energy =   -0.27180 Ry  Ebs =  -92.43630 Ry  dRho =  3.7144E-05  dEbs = -4.1400E-04 Ry  dH =  1.7289E-05 Ry
# sc 18 : Fermi Energy =   -0.27181 Ry  Ebs =  -92.43643 Ry  dRho =  1.5774E-05  dEbs = -1.3117E-04 Ry  dH =  2.0094E-05 Ry
# sc 19 : Fermi Energy =   -0.27181 Ry  Ebs =  -92.43651 Ry  dRho =  1.4072E-05  dEbs = -7.8119E-05 Ry  dH =  1.1251E-05 Ry
# sc  0 : Fermi Energy =    0.00000 Ry
# sc  1 : Fermi Energy =   -0.40330 Ry  Ebs = -107.59002 Ry  dRho =  1.8774E+00  dEbs = -1.0759E+02 Ry  dH =  3.4829E-01 Ry
# sc  2 : Fermi Energy =   -0.37937 Ry  Ebs = -105.36816 Ry  dRho =  1.9523E-02  dEbs =  2.2219E+00 Ry  dH =  2.8201E-01 Ry
# sc  3 : Fermi Energy =   -0.29754 Ry  Ebs =  -96.63868 Ry  dRho =  2.1721E-01  dEbs =  8.7295E+00 Ry  dH =  4.9657E-01 Ry
# sc  4 : Fermi Energy =   -0.28536 Ry  Ebs =  -95.23193 Ry  dRho =  2.7553E-01  dEbs =  1.4067E+00 Ry  dH =  3.1041E-01 Ry
# sc  5 : Fermi Energy =   -0.27090 Ry  Ebs =  -92.79956 Ry  dRho =  1.8471E-01  dEbs =  2.4324E+00 Ry  dH =  1.2587E-01 Ry
# sc  6 : Fermi Energy =   -0.27136 Ry  Ebs =  -92.42417 Ry  dRho =  1.6875E-01  dEbs =  3.7540E-01 Ry  dH =  3.3806E-01 Ry
# sc  7 : Fermi Energy =   -0.27152 Ry  Ebs =  -92.29207 Ry  dRho =  7.7558E-02  dEbs =  1.3210E-01 Ry  dH =  1.3710E-01 Ry
# sc  8 : Fermi Energy =   -0.27156 Ry  Ebs =  -92.25662 Ry  dRho =  8.9730E-03  dEbs =  3.5449E-02 Ry  dH =  1.6009E-01 Ry
# sc  9 : Fermi Energy =   -0.27152 Ry  Ebs =  -92.40973 Ry  dRho =  6.6951E-02  dEbs = -1.5311E-01 Ry  dH =  1.6005E-02 Ry
# sc 10 : Fermi Energy =   -0.27150 Ry  Ebs =  -92.41547 Ry  dRho =  4.3131E-03  dEbs = -5.7391E-03 Ry  dH =  4.7138E-03 Ry
# sc 11 : Fermi Energy =   -0.27155 Ry  Ebs =  -92.42627 Ry  dRho =  5.8759E-04  dEbs = -1.0798E-02 Ry  dH =  3.6406E-03 Ry
# sc 12 : Fermi Energy =   -0.27176 Ry  Ebs =  -92.43137 Ry  dRho =  2.9600E-03  dEbs = -5.0996E-03 Ry  dH =  3.9360E-03 Ry
# sc 13 : Fermi Energy =   -0.27176 Ry  Ebs =  -92.43426 Ry  dRho =  1.4531E-03  dEbs = -2.8875E-03 Ry  dH =  1.9517E-04 Ry
# sc 14 : Fermi Energy =   -0.27178 Ry  Ebs =  -92.43534 Ry  dRho =  1.0848E-04  dEbs = -1.0841E-03 Ry  dH =  1.2221E-04 Ry
# sc 15 : Fermi Energy =   -0.27178 Ry  Ebs =  -92.43560 Ry  dRho =  5.0903E-05  dEbs = -2.5900E-04 Ry  dH =  9.8672E-05 Ry
# sc 16 : Fermi Energy =   -0.27179 Ry  Ebs =  -92.43588 Ry  dRho =  4.9781E-05  dEbs = -2.8561E-04 Ry  dH =  5.6972E-05 Ry
# sc 17 : Fermi Energy =   -0.27180 Ry  Ebs =  -92.43630 Ry  dRho =  3.7144E-05  dEbs = -4.1400E-04 Ry  dH =  1.7289E-05 Ry
# sc 18 : Fermi Energy =   -0.27181 Ry  Ebs =  -92.43643 Ry  dRho =  1.5774E-05  dEbs = -1.3117E-04 Ry  dH =  2.0094E-05 Ry
# sc 19 : Fermi Energy =   -0.27181 Ry  Ebs =  -92.43651 Ry  dRho =  1.4072E-05  dEbs = -7.8119E-05 Ry  dH =  1.1251E-05 Ry
# sc  0 : q =   -0.00716 e
# sc  1 : q =   -0.00716 e  Ebs = -5007.95949 Ry  dRho =  3.0764E-03  dEbs = -5.0080E+03 Ry  dH =  2.6476E-01 Ry
# sc  2 : q =   -0.00716 e  Ebs = -5007.96000 Ry  dRho =  3.1929E-04  dEbs = -5.0201E-04 Ry  dH =  2.3826E-01 Ry
# sc  3 : q =   -0.00716 e  Ebs = -5007.96404 Ry  dRho =  2.4938E-03  dEbs = -4.0450E-03 Ry  dH =  1.0751E-04 Ry
# sc  4 : q =   -0.00716 e  Ebs = -5007.96419 Ry  dRho =  1.4578E-07  dEbs = -1.4592E-04 Ry  dH =  8.4174E-05 Ry
# sc  5 : q =   -0.00716 e  Ebs = -5007.96450 Ry  dRho =  1.1899E-07  dEbs = -3.1702E-04 Ry  dH =  6.4145E-08 Ry
# sc  6 : q =   -0.00716 e  Ebs = -5007.96450 Ry  dRho =  4.5952E-10  dEbs =  7.5325E-07 Ry  dH =  1.9402E-08 Ry
-3.6      -6.80e-21
-3.6      -6.80e-21
-3.6      -6.80e-21
-3.6      -6.80e-21
-3.6      -6.80e-21
-3.6      -6.80e-21
-3.6      -6.80e-21
-3.6      -6.80e-21

8
Dear everyone,

I calculated the dependence of electric currents on gate voltage for my three_probe system,  some things have troubled me till now. To be specific, a series of gate voltages (..., -3, -2.4, -2.0, -1.6, -1.2, -0.8, -0.4, 0.0, 0.4, 0.8, 1.2, 1.6, 2.0V, ...) were respectively applied to the three_probe system with the same bias voltage of 2V, but the calculated electric currents almostly remained constant. I can not understand this result. The followings are my scripts and some results. The version of my ATK is 2008.10.0. Does anyone have the similar experience, and could you give any advice?
Thank you for your attentions.

I-Vg_Vd.py

from ATK.TwoProbe import *
import numpy
import ATK
ATK.setVerbosityLevel(1)
#############################################################
##### Read the atomic configuration from a VNL file##########
#############################################################
vnl_file = VNLFile("xxxx.vnl")
configurations = vnl_file.readAtomicConfigurations()
two_probe_conf = configurations["xxxx"]

###############################################
# setting global parameters
###############################################

kpoints = (1,1,50)
mesh_cutoff = 150.*Rydberg
xc = GGA.PBE
temperature = 300.*Kelvin
tolerance = 1e-4
diagonal_mixing_parameter = 0.10
history_steps = 6
max_steps = 300


###############################################
# setting basis sets
###############################################
basis_set_parameters = [basisSetParameters(DoubleZetaPolarized,element = Carbon),
                                    basisSetParameters(DoubleZetaPolarized,element = Hydrogen)]

scf = restoreSelfConsistentCalculation("yyy.nc")

   
###############################################
# setting two electrodes parameters
###############################################

electrode_brillouin_zone_integration_parameters = brillouinZoneIntegrationParameters(
    monkhorst_pack_parameters = (kpoints)
    )   
electrode_electron_density_parameters = electronDensityParameters(
    mesh_cutoff = mesh_cutoff,
    )   
electrode_iteration_control_parameters = iterationControlParameters(
    tolerance = tolerance,
    criterion = IterationControl.Strict,
    max_steps = max_steps
    )   
electrode_iteration_mixing_parameters = iterationMixingParameters(
    algorithm = IterationMixing.Pulay,
    diagonal_mixing_parameter = diagonal_mixing_parameter,
    quantity = IterationMixing.Hamiltonian,
    history_steps = history_steps
    )   
electrode_eigenstate_occupation_parameters = eigenstateOccupationParameters(
    temperature = temperature
    )       
electrode_parameters = ElectrodeParameters(
    brillouin_zone_integration_parameters = electrode_brillouin_zone_integration_parameters,
    electron_density_parameters = electrode_electron_density_parameters,
    eigenstate_occupation_parameters = electrode_eigenstate_occupation_parameters,
    iteration_mixing_parameters = electrode_iteration_mixing_parameters,
    iteration_control_parameters = electrode_iteration_control_parameters
    )

###############################################
# setting scattering region parameters
###############################################
ite_mix_para = iterationMixingParameters(                                   
    diagonal_mixing_parameter = diagonal_mixing_parameter,                 
    quantity = IterationMixing.Hamiltonian,                                 
    history_steps = history_steps                                           
    )                                                                                                                                                       
ite_con_para = iterationControlParameters(                                 
    tolerance = tolerance,                                                 
    criterion = IterationControl.Strict,                                   
    max_steps = max_steps                                                   
    )                                                                                                                                                                                                                                     
ele_den_para = electronDensityParameters(                                   
    mesh_cutoff = mesh_cutoff,                                             
    )                                                                                                                                                     
two_probe_algorithm_parameters = twoProbeAlgorithmParameters(               
    electrode_constraint = ElectrodeConstraints.RealSpaceDensity,           
    initial_density_type = InitialDensityType.EquivalentBulk                             
    )                                                                                                                                                       
energy_contour_integral_parameters = energyContourIntegralParameters(       
    circle_points = 50,                                                     
    integral_lower_bound = 4.0*Rydberg,                                     
    fermi_line_points = 10,                                                 
    fermi_function_poles = 4,                                               
    real_axis_infinitesimal = 0.01*electronVolt,                           
    real_axis_point_density = 0.02*electronVolt                             
    )                                                                                                                                                       
two_center_integral_parameters = twoCenterIntegralParameters(               
    cutoff = 2500.0*Rydberg,                                               
    points = 1024                                                           
    )                                                                       

#################################################################################
######################  TwoProbeMethod and ThreeProbeMethod   ###################
#################################################################################

for voltage in numpy.arange(-6.0, 6.0+0.5, 0.4):       # gate_valtages
                                                                               
    two_probe_method = TwoProbeMethod(                                         
        exchange_correlation_type = xc,                                         
        electrode_parameters = (electrode_parameters, electrode_parameters),   
        electrode_voltages = (-1.0, 1.0)*Volt,                                   
        iteration_mixing_parameters = ite_mix_para,                             
        iteration_control_parameters = ite_con_para,                           
        energy_contour_integral_parameters = energy_contour_integral_parameters,
        two_center_integral_parameters = two_center_integral_parameters,       
        electron_density_parameters = ele_den_para,                             
        basis_set_parameters = basis_set_parameters,                           
        algorithm_parameters = two_probe_algorithm_parameters                   
        )                                                                                         
    three_probe_method = GatedTwoProbeMethod(
        two_probe_method = two_probe_method,
        gate_voltage = (voltage)*Volt,
        surface_atoms = (48,36)
        )
       
###########################################################################################
######################  SCF   #############################################################
###########################################################################################   

    scf = executeSelfConsistentCalculation(
        atomic_configuration = two_probe_conf,
        method = three_probe_method,
        initial_calculation = scf,
        runtime_parameters = runtimeParameters(verbosity_level = 1,
        checkpoint_filename = 'GhgScfTrans-gate-%.1f.nc' % voltage)
        )
   
############################################################################################
################### Calculate physical properties ##########################################
############################################################################################
   
    current = calculateCurrent(scf)

############################################################################################
################### OutPuts ##########################################
############################################################################################
   
    print "%.1f\t\t%.2e" %(voltage, current.inUnitsOf(Ampere))



some resuts
-4.0      -6.79e-21
-3.9      -6.79e-21
-3.9      -6.79e-21
-3.8      -6.79e-21
-3.7      -6.79e-21
-3.6      -6.80e-21
-3.5      -6.80e-21
-3.4      -6.80e-21
-3.3      -6.80e-21
-3.2      -6.80e-21
-3.1      -6.80e-21
-3.0      -6.80e-21
-2.9      -6.80e-21
-2.8      -6.80e-21
-2.7      -6.80e-21
-2.6      -6.80e-21
-2.5      -6.80e-21
-2.4      -6.80e-21
-2.3      -6.80e-21
-2.2      -6.80e-21
-2.1      -6.80e-21
-2.0      -6.80e-21
-1.9      -6.80e-21
-1.8      -6.80e-21
-1.7      -6.80e-21
-1.6      -6.80e-21
-1.5      -6.80e-21
-1.4      -6.80e-21
-1.3      -6.80e-21
-1.2      -6.80e-21
-1.1      -6.80e-21
-1.0      -6.80e-21
-0.9      -6.81e-21
-0.8      -6.81e-21
-0.7      -6.81e-21
-0.6      -6.81e-21
-0.5      -6.81e-21
-0.4      -6.81e-21
....
4.0      -6.82e-21

Pages: [1]