graphene

Synopsys: graphene(L)

graphene is the NanoTCAD ViDES class for graphene flake. As inputs, it requires the length of the graphene flake L expressed in nanometers.

The picture above shows the simulated graphene flake. Actually, the simulation domain is just a chain of C atoms along the y direction and long L nanometer (in the case shown above, the simulated graphene is the one in the green dashed box, constituted by 2 elementary cell of 8 atoms). The graphene flake is then repeated along the y direction
attaching semi-infinite leads through the definition of the self-energy ∑, while in the transversal direction periodic boundary conditions (Bloch conditions) are imposed. In particular, along the y-direction the flake is periodic with period ∆.

The attributes of the classes are the following:
  • Nc (int) the number of atoms along the longitudinal direction
  • (int) the number of atoms along the transversal direction.
  • acc (double): Carbon to carbon distance expressed in nm.
  • Eupper (double) the upper energy limit for which the NEGF is computed in the graphene
  • Elower (double) the lower energy limit for which the NEGF is computed in the graphene
  • dE (double) the energy step computed when solving the NEGF
  • kmin (double): is the minimum value of the transversal wave vector in the Brillouin zone, over which the integral for the T and the charge is computed. By default it is set to 0.
  • kmax (double): is the maximum value of the transversal wave vector in the Brillouin zone, over which the integral for the T and the charge is computed. By default it is set to pi/∆.
  • dk (double): the wave vector step used for the computation of the charge and the T.
  • thop (double) the hopping parameter of the pz tight-binding Hamiltonian
  • eta (double) the infinitesimal imaginary part used in the NEGF formalism
  • mu1 (double) the Fermi level of the left reservoir
  • mu2 (double) the Fermi level of the right reservoir
  • Temp (double) the temperature of the nanoribbon
  • E : (numpy array) array of the energies for which the transmission coefficient and the free charge is computed in the graphene by means of the NEGF formalism
  • T : (numpy array) array of the transmission coefficient computed in correspondence of the energies stored in the E array
  • charge : (numpy array of length n*Nc) free charge computed in correspondence of each C atom of the graphene.
  • x : (numpy array of length n*Nc) the x position of the i-th atom of the graphene: it is set to 0.
  • (numpy array of length n*Nc) the y position of the i-th atom along the transport direction
  • atoms_coordinates : (function) it computes the atoms coordinates in correspondence of each C atoms, filling the x, y vectors of the graphene class
  • L : (double) the effective length of the considered graphene domain, which is the length of the graphene composed by a integer number of unit cells, closest to the length specified by the user.
  • charge_T : (function) function which computes the free charge and the transmission coefficient in the energy interval specified by Eupper and Elower with an energy step equal to dE in correspondence of each C atoms of the graphene flake. Such a computation is performed in the real space.
  • current : (function) it computes the current through the Landuer formula, once filled the T vector.
  • gap : (function) it computes the energy gap of the nanoribbon: it is set to zero. This is required by the MPIze_kt command.
  • rank : (int) the rank of the process in case the MPIze_kt command is used.
See the tutorial on graphene for a clear undestanding of this class.

Comments are closed.