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.

../../_images/wse2-device.svg

Fig. 4.1.1 Schematic device structure.

As in previous examples, the calculation of a two probe system using nanodcal typically consists of the following information:

  1. Data to describe the quantum mechanical properties of the constituent atomic species;

  2. Geometry and atomic positions of the electrodes;

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

  1. Open Device Studio software ➟ Create a new Project ➟ File name Wse2-device ➟ press Save;

  2. In the menu bar click FileImportImport Local to pop up the Windows explorer:

    • Go to the Device Studio installation folder ➟ materials3D materialsLayer_materials ➟ select WSe2.hzw and click open.

../../_images/wse2-pcell.svg

Fig. 4.1.2 WSe2 unit cell.

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.

../../_images/WSe2-bands.svg

Fig. 4.1.3 The band structure of WSe2 primitive cell with general spin orientations.

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

  1. Go to the menu bar and click BuildRedefine 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.

  2. Go to the menu bar and click BuildConvert 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.

../../_images/wse2-dev-build.svg

Fig. 4.1.4 Building the WSe2 device.

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.

../../_images/WSe2-trans-0Vb-0Vg.svg

Fig. 4.1.5 The calculated transmission coefficient for the WSe2 device with general spin orientations.

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

../../_images/WSe2-IV.svg

Fig. 4.1.6 Current versus bias voltage from the WSe2 device.

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.

[BHC13]

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

[GZL14]

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.