Teaching Philosophy
Our approach revitalizes undergraduate teaching through the seamless integration of computational methods into the physics curriculum. We believe that modern science education must equip students with the tools to solve problems that cannot be tackled by analytical methods alone — preparing them for research and industry alike.
Computational physics courses at the university level provide students with the tools to explore systems that cannot be solved by analytical methods alone. These courses bridge the gap between theoretical physics and real-world applications, teaching students how to simulate physical phenomena using numerical techniques. From classical mechanics to quantum systems, computational approaches allow learners to visualize complex behaviors and test theoretical predictions in ways that traditional pen-and-paper methods cannot match. Students gain hands-on experience with programming, algorithm design, and data analysis, all within the context of physical problems. This integration of computing into the physics curriculum prepares future scientists to tackle research questions that span multiple scales of space and time.
Modern computational physics education emphasizes the development of practical coding skills alongside physical intuition. Students learn to implement algorithms that solve differential equations, perform Monte Carlo simulations, and analyze large datasets generated by experiments or simulations. The curriculum often covers methods for solving problems in statistical mechanics, electromagnetism, and quantum mechanics, with an emphasis on understanding both the mathematics and the computational implementation. By working on realistic projects, students discover how to validate their results, estimate numerical errors, and optimize code for performance. This hands-on approach ensures that graduates are well-prepared for research environments where computation plays a central role in discovery.
The computational methods taught in these courses extend far beyond academic research into practical applications across many fields. Techniques developed for simulating physical systems are directly applicable to problems in engineering, finance, climate science, and materials design. Students learn to use computational tools to model fluid flow, study the properties of materials at the atomic scale, and simulate the behavior of complex systems such as porous media or dense matter. This versatility makes computational physics an increasingly valuable component of undergraduate education, giving students a skill set that remains relevant regardless of their eventual career path. The ability to translate physical principles into working simulations is a powerful and transferable capability.
Courses in computational physics are designed to be accessible to students at various levels of programming experience, starting with foundational concepts and building toward more advanced topics. The curriculum typically progresses from simple numerical methods to sophisticated simulation techniques, with each new concept reinforced through practical exercises and project work. Students learn not only how to write code but also how to think algorithmically about physical problems, breaking down complex systems into manageable computational steps. The collaborative nature of many course projects mirrors the teamwork found in research laboratories and industry settings. This structured yet flexible approach ensures that all students can develop confidence in their computational abilities while deepening their understanding of physics.
Computational Neuroscience
An introduction to the principles of neural computation, covering models of single neurons, synaptic plasticity, and network dynamics. Students gain hands-on experience simulating neural systems using high-performance computing techniques.
Biological Physics
Explores the physical principles underlying biological systems, from molecular motors to membrane biophysics. The course emphasizes computational modeling as a bridge between theory and experimental data.
Computational Physics
A foundational course introducing numerical methods for solving differential equations, Monte Carlo simulations, and matrix operations. Students learn to apply these techniques to classical and quantum mechanical problems.
Computational Physics II
Advanced topics in computational physics, including many-body methods, molecular dynamics, and electronic structure calculations. Projects draw on the group's research into quantum mechanical and statistical mechanics systems.
Courses are taught by faculty and researchers from the Computational Physics group. Meet the people behind the teaching →