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
12/14 12/15 12/16 12/17 12/18

## 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 7

Homework 3, M10/5 23:59
PDF: Frequency response.

### Week 8

Machine Problem 3, M10/12 23:59
Designing FIR filters to extract alpha, beta, low-gamma, and high-gamma bands from EEG.
Details will show up here.

### Week 9

Homework 4, M10/19 23:59
Z transform.
Details will show up here.

### Week 10

Machine Problem 4, M10/26 23:59
Removing 60Hz hum and constant drift using notch filters.
Details will show up here.
Midterm 2, R10/29 12:30
Details will show up here.

### Week 12

Homework 5, M11/09 23:59
Autocorrelation and cepstrum.
Details will show up here.

### Week 13

Machine Problem 5, M11/16 23:59
Measuring periodicity and inter-period variability of EKG.
Details will show up here.

### Week 14

Homework 6, M11/30 23:59
Linear prediction
Details will show up here.

### Week 15

Machine Problem 6, M12/7 23:59
LPC speech synthesis.
Details will show up here.

### Week 16

Final Exam
Date TBA
Details will show up here.