Skip to content

spatialaudio/signals-and-systems-exercises

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

signals-and-systems-exercises

Continuous- and Discrete-Time Signals and Systems - A Tutorial with Computational Examples

This tutorial accompanies the lecture Continuous-Time and Discrete-Time Signals and Systems - Theory and Computational Examples. The lecture and the tutorial are designed for International Standard Classification of Education (ISCED) level 6 being held at University of Rostock, Germany.

Juypter notebooks can be accessed with the webserver services

All sources (tex, ipynb, ...) can be found at github

Anaconda Environment

The Anaconda distribution is a very convenient solution to install a required environment, i.e. to have access to the Jupyter Notebook renderer with a Python interpreter on a personal computer. It is very likely that a very recent installation of Anaconda already delivers all required packages just using the base environment. We actually do not need very special packages. However, if base is not working immediately, creating and activating a dedicated environment mydsp might be useful. Do the following steps

  • get at least python 3.9x, numpy, sympy, scipy, matplotlib, notebook, jupyterlab, ipykernel, the other packages are very useful tools for convenience

conda create -n mydsp python=3.9 pip numpy sympy scipy matplotlib notebook ipykernel jupyterlab ipympl pydocstyle pycodestyle autopep8 flake8 nb_conda jupyter_nbextensions_configurator jupyter_contrib_nbextensions

  • activate this environment with

conda activate mydsp

  • Jupyter notebook renderer needs to know that we want to use the new Python environment

python -m ipykernel install --user --name mydsp --display-name "mydsp"

  • get into the folder where the exercises are located, e.g.

cd my_signals_and_systems_exercises_folder

  • start either a Jupyter notebook or Jupyter lab working environment via a local server instance by either

jupyter notebook or jupyter lab

If the above steps still lead to problems, the following lines created the working environment mydsp

  • using conda 4.12.0, conda-build 3.21.8
  • conda create -n mydsp python=3.9.12 pip=22.0.4 numpy=1.22.3 sympy=1.10.1 scipy=1.8.0 matplotlib=3.5.1 notebook=6.4.10 ipykernel=6.12.1 jupyterlab=3.3.2 ipympl=0.8.8 pydocstyle=6.1.1 pycodestyle=2.8.0 autopep8=1.6.0 flake8=4.0.1 nb_conda=2.2.1 jupyter_nbextensions_configurator=0.4.1 jupyter_contrib_nbextensions=0.5.1
  • pip install soundfile

German Version

We are still in the design and polishing process of a very detailed 12 units tutorial to support remote learning for our students within COVID-19 era, thus the initial version is in German. Translations to English are scheduled ASAP. Please see the LaTex main file tutorial_latex_deu/sig_sys_ex.tex. There are several graphics included, which are created by the provided Jupyter notebooks. These have an ID with hex numbers in file name, so that notebooks can be linked to the exercises within the tex project. We might wish to compile all notebooks at once, then we can use python3 -m nbconvert --ExecutePreprocessor.kernel_name="mydsp" --execute --inplace *.ipynb **/*.ipynb **/**/*.ipynb

License

  • Creative Commons Attribution 4.0 International License (CC BY 4.0) for text/graphics
  • MIT License for software

Versions / Tags / Branches

Referencing

Please cite this open educational resource (OER) project as Frank Schultz, Continuous- and Discrete-Time Signals and Systems - A Tutorial Featuring Computational Examples, University of Rostock with github URL, commit number and/or version tag, year, (dedicated files and/or content).

Authorship

University of Rostock:

  • Frank Schultz (concept, design, main author)
  • Robert Hauser (proof reading, concept, author)
  • Sascha Spors (proof reading, concept)
  • Till Rettberg (concept, design)
  • Matthias Geier (proof reading, technical advisor)
  • Vera Erbes (proof reading)