Table of Contents. Table of Contents Exploring graphene. Build a graphene sheet Build a CNT Transmission spectrum of a GNR Twisted nanoribbon

Similar documents
Phonons: Bandstructure, thermal transport, thermo-electrics

Table of Contents. Table of Contents Opening a band gap in silicene and bilayer graphene with an electric field

QuantumWise. QuantumWise is now part of Synopsys

Spin transport in Magnetic Tunnel Junctions

Table of Contents. Table of Contents Computing the piezoelectric tensor for AlN. Introduction. Computing the piezoelectric tensor

Table of Contents. Table of Contents Using the Crystal Builder. Introduction Crystal structure of black phosphorus Phosphorene and its bandstructure

Spin transport in Magnetic Tunnel Junctions

Table of Contents. Table of Contents Spin-orbit splitting of semiconductor band structures

Table of Contents. Table of Contents Electronic structure of NiO with DFT+U. Introduction The electronic structure of NiO calculated with DFT

Table of Contents. Table of Contents Phonon-limited mobility in graphene using the Boltzmann transport equation

Table of Contents. Table of Contents MoS2 nanotubes

Table of Contents. Table of Contents LAMMPS trajectories into QuantumATK

Spontaneous polarization of ferroelectric BaTiO3

Table of Contents. Table of Contents Converting lattices: Rhombohedral to hexagonal and back

Table of Contents. Table of Contents DFT-1/2 and DFT-PPS density functional methods for electronic structure calculations

Table of Contents. Table of Contents Spin Transfer Torque. Introduction. Getting Started

Carbon Structure Simulations using Crystal Viewer Tool

Table of Contents. Table of Contents Initialize from a converged state. Introduction Examples

Table of Contents. Table of Contents Bi2Se3 topological insulator. Build the Bi2Se3 crystal. Bi2Se3 bulk band structure

The DFTB model in ATK-SE

Date: Summer Stem Section:

Speed-up of ATK compared to

General Chemistry Lab Molecular Modeling

Molecular modeling with InsightII

Chem 253. Tutorial for Materials Studio

Tutorial 12 Excess Pore Pressure (B-bar method) Undrained loading (B-bar method) Initial pore pressure Excess pore pressure

T. Interface Energy of Metal-Ceramic Interface Co-WC Using ab initio Thermodynamics

BOND LENGTH WITH HYPERCHEM LITE

Silica surface - Materials Studio tutorial. CREATING SiO 2 SURFACE

Exercises for Windows

SuperCELL Data Programmer and ACTiSys IR Programmer User s Guide

Introduction to Hartree-Fock calculations in Spartan

ECE 474: Principles of Electronic Devices. Prof. Virginia Ayres Electrical & Computer Engineering Michigan State University

Application Note. U. Heat of Formation of Ethyl Alcohol and Dimethyl Ether. Introduction

Lightcloud Application

Designing a Quilt with GIMP 2011

Computer simulation of radioactive decay

Performing a Pharmacophore Search using CSD-CrossMiner

Axisymmetric Modeling. This tutorial gives an overview of axisymmetric modeling. Learn how to:

Creating a Pharmacophore Query from a Reference Molecule & Scaffold Hopping in CSD-CrossMiner

This tutorial is intended to familiarize you with the Geomatica Toolbar and describe the basics of viewing data using Geomatica Focus.

v Prerequisite Tutorials GSSHA WMS Basics Watershed Delineation using DEMs and 2D Grid Generation Time minutes

v WMS Tutorials GIS Module Importing, displaying, and converting shapefiles Required Components Time minutes

Lab 1: Numerical Solution of Laplace s Equation

Tutorial. Getting started. Sample to Insight. March 31, 2016

THE CRYSTAL BALL SCATTER CHART

Available online at ScienceDirect. Procedia Materials Science 11 (2015 )

Building small molecules

Electric Fields and Equipotentials

CS1110 Lab 3 (Feb 10-11, 2015)

QUANTUM CHEMISTRY WITH GAUSSIAN : A VERY BRIEF INTRODUCTION (PART 2)

Materials that you may find helpful when working through this exercise

Avogadro with YAeHMOP Manual

Empirical Gas Laws (Parts 1 and 2) Pressure-volume and pressure-temperature relationships in gases

BASIC TECHNOLOGY Pre K starts and shuts down computer, monitor, and printer E E D D P P P P P P P P P P

ON SITE SYSTEMS Chemical Safety Assistant

Tutorial I: IQ MOL and Basic DFT and MP2 Calculations 1 / 30

