Operator#

class tracklib.core.Operator.Operator[source]#

Class defining the usable operators

The following operators are defined :

  1. Unary void operators:

    • IDENTITY: \(y(t) = x(t)\)

    • RECTIFIER: \(y(t) = \|x(t)\|\)

    • INTEGRATOR: \(y(t) = y(t-1) + y(t)\)

    • SHIFT_RIGHT: \(y(t) = x(t-1)\)

    • SHIFT_LEFT: \(y(t) = x(t+1)\)

    • SHIFT_CIRCULAR_RIGHT: \(y(t) = x((t-1)%n)\)

    • SHIFT_CIRCULAR_LEFT: \(y(t) = x((t+1)%n)\)

    • INVERTER: \(y(t) = -x(t)\)

    • INVERSER: \(y(t) = 1/x(t)\)

    • DEBIASER: \(y(t) = x(t) - \bar{x}\)

    • SQUARE: \(y(t) = x(t \cdot x(t)\)

    • SQRT: \(y(t) = x(t)^{1/2}\)

    • NORMALIZER: \(y(t) = \frac{(x(t) - \bar{x})}{\sigma(x)}\)

    • DIFFERENTIATOR: \(y(t) = x(t) - x(t-1)\)

    • BACKWARD_FINITE_DIFF: \(y(t) = x(t) - x(t-1)\)

    • FORWARD_FINITE_DIFF: \(y(t) = x(t+1) - x(t)\)

    • CENTERED_FINITE_DIFF: \(y(t) = x(t+1) - x(t-1)\)

    • SECOND_ORDER_FINITE_DIFF: \(y(t) = x(t+1) - x(t-1)\)

    • DIODE: \(y(t) = 1[x>0] \cdot x(t)\)

    • SIGN: \(y(t) = \frac{x(t)}{\|x(t)\|}\)

    • EXP: \(y(t) = \exp(x(t))\)

    • LOG: \(y(t) = \log(x(t))\)

    • COS: \(y(t) = \cos(x(t))\)

    • SIN: \(y(t) = \sin(x(t))\)

    • TAN: \(y(t) = \tan(x(t))\)

  2. Binary void operators:

    • ADDER: \(y(t) = x1(t) + x2(t)\)

    • SUBSTRACTER: \(y(t) = x1(t) - x2(t)\)

    • MULTIPLIER: \(y(t) = x1(t) \cdot x2(t)\)

    • DIVIDER: \(y(t) = x1(t) / x2(t)\)

    • POWER: \(y(t) = x1(t) ^ {x2(t)}\)

    • MODULO: \(y(t) = x1(t) % x2(t)\)

    • ABOVE: \(y(t) = x1(t) > x2(t)\)

    • BELOW: \(y(t) = x1(t) < x2(t)\)

    • QUAD_ADDER: \(y(t) = (x1(t)^2 + x2(t)^2)^0.5\)

    • RENORMALIZER: \(y(t) = (x1(t)-m(x1)) \cdot \frac{s(x2)}{s(x1)} + m(x2)\)

    • DERIVATOR: \(y(t) = \frac{(x1(t)-x1(t-1))}{(x2(t)-x2(t-1))} = \frac{dx1}{dx2}\)

    • POINTWISE_EQUALER: \(y(t) = 1\ \text{if}\ x1(t)=x2(t),\ 0\ \text{otherwise}\)

    • CONVOLUTION: \(y(t) = int(x1(h) \cdot x2(t-h)dh)\)

  3. Unary operator

    • SUM: \(y = \Sigma x\)

    • AVERAGER: \(y = \bar{x}\)

    • VARIANCE: \(y = \var(x)\)

    • STDDEV: \(y = \sqrt{\var(x)}\)

    • MSE: \(y = \bar{x^2}\)

    • RMSE: \(y = \sqrt{\bar{x^2}}\)

    • MAD: \(y = \text{median}(|x|)\)

    • MIN: \(y = \min(x)\)

    • MAX: \(y = \max(x)\)

    • MEDIAN: \(y = \text{median}(x)\)

    • ARGMIN: \(y = \min {t | x(t) = \min(x)}\)

    • ARGMAX: \(y = \min {t | x(t) = \max(x)}\)

    • ZEROS: \(y = {t | x(t) = 0}\)

  4. Binary operator

    • COVARIANCE: \(y = m[x1x2] - m[x1] \cdot m[x2]\)

    • CORRELATOR: \(y = \frac{\cov(x1,x2)}{\sigma(x1) \cdot sigma(x2)}\)

    • L0: \(y = {t | x1(t) \neq x2(t)}\)

    • L1: \(y = \bar{|x1(t)-x2(t)|}\)

    • L2: \(y = \bar{|x1(t)-x2(t)|^2}\)

    • LINF: \(y = \max(|x1(t)-x2(t)|)\)

    • EQUAL: \(y = 1\ \text{if} {x1(t) = x2(t)\ \text{for all t}}\)

  5. Scalar operator

    • AGGREGATE: \(y(t) = arg({x(t)})\) (arg is a list function)

  6. Scalar void operator

    • APPLY: \(y(t) = arg(x(t))\) (arg is a real function)

    • SHIFT: \(y(t) = x(t-arg)\) (arg is a integer)

    • SHIFT_REV: \(y(t) = x(t+arg)\) (arg is a integer)

    • SHIFT_CIRCULAR: \(y(t) = x((t-arg)%n)\) (arg is a integer)

    • SHIFT_CIRCULAR_REV: \(y(t) = x((t+arg)%n)\) (arg is a integer)

    • SCALAR_ADDER: \(y(t) = x(t) + arg\) (arg is a numeric)

    • SCALAR_SUBSTRACTER: \(:(t) = x(t) - arg\) (arg is a numeric)

    • SCALAR_MULTIPLIER: \(y(t) = arg * x(t)\) (arg is a numeric)

    • SCALAR_DIVIDER: \(y(t) = x(t) / arg\) (arg is a numeric)

    • SCALAR_POWER: \(y(t) = x(t) ** arg\) (arg is a numeric)

    • SCALAR_MODULO: \(y(t) = x(t) % arg\) (arg is a numeric)

    • SCALAR_ABOVE: \(y(t) = x1(t) > arg\) (arg is a numeric)

    • SCALAR_BELOW: \(y(t) = x1(t) < arg\) (arg is a numeric)

    • SCALAR_REV_ABOVE: \(y(t) = arg < x1(t)\) (arg is a numeric)

    • SCALAR_REV_BELOW: \(y(t) = arg > x1(t)\) (arg is a numeric)

    • SCALAR_REV_SUBSTRACTER: \(y(t) = arg - x(t)\) (arg is a numeric)

    • SCALAR_REV_DIVIDER: \(y(t) = arg / x(t)\) (arg is a numeric)

    • SCALAR_REV_POWER: \(y(t) = arg ** x(t)\) (arg is a numeric)

    • SCALAR_REV_MODULO: \(y(t) = arg % x(t)\) (arg is a numeric)

    • THRESHOLDER: \(= y(t) = 1 if x1(t) >= arg, 0 otherwise\) (arg is a numeric)

    • RANDOM: \(y(t) = eta(t) with eta ~ arg\)

    • FILTER: \(= y(t) = int[x(z)*h(t-z)dz]\) (arg is an odd-dimension vector or a kernel)

    • FILTER_FFT: \(y(t) = int[x(z)*h(t-z)dz]\) (fast version with FFT)

__init__()#
__str__()#

Return str(self).

This modules contains the classes to manage the operators

class tracklib.core.Operator.UnaryOperator[source]#

Abstract Class to define a Unary Operator

abstract execute(track, af_input)[source]#

Execution of the operator

Parameters
  • track – TODO

  • af_input – TODO

class tracklib.core.Operator.BinaryOperator[source]#

Abstract Class to define a Binary Operator

abstract execute(track, af_input1, af_input2)[source]#

Execution of the operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

class tracklib.core.Operator.UnaryVoidOperator[source]#

Abstract Class to define a Unary Void Operator

abstract execute(track, af_input, af_output)[source]#

Execution of the operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

class tracklib.core.Operator.BinaryVoidOperator[source]#

Abstract Class to define a Binary Void Operator

abstract execute(track, af_input1, af_input2, af_output)[source]#

Execution of the operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

class tracklib.core.Operator.ScalarOperator[source]#

Abstract Class to define a Scalar Operator

abstract execute(track, af_input1, arg)[source]#

Execution of the operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • arg – TODO

class tracklib.core.Operator.ScalarVoidOperator[source]#

Abstract Class to define a Scalar Void Operator

abstract execute(track, af_input1, arg, af_output)[source]#

Execution of the operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • arg – TODO

  • af_output

tracklib.core.Operator.makeRPN(expression)[source]#

TODO

Parameters

expression (str) – An RPN expression

Return type

str

Returns

TODO

class tracklib.core.Operator.Identity[source]#

Identity operator

execute(track, af_input, af_output)[source]#

Execute the identity operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Integrator[source]#

Integrator operator

execute(track, af_input, af_output)[source]#

Execute the integrator operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Differentiator[source]#

Differentiator Operator

execute(track, af_input, af_output)[source]#

Execute the Differentiator operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.ForwardFiniteDiff[source]#

ForwardFiniteDiff Operator

execute(track, af_input, af_output)[source]#

Execute the ForwardFiniteDiff operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.BackwardFiniteDiff[source]#

BackwardFiniteDiff Operator

execute(track, af_input, af_output)[source]#

Execute the BackwardFiniteDiff operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.CenteredFiniteDiff[source]#

CenteredFiniteDiff Operator

execute(track, af_input, af_output)[source]#

Execute the CenteredFiniteDiff operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.SecondOrderFiniteDiff[source]#

SecondOrderFiniteDiff Operator

execute(track, af_input, af_output)[source]#

Execute the SecondOrderFiniteDiff operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.ShiftRight[source]#

ShiftRight Operator

execute(track, af_input, af_output)[source]#

Execute the ShiftRight operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.ShiftCircularRight[source]#

ShiftRight Operator

execute(track, af_input, af_output)[source]#

Execute the ShiftRight operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.ShiftLeft[source]#

ShiftLeft Operator

execute(track, af_input, af_output)[source]#

Execute the ShiftCircularLeft operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.ShiftCircularLeft[source]#

ShiftLeft Operator

execute(track, af_input, af_output)[source]#

Execute the ShiftCircularLeft operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Inverter[source]#

Inverter Operator

execute(track, af_input, af_output)[source]#

Execute the Inverter operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Inverser[source]#

Inverser Operator

execute(track, af_input, af_output)[source]#

Execute the Inverser operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Reverser[source]#

Reverser Operator

execute(track, af_input, af_output)[source]#

Execute the Reverser operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Rectifier[source]#

Rectifier Operator

execute(track, af_input, af_output)[source]#

Execute the Rectifier operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Debiaser[source]#

Debiaser Operator

execute(track, af_input, af_output)[source]#

Execute the Debiaser operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Normalizer[source]#

Normalizer Operator

execute(track, af_input, af_output)[source]#

Execute the Normaliser operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Square[source]#

Square Operator

execute(track, af_input, af_output)[source]#

Execute the Square operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Sqrt[source]#

Sqrt Operator

execute(track, af_input, af_output)[source]#

Execute the Sqrt operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Diode[source]#

Diode Operator

execute(track, af_input, af_output)[source]#

Execute the Diode operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Sign[source]#

Sign Operator

execute(track, af_input, af_output)[source]#

Execute the Sign operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Exp[source]#

Exp Operator

execute(track, af_input, af_output)[source]#

Execute the Exp operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Log[source]#

Log Operator

execute(track, af_input, af_output)[source]#

Execute the Log operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Cos[source]#

Cos Operator

execute(track, af_input, af_output)[source]#

Execute the Cos operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Sin[source]#

Sin operator

execute(track, af_input, af_output)[source]#

Execute the Sin operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Tan[source]#

Tan Operator

execute(track, af_input, af_output)[source]#

Execute the Tan operator

Parameters
  • track – TODO

  • af_input – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Adder[source]#

Adder Operator

execute(track, af_input1, af_input2, af_output)[source]#

Execute the Normaliser operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Substracter[source]#

Substracter Operator

execute(track, af_input1, af_input2, af_output)[source]#

Execute the Substracter operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Multiplier[source]#

Multiplier Operator

execute(track, af_input1, af_input2, af_output)[source]#

Execute the Multiplier operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Divider[source]#

Divider Operator

execute(track, af_input1, af_input2, af_output)[source]#

Execute the Divier operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Power[source]#

Power operator

execute(track, af_input1, af_input2, af_output)[source]#

Execute the Power operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Modulo[source]#

Modulo Operator

execute(track, af_input1, af_input2, af_output)[source]#

Execute the Modulo operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Above[source]#

Above Operator

execute(track, af_input1, af_input2, af_output)[source]#

Execute the Above operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Below[source]#

Below Operator

execute(track, af_input1, af_input2, af_output)[source]#

Execute the Below operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.QuadraticAdder[source]#

Quadratic Adder Operator

execute(track, af_input1, af_input2, af_output)[source]#

Execute the Quadratic Adder operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Derivator[source]#

Derivator Operator

execute(track, af_input1, af_input2, af_output)[source]#

Execute the Derivator operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Renormalizer[source]#

Renormalizer Operator

execute(track, af_input1, af_input2, af_output)[source]#

Execute the Renormalizer operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.PointwiseEqualer[source]#

Pointwiser Equaler Operator

execute(track, af_input1, af_input2, af_output)[source]#

Execute the Pointwiser Equaler operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Convolution[source]#

Convolution Operator

execute(track, af_input1, af_input2, af_output)[source]#

Execute the Convolution operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Correlator[source]#

Correlator Operator

execute(track, af_input1, af_input2, af_output)[source]#

Execute the Correlator operator

Parameters
  • track – TODO

  • af_input1 – TODO

  • af_input2 – TODO

  • af_output – TODO

Returns

TODO

class tracklib.core.Operator.Min[source]#

Min Operator

execute(track, af_input)[source]#

TODO

class tracklib.core.Operator.Max[source]#

TODO

execute(track, af_input)[source]#

TODO

class tracklib.core.Operator.Argmin[source]#

TODO

execute(track, af_input)[source]#

TODO

class tracklib.core.Operator.Argmax[source]#

TODO

execute(track, af_input)[source]#

TODO

class tracklib.core.Operator.Median[source]#

TODO

execute(track, af_input)[source]#

TODO

class tracklib.core.Operator.Zeros[source]#

TODO

execute(track, af_input)[source]#

TODO

class tracklib.core.Operator.Sum[source]#

TODO

execute(track, af_input)[source]#

TODO

class tracklib.core.Operator.Averager[source]#

The average operator: y = mean(x)

execute(track, af_input)[source]#

TODO

class tracklib.core.Operator.Variance[source]#

TODO

execute(track, af_input)[source]#

TODO

class tracklib.core.Operator.StdDev[source]#

TODO

execute(track, af_input)[source]#

TODO

class tracklib.core.Operator.Mse[source]#

TODO

execute(track, af_input)[source]#

TODO

class tracklib.core.Operator.Rmse[source]#

Rmse Operator

execute(track, af_input)[source]#

Execution of Rmse operator

class tracklib.core.Operator.Mad[source]#

TODO

execute(track, af_input)[source]#

TODO

class tracklib.core.Operator.Covariance[source]#

TODO

execute(track, af_input1, af_input2)[source]#

TODO

class tracklib.core.Operator.Correlation[source]#

TODO

execute(track, af_input1, af_input2)[source]#

TODO

class tracklib.core.Operator.L0Diff[source]#

TODO

execute(track, af_input1, af_input2)[source]#

TODO

class tracklib.core.Operator.L1Diff[source]#

TODO

execute(track, af_input1, af_input2)[source]#

TODO

class tracklib.core.Operator.L2Diff[source]#

TODO

execute(track, af_input1, af_input2)[source]#

TODO

class tracklib.core.Operator.LInfDiff[source]#

TODO

execute(track, af_input1, af_input2)[source]#

TODO

class tracklib.core.Operator.Equal[source]#

TODO

execute(track, af_input1, af_input2)[source]#

TODO

class tracklib.core.Operator.Aggregate[source]#

TODO

execute(track, af_input, function)[source]#

TODO

class tracklib.core.Operator.Shift[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ShiftCircular[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ShiftRev[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ShiftCircularRev[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ScalarAdder[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ScalarSubstracter[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ScalarRevSubstracter[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ScalarMuliplier[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ScalarDivider[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ScalarRevDivider[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ScalarPower[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ScalarModulo[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ScalarBelow[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ScalarRevBelow[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ScalarAbove[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ScalarRevAbove[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ScalarRevPower[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.ScalarRevModulo[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.Thresholder[source]#

TODO

execute(track, af_input, number, af_output)[source]#

TODO

class tracklib.core.Operator.Apply[source]#

TODO

execute(track, af_input, function, af_output)[source]#

TODO

class tracklib.core.Operator.Filter[source]#

TODO

execute(track, af_input, kernel, af_output)[source]#

TODO

class tracklib.core.Operator.Filter_FFT[source]#

TODO

execute(track, af_input, kernel, af_output)[source]#

TODO

class tracklib.core.Operator.Random[source]#

TODO

execute(track, af_input, probability, af_output)[source]#

TODO