view src/SbpOperators/operators/standard_diagonal.toml @ 813:cdc2b5ebf7cb operator_storage_array_of_table

Review: Suggested changes in standard_diagonal.toml
author Vidar Stiernström <vidar.stiernstrom@it.uu.se>
date Wed, 22 Sep 2021 13:09:46 +0200
parents f682e4fe3cef
children 454ba1efa644
line wrap: on
line source

[meta]
authors = "Ken Mattson"
description = "Standard operators for equidistant grids"
type = "equidistant"
cite = "A paper a long time ago in a galaxy far far away."
# Review:
# Suggested change:
# "A paper a long time ago in a galaxy far far away." -->
# "
# Ken Mattsson, Jan Nordström,
# Summation by parts operators for finite difference approximations of second derivatives,
# Journal of Computational Physics,
# Volume 199, Issue 2,
# 2004,
# Pages 503-540,
# ISSN 0021-9991,
# https://doi.org/10.1016/j.jcp.2004.03.001.
# "
# or perhaps a shorter version.

[[stencil_set]]

order = 2

H.inner = "1"
H.closure = ["1/2"]

D1.inner_stencil = ["-1/2", "0", "1/2"]
D1.closure_stencils = [
    {s = ["-1", "1"], c = 1},
]

D2.inner_stencil = ["1", "-2", "1"]
D2.closure_stencils = [
    {s = ["1", "-2", "1"], c = 1},
]

e.closure = ["1"]
d1.closure = {s = ["-3/2", "2", "-1/2"], c = 1}

[[stencil_set]]

order = 4
H.inner = "1"
H.closure = ["17/48", "59/48", "43/48", "49/48"]

# Review:
# Add missing 4th order accurate D1 operator
# D1.inner_stencil = ["1/12","-2/3","0","2/3","-1/12"]
# D1.closure_stencils = [
#     {s = [ "-24/17",  "59/34",  "-4/17", "-3/34",     "0",     "0"], c = 1},
#     {s = [   "-1/2",      "0",    "1/2",     "0",     "0",     "0"], c = 2},
#     {s = [   "4/43", "-59/86",      "0", "59/86", "-4/43",     "0"], c = 3},
#     {s = [   "3/98",      "0", "-59/98",     "0", "32/49", "-4/49"], c = 4},
# ]

D2.inner_stencil = ["-1/12","4/3","-5/2","4/3","-1/12"]
D2.closure_stencils = [
    {s = [     "2",    "-5",      "4",       "-1",     "0",     "0"], c = 1},
    {s = [     "1",    "-2",      "1",        "0",     "0",     "0"], c = 2},
    {s = [ "-4/43", "59/43", "-110/43",   "59/43", "-4/43",     "0"], c = 3},
    {s = [ "-1/49",     "0",   "59/49", "-118/49", "64/49", "-4/49"], c = 4},
]

e.closure = ["1"]
d1.closure = {s = ["-11/6", "3", "-3/2", "1/3"], c = 1}