Spring, odd-numbered years (1/2 semester, 1/2 credit)
Course Directors: Kim Sharp and Greg Van Duyne
Number of Lectures: 12
Description: An introductory course on programming and algorithms with an emphasis on applications to biophysics; Brief lectures followed by extensive hands on programming
Prerequisites: Familarity with Unix recommended
Course materials: Handouts, examples of programs on electronic medium
Course requirement: Students attend brief introductory lectures on topics, followed by hands on programming
How students are evaluated: Evaluation of programs written for homework and for final project.
Topics:
Introduction to Unix, text editing
Introduction to Python
Elements of programming: Control structures
Elements of programming: Data structures
Elements of programming:
Special cases/end conditions
Elements of programming: I/O
Numerical/computational programming
Handling, parsing of database files
Algorithms: Sampling, random and Monte Carlo
Algorithms: Integration
Algorithms: Optimizations
Algorithms: Geometry operations