The SpaceTimeFunctions element is a location for writing user defined functions that specifically depend on the spatial and temporal variables x, y, z, and t. A space time function can use Parameters and Constants by just typing them directly in as a value of the property. However if you are to change the name of the Parameter / Constant used it will not automatically update in the SpaceTimeFunction.

  • User Defined.

    This option is deprecated. Use expression instead.

  • expression

    This is the user-supplied expression that is a function of x, y, z, or t. It can include any pre-defined Constants, Parameters, or Functions, as well as real numbers.

    For a list of supported functions that be included in the user-written expression for the function, see expression (STFunc).

  • monochromatic excitation

    This function is for using a variety of potential ramps to excite a source to a set frequency and amplitude.


    Frequency of the source.

    time begin

    Time to start the excitation.

    time end

    Time to end the excitation.


    Amplitude to excite the function to.

    turn on function

    Function to use to ramp up the source.

    • instantaneous Typically not reccommended, immediately excites at specified amplitude

    • frequency based Will ramp up in the specified number of periods based on given frequency. 5 periods is typical

    • standard Same ramping formula as frequency based, but with a directly specified amount of time.

    • smoother step Will ramp using the smoother step formula, H(riseTime-t)*((riseRate*t) * (riseRate*t) * (riseRate*t) * ((riseRate*t) * ((riseRate*t) * 6 - 15) + 10)) + H(t-riseTime)

    • up and down Will ramp the signal both up and down

    • frequency based up and down Will ramp both up and down in the specified number of periods based on the given frequency.

  • sinc hat function

    This function generates a relatively flat fourier spectrum over the given frequency range, sometimes referred to as a top hat function. \(f_l < f < f_h\), of frequencies and falls off rapidly over a frequency width of \(\delta_f\), so that it is nearly zero for \(f < f_l - \delta_f\) or \(f > f_h + \delta_f\).

    frequency low: \(f_l\)

    Low end frequency of the fourier spectrum.

    frequency high: \(f_h\)

    High end frequency of the fourier spectrum.


    Amplitude of the function is typically 1.

    suppresion factor

    Suppresion factor used in calculating the number of sigmas of the function. Smaller Values lead to longer excitation times.

    frequency gap factor

    Used in calculating the Sigma_T of the excitation, which is the range of frequencies the function takes to ramp from 0 specfied to the amplitude. The full function that describes this sinc hat is

    frequencyGap = (\(f_h - f_l\))*frequency gap factor

    numSigma = sqrt(-2.0*log(suppression factor))

    sigmaT = (TWOPI*frequencyGap)/numSigma

    timeExcite : \(t_E\) = 2*numSigma*sigmaT

    \[H(t_E-t) \exp(-0.5*sigmaT^2 (t-0.5 t_E)^2)\times \frac{\sin(2 \pi f_h (t-0.5 t_E)) - \sin(2 \pi f_l (t-0.5 t_E))}{(2 \pi f_h-2 \pi f_l) (t-0.5 t_E)}\]
  • python

    This space time function will allow access to a function defined in a Python file to be used in place of a user-defined function.


    This is the name of the Python function to be accessed. The Python file must be in the same directory as the runspace.

  • feedback

    This space time function is used to take the value from a history and use that value in the next timestep, allowing feedback.


    The initial value to be used in the feedback loop. This expression will be multiplied from the value of the history in the previous output.


    The name of the history from which to take values; pseudo-potential and absorbed particle current histories are supported.

    history goal

    The value of the history that should be obtained.

    time constant

    Defines how quickly the feedback responds to a difference in the measured and desired value. If too small, the measured value will oscillate near the desired value, if too large it will take a long time to reach the desired value.

  • chirpWavePulse

    Produces a plane wave modulated by a pulse envelope. For more information, see chirpWavePulse.

  • cosineFlattop

    Flat top function. See cosineFlattop.

  • cosineRamp

    Function for an initial ramp. See cosineRamp.

  • gaussian

    Produces a Gaussian function. See gaussian.

  • gaussianPulse

    Creates a sinusoidal pulse in the form of a Gaussian beam, modulated by a Gaussian envelope longitudinally. See gaussianPulse.

  • halfSinePulse

    Function for a sinusoidal pulse in the form of a Gaussian beam, modulated by a longitudinal half-sine function. See halfSinePulse.

  • leakychannel

    Function that is parabolic in radius, then drops linearly to zero. See leakychannel.

  • planeWavePulse

    Creates a plane wave that’s modulated by a Gaussian transversely and by a half-sine function longitudinally. See planeWavePulse.

  • radialCosChannel

    Function for an initial ramp into a region of a channel. See radialCosChannel.

  • sinePlaneWave

    Generates a plane wave pulse that is based on a sine wave. See sinePlaneWave.

  • sum function

    This is the sum of two previously defined space time functions. The functions used must be defined before their use in the sum function. Sum functions may be nested. For example, you could have a second sum function that accepts a previously defined sum function in order to sum three or more space time functions.


    The first function to be summed.


    The second function to be summed.

  • product function

    This is the product of two previously defined space time functions. The functions used must be defined before their use in the product function. Product functions may be nested, for example, a second product function can be used to accept a previously defined product function in order to multiply three or more space time functions together.


    The first function to be summed.


    The second function to be summed.