4.1. WSe2 monolayer
In this tutorial we will reproduce a study of a monolayer WSe2 spintronics and valleytronics system [GZL14]. The study focuses on the both equilibrium and nonequilibrium quantum transport properties of monolayer WSe2 field-effect transistors (FET) along the zigzag direction, as shown in Fig. 4.1.1.
As in previous examples, the calculation of a two probe system using nanodcal typically consists of the following information:
Data to describe the quantum mechanical properties of the constituent atomic species;
Geometry and atomic positions of the electrodes;
Geometry and atomic positions of the interface between the two electrodes.
4.1.1. Wse2 primitive cell
Begin by starting the Device Studio software and creating a new project.
Open Device Studio software ➟ Create a new Project ➟ File name Wse2-device ➟ press Save;
In the menu bar click File ➟ Import ➟ Import Local to pop up the Windows explorer:
Go to the Device Studio installation folder ➟ materials ➟ 3D materials ➟ Layer_materials ➟ select WSe2.hzw and click open.
The Wse2 unit cell (see Fig. 4.1.2) will be used as the basis for the two-probe device model.
Important
The WSe2 unit cell have two layers, but we just need one of them. So, select the atoms from the right layer, go to the toolbar and click delete atoms.
Band structure of the WSe2 primitive cell
In order to explore the transport properties from the WSe2 device it is useful to calculate the electronic band structure of the primitive WSe2 cell. The user should be able to perform scf and band structure calculations following the procedure previously described here.
Tip
You may also perform the band structure calculation for different spin configurations (no spin and collinear spin states) to explore the effects over the electronic structure of WSe2.
The band structure of the WSe2 system with non-collinear spin orientations is presented in Fig. 4.1.3.
The electronic band structure of the WSe2 monolayer exhibit a direct bandgap of 1.278 eV at Dirac valleys bands localized at K (K’). It is important to note that the heavy tungsten (W) atom produces a strong spin-orbit coupling. In addition, the system has no spatial inversion symmetry, which leads to a giant spin splitting of 0.485 eV at the valence band maximum (VBM). This spin splitting became weak with a small value of 0.024 eV at the conduction band minimum (CBM).
4.1.2. Build the WSe2 device
Go to the menu bar and click Build ➟ Redefine Crystal, set the following matrix and click Build:
1
-1
0
12
12
0
0
0
1
Go to the toolbar ➟ click over alternate coordinate button until b-axis points towards the positive y direction.
Go to the menu bar and click Build ➟ Convert to the Device;
Check the the Bottom and Top box, set -6.564 and 6.564 ➟ click Preview and Build the device, as shown in Fig. 4.1.4.
The user could generate the NanoDCAL input files for the Bottom, Central and Top region following the same procedure previously described here.
Note
The Bottom and Top electrodes are the same. Thus, the next calculations will be performed only with the Bottom electrode.
4.1.3. SCF for electrode
Similar to previous examples, here we give a description of the information contained in the electrode scf.input (WSe2-elec.scf.input
).
Electrode scf input file
%%What quantities should be calculated
calculation.name = scf
%Basic setting
calculation.occupationFunction.temperature = 100
calculation.realspacegrids.E_cutoff = 100 Hartree
calculation.xcFunctional.Type = GGA_PBE96
calculation.k_spacegrids.number = [ 12 12 1 ]'
system.centralCellVectors = [[5.68459 0 0]' [0 6.564 0]' [0 0 12.96]']
system.spinType = GeneralSpin
%Iteration control
calculation.SCF.monitoredVariableName = {'rhoMatrix','hMatrix','totalEnergy','bandEnergy','gridCharge','orbitalCharge','spinPolar'}
calculation.SCF.convergenceCriteria = {1e-06,1e-06,1e-06,[],[],[],[]}
calculation.SCF.maximumSteps = 200
calculation.SCF.mixMethod = Pulay
calculation.SCF.mixRate = 0.1
calculation.SCF.mixingMode = H
calculation.SCF.startingMode = H
%calculation.SCF.donatorObject = NanodcalObject.mat
calculation.spinOrbitInteraction.isIncluded = true
%Basic set
system.neutralAtomDataDirectory = '../'
system.atomBlock = 12
AtomType OrbitalType X Y Z SpinPolarization_r SpinPolarization_theta SpinPolarization_phi
W PBE-DZP 1.89486359 0.82050001 3.24000000 1 0 0
W PBE-DZP 4.73715896 2.46150000 3.24000000 1 0 0
W PBE-DZP 1.89486359 4.10250000 3.23999998 1 0 0
W PBE-DZP 4.73715896 5.74350001 3.24000000 1 0 0
Se PBE-DZP 3.78972716 0.82050001 1.56945599 1 0 0
Se PBE-DZP 0.94743179 2.46150001 1.56945598 1 0 0
Se PBE-DZP 3.78972716 4.10250001 1.56945599 1 0 0
Se PBE-DZP 0.94743179 5.74350001 1.56945599 1 0 0
Se PBE-DZP 3.78972716 0.82050001 4.91054397 1 0 0
Se PBE-DZP 0.94743179 2.46150001 4.91054397 1 0 0
Se PBE-DZP 3.78972716 4.10250001 4.91054397 1 0 0
Se PBE-DZP 0.94743179 5.74350001 4.91054397 1 0 0
end
Most of these keywords were already specified here. Thus, we’ll focus in a set of particular keywords that play an important role in physical properties of this system:
system.spinType = GeneralSpin
calculation.spinOrbitInteraction.isIncluded = true
calculation.realspacegrids.E_cutoff = 100 Hartree
calculation.k_spacegrids.number = [ 12 12 1 ]'
The input file set a general spin calculation since spin-orbit interaction (SOI) plays an important role for WSe2 structure and must be taken into account.
The energy cutoff of 100 Ha was set for the description of quantities on the real space grids. However, larger values could improve the accuracy of the calculations.
A MonkHorst Pack mesh of 12x12x1 is used to sample the Brillouin zone. This parameter determines how accurate the sum of the electronic states over the Brillouin zone will be. Since transport calculation will be performed along the y direction, increasing the k point along the b-axis could improve the accuracy of the results.
Using the generated file, run the scf calculation for the bottom electrode. The electrode Hamiltonian will be required to perform the transmission calculation.
4.1.4. SCF for two-probe system
Having calculated the electrodes, we move forward to carry out the two-probe transport calculation.
Central region scf input file
%%What quantities should be calculated
calculation.name = scf
%Basic setting
calculation.occupationFunction.temperature = 100
calculation.realspacegrids.E_cutoff = 80 Hartree
calculation.xcFunctional.Type = GGA_PBE96
calculation.k_spacegrids.number = [ 12 12 1 ]'
%Description of electrode
system.numberOfLeads = 2
system.typeOfLead1 = bottom
system.voltageOfLead1 = 0
system.objectOfLead1 = ../BottomElectrode/NanodcalObject.mat
system.typeOfLead2 = top
system.voltageOfLead2 = 0
system.objectOfLead2 = ../BottomElectrode/NanodcalObject.mat
%Contour integral
%calculation.complexEcontour.lowestEnergyPoint = 1.5 Hartree
calculation.complexEcontour.numberOfPoints = 40
calculation.realEcontour.interval = 0.0272114
calculation.realEcontour.eta = 0.0272114
system.centralCellVectors = [[5.68459 0 0]' [-4e-08 26.256 0]' [0 0 12.96]']
system.spinType = GeneralSpin
%Iteration control
calculation.SCF.monitoredVariableName = {'rhoMatrix','hMatrix','totalEnergy','bandEnergy','gridCharge','orbitalCharge','spinPolar'}
calculation.SCF.convergenceCriteria = {1e-06,1e-06,1e-06,[],[],[],[]}
calculation.SCF.maximumSteps = 200
calculation.SCF.mixMethod = Pulay
calculation.SCF.mixRate = 0.1
calculation.SCF.mixingMode = H
calculation.SCF.startingMode = H
%calculation.SCF.donatorObject = NanodcalObject.mat
calculation.spinOrbitInteraction.isIncluded = true
%Basic set
system.neutralAtomDataDirectory = '../'
system.atomBlock = 48
AtomType OrbitalType X Y Z SpinPolarization_r SpinPolarization_theta SpinPolarization_phi
W PBE-DZP 1.89486358 0.82050000 3.24000000 1 0 0
W PBE-DZP 4.73715896 2.46150000 3.24000000 1 0 0
W PBE-DZP 1.89486358 4.10250000 3.24000000 1 0 0
W PBE-DZP 4.73715895 5.74350000 3.24000000 1 0 0
W PBE-DZP 1.89486357 7.38450001 3.24000000 1 0 0
W PBE-DZP 4.73715895 9.02550001 3.24000000 1 0 0
W PBE-DZP 1.89486357 10.66650001 3.23999996 1 0 0
W PBE-DZP 4.73715888 12.30750001 3.24000000 1 0 0
W PBE-DZP 1.89486355 13.94850002 3.24000000 1 0 0
W PBE-DZP 4.73715888 15.58950001 3.24000000 1 0 0
W PBE-DZP 1.89486355 17.23050002 3.24000000 1 0 0
W PBE-DZP 4.73715888 18.87150000 3.24000000 1 0 0
W PBE-DZP 1.89486355 20.51250002 3.24000000 1 0 0
W PBE-DZP 4.73715888 22.15350003 3.24000000 1 0 0
W PBE-DZP 1.89486355 23.79450002 3.24000000 1 0 0
W PBE-DZP 4.73715888 25.43550003 3.24000000 1 0 0
Se PBE-DZP 3.78972716 0.82050000 1.56945599 1 0 0
Se PBE-DZP 0.94743179 2.46150000 1.56945599 1 0 0
Se PBE-DZP 3.78972716 4.10250000 1.56945599 1 0 0
Se PBE-DZP 0.94743178 5.74350001 1.56945599 1 0 0
Se PBE-DZP 3.78972715 7.38450001 1.56945599 1 0 0
Se PBE-DZP 0.94743178 9.02550001 1.56945599 1 0 0
Se PBE-DZP 3.78972715 10.66650001 1.56945599 1 0 0
Se PBE-DZP 0.94743177 12.30750002 1.56945599 1 0 0
Se PBE-DZP 3.78972714 13.94850002 1.56945599 1 0 0
Se PBE-DZP 0.94743177 15.58950001 1.56945599 1 0 0
Se PBE-DZP 3.78972714 17.23050002 1.56945599 1 0 0
Se PBE-DZP 0.94743176 18.87150000 1.56945599 1 0 0
Se PBE-DZP 3.78972714 20.51250003 1.56945599 1 0 0
Se PBE-DZP 0.94743176 22.15350003 1.56945599 1 0 0
Se PBE-DZP 3.78972713 23.79450002 1.56945599 1 0 0
Se PBE-DZP 0.94743175 25.43550003 1.56945599 1 0 0
Se PBE-DZP 3.78972716 0.82050000 4.91054397 1 0 0
Se PBE-DZP 0.94743179 2.46150000 4.91054397 1 0 0
Se PBE-DZP 3.78972716 4.10250000 4.91054397 1 0 0
Se PBE-DZP 0.94743178 5.74350001 4.91054397 1 0 0
Se PBE-DZP 3.78972715 7.38450001 4.91054397 1 0 0
Se PBE-DZP 0.94743178 9.02550001 4.91054397 1 0 0
Se PBE-DZP 3.78972715 10.66650001 4.91054397 1 0 0
Se PBE-DZP 0.94743177 12.30750002 4.91054397 1 0 0
Se PBE-DZP 3.78972714 13.94850002 4.91054397 1 0 0
Se PBE-DZP 0.94743177 15.58950001 4.91054397 1 0 0
Se PBE-DZP 3.78972714 17.23050002 4.91054397 1 0 0
Se PBE-DZP 0.94743176 18.87150000 4.91054397 1 0 0
Se PBE-DZP 3.78972714 20.51250003 4.91054397 1 0 0
Se PBE-DZP 0.94743176 22.15350003 4.91054397 1 0 0
Se PBE-DZP 3.78972713 23.79450002 4.91054397 1 0 0
Se PBE-DZP 0.94743175 25.43550003 4.91054397 1 0 0
end
Warning
The Bottom and Top electrodes are the same. Edit the central region scf input file and change the path of the NanodcalObject.mat from the second lead.
system.objectOfLead2 = ../TopElectrode/NanodcalObject.mat
Run the simulation with scf.input file (WSe2-CentralRegion.scf.input
).
4.1.5. Transmission calculation
After the self-consistent calculation we can compute the transmission coefficient. The transmission.input file (WSe2-trans.input
) could be generated using the Device Studio software. Follow the previous example to set up the calculation.
Transmission spectrum
Run the generated transmission.input file. Once the calculation finish, the transmission dataset can be plotted using the MATLAB or Device Studio, as shown in Fig. 4.1.5.
4.1.6. I-V curve calculation
Now we can explore additional transport properties from the WSe2 device when a bias voltage is applied between the leads. In order to get current-voltage (I-V) plot we should perform scf calculations considering bias voltage difference between the leads. Thus, we should rerun the SCF calculation for the two-probe system considering two additional keywords, as showed below:
system.voltageOfLead1 = 0.1
system.voltageOfLead2 = 0.0
Note
Note that in this example we considered a bias voltage of 0.1 V and the user should be able to explore the transport properties for a set of different bias voltages.
In order to plot the I-V curve the user can generate iv.input file with Device Studio software as showed below:
calculation.name = ivc
calculation.control.temporaryDirectory = ./
calculation.IVCurve.systemObjectStatus = 'AllCalculated'
calculation.IVCurve.systemObjectFiles = ../NanodcalObject.mat
calculation.IVCurve.kSpaceGridNumber = [12 1 1]'
calculation.control.xml = true
Note that the calculation.IVCurve.systemObjectFiles keyword should be used to include the NanodcalObject.mat files related with the different bias voltage calculations. For example, to plot an I-V curve for bias voltage between 0.1 V to 0.5 V the keyword could change to:
calculation.IVCurve.systemObjectFiles = {
'../0.1Vb/NanodcalObject.mat','../0.2Vb/NanodcalObject.mat',
'../0.3Vb/NanodcalObject.mat','../0.4Vb/NanodcalObject.mat',
'../0.5Vb/NanodcalObject.mat'}
After running the iv.input file (WSe2-IV.input
) the I-V dataset will be generated and this results could be plotted using MATLAB or Device Studio as presented in Fig. 4.1.6
Since the monolayer WSe2 is a semiconductor with an intrinsic band gap, the I-V curve have very small values in the absence of gate-voltage (\(V_{g}\)). However, this current intensity could be greatly enhanced when a finite \(V_{g}\) is applied, showing a typical transistor character.
S.Z.Butler, S.M. Hollen, L. Cao, J. A. Gupta, H. R. Gutiérrez, T. F. Heinz, S.S. Hong, J. Huang, A. F. Ismach, E. Johnston-Halperin‡, M. Kuno, V. V. Plashnitsa, R. D. Robinson, R. S. Ruoff, S. Salahuddin, J. Shan, L. Shi, M. G. Spencer, M. Terrones, W. Windl, and J. E. Goldberger. Progress, challenges, and opportunities in two-dimensional materials beyond graphene
K. Gong, L. Zhang, D. Liu, L. Liu, Y. Zhu, Y. Zhao and H. Guo. Electric control of spin in monolayer WSe2 field effect transistors Nanotechnology 25 (2014) p. 435201.