Physics and Computer Science Honours (B.Sc.) (81 credits)
Offered by: Physics (Faculty of Science)
Degree: Bachelor of Science
Program credit weight: 81
Program Description
This program provides essential background in physics and computer science at a level sufficient to pursue courses at the 400- and 500-level in either discipline. The program is intended to be flexible to allow students to take either more physics or more computer science courses at the advanced level.
Students entering this Honours program should have high standing in mathematics, physics, and computer science.
To graduate with an Honours degree, a student must have, at time of graduation, a CGPA of at least 3.0 in the required and complementary courses of the program, as well as an overall CGPA of at least 3.0
The program may completed in 78 or 81 credits.
Note: COMP 202 Foundations of Programming.—or an equivalent introduction to computer programming course— is a program prerequisite. U0 students may take COMP 202 Foundations of Programming. as a Freshman Science course; new U1 students should take it as an elective in their first semester.
Degree Requirements — B.Sc.
This program is offered as part of a Bachelor of Science (B.Sc.) degree.
To graduate, students must satisfy both their program requirements and their degree requirements.
- The program requirements (i.e., the specific courses that make up this program) are listed under the Course Tab (above).
- The degree requirements—including the mandatory Foundation program, appropriate degree structure, and any additional components—are outlined on the Degree Requirements page.
Students are responsible for ensuring that this program fits within the overall structure of their degree and that all degree requirements are met. Consult the Degree Planning Guide on the SOUSA website for additional guidance.
Note: For information about Fall 2025 and Winter 2026 course offerings, please check back on May 8, 2025. Until then, the "Terms offered" field will appear blank for most courses while the class schedule is being finalized.
Required Courses (63 credits)
Course | Title | Credits |
---|---|---|
COMP 206 | Introduction to Software Systems. | 3 |
Introduction to Software Systems. Terms offered: this course is not currently offered. Comprehensive overview of programming in C, use of system calls and libraries, debugging and testing of code; use of developmental tools like make, version control systems. | ||
COMP 250 | Introduction to Computer Science. | 3 |
Introduction to Computer Science. Terms offered: this course is not currently offered. Mathematical tools (binary numbers, induction,recurrence relations, asymptotic complexity,establishing correctness of programs). Datastructures (arrays, stacks, queues, linked lists,trees, binary trees, binary search trees, heaps,hash tables). Recursive and non-recursivealgorithms (searching and sorting, tree andgraph traversal). Abstract data types. Objectoriented programming in Java (classes andobjects, interfaces, inheritance). Selected topics. | ||
COMP 252 | Honours Algorithms and Data Structures. | 3 |
Honours Algorithms and Data Structures. Terms offered: this course is not currently offered. The design and analysis of data structures and algorithms. The description of various computational problems and the algorithms that can be used to solve them, along with their associated data structures. Proving the correctness of algorithms and determining their computational complexity. | ||
COMP 273 | Introduction to Computer Systems. | 3 |
Introduction to Computer Systems. Terms offered: this course is not currently offered. Number representations, combinational and sequential digital circuits, MIPS instructions and architecture datapath and control, caches, virtual memory, interrupts and exceptions, pipelining. | ||
COMP 302 | Programming Languages and Paradigms. | 3 |
Programming Languages and Paradigms. Terms offered: this course is not currently offered. Programming language design issues and programming paradigms. Binding and scoping, parameter passing, lambda abstraction, data abstraction, type checking. Functional and logic programming. | ||
COMP 350 | Numerical Computing. | 3 |
Numerical Computing. Terms offered: this course is not currently offered. Computer representation of numbers, IEEE Standard for Floating Point Representation, computer arithmetic and rounding errors. Numerical stability. Matrix computations and software systems. Polynomial interpolation. Least-squares approximation. Iterative methods for solving a nonlinear equation. Discretization methods for integration and differential equations. | ||
MATH 240 | Discrete Structures. | 3 |
Discrete Structures. Terms offered: this course is not currently offered. Introduction to discrete mathematics and applications. Logical reasoning and methods of proof. Elementary number theory and cryptography: prime numbers, modular equations, RSA encryption. Combinatorics: basic enumeration, combinatorial methods, recurrence equations. Graph theory: trees, cycles, planar graphs. | ||
MATH 247 | Honours Applied Linear Algebra. | 3 |
Honours Applied Linear Algebra. Terms offered: this course is not currently offered. Matrix algebra, determinants, systems of linear equations. Abstract vector spaces, inner product spaces, Fourier series. Linear transformations and their matrix representations. Eigenvalues and eigenvectors, diagonalizable and defective matrices, positive definite and semidefinite matrices. Quadratic and Hermitian forms, generalized eigenvalue problems, simultaneous reduction of quadratic forms. Applications. | ||
MATH 248 | Honours Vector Calculus. 1 | 3 |
Honours Vector Calculus. Terms offered: this course is not currently offered. Partial derivatives and differentiation of functions in several variables; Jacobians; maxima and minima; implicit functions. Scalar and vector fields; orthogonal curvilinear coordinates. Multiple integrals; arc length, volume and surface area. Line and surface integrals; irrotational and solenoidal fields; Green's theorem; the divergence theorem. Stokes' theorem; and applications. | ||
MATH 249 | Honours Complex Variables. | 3 |
Honours Complex Variables. Terms offered: this course is not currently offered. Functions of a complex variable; Cauchy-Riemann equations; Cauchy's theorem and consequences. Taylor and Laurent expansions. Residue calculus; evaluation of real integrals; integral representation of special functions; the complex inversion integral. Conformal mapping; Schwarz-Christoffel transformation; Poisson's integral formulas; applications. Additional topics if time permits: homotopy of paths and simple connectivity, Riemann sphere, rudiments of analytic continuation. | ||
MATH 314 | Advanced Calculus. 1 | 3 |
Advanced Calculus. Terms offered: this course is not currently offered. Derivative as a matrix. Chain rule. Implicit functions. Constrained maxima and minima. Jacobians. Multiple integration. Line and surface integrals. Theorems of Green, Stokes and Gauss. Fourier series with applications. | ||
MATH 325 | Honours Ordinary Differential Equations. | 3 |
Honours Ordinary Differential Equations. Terms offered: this course is not currently offered. First and second order equations, linear equations, series solutions, Frobenius method, introduction to numerical methods and to linear systems, Laplace transforms, applications. | ||
PHYS 241 | Signal Processing. | 3 |
Signal Processing. Terms offered: this course is not currently offered. Linear circuit elements, resonance, network theorems, diodes, transistors, amplifiers, feedback, integrated circuits. | ||
PHYS 251 | Honours Classical Mechanics 1. | 3 |
Honours Classical Mechanics 1. Terms offered: this course is not currently offered. Newton's laws, work energy, angular momentum. Harmonic oscillator, forced oscillations. Inertial forces, rotating frames. Central forces, centre of mass, planetary orbits, Kepler's laws. | ||
PHYS 253 | Thermal Physics. | 3 |
Thermal Physics. Terms offered: this course is not currently offered. Energy, work, heat; first law. Temperature, entropy; second law. Absolute zero; third law. Equilibrium, equations of state, gases, liquids, solids, magnets; phase transitions. | ||
PHYS 257 | Experimental Methods 1. | 3 |
Experimental Methods 1. Terms offered: this course is not currently offered. Introductory laboratory work and data analysis as related to mechanics, optics and thermodynamics. Introduction to computers as they are employed for laboratory work, for data analysis and for numerical computation. Previous experience with computers is an asset, but is not required. | ||
PHYS 258 | Experimental Methods 2. | 3 |
Experimental Methods 2. Terms offered: this course is not currently offered. Advanced laboratory work and data analysis as related to mechanics, optics and thermodynamics. Computers will be employed routinely for data analysis and for numerical computation, and, particularly, to facilitate the use of Fourier methods. | ||
PHYS 350 | Honours Electricity and Magnetism. | 3 |
Honours Electricity and Magnetism. Terms offered: this course is not currently offered. Fundamental laws of electric and magnetic fields in both integral and differential form. | ||
PHYS 352 | Honours Electromagnetic Waves. | 3 |
Honours Electromagnetic Waves. Terms offered: this course is not currently offered. Vector and scalar potentials; plane waves in homogeneous media; refraction and reflection; guided waves; radiation from simple systems; dipole and quadrupole radiation; introduction to fields of moving charges; synchrotron radiation; Bremsstrahlung. | ||
PHYS 357 | Honours Quantum Physics 1. | 3 |
Honours Quantum Physics 1. Terms offered: this course is not currently offered. Experimental basis for quantum mechanics; wave-packets; uncertainty principle. Hilbert space formalism. Schrodinger equation: eigenvalues and eigenvectors: applications to 1-d problems including the infinite and finite potential wells and the harmonic oscillator. Tunneling. Time independent perturbation theory. | ||
PHYS 362 | Statistical Mechanics. | 3 |
Statistical Mechanics. Terms offered: this course is not currently offered. Quantum states and ensemble averages. Fermi-Dirac, Bose-Einstein and Boltzmann distribution functions and their applications. | ||
PHYS 457 | Honours Quantum Physics 2. | 3 |
Honours Quantum Physics 2. Terms offered: this course is not currently offered. Angular momentum and spin operators. Operator methods in quantum mechanics. Coupling of spin and angular momenta. Variational principles and elements of time dependent perturbation theory (the Golden Rule). Solution of the Schrodinger equation in three dimensions. Applications to the hydrogen and helium atoms and to simple problems in atomic and molecular physics. |
- 1
Note: The student must then take MATH 314 Advanced Calculus. in their second semester instead of MATH 248 Honours Vector Calculus., if scheduling requires it.
Complementary Courses (15 credits)
At least 6 of the 15 complementary credits must come from a course at the 400- or 500-level (excluding COMP 400 Project in Computer Science and PHYS 479 Physics Research Project.), and of these at least 3 must be from a COMP course.
0-3 credits from:
Course | Title | Credits |
---|---|---|
MATH 222 | Calculus 3. 1 | 3 |
Calculus 3. Terms offered: Summer 2025 Taylor series, Taylor's theorem in one and several variables. Review of vector geometry. Partial differentiation, directional derivative. Extreme of functions of 2 or 3 variables. Parametric curves and arc length. Polar and spherical coordinates. Multiple integrals. |
- 1
Note: A student who has not taken MATH 222 Calculus 3. (or equivalent) prior to entering the program must take it in their first semester, increasing the program credits from 78 to 81.
3-4 credits from:
Course | Title | Credits |
---|---|---|
COMP 400 | Project in Computer Science | 4 |
Project in Computer Science Terms offered: this course is not currently offered. A research project in any area of computer science, involving a programming effort and/or a theoretical investigation, and supervised by a faculty member in the School of Computer Science. Final written report required. | ||
PHYS 479 | Physics Research Project. | 3 |
Physics Research Project. Terms offered: this course is not currently offered. A supervised research project. |
6 or 7 credits selected from:
Course | Title | Credits |
---|---|---|
COMP 303 | Software Design. | 3 |
Software Design. Terms offered: this course is not currently offered. Principles, mechanisms, techniques, and tools for object-oriented software design and its implementation, including encapsulation, design patterns, and unit testing. | ||
COMP 310 | Operating Systems. | 3 |
Operating Systems. Terms offered: this course is not currently offered. Control and scheduling of large information processing systems. Operating system software - resource allocation, dispatching, processors, access methods, job control languages, main storage management. Batch processing, multiprogramming, multiprocessing, time sharing. | ||
COMP 330 | Theory of Computation. | 3 |
Theory of Computation. Terms offered: this course is not currently offered. Finite automata, regular languages, context-free languages, push-down automata, models of computation, computability theory, undecidability, reduction techniques. | ||
COMP 362 | Honours Algorithm Design. | 3 |
Honours Algorithm Design. Terms offered: this course is not currently offered. Basic algorithmic techniques, their applications and limitations. Problem complexity, how to deal with problems for which no efficient solutions are known. |
Any COMP course at the 400- or 500-level (excluding COMP 400 Project in Computer Science) (3 or 4 credits)
3-4 credits from:
Course | Title | Credits |
---|---|---|
MATH 323 | Probability. | 3 |
Probability. Terms offered: Summer 2025 Sample space, events, conditional probability, independence of events, Bayes' Theorem. Basic combinatorial probability, random variables, discrete and continuous univariate and multivariate distributions. Independence of random variables. Inequalities, weak law of large numbers, central limit theorem. | ||
MATH 340 | Discrete Mathematics. | 3 |
Discrete Mathematics. Terms offered: this course is not currently offered. Discrete Mathematics and applications. Graph Theory: matchings, planarity, and colouring. Discrete probability. Combinatorics: enumeration, combinatorial techniques and proofs. | ||
PHYS 351 | Honours Classical Mechanics 2. | 3 |
Honours Classical Mechanics 2. Terms offered: this course is not currently offered. Rigid bodies, angular momentum, gyroscope, moment of inertia, principal axes, Euler's equations. Coupled oscillations and normal modes. Lagrangian mechanics and applications. Hamiltonian mechanics. Topics in advanced analytical mechanics. | ||
PHYS 359 | Advanced Physics Laboratory 1. | 3 |
Advanced Physics Laboratory 1. Terms offered: this course is not currently offered. Advanced level experiments in physics including quantum effects and some properties of condensed matter physics and modern physics. | ||
PHYS 404 | Climate Physics. | 3 |
Climate Physics. Terms offered: this course is not currently offered. This course covers the essentials of climate physics through the lens of one-dimensional, vertical atmospheric models. This includes shortwave and longwave radiative transfer, convection, phase changes, clouds, greenhouse gases, and atmospheric escape. This is an adequate level of detail for understanding Earth's climate, paleoclimate, anthropogenic climate change, or pursing studies of Solar System planets and extrasolar planets. | ||
PHYS 432 | Physics of Fluids. | 3 |
Physics of Fluids. Terms offered: this course is not currently offered. The physical properties of fluids. The kinematics and dynamics of flow. The effects of viscosity and turbulence. Applications of fluid mechanics in biophysics, geophysics and engineering. | ||
PHYS 434 | Optics. | 3 |
Optics. Terms offered: this course is not currently offered. Fundamental concepts of optics, including applications and modern developments. Light propagation in media; geometric optics and optical instruments; polarization and coherence properties of light; interference and interferometry; diffraction theory and applications in spectrometry and imaging; Gaussian beams, Fourier optics and photonic band structure. A laboratory component provides hands-on experience in optical setup design, construction and testing of concepts introduced in lectures. | ||
PHYS 469 | Advanced Physics Laboratory 2. | 3 |
Advanced Physics Laboratory 2. Terms offered: this course is not currently offered. Advanced level experiments in physics including quantum effects and some properties of condensed matter physics and modern physics. |
Any number of PHYS courses at the 500 level (3 credits each)
Any number of COMP courses at the 400 or 500-level (excluding COMP 400) (3 or 4 credits each)