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 - kaypu

Pages: 1 2 [3] 4 5 ... 9
31
General Questions and Answers / Question about stacking
« on: December 9, 2013, 08:50 »
Dear QuantumWise staff

i made a two-probe system as shown in the attachment, it is stacking fault(i mean in the Z-direction the periodicity is broken)

left electrode: ABAB...
right electrode: BABA...

is it right to use this type of two-probe system? or can it lead to wrong electronic transport properties
?

32
thank you professor Anders

33
Dear QuantumWise staff:
    Does the phase of electron change in the coherence transport ? 

34
hi:
   have you solved out the problem? i've found the same problem with you.
 the contributions from Left to Right and Right to Left are different.

35
thank you  professor Anders

36
thank you professor,
another question:
the total DOS of ZGNRs(n=12) is shown in the attachment, there is a sharp peak near 1.5eV, which is mainly from subband (band index=25), but the projecting subband in 25.png is not shown, why?

37
thank you professor Anders

the script works, but the results are not satisfactory.

i have calculated the bandstructure of ZGNRs (n=12) and marked the subbands with band index in the attachment.

the Dos of 24 and 25 bands is shown in the attachment, for ZGNRS the sharp peak will appear near the fermi. but  there are no dos near the fermi level, why?

the script of dos1d.py has not been modified. the modified dos1d_use.py is in the attachment

38
thank you professro Anders
it works, but another problem comes up

Traceback (most recent call last):
  File "dos1d_use.py", line 15, in <module>
    dos = DOS1D(configuration,num_k_points)
  File "C:\Users\kaypu\Desktop\dos1d.py", line 28, in __init__
    self._bandstructure = Bandstructure(configuration,kpoints=self._kpoints)
TypeError: __init__() got an unexpected keyword argument 'kpoints'

what'wrong with it (scripts attached)

39
Thank you professor Anders, but i still don't know how to run the script

Please forgive my ignorance.

i run the script of "dos1_use",  something wrong with it :
**************
Traceback (most recent call last):
  File "c:\users\kaypu\appdata\local\temp\0897743753502428.py", line 4, in <module>
    from dos1d import DOS1D, plotDOS
ImportError: No module named dos1d
*******************
should i put the scripts 'dos1d' and 'dos1_use' in the same folder? i don't know how to do

40
Dear QuantumWise staff:

     The bandstructure of zigzag graphene nanoribbons(n=12)is shown in the attachment. there are three subbands in the  energy region of [0eV, 2eV].
      i want to get the DOS of a specified subband in the energy region of [0eV, 2eV](red arrow or blue arrow )
how to compile the script in atk 2012.8.2?

41
thank you  professor

42
Dear professor Anders, i got a problem with the script.
***************************************
from NanoLanguage import *
import NLEngine

def makeGridValues(datagrid, cell, origin, unit):

    n0, n1, n2 = datagrid.shape
    gA, gB, gC = cell
    u0 = NLEngine.Cartesian3D(gA[0],gA[1],gA[2])
    u1 = NLEngine.Cartesian3D(gB[0],gB[1],gB[2])
    u2 = NLEngine.Cartesian3D(gC[0],gC[1],gC[2])
    cell_origin = NLEngine.Cartesian3D(origin[0],origin[1],origin[2])

    grid_descriptor = NLEngine.GridDescriptor(n0,n1,n2,
                                              NLEngine.UnitCell(u0,u1,u2,cell_origin))
    grid3d = NLEngine.RealGrid3D(grid_descriptor,
                                 NLEngine.doubleSequenceToRealVector(datagrid.flatten()),True)

    return GridValues(grid3d,unit)

bulk_configuration = nlread("D:/DATA/ATK/band/zig8-1.nc", BulkConfiguration)[0]
conf = nlread("D:/DATA/ATK/band/zig8-1.nc", BulkConfiguration, read_state=False)[0]

dm = bulk_configuration.calculator()._densityMatrixCalculator()
number_of_electrons = int(dm.fermiDistribution().numberOfElectrons())

