All posts by admin

Magnetism 2015 – Leeds

Screen Shot 2015-03-31 at 16.08.00The 2015 meeting of the UK magnetism community closes today after two days of parallel sessions as well as posters on all things magnetism. Highlights include a plenary session by Professor Stuart Parkin and the Wohlfarth lecture given by Professor Laura Heyderman. Each sessions also enjoyed an invited talk including the IEEE Distinguished Lecturer Professor Russel Cowburn. The wide range of talks from theoretical and experimental groups is an excellent showcase of the magnetism community in the UK. As well as learning new physics the event also involves a great dinner and a great chance to network. My talk on ultrafast thermally induced magnetisation switching can be found here.

IOP Postgraduate Techniques Workshop


This years IOP magnetism techniques workshop for postgraduate students closes today after a packed two day program. The workshop is mainly based around various experimental techniques but with a smidgen of theory thrown in for good measure. The workshop takes place each year close to christmas and is a good opportunity to meet new students and academics involved in magnetism and to see the wide range of skills and techniques the UK has. The social program usually includes a christmas dinner and festive beer or two on the first night. Further information can be found at this link. My slides can be found here.

Cubic Spline Interpolation Library in C++

This afternoon I was looking around for a cubic interpolation routine to do some data analysis. The numerical recipes one works fine but I also found a nice library from the website of Tino Kluge which works (so far anyway) very nicely indeed. It is as simple as including a header file, defining a set of (sorted) \(x_i\) and their corresponding \(y_i\) (for example using the vector class from the STL), declaring an instance of that class and calling the classes routine “set_points”. Below is the example provided on the authors website.

#include <cstdio>
#include <cstdlib>
#include <vector>
#include "spline.h"

int main(int argc, char** argv) {

std::vector<double> X(5), Y(5);
X[0]=0.1; X[1]=0.4; X[2]=1.2; X[3]=1.8; X[4]=2.0;
Y[0]=0.1; Y[1]=0.7; Y[2]=0.6; Y[3]=1.1; Y[4]=0.9;

tk::spline s;
s.set_points(X,Y); // currently it is required that X is already sorted

double x=1.5;

printf("spline at %f is %f\n", x, s(x));


The header is available from the authors website at the following link along with a some example programs and the explanation of the mathematics (see here). Many thanks to the author for providing it under the GNU GPLv2 licence.

Math symbols are rendered by MathJax which requires JavaScript.