I'm about to begin my third year of a physics major and I want to do units that will best prepare me for honours and post-grad studies in theoretical particle physics and/or particle cosmology. My core physics units will cover quantum mechanics, classical mechanics, electrodynamics, special relativity, statistical physics, nuclear physics, elementary particles and computational physics. In addition to these units, in first semester I can choose any two of the following units: - photon physics (part of an experimental physics major, covering optics, photonics and synchrotron physics) - relativity and cosmology (general relativity, cosmology and black holes) - partial differential equations - computational mathematics (intro to numerical computing, using MATLAB) - real analysis - analysis and topology (focusing on Banach spaces, this unit would require that I also do real analysis) In second semester I can choose any two of the following units: - condensed matter physics (an experimental physics unit) - ordinary differential equations (which also develops skills using MATLAB) - complex analysis - differential geometry I've done a bit on ODE's and PDE's last year, and some linear algebra, but I have no experience with MATLAB or any other programming/computational software. Basically, from the above units my main quandary is:- Should I focus on just doing more physics units, even if they focus on areas of physics outside my main interest? Or, should I focus on pure maths units (like topology and differential geometry) that will relate to graduate theoretical physics studies? Or, should I focus on applied maths units (PDE's and ODE's) to get my computational skills up. If anyone has some informed advice, it would be extremely appreciated.