[comment]: # attributes: notoc

[comment]: # (terms: abs, acos, asin, atan, atan2, avg, cbrt, ceil, cos, cosh, cot, degrees, e, exp, expm1, floor, log, log10, max, min, mod, pi, power, radians, rand, round, signum, sin, sinh, sqrt, sum, tan, truncate )

[comment]: # ({13d85cd4-ef4bef6c})
# 6 Математические функции

Все перечисленные здесь функции поддерживаются в:

-   [Выражениях триггеров](/manual/config/triggers/expression)
-   [Формулах вычисляемых элементов данных](/manual/config/items/itemtypes/calculated)
-   [Макросах выражений](/manual/config/macros/expression_macros)

Математические функции поддерживаются для типов значений float и integer,
если не указано иное.

Функции перечислены без дополнительной информации. Нажмите на функцию, чтобы увидеть полные сведения.

|Function|Description|
|--|--------|
|[abs](#abs)|Абсолютное значение величины.|
|[acos](#acos)|Арккосинус величины как угол, выраженный в радианах.|
|[asin](#asin)|Арксинус величины как угол, выраженный в радианах.|
|[atan](#atan)|Арктангенс величины как угол, выраженный в радианах.|
|[atan2](#atan2)|Арктангенс ординаты (значения) и координаты абсциссы, заданный как угол, выраженный в радианах.|
|[avg](#avg)|Среднее значение значений указанного элемента данных.|
|[cbrt](#cbrt)|Кубический корень величины.|
|[ceil](#ceil)|Округляет значение вверх до ближайшего большего или равного целого числа.|
|[cos](#cos)|Косинус величины, где величина — это угол, выраженный в радианах.|
|[cosh](#cosh)|Гиперболический косинус величины.|
|[cot](#cot)|Котангенс величины, где величина — это угол, выраженный в радианах.|
|[degrees](#degrees)|Преобразует значение из радиан в градусы.|
|[e](#e)|Число Эйлера (2.718281828459045).|
|[exp](#exp)|Число Эйлера в степени значения.|
|[expm1](#expm1)|Число Эйлера в степени значения минус 1.|
|[floor](#floor)|Округляет значение вниз до ближайшего меньшего или равного целого числа.|
|[log](#log)|Натуральный логарифм.|
|[log10](#log10)|Десятичный логарифм.|
|[max](#max)|Наибольшее значение среди значений указанного элемента данных.|
|[min](#min)|Наименьшее значение среди значений указанного элемента данных.|
|[mod](#mod)|Остаток от деления.|
|[pi](#pi)|Константа Пи (3.14159265358979).|
|[power](#power)|Возведение значения в степень.|
|[radians](#radians)|Преобразует значение из градусов в радианы.|
|[rand](#rand)|Возвращает случайное целочисленное значение.|
|[round](#round)|Округляет значение до указанного количества десятичных знаков.|
|[signum](#signum)|Возвращает '-1', если значение отрицательное, '0', если значение равно нулю, '1', если значение положительное.|
|[sin](#sin)|Синус величины, где величина — это угол, выраженный в радианах.|
|[sinh](#sinh)|Гиперболический синус величины, где величина — это угол, выраженный в радианах.|
|[sqrt](#sqrt)|Квадратный корень величины.|
|[sum](#sum)|Сумма значений указанного элемента данных.| 
|[tan](#tan)|Тангенс величины.|
|[truncate](#truncate)|Усекает значение до указанного количества десятичных знаков.|

[comment]: # ({/13d85cd4-ef4bef6c})

[comment]: # ({e635e2a6-f932d69d})
### Подробности о функциях

Некоторые общие замечания о параметрах функций:

-   Параметры функций разделяются запятой
-   В качестве параметров допускаются выражения
-   Необязательные параметры функций (или части параметров) обозначаются
    `<` `>`

[comment]: # ({/e635e2a6-f932d69d})

[comment]: # ({39973c9a-89cbc486})
##### abs(value) {#abs}

Абсолютное значение (от 0) величины.

Параметр: 

-   **value** — значение для проверки

Например, абсолютное значение как '3', так и '-3' будет равно '3'.

Пример:

    abs(last(/host/key))>10

[comment]: # ({/39973c9a-89cbc486})

[comment]: # ({754d73c7-f40a2e61})
##### acos(value) {#acos}

Арккосинус значения как угол, выраженный в радианах.

Параметр: 

-   **value** — проверяемое значение

Значение должно быть в диапазоне от -1 до 1. Например, арккосинус значения '0.5' будет равен '2.0943951'.

Пример:

    acos(last(/host/key))

[comment]: # ({/754d73c7-f40a2e61})

[comment]: # ({f32d79d9-b44dbca5})
##### asin(value) {#asin}

Арксинус значения как угол, выраженный в радианах.

Параметр:

-   **value** — проверяемое значение

Значение должно быть в диапазоне от -1 до 1. Например, арксинус значения '0.5' будет равен '-0.523598776'.

Пример:

    asin(last(/host/key))

[comment]: # ({/f32d79d9-b44dbca5})

[comment]: # ({debc5495-08e0843c})
##### atan(value) {#atan}

Арктангенс значения как угол, выраженный в радианах.

Параметр: 

-   **value** — значение для проверки

Например, арктангенс значения '1' будет равен '0.785398163'.

Пример:

    atan(last(/host/key))

[comment]: # ({/debc5495-08e0843c})

[comment]: # ({1c279561-6df7b343})
##### atan2(value,abscissa) {#atan2}

Арктангенс ординаты (value) и координаты абсциссы, заданный как угол, выраженный в радианах.

Параметры: 

-   **value** - проверяемое значение;
-   **abscissa** - значение абсциссы.

Например, арктангенс координат ординаты и абсциссы для значения '1' будет равен '2.21429744'.

Пример:

    atan2(last(/host/key),2)

[comment]: # ({/1c279561-6df7b343})

[comment]: # ({94ba0bc0-6d42ceda})
##### avg(<value1>,<value2>,...) {#avg}

Среднее значение значений элементов данных, на которые есть ссылка.

Параметр: 

-   **valueX** — значение, возвращаемое другой функцией, работающей с историей элемента данных.

Пример:

    avg(avg(/host/key,1h),avg(/host2/key2,1h))

[comment]: # ({/94ba0bc0-6d42ceda})

[comment]: # ({ef0cb9ef-65742fe9})
##### cbrt(value) {#cbrt}

Кубический корень значения.

Параметр: 

-   **value** — значение для проверки

Например, кубический корень из '64' будет равен '4', из '63' — '3.97905721'.

Пример:

    cbrt(last(/host/key))

[comment]: # ({/ef0cb9ef-65742fe9})

[comment]: # ({696b523c-4290a457})
##### ceil(value) {#ceil}

Округляет значение вверх до ближайшего большего или равного целого числа.

Параметр: 

-   **value** — значение для проверки

Например, '2.4' будет округлено вверх до '3'. См. также [floor()](#floor).

Пример:

    ceil(last(/host/key))

[comment]: # ({/696b523c-4290a457})

[comment]: # ({dee428c3-b07f5dfa})
##### cos(value) {#cos}

Косинус значения, где значение — это угол, выраженный в радианах.

Параметр: 

-   **value** — значение для проверки

Например, косинус значения '1' будет равен '0.54030230586'.

Пример:

    cos(last(/host/key))

[comment]: # ({/dee428c3-b07f5dfa})

[comment]: # ({a9e4704e-4df693f6})
##### cosh(value) {#cosh}

Гиперболический косинус значения.
Возвращает значение как вещественное число, а не в экспоненциальной форме.

Параметр:

-   **value** — значение для проверки

Например, гиперболический косинус значения '1' будет равен '1.54308063482'.

Пример:

    cosh(last(/host/key))

[comment]: # ({/a9e4704e-4df693f6})

[comment]: # ({b169abdb-7b0480bb})
##### cot(value) {#cot}

Котангенс значения, где значение — это угол, выраженный в радианах.

Параметр:

-   **value** — проверяемое значение

Например, котангенс значения '1' будет равен '0.54030230586'.

Пример:

    cot(last(/host/key))

[comment]: # ({/b169abdb-7b0480bb})

[comment]: # ({49d843a0-552d8ac9})
##### degrees(value) {#degrees}

Преобразует значение из радиан в градусы.

Параметр: 

-   **value** — значение для проверки

Например, значение '1', преобразованное в градусы, будет равно '57.2957795'.

Пример:

    degrees(last(/host/key))

[comment]: # ({/49d843a0-552d8ac9})

[comment]: # ({7078d3f3-790837bf})
##### e {#e}

Число Эйлера (2.718281828459045).

Пример:

    e()

[comment]: # ({/7078d3f3-790837bf})

[comment]: # ({329513b5-5f0104cf})
##### exp(value) {#exp}

Число Эйлера в степени значения.

Параметр:

-   **value** — значение для проверки

Например, число Эйлера в степени значения '2' будет равно '7.38905609893065'.

Пример:

    exp(last(/host/key))

[comment]: # ({/329513b5-5f0104cf})

[comment]: # ({ae4a884c-fa7bce72})
##### expm1(value) {#expm1}

Число Эйлера в степени значения минус 1.

Параметр: 

-   **value** — значение для проверки

Например, число Эйлера в степени значения '2' минус 1 будет равно '6.38905609893065'.

Пример:

    expm1(last(/host/key))

[comment]: # ({/ae4a884c-fa7bce72})

[comment]: # ({d6651028-367cea41})
##### floor(value) {#floor}

Округляет значение вниз до ближайшего меньшего или равного целого числа.

Параметр: 

-   **value** — значение для проверки

Например, '2.6' будет округлено вниз до '2'. См. также [ceil()](#ceil).

Пример:

    floor(last(/host/key))

[comment]: # ({/d6651028-367cea41})

[comment]: # ({fb4ffc82-02960b00})
##### log(value) {#log}

Натуральный логарифм.

Параметр: 

-   **value** — значение для проверки

Например, натуральный логарифм значения '2' будет равен '0.69314718055994529'.

Пример:

    log(last(/host/key))

[comment]: # ({/fb4ffc82-02960b00})

[comment]: # ({e44235f6-9eb02241})
##### log10(value) {#log10}

Десятичный логарифм.

Параметр: 

-   **value** — значение для проверки

Например, десятичный логарифм значения '5' будет равен '0.69897000433'.

Пример:

    log10(last(/host/key))

[comment]: # ({/e44235f6-9eb02241})

[comment]: # ({3b20d32e-9b8efc17})
##### max(<value1>,<value2>,...) {#max}

Наибольшее значение из значений, на которые ссылаются.

Параметр: 

-   **valueX** — значение, возвращаемое другой функцией, работающей с историей элемента данных.

Пример:

    max(avg(/host/key,1h),avg(/host2/key2,1h))

[comment]: # ({/3b20d32e-9b8efc17})

[comment]: # ({f8d47c9b-5e82e822})
##### min(<value1>,<value2>,...) {#min}

Наименьшее значение значений ссылочных элементов данных.

Параметр: 

-   **valueX** — значение, возвращаемое другой функцией, которая работает с историей элемента данных.

Пример:

    min(avg(/host/key,1h),avg(/host2/key2,1h))

[comment]: # ({/f8d47c9b-5e82e822})

[comment]: # ({0c1c211e-120dd48b})
##### mod(value,denominator) {#mod}

Остаток от деления.

Параметры: 

-   **value** — проверяемое значение;
-   **denominator** — делитель.

Например, остаток от деления значения '5' на делитель '2' будет равен '1'.

Пример:

    mod(last(/host/key),2)

[comment]: # ({/0c1c211e-120dd48b})

[comment]: # ({5fae5f18-d8cd6290})
##### pi {#pi}

Константа Pi (3.14159265358979).

Пример:

    pi()

[comment]: # ({/5fae5f18-d8cd6290})

[comment]: # ({e5f39714-617a0fc5})
##### power(value,power value) {#power}

Степень значения.

Параметры: 

-   **value** — значение для проверки;
-   **power value** — используемая степень N.

Например, 3-я степень значения '2' будет равна '8'.

Пример:

    power(last(/host/key),3)

[comment]: # ({/e5f39714-617a0fc5})

[comment]: # ({2e3144c2-c94a9d57})
##### radians(value) {#radians}

Преобразует значение из градусов в радианы.

Параметр: 

-   **value** — проверяемое значение

Например, значение '1', преобразованное в радианы, будет равно '0.0174532925'.

Пример:

    radians(last(/host/key))

[comment]: # ({/2e3144c2-c94a9d57})

[comment]: # ({91941daf-16f1713f})
##### rand {#rand}

Возвращает случайное целочисленное значение. Псевдослучайное число, сгенерированное с использованием времени в качестве начального значения (достаточно для математических целей, но не для криптографии).

Пример:

    rand()

[comment]: # ({/91941daf-16f1713f})

[comment]: # ({d95689d5-e19fd7cb})
##### round(value,decimal places) {#round}

Округляет значение до указанного количества десятичных знаков.

Параметры: 

-   **value** — значение для проверки;
-   **decimal places** — укажите количество десятичных знаков для округления (также возможно 0).

Например, значение '2.5482', округленное до 2 десятичных знаков, будет равно '2.55'.

Пример:

    round(last(/host/key),2)

[comment]: # ({/d95689d5-e19fd7cb})

[comment]: # ({12a89282-9668b2dc})
##### signum(value) {#signum}

Возвращает '-1', если значение отрицательное, '0', если значение равно нулю, и '1', если значение положительное.

Параметр: 

-   **value** — значение для проверки.

Пример:

    signum(last(/host/key))

[comment]: # ({/12a89282-9668b2dc})

[comment]: # ({8b506ba0-1c54e7c1})
##### sin(value) {#sin}

Синус значения, где значение — это угол, выраженный в радианах.

Параметр:

-   **value** — значение для проверки

Например, синус значения '1' будет равен '0.8414709848'.

Пример:

    sin(last(/host/key))

[comment]: # ({/8b506ba0-1c54e7c1})

[comment]: # ({8e4e9ad3-f2223e46})
##### sinh(value) {#sinh}

Гиперболический синус значения.

Параметр:

-   **value** — значение для проверки

Например, гиперболический синус значения '1' будет равен '1.17520119364'.

Пример:

    sinh(last(/host/key))

[comment]: # ({/8e4e9ad3-f2223e46})

[comment]: # ({b3339bb1-a732b60e})
##### sqrt(value) {#sqrt}

Квадратный корень значения.<br>
Эта функция завершится с ошибкой при отрицательном значении.

Параметр: 

-   **value** — значение для проверки

Например, квадратный корень значения '3.5' будет равен '1.87082869339'.

Пример:

    sqrt(last(/host/key))

[comment]: # ({/b3339bb1-a732b60e})

[comment]: # ({f850beb9-0bbc007d})
##### sum(<value1>,<value2>,...) {#sum}

Сумма значений указанных элементов данных.

Параметр: 

-   **valueX** — значение, возвращаемое другой функцией, которая работает с историей элемента данных.

Пример:

    sum(avg(/host/key,1h),avg(/host2/key2,1h))

[comment]: # ({/f850beb9-0bbc007d})

[comment]: # ({f06f407d-49e10a41})
##### tan(value) {#tan}

Тангенс значения.

Параметр:

-   **value** — значение для проверки

Например, тангенс значения '1' будет равен '1.55740772465'.

Пример:

    tan(last(/host/key))

[comment]: # ({/f06f407d-49e10a41})

[comment]: # ({4a3d082a-53de5a0f})
##### truncate(value,decimal places) {#truncate}

Усечь значение до указанного количества десятичных знаков.

Параметры: 

-   **value** — значение для проверки;
-   **decimal places** — укажите количество десятичных знаков для усечения (также возможно 0).

Например, значение '2.5482', усечённое до 2 десятичных знаков, будет равно '2.54'.

Пример:

    truncate(last(/host/key),2)

[comment]: # ({/4a3d082a-53de5a0f})

[comment]: # ({f4a01c90-92620b8c})
См. [все поддерживаемые функции](/manual/config/triggers/expression#functions).

[comment]: # ({/f4a01c90-92620b8c})