M E R C E R W I N WA L K T H R O U G H

Molecular Modeling and Conformational Analysis with PC Spartan

Introduction to Structure Preparation and Visualization

The CSC Interface to Sky in Google Earth

Chemistry 14CL. Worksheet for the Molecular Modeling Workshop. (Revised FULL Version 2012 J.W. Pang) (Modified A. A. Russell)

LAB Exercise #4 - Answers The Traction Vector and Stress Tensor. Introduction. Format of lab. Preparation reading

Interacting Galaxies

Stoichiometric Reactor Simulation Robert P. Hesketh and Concetta LaMarca Chemical Engineering, Rowan University (Revised 4/8/09)

Leaf Spring (Material, Contact, geometric nonlinearity)

Appendix 4 Weather. Weather Providers

WMS 10.1 Tutorial GSSHA Applications Precipitation Methods in GSSHA Learn how to use different precipitation sources in GSSHA models

Task 1: Start ArcMap and add the county boundary data from your downloaded dataset to the data frame.

Introduc)on to IQmol: Part I.!!! Shirin Faraji, Ilya Kaliman, and Anna Krylov

3D - Structure Graphics Capabilities with PDF-4 Database Products

Jaguar DFT Optimizations and Transition State Searches

ADF-GUI Tutorial. ADF Program System Release

Computational Chemistry Lab Module: Conformational Analysis of Alkanes

Dock Ligands from a 2D Molecule Sketch

BUILDING BASICS WITH HYPERCHEM LITE

Preparing a PDB File

BOUNDARY MAP USER GUIDE

EAM. ReaxFF. PROBLEM B Fracture of a single crystal of silicon

How to Create Stream Networks using DEM and TauDEM

Simulating Future Climate Change Using A Global Climate Model

An example of panel solution in the elastic-plastic regime

Watershed Modeling Orange County Hydrology Using GIS Data

Gluing Galaxies: A Jupyter Notebook and Glue Tutorial

The Hückel Approximation Consider a conjugated molecule i.e. a molecule with alternating double and single bonds, as shown in Figure 1.

OpenWeatherMap Module

TEMScripts Real-time Crystallography Manual. TEMScripts LLC. Last updated: 11/4/2016

WMS 9.0 Tutorial GSSHA Modeling Basics Infiltration Learn how to add infiltration to your GSSHA model

Assignment 1 Physics/ECE 176

CHAPTER 6 CHIRALITY AND SIZE EFFECT IN SINGLE WALLED CARBON NANOTUBES

Introduction Molecular Structure Script Console External resources Advanced topics. JMol tutorial. Giovanni Morelli.

PDF-4+ Tools and Searches

Assignment 1: Molecular Mechanics (PART 1 25 points)

Model Building An Introduction to Atomistic Simulation

Investigating Weather and Climate with Google Earth Teacher Guide

1 An Experimental and Computational Investigation of the Dehydration of 2-Butanol

ES205 Analysis and Design of Engineering Systems: Lab 1: An Introductory Tutorial: Getting Started with SIMULINK

Assignment A02: Geometry Definition: File Formats, Redundant Coordinates, PES Scans

PDF-4+ Tools and Searches

August 7, 2007 NUMERICAL SOLUTION OF LAPLACE'S EQUATION

Transcription:

Table of Contents Table of Contents Exploring graphene Build a graphene sheet Build a CNT Transmission spectrum of a GNR Twisted nanoribbon Transmission spectrum Möbius nanoribbon Buckling a graphene sheet 1 2 3 4 4 8 9 11 14

QuantumATK Try it! QuantumATK Contact Docs» Tutorials» Tubes, ribbons and other 1D nanostructures» Exploring graphene Exploring graphene Downloads & Links PDF Basic QuantumATK Tutorial ATK Reference Manual Moebius.py In this tutorial you will build a range of graphene structures and study some of their properties. With QuantumATK you can easily twist and stretch the structures using plug-in modules. You can then use QuantumATK to calculate their electronic and vibrational properties. You will also learn to automate calculations on large structures using Python scripting. Hint In many QuantumATK projects (depending on the study of course) you will need the appropriate plugins/addons, which can be installed via the AddOn Manager. In this particular tutorial, you will need the TubeWrapper and CNTBuilder plugins. Please check that these are available, and install them if they are not. You can open the AddOn Manager in two ways: The icon will pop up in the bottom-left corner of the QuantumATK main window if updates to already installed plugins are available. Clicking this icon will open the AddOn Manager. You can also click Help AddOn Manager in the top menu bar. In any case, a long list of plugins will pop up, and you can perform various tasks for each plugin, e.g. update, install, uninstall, enable, and disable.

