AMS 325, Computing and Programming Fundamentals in AMS
Introduction to programming in MATLAB and Python, including scripting, basic data structures, algorithms, scientific computing, and software engineering. No previous programming experience is required. Homework projects will focus on using computation to solve linear algebra, data analysis, and other mathematical problems. This is a project-based, 3-credit course. The content is divided into three parts.
Prerequisite: AMS 210 or MAT 211; AMS major
Offered every spring, summer and fall starting with fall 2021.
Course Materials for Fall 2021:
None. Recommended reading materials will be provided.
The objective of this course is to introduce the programming skills, including scripting in MATLAB and Python, as well as object-oriented programming using Python, and to introduce some basic data structures, data analysis tools, and best practices in software engineering for scientific computing, including documentation, debugging and testing, version control, etc.
The key learning outcomes include the following:
- Proficiency in MATLAB programming: including scripting, procedural programming, GUI, debugging, plotting, profiling, and some commonly used toolboxes
- Proficiency with Python programming, including scripting, object-oriented programming, and commonly used Python libraries
- Best practices in scientific software engineering, including code modularization, debugging and testing, version control, documentation, performance optimization, etc.