LUMO = number_of_electrons/2
HOMO = LUMO-1

# Which state to compute?
spin = Spin.Up
state = HOMO
filename = "bloch_z8_HOMO_up.nc"

# Number of points to sample from G to Z
Nk = 20

density = None
for kz in numpy.linspace(0.42,0.5,Nk):
    b = BlochState(bulk_configuration, quantum_number=state, k_point=[0,0,kz], spin=spin)
    psi = b.toArray()
    if density == None:
        density = (psi*psi.conj()).real
    else:
        density += (psi*psi.conj()).real

cell = conf.bravaisLattice().primitiveVectors().inUnitsOf(Bohr)
origin = conf.bravaisLattice().origin().inUnitsOf(Bohr)
grid = makeGridValues(density,cell,origin,unit = eV/eV)

nlsave(filename, grid)
nlsave(filename, conf)
*****************************
the wrong message shows as follows:

Traceback (most recent call last):
  File "c:\users\kaypu\appdata\local\temp\0851755004935871.py", line 50, in <module>
    grid = makeGridValues(density,cell,origin,unit = eV/eV)
  File "c:\users\kaypu\appdata\local\temp\0851755004935871.py", line 20, in makeGridValues
    return GridValues(grid3d,unit)
NameError: global name 'GridValues' is not defined

what's wrong with it? i use atk 11.8.2

43
thank you professor Anders, yes you're right, something wrong with the nc

44
General Questions and Answers / Questions on script of TE
« on: March 2, 2013, 14:41 »
Dear QuantumWise staff:
       i use the script to calculate TE, the script is as follow:
*****************************************************************
# Define input and output NetCDF files here 
scf_filename = "/home/zwk/New/SY12C/SY12C-scf%g.nc"
analysis_filename = "/home/zwk/New/SY12C/SY12C-TE.nc" 
 
biases = [0., 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 2]
# Read configurations from NetCDF files
configurations = [ ]
for bias in biases:
   
    configurations.append(nlread(scf_filename % bias, DeviceConfiguration)[0])

biases = [float(conf.calculator().electrodeVoltages()[0]-conf.calculator().electrodeVoltages()[1]) for conf in configurations]
configurations = [configurations[j] for j in numpy.argsort(biases)]


for configuration in configurations:

    # For each one, extract the bias,
    calculator = configuration.calculator()
    bias = calculator.electrodeVoltages()[0]-calculator.electrodeVoltages()[1]

    # ... calculate and save the transmission spectrum,
    transmission_spectrum = TransmissionSpectrum(
        configuration=configuration,
        energies=numpy.linspace(-2,2,201)*eV,
        kpoints=MonkhorstPackGrid(1,1),
        energy_zero_parameter=AverageFermiLevel,
        infinitesimal=1e-06*eV,
        self_energy_calculator=KrylovSelfEnergy(),
        )
    nlsave(analysis_filename, transmission_spectrum, object_id="Transmission %s" % bias)
    nlprint(transmission_spectrum)
************************************************************************
but something wrong with it
*************************************************************
+------------------------------------------------------------------------------+
|                                                                              |
| Atomistix ToolKit 11.8.2 [Build 09819e5]                                     |
|                                                                              |
+------------------------------------------------------------------------------+
Traceback (most recent call last):
  File "SY12C-TE.py", line 10, in <module>
    configurations.append(nlread(scf_filename % bias, DeviceConfiguration)[0])
  File "./zipdir/NL/IO/NLSaveUtilities.py", line 256, in nlread
  File "./zipdir/NL/CommonConcepts/Configurations/ReadConfigurations.py", line 165, in nlreadDeviceConfiguration
  File "./zipdir/NL/NanoLanguage/ScopeExecuter.py", line 66, in execute
NL.ComputerScienceUtilities.Exceptions.NLScopeExecutionError: invalid syntax (<string>, line 2)
*********************************************************************************************************
how to modify the script?

45
thank you professor Anders

Pages: 1 2 [3] 4 5 ... 9