Build a graphene sheet Open the QuantumATK Builder. It is then easy to create a graphene sheet using a plugin; simply click Add From Plugin Nanosheet. Leave the option for Chemical Properties at defaults. In the Geometry options, choose a chiral vector of (n,m)=(8,0), and click Build. You now have a basic building block for the structure. Use the Bulk Tools Repeat plugin to repeat it 10 times along the C-direction:

Build a CNT You can now use the TubeWrapper plugin to wrap the nanosheet into a carbon nanotube (CNT). It is possible to turn the nanosheet into an open or a closed cylinder: Transmission spectrum of a GNR Let us calculate the electronic transmission spectrun of a graphene nanoribbon (GNR). First, build the ribbon using the Add From Plugin Nanoribbon plugin. Choose chiral indices (n,m)=(1,1) and repeat the structure 3 times the C-direction:

Note In order to correctly calculate the transmission spectrum for a bulk system, the bulk must qualify as a valid device electrode. This requires that the C-axis is perpendicular to the A,B plane, and that it is sufficiently long that the atoms in the unit cell only have Hamiltonian matrix elements with atoms in the nearest neighbour cells along C. This condition is usually fullfilled if the C-vector is longer than 7 Å. Next, transfer the structure to the Script Generator using the botton, and double-click the New Calculator icon to add a calculator block to the script. First, change the default output file to ribbon11_bulk.nc. Then open the added calculator block to start editing the settings. Select the Extended Huckel calculator, and make sure the number of k-points is 1 for the A and B directions, and high for the C-direction, e.g. 100 k-points along C. In the Huckel basis set options, select Cerda.Carbon [graphite] for carbon and Cerda.Hydrogen [C2H4] for hydrogen. Finally, add a ribbon11_bulk.py. TransmissionSpectrum block to the script, and save the Python script as

Send the script to the Job Manager in order to execute it. The job starts when you click the icon.

When the calculation is finished (it will run extremely fast), locate the output file ribbon11_twist0_nscf.nc in the QuantumATK file browser window. Select the file and notice that the contents of the file are displayed in the QuantumATK panel: You can now select the TransmissionSpectrum object, which has this icon:

and use the 2D Plot or Transmission Analyzer plugins to plot the electronic transmission spectrum. Twisted nanoribbon In this section you will learn how to twist a graphene nanoribbon using the QuantumATK Twister plugin, and then compute the transmission spectrum. Open the Builder, and select the nanoribbon created in the previous section. Then use the Bulk Tools Repeat tool to repeat the configuration 7 times in the C direction: Then open the Coordinate Tools Twister plugin, and set a Twist angle of 72 degrees and a Nontwisting zone of 9 Å. Click Apply to perform the twisting operation.

Certain parts of the system to the left and right of the structure are not twisted; the length of the nontwisted part is specified by the value of Non-twisting zone. The rest of the structure is twisted by the sepcified angle. Transmission spectrum You will now calculate the transmission spectrum of the twisted graphene nanoribbon. First, you need to convert the twisteds ribbon into a device use the Device Tools Device from Bulk tool for this. Then rename the device configuration as GNR_twist and send it to the required ATK Python script. Script Generator to create the

In the Scripter, add the following script blocks: New Calculator Transmission Spectrum Open the New Calculator block and use the following settings: ATK-SE: Extended Hückel (Device) calculator; 1x1x100 k-point grid; Cerda.Carbon [graphite] basis set for C and Cerda.Hydrogen[C2H4] basis set for H. Select the following settings in TransmissionSpectrum block: energy range of [-1,1] ev and 201 energy points; Krylov self-energy calculator; 1x1 k-point grid. Then save the script as GNR_twist.py and execute it using the just a few minutes. Job Manager. This calculation will take The NetCDF data file GNR_twist.nc should now have appeared on the QuantumATK LabFloor. Select the TransmissionSpectrum item and use the Transmission Analyzer plugin to visualize the computed transmission spectrum.

