Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/mathworks-teaching-resources/fourier-analysis

Learn Fourier analysis using live scripts and apps.
https://github.com/mathworks-teaching-resources/fourier-analysis

cwm fourier-analysis matlab matlab-live-script

Last synced: 4 days ago
JSON representation

Learn Fourier analysis using live scripts and apps.

Awesome Lists containing this project

README

        

# Fourier Analysis

[![View on File Exchange](https://www.mathworks.com/matlabcentral/images/matlab-file-exchange.svg)](https://www.mathworks.com/matlabcentral/fileexchange/106725-fourier-analysis) or [![Open in MATLAB Online](https://www.mathworks.com/images/responsive/global/open-in-matlab-online.svg)](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=README.mlx)

[![MATLAB Versions Tested](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FMathWorks-Teaching-Resources%2FFourier-Analysis%2Frelease%2FImages%2FTestedWith.json)](https://MathWorks-Teaching-Resources.github.io/Fourier-Analysis)

**Curriculum Module**

_Created with R2021b. Compatible with R2024a and later releases._

# Information

This curriculum module contains interactive [MATLAB® live scripts](https://www.mathworks.com/products/matlab/live-editor.html) and [MATLAB® apps](https://www.mathworks.com/products/matlab/app-designer.html) that teaches fundamental concepts of fourier analysis.

## Background

The module is taught from a signal processing perspective at a level suitable for an introductory signals and systems course. In the first lesson, students use apps to visualize Fourier series and build intuition about the frequency domain. In subsequent lessons, students study complex Fourier series, Fourier transforms, and discrete Fourier transforms. As students progress, they transition from utilizing apps to writing their own code to analyze signals. Throughout the module, students apply Fourier techniques to analyze recorded audio signals.

The instructions inside the live scripts will guide you through the exercises and activities. Get started with each live script by running it one section at a time. To stop running the script or a section midway (for example, when an animation is in progress), use the image_0.png Stop button in the **RUN** section of the **Live Editor** tab in the MATLAB Toolstrip.

## Contact Us

Solutions are available upon instructor request. Contact the [MathWorks teaching resources team](mailto:[email protected]) if you would like to request solutions, provide feedback, or if you have a question.

## Prerequisites

This module assumes minimal MATLAB knowledge required for these scripts, but you could use [MATLAB Onramp](https://matlabacademy.mathworks.com/details/matlab-onramp/gettingstarted) as a resource to acquire familiarity with live scripts and MATLAB syntax.

## Getting Started
### Accessing the Module
### **On MATLAB Online:**

Use the [image_1.png](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=README.mlx) link to download the module. You will be prompted to log in or create a MathWorks account. The project will be loaded, and you will see an app with several navigation options to get you started.

### **On Desktop:**

Download or clone this repository. Open MATLAB, navigate to the folder containing these scripts and double\-click on [fourier\-analysis.prj](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=README.mlx). It will add the appropriate files to your MATLAB path and open an app that asks you where you would like to start.

Ensure you have all the required products (listed below) installed. If you need to include a product, add it using the Add\-On Explorer. To install an add\-on, go to the **Home** tab and select image_2.png **Add-Ons** > **Get Add-Ons**.

## Products

MATLAB®, Symbolic Math Toolbox™

# Scripts
## [**FourierSeries.mlx**](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Scripts/FourierSeries.mlx)
| | | |
| :-- | :-- | :-- |
| | **In this script, students will...**
| **Lab Assignments**
|
| FourierSeriesCover2.png
| $\bullet$ Compare signals in the time and frequency domains.
$\bullet$ Analyze audio signals in the frequency domain.
$\bullet$ Visualize Fourier series modes.
$\bullet$ Describe how phase shift is represented in a Fourier series.
$\bullet$ Discuss magnitude and phase.
| [Lab1\_FourierSeries.mlx](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Scripts/Lab1_FourierSeries.mlx)
|
| | | |

## [**ComplexFourierSeries.mlx**](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Scripts/ComplexFourierSeries.mlx)
| | | |
| :-- | :-- | :-- |
| | **In this script, students will...**
| **Lab Assignments**
|
| ComplexSeriesCover2.png
| $\bullet$ Compare signals in the time and frequency domains.
$\bullet$ Analyze audio signals in the frequency domain.
$\bullet$ Visualize Fourier series modes.
$\bullet$ Describe how phase shift is represented in a Fourier series.
$\bullet$ Discuss magnitude and phase.
| [Lab2\_ComplexFourierSeries.mlx](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Scripts/Lab2_ComplexFourierSeries.mlx)
|
| | | |

## [**FourierTransform.mlx**](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Scripts/FourierTransform.mlx)
| | | |
| :-- | :-- | :-- |
| | **In this script, students will...**
| **Lab Assignments**
|
| FourierTransformCover2.png
| $\bullet$ Compare signals in the time and frequency domains.
$\bullet$ Analyze audio signals in the frequency domain.
$\bullet$ Visualize Fourier series modes.
$\bullet$ Describe how phase shift is represented in a Fourier series.
$\bullet$ Discuss magnitude and phase.
| [Lab3\_FourierTransform.mlx](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Scripts/Lab3_FourierTransform.mlx)
|
| | | |

## [**DiscreteFourierTransform.mlx**](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Scripts/DiscreteFourierTransform.mlx)
| | | |
| :-- | :-- | :-- |
| | **In this script, students will...**
| **Lab Assignments**
|
| DFTCover2.png
| $\bullet$ Compare signals in the time and frequency domains.
$\bullet$ Analyze audio signals in the frequency domain.
$\bullet$ Visualize Fourier series modes.
$\bullet$ Describe how phase shift is represented in a Fourier series.
$\bullet$ Discuss magnitude and phase.
| [Lab4\_DFT.mlx](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Scripts/Lab4_DFT.mlx)
|
| | | |

# Apps
| | | | |
| :-- | :-- | :-- | :-- |
| [Sine and Cosine Series app](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Apps/SinCosSeries.mlapp;)
| [Fourier Series app](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Apps/InteractiveFourierSeries.mlapp;)
| [Magnitude and Phase app](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Apps/MagnitudePhase.mlapp;)
| [Complex Fourier Series app](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Apps/ComplexFourierSeries.mlapp)
|
| [image_7.png](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Apps/SinCosSeries.mlapp)
| [image_8.png](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Apps/InteractiveFourierSeries.mlapp)
| [image_9.png](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Apps/MagnitudePhase.mlapp)
| [image_10.png](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis&project=fourier-analysis.prj&file=Apps/ComplexFourierSeries.mlapp)
|
| | | | |

# Educator Resources
- [Educator Page](https://www.mathworks.com/academia/educators.html)

Copyright 2023 The MathWorks™, Inc