fourier_series_pwm_matlab
MATLAB Code for Fourier Series Handling (with FFT)
The MATLAB FFT/IFFT functions are good but not so easy to use for real periodic signal:
- the ordering of the frequency vector is confusing due to the negative frequencies (spectrums are symmetric)
- the coefficients are not scaled as in a Fourier series due to the definition of the DFT
The provided MATLAB functions offer different functionalities around Fourier series:
- get time and frequency vector
- wrappers around the MATLAB FFT/IFFT functions that scale periodic signals as Fourier series coefficients
- many signals can be processed at the same time (matrices)
The following functions are offered for signal generation:
- generate spectrum of arbitrary PWM periodic signals directly in the frequency domain
- generate PWM signals with a finite/infinite slew rate
- generate DC and AC sinusoidal signals
Additionally, several transformations can be applied to frequency domain signals:
- apply low-pass filters (e.g., first-order, second-order)
- apply simple transformations (eg., delay, phase shift, AC coupling)
Examples
Compatibility
- Tested with MATLAB R2018b and R2021b.
- No toolboxes are required.
- Compatibility with GNU Octave not tested but probably easy to achieve.
Author
Thomas Guillod - GitHub Profile
License
This project is licensed under the BSD License, see LICENSE.md.
Cite As
Thomas Guillod (2024). fourier_series_pwm_matlab (https://github.com/otvam/fourier_series_pwm_matlab), GitHub. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
fct
Versions that use the GitHub default branch cannot be downloaded
Version | Published | Release Notes | |
---|---|---|---|
1.6 | connect readme |
|
|
1.5 | allow arbitraty PWM signals |
|
|
1.4 | Change txt |
|
|
1.2 | Change text |
|
|
1.1 | Change txt |
|
|
1.0.0 |
|