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<<<{"href": "../../syntax/Functions/index.html"}>>>]
  [./ff_1]
    type = ParsedFunction<<<{"description": "Function created by parsing a string", "href": "MooseParsedFunction.html"}>>>
    expression<<<{"description": "The user defined function."}>>> = alpha*alpha*pi
    symbol_names<<<{"description": "Symbols (excluding t,x,y,z) that are bound to the values provided by the corresponding items in the vals vector."}>>> = 'alpha'
    symbol_values<<<{"description": "Constant numeric values, postprocessor names, function names, and scalar variables corresponding to the symbols in symbol_names."}>>> = '16'
  [../]

  [./ff_2]
    type = ParsedFunction<<<{"description": "Function created by parsing a string", "href": "MooseParsedFunction.html"}>>>
    expression<<<{"description": "The user defined function."}>>> = pi*sin(alpha*pi*x)
    symbol_names<<<{"description": "Symbols (excluding t,x,y,z) that are bound to the values provided by the corresponding items in the vals vector."}>>> = 'alpha'
    symbol_values<<<{"description": "Constant numeric values, postprocessor names, function names, and scalar variables corresponding to the symbols in symbol_names."}>>> = '16'
  [../]

  [./forcing_func]
    type = CompositeFunction<<<{"description": "Multiplies an arbitrary set of functions together", "href": "CompositeFunction.html"}>>>
    functions<<<{"description": "The functions to be multiplied together."}>>> = 'ff_1 ff_2'
  [../]

  [./bc_func]
    type = ParsedFunction<<<{"description": "Function created by parsing a string", "href": "MooseParsedFunction.html"}>>>
    expression<<<{"description": "The user defined function."}>>> = sin(alpha*pi*x)
    symbol_names<<<{"description": "Symbols (excluding t,x,y,z) that are bound to the values provided by the corresponding items in the vals vector."}>>> = 'alpha'
    symbol_values<<<{"description": "Constant numeric values, postprocessor names, function names, and scalar variables corresponding to the symbols in symbol_names."}>>> = '16'
  [../]
[]
(moose/test/tests/bcs/function_dirichlet_bc/test.i)

Input Parameters

  • functionsThe functions to be multiplied together.

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

    Unit:(no unit assumed)

    Controllable:No

    Description:The functions to be multiplied together.

  • scale_factor1Scale factor to be applied to the ordinate values

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    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