Units and unit conversions — Units are very important in science, as they provide a mapping from the abstract realm of maths to the reality of physics. Maths tells us exactly how to compute the circumference of a circle with...
The danger of complex models — I am currently on a tour of astrophysics departments in the South of the UK, and have very little time to come up with a good topic for this week’s post. Hence my choice for...
Task based MCRT — In previous posts, I introduced the topics of task based parallelisation and Monte Carlo radiation transfer (MCRT). The topic of this week’s post will be my attempts at combining both. This algorithm forms the backbone...
Monte Carlo radiation transfer — Since I am currently working on a task-based Monte Carlo radiation transfer algorithm, I thought it would be nice to dedicate a post to this subject. However, until now I have only covered the topic...
Task based parallelisation — This week’s post will need to be quite short, as I am currently on a conference in Finland and have very little time to spare. Additionally, DiRAC last week approved our short project worth half...
Timing and performance management — An important part of developing code is making sure that your code performs efficiently. There are several reasons you should do this. First of all, there is the obvious reason that it is good for...
Why you should never divide by two (on a computer) — In this week’s post, I will try to make you appreciate how computers perform mathematical operations using the very basic example of dividing a number by two. I will try to convince you that dividing...
Graph decomposition — I previously mentioned space-filling curves and their application in scientific computing, and concluded that post with the remark that space-filling curves are actually not the best solution if you want to distribute some large computational...