Version 9 (modified by 14 years ago) (diff) | ,
---|

# Laplace

Solves the Laplace equation `u_xx + u_yy = 0`

in a rectangular domain, by iteratively applying a stencil function.

The first argument is the number of iterations to use. The second is a BMP file containing boundary conditions.

repa-laplace 10000 pls-400x400.bmp pls-400x400-out.bmp

## Code

The main algorithm is at http://code.haskell.org/repa/repa-stable/repa-examples/Laplace/src/Solver.hs

The wrapper is at http://code.haskell.org/repa/repa-stable/repa-examples/Laplace/src/Main.hs

## Test Data

In the input file, greyscale gives the boundary conditions, blue specifies where to determine the solution.

pls-400x400.bmp | pls-400x400-out.bmp |

full size | full size |

## Runtime

Compiled with GHC 6.13.20100309. 400x400 image. 10000 iterations.

Running on a Intel i7 iMac. 2.8Ghz, 4 cores x 2 threads/core. 256k L1, 8MB L2, 8GB main memory.

Times stated include IO.

Threads | Time(s) |

1 | 64.67 |

2 | 37.29 |

3 | 27.45 |

4 | 31.96 |

5 | 28.08 |

6 | 24.39 |

7 | 23.83 |

8 | 24.67 |

### Attachments (2)

- pls-400x400-thumb.png (2.6 KB) - added by 14 years ago.
- pls-400x400-out-thumb.jpg (6.0 KB) - added by 14 years ago.

Download all attachments as: .zip