DifDop Home




pdsol is a minimalistic partial differential equation solver written in C. It is based on the gnu scientific library (GSL) which uses xml for defining the problem and solver parameters, and hdf as the input/output data format. It runs on linux/unix or in fact any other environment where the dependencies can be satisfied.

It can be downloaded from here.

How to Compile

pdsol uses linux standard autoconf/automake system. Thus, it can be compiled simply by typing



 ./configure --help 

for more information and details. In particular --enable-debug option turns of compiler optimizations and permits debugging. Note that the configure script will naturally fail if the required dependencies are not satisfied.


pdsol uses various open source libraries and as a result is dependent on them. This means the following libraries has to be installed in order to compile and rund pdsol:

It can be downloaded from here.

How to Run an Example

The example problems are found in the "examples" directory of the pdsol library. These examples can be run in a simple way, and their parameters can be changed easily without the need for recompiling the library or the source code of the example problem.

In general, when the code is compiled, all the example files will be compiled automatically.

each example file contains three essential files.

  • The "init.xml" file where the problem and integration parameters are defined.
  • The "init_fields.m" file, which is an octave file that defines the initial condition.
  • The "<problem_name>.c" file where the problem itself is defined.

The task of a programmer who wants to write a solver that solves a new system of partial differential equations is to write these three files.

here are some examples:

Fusion Links

Here is a list of links that you might find interesting if you want to learn more about fusion plasmas

This page is currently under construction.