Computing: Difference between revisions

From phys824
Jump to navigationJump to search
No edit summary
 
(76 intermediate revisions by the same user not shown)
Line 1: Line 1:
== MATLAB ==
== Unix Training==
*[[Media:gs_linux.pdf|Getting Started With Linux]]
*[http://www.doc.ic.ac.uk/~wjk/UnixIntro/ UNIX Tutorial]


=== Hands on training ===
== MATLAB Training ==


* [http://www.physics.udel.edu/~bnikolic/teaching/phys660/Matlab/matlab_tutorial.m MATLAB: Getting Started]
=== Hands-on tutorials by Instructor ===
* [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/matlab_tutorial_phys824.m MATLAB: Getting Started]
* [http://www.physics.udel.edu/~bnikolic/teaching/phys660/Matlab/sparse_matrices.m MATLAB: Sparse Matrices]
* [http://www.physics.udel.edu/~bnikolic/teaching/phys660/Matlab/sparse_matrices.m MATLAB: Sparse Matrices]
* [http://www.physics.udel.edu/~bnikolic/teaching/phys660/Matlab/fft_matlab.m MATLAB: FFT]
 
=== Hands-on Lab tutorials by MathWorks ===
* [http://www.mathworks.com/academia/student_center/tutorials/launchpad.html MATLAB Student Center]
* [http://www.mathworks.com/academia/student_center/tutorials/launchpad.html MATLAB Student Center]
*[http://www.mathworks.com/support/2007a/matlab/7.4/demos/RapidCodeIterationUsingCells_viewlet_swf.html Rapid code iteration using cells in the Editor]
=== Reference ===
*[[MATLAB Brief List of Commands]]
*[http://www.mathworks.com/access/helpdesk/help/helpdesk.html MATLAB Documentation]
* [[Media:matlab_pitfals.pdf | Some Common MATLAB Programming Pitfalls and How to Avoid Them]]


=== Books and notes ===
=== Books and notes ===


* C. Moler: ''Numerical Computing with MATLAB'' (SIAM, Philadelphia, 2004) [http://www.mathworks.com/moler/chapters.html [PDF]]   
* C. Moler: ''Numerical Computing with MATLAB'' (SIAM, Philadelphia, 2004). [http://www.mathworks.com/moler/chapters.html [PDF]]   
* [http://www.physics.udel.edu/%7Ebnikolic/teaching/phys660/PDF/ud_crash_course_matlab.pdf UD Crash Course on Matlab]
* [http://www.physics.udel.edu/%7Ebnikolic/teaching/phys660/PDF/ud_crash_course_matlab.pdf UD Crash Course on Matlab]


=== Computational Tools ===
=== Implementation Tools ===


*[http://www.math.umbc.edu/%7Egobbert/matlab.html Running MATLAB m-files in the background under Linux]
*[http://www.math.umbc.edu/%7Egobbert/matlab.html Running MATLAB m-files in the background under Linux]
*[http://www.physics.udel.edu/%7Ebnikolic/teaching/phys660/PDF/mlab_bench.pdf Multithreaded MATLAB performance on multicores]
*[http://www.physics.udel.edu/%7Ebnikolic/teaching/phys660/PDF/mlab_bench.pdf Multithreaded MATLAB performance on multicores]


== Mathematica ==
== MATLAB Scripts ==
 
===Electron density in nanowires using equilibrium density matrix===
*[http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/electron_density.m electron_density.m]
 
===DOS of disordered nanowire using eigenvalues and Anderson localization of eigenfunctions===
*[http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/disordered_nanowire.m disordered_nanowire.m]
 
===Density of states using equilibrium retarded Green function===
*[http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/dos_negf.m dos_negf.m]
*[http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/graphene_dos.m graphene_dos.m]
 
===Subband structure of graphene nanoribbons using tight-binding models===
*[http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/8zgnr.m 8zgnr.m] (pedestrian code for 8-ZGNR only)
 
===Quantum transport in 1D nanowires using NEGF===
*[http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/qt_1d.m 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===
 
===Spin-transfer torque in 1D models===
 
===Klein tunneling in graphene heterojunctions===


=== Hands-on training ===
*[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/%7Ebnikolic/teaching/phys660/Mathematica/math_start_2008.nb Mathematica: Getting Started]
== MATLAB functions ==
* [http://www.physics.udel.edu/%7Ebnikolic/teaching/phys660/Mathematica/math_ode_2008.nb Mathematica: Differential Equations]
* [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/matrix_exp.m matrix_exp.m] (Exponential, or any other function with small changed in the code, of a Hermitian  matrix)
* [http://www.physics.udel.edu/%7Ebnikolic/teaching/phys660/Mathematica/math_ode_2008.nb Mathematica: Linear Algebra]
* [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/visual_graphene_H.m 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): [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/atomCoord.m atomCoord.m], [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/atomPosition.m atomPosition.m], and [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/constrainView.m constrainView.m]
* [http://www.wolfram.com/broadcast/screencasts/handsonstart/ Wolfram hands-on start to Mathematica]
* [http://www.physics.udel.edu/~bnikolic/teaching/phys824/MATLAB/self_energy.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)


=== Tutorials ===
== Density functional theory using GPAW==


* J. J. Kely,  [http://www.physics.umd.edu/courses/CourseWare/EssentialMathematica/ Essential Mathematica for students of science]
===Hands-on tutorials by CAMd at Denmark Technical University===
* L. Pryadko, [http://www.faculty.ucr.edu/~leonid/ Exploring many-body quantum physics with Mathematica]
*[https://wiki.fysik.dtu.dk/gpaw/exercises/exercises.html#exercises CAMd Summer School Tutorials]
*[https://wiki.fysik.dtu.dk/gpaw/tutorials/tutorials.html GPAW Tutorials]


=== Books ===
=== Hands-on tutorials by Instructor ===
*Band structure of Fe
*Subbandstructure of graphene nanoribbons
*Subband structure of carbon nanotubes
*Quantum transport through single-molecule nanojunctions


* H. Ruskeepaa, Mathematica Navigator [http://www.elsevier.com/wps/find/bookdescription.cws_home/717653/description#description publisher Website]
[[Computer Lab]]

Latest revision as of 11:08, 10 September 2012

Unix Training

MATLAB Training

Hands-on tutorials by Instructor

Hands-on Lab tutorials by MathWorks

Reference

Books and notes

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

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

Spin-transfer torque in 1D models

Klein tunneling in graphene heterojunctions

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)

Density functional theory using GPAW

Hands-on tutorials by CAMd at Denmark Technical University

Hands-on tutorials by Instructor

  • Band structure of Fe
  • Subbandstructure of graphene nanoribbons
  • Subband structure of carbon nanotubes
  • Quantum transport through single-molecule nanojunctions

Computer Lab