Thomas Guillod

Science and Open Source

About Me

Hi, my name’s Thomas and I am a power electronics engineer and research scientist. I studied at ETH Zurich (Master, Ph.D, and Postdoc) and my current research interests include MV converters, high-frequency magnetic components, design and optimization, and numerical methods.

.

In parallel with my research, I am developing several open softwares and libraries, mostly for science, engineering, and numerical analysis. Most of these codes are written either in MATLAB or Python. Some tools are very specific for my reasearch but others might be more useful.

Here is my Curriculum Vitae, my Linkedin Profile, my GitHuB Profile, and my Email.

Science Tools

FEM Mesh Toolbox

GitHub Repository

MATLAB toolbox - BSD License

MATLAB toolbox for handling 2D and 3D FEM meshes. You can plot plot the mesh, plot scalar field, plot vector field, integrate data, interpolate data, etc. This library is meant for FEM simulations but can also be used for geographic information system or additive manufacturing.

Multi Objective Optimization

GitHub Repository

MATLAB toolbox - BSD License

MATLAB toolbox for multi-objective optimization. This toolbox offer a common interface for brute-force grid search, single-objective genetic algorithm, and multi-objective genetic algorithm. Different functionalities are offered: continuous variables, discrete variables, variable scaling, contraint handling, vectorized and parallel evaluation, etc.

Fourier Series Toolbox

GitHub Repository

MATLAB library - BSD License

Simple MATLAB library offering an abstraction layer for handling Fourier series for continuous signal. The transformation and inverse transformation are implemented with FFTs. The spectrum are properly scaled and truncated.

ETHZ Euler Cluster Scripts

GitHub Repository

Bash/MATLAB scripts - BSD License

Simple tutorial explaining how to use the ETHZ EULER high performance computing cluster with parallelized MATLAB simulations. This tutorial does not require any prior knowledge of Linux systems and clusters.

BibTeX with Link and DOI

GitHub Repository

BibTeX /LaTeX scripts - LPPL License

This modified IEEEtran.bst BibTeX style offers some extension: linking a PDF file, linking an URL, linking a DOI (Digital Object Identifier). This BibTeX style was written for my Ph.D thesis and does not cover all the other entries offered by IEEEtran.bst.

Power Electronics Tools

FuG Source Remote Control

GitHub Repository

Python script - BSD License

This Python class remote control power sources from FuG Elektronik GmbH over ethernet. You can connect to the power source, enable/disable, set the values (voltage and current), and read the values (voltage and current).

NI-DAQmx Control

GitHub Repository

Python script - BSD License

This Python class controls USB NI data acquisition cards. You can connect to the device and read and write data. The class handles both analog and digital signals. This class was tested with the NI-6215 card for should work with other models.

Lecroy Scope Control

GitHub Repository

Python script - BSD License

This Python class remote controls Lecroy WaveSurfer oscilloscopes. You can connect to the device, set up the channels, control the trigger, download a screenshot and download the waveform data. This class was tested with the WaveSurfer 24MXs oscilloscope for should work with other models.

Hobby Projects

Laser Cut Slicer

GitHub Repository

MATLAB toolbox - BSD License

This MATLAB toolbox helps you to realize a 3d object with stacked laser cut plates. Extract the interesection of a 3d STL object and a cut plane, visualize, and export the results as PDF. Create 3d meshed parts from 2d parts, assemble the plates into a 3d contruction, and visualize.

2D Mesh from Bitmap

GitHub Repository

MATLAB library - BSD License

This MATLAB code generates a mesh from a black and white bitmap image. Find the contour, simplify the contour, and mesh the shape. It is possible to handle of holes and multiple domains.

YAML Extension

GitHub Repository

Python script - BSD License

This Python class offers three extensions to the YAML format. Including a YAML file inside a YAML file (link), including relative filesystem path links, and parsing simple Python expressions.

Lord of the Rings Map

GitHub Repository

Flash software - GPL License

This is a interactive Lord of the Rings Map. I wrote this software in 2005 as a teenager. The software is written in Flash MX 2004/ActionScript 2.0. Therefore, it is probably impossible to open and edit the software with modern tools.