# Functions System

## Overview

Functions are used to define functions depending only on spatial position and time: . These objects can serve a wide variety of purposes, including (but not limited to) the following:

• defining initial conditions,

• defining residual contributions (sources, boundary conditions, etc.), and

• defining post-processing quantities.

## Available Objects

• Moose App
• Axisymmetric2D3DSolutionFunctionFunction for reading a 2D axisymmetric solution from file and mapping it to a 3D Cartesian model
• BicubicSplineFunction
• CoarsenedPiecewiseLinearPerform a point reduction of the tabulated data upon initialization, then evaluate using a linear interpolation.
• CompositeFunctionMultiplies an arbitrary set of functions together
• ConstantFunction
• ImageFunctionFunction with values sampled from an image or image stack.
• LinearCombinationFunctionReturns the linear combination of the functions
• ParsedFunctionFunction created by parsing a string
• ParsedVectorFunction
• PiecewiseBilinearInterpolates values from a csv file
• PiecewiseConstantDefines data using a set of x-y data pairs
• PiecewiseLinearLinearly interpolates between pairs of x-y data
• PiecewiseMulticonstantPiecewiseMulticonstant performs constant interpolation on 1D, 2D, 3D or 4D data. The data_file specifies the axes directions and the function values. If a point lies outside the data range, the appropriate end value is used.
• PiecewiseMultilinearPiecewiseMultilinear performs linear interpolation on 1D, 2D, 3D or 4D data. The data_file specifies the axes directions and the function values. If a point lies outside the data range, the appropriate end value is used.
• SolutionFunction
• SplineFunction
• TestSetupPostprocessorDataActionFunction
• VectorPostprocessorFunctionProvides piecewise linear interpolation of from two columns of a VectorPostprocessor
• Navier Stokes App
• WedgeFunctionFunction which computes the exact solution for Jeffery-Hamel flow in a wedge.
• Level Set App
• LevelSetOlssonBubbleImplementation of 'bubble' ranging from 0 to 1.
• LevelSetOlssonPlaneImplementation of a level set function to represent a plane.
• LevelSetOlssonVortexA function for creating vortex velocity fields for level set equation benchmark problems.
• Fluid Properties App
• SaturationPressureFunctionComputes saturation pressure from temperature function and 2-phase fluid properties object
• SaturationTemperatureFunctionComputes saturation temperature from pressure function and 2-phase fluid properties object
• Porous Flow App
• MovingPlanarFrontThis function defines the position of a moving front. The front is an infinite plane with normal pointing from start_posn to end_posn. The front's distance from start_posn is defined by 'distance', so if the 'distance' function is time dependent, the front's position will change with time. Roughly speaking, the function returns true_value for points lying in between start_posn and start_posn + distance. Precisely speaking, two planes are constructed, both with normal pointing from start_posn to end_posn. The first plane passes through start_posn; the second plane passes through end_posn. Given a point p and time t, this function returns false_value if ANY of the following are true: (a) t<activation_time; (b) t>=deactivation_time; (c) p is 'behind' start_posn (ie, p lies on one side of the start_posn plane and end_posn lies on the other side); (d) p is 'ahead' of the front (ie, p lies one one side of the front and start_posn lies on the other side); (e) the distance between p and the front is greater than active_length. Otherwise, the point is 'in the active zone' and the function returns true_value.
• Phase Field App
• FourierNoiseGenerate noise from a fourier series
• Functional Expansion Tools App
• FunctionSeriesThis function uses a convolution of functional series (functional expansion or FX) to create a 1D, 2D, or 3D function