Developing a CUDA solver for large sparse matrices for MARIN
Martijn de Jong
Supervisor: Kees Vuik

Site of the project:
Haagsteeg 2
6708 PM Wageningen

start of the project: February 2011

The Master project has been finished in February 2012 by the completion of the Masters Thesis and a final presentation has been given. In this presentation the following simulation has been shown. In March 2013 a paper (Dutch) has appeared in Delta and in Kennislink.

For working address etc. we refer to our alumnipage.

Summary of the master project:
MARIN (Maritime Research Institute Netherlands) provides ship manoeuvring simulators that offer a variety of maritime operations for virtually every type of ship and of propulsion. The current computation model for the wave field is based on cosine wave spectra, that are converted to time signals through Fourier transformation. This has the benefit of being deterministic in time and place and therefore is easy to implement on our distributed simulation systems. However, the model is not interactive, that is diffraction, reflection, refraction and depth dependency are not taken into account. From a visualization point of view, this model is limited too. Better visualization models (in e.g. Waterworld, Titanic, Perfect Storm) lack physical realism.

Some pictures of the present simulator. The waves have no interaction with ships or environment.

MARIN wishes to use the so-called Variational Boussinesq Model to compute and visualize the wave field. This physically realistic model does provide interaction with objects, diffraction, reflection etc. At this moment, the model can be used for computing a wave field of 10000 points (5m x 5m grid) in real-time. To be useful in our manoeuvring simulator, a much larger wave field of at least 1000000 points must be computed in real time. In 2008/2009 Elwin van 't Wout has already worked on this here. His excellent master's thesis can be used as a basis for further investigation.

Part of the Variational Boussinesq Model is a sparse matrix solver. This takes up a large part of the computation time per simulation step. The purpose of the work will be to develop a new, parallel, solver with CUDA for these kind of matrices. For instance Iterative CUDA can be used as a basis for this. This subject is particularly fit for a student who enjoys (advanced) programming. The programming language used in C++.

The work will be conducted at MARIN in Wageningen. MARIN has been an independent and innovative service provider for the maritime sector worldwide for more that 75 years now. The research is carried out by model tests in large basins and by lots of computer simulations. In its field MARIN is one of the leading institutions in the world. Wageningen is a small but pleasant student city.

In the middle you can see waves in the real river IJssel and to left and right the simulation in our VBM test program.

Contact information: Kees Vuik

Back to the home page or the Master students page of Kees Vuik