This GitHub repository features a collection of Jupyter Notebooks that used to study common and some advanced algorithms used in modern Computational Electromagnetics. The notebook examples are based on two primary books:
-
[1] Anders Bondeson, Thomas Rylander, and Par Ingelstroom's "Computational Electromagnetics", Springer, 2005 - featuring the core and common algorithms,
[2] M. V.K. Chari and S.J. Salon's "Numerical Methods in Electromagnetism" - A great mathematical complement to [1].
- The possibility of adding HTML and Markdown notes in the middle of code - providing a powerful note-taking system;
- The possibility of running computationally-heavy simulations in the cloud using Google Colab.
Checkout:
webpages for more information on how to use Python and Jupyter Notebooks for scientific/mathematical computing and data visualization.
The following open source packages are used in this project:
-
NumPy - general-purpose matrix and array-processing package
-
SciPy - fast-fourier-transform (FFT) and other advanced numerical methods for integration, differentiation, interpolation, optimization, linear algebra, statistics, and more.
-
Matplotlib & Seaborn - data visualization and general plotting
-
Shapely - Manipulation and analysis of geometric objects in the Cartesian plane.
-
PyGmsh - Python interface for the Gmsh scripting language, for the creation of 2D and 3D mesh geometries for Finite Element Method (FEM) and other applications.
You can download the zip file of this repository here. Another alternative is to simply clone this repository to your current working directory using the following command:
git clone https://github.com/das-dias/signal-converters-notebooks.git
or
gh repo clone das-dias/signal-converters-notebooks
Feel free to clone this repository and use it to make oyur own notes, complement them and even expand the existing notes. If an issue or a bug/error is discovered within the shared code do not hesitate in contacting me through one of the following emails:
- [email protected] (institutional)
- [email protected] (personal)
In the case of an issue, me or any other main contributor will open an issue-tracking thread for this repository for each of the bugs that are found. Any change that is made to the notes by people interested in collaborating should be done so by generating a new pull request to update the existing notes. The changes will then be reviewed, discussed and approved if they're actually adding value to the notes or correctign existing issues.
- (creator) Diogo André Dias ([email protected])
This project is licensed under the MIT License - see the LICENSE file or go to the website to find more details.