Computer Lab: Difference between revisions
From phys824
Jump to navigationJump to search
Line 54: | Line 54: | ||
* stt_1d.m (code to compute in-plan torque component in F/I/F junction using 1D tight-binding Hamiltonian) | * stt_1d.m (code to compute in-plan torque component in F/I/F junction using 1D tight-binding Hamiltonian) | ||
=== | ===Quantum transport in graphene nanostructures using NEGF=== | ||
*[http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/gnr_cond_recursive.m gnr_cond_recursive.m],[http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/bstruct.m bstruct.m], [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/blocktosparse.m blocktosparse.m], [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/sparsetoblock.m sparsetoblock.m], [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/h_zigzag.m h_zigzag.m], [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/invnn.m invnn.m], [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/Self.m Self.m], (code to compute the conductance of a finite graphene nanoribbon attached to two semi-infinite graphene electrodes) | *[http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/gnr_cond_recursive.m gnr_cond_recursive.m],[http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/bstruct.m bstruct.m], [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/blocktosparse.m blocktosparse.m], [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/sparsetoblock.m sparsetoblock.m], [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/h_zigzag.m h_zigzag.m], [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/invnn.m invnn.m], [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/Self.m Self.m], (code to compute the conductance of a finite graphene nanoribbon attached to two semi-infinite graphene electrodes) |
Revision as of 09:47, 4 October 2012
Unix Training
MATLAB Training
Hands-on tutorials by Instructor
Hands-on Lab tutorials by MathWorks
Reference
- MATLAB Brief List of Commands
- MATLAB Documentation
- Some Common MATLAB Programming Pitfalls and How to Avoid Them
Books and notes
- C. Moler: Numerical Computing with MATLAB (SIAM, Philadelphia, 2004). [PDF]
- UD Crash Course on Matlab
Implementation Tools
MATLAB Scripts
Electron density in nanowires using equilibrium density matrix
DOS of disordered nanowire using eigenvalues and Anderson localization of eigenfunctions
Density of states using equilibrium retarded Green function
- dos_negf_closed.m computes DOS for finite 1D wire
- dos_negf_open.m computes DOS for finite 1D wire attached to a single reservoir
- graphene_dos.m computes DOS for a supercell of graphene with periodic boundary conditions
Subband structure of graphene nanoribbons using tight-binding models
- 8zgnr.m (pedestrian code for 8-ZGNR only)
Quantum transport in 1D nanowires using NEGF
- qt_1d.m (code to compute the conductance and total and local density of states of a 1D nanowire, with possible potential barriers or impurities, attached to two semi-infinite electrodes)
Tunneling magnetoresistance in 1D models
- tmr_1d.m (code to compute conductance of F/I/F junction as a function of angle between magnetizations using 1D tight-binding Hamiltonian)
Spin-transfer torque in 1D models
- stt_1d.m (code to compute in-plan torque component in F/I/F junction using 1D tight-binding Hamiltonian)
Quantum transport in graphene nanostructures using NEGF
- gnr_cond_recursive.m,bstruct.m, blocktosparse.m, sparsetoblock.m, h_zigzag.m, invnn.m, Self.m, (code to compute the conductance of a finite graphene nanoribbon attached to two semi-infinite graphene electrodes)
- M.-H. Liu and K. Richter, Efficient quantum transport simulation for bulk graphene heterojunctions, arXiv:1206.0266.
MATLAB functions
- matrix_exp.m (Exponential, or any other function with small changed in the code, of a Hermitian matrix)
- visual_graphene_H.m (For a given tight-binding Hamiltonian on the honeycomb lattice, function plots position of carbon atoms and draws blue lines to represent hoppings between them; red circles to represent on-site potential between them; and cyan lines to represent the periodic boundary conditions; it can be used to test if the tight-binding Hamiltonian of graphene is set correctly); This function calls another three function which should be placed in the same directory (or in the path): atomCoord.m, atomPosition.m, and constrainView.m
- self_energy.m (Self-energy of the semi-infinite ideal metallic lead modeled on the square tight-binding lattice - the code shows how to convert analytical formulas of the lead surface Green function into a working program)
First-principles calculations using GPAW
- Getting started with GPAW (structure and binding energies of simple molecules)
- Basics of GPAW calculations
- Band structure of Fe
- DOS of Fe
- Graphene nanoribbons