CSP Community Spotlight: Gold Star

“Don’t chase marks. Chase mastery. Marks follow.”
–Author Unknown

I wear a lot of hats and play a lot of roles. I’m a husband, father, academic author, writer (debatable), engineer, manager, director, and researcher. I’ve recently accepted the difficult roles of coach and mentor. I’m a cook, I’m a reader, I’m a basketball fanatic.

But, in the modern parlance, I identify as a teacher.

That’s why I spent hundreds of hours working at the Tutorial Center at SRJC, taught computer familiarization to East-Bay high-school students in the 80s, did lots of EE TA jobs in graduate school, and taught multiple engineering classes at NPS in the aughts.

And it is a big part of the CSP Blog too. Yes, I lecture you at length on understanding and using the statistics of communication signals ™, but the real work, the real progress for both of us, is found in your comments and my replies thereto. The actual teaching and learning part. That’s the call-and-response, the Q-n-A, the “Comments Section” of the CSP Blog.

What does a teacher want? What’s the goal? What is our satisfying outcome? There are several answers, I suppose, to that, but mine is old-fashioned: understanding. Not career preparedness, not information transfer, not high grades (marks), not inculcation of values. All those can be good. But student understanding is my goal.

We also want good students. Students that try for deep understanding and not just the desired grade outcome. I’ll say it out loud: we want Star Students.

That brings us to a website I want to highlight that was created by a former student of sorts named Mike Markowski.

Mike has put together some python code that implements key CSP estimators, such as the frequency-smoothing method, the time-smoothing method, the FFT accumulation method, and the strip spectral correlation algorithm. He has also included some code that creates signals, or reads in your signals, and makes good estimator-output plots.

Near and dear to my heart, he further provides code that creates a LaTeX report containing the plots and some text, and actually compiles the LaTeX file, producing a pdf file at the end of the processing. Which you can then customize and carry forward. And you should! LaTeX is the worldwide professional standard typesetting software (Still. Forever?) for mathematics, science, academic publishing, etc. As I’ve mentioned before, I chose WordPress.com for the CSP Blog because on WordPress.com one typesets equations with LaTeX commands–which commands I already know.

Here are some figures produced by running Mike’s code. They are meant to match various figures on the CSP Blog (can you find them?). To do that, the code uses the CSP Blog mascot signal: rectangular-pulse BPSK with symbol rate 1/10 and carrier-frequency offset of 0.05.

Figure 1. From Mike’s python code. A comparison of the TSM and FSM for the CSP Blog mascot signal.
Figure 2. From Mike’s python code. Estimates of the spectral coherence function, non-conjugate and conjugate, for the CSP Blog mascot signal.
Figure 3. From Mike’s python code. A comparison of power-spectrum estimates from the TSM, SSCA, and FAM algorithms.

Here is a quick look at the pdf output from Mike’s LaTeX processor (very cool).

Figure 4. From Mike’s python code. A screenshot of the front page of the automatically generated report pdf file.
Figure 5. From Mike’s python code. The introduction portion of the automatically generated report pdf file.

Mike’s CSP code can be found here.

Thank you Mike!

Author: Chad Spooner

I'm a signal processing researcher specializing in cyclostationary signal processing (CSP) for communication signals. I hope to use this blog to help others with their cyclo-projects and to learn more about how CSP is being used and extended worldwide.

Leave a Comment, Ask a Question, or Point out an Error

Discover more from Cyclostationary Signal Processing

Subscribe now to keep reading and get access to the full archive.

Continue reading