ParsedCompute

Interpolate a value between the inside and outside of a rectangle smoothly.

Example Input File Syntax

SmoothRectangleCompute allows interpolating a tensor value inside and outside of a specified box. The box is aligned with the x, y, z axes and is specified by passing in the x, y, z coordinates of the bottom left point and the top right point. Each of the coordinates of the "bottom_left" point MUST be less than those coordinates in the "top_right" point.

When setting the initial condition, if bottom_left <= Point <= top_right then the "inside" value is used. Otherwise the "outside" value is used. The profile parameter sets whether the interpolation uses a COS or TANH interpolation function. Setting the interface width to 0 allows for sharp interpolation, though this may cause numerical issues with the FFT solver.

Input Parameters

  • bufferThe buffer this compute is writing to

    C++ Type:std::string

    Controllable:No

    Description:The buffer this compute is writing to

  • x1The x coordinate of the lower left-hand corner of the box.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The x coordinate of the lower left-hand corner of the box.

  • x2The x coordinate of the upper right-hand corner of the box.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The x coordinate of the upper right-hand corner of the box.

  • y1The x coordinate of the lower left-hand corner of the box.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The x coordinate of the lower left-hand corner of the box.

  • y2The x coordinate of the upper right-hand corner of the box.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The x coordinate of the upper right-hand corner of the box.

Required Parameters

  • inside1The value inside the rectangle.

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The value inside the rectangle.

  • int_width0The width of the diffuse interface. Set to 0 for sharp interface.

    Default:0

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The width of the diffuse interface. Set to 0 for sharp interface.

  • outside0The value outside the rectangle.

    Default:0

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The value outside the rectangle.

  • profileFunctional dependence for the interface profile

    C++ Type:MooseEnum

    Options:COS, TANH

    Controllable:No

    Description:Functional dependence for the interface profile

  • z10The z coordinate of the lower left-hand corner of the box.

    Default:0

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The z coordinate of the lower left-hand corner of the box.

  • z20The z coordinate of the upper right-hand corner of the box.

    Default:0

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The z coordinate of the upper right-hand corner of the box.

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