CompositeFunction

Multiplies an arbitrary set of functions together

Description

The CompositeFunction type takes an arbitrary set of functions, provided in the functions parameter, evaluates each of them at the appropriate time and position, and multiplies them together. The function can optionally be multiplied by a scale factor, which is specified using the scale_factor parameter.

Example Input Syntax

[Functions]
  [./ff_1]
    type = ParsedFunction
    expression = alpha*alpha*pi
    symbol_names = 'alpha'
    symbol_values = '16'
  [../]

  [./ff_2]
    type = ParsedFunction
    expression = pi*sin(alpha*pi*x)
    symbol_names = 'alpha'
    symbol_values = '16'
  [../]

  [./forcing_func]
    type = CompositeFunction
    functions = 'ff_1 ff_2'
  [../]

  [./bc_func]
    type = ParsedFunction
    expression = sin(alpha*pi*x)
    symbol_names = 'alpha'
    symbol_values = '16'
  [../]
[]
(../moose/test/tests/bcs/function_dirichlet_bc/test.i)

Input Parameters

  • execute_onLINEARThe list of flag(s) indicating when this object should be executed, the available options include NONE, INITIAL, LINEAR, NONLINEAR, TIMESTEP_END, TIMESTEP_BEGIN, MULTIAPP_FIXED_POINT_END, MULTIAPP_FIXED_POINT_BEGIN, FINAL, CUSTOM, ALWAYS.

    Default:LINEAR

    C++ Type:ExecFlagEnum

    Options:NONE, INITIAL, LINEAR, NONLINEAR, TIMESTEP_END, TIMESTEP_BEGIN, MULTIAPP_FIXED_POINT_END, MULTIAPP_FIXED_POINT_BEGIN, FINAL, CUSTOM, ALWAYS

    Controllable:No

    Description:The list of flag(s) indicating when this object should be executed, the available options include NONE, INITIAL, LINEAR, NONLINEAR, TIMESTEP_END, TIMESTEP_BEGIN, MULTIAPP_FIXED_POINT_END, MULTIAPP_FIXED_POINT_BEGIN, FINAL, CUSTOM, ALWAYS.

  • functionsThe functions to be multiplied together.

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

    Controllable:No

    Description:The functions to be multiplied together.

  • scale_factor1Scale factor to be applied to the ordinate values

    Default:1

    C++ Type:double

    Controllable:No

    Description:Scale factor to be applied to the ordinate values

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