changeset 1375:127d2558926e feature/variable_derivatives

Add some benchmarks
author Jonatan Werpers <jonatan@werpers.com>
date Tue, 30 May 2023 15:55:18 +0200
parents 4f3dd84891f6
children 2ad2de55061a 174a52af6b2e
files benchmark/benchmarks.jl
diffstat 1 files changed, 27 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/benchmark/benchmarks.jl	Fri May 26 22:50:39 2023 +0200
+++ b/benchmark/benchmarks.jl	Tue May 30 15:55:18 2023 +0200
@@ -1,10 +1,13 @@
 using BenchmarkTools
+
 using Sbplib
 using Sbplib.Grids
 using Sbplib.SbpOperators
 using Sbplib.RegionIndices
 using Sbplib.LazyTensors
 
+using LinearAlgebra
+
 const SUITE = BenchmarkGroup()
 
 
@@ -69,6 +72,30 @@
 SUITE["derivatives"]["second_derivative"]["3D"]["z"] = @benchmarkable $u3 .= $Dz*$v3
 
 
+SUITE["derivatives"]["second_derivative_variable"] = BenchmarkGroup()
+
+c1 = map(x->sin(x)+2, g1)
+D₂ = second_derivative_variable(g1, c1, stencil_set)
+SUITE["derivatives"]["second_derivative_variable"]["1D"] = @benchmarkable $u1 .= $D₂*$v1
+
+c2 = map(x->sin(x[1] + x[2])+2, g2)
+Dx = second_derivative_variable(g2, c2, stencil_set, 1)
+Dy = second_derivative_variable(g2, c2, stencil_set, 2)
+SUITE["derivatives"]["second_derivative_variable"]["2D"] = BenchmarkGroup()
+SUITE["derivatives"]["second_derivative_variable"]["2D"]["x"] = @benchmarkable $u2 .= $Dx*$v2
+SUITE["derivatives"]["second_derivative_variable"]["2D"]["y"] = @benchmarkable $u2 .= $Dy*$v2
+
+c3 = map(x->sin(norm(x))+2, g3)
+Dx = second_derivative_variable(g3, c3, stencil_set, 1)
+Dy = second_derivative_variable(g3, c3, stencil_set, 2)
+Dz = second_derivative_variable(g3, c3, stencil_set, 3)
+SUITE["derivatives"]["second_derivative_variable"]["3D"] = BenchmarkGroup()
+SUITE["derivatives"]["second_derivative_variable"]["3D"]["x"] = @benchmarkable $u3 .= $Dx*$v3
+SUITE["derivatives"]["second_derivative_variable"]["3D"]["y"] = @benchmarkable $u3 .= $Dy*$v3
+SUITE["derivatives"]["second_derivative_variable"]["3D"]["z"] = @benchmarkable $u3 .= $Dz*$v3
+
+
+
 
 SUITE["derivatives"]["addition"] = BenchmarkGroup()