top of page

Programming for Physicists

Today, programming is an essential skill for physics students and is a natural progression on the path to becoming a physicist. At the University of St Andrews, physics students are expected to use programming as an enhancement to their physical and mathematical knowledge, using the specialities of various programming languages. This web-page is a collection of online resources to help in learning the programming languages used as part of the St Andrews Physics Curriculum, leading to eventual mastery.

Python

A very good and detailed Python textbook, suitable for beginner programmers and also gives detailed chapters and examples on advanced Python. Has a Coursera course by the University of Michigan that follows along with the curriculum, with video lectures which can be audited for free.

​

http://do1.dr-chuck.com/pythonlearn/EN_us/pythonlearn.pdf

https://www.coursera.org/specializations/python?

​

A Python textbook more suited to beginners, all beginner knowledge and has a chapter on Web Pages.

​

http://anh.cs.luc.edu/python/hands-on/3.1/Hands-onPythonTutorial.pdf

​

Titled “Python for Absolute Beginners” it goes over all beginner aspects of Python.

​

http://index-of.es/Python/Python%203%20for%20Absolute%20Beginners.pdf

​

A big textbook covering background of how Python works and the essentials of the Python language.

​

https://cfm.ehu.es/ricardo/docs/python/Learning_Python.pdf

​

Another big Python textbook written by a computer scientist, where the first half jumps into the basics of Python and the second half goes into advanced Python techniques.

​

https://www.davekuhlman.org/python_book_01.pdf

​

Google’s Python Class includes written materials, lecture videos, and code exercises aimed to introduce students to Python language.

​

https://developers.google.com/edu/python/?hl=en

​

Online Web-pages that gives tutorials on the basic essentials of Python.

​

https://pymbook.readthedocs.io/en/latest/

​

https://thepythonguru.com/

​

Official Python.org online tutorials on the programming language.

​

https://www.python.org/about/gettingstarted/

​

https://www.learnpython.org/

​

Online help pages for Python concepts that read like a conversation, detailed explanations.

​

https://www.afterhoursprogramming.com/tutorial/python/

​

http://www.alan-g.me.uk/l2p/index.htm

​

Websites that offer practice problems on Python Programming Techniques.

​

https://www.javatpoint.com/python-programs

​

https://www.tutorialgateway.org/python-programming-examples/

​

https://www.sanfoundry.com/python-problems-solutions/

​

https://wiki.python.org/moin/SimplePrograms

​

https://www.programiz.com/python-programming/examples

Mathematica

If new to Wolfram|Alpha and Mathematica, would suggest starting here on the Wolfram|Alpha website with a tour of how the language works and what you can do and create with Mathematica.

​

https://www.wolframalpha.com/tour/

​

Online Video Series by Wolfram|Alpha that explains Mathematica and its basic functions.

​

https://www.wolfram.com/broadcast/screencasts/mathematica/online/

​

The Mathematica Cookbook is a textbook that introduces you to how Mathematica works and some basic tasks you can create with Mathematica.

​

https://math.bme.hu/~jtoth/Mma/Mathematica%20Cookbook.pdf

​

A YouTube video tutorial that introduces the basics of Mathematica with examples, good for beginner programmers as goes over if statements, arrays, etc in Mathematica.

​

https://www.youtube.com/watch?v=Zp1EV7ytSnA

​

An online page that lists many tutorials for Mathematica in many mediums such as book and videos.

​

https://www.nyit.edu/files/service_central/ServiceCentral_SoftwareDownloads_ResourcesForMathematica.pdf

​

Short Introductory Seminar Notes on Mathematica and its simple uses, good read for building a foundation of Mathematica to then expand on.

​

http://www2.eng.ox.ac.uk/~labejp/Seminar/Mathematica/MathematicaSeminarNotes.pdf

​

http://minerva.union.edu/labrakes/MathematicaIntro.pdf

©2019 by Isabelle Terry 

bottom of page