Mon Tue Wed Thu Fri
8/24 8/25 8/26 8/27 8/28
8/31 9/1 9/2 9/3 9/4
9/7 9/8 9/9 9/10 9/11
9/14 9/15 9/16 9/17 9/18
9/21 9/22 9/23 9/24 9/25
9/28 9/29 9/30 10/1 10/2
10/5 10/6 10/7 10/8 10/9
10/12 10/13 10/14 10/15 10/16
10/19 10/20 10/21 10/22 10/23
10/26 10/27 10/28 10/29 10/30
11/2 11/3 11/4 11/5 11/6
11/9 11/10 11/11 11/12 11/13
11/16 11/17 11/18 11/19 11/20
11/23 11/24 11/25 11/26 11/27
11/30 12/1 12/2 12/3 12/4
12/7 12/8 12/9 12/10 12/11

## Syllabus: ECE 401

An introduction to signal analysis and processing methods for advanced undergraduates or graduate students in the biological, physical, social, engineering and computer sciences. Signal analysis methods and their capabilities, weaknesses, and artifacts with an emphasis on their practical application. Significant hands-on processing and interpretation of real data using python. 4 undergraduate hours. 4 graduate hours. Credit is not given for both ECE 310 and ECE 401. Prerequisite: MATH 220. Assignments | Staff | Resources

• 15%: Written homework
• 45%: Machine problems
• 10% each Midterm
• 20% Final Exam
• Up to 1% extra credit for answering the questions of other students on piazza.

Grade cutoffs are approximately as follows, where mu=class average, sigma=standard deviation.

• min(90%, mu+0.25sigma): A-, min(94%, mu+0.5sigma): A, min(99%, mu+1.5sigma): A+
• min(75%, mu-sigma): B-, min(80%, mu-0.75sigma): B, min(85%, mu): B+
• min(60%, mu-2.25sigma): C-, min(65%, mu-2sigma): C, min(70%, mu-1.25sigma): C+
• min(45%, mu-3sigma): D-, min(50%, mu-2.75sigma): D, min(55%, mu-2.5sigma): D+

### Assignments

#### HomeWork

Written homework will be due every two weeks; write your answers by hand, photograph, and submit to Gradescope.

Directory of homework assignments: HW1 | HW2 | HW3 | HW4 | HW5 | HW6

#### Machine Problems

Machine problems will be in python, once every two weeks, and will be autograded on Gradescope.

Directory of machine problems: MP1 | MP2 | MP3 | MP4 | MP5 | MP6

#### Late Policy

HW and MPs are accepted up to 7 days late on Gradescope, with only a 5% penalty. If you're more than 7 days late, you'll have to submit by e-mail; in general, credit of up to 50% is possible for any submission, at any time before the end of the semester.

Extensions will not be given for software that didn't work; you should have checked that in advance. Extensions are possible in case of illness, on a case-by-case basis.

You are encouraged to consult with other students in your attempts to solve any of the MPs. The only thing that’s expressly forbidden is sharing code.

• Do not: share code. Don’t send lines of python by text message or e-mail, don’t post it on your blog, don’t share it on github, don’t post it in piazza.
• Do: consult with other students about how to solve a problem. You can discuss code on a teleconference, as long as nobody's copying the code verbatim. You are encouraged to share pseudo-code and natural language descriptions of algorithms. You are allowed to send chat messages etc. with pseudo-code – just don’t send actual lines of python.

#### Exams

Exams will be open-book. They will be taken on Compass. They will be timed, and scheduled at the regular lecture time, unless you notify me in advance of a conflict. Sample exams will be available, in advance, for study.

Directory of exams: Midterm 1 | Midterm 2 | Final

### Staff

#### Instructor

Mark Hasegawa-Johnson

#### Lectures and Office Hours

Lectures are Tuesdays and Thursdays, 12:30-2:00pm. Office hours are Thursdays, 5-6pm. URLs for both are provided on the course Compass page, and on piazza.

Lectures will be recorded, and posted to MediaSpace after class. If you have trouble accessing the Mediaspace video, please send me e-mail.

### Resources

#### Text

DSP First by McClellan, Schafer and Yoder. I've bought this book (twice), and consider it the best introductory text on signal processing for people who've never studied signal processing before. I will not require problems from the text, so you're not required to buy it, but I will probably recommend study problems from the text.

#### Software

• Python and NumPy:

## Lectures, Homework, MPs and Exams

### Week 1

Lecture 1, T8/25 12:30
Slides: Integration, Summation, and Complex Numbers
Ad for a related course that some of you may find interesting
Lecture 2, T8/27 12:30
Slides: Convolution

### Week 2

Homework 1, M8/31 23:59
PDF: Review of integration, summation, and complex numbers (a solutions)
Lecture 3, T9/1 12:30
Slides: Sines, Cosines, and Complex Exponentials
Lecture 4, R9/3 12:30
Slides: Spectrum

### Week 3

