public function addDecayFunction($function, $field, $origin, $scale, $offset = null, $decay = null, $weight = null, AbstractQuery $filter = null, $multiValueMode = null)
{
$functionParams = [$field => ['origin' => $origin, 'scale' => $scale]];
if (!is_null($offset)) {
$functionParams[$field]['offset'] = $offset;
}
if (!is_null($decay)) {
$functionParams[$field]['decay'] = (double) $decay;
}
if (null !== $multiValueMode) {
$functionParams['multi_value_mode'] = $multiValueMode;
}
return $this->addFunction($function, $functionParams, $filter, $weight);
}