PHYS 4480

PHYS 4480

Course information provided by the Courses of Study 2022-2023.

The course covers three engaging subjects at once: (1) the standard suite of powerful numerical methods, and the mathematics behind them; (2) Julia, a modern, new computer language ideally suited for scientific computing with far greater efficiency and flexibility than matlab or python; (3) as a example application of the preceding powerful tools, students will construct for themselves, through a series of structured assignments, ab initio electronic-structure software to solve the many-body Schrodinger equation for atoms, molecules, and solids. As the assignments proceed, students will be introduced to more and more aspects of Julia until a working knowledge of the language is built up organically. The assignments will also guide students through best practices for scientific software organization and debugging. The course also includes a module on how to optimize computer code to approach the absolute limits of computational performance through awareness of the computation cost of basic operations, inner loop optimization, proper memory management, cache optimization, and the use of profiling tools.

When Offered Fall.

Distribution Category (PBS-AS, PHS-AS, SDS-AS)

Comments Assumes familiarity with standard mathematical methods for physical sciences and engineering (basic calculus, differential equations, and linear algebra) and with some form of computer programming (e.g., Python, Matlab, etc.). No physics background beyond electricity and magnetism will be assumed, although familiarity with quantum mechanics at the level of an introductory course will be useful.

View Enrollment Information

Syllabi: none
  •   Regular Academic Session.  Combined with: ASTRO 7690PHYS 7680

  • 3 Credits Sat/Unsat

  • 18253 PHYS 4480   LEC 001

  • Instruction Mode: In Person