diff --git a/benchmark/Main.hs b/benchmark/Main.hs index b113c82..05f1d3c 100644 --- a/benchmark/Main.hs +++ b/benchmark/Main.hs @@ -9,7 +9,18 @@ default (Int) main :: IO () main = defaultMain [ -- bgroup "Grid" [bench "init" $ nf (initGrid (0.0::Double) (0.0, 1.0)) 1001] - bgroup "Grid" [bench "init" $ - whnf (\np -> let g = initGrid (0.0::Double) (0.0, 1.0) np - in energyGrid g) 1001] + bgroup "Grid" [ bench "init" $ + whnf (\np -> let g = initGrid (0.0::Double) (0.0, 1.0) np + in energyGrid g) 1001 + , bench "rhs" $ + whnf (\np -> let g = initGrid (0.0::Double) (0.0, 1.0) np + bs = bcGrid g + g' = rhsGrid bs g + in energyGrid g') 1001 + , bench "rk2" $ + whnf (\np -> let g = initGrid (0.0::Double) (0.0, 1.0) np + rhs x = rhsGrid (bcGrid x) x + step = rk2Grid 1.0e-8 rhs + g' = iterate step g !! 10 + in energyGrid g') 1001] ]