FiniteDifferenceLaplacian

Computes the Laplacian using finite differences.

Overview

Computes factor times the Laplacian of the input buffer in real space, using the second-order 3-point or the fourth-order 5-point central difference stencil on each axis ("stencil_width"). Ghost layers are exchanged before the stencil is applied.

The operator also exposes its stencil, which implicit solvers use to build coarse multigrid levels. On a periodic grid the discrete Laplacian is symmetric negative semidefinite with the constants as its nullspace, so with factor < 0 it is positive semidefinite.

Example Input File Syntax

[TensorComputes<<<{"href": "../../syntax/TensorComputes/index.html"}>>>]
  [Solve<<<{"href": "../../syntax/TensorComputes/Solve/index.html"}>>>]
    [lap_compute]
      type = FiniteDifferenceLaplacian<<<{"description": "Computes the Laplacian using finite differences.", "href": "FiniteDifferenceLaplacian.html"}>>>
      input<<<{"description": "The input buffer"}>>> = u
      buffer<<<{"description": "The buffer this compute is writing to"}>>> = lap
    []
  []
[]
(test/tests/real_space/laplacian.i)

Input Parameters

  • bufferThe buffer this compute is writing to

    C++ Type:std::string

    Controllable:No

    Description:The buffer this compute is writing to

  • inputThe input buffer

    C++ Type:std::string

    Controllable:No

    Description:The input buffer

Required Parameters

  • factor1Pre-factor for the Laplacian

    Default:1

    C++ Type:Real

    Unit:(no unit assumed)

    Controllable:No

    Description:Pre-factor for the Laplacian

  • stencil_width3Stencil width for the Laplacian (3 => 3-point, 5 => 5-point)

    Default:3

    C++ Type:MooseEnum

    Options:3, 5

    Controllable:No

    Description:Stencil width for the Laplacian (3 => 3-point, 5 => 5-point)

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Set the enabled status of the MooseObject.

Advanced Parameters

Input Files