Machine Problem 1, M9/7 23:59
Web page: Image smoothing and edge detection
Lecture 5, T9/8 12:30
Slides: Fourier Series and DFT
Lecture 6, R9/10 12:30
Slides: Music

### Week 4

Homework 2, M9/14 23:59
Cosines, Phasors and Spectrum: homework, solution.
Lecture 7, T9/15 12:30
Slides: Frequency Response
Lecture 8, R9/17 12:30
Slides: Filtering Periodic Signals

### Week 5

Monday 9/21: Machine Problem 2, due 23:59
Web page: Music analysis and synthesis
Extra credit: group assignment
Tuesday 9/22: Exam 1 Review
We will do some of the examples on Compass.
Wednesday 9/23: Extra Office Hours
I will hold extra office hours 5-6pm, in case of any last-minute questions before the exam.
Thursday 9/24: Midterm 1, R9/24 12:30
The midterm exam will be a timed, open-book, open-notes, open-internet exam, held on Compass. It will appear in your Compass folder at 12:15PM on Thursday 9/24, and will be available until 2:45PM; you may choose any 90-minute period during that time in which to take the exam. You may type your answers in any mixture of plaintext pseudo-math or pseudo-python syntax; as long as I can understand what you mean, you will get the points. Your answer should contain no integrals or infinite-length sums, but otherwise, you do not need to simplify explicit numerical expressions. Examples are available in the two sample exams that are currently available on Compass; you may also find it useful to look at exams from past semesters, though they are in a different format. Reference solutions to all practice exam problems are available on Compass after you submit your answers, and will also be posted on the course web page on Tuesday 9/22 after lecture. Piazza is open now for questions about the practice exam, and will be open, during the real exam, for private questions to the instructor.
Thursday 9/24: No office hours

### Week 6

Lecture 9, T9/29 12:30
Slides: Discrete-Time Fourier Transform
Lecture 10, R10/1 12:30
Slides: Ideal Filters and Useful Filters

### Week 7

Homework 3, M10/5 23:59
Frequency response. assignment, solutions.
Lecture 11, T10/6 12:30
Slides: Z Transform
Lecture 12, R10/8 12:30
Slides: Autoregressive Filters

### Week 8

Machine Problem 3, M10/12 23:59
Assignment Page: Designing FIR filters to extract alpha, beta, low-gamma, and high-gamma bands from EEG.
Lecture 13, T10/13 12:30
Slides: Block Diagrams and Inverse Z Transform
Lecture 14, R10/15 12:30
Slides: Notch Filters

### Week 9

Homework 4, M10/19 23:59
Z transform. assignment, solutions.
Lecture 15, T10/20 12:30
Slides: Second-Order All-Pole Filters
Lecture 16, R10/22 12:30
Slides: Linear Prediction

### Week 10

Machine Problem 4, M10/26 23:59
Overview page: Removing 60Hz hum using notch filters.
Midterm Review, T10/27 12:30
See the sample exams on Compass.
Wednesday 10/28: Extra Office Hours
I will hold extra office hours 5-6pm, in case of any last-minute questions before the exam.
Midterm 2, R10/29 12:30
The midterm exam will be a timed, open-book, open-notes, open-internet exam, held on Compass. It will appear in your Compass folder at 12:15PM on Thursday 10/29, and will be available until 3:15PM; you may choose any 90-minute period during that time in which to take the exam. You may type your answers in any mixture of plaintext pseudo-math or pseudo-python syntax. Your answer should contain no integrals or infinite-length sums, but otherwise, you do not need to simplify explicit numerical expressions. Examples are available in the two sample exams that are currently available on Compass; you may also find it useful to look at exams from past semesters, though they are in a different format. Reference solutions to all practice exam problems are available on Compass after you submit your answers. Piazza will be open during the exam for private questions to the instructor.

### Week 11

T11/03
No Lecture!
R11/05
Lecture 17: LPC-10 Speech Synthesis

### Week 12

Homework 5, M11/09 23:59
Linear prediction and second-order filters: PDF, solutions.
T 11/10
Lecture 18: Power Spectrum
R 11/12
Lecture 19: Autocorrelation

### Week 13

Machine Problem 5, M11/16 23:59
Linear prediction: mp5overview page.
T 11/17
Lecture 20: Wiener Filter
R 11/19
Lecture 21: Wiener Filter, Part 2

### Week 14

Homework 6, M11/30 23:59
Autocorrelation and Power Spectrum: PDF, solutions.
T 12/1
Lecture 22: Aliasing in Time: the DFT
R 12/3
Lecture 23: Aliasing in Frequency: the Sampling Theorem

### Week 15

Machine Problem 6, M12/7 23:59
Electrocardiogram: Assignment page
Final Exam F12/11 13:30-16:30
Sample exam is currently available on Compass.
The actual final exam will be available from Friday 12/11 at 13:00 until Friday 12/11 at 19:00; you may choose any 180-minute period within that span for your exam.