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.


Topics - qiuweicheng

Pages: [1]
1
Hi, In the ATK basic set, we can only see the set of density cutoff, but we can not set the energy cutoff due to the plane wave expansion approximate.  How can we set the  parameter of this  energy cutoff ?

2
Hi, I can't accurately adjust the size of axis in fatband picture by ATK 2017. We can just adjust the size of fatband picture using the Zoom tool.  Why the adjustable axis tool can't be used by ATK 2017? See the attachments.
It becomes more inconvenient for us to  adjust picture by ATK 2017 compared with that by ATK 2016.

3
Hi,
In the set of atomic orbital projection fatband, we can't distinguish the bands between spin up electron and spin down electron.
I try to solve this probelm.
I save the result of   atomic orbital projection fatband in 1.py file.
In the scatter line,  the data like this:
# Scatter
x = numpy.array([ 0.            ,  0.003333333333,  0.006666666667,  0.01          ,
                  0.013333333333,  0.016666666667,  0.02          ,  0.023333333333,
                  0.026666666667,  0.03          , .............,  1.0,
                   0.            ,  0.003333333333,  0.006666666667,  0.01          ,
                  0.013333333333,  0.016666666667,  0.02          ,  0.023333333333,
                  0.026666666667,  0.03          , .............,  1.0,
                    ..................................
 The band of spin up electron is list Followed by  the band of spin up electron .
The question:
How do I  distinguish  the datas between the spin up and spin down? or deal with this scatter line?
Could you give me the  relevant py file? or the relevant python commands?

4
I get two py files:
The first: the set calculator is the same with that of BN-AP-0.3.nc
device_configuration = nlread('BN-AP-0.3.nc', DeviceConfiguration)[0]
calculator = device_configuration.calculator()
bias = 0.5*Volt
# -------------------------------------------------------------
# Initial State
# -------------------------------------------------------------
initial_spin = InitialSpin(scaled_spins=[1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0])
calculator=calculator(
     electrode_voltages=(bias/2, -bias/2))
device_configuration.setCalculator(
     calculator(),
     initial_spin=initial_spin,
     initial_state=device_configuration
     )
device_configuration.update()
nlsave('BN-AP-%.1f.nc' % bias.inUnitsOf(Volt), device_configuration)
# Calculate the transmission
t = TransmissionSpectrum(
    configuration= device_configuration,
    energies = numpy.linspace(-2,2,201)*eV,
    kpoints=MonkhorstPackGrid(30,30),
    energy_zero_parameter=AverageFermiLevel,
    infinitesimal=1e-06*eV,
    self_energy_calculator=RecursionSelfEnergy(),
     ) 
nlsave('BN-AP-%.1f.nc' % bias.inUnitsOf(Volt), t)
nlprint(t)
nlprint("%8.6e %8.6e %8.6e" %(t.bias(), t.current(), t.bias()/t.current())+'\n'),
 
The second: I put BN-AP-0.3.nc into the scripter, and change the initial set.
......
......
#----------------------------------------
# Electrode Calculators
#----------------------------------------
left_electrode_calculator = LCAOCalculator(
    exchange_correlation=exchange_correlation,
    numerical_accuracy_parameters=left_electrode_numerical_accuracy_parameters,
    poisson_solver=left_electrode_poisson_solver,
    )

right_electrode_calculator = LCAOCalculator(
    exchange_correlation=exchange_correlation,
    numerical_accuracy_parameters=right_electrode_numerical_accuracy_parameters,
    poisson_solver=right_electrode_poisson_solver,
    )

#----------------------------------------
# Device Calculator
#----------------------------------------
calculator = DeviceLCAOCalculator(
    exchange_correlation=exchange_correlation,
    numerical_accuracy_parameters=device_numerical_accuracy_parameters,
    electrode_calculators=
        [left_electrode_calculator, right_electrode_calculator],
    electrode_voltages=( 0.2*Volt, -0.2*Volt)
    )

device_configuration.setCalculator(calculator)

# -------------------------------------------------------------
# Initial State
# -------------------------------------------------------------
initial_spin = InitialSpin(scaled_spins=[1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0])
old_calculation = nlread('BN-AP-0.3.nc', DeviceConfiguration)[0]
device_configuration.setCalculator(
    calculator,
    initial_spin=initial_spin,
    initial_state=old_calculation,
)
device_configuration.update()
nlsave('BN-AP-0.4.nc', device_configuration)
nlprint(device_configuration)

My question:
1. The set calculator is the same with that of BN-AP-0.3.nc. Are there any difference between two py files?
2. Are there any command problem with the first py file?

5
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.

6
Dear Sir,

I want to simulate the Ni thin film growth on graphene via Vapor Deposition. Before this, I read carefully the  SiC tutorial  "Simulating Thin Film Growth via Vapor". I write the Ni-growth-on-graphene.py file by refering to the Script_deposit_SiC.py file.  But, the results show that the substrate_atoms diffuse into the vapor_atoms, and diffuse out of the crystal lattice. How can I solve this problem?

The main difference between my py file and Script_deposit_SiC.py is as follows:
1. the SiC structure is replaced by Ni/Graphene supercell
2. potentialSet = Tersoff_SiC_2005() is replaced by  potentialSet = ReaxFF_CHONi_2015()
3. possible_elements = [Silicon, Carbon] is replaced by possible_elements = [Nickel, Nickel]
4. vapor_temperature=2400.0*Kelvin is replaced by vapor_temperature=300.0*Kelvin

The results and py file are shown in attachments.
Thanks

7
Hi, I calculat the energy band of C-Ni supercell. How can I to extract the contribution of C atom in whole energy band by AKT? Could you offer the  relevant  py file please?

8
Hi, I caluate PLDOS.py file.

 # -*- coding: utf-8 -*-
# -------------------------------------------------------------
# Analysis from File
# -------------------------------------------------------------
path = u'Device-NiGrCo.nc'
configuration = nlread(path, object_id='gID000')[0]

# -------------------------------------------------------------
# Projected Local Density Of States
# -------------------------------------------------------------
kpoint_grid = MonkhorstPackGrid(
    na=151,
    nb=151,
    )

projected_local_density_of_states = ProjectedLocalDensityOfStates(
    configuration=configuration,
    method=LocalDeviceDensityOfStates,
    energies=numpy.linspace(-2, 2, 101)*eV,
    kpoints=kpoint_grid,
    contributions=All,
    self_energy_calculator=RecursionSelfEnergy(),
    energy_zero_parameter=AverageFermiLevel,
    infinitesimal=1e-06*eV,
    )
nlsave('Device-NiGrCo.nc', projected_local_density_of_states)

The Device-NiGrCo.nc  has existed, which contains the results of trasmissionSpectrum.  After the calculation of PLDOS.py, I can't open the result of PLDOS?
There is a ATKNCImporter Error, as shown below:
Traceback (most recent call last):
  File ".\zipdir\NL\GUI\MainWindow\LabFloor\LabFloorModel.py", line 234, in load
  File "D:\Program Files (x86)\QuantumWise\VNL-ATK-2016.4\Lib\site-packages\AddOns\ATKNCImporter\ATKNCImporter.py", line 96, in load
    data = nlread(filename, object_id=object_id, read_state=read_full)[0]
  File ".\zipdir\NL\IO\NLSaveUtilities.py", line 422, in nlread
  File ".\zipdir\NL\ComputerScienceUtilities\Timer.py", line 45, in __call__
  File ".\zipdir\NL\IO\NLSaveUtilities.py", line 422, in <lambda>
  File ".\zipdir\NL\Analysis\TransmissionSpectrum.py", line 1436, in nlreadTransmissionSpectrum
KeyError: 'energy_zero_parameter'

9
General Questions and Answers / A license for trial version
« on: January 12, 2017, 06:08 »
Hi, could you offer me a trial license  for ATK 2016  version please?  A professor of my friends want to know  and learn about the function and operation of ATK 2016

10
General Questions and Answers / Fermi surface
« on: January 3, 2017, 06:38 »
How to draw the picture of Fermi surface using ATK?  the picture is shown in the attachment.

a script maybe better

Thank you very much!

11
The device structure is Ni/Graphene/Ni, as shown in picture 1, the angle between axis A and axis B is 120。The  brillouin zone of left electrode, middle region and right  electrode are similar, as shown in picture 2, it is a hexagonal structure. However, the the picture of k-depended  transmission is shown in picture 3, it is a square structure.
The question: in the brillouin zone, there is KA and KB axis. In the  picture of k-depended  transmission,  there is also KA and KB axis. What is the relationship between these two coordinated system? How to transform the  picture of k-depended  transmission into the required picture, the required picture is a  hexagonal structure which contains only the first  brillouin zone.


12
In typical Fe/MgO/Fe tunneling junction, there is a useful  picture. That is the transmission spectrum of the different band of Fe. My question is how to calculate  the band-dependent transmission spectrum in ATK. Maybe  we can use the total transmission spectrum to project into different band. But how can we to write this .py  file.

13
I want to built Ni/graphene/Ni tunneling junction. The first, I want to understand the bonding way of Ni-C, how can i to analysis  and calculate this problem using ATK?  The sencond, When the distance of Ni-C is increased,  van der Waals' forces may play a main role in the combination of Ni-C, How can i known what is the main force? and how can i optimize the interface distance under the van der Waals' forces?

Best wishes

14
How to optimize the device of Ni-graphene-Ni MTJs?   What is the optimization of the step?

Pages: [1]