Note that the transmission peak has shifted down in energy as compared to the non-twisted ribbon. The twist represents a source of electron scattering, since it breaks the translational symmetry of the nontwisted ribbon electrodes along the transport direction. Möbius nanoribbon Next, we are going to create a Möbius nanoribbon. Download the script Moebius.py, which is also reproduced below. The script loads a basic nanoribbon from the file nanoribbon.nc, then performs the required operations of repeating, twisting, and wrapping the ribbon, and finally saves the Möbius ribbon in moebius.nc. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 from NL.Math.Utilities import rotationmatrix import math from QuantumATK import * def twister_displacement(x, rotation_angle_per_z, rotation_axis, rotation_axis_center, z_start, z_end): """ Function for twisting a 1-d structure @param x : Coordinates of 1-d structure @param rotation_angle_per_z : size of twist in angle/length @param rotation_axis : axis to apply twist along @param rotation_axis_center : center of the rotation axis @param z_start : z value for starting the twist @param z_end : z value for ending the twist """ # do not twist for z > z_end z = x[2] z = min(z,z_end) # do not twist for z < z_start z = z - z_start z = max (z,0.0) # find twist angle theta = z*rotation_angle_per_z # calculate the rotation matrix rotation_matrix = rotationmatrix(theta, *rotation_axis) # apply rotation return rotation_axis_center+numpy.dot(rotation_matrix, x-rotation_axis_center)

28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 return rotation_axis_center+numpy.dot(rotation_matrix, x-rotation_axis_center) def wrapping_displacement(x, width, wrapping_angle): """ Function for converting a nanosheet coordinate into a partly wrapped nanotube @param x : Coordinates of nanosheet atom @param width : Width of the nano-sheet @param wrapping_angle : maximum wrapping angle of the nanotube in radians """ # calculate the average radius of the incomplete wrapped tube radius = width/wrapping_angle # find the angle of the current atom angle = (x[2]-width/2.)/radius # calculate the radius of the current atom atom_radius = radius+x[1] # return atom position of the wrapped atom return numpy.array([x[0], atom_radius*math.cos(angle),atom_radius*math.sin(angle)]) def Moebius(ribbon, n, m, repetition): """ Function for generating a moebius molecule @param n : Chiral vector index @param m : Chiral vector index @param repetition : Repetition along z """ # build n,m ribbon #ribbon = NanoRibbon(n,m) ribbon = ribbon.repeat(1,1,repetition) # get properties of the ribbon lattice = ribbon.bravaislattice() elements = ribbon.elements() cartesian_coordinates=ribbon.cartesiancoordinates().inunitsof(angstrom) # calculate the length of the 1-d structure z_length = numpy.linalg.norm(lattice.primitivevectors()[2].inunitsof(angstrom)) # calculate twist parameters rotation_angle_per_z = math.pi /z_length rotation_axis = numpy.array([0,0,1]) rotation_axis_center = numpy.sum(cartesian_coordinates,axis=0)/len(cartesian_coordina # define a function of one variable, f(c), for displacing the atoms f = lambda c : twister_displacement(c, rotation_angle_per_z, rotation_axis, rotation_axis_center, 0.,z_length) # apply the function to find new displaced coordinates cartesian_coordinates = numpy.apply_along_axis(f, 1, cartesian_coordinates) cartesian_center = numpy.sum(cartesian_coordinates,axis=0)/len(cartesian_coordinates) cartesian_coordinates = cartesian_coordinates - cartesian_center # define a function of one variable, f(c), for displacing the atoms f = lambda c : wrapping_displacement(c, z_length,2.0*math.pi) # apply the function to find new displaced coordinates cartesian_coordinates = numpy.apply_along_axis(f, 1, cartesian_coordinates) return MoleculeConfiguration( elements=elements, cartesian_coordinates=cartesian_coordinates * Angstrom ) ribbon = nlread('ribbon.nc', BulkConfiguration)[-1] moebius = Moebius(ribbon,1,1,100) nlsave('moebius.nc', moebius)

You first need to build a basic nanoribbon. Use the Add From Plugin Nanoribbon plugin and select, for example, the chiral vector (n,m)=(6,6). Save the created ribbon in the Project Folder as ribbon.nc. Then make sure Moebius.py is also located in the Prpject Folder, and execute it using the Job Manager or from the command line. The output file moebious.nc should appear in the Project Files list and the Möbius configuration should appear on the LabFloor. Use the Viewer to visualize the structure.

Buckling a graphene sheet In this final section you will learn how to buckle a graphene sheet using the QuantumATK Buckler plugin. First, create a nanosheet as shown above in section Build a graphene sheet. This time, repeat the nanosheet 30 times in the C direction. Then open the Coordinate Tools Buckler plugin, and set the Buckling amplitude to 2 Å and the Nonbuckling zone to 9 Å. Select NY = 1 and NZ = 1 to enable buckling along the Y and Z axes. Click Apply to perform the buckling operation.

Copyright 2018, Synopsys Denmark.