Mercurial > repos > public > sbplib_julia
view src/SbpOperators/volumeops/laplace/laplace.jl @ 769:0158c3fd521c operator_storage_array_of_table
Merge in default
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Thu, 15 Jul 2021 00:06:16 +0200 |
parents | 1accc3e051d0 |
children | 3cd582257072 b4acd25943f4 |
line wrap: on
line source
""" laplace(grid::EquidistantGrid{Dim}, inner_stencil, closure_stencils) Creates the Laplace operator operator `Δ` as a `TensorMapping` `Δ` approximates the Laplace operator ∑d²/xᵢ² , i = 1,...,`Dim` on `grid`, using the stencil `inner_stencil` in the interior and a set of stencils `closure_stencils` for the points in the closure regions. On a one-dimensional `grid`, `Δ` is equivalent to `second_derivative`. On a multi-dimensional `grid`, `Δ` is the sum of multi-dimensional `second_derivative`s where the sum is carried out lazily. """ function laplace(grid::EquidistantGrid{Dim}, inner_stencil, closure_stencils) where Dim Δ = second_derivative(grid, inner_stencil, closure_stencils, 1) for d = 2:Dim Δ += second_derivative(grid, inner_stencil, closure_stencils, d) end return Δ end export laplace