SplineFunction

Define a spline function from interpolated data defined by input parameters.

The SplineFunction defines a 1D spline (1D shape, it is defined everywhere in the domain by translation) along one of the x, y, z directions (specified by the component parameter). The spline is defined by

  • its value (ordinates, y) at several abscissa (x) through which the function passes

  • its first derivative at the first abscissa

  • its first derivative at the last abscissa

From this information the spline is automatically generated. Both the first and second order derivatives of the spline are defined.

Example input syntax

In this example, we define a spline going through 4 points defined by the x and y parameters.

[Functions]
  [./spline_function]
    type = SplineFunction
    x = '0 1 2 3'
    y = '0 1 0 1'
  [../]
[]
(moose/test/tests/ics/function_ic/spline_function.i)

Input Parameters

  • xThe abscissa values

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

    Unit:(no unit assumed)

    Controllable:No

    Description:The abscissa values

  • yThe ordinate values

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

    Unit:(no unit assumed)

    Controllable:No

    Description:The ordinate values

Required Parameters

  • componentxThe component of the geometry point to interpolate with

    Default:x

    C++ Type:MooseEnum

    Unit:(no unit assumed)

    Options:x, y, z

    Controllable:No

    Description:The component of the geometry point to interpolate with

  • yp11e+30The value of the first derivative of the interpolating function at point 1

    Default:1e+30

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The value of the first derivative of the interpolating function at point 1

  • ypn1e+30The value of the first derivative of the interpolating function at point n

    Default:1e+30

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The value of the first derivative of the interpolating function at point n

Optional Parameters

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

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

    Unit:(no unit assumed)

    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

    Unit:(no unit assumed)

    Controllable:No

    Description:Set the enabled status of the MooseObject.

Advanced Parameters