Recent Posts

Short guide on SIMD and how to call (SIMD) intrinsics in the Julia programming language.

CONTINUE READING

As most of us in the Julia community know, Julia has an issue. Let’s take a closer look.

CONTINUE READING

The julia package Tokenize is used to perform lexical analysis on Julia source code and the number of occurrences of identifiers is investigated for Julia 0.5 and 0.6 as well as a large corpus of source code from packages. What identifier will win? Read to find out!

CONTINUE READING

Analysis and optimization of a small code snippet posted on the Julia discourse mailing list.

CONTINUE READING

Open Source

Here are some of the open source projects I have created or been involved with:

Julia

  • Pkg.jl – Julia’s package manager.
  • NearestNeighbors.jl – High performance nearest neighbor data structures and algorithms.
  • Tensors.jl – Efficient computations with symmetric and non-symmetric tensors with support for automatic differentiation.
  • OhMyREPL.jl – Syntax highlighting and other enhancements for the Julia REPL.
  • Crayons.jl – Colored and styled strings for terminals.
  • PGFPlotsX.jl – Seamlessly create plots in Julia using the PGFPlots LaTeX package.
  • Pardiso.jl – Calling the PARDISO sparse solver library.
  • Tokenize.jl –Tokenization for Julia source code.
  • TimerOutputs.jl – Formatted output of timed sections.
  • BlockArrays.jl – Interface for blocked arrays.
  • Distances.jl – A Julia package for evaluating distances(metrics) between vectors.
  • NLsolve.jl – Julia solvers for systems of nonlinear equations and mixed complementarity problems
  • MMA.jl – The “Method of Moving Asymptotes”-algorithm. (old package)

Python

  • Phon – Insert cohesive elements between grains in microstructures.
  • FeynSimul – Path Integral simulations using Python OpenCL for computations on GPUs.

Talks

Teaching

I have been a teaching assistant for the following courses at Chalmers University of Technology:

2017 / 2018

  • DAT171 — Object-oriented programming in Python
  • TME250 — Finite element method solids
  • MHA032 — Material Mechanics

2016 / 2017

  • DAT171 — Object-oriented programming in Python
  • TME250 — Finite element method solids
  • TME031 — Mechanics Dynamics

2015 / 2016

  • DAT171 — Object-oriented programming in Python
  • TME250 — Finite element method solids

2013 / 2014

  • DAT171 — Object-oriented programming in Python
  • VSM167 — Finite element method basics